Conf файлы и статические файлы в пакете deb

Я использую dh_help для создания шаблона пакета и пытаюсь следовать руководствам по созданию пакетов для ubuntu и debian для создания двоичного пакета.

Как мне сказать debuild, какой файл является файлом conf и должен идти, например, в /etc/mypkg.conf? Я пытался поместить его в mypkg-0.1/etc/mypkg/fname.conf, но debuild игнорирует его. В руководстве по Debian говорится, что все файлы в etc / автоматически обрабатываются как файлы conf, но у меня это не работает (http://www.debian.org/doc/maint-guid...ml#s-conffiles). Я попытался поместить файл conf в mypkg-1.0/etc/mypkg.conf и в mypkg-1.0/debain/etc/mypkg.conf, но он не включен. Я также попытался перечислить файл в conffiles, но получаю сообщение об ошибке, которое не может быть найдено при сборке пакета.

Я также не понимаю, как включить статические файлы в пакет. Нужно ли использовать установочный файл, чтобы перечислить все файлы и папки? Я думал, что размещение всего с полным путем в папке mypkgs-0.1 должно работать так же, как и при использовании dpkg вручную.

Спасибо

2 ответа

Решение

Как сказал Вираптор, вы можете поместить команду установки для каждого файла в свой debian/rules установить файлы в каталог debian / pkgname.

Или вы можете использовать debian/install файл, чтобы просто перечислить все файлы (или только каталоги) и иметь команду dh_install в вашем debian/rules сделать это для вас.

Кажется, вы немного озадачены тем, как создаются пакеты и какие файлы включены. Это чрезвычайно обобщенно, но когда debian/rules скрипт компилирует программу используя стандарт ./configure && make && make install метод, он инструктирует make install установить файлы в debian/pkgname вместо /, Тогда он знает, что все под debian/pkgname это то, что должно быть в финале.deb. Если make install шаг не помещает все в правильное местоположение, тогда debian/rules Сценарий должен сделать это. Раньше кажется зовет install ... от debian/rules скопировать файлы в debian/pkgname каталог был распространен, но теперь с помощью debian/install Файл, кажется, предпочтительный метод.

Вам не нужно указывать версию пакета, если вы устанавливаете файлы через стандартный debhelper / debian/rules файл. Вместо этого на этапе установки выполните:

install -cm 644 fname.conf $(CURDIR)/debian/mypkg/etc/mypkg/fname.conf

И это должно быть включено правильно.

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