]> git.ipfire.org Git - thirdparty/systemd.git/commit
sysupdate: Change disabling with --component-suggested/--feature-suggested 43191/head
authorKai Lüke <kai@amutable.com>
Tue, 28 Jul 2026 07:01:38 +0000 (16:01 +0900)
committerKai Lüke <kai@amutable.com>
Tue, 28 Jul 2026 07:24:29 +0000 (16:24 +0900)
commit3cf8ab36a8f7eb334c2f2089f35d18c1c1ad83a8
treeb965aebc4ddd54b9864b91c1cace5a18f876dd83
parent9913d9ac9741bf0ea450f6977aacbc18b8aabd02
sysupdate: Change disabling with --component-suggested/--feature-suggested

The disabling of features or components with the flag
--component-suggested/--feature-suggested didn't disable the suggested
ones but instead disabled all other ones. This is rather unintuitive due
to how the flags are named and also not really needed because the
intended reconciliation outcome can instead be done by first disabling
everything and then enabling the suggested ones again which is easier to
reason about. For components the tricky part is that they default to
enabled and thus it's better to have the disable/enable commands with
--component-suggested operate only on suggested ones instead of touching
others like "legacy" components that don't explicity say whether they
are enabled and suggested or not.

Make running disablement of components/features with
--component-suggested/--feature-suggested undo a previous enablement
with the same flags. Document how one can align the system to only use
suggested components/features and not anything else by doing it in two
steps, first disabling everything and then enabling suggested ones. This
also makes it clearer now that all components that are not explicitly
enabled nor suggested will be disabled then.
man/systemd-sysupdate.xml
src/sysupdate/sysupdate.c
test/units/TEST-72-SYSUPDATE.sh