Как известно, формат пакетов snap из Ubuntu начинает распространяться на другие популярные дистрибутивы Linux, включая Arch Linux, Fedora и Debian. В ближайшее время планируется поддержка snap пакетов и в других дистрибутивах. В этом руководстве мы рассмотрим процесс установки snap пакетов на Arch Linux, Fedora, Debian и Ubuntu.
Для установки snap-пакетов нам потребуется служба snapd.
Содержание статьи
Установка snapd на Arch Linux.
Ее можно установить из AUR, используя пакетный менеджер yaourt.
yaourt snapd
Затем активируйте службу snapd через systemctl. Использование параметра —now позволит немедленно запустить службу.
sudo systemctl enable --now snapd.service
Для автоматического обновления пакетов snap:
sudo systemctl start snapd. refresh. timer sudo systemctl enable snapd. refresh. timer
Установка snapd на дистрибутив Fedora
Активируйте репозиторий copr от zyga/snapcore.
sudo dnf copr enable zyga/snapcore
После этого установите snapd.
sudo dnf install snapd
Запустите и активируйте службу snapd в systemd:
sudo systemctl start snapd.service sudo systemctl enable snapd.service
На Fedora 24 требуется установить политику безопасности SELinux в режим permissive, чтобы разрешить запуск службы snapd. Для этого нужно внести изменения в конфигурационный файл SELinux.
sudo nano /etc/selinux/config
Измените настройки безопасности с режима строгого контроля на разрешающий.
SELINUX=permissive
Сохраните изменения в файле и закройте его. Теперь можно запустить службу snapd через systemctl. Если она по-прежнему не функционирует и возникает ошибка, вы получите следующее сообщение.
error: system does not fully support snapd: cannot mount squashfs image using "squashfs": mount: /tmp/sanity-mountpoint-574715864: wrong fs type, bad option, bad superblock on /dev/loop1, missing codepage or helper program, or other error.
В таком случае, отключите политику SELinux. После этого перезагрузите систему.
SELINUX=disabled
Установка snapd на систему Debian.
sudo apt install snapd
Установка snapd в операционной системе Ubuntu.
sudo apt install snapd
Установка пакетов Snap на системах Arch и Fedora.
Теперь, когда snapd установлен на Arch Linux и Fedora, а служба snapd активирована, у нас появилась возможность устанавливать snap-приложения из магазина snap store Ubuntu.
Введите эту команду для просмотра доступных пакетов snap.
snap find
Ищите пакеты snap в магазине.
snap поиск
Для установки snap-пакета:
Установите с помощью команды: sudo snap install.
Перечень установленных пакетов snap.
snap list
К примеру, можно развернуть сервер Nextcloud, используя следующую команду.
sudo snap install nextcloud

Программы Snap устанавливаются в папку /snap.
Разные варианты программного обеспечения
Одним из достоинств Snap является возможность для разработчиков программного обеспечения просто и удобно предоставлять различные версии одного и того же приложения. К примеру, я могу вывести список всех доступных версий Ruby с помощью команды:
snap info ruby
channels: latest/stable: 3.1.2 2022-04-15 (278) 36MB classic latest/candidate: ↑ latest/beta: ↑ latest/edge: 3.1.2 2022-04-16 (281) 36MB classic 3.1/stable: 3.1.2 2022-04-15 (278) 36MB classic 3.1/candidate: ↑ 3.1/beta: ↑ 3.1/edge: ↑ 3.0/stable: 3.0.4 2022-04-15 (275) 34MB classic 3.0/candidate: ↑ 3.0/beta: ↑ 3.0/edge: ↑ 2.7/stable: 2.7.6 2022-04-15 (272) 21MB classic 2.7/candidate: ↑ 2.7/beta: ↑ 2.7/edge: ↑ 2.6/stable: 2.6.10 2022-04-15 (269) 27MB classic 2.6/candidate: ↑ 2.6/beta: ↑ 2.6/edge: ↑ 2.5/stable: 2.5.9 2021-04-07 (209) 23MB classic 2.5/candidate: ↑ 2.5/beta: ↑ 2.5/edge: ↑ 2.4/stable: 2.4.10 2020-04-01 (178) 26MB classic 2.4/candidate: ↑ 2.4/beta: ↑ 2.4/edge: ↑ 2.3/stable: 2.3.8 2018-11-08 (109) 33MB classic 2.3/candidate: ↑ 2.3/beta: ↑ 2.3/edge: ↑ installed: 2.6.10 (269) 27MB classic
Порой некоторые приложения, такие как Discourse, могут не поддерживать последнюю версию Ruby. В таком случае, вместо установки Ruby 3.1, я могу использовать команду для установки Ruby 3.0.
sudo snap install ruby --classic --channel=3.0/stable
Способы отключения Snapd.
Если вы предпочитаете не использовать Snapd, но не хотите его полностью удалить, вы можете отключить его с помощью следующей команды:
sudo systemctl disable snapd.service snapd. socket sudo systemctl mask snapd.service snapd. socket
Чтобы полностью избавиться от Snap в вашей системе, выполните также эту команду:
sudo apt purge snapd
Мы всегда рады вашим вопросам и предложениям. Если этот пост был для вас полезен, не стесняйтесь делиться им с друзьями в соцсетях! Оставайтесь на связи, чтобы не пропустить новые уроки по Linux.

