- Установка Snap в Linux
- Что такое Snap пакеты?
- Установка snap
- Как пользоваться snap
- 1. Поиск пакетов
- 2. Информация о пакете
- 3. Установка пакетов
- 4. Удаление пакета
- 5. Установленные программы
- 6. История изменений
- 7. Обновление пакетов
- Выводы
- How to Install and Use Snap in Various Linux Distributions
- Advantages of snaps
- How to install Snap on Linux
- Enabling Snap support on Debian and Ubuntu based distributions
- Enabling Snap support on Fedora based distributions
- Enabling Snap support on Arch-based distributions
- Enabling Snap support on OpenSUSE based distributions
- How to use snap with the basic Snap commands
- Finding a snap
- Installing snaps
- List out installed snaps
- Update an installed snap app
- Uninstall a snap package
- Final Words
Установка Snap в Linux
Одно из самых обсуждаемых нововведений в Ubuntu 16.04 — это новый формат установочных пакетов программного обеспечения — snap. Canonical представила новую систему установки и управления программным обеспечением, она более безопасна и позволяет получить всегда самые последние версии программ.
Ещё одно преимущество Snap пакетов — это доступность не только в Ubuntu, но и в других дистрибутивах. Разработчики могут создать один пакет, который потом можно будет одинаково установить в Ubuntu, Debian, Fedora, CentOS или любом другом дистрибутиве. В этой статье мы рассмотрим как установить пакетный менеджер Snap в вашем дистрибутиве, а также как им пользоваться.
Что такое Snap пакеты?
Сначала поговорим о том что такое Snap. Есть несколько способов установки программ в системах Linux. Один из способов — установка из исходных кодов. Здесь вам нужно вручную запускать скрипты, удовлетворять зависимости, ну одним словом, очень неудобно.
Здесь в игру вступают пакеты. После завершения разработки программы её разработчики создают пакеты, например, deb или rpm и размещают их в репозиториях программного обеспечения, откуда пользователи могут их очень легко установить. Установить программу из любого deb пакета можно буквально в пару кликов. Но такие пакеты содержат только саму программу, все зависимости и необходимые ей библиотеки пакетный менеджер ищет и устанавливает автоматически.
В свою очередь Snap пакеты содержат саму программу, а также все её зависимости. Это имеет несколько преимуществ перед обычными deb или rpm пакетами, поскольку теперь программу можно запустить в любом дистрибутиве, а также разработчик может быть уверен, что его программа получает именно необходимые ей версии библиотек.
Установка snap
В дистрибутивах, основанных на Debian и в самом Debian для использования snap пакетов сначала надо установить менеджер пакетов snap. Для этого выполните:
Установка snap в Fedora или CentOS отличается не сильно:
После установки для включения возможности установки классических приложений через snap надо создать символическую ссылку на /var/lib/snapd/snap в корне:
sudo ln -s /var/lib/snapd/snap /snap
После этого можно установить магазин приложений snap-store:
sudo snap install snap-store
Или устанавливать пакеты snap через терминал.
Как пользоваться snap
Основы рассмотрели, теперь перейдем к управлению пакетами. Процесс взаимодействия со snap очень похож на apt или dnf, только не надо обновлять репозитории. Все действия выполняются в терминале.
1. Поиск пакетов
Чтобы найти нужный пакет или посмотреть есть ли он в магазине приложений snap используйте команду find. Например:
Будут выведены все пакеты соответствующие данному критерию, доступные для установки в вашей системе. Если выполнить команду find без параметров, то система выведет несколько рекомендуемых пакетов.
2. Информация о пакете
Чтобы посмотреть информацию о пакете используйте команду info:
Здесь выводится информация о том кто создал пакет, а также его описание. Для установки пакетов доступно несколько каналов. Это stable, beta и edge. Первый самый стабильный, второй — тестируемый, а третий — версия для разработчиков. Эта информация тоже выводится внизу вывода команды info. Здесь же выводится версия программы в канале.
3. Установка пакетов
Вы можете установить snap пакет в Ubuntu или любом другом дистрибутиве командой install:
sudo snap install chromium
Когда установка snap пакетов завершится, программа выдаст соответствующее сообщение. Для установки пакета из определенного канала используйте соответствующую опцию, например —stable, —candidate, —beta или —edge. По умолчанию используется канал stable. Например:
sudo snap install chromium —edge
По умолчанию приложение может получить доступ только к тем частям системы, к которым у него подключены интерфейсы. Эти подключения устанавливаются автоматически во время установки пакета. Посмотреть их можно командой connections:
snap connections chromium
Иногда для приложений недостаточно такого уровня доступа. Тогда для них используется уровень безопасности classic. В этом режиме приложение получает доступ к системным ресурсам как любые другие системные программы. Для установки таких программ надо использовать опцию —classic, иначе установить их не получится:
sudo snap install —classic atom
Есть ещё один режим безопасности, при котором приложение получает полный доступ к системе: devmode. Для установки таких программ надо использовать опцию —devmode.
4. Удаление пакета
Удалить snap пакет из системы очень просто. Для этого достаточно использовать команду remove:
sudo snap remove chromium
5. Установленные программы
Для того чтобы посмотреть все пакеты, установленные в системе используйте команду list:
Многие из программ Ubuntu и Gnome уже поставляются в виде snap и их уже нельзя установить из обычных репозиториев. С помощью опции —all можно посмотреть все доступные версии определённого пакета:
6. История изменений
Также вы можете посмотреть историю изменений, внесенных, в систему с помощью этого пакетного менеджера:
7. Обновление пакетов
Если вы хотите обновить пакет snap, до более новой версии, выполните команду refresh:
Если установлена самая свежая версия вы получите сообщение об ошибке.
Для обновления всех пакетов, установленных в системе просто выполните команду refresh:
Если обновление вам не понравилось, вы можете откатить версию всех пакетов или одного из них до предыдущей. Для этого выполните команду revert:
Выводы
С момента создания этой технологии прошло много времени и сейчас доступно уже много snap пакетов. Они даже вытеснили многие PPA репозитории, что теперь заброшены и не поддерживаются. Поскольку существует инструмент snapcraft, который делает создание snap пакетов намного проще, все разработчики могут подготовить эти пакеты для своих программ.
А что вы думаете о системе управления пакетами и о самих пакетах snap? Будете использовать систему установки snap чаще чем apt? Напишите в комментариях!
Обнаружили ошибку в тексте? Сообщите мне об этом. Выделите текст с ошибкой и нажмите Ctrl+Enter.
How to Install and Use Snap in Various Linux Distributions
Snaps are Canonical’s way of providing a cross-distribution package management system. In this article, we will see how to install and use snaps in various Linux distributions.
Brief: Snaps are Canonical’s way of providing a cross-distribution package management system. This article will show how to install and use snaps in various Linux distributions. You might be hearing about Snap applications these days. Canonical describes Snap as a universal Linux package that can work on any distribution. Snaps are basically an application compiled together with their dependencies and libraries – providing a sandboxed environment for the application to run. These are easier and faster to install, can receive the latest updates and are confined from the OS and other apps. An application can be packaged for every Linux desktop, server, cloud or device in the form of snap. For an application developer, maintaining different package formats and subsequent updates is a pain, which Canonical has tried to overcome in the form of Snaps. It has worked well because more and more applications are now providing Snap packages. In other words, instead of worrying about DEB packages for Debian/Ubuntu, RPM packages for Fedora, etc, you can use Snap package that would work on all Linux distributions with Snap support.
Advantages of snaps
- Easier to create and manage for Developers: Snaps are easier to create and contain all the dependencies and libraries needed to run, which also means the application uses the latest libraries and do not face any dependencies issues.
- Automatic Updates: Updates to a snap are delivered automatically daily, and reach out to everyone irrespective of the base OS.
- One snap for everything: be it a desktop, server or cloud.
- Different release availability: A snap can be maintained in the stable release, beta versions, and daily build at the same time and you can switch between each other whenever you want.
- Security: Snaps run in a sandboxed environment, isolated from the rest of your system.
How to install Snap on Linux
Before you Snap packages, you will have to install snapd. snapd is a management environment that handles installation and updates of snaps. Installing snapd will enable Snap support on your Linux distribution.
Let’s see how to install it for different Linux distributions.
Enabling Snap support on Debian and Ubuntu based distributions
If you want to use Snap applications on Linux Mint and other Debian or Ubuntu based distributions, use the command below:
Enabling Snap support on Fedora based distributions
Enabling Snap support on Arch-based distributions
snapd is available in Arch User Repository. Run the below command to install and enable it.
yaourt -S snapd sudo systemctl enable --now snapd.socket
Enabling Snap support on OpenSUSE based distributions
snapd is not officially included for OpenSUSE. To install in Tumbleweed use the below commands:
sudo zypper addrepo http://download.opensuse.org/repositories/system:/snappy/openSUSE_Leap_42.2/ snappy sudo zypper install snapd
Once the package is successfully installed from the community repo, enable the systemd unit.
sudo systemctl enable --now snapd.socket
How to use snap with the basic Snap commands
Once you are done with the snapd installation, it’s time to see how to use it. We have already covered Snap commands in detail. Here, I’ll just quickly list out the most useful Snap commands.
You can search different snaps and install it. There is a Snap store which holds different public and private apps (or snaps) for clouds, desktops, devices etc.
Finding a snap
Anyone can publish a snap in the store, however, you only see the snaps that are published to the stable release and has been reviewed. Use the below command to search for a snap:
sudo snap find libreoffice
Installing snaps
Once you found the snap you are looking for, you can install it with the below command:
List out installed snaps
You can use the below command to see the snaps you have installed along with their versions and the developer:
Update an installed snap app
Snaps are updated periodically to their latest version. In case you are trying to do it manually, type in the below command in the terminal:
Uninstall a snap package
Final Words
With different Linux distributions running different package managers and formats, there is no single way of installing an application in every Linux distribution the same way. Snap can solve this problem, over-coming the installation issues (like a missing library) and ensuring you are running the latest version!
What do you think about snaps? Do tell us in the comments.