File: /var/lib/dpkg/info/kexec-tools.postinst
#! /bin/sh
# postinst script for kexec-tools
#
# see: dh_installdeb(1)
set -e
update_param() {
eval old=\"'$'$1\"
eval new=\"'$'new_$1\"
if test "$old" = "$new"; then
return
fi
if test -z "$old"; then
grep -Eq "^ *$1=" "$INITCONFFILE" || echo "$1=" \
>> "$INITCONFFILE"
fi
sed -e "s/^ *$1=.*/$1=$new/" < $INITCONFFILE > $INITCONFFILE.$$
mv -f $INITCONFFILE.$$ $INITCONFFILE
}
# summary of how this script can be called:
# * <postinst> `configure' <most-recently-configured-version>
# * <old-postinst> `abort-upgrade' <new version>
# * <conflictor's-postinst> `abort-remove' `in-favour' <package>
# <new-version>
# * <deconfigured's-postinst> `abort-deconfigure' `in-favour'
# <failed-install-package> <version> `removing'
# <conflicting-package> <version>
# for details, see http://www.debian.org/doc/debian-policy/ or
# the debian-policy package
#
case "$1" in
configure)
if [ -L /etc/rc6.d/K39kexec-load ]; then
# remove this old entry, we'll add correct one below
update-rc.d -f kexec-load remove > /dev/null || exit 0
fi
;;
install|upgrade)
;;
abort-upgrade|abort-remove|abort-deconfigure)
exit 0
;;
*)
echo "postinst called with unknown argument \`$1'" >&2
exit 1
;;
esac
# Handle debconf
. /usr/share/debconf/confmodule
INITCONFFILE=/etc/default/kexec
# We generate several files during the postinst, and we don't want
# them to be readable only by root.
umask 022
# Generate configuration file if it does not exist, using default values.
[ -r "${INITCONFFILE}" ] || {
echo Generating ${INITCONFFILE}... >&2
cat >${INITCONFFILE} <<'EOFMAGICNUMBER1234'
# Defaults for kexec initscript
# sourced by /etc/init.d/kexec and /etc/init.d/kexec-load
# Load a kexec kernel (true/false)
LOAD_KEXEC=false
# Kernel and initrd image
KERNEL_IMAGE="/vmlinuz"
INITRD="/initrd.img"
# If empty, use current /proc/cmdline
APPEND=""
# Load the default kernel from grub config (true/false)
USE_GRUB_CONFIG=false
EOFMAGICNUMBER1234
}
# Add USE_GRUB_CONFIG parameter to config file if it does not exist
. ${INITCONFFILE}
if test -z "$USE_GRUB_CONFIG" ; then
echo "" >> ${INITCONFFILE}
echo "# Load the default kernel from grub config (true/false)" >> ${INITCONFFILE}
echo "USE_GRUB_CONFIG=" >> ${INITCONFFILE}
fi
# Detect if system is configured to place kernel link under /boot instead of /
# If yes, update kernel and initrd image locations in config file
if [ -f /etc/kernel-img.conf ]; then
LINK_IN_BOOT=`grep link_in_boot /etc/kernel-img.conf | cut -f2 -d= | tr -d '[:blank:]'`
if [ "$LINK_IN_BOOT" = "yes" ]; then
sed -e "s/KERNEL_IMAGE=\"\/vmlinuz\"/KERNEL_IMAGE=\"\/boot\/vmlinuz\"/" < ${INITCONFFILE} > ${INITCONFFILE}.$$
mv -f ${INITCONFFILE}.$$ $INITCONFFILE
sed -e "s/INITRD=\"\/initrd.img\"/INITRD=\"\/boot\/initrd.img\"/" < ${INITCONFFILE} > ${INITCONFFILE}.$$
mv -f ${INITCONFFILE}.$$ $INITCONFFILE
else
sed -e "s/KERNEL_IMAGE=\"\/boot\/vmlinuz\"/KERNEL_IMAGE=\"\/vmlinuz\"/" < ${INITCONFFILE} > ${INITCONFFILE}.$$
mv -f ${INITCONFFILE}.$$ $INITCONFFILE
sed -e "s/INITRD=\"\/boot\/initrd.img\"/INITRD=\"\/initrd.img\"/" < ${INITCONFFILE} > ${INITCONFFILE}.$$
mv -f ${INITCONFFILE}.$$ $INITCONFFILE
fi
fi
# Determine if vmlinux is actually used and adjust INITCONFFILE
if [ -f /boot/vmlinux -o -f /vmlinux ]; then
sed -e "s/vmlinuz/vmlinux/" -i ${INITCONFFILE}
fi
# ------------------------- Debconf questions start ---------------------
db_get kexec-tools/load_kexec || RET=false
new_LOAD_KEXEC="${RET}"
update_param LOAD_KEXEC
if [ -d /boot/grub ]
then
db_get kexec-tools/use_grub_config
new_USE_GRUB_CONFIG="${RET}"
else
new_USE_GRUB_CONFIG="false"
db_set kexec-tools/use_grub_config "false"
fi
update_param USE_GRUB_CONFIG
# ------------------------- Debconf questions end ---------------------
# Automatically added by dh_installdeb/13.6ubuntu1
dpkg-maintscript-helper rm_conffile /etc/default/kexec 1:2.0.16-1 -- "$@"
dpkg-maintscript-helper rm_conffile /etc/default/grub.d/kexec-tools.cfg -- "$@"
# End automatically added section
# Automatically added by dh_installinit/13.6ubuntu1
if [ "$1" = "configure" ] || [ "$1" = "abort-upgrade" ] || [ "$1" = "abort-deconfigure" ] || [ "$1" = "abort-remove" ] ; then
if [ -z "${DPKG_ROOT:-}" ] && [ -x "/etc/init.d/kexec" ]; then
update-rc.d kexec defaults >/dev/null
invoke-rc.d kexec start || exit 1
fi
fi
# End automatically added section
# Automatically added by dh_installinit/13.6ubuntu1
if [ "$1" = "configure" ] || [ "$1" = "abort-upgrade" ] || [ "$1" = "abort-deconfigure" ] || [ "$1" = "abort-remove" ] ; then
if [ -z "${DPKG_ROOT:-}" ] && [ -x "/etc/init.d/kexec-load" ]; then
update-rc.d kexec-load defaults >/dev/null
invoke-rc.d kexec-load start || exit 1
fi
fi
# End automatically added section
exit 0