diff options
Diffstat (limited to 'mail/cyrus-imapd312/files/pkg-deinstall.in')
-rw-r--r-- | mail/cyrus-imapd312/files/pkg-deinstall.in | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/mail/cyrus-imapd312/files/pkg-deinstall.in b/mail/cyrus-imapd312/files/pkg-deinstall.in new file mode 100644 index 000000000000..2e933163aba4 --- /dev/null +++ b/mail/cyrus-imapd312/files/pkg-deinstall.in @@ -0,0 +1,40 @@ +#!/bin/sh +# +# Created by: hetzels@westbend.net + +#set -vx + +PKG_BATCH=${BATCH:=NO} +CYRUS_USER=${CYRUS_USER:=%%CYRUS_USER%%} + +# +# Modify the 'cyrus' user created from the cyrus-sasl port +# + +modify_cyrus_user() { + USER=${CYRUS_USER} + PW=/usr/sbin/pw + if [ -x "${PKG_ROOTDIR}/usr/sbin/nologin" ]; then + shell=/usr/sbin/nologin + elif [ -x "${PKG_ROOTDIR}/sbin/nologin" ]; then + shell=/sbin/nologin + else + shell=/nonexistent + fi + uhome=/nonexistent + + if ! ${PW} -R "${PKG_ROOTDIR}" mod user ${USER} -d "${uhome}" -s "${shell}"; then + echo "*** Failed to update user \`${USER}'." + else + echo "*** Updated user \`${USER}'." + fi +} + +case $2 in + DEINSTALL) + ;; + POST-DEINSTALL) + modify_cyrus_user + ;; + +esac |