Программа snap что это

Содержание

Пакетирование и публикация snap-приложения в Ubuntu 18.04

Финальный этап работы над приложением – пакетирование и распространение готового продукта – является одним из самых трудных. Дружественность и безопасность многих существующих методологий развертывания приложений оставляет желать лучшего. Также далеко не все методы поддерживают автоматическое обновление приложений после установки.

Snap – это современный формат пакетирования приложений с удобной песочницей и надежными функциями безопасности, которые включают изоляцию файловой системы, автоматическое обновление и интегрированное управление зависимостями. Snap-приложения (иногда их называют просто Snaps) можно загрузить и установить с помощью стандартных программ командной строки типа apt и yum. Система Ubuntu поставляется с предустановленным Snap, что делает ее удобной средой для Snap-приложений.

Этот мануал поможет вам создать приложение Snap и опубликовать его на Snap Store.

Требования

  • Сервер Ubuntu 18.04, настроенный согласно этому мануалу.
  • Приложение, которое вы хотите пакетировать и опубликовать в формате Snap. Для этого подойдёт разработанное вами сложное приложение, любой проект с открытым исходным кодом или простая тестовая программа «Hello, world!». Чтобы создать тестовую программу, выполните мануал Написание простой программы Go.
  • Аккаунт Snapcraft Developer Dashboard.

Выполнив все требования, войдите на сервер как пользователь sudo и приступайте к работе.

Секреты компании SNAPCHAT: Как стать САМОЙ КРУТОЙ соцсетью в США для подростков!

1: Подготовка приложения к пакетированию

Сначала нужно подготовить приложение к пакетированию как приложение Snap. Для этого нужно, чтобы все необходимое хранилось в одном каталоге.

Создайте каталог для Snap и перейдите в него:

mkdir ~/your-snap
cd ~/your-snap

Затем, если у вас уже есть приложение, поместите полную копию его исходного кода в каталог, который вы только что создали. Этот процесс в значительной степени зависит от того, какое именно приложение вы упаковываете. Если исходный код хранится в репозитории Git, вы можете выполнить git init в этом каталоге и выгрузить весь соответствующий код.

Если у вас еще нет приложения, которое вы хотели бы упаковать, вы можете создать тестовую программу «Hello World».

Для этого сначала создайте новый файл Go и откройте его с помощью любого удобного текстового редактора:

Затем добавьте в файл следующий код:

Сохраните и закройте файл.

Если у вас нет установки Go, вы можете установить программу с помощью команды:

sudo apt install golang-go

Установив Go, вы можете запустить свою программу с помощью команды:

go run helloworld.go

Вы получите такой вывод:

Итак, ваше приложение готово к пакетированию как Snap. Далее мы установим все программы, необходимые для пакетирования.

2: Установка Snapcraft

На этом этапе мы скачаем и установим Snapcraft, официальный инструмент пакетирования приложений Snap. Snapcraft доступен в Snap Store, который по умолчанию встроен в Ubuntu. То есть вы можете установить Snapcraft из командной строки, используя команду snap.

105 Snap пакеты. Пример.

Команда snap эквивалентна команде apt, но с ее помощью можно устанавливать программное обеспечение из Snap Store, а не из репозиториев Apt.

Чтобы установить Snapcraft, выполните следующую команду:

sudo snap install snapcraft —classic

Аргумент –classic установит Snapcraft без строгой песочницы, которую обычно используют Snaps. Snapcraft нужен этот аргумент, поскольку ему требуется более привилегированный доступ к вашей системе для надежной упаковки приложений.

Установив Snapcraft, вы увидите следующее:

snapcraft 3.9.8 from Canonical✓ installed

Затем вы можете проверить установку Snapcraft, запустив:

Эта команда должна вернуть версию установки:

snapcraft, version 3.9.8

Теперь, когда вы установили Snapcraft, вы можете начать определять конфигурацию и метаданные вашего приложения Snap.

3: Определение конфигурации и метаданных приложения Snap

Пора определить конфигурацию, структуру и метаданные приложения Snap.

Убедитесь, что вы все еще находитесь в каталоге приложений Snap:

Затем создайте и отредактируйте файл snapcraft.yaml через любой удобный текстовый редактор:

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

Начните с определения имени, описания и номера версии вашего приложения:

name: your-snap
summary: A summary of your application in 78 characters or less.
description: |
A detailed description of your application.
The description can have multiple lines.
version: ‘1.0’

Имя вашей программы Snap должно быть уникальным, если вы хотите опубликовать его в Snap Store. Поищите другие приложения с тем именем, которое вы выбрали, чтобы убедиться, что оно еще не занято.

Затем вы можете определить команды, которые хотите связать с вашим приложением. Это позволит использовать Snap прямо из командной строки Bash как обычную команду.

Добавьте в файл snapcraft.yaml следующее:

. . .
apps:
your-snap-command:
command: your-snap

your-snap-command – это имя команды, которую вы хотите определить. Например, вы можете использовать команду helloworld для запуска вашей программы Hello World.

Строка command: your-snap позволяет сообщить Snapcraft, что делать при запуске команды приложения. В случае с «Hello World» вы должны использовать значение helloworld для ссылки на файл helloworld.go, что позволит Snapcraft успешно запустить вашу программу.

В итоге получится такая конфигурация:

apps:
helloworld:
command: helloworld

Если имя команды точно соответствует имени Snap-пакета, вы сможете запустить его непосредственно из командной строки. Если команда не соответствует имени Snap-пакета, оно будет автоматически добавляться перед командой (например, helloworld.command1).

Затем вы можете определить раздел parts, где хранятся компоненты, которые составляют ваше приложение Snap. Некоторые приложения Snap состоят из нескольких компонентов, но во многих случаях приложение включает всего один компонент – собственно само приложение.

Каждый компонент имеет связанный плагин. Например, для компонентов приложения, написанных на Ruby, используется плагин ruby, а для компонентов, написанных на Go, используется плагин go.

Вы можете использовать команду Snapcraft list-plugins, чтобы определить правильные плагины для приложения:

На экране появится такой список:

ant catkin-tools conda dump gradle make nil python rust
autotools cmake crystal go kbuild maven nodejs qmake scons
catkin colcon dotnet godeps kernel meson plainbox-provider ruby waf

Наиболее распространенными плагинами являются плагины для популярных языков программирования, таких как Go, Rust, Ruby или Python.

После того как вы определили необходимые плагины для своего приложения, вы можете добавить конфигурацию раздела parts в файл snapcraft.yaml:

. . .
parts:
your-snap:
plugin: plugin-name
source: .

Параметр конфигурации source позволяет указать относительный путь к исходному коду вашего приложения. Обычно это тот же каталог, в котором находится и сам файл snapcraft.yaml, поэтому значение source – символ точки (.).

Примечание: Если компонент вашего приложения имеет какие-либо зависимости, необходимые для его сборки или запуска, вы можете указать их, используя атрибуты build-packages и stage-packages. Указанные имена зависимостей будут автоматически извлечены менеджером пакетов вашей системы по умолчанию. Например:

Читайте также:
Программа установки обнаружила что этот компьютер

parts:
your-snap:
plugin: plugin-name
source: .
build-packages:
— gcc
— make
stage-packages:
— libcurl4

Некоторые плагины Snapcraft имеют свои специфические параметры, которые могут потребоваться для работы вашего приложения. Поэтому стоит ознакомиться с соответствующими страницами справочника плагина:

snapcraft help plugin-name

Для приложений Go вы также должны указать go-importpath. Например, для простой программы Hello World получится такая конфигурация:

parts:
helloworld:
plugin: go
source: .
go-importpath: helloworld

Вы можете пока оставить свой файл snapcraft.yaml открытым, чтобы добавить остальные настройки на следующем этапе.

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

4: Защита приложения Snap

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

Добавьте в файл snapcraft.yaml следующее:

Это включит песочницу для вашего приложения, запретив ему доступ к Интернету, другим запущенным Snaps и к самой хост-системе. Однако в большинстве случаев приложения должны иметь возможность обмениваться данными вне своей изолированной программной среды, (например, когда им требуется доступ к Интернету или право на чтение/запись в файловой системе).

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

Точный список требуемых интерфейсов зависит от вашего приложения. Вот некоторые из наиболее распространенных интерфейсов:

  • audio-playback: звуковой вывод, проигрывание звуков.
  • audio-record: звуковой ввод, запись звуков.
  • camera: доступ к камере.
  • home: доступ к обычным (не скрытым) файлам в вашем домашнем каталоге
  • network: доступ к сети, к интернету.
  • network-bind: позволяет приложению привязываться к определенному порту и работать как сервис.
  • system-files: открывает доступ ко всей файловой системе хост-машины.

Полный список доступных интерфейсов можно найти в документации Snapcraft в разделе Supported Interfaces.

После того как вы определили все необходимые интерфейсы вашего приложения, вы можете присвоить их плагинам в файле snapcraft.yaml.

Например, в этой конфигурации приложение получит доступ к сети и домашней области пользователей:

. . .
plugs:
your-snap-home:
interface: home
your-snap-network:
interface: network

Имя подключаемого плагина должно быть описательным, чтобы помочь пользователям определить его назначение.

Итак, вы включили «песочницу» своего приложения и настроили некоторые плагины для предоставления ограниченного доступа к системным ресурсам. Давайте закончим сборку приложения Snap.

5: Сборка и тестирование приложения Snap

Теперь, когда вы написали всю необходимую конфигурацию для приложения Snap, вы можете приступить к сборке и локальному тестированию своего итогового пакета.

Если вы тоже выполняли этот мануал на примере программы Hello World, ваш файл snapcraft.yaml теперь будет выглядеть примерно так:

name: helloworld
summary: A simple Hello World program.
description: |
A simple Hello World program written in Go.
Packaged as a Snap application using Snapcraft.
version: ‘1.0’
confinement: strict
apps:
helloworld:
command: helloworld
parts:
helloworld:
plugin: go
source: .
go-importpath: helloworld
plugs:
helloworld-home:
interface: home
helloworld-network:
interface: network

Чтобы собрать приложение Snap, запустите команду snapcraft из каталога приложения:

Snapcraft автоматически запустит виртуальную машину (VM) и начнет сборку. После завершения Snapcraft закроется, и вы увидите нечто похожее:

Теперь вы можете установить приложение Snap локально, чтобы убедиться, что оно работает:

sudo snap install your-snap.snap —dangerous

Аргумент –dangerous необходим, так как вы устанавливаете локальный Snap, который не был подписан.

После завершения установки вы можете запустить Snap, используя соответствующую команду. Например:

В данном случае команда вернет следующий вывод:

Вы также можете просмотреть политику песочницы вашего приложения Snap, чтобы убедиться, что привилегии были предоставлены правильно:

snap connections your-snap

Эта команда выведет список плагинов и интерфейсов:

snap connections your-snap
Interface Plug Slot Notes
home your-snap:your-snap-home :home —
network your-snap:your-snap-network :network —

Итак, вы собрали свой Snap-пакет. Теперь давайте опубликуем его.

6: Публикация приложения Snap

Теперь, когда вы создали и протестировали приложение Snap, пришло время выпустить его релиз в Snap Store.

Войдите в свою учетную запись Snap Developer с помощью приложения командной строки Snapcraft:

Следуйте дальнейшим инструкциям программы (нужно ввести свой адрес электронной почты и пароль).

Далее необходимо зарегистрировать имя приложения в Snap Store:

snapcraft register your-snap

После этого вы можете отправить собранный пакет Snap в магазин:

snapcraft push your-snap.snap

Вы увидите похожий вывод:

Preparing to push ‘your-snap_1.0_amd64.snap’.
Install the review-tools from the Snap Store for enhanced checks before uploading this snap.
Pushing ‘your-snap_1.0_amd64.snap’ [===================================================================================================] 100%
Processing. |
Ready to release!
Revision 1 of ‘your-snap’ created.

При появлении новых пакетов этого приложения на Snap store номер ревизии будет увеличиваться (отсчёт начитается с единицы). Это помогает различать сборки приложения Snap.

Наконец, вы можете выпустить свое приложение Snap в публичный доступ:

snapcraft release your-snap revision-number channel

Если вы впервые отправляете пакеты в Snap Store, номер ревизии будет равен 1. Если у вас несколько версий приложения на разных этапах разработки, вы можете выбрать канал stable, candidate, beta или edge.

Например, следующая команда выпустит версию 1 программы Hello World на канале stable:

snapcraft release helloworld 1 stable

Вы увидите такой вывод:

Track Arch Channel Version Revision
latest amd64 stable 1.0 1
candidate ^ ^
beta ^ ^
edge ^ ^
The ‘stable’ channel is now open.

Теперь вы можете найти свое приложение в Snap Store и установить его на любое из ваших устройств.

Заключение

В этом мануале вы научились собирать и публиковать приложения в формате Snap.

Если вы хотите узнать о Snap больше, изучите Snap Store или почитайте Snapcraft YAML Reference, где вы сможете определить дополнительные атрибуты для вашей конфигурации Snap.

Если вы хотите продолжить изучение разработки в Snap, почитайте о внедрении Snap Hooks, которые позволяют Snaps динамически реагировать на системные изменения (обновления или настройки политики безопасности).

Источник: www.8host.com

Установка и использование Snap-пакетов в Ubuntu 18.04

Snap (или Snappy) — это система развертывания программ и управления пакетами, созданная Canonical. Эти пакеты чаще называют «снепами». Для работы с ними используется утилита «snapd», встроенная в ряд дистрибутивов Linux и позволяющая дистрибутивно-независимо развертывать программы на более высоком уровне.

Snap-пакеты полностью самодостаточны и работают на всех дистрибутивах Linux, позволяя безопасно распространять новые приложения и утилиты для систем облачных вычислений, серверов, десктопа и интернета вещей (Internet of Things). То есть snap-пакеты используются так же, как и команда apt-get , но другим способом.

Snapd — это REST API демон, служащий для управления snap-пакетами. Пользователи взаимодействуют с ним с помощью клиента snap, который входит в тот же пакет. Вы можете установить любое приложение на Linux-десктоп, сервер, облако или устройство.

Вам понадобится

GNU/Linux дистрибутив u и некоторые базовые знания о работе в командной строке. В данном руководстве вы узнаете, как настроить и использовать snap-команды.

Установка системы Snap

Если у вас установлена Ubuntu 16.04 LTS (Xenial Xerus) или более поздние версии, включая Ubuntu 18.04 LTS (Bionic Beaver), то вам ничего не надо делать. Snap установлен по умолчанию и готов к работе. Соответственно, если у вас установлена более ранняя версия или системы Snap нет по каким-то другим причинам, то сначала установите ее, а затем приступайте к работе.

Установку можно осуществить с помощью следующих команд:

$ sudo apt update
$ sudo apt install snapd

Работа с системой Snap

snapd настроен и готов к использованию!

Поиск snap-приложений/пакетов

Чтобы найти доступные snap-приложения или пакеты выполните следующую команду:

$ snap find

Установка snap-приложений

Вы можете установить любые приложения/пакеты, доступные в формате snap, выполнив следующую команду:

$ sudo snap install

Также можно указать конкретный канал, из которого вы хотите установить приложение. Канал — это snap-концепция, которая позволяет переключаться между разными каналами snap-приложений.

Читайте также:
Treexy что это за программа

$ sudo snap install —channel=edge

Запуск установленных snap-пакетов

Установленные snap-пакеты доступны в формате bin/snap и, как правило, добавлены в $PATH . Это позволяет сделать снепы доступными через ввод команды. Snap-приложение можно запустить, выполнив следующую команду:

Также его можно запустить через команду:

$ bin/snap/

Просмотр списка установленных приложений

Чтобы увидеть все установленные snap-пакеты, выполните следующую команду:

$ snap list

Обновление установленных snap-приложений/пакетов

Снепы обновляются автоматически, но вы можете также обновить их вручную с помощью следующей команды:

$ sudo snap refresh

Чтобы посмотреть, какие обновления snap-пакетов готовы к установке, выполните следующую команду:

$ sudo snap refresh —list

Возврат к более ранней версии snap-приложений/пакетов

Если по какой-то причине вам не понравилось последнее обновление snap-пакета, вы можете вернуться к предыдущей версии с помощью следующей команды:

$ sudo snap revert

Такая команда вернет необходимую версию snap-пакета и данные, соответствующие ПО. Если предыдущая версия snap-пакета получена из другого канала, она все равно установится, и канал останется прежним.

Удаление snap-приложений/пакетов

Если вы хотите избавиться от снепов, удалите snap-пакет с помощью следующей команды:

$ sudo snap remove

Эта команда удалит приложение, все ее зависимости во время выполнения и связанные пользовательские данные. Если снеп запущен, команда сначала закроет его и затем удалит.

Включение и выключение snap-приложений/пакетов

Если вы хотите временно остановить работу снепа, просто отключите его и снова включите тогда, когда потребуется.

$ sudo snap disable
disabled$ sudo snap enable
enabled

Список запущенных служб

Используйте snap services , чтобы просмотреть все установленные и запущенные снепы.

$ sudo snap services lxd Service
Startup Current lxd.daemon enabled active

Перезапуск, запуск и приостановление snap-служб

Службы можно перезапустить с помощью команды snap restart .

Все службы, необходимые для работы снепов, будут перезагружены по умолчанию:

$ sudo snap restart lxd
Restarted.

Чтобы запустить ранее остановленную службу, используйте следующую команду:

$ sudo snap start lxd.daemon
Started.

Чтобы остановить запущенную службу, используйте следующую команду:

$ sudo snap stop lxd.daemon
Stopped.

Конфигурации snap set и get

Некоторые снепы, например, работающие в фоновом режиме, выставляют параметры конфигурации, которые можно изменить.

Команды для просмотра и изменения этих параметров конфигураций — snap get и snap set .

Выставленные параметры конфигурации можно посмотреть с помощью установленного снепа. Введите команду snap get :

$ sudo snap get

Чтобы изменить параметры конфигурации, задайте команду «snap set»:

$ sudo snap set key=value

Скачивание и установка snap-приложений offline

Установить snap-приложения можно и без подключения к интернету. Для этого необходимо скачать файлы snap-приложений/пакетов, задав следующую команду:

snap download

Эта команда загрузит .assert и .snap файл. Скопируйте их на другую Linux/Ubuntu систему, которая не имеет подключения к интернету. Затем установите загруженный файл с помощью следующей команды:

snap ack
snap install

Заключение

Хотя данная система все еще разрабатывается, и доступно не так много snap-приложений/пакетов, тем не менее, она является одной из лучших систем управления ПО. Snap становится все популярнее, особенно благодаря таким настойчивым методам Canonical.

Источник: medium.com

Установка и использование Snap на разных дистрибутивах Linux

Установка и использование Snap на разных дистрибутивах Linux

Вкратце: Snap — это система управления и распределения пакетов, предоставляемая компанией Canonical (авторами Ubuntu). В этой статье мы рассмотрим как установить и использовать Snap на различных дистрибутивах Linux.

До сего момента вы уже могли слышать о Snap. Canonical описывает свою разработку как универсальный способ установки пакетов на любом дистрибутиве Linux.

Сами Snap-пакеты представляют собой заранее скомпилированные, вместе со всеми своими зависимостями и библиотеками, приложения, для которых, ко всему прочему, еще и существует своя собственная изолированная среда запуска. Они легче и быстрее устанавливаются, могут получать последние обновления, а также более безопасны, с точки зрения доступа к операционной системе и важным файлам.

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

Преимущества Snap:

  • Создаются один раз и для всех поддерживающих платформ. Помимо всего прочего, Snap-пакеты содержат все зависимости и библиотеки, а это значит, что каких-либо проблем с запуском и использованием почти не будет.
  • Автоматически обновляются
  • Один Snap для всего: дистрибутив Linux, сервер или облако.
  • Доступность разных версий: вы в любой момент можете переключаться между стабильной, бета и даже ежедневной версиями любого Snap-приложения
  • Безопасность: Snap-приложения всегда запускаются в изолированной среде у которой нет доступа к остальной части вашей операционной системы.

Как установить Snap на Linux

snap-linux-support

Перед установкой Snap-пакетов необходимо установить Snapd — среду управления, которая обрабатывает установку и обновления Snap-приложений в вашем дистрибутиве Linux.

Включение поддержки Snap в Debian и Ubuntu

Если вы хотите использовать Snap на Linux Mint и других дистрибутивах, основанных на Debian или Ubuntu, то используйте эту команду:

sudo apt install snapd

Включение поддержки Snap в дистрибутивах Fedora:

sudo dnf install snapd

Включение поддержки Snap в Arch-based дистрибутивах

Spapd доступен в AUR.

Используйте команды ниже, чтобы установить его оттуда.

yaourt -S snapd sudo systemctl enable —now snapd.socket

Включение поддержка Snap в дистрибутивах OpenSuse

Официально Snapd не включен в OpenSuse, с помощью команд ниже вы сможете установить его на Tumbleweed.

sudo zypper addrepo http://download.opensuse.org/repositories/system:/snappy/openSUSE_Leap_42.2/ snappy sudo zypper install snapd

Как только Snapd будет успешно установлен из репозиториев сообщества, не забудьте включить его с помощью команды:

sudo systemctl enable —now snapd.socket

Основные команды Snap

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

Поиск

Рано или поздно вы захотите найти какое-нибудь приложение, а если быть точнее, Snap-версию этого приложения. Следующая команда поможет вам в этом:

sudo snap find libreoffice

snap1

Установка Snap-пакета

После того, как вы найдете нужную программу, вам необходимо будет ее установить. Для этого надо ввести эту команду:

sudo snap install (snap_name)

Список установленных Snap-приложений:

Далее вы сможете найти ее в этом списке:

snap list

Обновление Snap-пакета до последней версии

Приложения Snap обновляются автоматически, однако если это по каким-то причинам не произошло, вы можете использовать эту команду:

sudo snap refresh (snap_name)

Удаление Snap-приложения

Чтобы удалить приложение Snap используйте следующую команду:

sudo snap remove (snap_name)

Выводы

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

Источник: omgubuntu.ru

Ashampoo ® Snap 14

Boxshot  Screenshot

Беспроигрышный подход

Баланс между простотой и функциональностью — это непрекращающаяся борьба. В конце концов, что хорошего в программном обеспечении, которое очень просто в использовании, но едва ли предлагает самые обыденные функции? Новый редактор изображений Snap предлагает простое управление, сохраняя при этом мощный набор функций, который определяет нашу линейку продуктов Snap.

Оптимизированные рабочие процессы и избранное для быстрого доступа к функциям помогут вам достичь своих целей, не отвлекаясь гни на что, включая акробатику мыши. Даже если вы никогда раньше не использовали Snap, вы сможете продуктивно работать уже через несколько минут. Визуализируйте и излагайте свои мысли и идеи стильно и превратите тысячу слов в одну картинку!

Незаменимый компаньон вашего домашнего офиса

Ashampoo Snap — идеальный инструмент, который дополнит работу в вашем домашнем офисе снимками экрана и видео. Независимо от того, внутренний ли вы специалист или работаете на передовой линии, Snap сделает ваше общение быстрее, эффективнее и содержательнее. Предложения, обсуждения или объяснения выигрывают от более наглядного подхода.

Читайте также:
Что за приложение messenger на Андроид это программа

Этот подход «покажи, а не говори» существует не просто так! Снимайте все, что видите на экране, и доводите сообщение до конца с помощью аннотаций, клипартов и эффектов. Захват видео, редактирование и совместное использование также полностью поддерживаются. Ashampoo Snap — это инструмент, который выводит ваше общение на новый уровень, не требуя сложного обучения или требований к оборудованию!

Boxshot https://www.ashampoo.com/ru-ru/snap

Что нужно знать о Snap в Ubuntu 20.04

toadmin.ru

Ubuntu 20.04 Focal Fossa — фантастический выпуск, получивший широкую оценку. Однако решение изменить Центр программного обеспечения для установки приложений на основе моментальных снимков является спорным. Мы объясним, что это значит для вас.

Что такое Snap-пакет в Linux?

«Snap» относится как к команде snap, так и к файлу установки snap. Оснастка объединяет приложение и все его зависимые элементы в один сжатый файл. Зависимыми могут быть файлы библиотеки, веб-серверы или серверы баз данных или что-то еще, что приложение должно запускать и запускать.

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

Вы можете ожидать, что snap будет распакован, а файлы извлечены во время установки. Однако именно во время выполнения файл оснастки монтируется на блочное устройство петли . Это позволяет внутреннему Файловая система SquashFS для доступа.

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

Обратной стороной является то, что установочные файлы больше, чем традиционные. Менеджер пакетов Debian (DEB) файлы. Они также используют больше места на жестких дисках. С помощью снимков каждое приложение, которому нужен конкретный ресурс, устанавливает свою собственную копию. Это не самое эффективное использование места на жестком диске.

Хотя жесткие диски становятся все больше и дешевле, традиционалисты по-прежнему отказываются от экстравагантности того, что каждое приложение работает в своем собственном мини-контейнере. Запуск приложений тоже происходит медленнее.

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

Итак, в Focal Fossa Canonical заменила приложение Ubuntu Software версией, которая по умолчанию устанавливает снимки. Что это значит для тебя?

Центр программного обеспечения Ubuntu

Мы можем использовать команду df для вывода списка файловых систем SquashFS, установленных на вашем компьютере. Мы будем использовать параметр -t (тип), чтобы ограничить вывод файловыми системами нас интересуют:

df -t squashfs
snap list

Есть две привязки, относящиеся к рабочему столу GNOME, две связанные с функциональностью основных привязок, одна для тем GTK и одна для хранилища привязок. Конечно, приложение snap-store тоже несложно.

Вот в чем дело: если вы запустите команду snap-store в окне терминала, запускаемое приложение будет программным обеспечением Ubuntu.

Конечно, вы обычно запускаете приложение Ubuntu Software, щелкнув его значок. Мы запускаем его из командной строки, чтобы продемонстрировать, что под поверхностью теперь находится приложение snap-store:

snap-store

Приложение Ubuntu Software.

Приложение Ubuntu Software выглядит так, как и следовало ожидать. Вы можете искать все те же программы, что и раньше.

Давайте найдем и установим приложение «sqlitebrowser». Экран результатов показывает подробную информацию о приложении и снимок экрана. Выберите «Установить», чтобы установить программное обеспечение.

Страница установки приложения браузера SQLite в приложении Ubuntu Software.

Если бы вы не знали, вы бы не заподозрили изменений под капотом. Прокрутите вниз, и вы увидите новую информацию, относящуюся к привязке.

Информация о Snap, связанная с SQLITebrowser в приложении Ubuntu Software.

В списке «Подробности» представлена ​​следующая информация:

Канал: канал, из которого установка будет загружать приложение.
Версия: версия программного обеспечения.
Лицензия: Тип лицензии.
Разработчик: человек, создавший снап, или люди, написавшие приложение.
Источник: источник, из которого будет загружен снап (snapcraft.io — это магазин Snapcraft от Canonical).
Размер загрузки: размер файла оснастки.

Канал может быть одним из следующих:

Стабильный: значение по умолчанию, которое содержит наиболее стабильные и надежные пакеты.
Кандидат: этот канал менее стабилен, но очень близок к нему, поскольку содержит программное обеспечение уровня кандидата на выпуск.
Бета: качество этого канала находится на позднем этапе разработки, но его стабильность не гарантируется.
Edge: для начинающих тестировщиков и любознательных. Вы не должны использовать этот канал для чего-то важного.

После завершения установки мы можем снова проверить список установленных снимков:

snap list

список привязок в окне терминала.

Новая запись указана внизу. Запустим программу:

sqlitebrowser
Браузер БД для главного окна приложения SQLite.

В приложении все работает отлично, хотя интерфейс выглядит устаревшим. Скульптурные элементы интерфейса в псевдо-3D напомнят вам о GUI прошлых лет. Это не характерно для всех снимков, но в этом примере это бросается в глаза.

Установка из командной строки

При установке приложений из командной строки ничего не изменилось. У вас по-прежнему есть доступ к инструменту командной строки snap, поэтому вы можете устанавливать и удалять снимки в окне терминала. Команда установки apt-get и apt, оболочка apt-get, тоже все еще там.

Установим это же приложение из командной строки. Поскольку версия, которую мы установили выше, совсем несложная, они никак не повлияют друг на друга:

sudo apt-get install sqlitebrowser

sudo apt-get install sqlitebrowser в окне терминала.

Дождитесь завершения установки. Нажмите клавишу Super и введите sqlitebrowser. После того, как вы введете несколько символов, вы увидите две версии программы на своем компьютере.

Два браузера БД для значков SQLite в результатах поиска.

Подожги их обоих.

Две версии DB Browser для SQLite, работающие в GNOME.

Как видите, у нас одновременно установлены и работают две разные версии.

Версия на обратной стороне изображения — это та, которую мы установили из командной строки, а версия на передней панели — это та, что в оснастке:

Версия apt-get — 3.11.2.
Версия оснастки — 3.11.99.

Несмотря на внешность, версия для командной строки является более старой. Тем не менее, очевидно, что две версии сосуществуют и прекрасно работают вместе. Итак, привязки делают то, что должны, с ограждением различных версий одного и того же приложения.

Кроме того, установка приложений из командной строки с помощью apt или apt-get такая же, как и всегда, и на нее вообще не влияют привязки.

Что следует использовать?

Вас хоть сколько-нибудь заботит, какой тип приложения вы используете? Если нет, сделайте снимки.

Если что-либо из перечисленного ниже нарушает условия сделки (или несколько из них составляют одно), держитесь подальше от приложения Ubuntu Software и устанавливайте свои приложения традиционным способом:

Снимки загружаются медленнее. Это будет более заметно на старом оборудовании.
Снимки занимают больше места на жестком диске.
Снапы обновляются автоматически.
Снимки могут не соответствовать вашим установленным темам.
Снимки не всегда «официальные». Их часто создают добровольцы из лучших побуждений.

Если ваш компьютер достаточно современный, разница в скорости между запуском оснастки или обычного приложения не будет значительной. Самая большая потеря времени, которую мы заметили, была во время установки. Снимки загружались намного дольше. После загрузки файлов установка прошла достаточно быстро. Однако загрузка — это разовая задача, поэтому вам не придется сталкиваться с ней каждый день.

Даже если вы думаете, что будущее за снимками, и готовы принять их всем сердцем, вы не можете идти ва-банк. Некоторые приложения недоступны в форме оснастки. В таких случаях вам все равно придется устанавливать их из командной строки.

Очевидно, этим ходом Canonical прибивает свои цвета к мачте. Что касается разработчиков Ubuntu, снимки никуда не денутся. Как всегда, вы можете либо использовать их, либо игнорировать, либо создать гибридную систему, которая смешивает и сопоставляет привязки и традиционные установки на основе DEB.

Источник: toadmin.ru

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru