grub2/grub2-SUSE-Add-the-t-hotkey.patch
Dirk Mueller d3e5cb788a Accepting request 392478 from home:algraf:branches:Base:System
- Add support for "t" hotkey to switch to text mode (bsc#976836)
  * added grub2-SUSE-Add-the-t-hotkey.patch
- Add support for hidden menu entries (bsc#976836)
  * added grub2-Add-hidden-menu-entries.patch

OBS-URL: https://build.opensuse.org/request/show/392478
OBS-URL: https://build.opensuse.org/package/show/Base:System/grub2?expand=0&rev=212
2016-04-29 18:24:44 +00:00

69 lines
1.8 KiB
Diff

From f6be3d41e24e685846dfc90ac1ca447501813687 Mon Sep 17 00:00:00 2001
From: Alexander Graf <agraf@suse.de>
Date: Tue, 26 Apr 2016 15:59:03 +0200
Subject: [PATCH] SUSE: Add the "t" hotkey
While graphical output is fancy and nice, in some environments (EFI) we can
only have fancy graphical on frame buffer _or_ ugly serial on any output.
To give the user a nicely graphical screen in the default case, but still
allow them to get their boot menu on the serial console, let's add a new
hidden option "t" that switches the output device back to the firmware default.
Signed-off-by: Alexander Graf <agraf@suse.de>
---
v1 -> v2
- use hiddenentry instead of --hidden
diff --git a/Makefile.util.def b/Makefile.util.def
index f9caccb..d94de92 100644
--- a/Makefile.util.def
+++ b/Makefile.util.def
@@ -504,6 +504,12 @@ script = {
installdir = grubconf;
};
+script = {
+ name = '95_textmode';
+ common = util/grub.d/95_textmode.in;
+ installdir = grubconf;
+};
+
program = {
mansection = 1;
name = grub-mkrescue;
diff --git a/util/grub.d/00_header.in b/util/grub.d/00_header.in
index 93a9023..b6ec7e2 100644
--- a/util/grub.d/00_header.in
+++ b/util/grub.d/00_header.in
@@ -184,6 +184,9 @@ EOF
fi
fi
+ if [ -d /sys/firmware/efi ]; then
+ echo 'echo "Please press 't' to show the boot menu on this console"'
+ fi
cat << EOF
set gfxmode=${GRUB_GFXMODE}
load_video
diff --git a/util/grub.d/95_textmode.in b/util/grub.d/95_textmode.in
new file mode 100644
index 0000000..fa48cf9
--- /dev/null
+++ b/util/grub.d/95_textmode.in
@@ -0,0 +1,11 @@
+#!/bin/sh
+
+if [ -d /sys/firmware/efi ]; then
+ echo "
+ # On EFI systems we can only have graphics *or* serial, so allow the user
+ # to switch between the two
+ hiddenentry 'Text mode' --hotkey 't' {
+ set textmode=true
+ terminal_output console
+ }"
+fi