1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85
|
#! /bin/sh
# postinst script for mumble-server
set -e
. /usr/share/debconf/confmodule
# 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
case "$1" in
configure)
# Add user and permanent directories
if [ ! $(getent group mumble-server) ]; then
adduser --system --quiet --home /var/lib/mumble-server --group mumble-server
fi
[ -d /var/lib/mumble-server ] || mkdir /var/lib/mumble-server
chmod 0750 /var/log/mumble-server
chmod 0750 /var/lib/mumble-server
chown mumble-server:adm /var/log/mumble-server
chown mumble-server:mumble-server /var/lib/mumble-server
if [ -f /etc/mumble-server.ini ]; then
chmod 0640 /etc/mumble-server.ini
chown root:mumble-server /etc/mumble-server.ini
fi
# Workaround for when this was in .dirs
[ -d /run/mumble-server ] && chown mumble-server:adm /run/mumble-server
# Ensure the file we put in /etc/dbus-1/system.d is loaded
# or mumble-server will fail to bind to dbus.
invoke-rc.d --quiet dbus force-reload || true
# Update /etc/default file based on config
if [ -f /etc/default/mumble-server ] ; then
db_get mumble-server/use_capabilities
if [ "$RET" = "true" ] ; then
USE_CAPABILITIES=1
else
USE_CAPABILITIES=0
fi
if grep -E ^MURMUR_USE_CAPABILITIES= /etc/default/mumble-server > /dev/null; then
perl -pi -w -e "s/^MURMUR_USE_CAPABILITIES=.+$/MURMUR_USE_CAPABILITIES=$USE_CAPABILITIES/g" /etc/default/mumble-server
else
echo "MURMUR_USE_CAPABILITIES=$USE_CAPABILITIES" >> /etc/default/mumble-server
fi
else
echo "/etc/default/mumble-server not found, configuration failed." >&2
fi
# Update SuperUser password based on config.
# When set, clear it from config as it can't be queried and the user is
# likely to update it outside of debconf.
db_get mumble-server/password
if [ "$RET" != "" ] ; then
echo $RET | su mumble-server -s /bin/sh -c "/usr/sbin/murmurd -ini /etc/mumble-server.ini -readsupw"
if [ $? = 0 ] ; then
db_set mumble-server/password ""
else
echo "Failed to set SuperUser password." >&2
fi
fi
db_stop
;;
abort-upgrade|abort-remove|abort-deconfigure)
;;
*)
echo "postinst called with unknown argument \`$1'" >&2
exit 1
;;
esac
#DEBHELPER#
exit 0
|