Введение в создание пакетов для дистрибутива GNU Debian Linux




Сборка с использованием debhelper


В debian существует достаточное количество инструментов, помогающих автоматизировать процесс дебианизации. Рассмотрим debhelper(1), как наиболее часто встречающийся и рекомендованный в developers-reference. Пакет debhelper представляет собой набор скриптов dh_*, облегчающие процесс конфигурирования и компиляции программы, инсталяции ее и сборки в результирующий deb. Для работы с debhelper рекомендую воспользоваться программой dh_make из пакета dh-make.

  • приводим название каталога исходников к виду, необходимому для dh_make(8): <название пакета>-<версия>;
  • в корне каталога исходников зовем dh_make(8). Например,

    dh_make -c gpl -e mycool@e-mail.com

  • идем в debian/ и правим необходимые файлы, удаляем ненужные
  • Подробнее о последнем пункте. Рассмотрим ситуацию генерации single binary (есть еще варианты multiple binary, library и kernel module) dh_make сгенерирует rules таким образом, что программа будет устанавливаться в debian/tmp (либо в debian/tmp/package в случае multi-binary пакета). Рассмотрим файлы:

    changelog

    - Готовый файл с единственной записью ``Initial release''

    conffiles.ex

    - файл состоит из комментария о его использовании. К слову, в conffiles коментарии # не поддерживаются, поэтому их нужно удалить4.

    control

    - Этот шаблон необходимо обязательно заполнить в соответствии с указанными выше правилами оформления файла control. Кроме того, debhelper поддерживает набор макросов. Например, в Depends: можно записать

    ${shlibs:Depends}

    вместо списка библиотек;

    ${misc:Depends}

    макрос раскрывается многими программами debhelper. Например, если Вы используете dh_installdebconf, то Вам необходим debconf, для dh_installxfonts понадобятся xutils. Эти зависимости и будут автоматически сгенерированы;

    ${perl:Depends}

    генерируется dh_perl и содержит список используемых модулей perl.

    copyright

    - в этом файле кроме лиценции указывается информация об upstream, то есть производителе программы (где взяли, кто написал).

    cron.d.ex

    - файл в формате crontab(5). Будет установлен скриптом dh_installcron в $(prefix)/etc/cron.d/<package>




    Содержание  Назад  Вперед