#!/bin/sh set -e _systemctl() { if [ -z "$DPKG_ROOT" ] && [ -d /run/systemd/system ]; then systemctl "$@" fi } _update_catalog() { journalctl ${DPKG_ROOT:+--root="$DPKG_ROOT"} --update-catalog || true } _update_binfmt() { # If binfmt-support is installed and active do not restart # systemd-binfmt.service. It will unregister all currently registered # binary formats in ExecStop and not all packages with a binfmt-support # configuration ship a corresponding binfmt.d snippet yet. # Once this is the case, this additional safety check can be removed. if ! _systemctl -q is-active binfmt-support.service; then _systemctl try-restart systemd-binfmt.service || true fi } # Update Message Catalogs database and binfmt registrations in response to dpkg triggers if [ "$1" = "triggered" ]; then shift for trigger in $@; do case $trigger in /usr/lib/systemd/catalog) _update_catalog ;; /usr/lib/binfmt.d) _update_binfmt ;; esac done exit 0 fi # Enable getty and remote-fs.target by default on new installs if [ -z "$2" ]; then systemctl ${DPKG_ROOT:+--root="$DPKG_ROOT"} enable getty@tty1.service || true systemctl ${DPKG_ROOT:+--root="$DPKG_ROOT"} enable remote-fs.target || true fi # Enable systemd-pstore by default on new installs and upgrades, see #952767 if dpkg --compare-versions "$2" lt "245.4-4~"; then systemctl ${DPKG_ROOT:+--root="$DPKG_ROOT"} enable systemd-pstore.service || true fi # Create /etc/machine-id systemd-machine-id-setup ${DPKG_ROOT:+--root="$DPKG_ROOT"} # Enable persistent journal, in auto-mode, by default on new installs and upgrades if dpkg --compare-versions "$2" lt "244.1-2~"; then mkdir -p "$DPKG_ROOT/var/log/journal" fi # Initial update of the Message Catalogs database _update_catalog if dpkg --compare-versions "$2" lt-nl "245.4-4~"; then # systemd-pstore.service is now enabled via sysinit.target rm -f /etc/systemd/system/systemd-remount-fs.service.wants/systemd-pstore.service rmdir --ignore-fail-on-non-empty /etc/systemd/system/systemd-remount-fs.service.wants 2> /dev/null || true fi if dpkg --compare-versions "$2" lt-nl "245.4-5~"; then # Clean up removed ondemand service rm -f /etc/systemd/system/multi-user.target.wants/ondemand.service fi #DEBHELPER# if [ -n "$2" ]; then _systemctl daemon-reexec || true # do not restart logind # https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=919509 if dpkg --compare-versions "$2" lt-nl "246.2-2~"; then # the socket configuration changed _systemctl stop systemd-networkd.socket || true fi _systemctl try-restart systemd-networkd.service || true _systemctl try-restart systemd-journald.service || true fi