Команда Snap не найдена в Linux Mint

Обновлено: 05.07.2024

В только что выпущенном Linux Mint 20 по умолчанию не включена поддержка Snap.

Рано или поздно вы можете столкнуться с ситуацией, когда версия приложения доступна только в виде пакета Snap, и тогда вам нужно включить поддержку Snap.

Если вы включите Snap в Mint 20, как в других дистрибутивах Linux, вы столкнетесь с такой ошибкой:

Обычно эта ошибка означает, что пакет недоступен в репозитории, но здесь это не так. Snap явно заблокирован здесь, и вы должны удалить эту блокировку, удалив файл /etc/apt/preferences.d/nosnap.pref.

Если вы знакомы с командной строкой Linux, вы можете легко удалить этот файл и включить поддержку моментальных снимков.

Если вам не нравится терминал, я расскажу о несколько более безопасном способе сделать это: переместить файл вместо его удаления.

Включить поддержку моментальных снимков в Linux Mint 20

В терминале введите следующую команду, чтобы переместить файл настроек nosnap в ваш домашний каталог:

Теперь вы можете установить демон snapd, как всегда:

После того как в Linux Mint будет включена поддержка Snap, вы сможете использовать команды Snap для установки приложений в формате Snap.

Вы можете использовать браузер файлов Nemo и удалить скопированный файл в домашнем каталоге. Так безопаснее, если вы боитесь команды rm в терминале.

Почему Linux Mint явно отключил поддержку Snap?

Snap — это универсальный формат пакета, который можно установить в любом дистрибутиве, поддерживающем snapd. Это одно из самых больших преимуществ пакетов Snap.

Эти моментальные пакеты являются «контейнерами», что означает, что эти пакеты содержат все зависимости внутри пакета, и они не полагаются на установленные в системе пакеты и библиотеки и не взаимодействуют с ними (в основном). Пакеты Snap автоматически обновляются до более новых версий.

Но у Snap-пакетов есть и недостатки. Они огромных размеров. Если размер apt-пакета составляет 100 МБ, размер Snap-пакета того же приложения может составлять 1 ГБ.

Кроме того, приложения Snap загружаются дольше и занимают больше места на диске.

Но это не причина, по которой снэпы исключены из Linux Mint 20.

Команда Linux Mint приняла трудное решение заблокировать Snap по умолчанию после того, как Ubuntu продолжала стирать грань между подходящей системой упаковки и системой упаковки Snap.

Когда вы используете apt для установки приложения, вы ожидаете, что будет установлен пакет apt. Но это не так в Ubuntu 20.04 (Mint 20 основан на этой версии Ubuntu). В Ubuntu 20.04, если вы используете apt для установки браузера Chromium, он устанавливает моментальную версию этого браузера.

Команда Mint явно недовольна этим нарушением:

Год спустя в базе пакетов Ubuntu 20.04 пакет Chromium действительно пуст и без вашего согласия действует как бэкдор, подключая ваш компьютер к магазину Ubuntu. Приложения в этом магазине нельзя исправлять или закреплять. Вы не можете их проверять, удерживать, изменять или даже указывать привязку к другому хранилищу. У вас столько же возможностей, как если бы вы использовали проприетарное программное обеспечение, то есть никаких. По сути, это похоже на коммерческое проприетарное решение, но с двумя основными отличиями: оно запускается от имени пользователя root и устанавливается без запроса пользователя.

Поэтому они решили явно заблокировать поддержку моментальных снимков в Mint 20.

Привязать или не привязать, вот в чем вопрос

Как всегда, в Linux есть способ получить то, что вы хотите. Таким образом, вы можете обойти эту блокировку и включить поддержку моментальных пакетов в Linux Mint 20.

Как я упоминал в начале, вы можете столкнуться с определенными ситуациями, когда приложение доступно только как Snap, и тогда вам может понадобиться поддержка Snap. Но до тех пор вы можете наслаждаться Linux Mint 20 без оснастки.

А вы? Вы собираетесь использовать снэп или нет? Что вы думаете об общем подходе «нет оснастки в моем дистрибутиве»?

Linux Mint 20 отключает поддержку приложений Snap полностью от вашего имени, но в этом посте я собираюсь показать вам, как включить ее (если вы хотите, то есть).

Но почему Mint вообще запретил эту технологию? Хорошо, давайте не будем вдаваться в это здесь, так как это объяснялось/обсуждалось/аргументировалось в другом месте. Достаточно сказать, что за решением Mint отключить формат стоит причина, и это решение значительно влияет на значительную базу пользователей Mint.

Взгляните на статистику установки любого приложения в Snap Store, и вы узнаете, что пользователи Linux Mint активно используют контейнерную технологию для установки свежих версий известных приложений, таких как GIMP. , OBS Studio, VSCode и т. п.

Но вернемся к поставленной задаче.

После выпуска Linux Mint 20 я решил опубликовать эту статью, чтобы любой, кто планирует использовать этот дистрибутив и хочет выбрать, устанавливать ли приложения Snaps (или нет), мог это сделать.

Теперь я знаю, о чем вы думаете: "Черт возьми, я могу просто запустить sudo apt install snapd, чтобы установить поддержку Snap в Linux Mint, это просто", но вы >немного немного неправильно. Монетный двор отключил это.

Как отметил Лео Чавес, соведущий (потрясающего) подкаста MintCast, любая попытка установить snapd из командной строки приведет к тому, что пакет snapd не имеет ошибки кандидата на установку.

«Linux Mint больше не поддерживает проприетарный магазин Ubuntu для клиента с открытым исходным кодом snapd, который к нему подключается», — говорится в файле nosnap.pref. Mint вклинился в конвейер управления пакетами.

Одним из «обходных путей» является указание нужной версии snapd, например:

И это установит его. Но, и это заметное но: знать точный номер требуемой версии Snapd — это вопрос, поскольку он постоянно меняется. И этот метод также не восстанавливает полную функциональность Snapd.

Правильное решение? Уничтожить файл с орбиты:

Справедливости ради скажу, что запуск команд удаления файлов от имени пользователя root из командной строки — это не то, чего вы, мягко говоря, хотите делать. Итак, опять же, предполагая, что вы уже используете Linux Mint 20, откройте Nemo как суперпользователь и удалите файл nosnap.pref в /etc/apt/preferences.d/ старым добрым способом.< /p>

После этого можно легко установить snapd и приложения Snap в Linux, как обычно.

Включая, да, Chromium, также известный как причина этого спора.

Snap — это менеджер пакетов для дистрибутивов на базе Linux, а snap — это пакеты приложений, доступные для Интернета вещей, облака и настольных компьютеров. Snap — это многоплатформенные, простые в установке, безопасные и не зависящие от зависимостей приложения. Одним из самых больших преимуществ приложений Snap является то, что они обновляются автоматически.

В Linux Mint 20 поддержка моментальных снимков отключена по умолчанию. Может возникнуть ситуация, когда вы заинтересованы в установке какого-либо конкретного приложения, а версия приложения доступна только в диспетчере приложений snap. В этой ситуации вам потребуется включить и установить оснастку Linux Mint 20.

Включение поддержки моментальных приложений в Linux Mint 20

Изначально, если вы попытаетесь установить оснастку Linux Mint 20, вы получите сообщение об ошибке.


Чтобы включить привязку в Linux Mint 20, нам нужно удалить файл /etc/apt/preferences.d/nosnap.pref.

Запустите терминал и удалите файл nosnap.pref с помощью команды:


После удаления файла nosnap.pref обновите кэш apt с помощью команды:


Далее мы готовы установить snapd с помощью команды:


После успешной установки оснастки проверьте установку и проверьте установленную версию с помощью команды:


Вывод показывает, что snap 2.48 установлен.

Установка моментальных пакетов в Linux Mint 20

Теперь мы включили и установили оснастку Linux Mint; поэтому мы можем установить любое приложение в Linux Mint 20, доступное из диспетчера приложений Snap, следующим образом:

Давайте установим популярный медиаплеер VLC на Linux Mint:


Удалите snapd из Linux Mint 20

В любой момент, если вы хотите удалить диспетчер приложений snapd из вашей системы Linux Mint 20, введите для этого приведенную ниже команду:


Нажмите «y», чтобы продолжить удаление диспетчера приложений Snap.

Заключение

Snap по умолчанию отключен в Linux Mint 20. Поэтому нам нужно включить и установить snap вручную в Linux Mint 20. В этом посте объясняется рекомендуемый метод включения и установки snap в Linux Mint 20.

Об авторе

Камран Саттар Авайси

Я инженер-программист и исследователь. Мне нравится писать статьи и создавать учебные пособия по различным ИТ-темам, включая Python, облачные вычисления, туманные вычисления и глубокое обучение. Мне нравится использовать операционные системы на базе Linux.

Разработчики Linux Mint 20 удалили универсальное управление пакетами snap. Да, из коробки вы не можете использовать команду SNAP, как мы это делаем в Ubuntu.Причина этого заключалась в том, что пакеты snapcraft контролируются командой Canonical, поэтому, если кто-то имеет полный контроль над пакетами распространения и тем, как они будут распространяться, это в конечном итоге ведет к нарушению идеологии открытого исходного кода и будет работать как любой поставщик программного обеспечения. . Поэтому команда Linux Mint решила не включать и разрешить пользователю устанавливать и использовать SNAP по умолчанию.

Тем не менее, мы можем установить большинство доступных пакетов Debian с помощью менеджера пакетов APT, однако, если кто-то из нас все еще хочет использовать SNAP в Linux Mint, мы можем это сделать, поскольку, работая в ОС с открытым исходным кодом, мы не привязаны к какой-либо конкретной вещи, и это наш выбор, что использовать, а что нет. Поэтому, если кому-то из вас интересно, вот туториал по нему.

Установите менеджер пакетов Snap в Linux Mint

В Linux Mint 18.2 (Соня), 18.3 (Сильвия), 19 (Тара) и 19.1 (Тесса) нам ничего делать не нужно, снап будет из коробки, а если нет, то с помощью простая команда apt, приведенная в этой статье, позволит вам ее настроить. Однако в Linux Mint 20 (Ulyana) сначала нам нужно удалить файл из каталога APT, который блокирует пользователям загрузку пакетов SNAP. Выполните следующие шаги.

Открыть командный терминал

Перейдите на панель задач Linux Mint 20 и щелкните значок терминала или просто используйте сочетание клавиш CTRL+Alt+T для запуска командного терминала.

Удалить файл nosnap.pref

Первое, что нам нужно сделать, это удалить файл nosnap.pref, находящийся в пути /etc/apt/preferences.d/ в Linux Mint 20. Для этого команда будет выглядеть так:

Выполнить команду обновления системы

Чтобы очистить кеш APT и восстановить его снова, запустите команду обновления системы.

Установить snap на Linux Mint 20

Наконец, запустите команду для установки менеджера пакетов SNAP в Linux Mint 20 с помощью командной строки.

установить оснастку на Linux Mint 20

Запуск и включение демона Snap

Сделайте автозапуск службы при загрузке системы.

Проверить статус службы

Чтобы убедиться, что служба SNAP работает нормально и без ошибок, используйте эту команду:

Проверить сервис SNAP на Liunux Mint

Установить пакет

Чтобы убедиться, что он работает без сбоев, давайте установим некоторые пакеты, например, проигрыватель VLC.

 Запуск Snapcraft на Mint

Таким образом, мы можем включить и использовать этот универсальный менеджер пакетов в Linux Mint 20.

Читайте также: