You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
47 lines
1.3 KiB
47 lines
1.3 KiB
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 |
|
From: Matthew Garrett <matthew.garrett@nebula.com> |
|
Date: Wed, 12 Jun 2013 11:51:49 -0400 |
|
Subject: [PATCH] Add support for UEFI operating systems returned by os-prober |
|
|
|
os-prober returns UEFI operating systems in the form: |
|
|
|
path:long-name:name |
|
|
|
where path is the path under the EFI directory on the ESP. This is in |
|
contrast to legacy OSes, where path is the device string. Handle this case. |
|
--- |
|
util/grub.d/30_os-prober.in | 22 ++++++++++++++++++---- |
|
1 file changed, 18 insertions(+), 4 deletions(-) |
|
|
|
diff --git a/util/grub.d/30_os-prober.in b/util/grub.d/30_os-prober.in |
|
index 6f38c82a554..9f955abb788 100644 |
|
--- a/util/grub.d/30_os-prober.in |
|
+++ b/util/grub.d/30_os-prober.in |
|
@@ -322,9 +322,23 @@ EOF |
|
EOF |
|
;; |
|
*) |
|
- echo -n " " |
|
- # TRANSLATORS: %s is replaced by OS name. |
|
- gettext_printf "%s is not yet supported by grub-mkconfig.\n" "${LONGNAME}" >&2 |
|
- ;; |
|
+ case ${DEVICE} in |
|
+ *.efi) |
|
+ cat << EOF |
|
+menuentry '$(echo "${LONGNAME}" | grub_quote)' { |
|
+EOF |
|
+ save_default_entry | grub_add_tab |
|
+ cat << EOF |
|
+ chainloader /EFI/${DEVICE} |
|
+ boot |
|
+} |
|
+EOF |
|
+ ;; |
|
+ *) |
|
+ echo -n " " |
|
+ # TRANSLATORS: %s is replaced by OS name. |
|
+ gettext_printf "%s is not yet supported by grub-mkconfig.\n" "${LONGNAME}" >&2 |
|
+ ;; |
|
+ esac |
|
esac |
|
done
|
|
|