Konwencja nazewnictwa pakietów Debiana?

12

To wszystko jest bardzo mylące. Istnieją różne przykłady, na przykład:

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

źródło: nazwy plików pakietów debian

Czy sekcja 5.6.12 Wersja lub Podręcznik zasad Debiana jest również powiązany z rzeczywistą nazwą pliku pakietu? Czy tylko do pól w pliku sterującym?

W tym temacie wiki dotyczącym formatów repozytoriów tak naprawdę nic nie mówi o konwencjach, podobnie jak w przewodniku najlepszych praktyk dla programistów .

Może po prostu szukam niewłaściwej rzeczy, pomóż mi i powiedz, gdzie znaleźć konwencje nazw pakietów Debiana. Jestem szczególnie ciekawy, gdzie umieścić kryptonim Debiana. Chcę zrobić coś takiego:

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

gdzie <debiancodename>jest tylko squeezelub wheezy.

Preexo
źródło
Sekcja zasad odnosi się tylko do pliku zmian. Wystarczy zmienić nazwę debi dostosować .changesplik
Ulrich Dangel
oznacza, że ​​nie ma konwencji dotyczących nazw plików dla plików .deb?
Preexo,
1
@prexo są, ale nie ma formalnej definicji. A jeśli chcesz zmienić nazwę pliku, po prostu zmień nazwę deb i dostosuj plik zmian. Jeśli nie prześlesz pliku, wystarczy zmienić nazwę pliku deb
Ulrich Dangel
dzięki! tak, nie przesyłam, więc problem został w pewnym
sensie

Odpowiedzi:

11

Rozumiem, że chcesz rozpowszechniać / wdrażać pakiet w wielu dystrybucjach opartych na Debianie.

W świecie Debian / Ubuntu nie należy udostępniać pojedynczego .debpliku do pobrania i zainstalowania. Zamiast tego powinieneś udostępnić repozytorium APT. (w świecie Fedora / Red Hat / CentOS udzieliłbym podobnej porady, aby zapewnić repozytorium YUM). Nie tylko rozwiązuje problem nazewnictwa pliku deb, ale repozytorium jest skutecznym sposobem na dostarczenie nowszej wersji pakietu, w tym naprawy błędów i aktualizacji bezpieczeństwa. Tworzenie repozytorium APT wykracza poza cel tej strony / pytania, po prostu wyszukaj „jak skonfigurować apt repozytorium”

Wróćmy do pytania: „konwencja nazewnictwa pakietów”:

Podczas generowania pakietu za dpkg-buildpackagepomocą pakietu zostanie on nazwany w standardowy sposób. Cytując stronę dpkg-name :

Pełna nazwa pakietu składa się z typu pakiet_wersja_architektura.typ-pakietu, jak określono w pliku kontrolnym pakietu.

package_version_architecture.package-type

Polityka Debiana jest właściwym miejscem do poznania składni plików kontrolnych: nazwa (zarówno dla pakietu źródłowego, jak i binarnego), wersja , architektura , typ pakietu .

Nie ma przepisu określającego dystrybucję, ponieważ tak nie jest.

Jeśli musisz skompilować tę samą wersję pakietu dla wielu dystrybucji , zmienisz versionpole (w pliku debian/changelogi debian/control). Niektóre osoby używają nazwy dystrybucji w polu wersji. na przykład openssl :

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

Jeśli to właśnie chcesz zrobić, przeczytaj zasady debian debian_revisionw wersji .

Franklin Piat
źródło