From e8776cdc56be26520efb4007c319d2356a30055a Mon Sep 17 00:00:00 2001 From: Martin Whitaker Date: Mon, 9 Apr 2018 23:18:39 +0100 Subject: GRUB2 at_keyboard is unreliable on real hardware, so don't use it. Currently I don't see any way to reliably support different keyboard layouts in GRUB2, so remove all support for that. The keyboard menu is still useful for selecting the keyboard layout when using the minimal ISO example. --- lib/MGA/DrakISO/BuildBoot.pm | 21 +++++---------------- 1 file changed, 5 insertions(+), 16 deletions(-) (limited to 'lib') diff --git a/lib/MGA/DrakISO/BuildBoot.pm b/lib/MGA/DrakISO/BuildBoot.pm index 51b3c65..4191243 100644 --- a/lib/MGA/DrakISO/BuildBoot.pm +++ b/lib/MGA/DrakISO/BuildBoot.pm @@ -148,8 +148,7 @@ sub prepare_iso_bootloader { } # If the user has provided the necessary configuration data, construct - # the bootloader language and keyboard selection submenus and copy the - # grub2 keyboard layout files. + # the bootloader language and keyboard selection submenus. my $add_lang_menu = defined $build->{media}{bootloader_langs}; my $add_kbd_menu = defined $build->{media}{bootloader_kbds}; if ($add_lang_menu) { @@ -170,10 +169,6 @@ sub prepare_iso_bootloader { -e $kbd_names or die "ERROR: cannot find bootloader keyboard name file $kbd_names\n"; my @kbds = group_by2(eval(cat_($kbd_names))) or die "ERROR: error in keyboard name file $kbd_names\n"; - my $layouts = dirname($kbd_names) . '/layouts'; - -d $layouts or die "ERROR: cannot find bootloader keyboard map directory $layouts\n"; - cp_f($layouts, $grub2_dir); - MDK::Common::File::output_utf8($grub2_dir . '/kbd-menu.cfg', build_kbd_menu_cfg(\@kbds)); } @@ -289,9 +284,8 @@ sub prepare_iso_bootloader { sub build_grub2_eltorito_img { my ($output) = @_; - my @modules = qw(biosdisk iso9660 fat part_msdos all_video font png gfxterm gfxmenu - keylayouts at_keyboard usb_keyboard configfile echo gettext - linux linux16 ls search test); + my @modules = qw(biosdisk iso9660 fat part_msdos all_video font gfxterm gfxmenu png + configfile echo gettext linux linux16 ls search test); run_('grub2-mkimage', '--output', $output, @@ -304,9 +298,8 @@ sub build_grub2_eltorito_img { sub build_grub2_boot_efi { my ($output, $format) = @_; - my @modules = qw(iso9660 fat part_msdos all_video font png gfxterm gfxmenu - keylayouts at_keyboard usb_keyboard configfile echo gettext - linux linux16 ls search test); + my @modules = qw(iso9660 fat part_msdos all_video font gfxterm gfxmenu png + configfile echo gettext linux linux16 ls search test); run_('grub2-mkimage', '--output', $output, @@ -463,12 +456,8 @@ sub build_kbd_menu_cfg { my ($kbds) = @_; join("\n", "function set_keyboard {", - " if [ -z \$kbd ] ; then", - " terminal_input at_keyboard", - " fi", " set kbd=\$1", " set lkbd=", - " keymap \$grub2/layouts/\$kbd.gkb", " configfile \$grub2/grub.cfg", "}", "", -- cgit v1.2.1