From 1389a13150af14e7b762a26a1996553adcfd91f5 Mon Sep 17 00:00:00 2001
From: Lars Frost <larsf@fsmpi.rwth-aachen.de>
Date: Wed, 5 Oct 2022 18:01:49 +0200
Subject: [PATCH] Fix and improve language selection in grub

---
 grub-cfg/grub.cfg    |  2 +-
 grub-cfg/kernels.cfg | 39 +++++++++++++++++++++------------------
 2 files changed, 22 insertions(+), 19 deletions(-)

diff --git a/grub-cfg/grub.cfg b/grub-cfg/grub.cfg
index b387cee..2a9967d 100644
--- a/grub-cfg/grub.cfg
+++ b/grub-cfg/grub.cfg
@@ -279,7 +279,7 @@ function boot_menu {
     }
     show_timezones
     show_keymaps
-    # show_languages
+    show_languages
     default=3
 }
 
diff --git a/grub-cfg/kernels.cfg b/grub-cfg/kernels.cfg
index 88394d3..4bb82ec 100644
--- a/grub-cfg/kernels.cfg
+++ b/grub-cfg/kernels.cfg
@@ -41,22 +41,25 @@ else
             title="$kopt";
         fi;
     done
-    menuentry "Mit Open-Source Treibern starten" --class=@DIST_NAME@.@ARCH@ "$title" {# set arguments above with the editor
-        source /boot/grub/locales/de_DE
-        linux /boot/vmlinuz-$2 driver=free nouveau.modeset=1 i915.modeset=1 radeon.modeset=1
-        initrd /boot/amd_ucode.img /boot/intel_ucode.img /boot/initramfs-@ARCH@.img
-    }
-    menuentry "Mit proprietären Treibern starten" --class=@DIST_NAME@.@ARCH@ "$title" {# set arguments above with the editor
-        source /boot/grub/locales/de_DE
-        linux /boot/vmlinuz-$2 driver=nonfree nouveau.modeset=0 i915.modeset=1 radeon.modeset=1
-        initrd /boot/amd_ucode.img /boot/intel_ucode.img /boot/initramfs-@ARCH@.img
-    }
-    menuentry "Boot with open source drivers" --class=@DIST_NAME@.@ARCH@ "$title" {# set arguments above with the editor
-        linux /boot/vmlinuz-$2 driver=free nouveau.modeset=1 i915.modeset=1 radeon.modeset=1
-        initrd /boot/amd_ucode.img /boot/intel_ucode.img /boot/initramfs-@ARCH@.img
-    }
-    menuentry "Boot with proprietary drivers" --class=@DIST_NAME@.@ARCH@ "$title" {# set arguments above with the editor
-        linux /boot/vmlinuz-$2 driver=nonfree nouveau.modeset=0 i915.modeset=1 radeon.modeset=1
-        initrd /boot/amd_ucode.img /boot/intel_ucode.img /boot/initramfs-@ARCH@.img
-    }
+    if [ "x$def_bootlang" = "xde_DE" ]; then
+      menuentry "Mit Open-Source Treibern starten" --class=@DIST_NAME@.@ARCH@ "$title" {# set arguments above with the editor
+          source /boot/grub/locales/de_DE
+          linux /boot/vmlinuz-$2 driver=free nouveau.modeset=1 i915.modeset=1 radeon.modeset=1
+          initrd /boot/amd_ucode.img /boot/intel_ucode.img /boot/initramfs-@ARCH@.img
+      }
+      menuentry "Mit proprietären Treibern starten" --class=@DIST_NAME@.@ARCH@ "$title" {# set arguments above with the editor
+          source /boot/grub/locales/de_DE
+          linux /boot/vmlinuz-$2 driver=nonfree nouveau.modeset=0 i915.modeset=1 radeon.modeset=1
+          initrd /boot/amd_ucode.img /boot/intel_ucode.img /boot/initramfs-@ARCH@.img
+      }
+    else
+      menuentry "Boot with open source drivers" --class=@DIST_NAME@.@ARCH@ "$title" {# set arguments above with the editor
+          linux /boot/vmlinuz-$2 driver=free nouveau.modeset=1 i915.modeset=1 radeon.modeset=1
+          initrd /boot/amd_ucode.img /boot/intel_ucode.img /boot/initramfs-@ARCH@.img
+      }
+      menuentry "Boot with proprietary drivers" --class=@DIST_NAME@.@ARCH@ "$title" {# set arguments above with the editor
+          linux /boot/vmlinuz-$2 driver=nonfree nouveau.modeset=0 i915.modeset=1 radeon.modeset=1
+          initrd /boot/amd_ucode.img /boot/intel_ucode.img /boot/initramfs-@ARCH@.img
+      }
+    fi
 fi
-- 
GitLab