Конвенція про іменування пакунків 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.


Розділ політики стосується лише файлу змін. Просто перейменуйте файл debі відрегулюйте .changesфайл
Ульріх Дангел

означає, що немає файлів для файлів .deb?
Preexo

1
@prexo є, але формального визначення немає. І якщо ви хочете скорегувати ім'я файлу, просто перейменуйте деб і відрегулюйте файл змін. Якщо ви не зробите завантаження, достатньо буде просто перейменувати файл
дебюту

Дякую! так, я не завантажую так проблему вирішується;) зробіть відповідь з цим, і, можливо, про те, наскільки суворі конвенції, і я прийму це як відповідь :)
Preexo

Відповіді:


11

Я розумію, що ви хочете розподілити / розгорнути пакет у декілька дистрибутивів на базі Debian.

У світі Debian / Ubuntu ви не повинні надавати окремий .debфайл для завантаження та встановлення. Натомість вам слід надати сховище APT. (у світі Fedora / Red Hat / CentOS я би радив подібну пораду щодо створення сховища YUM). Не тільки вирішується питання про те, як назвати файл deb, але сховище є ефективним способом надання нової версії вашого пакету, включаючи виправлення помилок та оновлення безпеки. Створення сховища APT виходить за межі цієї сторінки / питання, просто шукайте "як налаштувати влучне сховище"

Тепер повернемось до вашого питання: "Конвенція про іменування пакету":

Коли ви генеруєте пакунок за допомогою dpkg-buildpackage, пакет буде названий стандартним способом. Цитуючи сторінку dpkg-імені :

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

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у версії .

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.