diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 16:18:57 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 16:18:57 +0000 |
commit | a9cdccbffffdd2e58b5cc69683682517e892ea40 (patch) | |
tree | 5890cdcebde1069c9b7419d92476e52cc5525d6f /debian/postfix.preinst | |
parent | Adding upstream version 3.7.10. (diff) | |
download | postfix-debian/3.7.10-0+deb12u1.tar.xz postfix-debian/3.7.10-0+deb12u1.zip |
Adding debian version 3.7.10-0+deb12u1.debian/3.7.10-0+deb12u1debian
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'debian/postfix.preinst')
-rw-r--r-- | debian/postfix.preinst | 84 |
1 files changed, 84 insertions, 0 deletions
diff --git a/debian/postfix.preinst b/debian/postfix.preinst new file mode 100644 index 0000000..ce3bb9d --- /dev/null +++ b/debian/postfix.preinst @@ -0,0 +1,84 @@ +#!/bin/sh + +set -e + +# Debian Postfix preinst +# LaMont Jones <lamont@debian.org> +# Modified to use debconf by Colin Walters <levanti@verbum.org> + +# do we have debconf? +if [ -f /usr/share/debconf/confmodule ]; then + . /usr/share/debconf/confmodule + DEBCONF=true +else + DEBCONF= +fi + +MASTER=/etc/postfix/master.cf + +(umask 022; mkdir -p /var/spool/postfix) + +case "$1" in + install) + rm -f /var/spool/postfix/restart /var/spool/postfix/reload + # workaround sendmail not unregistering itself... + if [ -e /etc/suid.conf ] && [ -x /usr/sbin/suidunregister ]; then + if grep -q sendmail /etc/suid.conf; then + /usr/sbin/suidunregister -s postfix /usr/sbin/sendmail + fi + fi + + if [ -L /etc/postfix/postfix-script ]; then + rm -f /etc/postfix/postfix-script + fi + + ;; + + upgrade) + version=$2 + if [ -d /var/spool/postfix ] && [ -f /etc/postfix/main.cf ]; then + touch /var/spool/postfix/restart + fi + export LANG=C # for the comparison of mail version... + + if [ -L /etc/postfix/postfix-script ]; then + rm -f /etc/postfix/postfix-script + fi + + # If user has not modified master/main.proto, move aside so new version + # is installed (#991513) + cmp -s /usr/share/postfix/main.cf.dist /etc/postfix/main.cf.proto && \ + mv /etc/postfix/main.cf.proto /etc/postfix/main.cf.proto.old \ + || echo "/etc/postfix/main.cf.proto modified, not updating." + cmp -s /usr/share/postfix/master.cf.dist /etc/postfix/master.cf.proto && \ + mv /etc/postfix/master.cf.proto /etc/postfix/master.cf.proto.old \ + || echo "/etc/postfix/master.cf.proto modified, not updating." + + ;; + + abort-upgrade) + if [ -f /etc/postfix/main.cf.proto.old ]; then + mv /etc/postfix/main.cf.proto.old /etc/postfix/main.cf.proto + echo "Restoring old /etc/postfix/main.cf.proto on failed upgrade." + fi + if [ -f /etc/postfix/master.cf.proto.old ]; then + mv /etc/postfix/master.cf.proto.old /etc/postfix/master.cf.proto + echo "Restoring old /etc/postfix/master.cf.proto on failed upgrade." + fi + ;; + + *) + echo "preinst called with unknown argument \`$1'" >&2 + exit 1 + ;; +esac + +if [ install = "$1" ] || [ upgrade = "$1" ]; then + # cleanup after past mistakes. + rm -f /usr/sbin/postconf.postfix + dpkg-divert --package postfix-tls --remove \ + --divert /usr/sbin/postconf.postfix \ + /usr/sbin/postconf >/dev/null 2>/dev/null +fi + +#DEBHELPER# |