return 1
esac
- for KPREFIX in "" "2.6-" ; do # iterate through the kernel prefixes,
- # currently "" and "2.6-"
- if package_exists linux-image-${KPREFIX}${KARCH} ; then
- echo ${KPREFIX}${KARCH}
- return 0
- fi
+ local KPACKAGE
+ KPACKAGE=linux-image-"${KPREFIX}${KARCH}"
+ if package_exists "$KPACKAGE"; then
+ echo "${KPREFIX}${KARCH}"
+ return 0
+ fi
- done
+ echo "Expected kernel package $KPACKAGE not found" >&2
+ return 1
}
# install kernel packages {{{
echo "Error: grub-install not available. (Error while installing grub package?)" >&2
return 1
fi
+ if ! [ -x "$(command -v update-grub)" ] ; then
+ echo "Error: update-grub not available. (Error while installing grub package?)" >&2
+ return 1
+ fi
if [ -n "$SELECTED_PARTITIONS" ] ; then # using sw-raid
for device in $SELECTED_PARTITIONS ; do
done
rm -f /boot/grub/device.map
else
- echo "Installing grub on ${GRUB}:"
- case "$RELEASE" in
- lenny|squeeze|wheezy)
- local grub_dev
- grub_dev="$(readlink -f "${GRUB}")"
- if ! grub-install --no-floppy "${grub_dev}" ; then
- echo "Error: failed to execute 'grub-install --no-floppy ${grub_dev}'." >&2
- exit 1
- fi
- rm -f /boot/grub/device.map
- ;;
- *)
- echo "(hd0) ${GRUB}" > /boot/grub/device.map
- if ! grub-install "(hd0)" ; then
- echo "Error: failed to execute 'grub-install (hd0)'." >&2
- exit 1
- fi
- rm /boot/grub/device.map
- ;;
- esac
+ echo "Installing grub on ${GRUB}:"
+ echo "(hd0) ${GRUB}" > /boot/grub/device.map
+ if ! grub-install "(hd0)" ; then
+ echo "Error: failed to execute 'grub-install (hd0)'." >&2
+ exit 1
+ fi
+ rm /boot/grub/device.map
fi
echo "Adjusting grub configuration for use on ${GRUB}."
- # finally install grub
- if [ -x /usr/sbin/update-grub ] ; then
- UPDATEGRUB='/usr/sbin/update-grub'
- elif [ -x /sbin/update-grub ] ; then
- UPDATEGRUB='/sbin/update-grub'
- else
- echo "Error: update-grub not available, can not execute it." >&2
- return 1
- fi
-
if [ -n "${BOOT_APPEND}" ] ; then
echo "Adding BOOT_APPEND configuration ['${BOOT_APPEND}'] to /etc/default/grub."
sed -i "/GRUB_CMDLINE_LINUX_DEFAULT/ s#\"\$# ${BOOT_APPEND}\"#" /etc/default/grub
mountpoint /boot/efi &>/dev/null && umount /boot/efi
- $UPDATEGRUB
+ # finally install grub. Existence of update-grub is checked above.
+ update-grub
}
# }}}