Что означают snap, snapd и Snappy?

Что означают snap, snapd и Snappy?

Я понимаю (в общих чертах), как работает упаковка Snap. Но что именно означают "snap", "snapd" и "Snappy"?

Похоже, что «snap» относится ко многим вещам (формат пакета, команда терминала...), «snapd» — это конкретный инструмент, а «Snappy» больше не используется [1] [2]?

[1]: Единственное официальное упоминание, которое мне удалось найти, — это название и URL-адрес этой страницы рабочего стола Ubuntu:https://www.ubuntu.com/desktop/snappy

[2]: Насколько я помню, Ubuntu Core раньше назывался Snappy Ubuntu Core, но теперь это уже не так:https://developer.ubuntu.com/core

решение1

  • Щелчок:Конкретный формат упаковки, определяемый как образ squashfs, содержащий meta/snap.yamlфайл, который следует заопределенный формат.
  • Магазин Snap:Центральное хранилище снимков, из которого их можно загрузить/установить.
  • Снапкрафт:Инструмент командной строки, используемый для создания снимков (похожий на pbuilder для снимков) и (опционально) размещения их в хранилище.
  • Снимок экрана:Демон, необходимый для запуска snap-файлов (загрузки их из магазина, монтирования их в нужное место, ограничения их, запуска приложений из них и т. д.). Snapd также включает команду snap, используемую для связи с snapd (чтобы пользователь мог запросить установку нового snap-файла и т. д.)

Вся эта система иногда называется "snappy". Сбивает с толку, но я все чаще вижу, как ее называют "snapcraft". В то время как snaps работает на обычной Ubuntu (и, конечно, на множестве других дистрибутивов Linux), Ubuntu Core — это операционная система, полностью основанная на snaps (никаких aptвообще). К сожалению, уже существовало "ubuntu core", которое было базовой rootfs Ubuntu, поэтому, чтобы отличать, его называли "snappy ubuntu core". Старое ядро ​​недавно переименовали вбаза убунту, поэтому в последнее время все реже можно встретить фразу «быстрое ядро ​​Ubuntu».

решение2

Snappy — это система развертывания программного обеспечения и управления пакетами, изначально разработанная и созданная Canonical для операционной системы телефона Ubuntu. Пакеты, называемые «snaps», и инструмент для их использования «snapd» работают в ряде дистрибутивов Linux и, следовательно, позволяют развертывать программное обеспечение upstream, не зависящее от дистрибутива. Система предназначена для работы на телефоне, в облаке, в Интернете вещей и на настольных компьютерах.

Пакеты приложений "Snap" программного обеспечения являются автономными и работают в ряде дистрибутивов Linux. Это отличается от традиционных подходов к управлению пакетами Linux, таких как APT или RPM, которые требуют специально адаптированных пакетов для каждого дистрибутива Linux при обновлении приложения и, следовательно, задерживают развертывание приложений от разработчиков к конечному пользователю их программного обеспечения. Сами Snap не зависят от какого-либо внешнего хранилища ("App Store"), могут быть получены из любого источника и, следовательно, могут использоваться для развертывания программного обеспечения вышестоящего уровня. Когда Snap развертываются в Ubuntu и других версиях Linux, магазин приложений Ubuntu используется как бэкэнд по умолчанию, но можно включить и другие магазины.

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

В июне 2016 года snapd был портирован на широкий спектр дистрибутивов Linux, чтобы можно было использовать snap-пакеты в любом дистрибутиве Linux, а не только в Ubuntu Core с функциями all-snap. snapd также доступен или находится в разработке для Arch Linux, CentOS, Debian, Fedora, Gentoo Linux, OpenWrt, openSUSE и Red Hat Enterprise Linux. Каждый дистрибутив способен интерпретировать метаданные snap-пакета для реализации безопасности или других ожиданий snap-пакета в специфической для дистрибутива манере.

Источник:https://en.wikipedia.org/wiki/Snappy_(менеджер_пакетов)

Связанный контент