Como criar um pacote .deb relocável com scripts de mantenedor?

Como criar um pacote .deb relocável com scripts de mantenedor?

Eu tenho um pacote Debian com script postinst que cria links simbólicos. Quando tento instalar o .debpacote --root(já que quero alterar o local onde o pacote deve ser instalado), recebo este erro:

dpkg (subprocess): unable to execute installed post-installation script: No such file or directory
subprocess installed post-installation script returned error exit status 2

dpkgestá tentando encontrar o script postinst em /var/lib/dpkg/info. O que não consigo entender é que, de acordo com a dpkgpágina de manual, o uso da opção também --rootaltera o admindirto . Então, por que ele está tentando encontrar o script postinst em ?newdir/var/lib/dpkg/var/lib/dpkg/info/

Tentei criar outro pacote que não contém esse script de mantenedor e instalei-o usando a mesma -i --root=newdiropção e não gerou nenhum erro.

Por favor, deixe-me saber como posso fazer isso funcionar.

Responder1

dpkgencontrou o script postinst /your/root/var/lib/dpkg/info- ele tentou executá-lo. Parece que o problema é umcarregador faltando: dpkgencontra o script postinst, mas recebe um erro “Esse arquivo ou diretório não existe” quando tenta executá-lo porque o programa interpretador do script não está presente (por exemplo, é um script Python e python-minimalnão está instalado). Com um instdir alternativo, o interpretador deve estar presente no instdir (o dpkg faz chroot no instdir antes de executar os scripts do pacote).

Se o intérprete não for fornecido por um pacote marcado com Essential, certifique-se de que seu pacote depende do pacote que fornece o intérprete.

informação relacionada