Что такое Snapcraft?

Я пробовал мгновенное ядро Ubuntu на устройстве Raspberry Pi 2, и я услышал, что могу использовать Snapcraft, чтобы сделать разработку на нем. Теперь я слышу, что снимки доступны на рабочем столе и сервере для Ubuntu 16.04 и других дистрибутивов.

Что такое Snapcraft и как я могу использовать его?

16
задан 21 June 2016 в 20:17

1 ответ

Snapcraft набор инструментов связан под эти snapcraft, команда к легко создает (ремесло) пакеты для нескольких распределений Linux . Эти .snap пакеты обычно содержат отдельные приложения, обеспечивают безопасную изоляцию и устанавливаемые или из Магазина Ubuntu Software или вручную через эти snap install <snap-name>.snap команда.

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

Snapcraft:

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

3-минутный тур Snapcraft

Устанавливает Snapcraft на Ubuntu

, Вам будет нужна Ubuntu 16.04 LTS, чтобы использовать Snapcraft. Откройте терминал с Ctrl + Высокий звук + t и просто установите Snapcraft с этой командой:

sudo apt install snapcraft
sudo apt install build-essential  # Optional, but useful for different builds

, Если Вы используете другой дистрибутив, , проверяют альтернативные инсталляционные инструкции>

тест-драйв Snapcraft

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

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

sudo apt install git
git clone https://github.com/ubuntu-core/snapcraft.git
cd snapcraft/demos/gopaste

Уведомление snapcraft.yaml файл в том справочнике, который определяет обслуживание и части, требуемые собрать финал .snap. Вы можете произвольно исследовать его с редактором текста.

Теперь бегут эти snapcraft команда на терминале. Это заставит все подкоманды snapcraft бежать в последовательности, чтобы построить части и поместить результаты в финал .snap пакет. Во время развития Вы обычно управляли бы шагами отдельно, пока Вы не уверены, что целое строит и работы собрания.

$ snapcraft 
Pulling gopaste 
env GOPATH=/tmp/snapcraft/examples/gopaste/parts/gopaste/build go get -t -d github.com/wisnij/gopaste/gopasted
Building gopaste 
env GOPATH=/tmp/snapcraft/examples/gopaste/parts/gopaste/build go build github.com/wisnij/gopaste/gopasted
env GOPATH=/tmp/snapcraft/examples/gopaste/parts/gopaste/build go install github.com/wisnij/gopaste/gopasted
env GOPATH=/tmp/snapcraft/examples/gopaste/parts/gopaste/build cp -a /tmp/snapcraft/examples/gopaste/parts/gopaste/build/bin /tmp/snapcraft/examples/gopaste/parts/gopaste/install
Staging gopaste 
Snapping gopaste 
Generated 'gopaste_1.0_amd64.snap' snap

На продукции команды Вы видите шаги snapcraft пробеги для Вас:

  1. Напряжение : это вынимает кодекс из необходимой части gopaste от отдаленного Github repo
  2. , Строят : это строит gopaste в местном масштабе
  3. Стадия : после строения части помещены в единственное дерево каталогов, «район сосредоточения войск»
  4. Хватка : финал .snap пакет создан из собранных частей в районе сосредоточения войск

Примечания:

  • Вы найдете заключительный поспешный файл как gopaste_1.0_amd64.snap (уведомление в моем случае, я построил его на своем amd64 рабочем столе, например, Распбэрри Пи, которого 2 пакета будут иметь _armhf суффикс архитектуры).
  • Вы можете также управлять каждой командой индивидуально: snapcraft pull, snapcraft build, snapcraft stage или snapcraft snap
  • Использование snapcraft -h для быстрого обзора всех доступных команд.

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

27
ответ дан 23 November 2019 в 02:32

Другие вопросы по тегам:

Похожие вопросы: