grub-efi-cfg: Add GRUB_TITLE for custom GRUB titles

Until now, the default title of a boot entry is its label. The label is
a variable which determines the script to run during an early boot stage
and is not necessarily human readable.

This patch allows to provide a human-readable title for each boot entry.

(From OE-Core rev: a5a7f6ada786b7f2c1a317f20b7e642f1e978de9)

Signed-off-by: Simon A. Eugster <simon.eu@gmail.com>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Simon A. Eugster
2025-01-15 09:55:21 +01:00
committed by Richard Purdie
parent 5b6c0bfbf5
commit 11098a9725
2 changed files with 8 additions and 2 deletions

View File

@@ -23,6 +23,7 @@ GRUB_TIMEOUT ?= "10"
GRUB_OPTS ?= "serial --unit=0 --speed=115200 --word=8 --parity=no --stop=1"
GRUB_ROOT ?= "${ROOT}"
GRUB_TITLE ?= ""
APPEND ?= ""
# Uses MACHINE specific KERNEL_IMAGETYPE
@@ -91,10 +92,15 @@ python build_efi_cfg() {
if not overrides:
bb.fatal('OVERRIDES not defined')
localdata.need_overrides()
localdata.setVar('OVERRIDES', 'grub_' + label + ':' + overrides)
for btype in btypes:
cfgfile.write('\nmenuentry \'%s%s\'{\n' % (label, btype[0]))
title = localdata.getVar('GRUB_TITLE')
if not title or len(title) == 0:
title = label
cfgfile.write('\nmenuentry \'%s%s\'{\n' % (title, btype[0]))
lb = label
if label == "install":
lb = "install-efi"

View File

@@ -23,7 +23,7 @@ python do_configure() {
bb.build.exec_func('build_efi_cfg', d)
}
do_configure[vardeps] += "APPEND ROOT"
do_configure[vardeps] += "APPEND ROOT GRUB_TITLE"
do_install() {
install -d ${D}${EFI_FILES_PATH}