- Snap (Русский)
- Contents
- Установка
- Настройка
- Управление snap-пакетами
- Поиск
- Установка пакетов
- Обновление пакетов
- Удаление пакетов
- Удаление
- Советы и рекомендации
- Classic snaps
- Помощь
- compizomania
- Страницы
- 05 августа 2018
- Что такое snap, и в чем его преимущества
- Ubuntu snap – что это такое и с чем его едят?
- Введение в снапы
- Установка Snap в Linux
- Что такое Snap пакеты?
- Установка snap
- Как пользоваться snap
- 1. Поиск пакетов
- 2. Информация о пакете
- 3. Установка пакетов
- 4. Удаление пакета
- 5. Установленные программы
- 6. История изменений
- 7. Обновление пакетов
- Выводы
Snap (Русский)
snapd это REST API демон для управления snap-пакетами («snaps»). Пользователи могут взаимодействовать с ним с помощью snap клиента, входящего в тот же пакет.
Contents
Установка
В пакет входит snapd демон, а также snap-confine, который обеспечивает монтирование, изоляцию и запуск snap-пакетов.
Настройка
В пакет также входят несколько systemd unit файлов, которые обеспечивают возможность обновления всех установленных snap-пакетов, при выходе новой версии.
Для того чтобы snapd демон запускался, когда snap обращается к нему, запустите snapd.socket .
Вы также можете активировать его при старте системы.
Для того чтобы автоматически обновлять пакеты активируйте snapd.refresh.timer :
Управление snap-пакетами
Для управления пакетами используется утилита snap.
Поиск
Для поиска пакетов, доступных для установки используйте команду find:
Это выведет список всех доступных пакетов. Для поиска конкретного пакета используйте:
Установка пакетов
Установить snap-пакет можно с помощью команды:
Установка требует root привилегий. Установка с правами пользователя на данный момент невозможна. При установке snap загружается в /var/lib/snapd/snaps и монтируется в /snap/имя_пакета .
Кроме того, создаются также юнит-файлы для каждого snap-пакета и добавляются в /etc/systemd/system/multi-user.target.wants/ , для того чтобы snap-пакеты монтировались при каждом запуске системы. Вы можете просмотреть список установленных пакетов командой:
Вы также можете устанавливать snap-пакеты локально, с жесткого диска:
Обновление пакетов
Для того чтобы обновить snap-пакеты выполните:
Удаление пакетов
Для того чтобы удалить пакет выполните:
Удаление
Удаление пакета snapd AUR не приводит к удалению всех каталогов и файлов, которые создаются при его использовании. Лучше всего удалить все snap-пакеты с помощью snap remove, перед тем как удалять сам пакет. Однако, на данный момент невозможно удалить snap-пакет ubuntu-core. Для того чтобы полностью удалить все файлы следуйте инструкции ниже.
1. Отмонтируйте все активные snap-пакеты из /snap .
2. Удалите следующие каталоги:
3. Удалите все файлы, отвечающие за монтирование snap-пакетов из /var/lib/snapd/snaps в /snap при загрузке.
Советы и рекомендации
Classic snaps
Some snaps (e.g. Skype and Pycharm) use classic confinement. However, classic confinement requires the /snap directory, which is not FHS-compliant. Therefore, the snapd package does not ship this directory. However, if the user wants to, he can manually create a symlink from /snap to /var/lib/snapd/snap , to allow the installation of classic snaps:
Помощь
Почтовая рассылка Arch Linux и другие официальные каналы поддержки Arch Linux не являются подходящим местом для запроса помощи по snap-пакетам на Arch Linux. Подходящим местом для запроса поддержки является Snapcraft forum.
Источник
compizomania
Азбука в Linux для начинающих и не только. Я знаю только то, что ничего не знаю, но другие не знают и этого. Сократ
Страницы
05 августа 2018
Что такое snap, и в чем его преимущества
Snap — это универсальный пакет, созданный Canonical (Ubuntu), который доступен для каждой операционной системы Linux, поддерживающей snapd: Ubuntu, Debian, Linux Mint, Gentoo, Arch Linux, Fedora, OpenWrt, OpenEmbedded, Yocto, openSUSE, Manjaro, Solus.
Более того, snap будет хорошо работать в любом дистрибутиве Linux без каких-либо дополнительных модификаций, так как он уже содержит все необходимые зависимости.
Snap-пакеты являются самодостаточными, в отличие от традиционных подходов к управлению пакетами Linux, такими как APT или YUM, которые требуют специальной адаптации для каждого дистрибутива и добавляют задержку между разработкой приложений и ее развертыванием для конечных пользователей.
Менеджером snap-пакетов является служба snapd (d-demon), которая работает в фоновом режиме.
Прежде чем начать установку snap-пакетов в дистрибутивах Linux, необходимо установить Менеджер пакетов snapd.
В каждом из дистрибутивов Linux, snapd устанавливается по-своему.
Инструкцию по установке snapd для каждого дистрибутива можно найти на официальной странице https://docs.snapcraft.io/core/install.
Инструкция по установке snapd:
После того как snapd установлен, вы можете устанавливать приложения посредством snap-пакетов.
Устанавливать snap-пакеты можно как из магазина Snap Store, так и посредством терминала.
1. Установка из магазина Snap Store.
Переходите по ссылке https://snapcraft.io/store в магазин Snap Store и выбираете программу, кликом на значке.
Нажимаете кнопку Install (Установить).
Копируете установочную терминальную команду на выполнение.
И выполняете её в терминале.
По окончании установки программы терминал известит вас об этом: ‘opera-software’ installed (‘приложение opera’ установлено).
Примечание. Терминальная команда sudo snap install название программы является универсальной для любого из перечисленных выше дистрибутивов Linux.
2. Установка snsp-пакетов непосредственно из терминала, без захода в магазин Snap Store.
Откройте терминал и выполните команду:
find в переводе с английского означает найти.
После выполнения этой команды, терминал выводит перечень/список snap-пакетов.
Если в команде указана конкретная программа, терминал вам выдаст возможный перечень версий программы для установки.
snap find opera
Скопируйте в установочную команду название выбранной версии и выполните команду в терминале. Пример:
sudo snap install —beta opera-beta
Примечание. Команда snap install opera-beta не перезаписывает установленную стабильную версию программы, они будут работать автономно. В системном меню вы найдёте обе программы.
Установка snap-пакетов требует root привилегий (sudo). Установка с правами пользователя на данный момент невозможна. При установке snap загружается в /var/lib/snapd/snaps и монтируется в /snap/имя_пакета.
Кроме того, создаются также юнит-файлы для каждого snap-пакета и добавляются в /etc/systemd/system/multi-user.target.wants/, для того чтобы snap-пакеты монтировались при каждом запуске системы.
Поиском в snap-пакетах (snap find weather) я нашёл очень интересную консольную программу погоды от Яндекс — yandex-weather-cli.
Выполните в терминале следующую команду на установку yandex-weather-cli.
sudo snap install yandex-weather-cli —edge
По окончании установки, введите и выполните команду:
Данная команда по умолчанию выводит в терминале погодные условия вашей местности:
Если вы к команде добавите искомый город (на английском языке) в нижнем регистре, то получите вывод погодных данных в этом городе. Например, я добавил г. Москва (moscow):
Посмотреть список установленных snsp-пакетов
Вы можете просмотреть список установленных у вас snsp-пакетов командой:
Мой вывод команды списка установленных программ посредством snap:
3. Удаление пакетов snap
Для того чтобы удалить пакет выполните в терминале: sudo snap remove имя пакета. Например:
sudo snap remove opera-beta
Подробней о командах snap можно познакомиться, выполнив команду в терминале:
Источник
Ubuntu snap – что это такое и с чем его едят?
Относительно недавно в Ubuntu появился новый инструмент — снапы (от англ. snap), но что это такое и как их использовать знают далеко не все пользователи.
Введение в снапы
Представим вполне реальную ситуацию. Пользователь устанавливает самую новую версию Ubuntu, пусть это будет версия 16.04 — именно в ней и появились впервые снапы по умолчанию. По определенным причинам пользователь отключает обновления. Такая ситуация не надумана. Мы все знаем, что после обновления системы Ubuntu, к сожалению, не всегда работает корректно и даже не всегда загружается.
Пользователя все устраивает и он спокойно себе использует дистрибутив некоторое время. Через несколько лет пользователь хочет установить новую версию приложения, например, браузера и обнаруживает, что он не может этого сделать.
Почему? Да потому что его дистрибутив устарел. для установки приложения нужны новые версии библиотек, а для их установки нужно обновить уже установленные пакеты. Иногда процесс настолько масштабный, что приходится обновлять дистрибутив. А ведь мы знаем, что пользователь не хочет этого делать по ряду причин, да и это опасно: система может быть разрушена нарушения связей между программами и библиотеками.
Вторая ситуация. Пусть у пользователя самая новая версия дистрибутива (на данный момент — это 18.10) — чтобы никто не упрекнул нас в надуманности ситуации. Мы знаем, что у традиционных пакетов есть зависимости и конфликты. Иногда нельзя установить то или иное приложение, поскольку его библиотеки конфликтуют с библиотеками уже установленными в системе.
Обе проблемы настолько обширны, что разработчики Ubuntu изобрели снапы. Все мы знакомы с понятием пакета. Пакет содержит саму программу, а также различные вспомогательные файлы — документацию, ресурсы (картинки, например), файлы локализации, сценарии Но пакет не содержит всего, что нужно для работы этой программы в системе. Например, если программе для работы нужна библиотека GL, то просто в пакете «прописывается» зависимость — нужно установить пакет для работы этого пакета. При установке программы менеджер пакетов (apt) производит разрешение зависимостей — устанавливает все необходимые для работы этой программы пакеты.
С одной стороны, такой подход позволяет экономить место на диске. Ведь одну и ту же библиотеку не нужно устанавливать несколько раз. С другой стороны, это порождает уже описанные ранее проблемы.
Снап — это решение всей головной боли, как пользователя, так и разработчика приложения. Снап можно считать таким пакетом, в котором содержится не только программа, но и все необходимые для ее работы библиотеки. Получается, что все, что нужно для работы программы содержится в снапе.
Источник
Установка 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. Для этого выполните:
sudo apt install snapd
Установка snap в Fedora или CentOS отличается не сильно:
sudo dnf install snapd
После установки для включения возможности установки классических приложений через 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. Например:
snap find chromium
Будут выведены все пакеты соответствующие данному критерию, доступные для установки в вашей системе. Если выполнить команду find без параметров, то система выведет несколько рекомендуемых пакетов.
2. Информация о пакете
Чтобы посмотреть информацию о пакете используйте команду info:
snap info chromium
Здесь выводится информация о том кто создал пакет, а также его описание. Для установки пакетов доступно несколько каналов. Это 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 можно посмотреть все доступные версии определённого пакета:
snap list —all opera
6. История изменений
Также вы можете посмотреть историю изменений, внесенных, в систему с помощью этого пакетного менеджера:
7. Обновление пакетов
Если вы хотите обновить пакет snap, до более новой версии, выполните команду refresh:
sudo snap refresh opera
Если установлена самая свежая версия вы получите сообщение об ошибке.
Для обновления всех пакетов, установленных в системе просто выполните команду refresh:
sudo snap refresh
Если обновление вам не понравилось, вы можете откатить версию всех пакетов или одного из них до предыдущей. Для этого выполните команду revert:
sudo snap revert opera
Выводы
С момента создания этой технологии прошло много времени и сейчас доступно уже много snap пакетов. Они даже вытеснили многие PPA репозитории, что теперь заброшены и не поддерживаются. Поскольку существует инструмент snapcraft, который делает создание snap пакетов намного проще, все разработчики могут подготовить эти пакеты для своих программ.
А что вы думаете о системе управления пакетами и о самих пакетах snap? Будете использовать систему установки snap чаще чем apt? Напишите в комментариях!
Источник