Construindo com sbuild e backports

4

Estamos construindo nosso pacote para o Debian Jessie com o sbuild, e até agora ele está funcionando muito bem.

Há apenas um detalhe: gostaríamos de ter uma das dependências de compilação do arquivo de backports do Jessie.

Não consigo descobrir como configurar o chroot para extrair esse pacote (e somente esse pacote) dos backports, embora.

Eu sei como configurar o apt sources.list e fixar preferências em um sistema Debian, mas não consegui encontrar nada relacionado a adicionar repositórios e fixar pacotes deles nas páginas de manual sbuild(1) e sbuild.conf(5) .

    
por Mathieu Bridon 24.07.2016 / 21:03

1 resposta

2

Eu encontrei um jeito, graças ao @bigon no IRC.

No tempo de execução, agora passo as seguintes opções ao comando sbuild , além das que eu já tinha:

$ sbuild ... --build-dep-resolver=aptitude --extra-repository="deb http://ftp.fr.debian.org/debian jessie-backports main" ...

O --extra-repository adicionará os backports do Jessie como um arquivo válido para usar no chroot.

Mas, infelizmente, isso não é suficiente porque o arquivo Release do arquivo backports tem "NotAutomatic: yes" . Como resultado, embora os backports contenham a dependência de que preciso (e declarado corretamente em debian/control ), ele não é tirado de lá automaticamente.

É aí que o --build-dep-resolver=aptitude entra em ação: aptitude também tropeça na dependência ausente como apt , mas depois a encontra no arquivo de backports e decide automaticamente levá-la (e somente ela) de lá.

É um pouco "automagic" para o meu gosto, e eu preferiria uma maneira de configurar alguns ajustes explícitos, mas até agora é a única maneira que encontrei.

Obrigado @bigon!

    
por 25.07.2016 / 13:24