Система управления пакетами Ubuntu, которой она обязана своему старшему брату Debian, максимально упрощает поддержание вашей системы в актуальном состоянии. Будь то с помощью программ с графическим интерфейсом или с помощью «apt-get», меня это постоянно впечатляет. Но все же бывают случаи, когда вы не можете получить определенную программу в формате DEB или, возможно, вы хотите распространять свое собственное программное обеспечение для других пользователей Debian и Ubuntu. Собрать DEB-пакет вручную — непростая задача… к счастью, Debreate позволяет легко упаковать программное обеспечение для облегчения установки.
Установка и запуск Debreate
Первое, что нам нужно сделать, это установить Debreate. Вы можете скачать пакет здесь, а затем установить его с помощью любого менеджера пакетов или с помощью следующей команды:
sudo dpkg -i debreate_0.8-dev9_all.deb
Затем мы можем запустить Debreate из KRunner, выполнив «d ContentsУстановка и запуск Debreate
разделе «Разработка» меню приложения.
Запустите программу, и вы увидите следующий экран (при первом запуске), как показано ниже слева, за которым следует информационный экран внизу справа.
Управляющая информация
Нажав на стрелку в верхнем углу, мы попадаем на экран под названием «Управление». Здесь мы заполним данные, которые в конечном итоге окажутся в части “control.tar.gz”пакета. Вам необходимо заполнить следующие поля, показанные ниже:
- Пакет. Имя пакета должно состоять только из строчных букв, цифр, «+», «-» или «». символы.
- Версия : номер версии. Для этой начальной версии я использую 0.0.1.
- Сопровождающий : имя человека, упаковывающего это приложение (это я).
- Электронная почта : Его/ее (мой) адрес электронной почты.
- Архитектура : если это двоичный пакет (т. е. не пакет исходного кода, который будет скомпилирован), вероятно, это будет один из: “i386”( для 32-битных процессоров, таких как процессоры Pentium или Core), “amd64”(64-битные процессоры, такие как AMD Phenom или более но
Управляющая информация
“все ”, что означает, что он не зависит от процессора. Поскольку это сценарий оболочки, который будет работать в любой версии Ubuntu, я выбираю «все». - Раздел : это категория, в которой пакет будет находиться в более крупном репозитории. Поскольку наш скрипт позволяет легко выводить документы из текстовой разметки, я выбрал раздел «Текст» (сам Pandoc также находится в разделе «Текст»).
- Приоритет : согласно Часто задаваемым вопросам по Debian/GNU, это должно быть «Необязательно» (и опять же, сам Pandoc также является «Необязательным»).
- Краткое описание. Это описание пакета будет отображаться, например, в виде списка в менеджере программного обеспечения, таком как Центр программного обеспечения или Muon.
- Подробное описание : это более подробное описание будет отображаться в подробном виде, например, когда пакет выбран в диспетчере программного обеспечения или с помощью
apt-cache show [package]"
. - Сам скрипт… Поскольку эта программа представляет собой сценарий оболочки, она автономна. Согласно FHS, мне нужно будет поместить это в «/usr/bin».
- Далее я добавлю краткий файл README с инструкциями по использованию. Это будет в папке «/usr/share/doc».
- Наконец, я собираюсь добавить значок. Я помещу это в «/usr/share/icons».
Нажмите стрелку вправо в правом верхнем углу, чтобы перейти к следующему экрану.
Зависимости
Следующее, что нам нужно подготовить, — это список любых других пакетов, которые будет использовать эта программа. Очевидно, нам понадобится установить «Pandoc», поскольку сценарий вызывает эту программу, и поскольку мы включаем графический интерфейс, нам нужно убедиться, что «Zenity» также установлен. Нам нужно будет ввести каждый из них на экране «Зависимости» (мы также могли бы указать номер версии, но для этого сценария достаточно любой версии Pandoc и Zenity, имеющейся в дистрибутиве), и нажать кнопку «Добавить», чтобы добавить его. в список.
Теперь давайте упакуем файлы!
Файлы
Первое, что нужно сделать, — это собрать все файлы, которые вы собираетесь включить, и расположить их в структуре папок, описанной выше. Для этой статьи я собираюсь собрать скрипт pandoc-pub.sh, созданный мной в предыдущая статья . Экран «Файлы» позволяет выбирать файлы по одному и указывать, в какую папку их следует установить, как показано ниже. У меня есть три файла, которые я хотел бы включить:
Скрипты, журнал изменений, авторские права
На следующем экране вы сможете указать сценарии «preinst», «postinst», «prerm» и/или «postrm», описанные в предыдущей статье об основах DEB. Последуют еще три: журнал изменений (который позволяет описывать изменения со времени последней версии), авторские права (заявление о том, как можно использовать программное обеспечение) и средство запуска меню (которое автоматизирует создание элемента в главном меню рабочего стола).. Для целей этого тестового пакета я не использую ничего из этого.
Постройте!
На последнем экране вы увидите несколько «дополнительных опций», которые мы можем спокойно игнорировать… приступим к сборке. Нажмите большую зеленую кнопку!
В моем пакете были некоторые предупреждения (которые, по словам разработчиков, отличаются от ошибок, которые, так сказать, являются «остановками»), например, отсутствие заявления об авторских правах, отсутствие справочной страницы и т. д., поскольку этот пакет предназначен только для моего собственного использования., хорошо. Но оно построено! Вы можете установить следующую стандартную команду «dpkg»:
sudo dpkg -i pandoc-pub_0.0.1_all.deb
Но это не получается… почему? Потому что он зависит от Zenity и Pandoc (которые я только что удалил, чтобы протестировать эту функцию). Двойной щелчок по пакету в файловом менеджере позволит GDebi выполнить за нас установку зависимостей, как показано ниже:
После установки я теперь могу распространять его среди своих друзей (которые, в общем, гораздо лучшие программисты, чем я). Так что найдите несколько наиболее полезных сценариев или программ и получите упаковку. Распространение полезного программного обеспечения среди других — вот что делает сообщество FOSS таким замечательным!