Skip to content

Add support for building UKIProfiles initrds with extra packages#4142

Closed
bluca wants to merge 1 commit intosystemd:mainfrom
bluca:uki_profile_initrd
Closed

Add support for building UKIProfiles initrds with extra packages#4142
bluca wants to merge 1 commit intosystemd:mainfrom
bluca:uki_profile_initrd

Conversation

@bluca
Copy link
Member

@bluca bluca commented Jan 28, 2026

If Packages= is specifed under a UKI profile, take the 'main' initrd and add the new packages on top of it, and use that as the profile's initrd. Profile's sections are complete replacements, they are not additive, so it needs to be the full thing.

@bluca bluca force-pushed the uki_profile_initrd branch from dec005f to 532c49a Compare January 28, 2026 10:40
If Packages= is specifed under a UKI profile, take the 'main' initrd
and add the new packages on top of it, and use that as the profile's
initrd. Profile's sections are complete replacements, they are not
additive, so it needs to be the full thing.
@bluca bluca force-pushed the uki_profile_initrd branch from 532c49a to 06f0097 Compare January 28, 2026 10:45
`.cmdline` section and the extra kernel command line arguments
specified with this setting.

`Packages=`
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

So while this does end in it's own structure in the config, I think calling this Packages= has the (only very slight!) potential for hard to debug errors, since during config parsing we do pass around dictionaries.

More importantly, though, we already have InitrdPackages= which would make this a bit confusing, since that's for the packages in the initrd.

How about ExtraInitrdPackages= to clearly communicate that this is different and that this is additive?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'd rather leave it as-is, given it's a different section and it has the same syntax as the other it seems clearer. More importantly OBS won't parse a new setting for dependency resolution, so that would be a massive pain to change

@daandemeyer
Copy link
Contributor

I doubt we should do this until we have a mechanism in systemd to make these overlays on top of the main initrd given the size increases you get otherwise, closing for now, feel free to reopen if you disagree.

@bluca
Copy link
Member Author

bluca commented Feb 10, 2026

Lennart doesn't want to have the initrd profile overlay thingy so that won't happen. Given it's optional and one has to actually configure it, it should be fine to just add it? There's no cost to anybody not configuring packages in the profile

@daandemeyer
Copy link
Contributor

I'd prefer to not have to maintain code that nobody will end up using due to various limitations

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

3 participants