Estou experimentando a criação de um pacote .deb e não tenho certeza sobre a estrutura de arquivos de um pacote. O diretório que contém control
, changelog
, rules
, etc deve ser nomeado DEBIAN
ou debian
?
Estou usando dpkg-deb
para empacotá-lo, e parece exigir DEBIAN
, e estou tentando usar o Lintian para verificá-lo, e ele não está reconhecendo os arquivos changelog
ou . copyright
Lintian lança os erros debian-changelog-file-missing
e no-copyright-file
mas depois avisa unknown-control-file changelog
e unknown-control-file copyright
. Olhando para esta página , sugere o uso debian
e renomeio o diretório para isso, mas isso causa dpkg-deb
uma falha. Lendo o Manual de Políticas do Debian , ele geralmente usa debian
em exemplos, mas ocasionalmente usa DEBIAN
, o que me faz pensar se em certas circunstâncias ambos podem ser necessários. Qual é a maneira certa de fazer isso?
Ao criar o pacote, você tem um
debian
diretório, que contém os dados necessários para fazer o pacote (ocontrol
arquivo, orules
, ochangelog
, etc.). nãodpkg-deb
é a maneira usual de fazer um pacote - apenas oferece uma maneira rápida de montar um. Você costuma usar em vez disso.dpkg-buildpackage
Os pacotes fonte (ou seja, a árvore fonte ainda não compilada) usam um
debian
diretório em minúsculas. Por exemplo, se você estivesse usandodpkg-buildpackage
para compilar um programa em C e gerar o binário .deb, você teria uma árvore de fontes como esta:As maiúsculas
DEBIAN
são aparentemente encontradas apenas em pacotes binários (ou seja, os próprios arquivos .deb compilados), dentro de seu arquivo 'control.tar'.No entanto, de acordo com a documentação do dpkg, este diretório 'DEBIAN' é um resquício histórico de formatos de pacotes dpkg muito antigos (como em pré-2000; veja
man deb-old
eman deb
). Todos os novos pacotes .deb colocam os arquivos de controle diretamente no nível superior do arquivo 'control.tar':