While investigating the storage usage in OpenBMC I noticed that several
features are enabled by default because their meson options default to
true or because they use .allowed() instead of .enabled() for the
validation. This pollutes the storage which is expensive on some
platforms (there are platforms that only have ~20 MiB for rofs).

This series adds packageconfigs for the features ukify, sysinstall, hwdb
and fdisk.

ukify was enabled by default but only works on EFI systems. On non-EFI
builds it will be disabled by default, but enabled by default when the
efi DISTRO_FEATURE is set.

sysinstall is a neat feature that makes installation guidance easier,
but for a lot of embedded systems it is just a waste of storage. It's
not enabled by default as it has runtime dependencies on systemd-repart
which weren't checked before. Enabling it by default would mean we'd
have to enable OpenSSL and repart which does not seem viable to me.

For hwdb, it might be useful for systems that see PCI/USB/HID devices or
for some laptops, but who needs ThinkPad keymaps on an ARM1176 SoC?

fdisk is recommended by libsystemd-shared, and disabling it drops
util-linux-libfdisk. This is only required for sysupdate, repart and
homed.

With all the changes I was able to free a significant amount of storage
again (the hwdb alone was ~9 MiB uncompressed).

I've tested my changes with qemux86-64 by building systemd with the
default configuration and with fdisk off, hwdb off, sysinstall on (with
and without repart), ukify on, and with the efi DISTRO_FEATURE (with and
without ukify), then checked the resulting packages, shipped binaries
and RRECOMMENDS.
Enabling repart or homed without fdisk fails at parse time as expected.

The testimage with default and hwdb-off + usbutils configuration booted
and passed the default tests.

Signed-off-by: Tan Siewert <[email protected]>
---
Tan Siewert (4):
      systemd: add ukify packageconfig
      systemd: add sysinstall packageconfig
      systemd: add hwdb packageconfig
      systemd: add fdisk packageconfig

 meta/recipes-core/systemd/systemd_262.bb | 22 ++++++++++++++++------
 1 file changed, 16 insertions(+), 6 deletions(-)
---
base-commit: ae5cafacec8e99c5a27fa5b3b378eefc595910ef
change-id: 20261021-systemd-optimisations-dae99d91e807

Best regards,
--  
Tan Siewert <[email protected]>

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#248537): 
https://lists.openembedded.org/g/openembedded-core/message/248537
Mute This Topic: https://lists.openembedded.org/mt/121898194/21656
Group Owner: [email protected]
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to