|
|
Subscribe / Log in / New account

Reusing firmware across kernel versions to save disk space?

Reusing firmware across kernel versions to save disk space?

Posted Oct 13, 2025 23:03 UTC (Mon) by Cyberax (✭ supporter ✭, #52523)
In reply to: Reusing firmware across kernel versions to save disk space? by intelfx
Parent article: Last-minute /boot boost for Fedora 43

I'm building my own signed UKIs, which is not even that hard. I really appreciate the simplicity of the whole stack, far better than the old GRUB-based boot chain.

That being said, perhaps something like an immutable, unencrypted but authenticated distribution (via dm-verity or something similar) is a better idea. This is also what Windows and macOS settled on.


to post comments

Reusing firmware across kernel versions to save disk space?

Posted Oct 15, 2025 4:33 UTC (Wed) by raven667 (subscriber, #5198) [Link]

You know, that might be a good idea. I'm just going to think through some of it out-loud.

We can rethink the mechanism around initrd instead of providing a filesystem image, just providing a filesystem, and see if that makes some of these other problems go away, by eg de-duplicating using hardlinks. The init has to be a minimal but full featured system to be able to accommodate whatever hardware setup is required before booting the main system and starting services, eg you could have iSCSI over WiFi with LUKS and graphical boot, which needs a bunch of software and firmware infrastructure to work. ISTM that most of that wouldn't change between instances or between the recovery system, so all boots could have access to the full recovery toolset without extra disk usage on the firmware-accessible filesystem.

I will say that having 3 kernels plus recovery seems extravagant, would not 2+recovery make more sense, the system you last successfully booted and the system you are trying to boot into seems like the amount of redundancy you need, what is the 3rd version for? What might be interesting as well is if the recovery tools can be layered on to one of the regular initrd, just loopback mounting it into /opt or /usr/local or something, so you can skip all the stuff which exists in the normal initrd and only have it contain files which are unique to recovery.

This is going in a different direction than UKI though as this is a more complex system to create and maintain with greater possibility that a flubbed upgrade corrupts it in some way that annoyingly half-works, UKI is about making it so simple that the EFI firmware can load it directly, it's just one file with one signature that either works or it doesn't.


Copyright © 2025, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds