Como posso criar um script debian postinst e postrm adequado?

Como posso criar um script debian postinst e postrm adequado?

Eu tentei criar esses scripts, a instalação correu bem, porém, uma vez que a versão do aplicativo é alterada e digo que tento atualizar para o apx v2.0, nada dá certo.

Este é o meu script postinst

#!/bin/sh

set -e 
chmod 755 /usr/bin/apx
chmod 755 /usr/lib/apx/apx.py
chmod -R 755 /usr/lib/apx/data/binaries

exit 0

este é o meu script postrm

#!/bin/sh

set -e

U_HOME=$(getent passwd $SUDO_USER | cut -d: -f6)
LOG="/var/log/apx"
UHOME="$U_HOME/.apx"

if [ -d $LOG ]; then
     rm -rf $LOG
fi

if [ -d $UHOME ]; then
     rm -rf $UHOME
fi

rm -rf /usr/lib/apx

exit 0

Responder1

Você deve excluí-los.

Você postinstapenas define permissões de arquivo; eles devem ser definidos no conteúdo do pacote, não em um script pós-instalação.

Você postrmexclui arquivos de log e arquivos dentro do diretório inicial do usuário que está desinstalando (assumindo que ele foi desinstalado usando sudo); ambos são definitivamente proibidos, os diretórios iniciais estão fora dos limites para scripts de mantenedor e os logs devem ser deixados para trás na remoção (e eliminação). Seu script também exclui, /usr/lib/apxo que é outra proibição: dpkgé suposto lidar com isso.

EUfortementerecomendo que você leia oGuia para novos mantenedores do Debian.

informação relacionada