summaryrefslogtreecommitdiff
path: root/debian/sync-httpd.postinst
diff options
context:
space:
mode:
Diffstat (limited to 'debian/sync-httpd.postinst')
-rw-r--r--debian/sync-httpd.postinst48
1 files changed, 48 insertions, 0 deletions
diff --git a/debian/sync-httpd.postinst b/debian/sync-httpd.postinst
new file mode 100644
index 0000000..16acb35
--- /dev/null
+++ b/debian/sync-httpd.postinst
@@ -0,0 +1,48 @@
+#!/bin/bash
+
+set -e
+
+TALER_HOME="/var/lib/taler/"
+_USERNAME=sync-httpd
+_GROUPNAME=www-data
+
+# Set permissions for sqlite3 file
+# (for when we support sqlite3 in the future)
+dbc_dbfile_owner="${_USERNAME}:${_GROUPNAME}"
+dbc_dbfile_perms="0600"
+
+. /usr/share/debconf/confmodule
+
+case "${1}" in
+configure)
+ # Creating taler users if needed
+ if ! getent passwd ${_USERNAME} >/dev/null; then
+ adduser --quiet --system --ingroup ${_GROUPNAME} --no-create-home --home ${TALER_HOME} ${_USERNAME}
+ fi
+
+ if ! dpkg-statoverride --list /etc/sync/secrets/sync-db.secret.conf >/dev/null 2>&1; then
+ dpkg-statoverride --add --update \
+ sync-httpd root 460 \
+ /etc/sync/secrets/sync-db.secret.conf
+ fi
+
+ # Setup postgres database (needs dbconfig-pgsql package)
+ if [ -f /usr/share/dbconfig-common/dpkg/postinst.pgsql ]; then
+ . /usr/share/dbconfig-common/dpkg/postinst.pgsql
+ dbc_pgsql_createdb_encoding="UTF8"
+ dbc_go sync-httpd "$@"
+ fi
+
+ ;;
+
+abort-upgrade | abort-remove | abort-deconfigure) ;;
+
+ *)
+ echo "postinst called with unknown argument \`${1}'" >&2
+ exit 1
+ ;;
+esac
+
+#DEBHELPER#
+
+exit 0