diff options
author | Vsevolod Stakhov <vsevolod@highsecure.ru> | 2013-02-02 23:27:55 +0400 |
---|---|---|
committer | Vsevolod Stakhov <vsevolod@highsecure.ru> | 2013-02-02 23:27:55 +0400 |
commit | 9fb28304cde41c5e3e4bd17daaad715337a6878c (patch) | |
tree | df5c319a2f77b3dd0cd78f1e393dfe93770b0d77 /debian/preinst | |
parent | 395bb422be0ff0293a7e6fe435014050950256ce (diff) | |
download | rspamd-9fb28304cde41c5e3e4bd17daaad715337a6878c.tar.gz rspamd-9fb28304cde41c5e3e4bd17daaad715337a6878c.zip |
Final update for 0.5.4.
Diffstat (limited to 'debian/preinst')
-rw-r--r-- | debian/preinst | 82 |
1 files changed, 82 insertions, 0 deletions
diff --git a/debian/preinst b/debian/preinst new file mode 100644 index 000000000..df0404b10 --- /dev/null +++ b/debian/preinst @@ -0,0 +1,82 @@ +#!/bin/sh +# preinst script for rmilter +# +# see: dh_installdeb(1) + +set -e + +# summary of how this script can be called: +# * <new-preinst> `install' +# * <new-preinst> `install' <old-version> +# * <new-preinst> `upgrade' <old-version> +# * <old-preinst> `abort-upgrade' <new-version> +# for details, see http://www.debian.org/doc/debian-policy/ or +# the debian-policy package + + +case "$1" in + install) + SERVER_HOME=/var/lib/rspamd + SERVER_LOG=/var/log/rspamd + SERVER_USER=rspamd + SERVER_NAME="Rspamd spam filtering system" + SERVER_GROUP=rspamd + + # create user to avoid running server as root + # 1. create group if not existing + if ! getent group | grep -q "^$SERVER_GROUP:" ; then + echo -n "Adding group $SERVER_GROUP.." + addgroup --quiet --system $SERVER_GROUP 2>/dev/null ||true + echo "..done" + fi + # 2. create homedir if not existing + test -d $SERVER_HOME || mkdir $SERVER_HOME + test -d $SERVER_LOG || mkdir $SERVER_LOG + # 3. create user if not existing + if ! getent passwd | grep -q "^$SERVER_USER:"; then + echo -n "Adding system user $SERVER_USER.." + adduser --quiet \ + --system \ + --ingroup $SERVER_GROUP \ + --no-create-home \ + --disabled-password \ + $SERVER_USER 2>/dev/null || true + echo "..done" + fi + # 4. adjust passwd entry + usermod -c "$SERVER_NAME" \ + -d $SERVER_HOME \ + -g $SERVER_GROUP \ + $SERVER_USER + # 5. adjust file and directory permissions + if ! dpkg-statoverride --list $SERVER_HOME >/dev/null + then + chown -R $SERVER_USER:$SERVER_GROUP $SERVER_HOME $SERVER_LOG + chmod u=rwx,g=rx,o= $SERVER_HOME + chmod u=rwx,g=rx,o=rx $SERVER_LOG + fi + # 6. Add the user to the ADDGROUP group + if test -n $ADDGROUP + then + if ! groups $SERVER_USER | cut -d: -f2 | \ + grep -qw $SERVER_GROUP; then + adduser $SERVER_USER $SERVER_GROUP + fi + fi + ;; + + abort-upgrade|upgrade) + ;; + + *) + echo "preinst called with unknown argument \`$1'" >&2 + exit 1 + ;; +esac + +# dh_installdeb will replace this with shell code automatically +# generated by other debhelper scripts. + +#DEBHELPER# + +exit 0 |