File: /var/lib/dpkg/info/sysstat.postinst
#! /bin/sh
# vim:ts=4:et:sw=4
set -e
S_VERSION="10.3.1-1~"
PACKAGE="sysstat"
DEFAULT="/etc/default/$PACKAGE"
ENABLED="false"
### manage_default_file: manages $DEFAULT file with ucf ###
manage_default_file() {
    ENABLED="$1"
    if [ "$ENABLED" != "true" ] && [ "$ENABLED" != "false" ] ; then
        echo "Internal error in the sysstat's postinst: \$ENABLED=$ENABLED" 1>&2;
        exit 1;
    fi
    # Generate temporary files
    def_file=`mktemp -t sstatXXXXXXXXX.def`
    # Fill new temporary default file
    cat > "$def_file" << EOF
#
# Default settings for /etc/init.d/sysstat, /etc/cron.d/sysstat
# and /etc/cron.daily/sysstat files
#
# Should sadc collect system activity informations? Valid values
# are "true" and "false". Please do not put other values, they
# will be overwritten by debconf!
ENABLED="$ENABLED"
EOF
    # Finally, run ucf
    ucf --three-way \
        --debconf-ok \
        "$def_file" "$DEFAULT"
    ucfr "$PACKAGE" "$DEFAULT"
    [ -e "$DEFAULT" ] && chmod 644 "$DEFAULT"
    rm -f "$def_file"
}
manage_systemd_services()
{
    ENABLED="$1"
    all_services='sysstat-collect.timer sysstat-summary.timer sysstat.service'
    num_all_services=3
    # deb-systemd-helper does not have the --now option
    sysctl='/bin/systemctl'
    num_disabled=0
    [ -x "$sysctl" ] && [ -d /run/systemd/system ] || return 0
    for service in $all_services; do
        "$sysctl" --quiet is-enabled "$service" || num_disabled=$(expr $num_disabled + 1)
    done
    if [ $num_disabled != 0 ] && [ $num_disabled !=  $num_all_services ]; then
        # Do not override local administator choice to enable only some of systemd files
        return 0
    fi
    [ $num_disabled = 0 ] && is_enabled="true" || is_enabled="false"
    [ "$ENABLED" != "$is_enabled" ] || return 0
    [ "$ENABLED" = "true" ] && enable_arg="enable" || enable_arg="disable"
    for service in $all_services; do
        case $service in
            *.timer) options="--now" ;;
            *)       options=""      ;;
        esac
        "$sysctl" "$enable_arg" $options "$service" >/dev/null 2>&1 || true
    done
}
### Main ###
. /usr/share/debconf/confmodule
ENABLED=""
if [ "$1" = "configure" ] ; then
    if dpkg --compare-versions "$2" lt-nl "$S_VERSION"; then
        RET=""
        db_get sysstat/remove_files || true
        if [ "$RET" = "true" ]; then
            echo "Removing old statistics from /var/log/sysstat." 1>&2
            find  /var/log/sysstat -maxdepth 2 \( -name 'sa[0-9][0-9]' -o -name 'sa[0-9][0-9].gz' \
                                                  -o -name 'sa[0-9][0-9].bz2' \) -exec rm -f {} \;
        fi
    fi
    # show the question next time
    db_reset sysstat/remove_files || true
    db_get sysstat/enable || true
    ENABLED="$RET"
    manage_default_file "$ENABLED"
    # must be called *after* manage_default_file, which uses ucf --debconf-ok
    db_stop || true
    if ! update-alternatives --display sar 2>/dev/null | grep -q '^/usr/bin/sar\.sysstat'; then
        update-alternatives --install /usr/bin/sar sar /usr/bin/sar.sysstat 0 \
                            --slave /usr/share/man/man1/sar.1.gz sar.1.gz \
                            /usr/share/man/man1/sar.sysstat.1.gz
    fi
fi
# Automatically added by dh_installdeb/13.14.1ubuntu5
dpkg-maintscript-helper rm_conffile /etc/profile.d/sysstat.sh 11.7.3\~ sysstat -- "$@"
# End automatically added section
# Automatically added by dh_installinit/13.14.1ubuntu5
if [ "$1" = "configure" ] || [ "$1" = "abort-upgrade" ] || [ "$1" = "abort-deconfigure" ] || [ "$1" = "abort-remove" ] ; then
	if [ -x "/etc/init.d/sysstat" ]; then
		update-rc.d sysstat defaults >/dev/null || exit 1
	fi
fi
# End automatically added section
# Automatically added by dh_installsystemd/13.14.1ubuntu5
if [ "$1" = "configure" ] || [ "$1" = "abort-upgrade" ] || [ "$1" = "abort-deconfigure" ] || [ "$1" = "abort-remove" ] ; then
	# The following line should be removed in trixie or trixie+1
	deb-systemd-helper unmask 'sysstat-collect.timer' >/dev/null || true
	# was-enabled defaults to true, so new installations run enable.
	if deb-systemd-helper --quiet was-enabled 'sysstat-collect.timer'; then
		# Enables the unit on first installation, creates new
		# symlinks on upgrades if the unit file has changed.
		deb-systemd-helper enable 'sysstat-collect.timer' >/dev/null || true
	else
		# Update the statefile to add new symlinks (if any), which need to be
		# cleaned up on purge. Also remove old symlinks.
		deb-systemd-helper update-state 'sysstat-collect.timer' >/dev/null || true
	fi
fi
# End automatically added section
# Automatically added by dh_installsystemd/13.14.1ubuntu5
if [ "$1" = "configure" ] || [ "$1" = "abort-upgrade" ] || [ "$1" = "abort-deconfigure" ] || [ "$1" = "abort-remove" ] ; then
	# The following line should be removed in trixie or trixie+1
	deb-systemd-helper unmask 'sysstat-summary.timer' >/dev/null || true
	# was-enabled defaults to true, so new installations run enable.
	if deb-systemd-helper --quiet was-enabled 'sysstat-summary.timer'; then
		# Enables the unit on first installation, creates new
		# symlinks on upgrades if the unit file has changed.
		deb-systemd-helper enable 'sysstat-summary.timer' >/dev/null || true
	else
		# Update the statefile to add new symlinks (if any), which need to be
		# cleaned up on purge. Also remove old symlinks.
		deb-systemd-helper update-state 'sysstat-summary.timer' >/dev/null || true
	fi
fi
# End automatically added section
# Automatically added by dh_installsystemd/13.14.1ubuntu5
if [ "$1" = "configure" ] || [ "$1" = "abort-upgrade" ] || [ "$1" = "abort-deconfigure" ] || [ "$1" = "abort-remove" ] ; then
	# The following line should be removed in trixie or trixie+1
	deb-systemd-helper unmask 'sysstat.service' >/dev/null || true
	# was-enabled defaults to true, so new installations run enable.
	if deb-systemd-helper --quiet was-enabled 'sysstat.service'; then
		# Enables the unit on first installation, creates new
		# symlinks on upgrades if the unit file has changed.
		deb-systemd-helper enable 'sysstat.service' >/dev/null || true
	else
		# Update the statefile to add new symlinks (if any), which need to be
		# cleaned up on purge. Also remove old symlinks.
		deb-systemd-helper update-state 'sysstat.service' >/dev/null || true
	fi
fi
# End automatically added section
if [ "$1" = "configure" ] && [ -n "$ENABLED" ]; then
    manage_systemd_services "$ENABLED"
    # execute sa1 in a subshell not to clobber the postinst script with potentially
    # unsafe values from "$DEFAULT"
    if [ "$ENABLED" = "true" ] && [ -x /usr/lib/sysstat/sa1 ] ; then
        ( set +e ; /usr/lib/sysstat/sa1 1 1 )&
    fi
fi
exit 0