#!/bin/sh
# postrm script for notqmail
#
# see: dh_installdeb(1)

set -e

# summary of how this script can be called:
#        * <postrm> `remove'
#        * <postrm> `purge'
#        * <old-postrm> `upgrade' <new-version>
#        * <new-postrm> `failed-upgrade' <old-version>
#        * <new-postrm> `abort-install'
#        * <new-postrm> `abort-install' <old-version>
#        * <new-postrm> `abort-upgrade' <old-version>
#        * <disappearer's-postrm> `disappear' <overwriter>
#          <overwriter-version>
# for details, see http://www.debian.org/doc/debian-policy/ or
# the debian-policy package


qmaildir=/var/qmail
logdir=/var/log/svc
####################################

case "$1" in
    purge|remove|upgrade|failed-upgrade|abort-install|abort-upgrade|disappear)
    ;;

    *)
        echo "postrm called with unknown argument \`$1'" >&2
        exit 1
    ;;
esac

# dh_installdeb will replace this with shell code automatically
# generated by other debhelper scripts.

#DEBHELPER#

# we are doing upgrade or removal
if [ " $1" = " upgrade" ] ; then
	if [ ! "${prefix}" = "/usr" ] ; then
		echo "recreating ld.so cache"
		/sbin/ldconfig
	fi
	exit 0
fi

case "$1" in
    failed-upgrade|abort-install|abort-upgrade|disappear)
	exit 0
    ;;
esac
#
# Debian silliness
#
if [ " $1" = " purge" ] ; then
	update-alternatives --remove mta ${qmaildir}/bin/sendmail || true
	update-alternatives --auto mta || true
	for i in alias qmaild qmaill qmailp qmailq qmailr qmails
	do
		echo "removing user $i"
		/usr/bin/getent passwd $i > /dev/null && /usr/sbin/userdel $i >/dev/null || true
	done
	for i in nofiles qmail
	do
		echo "removing group $i"
		/usr/bin/getent group $i > /dev/null && /usr/sbin/groupdel $i  >/dev/null || true
	done

	echo "removing aliases postmaster, mailer-daemon, root"
	for i in postmaster mailer-daemon root
	do
		rm -f ${qmaildir}/alias/.qmail-"$i"
	done
	rm -rf ${qmaildir}/Maildir ${qmaildir}/alias/Maildir
	if [ -d ${qmaildir}/alias ] ; then
		rmdir --ignore-fail-on-non-empty ${qmaildir}/alias 2>/dev/null || true
	fi
	if [ -h ${logdir} ] ; then
		log_dir=`readlink $logdir`
	else
		log_dir=${logdir}
	fi
	[ "$log_dir" != "/" ] && rm -fr $log_dir
	dpkg-statoverride --remove ${qmaildir}/bin/qmail-queue || true
fi
exit 0
