summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Gabriel <mike.gabriel@das-netzwerkteam.de>2022-01-04 08:56:17 +0100
committerMike Gabriel <mike.gabriel@das-netzwerkteam.de>2022-02-08 10:03:49 +0100
commit75672c80d3b1f2bc8a45d960d61d9496c5bfae20 (patch)
tree68ba03e1d82cfdc5449bd162bf8c9c568b80b6bc
parenta8fd7c3ecd7695b21252aa9d5e98e6533c9dbf3d (diff)
downloaditzks-systems-75672c80d3b1f2bc8a45d960d61d9496c5bfae20.tar.gz
itzks-systems-75672c80d3b1f2bc8a45d960d61d9496c5bfae20.tar.bz2
itzks-systems-75672c80d3b1f2bc8a45d960d61d9496c5bfae20.zip
debian/itzks-systems-mainserver.{postinst,postrm}: Create 'debian-edu' system user for DLW keytab distribution.
-rwxr-xr-xdebian/itzks-systems-mainserver.postinst52
-rwxr-xr-xdebian/itzks-systems-mainserver.postrm44
2 files changed, 96 insertions, 0 deletions
diff --git a/debian/itzks-systems-mainserver.postinst b/debian/itzks-systems-mainserver.postinst
new file mode 100755
index 0000000..59aee7c
--- /dev/null
+++ b/debian/itzks-systems-mainserver.postinst
@@ -0,0 +1,52 @@
+#!/bin/sh
+# postinst script for itzks-systems-mainserver
+#
+# see: dh_installdeb(1)
+
+set -e
+
+# 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 https://www.debian.org/doc/debian-policy/ or
+# the debian-policy package
+
+case "${1}" in
+ 'configure')
+ ###
+ ### setup debian-edu user account (needed for DLW keytab distribution)
+ ###
+
+ if ! getent 'passwd' 'debian-edu' >'/dev/null'; then
+ echo 'Creating debian-edu user.' >&2
+ adduser --system --home '/var/lib/debian-edu' \
+ --disabled-password --shell '/bin/sh' \
+ --group 'debian-edu'
+ else
+ echo 'User debian-edu already exists.' >&2
+ # make sure all settings are appropriate
+ if [ "$(id -gn 'debian-edu')" != 'debian-edu' ]; then
+ usermod --gid 'debian-edu' 'debian-edu'
+ fi
+ fi
+ ;;
+ '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'
diff --git a/debian/itzks-systems-mainserver.postrm b/debian/itzks-systems-mainserver.postrm
new file mode 100755
index 0000000..c6d94e8
--- /dev/null
+++ b/debian/itzks-systems-mainserver.postrm
@@ -0,0 +1,44 @@
+#! /bin/sh
+# postrm script for itzks-systems-mainserver
+#
+# see: dh_installdeb(1)
+# summary of how this script can be called:
+# * <postrm> `remove'
+# * <postrm> `purge'
+# * <old-postrm> `upgrade' <new-version>
+# * <new-postrm> `failed-upgrade' <old-version>
+# * <new-postrm> `abort-install'
+# * <new-postrm> `abort-install' <old-version>
+# * <new-postrm> `abort-upgrade' <old-version>
+# * <disappearer's-postrm> `disappear' <r>overwrit>r> <new-version>
+# for details, see /usr/share/doc/packaging-manual/
+
+set -e
+
+case "$1" in
+ purge)
+
+ if [ ! -d /usr/share/doc/debian-edu-config ]; then
+ # remove user/group debian-edu from system (only if package
+ # debian-edu-config has also been removed)
+ getent passwd debian-edu 1>/dev/null && deluser debian-edu
+ getent group debian-edu 1>/dev/null && delgroup debian-edu
+ getent group debian-edu 1>/dev/null && delgroup debian-edu
+ rm -Rf /var/lib/debian-edu
+ fi
+
+ ;;
+ remove|upgrade|failed-upgrade|abort-install|abort-upgrade|disappear)
+ ;;
+ *)
+ echo "postrm called with unknown argument \`$1'" 1>&2
+ exit 0
+ ;;
+esac
+
+# dh_installdeb will replace this with shell code automatically
+# generated by other debhelper scripts.
+
+#DEBHELPER#
+
+exit 0