Convenção de nomenclatura do pacote Debian?

8

É tudo muito confuso. Existem exemplos diferentes por aí, por exemplo:

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

fonte: nomes de arquivos do pacote debian

A seção 5.6.12 ou o Manual de Políticas Debian também estão relacionados nome do arquivo real do pacote também? Ou apenas para os campos no arquivo de controle?

Neste tópico do wiki sobre formatos de repositório , ele não diz nada sobre convenções, mesmo na guia de práticas recomendadas para desenvolvedores .

Talvez eu esteja apenas procurando a coisa errada, por favor me ajude e me diga onde encontrar as convenções de nome do pacote Debian. Estou especialmente curioso para onde colocar o codinome do Debian. Eu quero fazer algo assim:

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

em que <debiancodename> é apenas squeeze ou wheezy .

    
por Preexo 23.10.2013 / 19:07

1 resposta

8

Meu entendimento é que você deseja distribuir / implantar um pacote em múltiplas distribuições baseadas no Debian.

No mundo Debian / Ubuntu, você não deve fornecer o arquivo .deb individual para baixar e instalar. Em vez disso, você deve fornecer um repositório APT. (no mundo do Fedora / Red Hat / CentOS eu faria um conselho similar para fornecer um repositório YUM). Não apenas resolve a questão de como nomear o arquivo deb, mas o repositório é uma maneira eficaz de fornecer uma versão mais recente do seu pacote, incluindo correção de bugs e atualizações de segurança. Criar um repositório APT está além do propósito desta página / questão, basta procurar por "como configurar um repositório apt"

Agora, voltemos à sua pergunta: "convenção de nomenclatura de pacotes":

Quando você gerar o pacote com dpkg-buildpackage , o pacote será nomeado de maneira padrão. Citando dpkg-name manpage:

A full package name consists of package_version_architecture.package-type as specified in the control file of the package.

package_version_architecture.package-type

A Política Debian é o lugar certo para saber a sintaxe dos arquivos de controle: name (para pacotes Source e binários), versão , arquitetura , tipo de pacote .

Não há provisão para declarar a distribuição, porque não é assim que acontece.

Se você precisar compilar a mesma versão de um pacote para várias distribuições , alterará o campo version (no arquivo debian/changelog e debian/control ). Algumas pessoas usam o nome da distribuição no campo de versão. por exemplo, openssl :

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

Se é isso que você quer fazer, certifique-se de ler debian-policy sobre debian_revision em versão .

    
por 18.03.2015 / 08:47