File: //var/lib/dpkg/info/watchdog.config
#!/bin/sh
set -e
. /usr/share/debconf/confmodule
db_capb backup
parse_default() {
case `sed -n 's/^run_watchdog=//p' "$@"` in
0) db_set watchdog/run false;;
1) db_set watchdog/run true;;
*) return 1;;
esac
case `sed -n 's/^run_wd_keepalive=//p' "$@"` in
0) db_set watchdog/run_keepalive false;;
1) db_set watchdog/run_keepalive true;;
*) return 1;;
esac
db_set watchdog/module `sed -n 's/^watchdog_module="\(.*\)"/\1/p' "$@"`
}
if [ -f /etc/default/watchdog ]
then
# Load previous value (may have been changed manually).
parse_default /etc/default/watchdog || true
fi
db_input medium watchdog/module || true
db_go
# Use a state machine to allow jumping back.
state=1
while true
do
case $state in
1)
db_input medium watchdog/run || true
;;
2)
db_get watchdog/run
[ "$RET" = false ] || db_input medium watchdog/restart || true
;;
3)
db_get watchdog/restart
[ "$RET" = false ] || db_input medium watchdog/run_keepalive || true
;;
*)
break
;;
esac
if db_go
then
state=$(($state + 1))
else
state=$(($state - 1))
fi
done
# Check if the user backed up from the first question.
[ $state -gt 0 ] || exit 10