Соглашение об именовании пакетов Debian?

12

Это все очень запутанно. Есть разные примеры, например:

<package-name>_<epoch>:<upstream-version>-<debian.version>-<architecture>.deb

источник: имена файлов пакетов Debian

Есть раздел 5.6.12 версия или Руководство по политике Debian также связан с фактическим пакетом файла тоже? Или только к полям в контрольном файле?

В этой вики-теме о форматах репозитория ничего не говорится о соглашениях, как и в руководстве по передовым методам для разработчиков .

Может быть, я просто ищу не ту вещь, пожалуйста, помогите мне и скажите, где найти соглашения об именах пакетов Debian. Мне особенно любопытно, где поставить кодовое имя Debian. Я хочу сделать что-то вроде этого:

<package-name>_<version>.<revision>-<debiancodename>_<architecture>.deb

где <debiancodename>просто squeezeили wheezy.

Preexo
источник
Раздел политики относится только к файлу изменений. Просто переименуйте debи настройте .changesфайл
Ульрих Дангел
означает, что нет никаких соглашений об именах файлов .deb?
Preexo
1
@prexo есть, но формального определения нет. И если вы хотите изменить имя файла, просто переименуйте deb и настройте файл изменений. Если вы не выполняете загрузку, будет достаточно просто переименовать файл deb
Ульрих Дангел
Спасибо! да, я не загружаю, так что проблема вроде как решена;) ответь на этот вопрос и, возможно, о том, насколько строгие соглашения, и я приму это как ответ :)
Preexo

Ответы:

11

Насколько я понимаю, вы хотите распространять / развертывать пакет в нескольких дистрибутивах на основе Debian.

В мире Debian / Ubuntu вы не должны предоставлять отдельный .debфайл для загрузки и установки. Вместо этого вы должны предоставить хранилище APT. (В мире Fedora / Red Hat / CentOS я бы дал аналогичный совет по предоставлению репозитория YUM). Мало того, что это решает вопрос о том, как назвать файл deb, но хранилище - это эффективный способ предоставить более новую версию вашего пакета, включая исправления ошибок и обновления безопасности. Создание репозитория APT выходит за рамки этой страницы / вопроса, просто найдите «как настроить репозиторий apt»

Теперь вернемся к вашему вопросу: «соглашение об именах пакетов»:

Когда вы генерируете пакет с помощью dpkg-buildpackage, пакет будет назван стандартным образом. Цитирование страницы руководства dpkg-name :

Полное имя пакета состоит из package_version_architecture.package-type, как указано в контрольном файле пакета.

package_version_architecture.package-type

Политика Debian - это правильное место, чтобы узнать синтаксис управляющих файлов: имя (как для исходного, так и для двоичного пакетов), версия , архитектура , тип пакета .

Там нет положения, чтобы указать распределение, потому что это не так, как все идет.

Если вам нужно собрать ту же версию пакета для нескольких дистрибутивов , вы измените versionполе (в debian/changelogи debian/controlфайле). Некоторые люди используют имя дистрибутива в поле версии. например openssl :

0.9.8o-4squeeze14 
1.0.1e-2+deb7u14
1.0.1k-1 

Если это то , что вы хотите сделать, убедитесь , что читать на Debian политику о debian_revisionв версии .

Франклин Пиат
источник