On Tue, 2019-04-02 at 23:12 -0600, Chris Murphy wrote:
On Mon, Apr 1, 2019 at 5:22 AM Patrick O'Callaghan
<pocallaghan(a)gmail.com> wrote:
> I'm interested in configuring grub to allow selecting different sets of
> kernel parameters at boot time. I know I can edit the boot command line
> by hand, but this is tedious and error-prone. (An example might be to
> choose between the Nouveau and Nvidia drivers by selecting the
> appropriate menu entry). And of course I'd want this updated
> automatically with each new kernel version (i.e. each kernel would then
> have two alternative entries).
>
> How feasible is this?
blscfg just moves Fedora menu entries from grub.cfg into their own
file in /boot/loader/entries. It's easier to parse. You can duplicate
them, and then edit the boot parameters however you want. But as for
automatically duping them for each kernel you install, that's not a
current feature. So you'll need to dup and modify, or script it.
You could probably get a tip on the help-grub list for duping the
grub-mkconfig (grub2-mkconfig in Fedora) scripts, and modifying it to
accept a new "GRUB_CMDLINE_LINUX2" line in /etc/default/grub. The
original script would create an entry using GRUB_CMDLINE_LINUX and the
modified script would create an entry using GRUB_CMDLINE_LINUX2, for
each kernel found in /boot. Of course you'd have to manually run
grub2-mkconfig after every kernel installation, as this isn't used by
kernel post-install scripts. You could maybe hack grubby with a
replacement bash script, so that when the kernel package calls grubby,
it calls your bash script named grubby, which then just runs
grub2-mkconfig.
Thanks. I'm probably too lazy to do this, though I might try posting an
RFE for Grub to see if this can be supported in the future.
poc