Download_Link
Участник клуба
Snap – универсальные пакеты для любого дистрибутива Linux. Это самая полная инструкция как их устанавливать, запускать и где брать программы и игры в этом формате.
Зачем вообще нужна ещё одна система для установки приложений?
Какой бы крутой и быстрой не была бы ваша операционная система, все решает количество написанного для нее ПО и легкость его установки. Поэтому и был сделан новый инструмент, который бы облегчил бы жизнь как разработчиков, так и пользователям.
Обычно в большинстве дистрибутивов надо устанавливать приложения из DEB и RPM пакетов. Такие пакеты содержат саму программу, но не включают зависимости, которые требуются для запуска данного приложения.
В отличие от привычных deb-пакетов и rpm-пакетов, snap пакеты несут в себе все зависимости.
То есть, когда мы устанавливаем deb-пакет или rpm-пакет, то предполагается, что все зависимости мы скачаем из подключенных репозиториев системы.
Но существует огромное количество всевозможных дистрибутивов Linux, как и их версий, и для разработчика это огромная проблема выпускать под весь этот зоопарк свой софт, а пользователю зачастую приходится самому решать проблему с отсутствующей зависимостью.
Файлы Snap-пакетов, имеющие расширение “.SNAP”, больше похожи на контейнеры. Приложения из этих пакетов являются самодостаточными уже скомпилированны, содержат все библиотеки, необходимые для их функционирования, и исполняются в изолированном защищенном окружении. Они устанавливаются в отдельные директории и не конфликтуют с основными компонентами системы. Поэтому все заработает сразу в любом дистрибутиве Linux который поддерживает Snap.
Когда вы устанавливаете в систему приложение из Snap-пакета, то установка не влияет на другие пакеты и приложения. То есть такое приложение работает в своей «программной среде», но при этом оно может взаимодействовать с другими программами в системе.
Преимущества Snap:
Установка поддержки Snap
Сейчас поддержка Snap пакетов есть в большинстве дистрибутивов, но если по какой-либо причине ее у вас нет, то вы можете ее добавить.
Установка поддержки Snap в Ubuntu, Kubuntu, Lubuntu, Xubuntu, Debian, Linux Mint, Elementary OS, GalliumOS, Kali Linux, KDE Neon, Parrot Security OS, Pop!_OS, Raspbian, Zorin OS и подобных
В новых версиях Ubuntu поддержка Snap уже включена. Если это не так, то для установки Snap выполните команду:
sudo apt update
sudo apt install snapd
systemctl enable --now snapd apparmor
Аналогично выполняется установка в Debian, Linux Mint, Elementary OS и других Ubuntu/Debian-based дистрибутивах.
Установка поддержки Snap в Arch Linux
из GIT репозитория
git clone https://aur.archlinux.org/snapd.git
cd snapd
makepkg -si
или из AUR репозитория:
yaourt -S snapd
Далее необходимо его активировать:
sudo systemctl enable --now snapd.socket
sudo ln -s /var/lib/snapd/snap /snap
После этого необходимо перезагрузить систему.
Установка поддержки Snap в CentOS 7
sudo yum install epel-release
sudo yum install snapd
sudo systemctl enable --now snapd.socket
sudo ln -s /var/lib/snapd/snap /snap
После этого необходимо перезагрузить систему.
Установка поддержки Snap в CentOS 8
sudo dnf install epel-release
sudo dnf upgrade
sudo yum install snapd
sudo systemctl enable --now snapd.socket
sudo ln -s /var/lib/snapd/snap /snap
После этого необходимо перезагрузить систему.
Установка поддержки Snap в Fedora
sudo yum install kernel-modules
sudo dnf install snapd
sudo ln -s /var/lib/snapd/snap /snap
После этого необходимо перезагрузить систему.
Установка поддержки Snap в Manjaro Linux
sudo pacman -S snapd
sudo systemctl enable --now snapd.socket
После этого необходимо перезагрузить систему.
Установка поддержки Snap в openSUSE
sudo zypper removerepo snappy
sudo zypper addrepo --refresh https://download.opensuse.org/repositories/system:/snappy/openSUSE_Leap_15.0 snappy
sudo zypper --gpg-auto-import-keys refresh
sudo zypper dup --from snappy
sudo zypper install snapd
sudo systemctl enable --now snapd
sudo systemctl enable --now snapd.apparmor
После этого необходимо перезагрузить систему.
Установка поддержки Snap в Red Hat Enterprise Linux (RHEL) 7
sudo rpm -ivh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
sudo subscription-manager repos --enable "rhel-*-optional-rpms" --enable "rhel-*-extras-rpms"
sudo yum update
sudo yum install snapd
sudo systemctl enable --now snapd.socket
sudo ln -s /var/lib/snapd/snap /snap
После этого необходимо перезагрузить систему.
Установка поддержки Snap в Red Hat Enterprise Linux (RHEL) 8
sudo dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
sudo dnf upgrade
sudo yum install snapd
sudo systemctl enable --now snapd.socket
sudo ln -s /var/lib/snapd/snap /snap
После этого необходимо перезагрузить систему.
Установка поддержки Snap в Solus
sudo eopkg up
sudo eopkg install snapd
После этого необходимо перезагрузить систему.
Работа со Snap-пакетами
Теперь рассмотрим как же работать с этими пакетами.
Проверка работоспособности snap в системе
Для начала необходимо проверить ее работоспособность. Для этого выполним команду:
snap version
Если все хорошо, то вы увидите в консоли версию snap и snapd:
А если написать:
sudo snap
и дважды нажать клавишу TAB (автодополнение), то мы увидим сколько же команд у данного инструмента:
Сейчас мы рассмотрим самые общие и необходимые из них.
Зачем вообще нужна ещё одна система для установки приложений?
Какой бы крутой и быстрой не была бы ваша операционная система, все решает количество написанного для нее ПО и легкость его установки. Поэтому и был сделан новый инструмент, который бы облегчил бы жизнь как разработчиков, так и пользователям.
Обычно в большинстве дистрибутивов надо устанавливать приложения из DEB и RPM пакетов. Такие пакеты содержат саму программу, но не включают зависимости, которые требуются для запуска данного приложения.
В отличие от привычных deb-пакетов и rpm-пакетов, snap пакеты несут в себе все зависимости.
То есть, когда мы устанавливаем deb-пакет или rpm-пакет, то предполагается, что все зависимости мы скачаем из подключенных репозиториев системы.
Но существует огромное количество всевозможных дистрибутивов Linux, как и их версий, и для разработчика это огромная проблема выпускать под весь этот зоопарк свой софт, а пользователю зачастую приходится самому решать проблему с отсутствующей зависимостью.
Файлы Snap-пакетов, имеющие расширение “.SNAP”, больше похожи на контейнеры. Приложения из этих пакетов являются самодостаточными уже скомпилированны, содержат все библиотеки, необходимые для их функционирования, и исполняются в изолированном защищенном окружении. Они устанавливаются в отдельные директории и не конфликтуют с основными компонентами системы. Поэтому все заработает сразу в любом дистрибутиве Linux который поддерживает Snap.
Когда вы устанавливаете в систему приложение из Snap-пакета, то установка не влияет на другие пакеты и приложения. То есть такое приложение работает в своей «программной среде», но при этом оно может взаимодействовать с другими программами в системе.
Преимущества Snap:
- Создаются один раз и для всех поддерживающих платформ. Помимо всего прочего, Snap-пакеты содержат все зависимости и библиотеки, а это значит, что каких-либо проблем с запуском и использованием почти не будет
- Поддерживает автоматическое обновление установленных в системе Snap-пакетов
- Один Snap для всего: дистрибутив Linux, сервер или облако
- Доступность разных версий: вы в любой момент можете переключаться между стабильной, бета и даже ежедневной версиями любого Snap-приложения
- Безопасность: Snap-приложения всегда запускаются в изолированной среде у которой нет доступа к остальной части вашей операционной системы
- Система управления Snap-пакетами
Установка поддержки Snap
Сейчас поддержка Snap пакетов есть в большинстве дистрибутивов, но если по какой-либо причине ее у вас нет, то вы можете ее добавить.
Установка поддержки Snap в Ubuntu, Kubuntu, Lubuntu, Xubuntu, Debian, Linux Mint, Elementary OS, GalliumOS, Kali Linux, KDE Neon, Parrot Security OS, Pop!_OS, Raspbian, Zorin OS и подобных
В новых версиях Ubuntu поддержка Snap уже включена. Если это не так, то для установки Snap выполните команду:
sudo apt update
sudo apt install snapd
systemctl enable --now snapd apparmor
Аналогично выполняется установка в Debian, Linux Mint, Elementary OS и других Ubuntu/Debian-based дистрибутивах.
Установка поддержки Snap в Arch Linux
из GIT репозитория
git clone https://aur.archlinux.org/snapd.git
cd snapd
makepkg -si
или из AUR репозитория:
yaourt -S snapd
Далее необходимо его активировать:
sudo systemctl enable --now snapd.socket
sudo ln -s /var/lib/snapd/snap /snap
После этого необходимо перезагрузить систему.
Установка поддержки Snap в CentOS 7
sudo yum install epel-release
sudo yum install snapd
sudo systemctl enable --now snapd.socket
sudo ln -s /var/lib/snapd/snap /snap
После этого необходимо перезагрузить систему.
Установка поддержки Snap в CentOS 8
sudo dnf install epel-release
sudo dnf upgrade
sudo yum install snapd
sudo systemctl enable --now snapd.socket
sudo ln -s /var/lib/snapd/snap /snap
После этого необходимо перезагрузить систему.
Установка поддержки Snap в Fedora
sudo yum install kernel-modules
sudo dnf install snapd
sudo ln -s /var/lib/snapd/snap /snap
После этого необходимо перезагрузить систему.
Установка поддержки Snap в Manjaro Linux
sudo pacman -S snapd
sudo systemctl enable --now snapd.socket
После этого необходимо перезагрузить систему.
Установка поддержки Snap в openSUSE
sudo zypper removerepo snappy
sudo zypper addrepo --refresh https://download.opensuse.org/repositories/system:/snappy/openSUSE_Leap_15.0 snappy
sudo zypper --gpg-auto-import-keys refresh
sudo zypper dup --from snappy
sudo zypper install snapd
sudo systemctl enable --now snapd
sudo systemctl enable --now snapd.apparmor
После этого необходимо перезагрузить систему.
Установка поддержки Snap в Red Hat Enterprise Linux (RHEL) 7
sudo rpm -ivh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
sudo subscription-manager repos --enable "rhel-*-optional-rpms" --enable "rhel-*-extras-rpms"
sudo yum update
sudo yum install snapd
sudo systemctl enable --now snapd.socket
sudo ln -s /var/lib/snapd/snap /snap
После этого необходимо перезагрузить систему.
Установка поддержки Snap в Red Hat Enterprise Linux (RHEL) 8
sudo dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
sudo dnf upgrade
sudo yum install snapd
sudo systemctl enable --now snapd.socket
sudo ln -s /var/lib/snapd/snap /snap
После этого необходимо перезагрузить систему.
Установка поддержки Snap в Solus
sudo eopkg up
sudo eopkg install snapd
После этого необходимо перезагрузить систему.
Работа со Snap-пакетами
Теперь рассмотрим как же работать с этими пакетами.
Проверка работоспособности snap в системе
Для начала необходимо проверить ее работоспособность. Для этого выполним команду:
snap version
Если все хорошо, то вы увидите в консоли версию snap и snapd:

А если написать:
sudo snap
и дважды нажать клавишу TAB (автодополнение), то мы увидим сколько же команд у данного инструмента:

Сейчас мы рассмотрим самые общие и необходимые из них.