File: //var/lib/dpkg/info/ispmanager-pkg-sieve.postinst
#!/bin/bash
# postinst script for coremanager
#
# 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
COREDIR=/usr/local/mgr5
CONFNAME=sieve.conf
. ${COREDIR}/lib/pkgsh/core_pkg_funcs.sh
. ${COREDIR}/lib/pkgsh/ispmgr_pkg_funcs.sh
case "$1" in
configure)
if [ -z ${2} ]; then
if [ "#${ISPCONVERT}" = "#yes" ]; then
PARAMLIST="MailFilter"
ParamConvert ${COREDIR}/etc/conf.d/sieve.conf
MakeConfigLink sieve
ReloadMgr ${ISPMGR}
else
if ! grep -qE "sieve = ~/.dovecot.sieve" /etc/dovecot/conf.d/90-sieve.conf ; then
sed -i -r "s|(\s*sieve) = .+|\1 = ~/.dovecot.sieve|" /etc/dovecot/conf.d/90-sieve.conf
fi
# Меняем месторасположение директории фильтров
if [ -n "$(sed -n '/plugin {/,/}/{/^\s*sieve_dir/p}' /etc/dovecot/conf.d/90-sieve.conf)" ]; then
sed -i -r "s|(\s*)sieve_dir = .+|\1sieve_dir = ~/.sieve|" /etc/dovecot/conf.d/90-sieve.conf
else
# Если нету параметра, то дописываем его
sed -i -r "/plugin \{/,/\}/{/^\}/s|(^\})| sieve_dir = ~/.sieve\n\1|}" /etc/dovecot/conf.d/90-sieve.conf
fi
if ! grep -qP "^\s*mail_plugins = .*sieve" /etc/dovecot/conf.d/15-lda.conf ; then
# Добавляем sieve к плагинам
sed -i -r "/sieve/! s|^(\s*)#*mail_plugins = (.+)$|\1mail_plugins = \2 sieve|" /etc/dovecot/conf.d/15-lda.conf
ReloadService dovecot
fi
test -f ${COREDIR}/etc/${ISPMGR}.conf.d/${CONFNAME} || ln -sf ../conf.d/sieve.conf ${COREDIR}/etc/${ISPMGR}.conf.d/${CONFNAME}
ReloadMgr ${ISPMGR}
# Afterinstall
AfterinstallModule ${ISPMGR} sieve
fi
fi
;;
abort-upgrade|abort-remove|abort-deconfigure)
;;
*)
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.
exit 0