From 3771f314f0f353192d5e47b26fe2f4fbe210555c Mon Sep 17 00:00:00 2001 From: jlam Date: Fri, 30 Jul 2004 23:03:58 +0000 Subject: [PATCH] Actually warn about the IMAP directories if they can't be removed. Removing directories happens at POST-DEINSTALL time, but the imapd.conf file may be removed during the DEINSTALL stop, so we need to add the code to remove the IMAP directories explicitly in the DEINSTALL step, as well. --- mail/cyrus-imapd22/DEINSTALL | 35 +++++++++++++++++++++++++++-------- 1 file changed, 27 insertions(+), 8 deletions(-) diff --git a/mail/cyrus-imapd22/DEINSTALL b/mail/cyrus-imapd22/DEINSTALL index 2ad34812c722..26871ca2b643 100644 --- a/mail/cyrus-imapd22/DEINSTALL +++ b/mail/cyrus-imapd22/DEINSTALL @@ -1,19 +1,38 @@ -# $NetBSD: DEINSTALL,v 1.2 2004/05/27 04:45:06 jlam Exp $ +# $NetBSD: DEINSTALL,v 1.3 2004/07/30 23:03:58 jlam Exp $ IMAPDCONF=@IMAPDCONF@ case ${STAGE} in DEINSTALL) if [ -f ${IMAPDCONF} ]; then - ${AWK} '/configdirectory:/ { print $2 }; \ - /partition-.*:/ { print $2 }; \ - /sievedir:/ { print $2 }' \ - ${IMAPDCONF} | \ - while read dir; do - if [ -d "${dir}" ]; then - ALL_DIRS="${ALL_DIRS} ${dir}" + IMAPDIRS=` + ${AWK} '/configdirectory:/ { print $2 }; \ + /partition-.*:/ { print $2 }; \ + /sievedir:/ { print $2 }' \ + ${IMAPDCONF} | ${SORT} -ur` + _IMAPDIRS= + for dir in ${IMAPDIRS}; do + ${RMDIR} -p ${dir} 2>/dev/null || ${TRUE} + if [ -d ${dir} ]; then + _IMAPDIRS="${_IMAPDIRS} ${dir}" fi done + if [ -n "${_IMAPDIRS}" ]; then + ${CAT} << EOF +=========================================================================== +If you won't be using ${PKGNAME} any longer, you may want to remove +the following directories: + +EOF + for dir in ${_IMAPDIRS}; do + if [ -d "${dir}" ]; then + ${ECHO} " ${dir}" + fi + done + ${CAT} << EOF +=========================================================================== +EOF + fi fi ;; esac