1
0
mirror of https://github.com/systemd/systemd.git synced 2024-12-22 17:35:35 +03:00

ukify: add basic .profile support

This just allows including .profile sections, but doesn't try to be
smart about it. This alone won't help you much to create valid
multi-profile UKIs.
This commit is contained in:
Lennart Poettering 2024-07-02 09:38:53 +02:00
parent 742e00e3f5
commit 22b8236ff6
2 changed files with 20 additions and 0 deletions

View File

@ -400,6 +400,17 @@
<xi:include href="version-info.xml" xpointer="v253"/></listitem>
</varlistentry>
<varlistentry>
<term><varname>Profile=<replaceable>PATH</replaceable></varname></term>
<term><option>--profile=<replaceable>PATH</replaceable></option></term>
<listitem><para>A path to a UKI profile to place in an <literal>.profile</literal> section. This
option is useful for creating multi-profile UKIs, and is typically used in combination with
<option>--extend=</option>, to extend the specified UKI with an additional profile.</para>
<xi:include href="version-info.xml" xpointer="v257"/></listitem>
</varlistentry>
<varlistentry>
<term><varname>PCRBanks=<replaceable>PATH</replaceable></varname></term>
<term><option>--pcr-banks=<replaceable>PATH</replaceable></option></term>

View File

@ -313,6 +313,7 @@ DEFAULT_SECTIONS_TO_SHOW = {
'.pcrsig' : 'text',
'.sbat' : 'text',
'.sbom' : 'binary',
'.profile' : 'text',
}
@dataclasses.dataclass
@ -849,6 +850,7 @@ def make_uki(opts):
sections = [
# name, content, measure?
('.profile', opts.profile, True ),
('.osrel', opts.os_release, True ),
('.cmdline', opts.cmdline, True ),
('.dtb', opts.devicetree, True ),
@ -1359,6 +1361,13 @@ CONFIG_ITEMS = [
help = 'section as name and contents [NAME section] or section to print',
),
ConfigItem(
'--profile',
metavar='TEST|@PATH',
help='Profile information [.profile section]',
config_key = 'UKI/Uname',
),
ConfigItem(
'--efi-arch',
metavar = 'ARCH',