Como posso ignorar arquivos / diretórios ao criar pacotes debian?

5

Eu fiz alguns pacotes debian para facilitar a implementação de configurações em novos servidores e quero colocá-los no controle de origem do SVN. O problema é que o SVN cria um diretório .svn para cada subdiretório na árvore de código-fonte, por isso não posso criar pacotes na árvore de código-fonte 'dpkg-deb --build' porque os diretórios '.svn' serão incluídos no diretório resultante. pacote. Até agora, quando eu quero construir um pacote, eu tenho que exportar o diretório para um lugar diferente e construir a partir daí.

Existe uma maneira rápida de fazer com que o 'dpkg-deb --build' ignore os diretórios .svn?

    
por Thiago de Arruda 14.03.2011 / 13:23

3 respostas

5

Meu entendimento é que você não deveria estar construindo um pacote debian com dpkg-deb --build em primeiro lugar. Se você usar dpkg-buildpackage , você não precisará se preocupar com a inclusão dos diretórios .svn em seu pacote.

Veja: link

Pode haver um método melhor, mas aqui está um que eu não testei completamente:

Use dh_make para criar um pacote debian skeleton. Coloque seus arquivos no diretório acima do diretório debian .

edite o arquivo dirs resultante e coloque os caminhos nos quais você vai mover os arquivos, por exemplo:

/opt/mypackage
/usr/local/bin

Em seguida, no arquivo rules , remova o código $ (MAKE) e defina sua seção install: build para algo assim:

install: build
  dh_testdir
  dh_testroot
  dh_clean -k 
  dh_installdirs

  # Copy files into staging area
  rsync --exclude .svn -a mypackage/ debian/tmp/opt/mypackage/
    
por 16.03.2011 / 05:32
7

Para excluir arquivos a serem colocados no pacote debian de origem, você deve criar o arquivo:

debian/source/options

e digite as opções que você quer passar para o dpkg-source, no seu caso:

tar-ignore = ".svn/*"

Veja o homem para o dpkg-source.

    
por 07.02.2014 / 11:31
4

Vale a pena documentar aqui que, se você usar dpkg-buildpackage , ele tem uma opção -i para ignorar as coisas. Ou seja, use -i.svn para ignorar o diretório .svn.

    
por 28.03.2012 / 14:00