55 lines
1.9 KiB
Diff
55 lines
1.9 KiB
Diff
|
From b470ffd22e43acc7c11231180187a720efd88de1 Mon Sep 17 00:00:00 2001
|
||
|
From: Keshav Amburay <the.ridikulus.rat@gmail.com>
|
||
|
Date: Sat, 5 Apr 2014 20:40:51 -0400
|
||
|
Subject: [PATCH] 10_linux: Detect Arch Linux main and fallback initramfs
|
||
|
images
|
||
|
|
||
|
---
|
||
|
util/grub.d/10_linux.in | 16 +++++++++++++++-
|
||
|
1 file changed, 15 insertions(+), 1 deletion(-)
|
||
|
|
||
|
diff --git a/util/grub.d/10_linux.in b/util/grub.d/10_linux.in
|
||
|
index 00d1931..7d4086b 100644
|
||
|
--- a/util/grub.d/10_linux.in
|
||
|
+++ b/util/grub.d/10_linux.in
|
||
|
@@ -81,6 +81,8 @@ linux_entry ()
|
||
|
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
|
||
|
@@ -180,7 +182,7 @@ while [ "x$list" != "x" ] ; do
|
||
|
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}"
|
||
|
|
||
|
@@ -236,6 +238,18 @@ while [ "x$list" != "x" ] ; do
|
||
|
|
||
|
linux_entry "${OS}" "${version}" advanced \
|
||
|
"${GRUB_CMDLINE_LINUX} ${GRUB_CMDLINE_LINUX_DEFAULT}"
|
||
|
+
|
||
|
+ if test -e "${dirname}/initramfs-${version}-fallback.img" ; then
|
||
|
+ initrd="initramfs-${version}-fallback.img"
|
||
|
+
|
||
|
+ if test -n "${initrd}" ; then
|
||
|
+ gettext_printf "Found fallback initramfs image: %s\n" "${dirname}/${initrd}" >&2
|
||
|
+ fi
|
||
|
+
|
||
|
+ linux_entry "${OS}" "${version}" fallback \
|
||
|
+ "${GRUB_CMDLINE_LINUX} ${GRUB_CMDLINE_LINUX_DEFAULT}"
|
||
|
+ fi
|
||
|
+
|
||
|
if [ "x${GRUB_DISABLE_RECOVERY}" != "xtrue" ]; then
|
||
|
linux_entry "${OS}" "${version}" recovery \
|
||
|
"single ${GRUB_CMDLINE_LINUX}"
|
||
|
--
|
||
|
1.9.1
|
||
|
|