grub-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH v5] templates: introduce GRUB_TOP_LEVEL_* vars


From: Oskari Pirhonen
Subject: Re: [PATCH v5] templates: introduce GRUB_TOP_LEVEL_* vars
Date: Mon, 24 Oct 2022 22:21:25 -0500

On Mon, Oct 24, 2022 at 03:46:42 -0700, Denton Liu wrote:
> A user may wish to use an image that is not sorted as the "latest"
> version as the top-level entry. For example, in Arch Linux, if a user
> has the LTS and regular kernels installed, `/boot/vmlinuz-linux-lts`
> gets sorted as the "latest" compared to `/boot/vmlinuz-linux`, meaning
> the LTS kernel becomes the top-level entry. However, a user may wish to
> use the regular kernel as the top-level default with the LTS only
> existing as a backup.
> 
> This need can be seen in Arch Linux's AUR with two user-submitted
> packages[0][1] providing an update hook which patches
> /etc/grub.d/10_linux to move the desired kernel to the top-level. This
> patch serves to solve this in a more generic way.
> 
> Introduce the GRUB_TOP_LEVEL, GRUB_TOP_LEVEL_XEN and
> GRUB_TOP_LEVEL_OS_PROBER variables to allow users to specify the
> top-level entry.
> 
> Create grub_move_to_front() as a helper function which moves entries to
> the front of a list. This function does the heavy lifting of moving
> the menu entry to the front in each script.
> 
> In 10_netbsd, since there isn't an explicit list variable, extract the
> items that are being iterated through into a list so that we can
> optionally apply grub_move_to_front() to the list before the loop.
> 
> [0]: https://aur.archlinux.org/packages/grub-linux-default-hook
> [1]: https://aur.archlinux.org/packages/grub-linux-rt-default-hook
> 
> Signed-off-by: Denton Liu <liu.denton@gmail.com>

Reviewed-by: Oskari Pirhonen <xxc3ncoredxx@gmail.com>

I've tested it on Linux, but the other platforms and os-prober are still
untested.

- Oskari

Attachment: signature.asc
Description: PGP signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]