Construindo arquivos deb para Debian e Ubuntu

Construindo arquivos deb para Debian e Ubuntu

Embora as ferramentas sejam as mesmas, as seções e os nomes das distribuições são notavelmente diferentes entre o Ubuntu e o Debian (e presumivelmente outras distros baseadas no Debian).

Por exemplo, um arquivo debian/control de uma biblioteca Lua para Debian pode usar

 Section: contrib/libdevel

enquanto o Ubuntu usaria

 Section: universe/interpreters

Qual é a melhor maneira de criar arquivos deb para cada um quando "universo" não existe no Debian e "contrib" não existe no Ubuntu, visto que todas as ferramentas parecem agir em um único diretório de origem/configuração: debian? Como conciliar isso?

Nota: esta questão também se aplica às entradas do changelog.

Responder1

Normalmente, quando preciso fazer isso, crio diretórios debian/* separados para cada sistema que estou suportando. Você pode armazená-los de várias maneiras diferentes: talvez um repositório de código-fonte dedicado chamado "empacotamento" que contém os diretórios de cada sistema. Você pode então usar um sistema de construção ou CI (como Jenkins, Travis CI ou similar) para baixar o código-fonte do seu aplicativo, baixar o código do pacote para o sistema para o qual você está construindo o pacote e iniciar o processo de construção.

Uma ferramenta que você pode querer dar uma olhada para ajudar a tornar isso mais fácil éconstrutoro que facilita a construção de um pacote para muitas versões diferentes do Debian ou Ubuntu, fazendo uso dechroots.

Eu também escrevi um passeio porcomo usar o pbuilderque você pode achar útil.

informação relacionada