| #!/bin/sh |
| set -e |
| |
| |
| if [ "$1" = configure ] |
| then |
| . /usr/share/debconf/confmodule |
| |
| if [ -x "`which MAKEDEV`" ]; then |
| # do we have to create the device? |
| if [ ! -c /dev/watchdog ] |
| then |
| (cd /dev; MAKEDEV misc || true) |
| fi |
| |
| # do we have to create the temperature device? |
| if [ ! -c /dev/temperature ] |
| then |
| (cd /dev; MAKEDEV misc || true) |
| fi |
| fi |
| |
| # one version set some incorrect permissions |
| if [ -k /var/log/watchdog ] |
| then |
| chmod 750 /var/log/watchdog |
| fi |
| |
| default_format="\ |
| # Start watchdog at boot time? 0 or 1 |
| run_watchdog=%s |
| # Load module before starting watchdog |
| watchdog_module=%s |
| # Specify additional watchdog options here (see manpage). |
| " |
| |
| # Determine whether to start watchdog at boot time. |
| db_get watchdog/run |
| case $RET in |
| false) run_watchdog=0;; |
| *) run_watchdog=1;; |
| esac |
| |
| db_get watchdog/module |
| module=$RET |
| |
| # Create an up-to-date copy of the default file. |
| { |
| # If it already exists, preserve everything except our comment |
| # and $run_watchdog. |
| if [ -f /etc/default/watchdog ] |
| then |
| printf "$default_format" '.*' '.*' \ |
| | grep -vxf - /etc/default/watchdog \ |
| | grep -v watchdog_options || true |
| fi |
| |
| # Append our comment and the current value. |
| printf "$default_format" "$run_watchdog" "\"$module\"" |
| |
| # And finally preserve the watchdog_options setting. |
| if [ -f /etc/default/watchdog ] |
| then |
| grep watchdog_options /etc/default/watchdog || true |
| fi |
| } > /etc/default/watchdog.dpkg-new |
| |
| |
| # Replace the original atomically. |
| mv /etc/default/watchdog.dpkg-new /etc/default/watchdog |
| |
| # Restart if so configured. |
| db_get watchdog/restart |
| if [ "$RET" = true ] |
| then |
| if [ -x "`which invoke-rc.d 2>/dev/null`" ]; then |
| invoke-rc.d watchdog restart |
| else |
| /etc/init.d/watchdog stop > /dev/null 2>&1 |
| /etc/init.d/watchdog start |
| fi |
| fi |
| |
| # |
| # stop debconf |
| # |
| db_stop |
| fi |
| |
| # |
| # remove old links |
| # |
| if dpkg --compare-versions "$2" lt 5.2.4-3 |
| then |
| if [ -L /etc/rc2.d/S10watchdog -a \ |
| -L /etc/rc3.d/S10watchdog -a \ |
| -L /etc/rc4.d/S10watchdog -a \ |
| -L /etc/rc5.d/S10watchdog -a \ |
| -L /etc/rc0.d/K80watchdog -a \ |
| -L /etc/rc1.d/K80watchdog -a \ |
| -L /etc/rc6.d/K80watchdog ]; then |
| update-rc.d -f watchdog remove |
| fi |
| fi |
| |
| if dpkg --compare-versions "$2" lt 5.4-11 |
| then |
| if [ -L /etc/rc2.d/S09wd_keepalive -a \ |
| -L /etc/rc3.d/S09wd_keepalive -a \ |
| -L /etc/rc4.d/S09wd_keepalive -a \ |
| -L /etc/rc5.d/S09wd_keepalive -a \ |
| -L /etc/rc0.d/K91wd_keepalive -a \ |
| -L /etc/rc1.d/K91wd_keepalive -a \ |
| -L /etc/rc6.d/K91wd_keepalive ]; then |
| update-rc.d -f wd_keepalive remove |
| fi |
| fi |
| |
| if dpkg --compare-versions "$2" lt 5.6-5 |
| then |
| if [ -f /var/lib/insserv/using-insserv ]; then |
| rm -f /etc/rc0.d/K*wd_keepalive |
| rm -f /etc/rc1.d/K*wd_keepalive |
| rm -f /etc/rc6.d/K*wd_keepalive |
| fi |
| fi |
| |
| # Not automatically added by dh_installinit (--noscripts) |
| update-rc.d watchdog defaults 89 11 >/dev/null |
| update-rc.d wd_keepalive start 09 2 3 4 5 . >/dev/null |
| |
| #DEBHELPER# |
| |