私はこれらのスクリプトを作成してみましたが、インストールはうまくいきますが、アプリケーションのバージョンがバンプされ、apx v2.0にアップグレードしようとすると、何もうまくいきません。
これは私の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
これは私の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
それらを削除する必要があります。
postinst
はファイルの権限のみを設定します。これらは、インストール後のスクリプトではなく、パッケージ化されたコンテンツで設定されることになっています。
postrm
は、ログファイルと、アンインストールするユーザーのホームディレクトリ内のファイルを削除します(Sudo
を使用してアンインストールされた場合)。これらはどちらも明確なno-nosであり、ホームディレクトリはメンテナースクリプトの立ち入りが禁止されており、ログは削除(およびパージ)時に残しておく必要があります。また、スクリプトは/usr/lib/apx
も削除します。これはもう1つの禁止事項です:dpkg
がこれを処理することになっています。
私は強くDebian New Maintainers ’Guide を読むことをお勧めします。