fixes if package is removed before being configured

This commit is contained in:
Roland Gruber 2010-08-16 18:08:39 +00:00
parent bc86048a8f
commit ff02e0649a
1 changed files with 32 additions and 25 deletions

View File

@ -6,35 +6,42 @@ if [ -f /usr/share/debconf/confmodule ]; then
. /usr/share/debconf/confmodule
db_version 2.0 || [ $? -lt 30 ]
set +e
db_get "ldap-account-manager/config-webserver"
webservers="$RET"
restart=""
for server in $webservers; do
server=${server%,}
case "$server" in
apache2)
rm -f /etc/$server/conf.d/ldap-account-manager
test -x /usr/sbin/$server || continue
restart="$restart $server"
;;
esac
done
db_get "ldap-account-manager/restart-webserver"
if [ "$RET" = "true" ]; then
for server in $restart; do
server=${server%,}
if [ -x /usr/sbin/invoke-rc.d ]; then
invoke-rc.d $server restart
else
/etc/init.d/$server restart
fi
done
if [ $? -eq 0 ]; then
set -e
webservers="$RET"
restart=""
for server in $webservers; do
server=${server%,}
case "$server" in
apache2)
rm -f /etc/$server/conf.d/ldap-account-manager
test -x /usr/sbin/$server || continue
restart="$restart $server"
;;
esac
done
fi
set +e
db_get "ldap-account-manager/restart-webserver"
if [ $? -eq 0 && "$RET" = "true" ]; then
set -e
for server in $restart; do
server=${server%,}
if [ -x /usr/sbin/invoke-rc.d ]; then
invoke-rc.d $server restart
else
/etc/init.d/$server restart
fi
done
fi
set -e
if [ "$1" = "purge" ]; then
rm -r -f /usr/share/ldap-account-manager; rm -r -f /var/lib/ldap-account-manager; fi
if [ "$1" = purge ] && [ -e /usr/share/debconf/confmodule ]; then
db_purge
db_purge
fi
#DEBHELPER#