DEBIAN или debian в пакете .deb?

Я экспериментирую с созданием .deb-пакета и не уверен в файловой структуре пакета. Должен ли каталог, содержащий control, changelog, rules и т.д. называться DEBIAN или debian?

Я использую dpkg-деб для упаковки, и кажется, что для этого требуется DEBIAN, и я пытаюсь использовать Lintian, чтобы проверить его, и он не распознает файлы changelog или copyright. Lintian выбрасывает ошибки debian-changelog-файла и no-copyright-файла , но позже предупреждает unknown control-file changelog и unknown control-file copyright. Взглянув на эту страницу , я предлагаю использовать debian, и переименовываю каталог в этот, но это приводит к ошибке dpkg-deb. Читая Debian Policy Manual, обычно в примерах используется debian, но иногда используется DEBIAN, что заставляет меня задуматься, может ли при определённых обстоятельствах понадобиться и то, и другое. Как правильно это сделать?

4
задан 28 February 2021 в 17:23

2 ответа

121 --- 909324-

При создании пакета у вас есть каталог Debian , который содержит данные, необходимые для создания пакета (элемент управления Файл, правила , изменяются и т. Д.). DPKG-DEB не обычный способ сделать пакет - он просто предлагает быстрый способ собрать один. Обычно вы используете DPKG-BuildPackage .

5
ответ дан 18 March 2021 в 23:30

Источник Пакеты (I.e. Неподобиенное исходное дерево) Используйте строчные DEBIAN каталог. Например, если вы использовали DPKG-BuildPackage для компиляции программы C и генерировать двоичный .DEB, у вас будет такое дерево исходного дерева:

foo-1.0/
 ├─debian/
 │  ├─changelog
 │  └─control
 ├─main.c
 ├─main.h
 └─Makefile

в верхнем регистре Debian По-видимому, нашел только в бинарах пакетов (то есть самих файлов .deb), в пределах их архива «Control.tar».

Однако, согласно документации DPKG, этот каталог «Debian» является историческим оставшимся из очень форматов пакета DPKG (как в до 2000-х; см. Человек DEB-ALT и MAN DEB ). Все новые пакеты .DEB вместо этого помещают файлы управления напрямую на верхнем уровне архива «Control.Tar»:

$ tar -tf control.tar
./changelog
./control
./postinst
1
ответ дан 18 March 2021 в 23:30

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

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