Como posso criar um script debian postinst e postrm?

1

Eu tentei criar esses scripts, a instalação vai bem, no entanto, uma vez que a versão do aplicativo é colidida e dizer que eu tento atualizar para o apx v2.0 nada vai bem.

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
    
por answerSeeker 08.04.2017 / 23:43

1 resposta

5

Você deve excluí-los.

Seu postinst somente define permissões de arquivo; estes devem ser definidos no conteúdo do pacote, não em um script de pós-instalação.

Seu postrm exclui arquivos de registro e arquivos dentro do diretório pessoal do usuário de desinstalação (supondo que ele tenha sido desinstalado usando sudo ); ambos são definitivos, os diretórios iniciais estão fora dos limites para os scripts do mantenedor, e os logs devem ser deixados para trás na remoção (e purga). Seu script também exclui /usr/lib/apx , que é outro não-não: dpkg deve lidar com isso.

Eu strongmente recomendo que você leia o Guia dos Novos Mantenedores Debian .

    
por 09.04.2017 / 00:19