Motivation: Currently, when setting the default boot pattern, boot assessment status is not taken into account. This means that with boot assessment enabled, when an explicit boot entry is configured as the default entry using an EFI var, as is common for instance in A/B boot schemes, the configured entry will be booted indefinitly, regardless of the entry's boot assessment status. In order to allow for this use case in combination with boot assessment, we introduce a new `preferred` keyword, both in the config file and in the bootctl CLI, that acts very similar to the existing `default` keyword but takes boot assessment into account and never selects any entries that have been marked as bad. If the preferred pattern does not resolve to any bootable entry, and a default pattern is also specified, then the default pattern will be considered next, and we may then still select a known-bad entry to be booted. Fixes: https://github.com/systemd/systemd/issues/31215 Fixes: https://github.com/systemd/systemd/issues/40192
System and Service Manager
Details
Most documentation is available on systemd's web site.
Assorted, older, general information about systemd can be found in the systemd Wiki.
Information about build requirements is provided in the README file.
Consult our NEWS file for information about what's new in the most recent systemd versions.
Please see the Code Map for information about this repository's layout and content.
Please see the Hacking guide for information on how to hack on systemd and test your modifications.
Please see our Contribution Guidelines for more information about filing GitHub Issues and posting GitHub Pull Requests.
When preparing patches for systemd, please follow our Coding Style Guidelines.
If you are looking for support, please contact our mailing list, join our IRC channel #systemd on libera.chat or Matrix channel
Stable branches with backported patches are available in the stable repo.
We have a security bug bounty program sponsored by the Sovereign Tech Fund hosted on YesWeHack
Repositories with distribution packages built from git main are available on OBS, and also repositories with packages built from the latest stable release
