grub2/0267-util-grub.d-30_os-prober.in-Support-btrrfs-linux-pro.patch
2013-06-07 14:03:56 -04:00

55 lines
1.9 KiB
Diff

From ae5570799e55cdbd6969ac88a20b4039b10b2b16 Mon Sep 17 00:00:00 2001
From: Fedora Ninjas <grub2-owner@fedoraproject.org>
Date: Fri, 5 Apr 2013 14:55:37 +0200
Subject: [PATCH 267/471] * util/grub.d/30_os-prober.in: Support btrrfs
linux-prober extensions.
---
ChangeLog | 4 ++++
util/grub.d/30_os-prober.in | 11 ++++++++++-
2 files changed, 14 insertions(+), 1 deletion(-)
diff --git a/ChangeLog b/ChangeLog
index 2f2f7a3..954d85f 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2013-04-05 Fedora Ninjas <grub2-owner@fedoraproject.org>
+
+ * util/grub.d/30_os-prober.in: Support btrrfs linux-prober extensions.
+
2013-04-05 Vladimir Serbinenko <phcoder@gmail.com>
Use GRUB_PROPERLY_ALIGNED_ARRAY in grub-core/disk/cryptodisk.c and
diff --git a/util/grub.d/30_os-prober.in b/util/grub.d/30_os-prober.in
index bf47dc3..e20d8b3 100644
--- a/util/grub.d/30_os-prober.in
+++ b/util/grub.d/30_os-prober.in
@@ -112,6 +112,11 @@ for OS in ${OSPROBED} ; do
LONGNAME="`echo ${OS} | cut -d ':' -f 2 | tr '^' ' '`"
LABEL="`echo ${OS} | cut -d ':' -f 3 | tr '^' ' '`"
BOOT="`echo ${OS} | cut -d ':' -f 4`"
+ BTRFS="`echo ${OS} | cut -d ':' -f 5`"
+ if [ "x$BTRFS" = "xbtrfs" ]; then
+ BTRFSuuid="`echo ${OS} | cut -d ':' -f 6`"
+ BTRFSsubvol="`echo ${OS} | cut -d ':' -f 7`"
+ fi
if [ -z "${LONGNAME}" ] ; then
LONGNAME="${LABEL}"
@@ -145,7 +150,11 @@ EOF
EOF
;;
linux)
- LINUXPROBED="`linux-boot-prober ${DEVICE} 2> /dev/null | tr ' ' '^' | paste -s -d ' '`"
+ if [ "x$BTRFS" = "xbtrfs" ]; then
+ LINUXPROBED="`linux-boot-prober btrfs ${BTRFSuuid} ${BTRFSsubvol} 2> /dev/null | tr ' ' '^' | paste -s -d ' '`"
+ else
+ LINUXPROBED="`linux-boot-prober ${DEVICE} 2> /dev/null | tr ' ' '^' | paste -s -d ' '`"
+ fi
prepare_boot_cache=
boot_device_id=
is_first_entry=true
--
1.8.2.1