grub2/debian/patches/mkconfig_mid_upgrade.patch
2013-12-20 11:09:12 +00:00

31 lines
1.1 KiB
Diff

Description: Bail out if trying to run grub-mkconfig during upgrade to 2.00
Since files in /etc/grub.d/ are conffiles, they are not put in place until
grub-common is configured, meaning that they may be out of sync with the
parts of grub-mkconfig that reside in /usr/. In GRUB 1.99,
/etc/grub.d/00_header contained a reference to ${GRUB_PREFIX}/video.lst.
This and other code from 1.99 breaks with 2.00's grub-mkconfig. Deferring
this to when grub-PLATFORM.postinst eventually runs is safe and avoids this
problem.
Author: Colin Watson <cjwatson@ubuntu.com>
Forwarded: no
Last-Update: 2013-12-20
Index: b/util/grub-mkconfig.in
===================================================================
--- a/util/grub-mkconfig.in
+++ b/util/grub-mkconfig.in
@@ -107,6 +107,13 @@
esac
done
+if fgrep -qs '${GRUB_PREFIX}/video.lst' "${grub_mkconfig_dir}/00_header"; then
+ echo "GRUB >= 2.00 has been unpacked but not yet configured." >&2
+ echo "grub-mkconfig will not work until the upgrade is complete." >&2
+ echo "It should run later as part of configuring the new GRUB packages." >&2
+ exit 0
+fi
+
if [ "x$EUID" = "x" ] ; then
EUID=`id -u`
fi