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.
74 lines
2.5 KiB
74 lines
2.5 KiB
1 year ago
|
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||
|
From: Fedora Ninjas <grub2-owner@fedoraproject.org>
|
||
|
Date: Tue, 8 Aug 2023 05:44:48 -0400
|
||
|
Subject: [PATCH] grub-mkconfig dont overwrite BLS cmdline if BLSCFG
|
||
|
|
||
|
If GRUB_ENABLE_BLSCFG is true, running grub2-mkconfig will not
|
||
|
overwrite kernel cmdline in BLS snippets with what is in
|
||
|
GRUB_CMDLINE_LINUX in /etc/default/grub. Update can be forced by
|
||
|
sending new arg --update-bls-cmdline
|
||
|
|
||
|
Signed-off-by: mkl <mlewando@redhat.com>
|
||
|
---
|
||
|
util/grub-mkconfig.in | 10 ++++++++++
|
||
|
util/grub.d/10_linux.in | 4 +++-
|
||
|
2 files changed, 13 insertions(+), 1 deletion(-)
|
||
|
|
||
|
diff --git a/util/grub-mkconfig.in b/util/grub-mkconfig.in
|
||
|
index 520a672cd2c8..30a2d097823d 100644
|
||
|
--- a/util/grub-mkconfig.in
|
||
|
+++ b/util/grub-mkconfig.in
|
||
|
@@ -51,6 +51,7 @@ export TEXTDOMAIN=@PACKAGE@
|
||
|
export TEXTDOMAINDIR="@localedir@"
|
||
|
|
||
|
export GRUB_GRUBENV_UPDATE="yes"
|
||
|
+export GRUB_UPDATE_BLS_CMDLINE="yes"
|
||
|
|
||
|
. "${pkgdatadir}/grub-mkconfig_lib"
|
||
|
|
||
|
@@ -62,6 +63,7 @@ usage () {
|
||
|
echo
|
||
|
print_option_help "-o, --output=$(gettext FILE)" "$(gettext "output generated config to FILE [default=stdout]")"
|
||
|
print_option_help "--no-grubenv-update" "$(gettext "do not update variables in the grubenv file")"
|
||
|
+ print_option_help "--update-bls-cmdline" "$(gettext "overwrite BLS cmdline args with default args")"
|
||
|
print_option_help "-h, --help" "$(gettext "print this message and exit")"
|
||
|
print_option_help "-V, --version" "$(gettext "print the version information and exit")"
|
||
|
echo
|
||
|
@@ -100,6 +102,9 @@ do
|
||
|
--no-grubenv-update)
|
||
|
GRUB_GRUBENV_UPDATE="no"
|
||
|
;;
|
||
|
+ --update-bls-cmdline)
|
||
|
+ bls_cmdline_update=true
|
||
|
+ ;;
|
||
|
-*)
|
||
|
gettext_printf "Unrecognized option \`%s'\n" "$option" 1>&2
|
||
|
usage
|
||
|
@@ -167,6 +172,11 @@ fi
|
||
|
|
||
|
eval "$("${grub_get_kernel_settings}")" || true
|
||
|
|
||
|
+if [ "x${GRUB_ENABLE_BLSCFG}" = "xtrue" ] && \
|
||
|
+ [ "x${bls_cmdline_update}" != "xtrue" ]; then
|
||
|
+ GRUB_UPDATE_BLS_CMDLINE="no"
|
||
|
+fi
|
||
|
+
|
||
|
if [ "x${GRUB_DISABLE_UUID}" = "xtrue" ]; then
|
||
|
if [ -z "${GRUB_DISABLE_LINUX_UUID}" ]; then
|
||
|
GRUB_DISABLE_LINUX_UUID="true"
|
||
|
diff --git a/util/grub.d/10_linux.in b/util/grub.d/10_linux.in
|
||
|
index 4795a63b4ce6..76fc21fb6528 100644
|
||
|
--- a/util/grub.d/10_linux.in
|
||
|
+++ b/util/grub.d/10_linux.in
|
||
|
@@ -265,7 +265,9 @@ if [ -z "\${kernelopts}" ]; then
|
||
|
fi
|
||
|
EOF
|
||
|
|
||
|
- if [ "x${GRUB_GRUBENV_UPDATE}" = "xyes" ]; then
|
||
|
+ if [ "x${GRUB_UPDATE_BLS_CMDLINE}" = "xyes" ] || \
|
||
|
+ ( [ -w /etc/kernel ] && [[ ! -f /etc/kernel/cmdline ]] && \
|
||
|
+ [ "x${GRUB_GRUBENV_UPDATE}" = "xyes" ] ); then
|
||
|
update_bls_cmdline
|
||
|
fi
|
||
|
|