summaryrefslogtreecommitdiffstats
path: root/debian/postinst
diff options
context:
space:
mode:
Diffstat (limited to 'debian/postinst')
-rw-r--r--debian/postinst41
1 files changed, 41 insertions, 0 deletions
diff --git a/debian/postinst b/debian/postinst
new file mode 100644
index 0000000..6ab3d87
--- /dev/null
+++ b/debian/postinst
@@ -0,0 +1,41 @@
+#!/bin/sh
+set -e
+
+setperm() {
+ user="$1"
+ group="$2"
+ mode="$3"
+ file="$4"
+ shift 4
+ # only do something when no setting exists
+ if ! dpkg-statoverride --list "$file" >/dev/null 2>&1; then
+ chown "$user":"$group" "$file"
+ chmod "$mode" "$file"
+ fi
+}
+
+case "$1" in
+ configure)
+
+ if ! getent passwd icingadb > /dev/null ; then
+ echo 'Adding system-user for icingadb' 1>&2
+ adduser --system --group --home /etc/icingadb \
+ --disabled-login --force-badname icingadb > /dev/null
+ fi
+
+ setperm icingadb icingadb 0750 /etc/icingadb
+ setperm icingadb icingadb 0640 /etc/icingadb/config.yml
+ ;;
+
+ abort-upgrade|abort-remove|abort-deconfigure)
+ ;;
+
+ *)
+ echo "postinst called with unknown argument \`$1'" >&2
+ exit 1
+ ;;
+esac
+
+#DEBHELPER#
+
+exit 0