livecd-tools/livecd-tools-21.1.efi.grub.cfg.patch
Konstantin Vlasov b9e82b7405 Boot menu fixes (both isolinux and Grub2/EFI)
1. Significantly redesigned the grub2 menu for EFI boot: made it similar to the isolinux menu; more user-friendly product name; returned graphical theme; etc.
2. Fixed non-displaying plymouth in isolinux menu items.
3. Disabled plymouth for 'basic graphics' mode.
2014-09-25 18:42:03 +04:00

106 lines
4.1 KiB
Diff

diff --git a/imgcreate/live.py b/imgcreate/live.py
index 634088d..a23efa7 100755
--- a/imgcreate/live.py
+++ b/imgcreate/live.py
@@ -760,28 +760,37 @@ menu end
def __get_basic_efi_config(self, **args):
return """
-set default="1"
+set default="0"
function load_video {
insmod efi_gop
insmod efi_uga
- insmod video_bochs
- insmod video_cirrus
- insmod all_video
}
load_video
set gfxpayload=keep
insmod gzio
insmod part_gpt
+insmod part_msdos
insmod ext2
-
+insmod iso9660
+
+set gfxmode=1024x768,1024x600,800x600,640x480
+insmod gfxterm
+insmod gettext
+terminal_output gfxterm
+insmod gfxmenu
+loadfont /EFI/BOOT/themes/rosa/dejavu_sans_bold_14.pf2
+loadfont /EFI/BOOT/themes/rosa/dejavu_sans_mono_11.pf2
+loadfont /EFI/BOOT/themes/rosa/terminal_font_11.pf2
+insmod png
+set theme=/EFI/BOOT/themes/rosa/theme.txt
+export theme
+background_image -m stretch /EFI/BOOT/themes/rosa/terminal_background.png
set timeout=%(timeout)d
-### END /etc/grub.d/00_header ###
search --no-floppy --set=root -l '%(isolabel)s'
-### BEGIN /etc/grub.d/10_linux ###
""" %args
def __get_efi_image_stanza(self, **args):
@@ -789,7 +798,7 @@ search --no-floppy --set=root -l '%(isolabel)s'
args["rootlabel"] = "live:LABEL=%(fslabel)s" % args
else:
args["rootlabel"] = "CDLABEL=%(fslabel)s" % args
- return """menuentry '%(long)s' --class fedora --class gnu-linux --class gnu --class os {
+ return """menuentry '%(long)s' --class rosa --class gnu-linux --class gnu --class os {
linuxefi /isolinux/vmlinuz%(index)s root=%(rootlabel)s %(liveargs)s %(extra)s
initrdefi /isolinux/initrd%(index)s.img
}
@@ -803,30 +812,32 @@ search --no-floppy --set=root -l '%(isolabel)s'
cfg = ""
+ if os.path.exists(self._instroot + "/etc/system-release"):
+ long = subprocess.check_output("echo -n `sed 's, release .*$,,g' /etc/system-release`", shell=True)
+ else:
+ long = self.product
+
for index in range(0, 9):
# we don't support xen kernels
if os.path.exists("%s/EFI/BOOT/xen%d.gz" %(isodir, index)):
continue
+ cfg += """menuentry 'Boot from local drive' {
+ reboot
+}
+"""
cfg += self.__get_efi_image_stanza(fslabel = self.fslabel,
liveargs = kernel_options,
- long = "Start " + self.product,
- extra = "", index = index)
- if checkisomd5:
- cfg += self.__get_efi_image_stanza(fslabel = self.fslabel,
- liveargs = kernel_options,
- long = "Test this media & start " + self.product,
- extra = "rd.live.check",
- index = index)
- cfg += """
-submenu 'Troubleshooting -->' {
-"""
+ long = "Start " + long,
+ extra = "rhgb splash=silent logo.nologo", index = index)
cfg += self.__get_efi_image_stanza(fslabel = self.fslabel,
liveargs = kernel_options,
- long = "Start " + self.product + " in basic graphics mode",
- extra = "nomodeset", index = index)
+ long = "Install " + long,
+ extra = "install rhgb splash=silent logo.nologo", index = index)
+ cfg += self.__get_efi_image_stanza(fslabel = self.fslabel,
+ liveargs = kernel_options,
+ long = "Install " + long + " in basic graphics mode",
+ extra = "install nomodeset plymouth.enable=0", index = index)
- cfg+= """}
-"""
break
return cfg