Criando o arquivo deb no Debian usando o código fonte do github e debuild tools

0

Eu quero compilar o nginx (com bibliotecas customizadas) usando o código fonte atualizado do GitHub. Mas se eu baixar o código do GitHub, obviamente, não há pasta "debian" e arquivos internos.

Então, quando eu uso o comando debuild: ou seja, debuid clean, vejo o erro:

debuild: fatal error at line 629:
cannot find readable debian/changelog anywhere!
Are you in the source code tree?

É possível gerar automaticamente todos os arquivos na pasta debian? Ou eu tenho que fazer isso manualmente?

    
por Vyacheslav 27.05.2015 / 12:17

1 resposta

1

Um poderia criar um sistema para autogeração de pacotes simples, mas não vi nenhum. Todos os pacotes Debian que eu conheço têm arquivos rules construídos à mão. Além disso, a maioria dos arquivos no subdiretório debian tem a mesma aparência (com diferenças de script) entre os pacotes.

Por que vale a pena, eu construí 48 pacotes diferentes para o meu próprio trabalho e forneço os scripts correspondentes nos tarballs de origem , mas em um subdiretório diferente para evitar conflito com os empacotadores do Debian. O Debian não distribui seus scripts de construção dentro dos tarballs de origem, porque sua política é distribuir patches contra uma fonte de upstream do pristine (não modificado). Provavelmente, as únicas fontes em que você veria as duas combinadas são de desenvolvedores que criam seus próprios pacotes.

Você pode adaptar os scripts de um determinado pacote Debian (embora alguns tenham peculiaridades estranhas). Para começar, você precisa encontrar os scripts de pacote. Eu costumo ir para a página de relatórios de bugs

https://www.debian.org/Bugs/

e (nem todos os pacotes são nomeados consistentemente), procure bugs nesse pacote, por exemplo, nginx insira a descrição do link aqui . Na essa página, é um ponteiro para a página do pacote . Dentro disso, há links que apontam para o pacote de versões diferentes, por exemplo, jessie (estável) , e seguindo esse link leva você a uma página na qual existem links (na extrema direita) para

O sistema de compilação do Debian assume que essas partes estão disponíveis separadamente; Para minhas próprias compilações Eu escrevi um script que assume que os scripts my estão no local diferente mencionado. Para qualquer solução, você pode ter uma leitura adicional para fazer.

    
por 27.05.2015 / 12:33