#!/bin/bash
set -e

readonly MODULES_DEBUG_LEVELS_PATH_OLD_VERSION="/usr/share/deepin-debug-config/deepin-debug-levels.cfg"

function rm_file_if_exists {
	if [ -f "$1" ]; then
		rm -f "$1"
	fi
}

function clean_deepin_debug_configs {
	local conf_dir="/etc/systemd/system.conf.d"
	
	if [ -d "$conf_dir" ]; then
		find "$conf_dir" -maxdepth 1 -name "*deepin-debug*.conf" -type f 2>/dev/null | while read -r conf; do
			if [ -f "$conf" ]; then
				echo "deepin-debug-config: Removing stale config: $conf"
				rm -f "$conf" || true
			fi
		done
	fi
}

function rm_level_cfg {
	rm_file_if_exists "$MODULES_DEBUG_LEVELS_PATH_OLD_VERSION"
}

function rm_journald_conf_files {
	rm_file_if_exists /etc/systemd/journald.conf.d/00-on-deepin-config-debug.conf
	rm_file_if_exists /etc/systemd/journald.conf.d/00-off-deepin-config-debug.conf
}

function set_debug_reload {
	/usr/bin/deepin-debug-config --reload
}

function create_dirs {
	mkdir -p /etc/systemd/coredump.conf.d
}

case "$1" in
	configure)
		rm_level_cfg
		rm_journald_conf_files
		create_dirs
		clean_deepin_debug_configs
		set_debug_reload || true
	;;
	triggered)
		set_debug_reload || true
	;;
	*)
	;;
esac

# dh_installdeb will replace this with shell code automatically
# generated by other debhelper scripts.
#DEBHELPER#

exit 0

