taler-merchant.postinst (2810B)
1 #!/bin/bash 2 3 set -e 4 5 MARKER="/run/taler-merchant/.was-enabled" 6 7 SERVICES="taler-merchant-depositcheck taler-merchant-exchangekeyupdate taler-merchant-donaukeyupdate taler-merchant-httpd taler-merchant-kychcekc taler-merchant-reconciliation taler-merchant-report-generator taler-merchant-webhook taler-merchant-wirewatch" 8 9 if [ -d /run/systemd/system ]; 10 then 11 systemctl --system daemon-reload >/dev/null || true 12 fi 13 if [ "$1" = "remove" ]; 14 then 15 if [ -x "/usr/bin/deb-systemd-helper" ]; 16 then 17 for SERVICE in "$SERVICES" 18 do 19 deb-systemd-helper mask "${SERVICE}.service" >/dev/null || true 20 done 21 deb-systemd-helper mask 'taler-merchant.target' >/dev/null || true 22 fi 23 fi 24 25 if [ "$1" = "purge" ]; 26 then 27 if [ -x "/usr/bin/deb-systemd-helper" ]; 28 then 29 for SERVICE in "$SERVICES" 30 do 31 deb-systemd-helper purge "${SERVICE}.service" >/dev/null || true 32 deb-systemd-helper unmask "${SERVICE}.service" >/dev/null || true 33 done 34 deb-systemd-helper purge 'taler-merchant.target' >/dev/null || true 35 deb-systemd-helper unmask 'taler-merchant.target' >/dev/null || true 36 fi 37 fi 38 39 TALER_HOME="/var/lib/taler-merchant" 40 41 . /usr/share/debconf/confmodule 42 43 case "${1}" in 44 configure) 45 46 # Creating taler users if needed 47 if ! getent passwd taler-merchant-httpd >/dev/null; 48 then 49 adduser \ 50 --quiet \ 51 --system \ 52 --ingroup www-data \ 53 --no-create-home \ 54 --home ${TALER_HOME} \ 55 taler-merchant-httpd 56 fi 57 58 if ! dpkg-statoverride --list /etc/taler-merchant/secrets/merchant-db.secret.conf >/dev/null 2>&1 59 then 60 dpkg-statoverride \ 61 --add \ 62 --update \ 63 taler-merchant-httpd root 460 \ 64 /etc/taler-merchant/secrets/merchant-db.secret.conf 65 fi 66 67 if [ -x /usr/bin/taler-merchant-dbinit ]; 68 then 69 /usr/bin/taler-merchant-dbinit >/dev/null 2>&1 || true 70 fi 71 72 if [ -f "$MARKER" ] && grep -q "enabled" "$MARKER"; 73 then 74 echo "taler-merchant-httpd was previously enabled, running DB config." 75 76 systemctl enable --now taler-merchant.target || true 77 else 78 echo "Not enabling or starting Taler merchant services (marker not found or was 'disabled')." 79 fi 80 81 # Cleanup marker file 82 rm -f "$MARKER" 83 84 # Try to generate compressed versions of the SPA 85 for n in index.html index.css index.js lang.js 86 do 87 TDIR="/usr/share/taler-merchant/" 88 gzip --best - < "${TDIR}/spa/$n" > "${TDIR}/spa/$n.gz" || rm -f "${TDIR}/spa/$n.gz" 89 zstd -19 - < "${TDIR}/spa/$n" > "${TDIR}/spa/$n.zstd" || rm -f "${TDIR}/spa/$n.zstd" 90 done 91 92 ;; 93 94 abort-upgrade | abort-remove | abort-deconfigure) ;; 95 96 *) 97 echo "postinst called with unknown argument \`${1}'" >&2 98 exit 1 99 ;; 100 esac 101 102 #DEBHELPER# 103 104 exit 0