J'ai un paquet qui incorpore un fichier debian/package.postinst.debhelper
généré automatiquement dans le binaire généré. Lorsque je mets mon propre code dans un fichier sous debian/package.postinst
, le fichier généré automatiquement n'est plus incorporé dans le binaire résultant.
Comment ajouter du code personnalisé au fichier postinst
du package généré sans bloquer l'utilisation du code généré automatiquement?
Votre script postinst doit inclure un jeton #DEBHELPER#
si vous utilisez une commande debhelper susceptible de le modifier. Il sera remplacé dans le script résultant par le contenu généré automatiquement. Voir page de manuel de la commande dh_installdeb
]
Par exemple:
#!/bin/sh
# postinst script for webpy-example
#
# see: dh_installdeb(1)
set -e
# summary of how this script can be called:
# * <postinst> `configure' <most-recently-configured-version>
# * <old-postinst> `abort-upgrade' <new version>
# * <conflictor's-postinst> `abort-remove' `in-favour' <package>
# <new-version>
# * <postinst> `abort-remove'
# * <deconfigured's-postinst> `abort-deconfigure' `in-favour'
# <failed-install-package> <version> `removing'
# <conflicting-package> <version>
# for details, see http://www.debian.org/doc/debian-policy/ or
# the debian-policy package
# source debconf library
. /usr/share/debconf/confmodule
# Source dbconfig-common functions
if [ -f /usr/share/dbconfig-common/dpkg/postinst.pgsql ]; then
. /usr/share/dbconfig-common/dpkg/postinst.pgsql
fi
case "$1" in
configure)
# Set up our config for Apache
/bin/cp /usr/share/webpy-example/postinstall/webpy-config /etc/Apache2/conf.d/
/usr/sbin/a2enmod wsgi
/usr/sbin/a2enmod rewrite
/etc/init.d/Apache2 reload
# set up database
dbc_pgsql_createdb_encoding="UTF8"
dbc_generate_include=template:/usr/share/webpy-example/lib/credentials.py
dbc_generate_include_args="-U -o template_infile='/usr/share/doc/webpy-example/credentials_template.py'"
dbc_generate_include_owner="root:www-data"
dbc_generate_include_perms="0660"
dbc_go webpy-example $@ || true
;;
abort-upgrade|abort-remove|abort-deconfigure)
exit 0
;;
*)
echo "postinst called with unknown argument \`$1'" >&2
exit 1
;;
esac
# dh_installdeb will replace this with Shell code automatically
# generated by other debhelper scripts.
#DEBHELPER#
db_stop
exit 0