#! /bin/sh # set -e # summary of how this script can be called: # * `configure' # * `abort-upgrade' # * `abort-remove' `in-favour' # # * `abort-deconfigure' `in-favour' # `removing' # # for details, see http://www.debian.org/doc/debian-policy/ or # the debian-policy package # # quoting from the policy: # Any necessary prompting should almost always be confined to the # post-installation script, and should be protected with a conditional # so that unnecessary prompting doesn't happen if a package's # installation fails and the `postinst' is called with `abort-upgrade', # `abort-remove' or `abort-deconfigure'. case "$1" in configure) if ! getent passwd freeswitch >/dev/null; then adduser --disabled-password --quiet --system \ --home /opt/freeswitch \ --gecos "FreeSWITCH Voice Platform" --ingroup daemon \ freeswitch adduser freeswitch audio else if [ "$(getent passwd freeswitch | cut -d : -f 6)" != "/opt/freeswitch" ]; then echo "Error: pre-existing freeswitch user with non-standard home directory." >&2 exit 1 fi usermod -d /opt/freeswitch -c "FreeSWITCH daemon,,," \ -g daemon -G audio freeswitch fi mkdir -p /opt/freeswitch chown -R freeswitch:daemon /opt/freeswitch/ chmod -R o-rwx /opt/freeswitch/ ;; 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. #DEBHELPER# exit 0