From 482a2825c47c4fd28a18beb279a3e826461bf878 Mon Sep 17 00:00:00 2001 From: Simon de Vlieger Date: Wed, 10 Dec 2025 07:50:55 +0100 Subject: [PATCH] spec: own `/etc/sysconfig/kernel` `grubby` reads the `/etc/sysconfig/kernel` file which isn't owned by the package, nor created by it. This leads to all image build tooling having to take special care to write this file [1] [2] so produced deliverables automatically update their kernels. This commit moves the creation of this file to the `grubby` package so things work 'out of the box' instead of needing to do out-of-package configuration by third parties. [1]: https://pagure.io/fedora-kiwi-descriptions/blob/f43/f/root/etc/sysconfig [2]: https://github.com/osbuild/images/blob/a8fafe8d9b9f7fa0d4e7316b15452acd63c6941d/data/distrodefs/fedora/imagetypes.yaml#L1027-L1028 Signed-off-by: Simon de Vlieger --- grubby.spec | 10 +++++++++- kernel.sysconfig | 6 ++++++ 2 files changed, 15 insertions(+), 1 deletion(-) create mode 100644 kernel.sysconfig diff --git a/grubby.spec b/grubby.spec index a7ec5c4..87b8787 100644 --- a/grubby.spec +++ b/grubby.spec @@ -3,7 +3,7 @@ Name: grubby Version: 8.40 -Release: 85%{?dist} +Release: 86%{?dist} Summary: Command line tool for updating bootloader configs License: GPL-2.0-or-later Source1: grubby-bls @@ -12,6 +12,7 @@ Source3: COPYING Source5: 95-kernel-hooks.install Source6: 10-devicetree.install Source7: grubby.8 +Source8: kernel.sysconfig BuildRequires: gcc BuildRequires: glib2-devel @@ -59,6 +60,9 @@ install -D -m 0755 -t %{buildroot}%{_prefix}/lib/kernel/install.d/ %{SOURCE6} mkdir -p %{buildroot}%{_mandir}/man8 install -m 0644 %{SOURCE7} %{buildroot}%{_mandir}/man8/ +mkdir -p %{buildroot}%{_sysconfdir}/sysconfig +install -m 0644 %{SOURCE8} %{buildroot}%{_sysconfdir}/sysconfig/kernel + %post if [ "$1" = 2 ]; then arch=$(uname -m) @@ -72,8 +76,12 @@ fi %attr(0755,root,root) %{_prefix}/lib/kernel/install.d/10-devicetree.install %attr(0755,root,root) %{_prefix}/lib/kernel/install.d/95-kernel-hooks.install %{_mandir}/man8/grubby.8* +%config(noreplace) %{_sysconfdir}/sysconfig/kernel %changelog +* Wed Dec 10 2025 Simon de Vlieger - 8.40-86 +- Own `/etc/sysconfig/kernel` which is used for `grubby` configuration + * Wed Jul 30 2025 Leo Sandoval - 8.40-85 - Update cfg when setting a default kernel diff --git a/kernel.sysconfig b/kernel.sysconfig new file mode 100644 index 0000000..8da1970 --- /dev/null +++ b/kernel.sysconfig @@ -0,0 +1,6 @@ +# UPDATEDEFAULT specifies if kernel-install should make +# new kernels the default +UPDATEDEFAULT=yes + +# DEFAULTKERNEL specifies the default kernel package type +DEFAULTKERNEL=kernel-core