Instale arquivos não executáveis com dh_install

2

Eu tenho um pacote debian que tem o seguinte arquivo install :

src/an_executable_python_script usr/bin
src/web/* usr/share/packagename

dentro da pasta src/web estão alguns arquivos html e css. Parece que, com o nível de compatibilidade 7, tudo funcionou bem. Mas com o nível de compatibilidade 9, recebo a seguinte mensagem de erro:

/home/user/package/debian/packagename.install: 2: 
/home/user/package/debian/packagename.install: src/web/index.html: Permission denied

A página man do dh_install é clara sobre este tópico: os arquivos devem ser executáveis. Infelizmente, isso provavelmente não foi aplicado com o debhelper mais antigo, então vejo que muitos pacotes usam essa prática de instalar arquivos não-executáveis com o dh_install. edit: talvez eu tenha entendido mal o man-page. Eu acho que isso significa que o arquivo de instalação em si deve ser executável? Mas aqui está a coisa: Se eu marcar index.html executável, recebo esta mensagem de erro:

src/web/index.html: 2: src/web/index.html: cannot open !DOCTYPE: No such file
src/web/index.html: 2: src/web/index.html: html: not found
src/web/index.html: 4: src/web/index.html: Syntax error: newline unexpected
dh_install: debian/packagename.install (executable config) returned exit code 2

Eu não consegui descobrir, como instalar arquivos não executáveis com o nível 9, alguém pode me dar uma dica?

edite após algumas tentativas e erros: Eu removi o bit executável de todos os arquivos de instalação e ele funciona agora ... Mas isso é contrário à manpage ?! O que está acontecendo aqui?

    
por reox 01.12.2017 / 10:52

2 respostas

1

É um bug no dh-install. Remova o bit executável no seu arquivo .install .

chmod -x debian/*.install

Espero que esta resposta ajude alguém, me levou suor e lágrimas para resolver.

    
por Nadav 17.06.2018 / 12:19
0

Parece que os arquivos mencionados no arquivo de instalação são executados e não apenas como instruções para a ferramenta dh_install. Você está em algum lugar invocando "debian / install" por acaso?

Para começar, sugiro nomear o arquivo de instalação yourpackagename.install, não apenas como "install". Sinta-se à vontade para postar seu arquivo debian / rules também. E eu gostaria de ver um "ls -l" da pasta debian.

    
por smoe 02.12.2017 / 19:52