core/grub/0003-10_linux-detect-archlinux-initramfs.patch

45 lines
1.6 KiB
Diff
Raw Normal View History

2014-09-05 19:23:29 +08:00
diff --git a/util/grub.d/10_linux.in b/util/grub.d/10_linux.in
2017-10-03 19:48:31 +08:00
index f5d3e78..ef59c8c 100644
2014-09-05 19:23:29 +08:00
--- a/util/grub.d/10_linux.in
+++ b/util/grub.d/10_linux.in
2017-10-03 19:48:31 +08:00
@@ -83,6 +83,8 @@ linux_entry ()
2014-09-05 19:23:29 +08:00
case $type in
recovery)
title="$(gettext_printf "%s, with Linux %s (recovery mode)" "${os}" "${version}")" ;;
+ fallback)
+ title="$(gettext_printf "%s, with Linux %s (fallback initramfs)" "${os}" "${version}")" ;;
*)
title="$(gettext_printf "%s, with Linux %s" "${os}" "${version}")" ;;
esac
2017-10-03 19:48:31 +08:00
@@ -186,7 +188,7 @@ while [ "x$list" != "x" ] ; do
2014-09-05 19:23:29 +08:00
basename=`basename $linux`
dirname=`dirname $linux`
rel_dirname=`make_system_path_relative_to_its_root $dirname`
- version=`echo $basename | sed -e "s,^[^0-9]*-,,g"`
+ version=`echo $basename | sed -e "s,vmlinuz-,,g"`
alt_version=`echo $version | sed -e "s,\.old$,,g"`
linux_root_device_thisversion="${LINUX_ROOT_DEVICE}"
2017-10-03 19:48:31 +08:00
@@ -248,6 +250,18 @@ while [ "x$list" != "x" ] ; do
2014-09-05 19:23:29 +08:00
linux_entry "${OS}" "${version}" advanced \
"${GRUB_CMDLINE_LINUX} ${GRUB_CMDLINE_LINUX_DEFAULT}"
2017-10-03 19:48:31 +08:00
+
2014-09-05 19:23:29 +08:00
+ if test -e "${dirname}/initramfs-${version}-fallback.img" ; then
+ initrd="initramfs-${version}-fallback.img"
2017-10-03 19:48:31 +08:00
+
2014-09-05 19:23:29 +08:00
+ if test -n "${initrd}" ; then
2017-10-03 19:48:31 +08:00
+ gettext_printf "Found fallback initrd image(s) in %s:%s\n" "${dirname}" "${initrd_extra} ${initrd}" >&2
2014-09-05 19:23:29 +08:00
+ fi
2017-10-03 19:48:31 +08:00
+
2014-09-05 19:23:29 +08:00
+ linux_entry "${OS}" "${version}" fallback \
2017-10-03 19:48:31 +08:00
+ "${GRUB_CMDLINE_LINUX} ${GRUB_CMDLINE_LINUX_DEFAULT}"
2014-09-05 19:23:29 +08:00
+ fi
2017-10-03 19:48:31 +08:00
+
2014-09-05 19:23:29 +08:00
if [ "x${GRUB_DISABLE_RECOVERY}" != "xtrue" ]; then
linux_entry "${OS}" "${version}" recovery \
"single ${GRUB_CMDLINE_LINUX}"
--
2017-10-03 19:48:31 +08:00
2.9.2
2014-09-05 19:23:29 +08:00