]> git.ipfire.org Git - thirdparty/systemd.git/log
thirdparty/systemd.git
12 months agomeson.build: add a few features to summary
Mike Yuan [Fri, 8 Nov 2024 18:28:24 +0000 (19:28 +0100)] 
meson.build: add a few features to summary

12 months agosysupdate: Bug fixes for target enumeration (#35052)
Luca Boccassi [Fri, 8 Nov 2024 23:21:29 +0000 (23:21 +0000)] 
sysupdate: Bug fixes for target enumeration (#35052)

Fixes a couple of bugs with systemd-sysupdated's target enumeration. See
commit messages for details.

<!-- devel-freezer =
{"comment-id":"2460494553","freezing-tag":"v257-rc1"} -->

12 months agoudev: skipping empty udev rules file while collecting the stats
Lidong Zhong [Thu, 7 Nov 2024 06:41:11 +0000 (14:41 +0800)] 
udev: skipping empty udev rules file while collecting the stats

To keep align with the logic used in udev_rules_parse_file(), we also
should skip the empty udev rules file while collecting the stats during
manager reload. Otherwise all udev rules files will be parsed again whenever
reloading udev manager with an empty udev rules file. It's time consuming
and the following uevents will fail with timeout.

12 months agouid-classification: properly classify *all* container UIDs
Lennart Poettering [Fri, 8 Nov 2024 10:50:15 +0000 (11:50 +0100)] 
uid-classification: properly classify *all* container UIDs

A bit confusingly CONTAINER_UID_BASE_MAX is just the maximum *base* UID
for a container. Thus, with the usual 64K UID assignments, the last
actual container UID is CONTAINER_UID_BASE_MAX+0xFFFF.

To make this less confusing define CONTAINER_UID_MIN/MAX that add the
missing extra space.

Also adjust two uses where this was mishandled so far, due to this
confusion.

With this change the UID ranges we default to should properly match what
is documented on https://systemd.io/UIDS-GIDS/.

12 months agoNews and f41 and formatting (#35078)
Zbigniew Jędrzejewski-Szmek [Fri, 8 Nov 2024 16:17:37 +0000 (17:17 +0100)] 
News and f41 and formatting (#35078)

12 months agoman: drop whitespace from final <programlisting> lines 35078/head
Zbigniew Jędrzejewski-Szmek [Thu, 7 Nov 2024 15:47:48 +0000 (16:47 +0100)] 
man: drop whitespace from final <programlisting> lines

In the troff output, this doesn't seem to make any difference. But in the
html output, the whitespace is sometimes preserved, creating an additional
gap before the following content. Drop it everywhere to avoid this.

12 months agomount-util: make path_get_mount_info() work arbitrary inode
Yu Watanabe [Thu, 7 Nov 2024 18:56:46 +0000 (03:56 +0900)] 
mount-util: make path_get_mount_info() work arbitrary inode

Follow-up for d49d95df0a260aaca9a3fdd1e6ce535592a53bca.
Replaces 9a032ec55a9820a0424309670fe551c99203e5f1.
Fixes #35075.

12 months agotest: install integration-test-setup.sh in testdata/
Franck Bui [Thu, 7 Nov 2024 15:37:13 +0000 (16:37 +0100)] 
test: install integration-test-setup.sh in testdata/

integration-test-setup.sh is an auxiliary script that tests rely on at
runtime. As such, install the script in testdata/.

Follow-up for af153e36ae67c242251951c12d6d6b6ae4783845.

12 months agoupdate TODO
Lennart Poettering [Fri, 8 Nov 2024 09:10:11 +0000 (10:10 +0100)] 
update TODO

12 months agofs-util: add comment about XO_NOCOW
Lennart Poettering [Fri, 8 Nov 2024 08:21:25 +0000 (09:21 +0100)] 
fs-util: add comment about XO_NOCOW

12 months agoFix PrivatePIDs=yes integration test for kernels with no /proc/scsi
Ryan Wilson [Fri, 8 Nov 2024 00:30:57 +0000 (16:30 -0800)] 
Fix PrivatePIDs=yes integration test for kernels with no /proc/scsi

12 months agosd-varlink: allow that method handles call sd_varlink_close()
Lennart Poettering [Thu, 7 Nov 2024 14:19:13 +0000 (15:19 +0100)] 
sd-varlink: allow that method handles call sd_varlink_close()

It's fine if a method handler closes the connection, deal with it
gracefully.

12 months agotree-wide: Introduce --certificate-source= option (#35057)
Daan De Meyer [Thu, 7 Nov 2024 20:51:00 +0000 (21:51 +0100)] 
tree-wide: Introduce --certificate-source= option (#35057)

This allows loading the X.509 certificate from an OpenSSL provider
instead of a file system path. This allows loading certficates directly
from hardware tokens instead of having to export them to a file on
disk first.

<!-- devel-freezer =
{"comment-id":"2460915782","freezing-tag":"v257-rc1"} -->

12 months agoukify: Introduce --certificate-provider= option 35057/head
Daan De Meyer [Wed, 6 Nov 2024 17:09:37 +0000 (18:09 +0100)] 
ukify: Introduce --certificate-provider= option

This translates to --certificate-source=provider:<provider> for
signing tools invoked by ukify.

12 months agomeasure: Add pcrpkey verb
Daan De Meyer [Thu, 7 Nov 2024 13:44:44 +0000 (14:44 +0100)] 
measure: Add pcrpkey verb

This verb writes a public key to stdout extracted from either a public key
path, from a certificate (path or provider) or from a private key (path,
engine, provider). We'll use this in ukify to get rid of the use of the
python cryptography module to convert a private key or certificate to a
public key.

12 months agotree-wide: Introduce --certificate-source= option
Daan De Meyer [Wed, 6 Nov 2024 17:08:26 +0000 (18:08 +0100)] 
tree-wide: Introduce --certificate-source= option

This allows loading the X.509 certificate from an OpenSSL provider
instead of a file system path. This allows loading certficates directly
from hardware tokens instead of having to export them to a file on
disk first.

12 months agoopenssl-util: Set expected object type to private keys
Daan De Meyer [Wed, 6 Nov 2024 17:07:11 +0000 (18:07 +0100)] 
openssl-util: Set expected object type to private keys

Configures the store to only try to fetch private keys and nothing
else.

12 months agobootctl: Validate private key path
Daan De Meyer [Wed, 6 Nov 2024 17:05:54 +0000 (18:05 +0100)] 
bootctl: Validate private key path

12 months agomkosi: Add pytest to tools
Daan De Meyer [Thu, 7 Nov 2024 16:29:44 +0000 (17:29 +0100)] 
mkosi: Add pytest to tools

12 months agoSplit and rename src/boot (#35068)
Yu Watanabe [Thu, 7 Nov 2024 19:13:45 +0000 (04:13 +0900)] 
Split and rename src/boot (#35068)

12 months agohwdb: fix broken numpad paren keys on Lenovo Thinkbook 16 G6+ 2024
Vursc [Thu, 7 Nov 2024 15:13:56 +0000 (15:13 +0000)] 
hwdb: fix broken numpad paren keys on Lenovo Thinkbook 16 G6+ 2024

12 months agoman: update Fedora links to F41
Zbigniew Jędrzejewski-Szmek [Thu, 7 Nov 2024 15:40:53 +0000 (16:40 +0100)] 
man: update Fedora links to F41

12 months agoNEWS: add specific versions in key codes entry
Zbigniew Jędrzejewski-Szmek [Thu, 7 Nov 2024 15:00:08 +0000 (16:00 +0100)] 
NEWS: add specific versions in key codes entry

This should be easier for folks to consume.

Refs:
https://lists.x.org/archives/xorg-announce/2024-October/003543.html
https://lists.x.org/archives/xorg-announce/2024-October/003544.html

12 months agopo: Translated using Weblate (German)
Anselm Schueler [Thu, 7 Nov 2024 13:26:31 +0000 (14:26 +0100)] 
po: Translated using Weblate (German)

Currently translated at 89.8% (231 of 257 strings)

Co-authored-by: Anselm Schueler <mail@anselmschueler.com>
Translate-URL: https://translate.fedoraproject.org/projects/systemd/main/de/
Translation: systemd/main

12 months agogithub: adjust version number in templates
Zbigniew Jędrzejewski-Szmek [Thu, 7 Nov 2024 14:15:51 +0000 (15:15 +0100)] 
github: adjust version number in templates

Most people are probably on stable releases, but we don't want to update the
minor version all the time, so just specify 256.x as a hint to fill in the
full version.

12 months agoRename src/boot/efi to just src/boot 35068/head
Zbigniew Jędrzejewski-Szmek [Thu, 7 Nov 2024 11:45:28 +0000 (12:45 +0100)] 
Rename src/boot/efi to just src/boot

I very much dislike the approach in which we were mixing Linux and UEFI C code
in the same subdirectory. No code was shared between two environments. This
layout was created in e7dd673d1e0acfe5420599588c559fd85a3a9e8f, with the
justification of "being more consistent with the rest of systemd", but I don't
see how it's supposed to be so.

Originally, when the C code was just a single bootctl.c file, this wasn't so
bad. But over time the userspace code grew quite a bit. With the moves done in
previuos commits, the intermediate subdirectory is now empty except for the
efi/ subdir, and this additional subdirectory level doesn't have a good
justification. The components is called "systemd-boot", not "systemd-efi", and
we can remove one level of indentation.

12 months agoMove systemd-sbsign to its own source subdirectory
Zbigniew Jędrzejewski-Szmek [Thu, 7 Nov 2024 11:37:45 +0000 (12:37 +0100)] 
Move systemd-sbsign to its own source subdirectory

It's already two files, and I expect that more will come. It's nicer to give
its own subdirectory to maintain consistent structure.

12 months agoMove systemd-measure to its own source subdirectory
Zbigniew Jędrzejewski-Szmek [Thu, 7 Nov 2024 11:37:45 +0000 (12:37 +0100)] 
Move systemd-measure to its own source subdirectory

We have other subdirectories with just a single C file. And I expect
that systemd-measure will only grow over time, adding new functionality.
It's nicer to give its own subdirectory to maintain consistent structure.

12 months agoMove bless-boot components to their own source subdirectory
Zbigniew Jędrzejewski-Szmek [Thu, 7 Nov 2024 11:28:42 +0000 (12:28 +0100)] 
Move bless-boot components to their own source subdirectory

12 months agoMove bootctl to its own source subdirectory
Zbigniew Jędrzejewski-Szmek [Thu, 7 Nov 2024 11:24:40 +0000 (12:24 +0100)] 
Move bootctl to its own source subdirectory

It's been split into a bunch of files and deserves its own subdirectory
similarly to systemctl.

12 months agoman: fix typos flagged by Lintian
Luca Boccassi [Thu, 7 Nov 2024 00:01:01 +0000 (00:01 +0000)] 
man: fix typos flagged by Lintian

12 months agoTranslations update from Fedora Weblate (#35060)
Yu Watanabe [Thu, 7 Nov 2024 09:50:23 +0000 (18:50 +0900)] 
Translations update from Fedora Weblate (#35060)

12 months agotest: fix assertion on build system
Luca Boccassi [Thu, 7 Nov 2024 09:29:17 +0000 (09:29 +0000)] 
test: fix assertion on build system

/* test_path_is_network_fs_harder */
src/test/test-mount-util.c:541: Assertion failed: expected "path_is_network_fs_harder("/")" to succeed but got the following error: Invalid argument

https://buildd.debian.org/status/fetch.php?pkg=systemd&arch=all&ver=257%7Erc1-1&stamp=1730945197&raw=0

Follow-up for d49d95df0a260aaca9a3fdd1e6ce535592a53bca

12 months agopo: Translated using Weblate (Turkish) 35060/head
Oğuz Ersen [Thu, 7 Nov 2024 09:30:21 +0000 (10:30 +0100)] 
po: Translated using Weblate (Turkish)

Currently translated at 100.0% (257 of 257 strings)

Co-authored-by: Oğuz Ersen <oguz@ersen.moe>
Translate-URL: https://translate.fedoraproject.org/projects/systemd/main/tr/
Translation: systemd/main

12 months agopo: Translated using Weblate (Swedish)
Luna Jernberg [Thu, 7 Nov 2024 09:30:21 +0000 (10:30 +0100)] 
po: Translated using Weblate (Swedish)

Currently translated at 100.0% (257 of 257 strings)

Co-authored-by: Luna Jernberg <bittin@reimu.nl>
Translate-URL: https://translate.fedoraproject.org/projects/systemd/main/sv/
Translation: systemd/main

12 months agopo: Translated using Weblate (Russian)
Sergey A [Thu, 7 Nov 2024 09:30:20 +0000 (10:30 +0100)] 
po: Translated using Weblate (Russian)

Currently translated at 100.0% (257 of 257 strings)

Co-authored-by: Sergey A <Ser82-png@yandex.ru>
Translate-URL: https://translate.fedoraproject.org/projects/systemd/main/ru/
Translation: systemd/main

12 months agopo: Translated using Weblate (Polish)
Piotr Drąg [Thu, 7 Nov 2024 09:30:20 +0000 (10:30 +0100)] 
po: Translated using Weblate (Polish)

Currently translated at 100.0% (257 of 257 strings)

Co-authored-by: Piotr Drąg <piotrdrag@gmail.com>
Translate-URL: https://translate.fedoraproject.org/projects/systemd/main/pl/
Translation: systemd/main

12 months agopo: Translated using Weblate (Indonesian)
Andika Triwidada [Thu, 7 Nov 2024 09:30:20 +0000 (10:30 +0100)] 
po: Translated using Weblate (Indonesian)

Currently translated at 100.0% (257 of 257 strings)

Co-authored-by: Andika Triwidada <andika@gmail.com>
Translate-URL: https://translate.fedoraproject.org/projects/systemd/main/id/
Translation: systemd/main

12 months agopo: Translated using Weblate (French)
Léane GRASSER [Thu, 7 Nov 2024 09:30:20 +0000 (10:30 +0100)] 
po: Translated using Weblate (French)

Currently translated at 100.0% (257 of 257 strings)

Co-authored-by: Léane GRASSER <leane.grasser@proton.me>
Translate-URL: https://translate.fedoraproject.org/projects/systemd/main/fr/
Translation: systemd/main

12 months agopo: Translated using Weblate (Georgian)
Temuri Doghonadze [Thu, 7 Nov 2024 09:30:19 +0000 (10:30 +0100)] 
po: Translated using Weblate (Georgian)

Currently translated at 100.0% (257 of 257 strings)

Co-authored-by: Temuri Doghonadze <temuri.doghonadze@gmail.com>
Translate-URL: https://translate.fedoraproject.org/projects/systemd/main/ka/
Translation: systemd/main

12 months agopo: Translated using Weblate (Korean)
김인수 [Thu, 7 Nov 2024 09:30:19 +0000 (10:30 +0100)] 
po: Translated using Weblate (Korean)

Currently translated at 100.0% (257 of 257 strings)

Co-authored-by: 김인수 <simmon@nplob.com>
Translate-URL: https://translate.fedoraproject.org/projects/systemd/main/ko/
Translation: systemd/main

12 months agosbsign: remove unimplemented options
Antonio Alvarez Feijoo [Thu, 7 Nov 2024 07:57:39 +0000 (08:57 +0100)] 
sbsign: remove unimplemented options

12 months agoNEWS: fix typo
Yu Watanabe [Thu, 7 Nov 2024 01:05:29 +0000 (10:05 +0900)] 
NEWS: fix typo

Follow-up for a6d7cc74d6510378fa6d286352bb987791bed8ab.

12 months agoupdate TODO
Lennart Poettering [Wed, 6 Nov 2024 21:19:01 +0000 (22:19 +0100)] 
update TODO

12 months agoNEWS: various cleanups
Lennart Poettering [Wed, 6 Nov 2024 21:18:55 +0000 (22:18 +0100)] 
NEWS: various cleanups

12 months agoNEWS: various cleanups
Lennart Poettering [Wed, 6 Nov 2024 20:50:51 +0000 (21:50 +0100)] 
NEWS: various cleanups

12 months agosysupdated: Permit mount namespaces 35052/head
Adrian Vovk [Wed, 6 Nov 2024 18:17:04 +0000 (13:17 -0500)] 
sysupdated: Permit mount namespaces

dissect-image tries to use mount namespaces to dissect images without
polluting the host mounts. This change allows it to do that.

12 months agosysupdated: Make sure targets we skip are skipped
Adrian Vovk [Wed, 6 Nov 2024 17:43:48 +0000 (12:43 -0500)] 
sysupdated: Make sure targets we skip are skipped

We'd log that we're skipping the target, but it would never actually get
removed from the manager's list. Thus, we'd advertise targets that don't
actually exist to clients.

In the original version of the sysupdated PR, this was handled by
removing the target from the manager's list in target_free, and using a
_cleanup_ attribute to free the target when skipping. However, this
changed at some point during review. So, this commit takes the
alternative approach

12 months agodocs: fix sbsign manpage syntax and add to list, update release instructions (#35055)
Luca Boccassi [Wed, 6 Nov 2024 20:18:43 +0000 (20:18 +0000)] 
docs: fix sbsign manpage syntax and add to list, update release instructions (#35055)

<!-- devel-freezer =
{"comment-id":"2460595245","freezing-tag":"v257-rc1"} -->

12 months agodocs: add reminder to run update-man-rules before tagging a release 35055/head
Luca Boccassi [Wed, 6 Nov 2024 19:21:14 +0000 (19:21 +0000)] 
docs: add reminder to run update-man-rules before tagging a release

12 months agodocs: remove 'v' prefix from meson.version
Luca Boccassi [Wed, 6 Nov 2024 19:20:00 +0000 (19:20 +0000)] 
docs: remove 'v' prefix from meson.version

It is actually v-less

12 months agoman: run update-man-rules
Luca Boccassi [Wed, 6 Nov 2024 19:19:13 +0000 (19:19 +0000)] 
man: run update-man-rules

12 months agoman: fix syntax error in systemd-sbsign.xml
Luca Boccassi [Wed, 6 Nov 2024 19:18:15 +0000 (19:18 +0000)] 
man: fix syntax error in systemd-sbsign.xml

Follow-up for 5f163921e9ff6d735798db259c47543822f81b5c

12 months agomeson: update version numbers for 257~rc1 v257-rc1
Luca Boccassi [Wed, 6 Nov 2024 16:54:53 +0000 (16:54 +0000)] 
meson: update version numbers for 257~rc1

12 months agoNEWS: finalize
Luca Boccassi [Wed, 6 Nov 2024 16:58:00 +0000 (16:58 +0000)] 
NEWS: finalize

12 months agoNEWS: update list of contributors
Luca Boccassi [Wed, 6 Nov 2024 16:53:46 +0000 (16:53 +0000)] 
NEWS: update list of contributors

12 months agoNEWS: add note about sd-sbsign
Luca Boccassi [Wed, 6 Nov 2024 16:49:42 +0000 (16:49 +0000)] 
NEWS: add note about sd-sbsign

12 months agoUpdate hwdb and translations (#35048)
Luca Boccassi [Wed, 6 Nov 2024 16:42:11 +0000 (16:42 +0000)] 
Update hwdb and translations (#35048)

12 months agoIntroduce systemd-sbsign to do secure boot signing (#35021)
Daan De Meyer [Wed, 6 Nov 2024 16:38:10 +0000 (17:38 +0100)] 
Introduce systemd-sbsign to do secure boot signing (#35021)

Currently in mkosi and ukify we use sbsigntools to do secure boot
signing. This has multiple issues:

- sbsigntools is practically unmaintained, sbvarsign is completely
broken with the latest gnu-efi when built without -fshort-wchar and
upstream has completely ignored my bug report about this.
- sbsigntools only supports openssl engines and not the new providers
API.
- sbsigntools doesn't allow us to cache hardware token pins in the
kernel keyring like we do nowadays when we sign stuff ourselves in
systemd-repart or systemd-measure

There are alternative tools like sbctl and pesign but these do not
support caching hardware token pins in the kernel keyring either.

To get around the issues with sbsigntools, let's introduce our own
tool systemd-sbsign to do secure boot signing. This allows us to
take advantage of our own openssl infra so that hardware token pins
are cached in the kernel keyring as expected and we get openssl
provider support as well.

12 months agoUpdate NEWS for recent PRs
Luca Boccassi [Wed, 6 Nov 2024 15:50:59 +0000 (15:50 +0000)] 
Update NEWS for recent PRs

12 months agonetworkd: add possibility to specify MulticastIGMPVersion
Michele Dionisio [Tue, 5 Nov 2024 10:53:30 +0000 (11:53 +0100)] 
networkd: add possibility to specify MulticastIGMPVersion

12 months agoGrammar and formatting for DeviceTree docs (#35050)
Luca Boccassi [Wed, 6 Nov 2024 15:13:18 +0000 (15:13 +0000)] 
Grammar and formatting for DeviceTree docs (#35050)

12 months agoUpdate translations 35048/head
Luca Boccassi [Wed, 6 Nov 2024 11:13:45 +0000 (11:13 +0000)] 
Update translations

ninja -C build systemd-pot
ninja -C build systemd-update-po

12 months agoUpdate hwdb
Luca Boccassi [Wed, 6 Nov 2024 11:12:28 +0000 (11:12 +0000)] 
Update hwdb

ninja -C build update-hwdb

12 months agoukify: Add --signing-provider= option 35021/head
Daan De Meyer [Tue, 5 Nov 2024 21:24:17 +0000 (22:24 +0100)] 
ukify: Add --signing-provider= option

12 months agopo: Translated using Weblate (French)
Léane GRASSER [Wed, 6 Nov 2024 12:46:55 +0000 (13:46 +0100)] 
po: Translated using Weblate (French)

Currently translated at 100.0% (253 of 253 strings)

Co-authored-by: Léane GRASSER <leane.grasser@proton.me>
Translate-URL: https://translate.fedoraproject.org/projects/systemd/main/fr/
Translation: systemd/main

12 months agodocs/TPM2_PCR_MEASUREMENTS: drop quotes from around section titles 35050/head
Zbigniew Jędrzejewski-Szmek [Wed, 6 Nov 2024 13:56:54 +0000 (14:56 +0100)] 
docs/TPM2_PCR_MEASUREMENTS: drop quotes from around section titles

The section headers used quotes as if the strings were some constants. But
AFAICT, those are just normal plain-text titles. Also lowercase them, because
this is almost like a table and it's easier to read without capitalization.

12 months agotree-wide: use Device*T*ree spelling
Zbigniew Jędrzejewski-Szmek [Wed, 6 Nov 2024 13:45:43 +0000 (14:45 +0100)] 
tree-wide: use Device*T*ree spelling

We used both, in fact "Devicetree" was more common. But we have a general rule
that we capitalize all words in names and also we have a DeviceTree=
configuration setting, which we cannot change. If we use two different
spelllings, this will make it harder for people to use the correct one in
config files. So use the "DeviceTree" spelling everywhere.

12 months agointroduce report_errno_and_exit() helper (#35028)
Luca Boccassi [Wed, 6 Nov 2024 13:51:10 +0000 (13:51 +0000)] 
introduce report_errno_and_exit() helper (#35028)

This is a follow for https://github.com/systemd/systemd/pull/34853. In
particular, this comment
https://github.com/systemd/systemd/pull/34853#discussion_r1825837705.

12 months agocore/manager: silence false-positive warning by coverity
Yu Watanabe [Wed, 6 Nov 2024 10:57:39 +0000 (19:57 +0900)] 
core/manager: silence false-positive warning by coverity

Follow-up for 406f1775017a5631bc91a1f53ac5e50f4fbfac0c.

Closes CID#1564897.

12 months agomachine: introduce io.systemd.Machine.Open method (#34867)
Luca Boccassi [Wed, 6 Nov 2024 13:45:04 +0000 (13:45 +0000)] 
machine: introduce io.systemd.Machine.Open method (#34867)

This PR introduces io.systemd.Machine.Open method which combines three
DBus alternatives:
- OpenMachinePTY
- OpenMachineLogin
- OpenMachineShell

The PR contains basic tests.

12 months agopid1: stop refusing to boot with cgroup v1
Zbigniew Jędrzejewski-Szmek [Sat, 2 Nov 2024 16:07:22 +0000 (17:07 +0100)] 
pid1: stop refusing to boot with cgroup v1

Since v256 we completely fail to boot if v1 is configured. Fedora 41 was just
released with v256.7 and this is probably the first major exposure of users to
this code. It turns out not work very well. Fedora switched to v2 as default in
F31 (2019) and at that time some people added configuration to use v1 either
because of Docker or for other reasons. But it's been long enough ago that
people don't remember this and are now very unhappy when the system refuses to
boot after an upgrade.

Refusing to boot is also unnecessarilly punishing to users. For machines that
are used remotely, this could mean somebody needs to physically access the
machine. For other users, the machine might be the only way to access the net
and help, and people might not know how to set kernel parameters without some
docs. And because this is in systemd, after an upgrade all boot choices are
affected, and it's not possible to e.g. select an older kernel for boot. And
crashing the machine doesn't really serve our goal either: we were giving a
hint how to continue using v1 and nothing else.

If the new override is configured, warn and immediately boot to v1.
If v1 is configured w/o the override, warn and wait 30 s and boot to v2.
Also give a hint how to switch to v2.

https://bugzilla.redhat.com/show_bug.cgi?id=2323323
https://bugzilla.redhat.com/show_bug.cgi?id=2323345
https://bugzilla.redhat.com/show_bug.cgi?id=2322467
https://www.reddit.com/r/Fedora/comments/1gfcyw9/refusing_to_run_under_cgroup_01_sy_specified_on/

The advice is to set systemd.unified_cgroup_hierarchy=1 (instead of removing
systemd.unified_cgroup_hierarchy=0). I think this is easier to convey. Users
who are understand what is going on can just remove the option instead.

The caching is dropped in cg_is_legacy_wanted(). It turns out that the
order in which those functions are called during early setup is very fragile.
If cg_is_legacy_wanted() is called before we have set up the v2 hierarchy,
we incorrectly cache a true answer. The function is called just a handful
of times at most, so we don't really need to cache the response.

12 months agoman/systemd-stub: rework the description of sections
Zbigniew Jędrzejewski-Szmek [Wed, 6 Nov 2024 13:40:21 +0000 (14:40 +0100)] 
man/systemd-stub: rework the description of sections

The text added for .dtbauto/.hwids was very hard to grok. This rewords it to be
proper English. No semantic changes are intended.

When updating this, I noticed that the interaction of multi-profile UKIs and
dtb autoselection is very unclear, a FIXME is added.

12 months agoukify: Add support for systemd-sbsign
Daan De Meyer [Tue, 5 Nov 2024 12:44:18 +0000 (13:44 +0100)] 
ukify: Add support for systemd-sbsign

12 months agosbsign: Add validate-key verb
Daan De Meyer [Tue, 5 Nov 2024 12:43:02 +0000 (13:43 +0100)] 
sbsign: Add validate-key verb

This verb checks that we can load the specified private key.

12 months agoIntroduce systemd-sbsign to do secure boot signing
Daan De Meyer [Mon, 4 Nov 2024 23:36:32 +0000 (00:36 +0100)] 
Introduce systemd-sbsign to do secure boot signing

Currently in mkosi and ukify we use sbsigntools to do secure boot
signing. This has multiple issues:

- sbsigntools is practically unmaintained, sbvarsign is completely
broken with the latest gnu-efi when built without -fshort-wchar and
upstream has completely ignored my bug report about this.
- sbsigntools only supports openssl engines and not the new providers
API.
- sbsigntools doesn't allow us to cache hardware token pins in the
kernel keyring like we do nowadays when we sign stuff ourselves in
systemd-repart or systemd-measure

There are alternative tools like sbctl and pesign but these do not
support caching hardware token pins in the kernel keyring either.

To get around the issues with sbsigntools, let's introduce our own
tool systemd-sbsign to do secure boot signing. This allows us to
take advantage of our own openssl infra so that hardware token pins
are cached in the kernel keyring as expected and we get openssl
provider support as well.

12 months agomachine: tests for io.systemd.Machine.Open 34867/head
Ivan Kruglov [Wed, 23 Oct 2024 14:02:26 +0000 (16:02 +0200)] 
machine: tests for io.systemd.Machine.Open

12 months agomachine: introduce io.systemd.Machine.Open method
Ivan Kruglov [Wed, 23 Oct 2024 09:53:22 +0000 (11:53 +0200)] 
machine: introduce io.systemd.Machine.Open method

12 months agojson: introduce json_dispatch_strv_environment()
Ivan Kruglov [Fri, 1 Nov 2024 11:05:43 +0000 (12:05 +0100)] 
json: introduce json_dispatch_strv_environment()

I just moved json_dispatch_environment() from src/shared/user-record.c
under name 'json_dispatch_strv_environment()' to shared json code.

12 months agomachine: machine_default_shell_path() & machine_default_shell_args() helper functions
Ivan Kruglov [Tue, 22 Oct 2024 13:15:54 +0000 (15:15 +0200)] 
machine: machine_default_shell_path() & machine_default_shell_args() helper functions

12 months agomachine: introduce machine_start_getty() and machine_start_shell() helpers
Ivan Kruglov [Tue, 22 Oct 2024 11:38:06 +0000 (13:38 +0200)] 
machine: introduce machine_start_getty() and machine_start_shell() helpers

12 months agouse report_errno_and_exit() in src/core/exec-invoke.c 35028/head
Ivan Kruglov [Wed, 6 Nov 2024 10:16:58 +0000 (11:16 +0100)] 
use report_errno_and_exit() in src/core/exec-invoke.c

12 months agouse report_errno_and_exit() in src/shared/elf-util.c
Ivan Kruglov [Wed, 6 Nov 2024 10:14:01 +0000 (11:14 +0100)] 
use report_errno_and_exit() in src/shared/elf-util.c

12 months agouse report_errno_and_exit() in src/shared/dissect-image.c
Ivan Kruglov [Wed, 6 Nov 2024 10:13:39 +0000 (11:13 +0100)] 
use report_errno_and_exit() in src/shared/dissect-image.c

12 months agouse report_errno_and_exit() in src/shared/mount-util.c
Ivan Kruglov [Wed, 6 Nov 2024 10:13:16 +0000 (11:13 +0100)] 
use report_errno_and_exit() in src/shared/mount-util.c

12 months agouse report_errno_and_exit() in src/shutdown/umount.c
Ivan Kruglov [Wed, 6 Nov 2024 10:12:28 +0000 (11:12 +0100)] 
use report_errno_and_exit() in src/shutdown/umount.c

12 months agoprocess-util: introduce report_errno_and_exit() as part of src/basic/process-util...
Ivan Kruglov [Wed, 6 Nov 2024 10:11:03 +0000 (11:11 +0100)] 
process-util: introduce report_errno_and_exit() as part of src/basic/process-util.{h,c}

12 months agoman/varlink: fix typo
Yu Watanabe [Wed, 6 Nov 2024 10:06:13 +0000 (19:06 +0900)] 
man/varlink: fix typo

Follow-up for 4f5fabe7a39f046e0456eba07472df061e85c94e.

12 months agoman/udev: fix typo
Yu Watanabe [Wed, 6 Nov 2024 10:05:12 +0000 (19:05 +0900)] 
man/udev: fix typo

Follow-up for df8f9b88bd41320653fe1c51ea515a2d03a349df.

12 months agoman/systemd-measure: add forgotten "="
Zbigniew Jędrzejewski-Szmek [Wed, 6 Nov 2024 09:17:56 +0000 (10:17 +0100)] 
man/systemd-measure: add forgotten "="

Both syntaxes work, but let's use one syntax for consistency.

Fixup for 0641ce809a27cc1bc358924c26770f19d1213ec1.

12 months agoman/systemd-measure: update to new ukify syntax, non-root operation
Zbigniew Jędrzejewski-Szmek [Tue, 5 Nov 2024 17:03:03 +0000 (18:03 +0100)] 
man/systemd-measure: update to new ukify syntax, non-root operation

It's been a while, but systemd-measure doesn't need root, and
ukify has a more modern syntax.

12 months agonetwork: reconfigure interface more gracefully (#35035)
Yu Watanabe [Wed, 6 Nov 2024 08:57:56 +0000 (17:57 +0900)] 
network: reconfigure interface more gracefully (#35035)

split-out of #34989.

12 months agoUKI: Introduce `.dtbauto` sections (#34855)
Lennart Poettering [Wed, 6 Nov 2024 08:29:04 +0000 (09:29 +0100)] 
UKI: Introduce `.dtbauto` sections (#34855)

Split out from #34158

12 months agonamespace-util: make idmapping not supported if syscalls return EPERM
Andres Beltran [Tue, 5 Nov 2024 19:52:35 +0000 (19:52 +0000)] 
namespace-util: make idmapping not supported if syscalls return EPERM

12 months agoVarious man page updates (#35032)
Lennart Poettering [Wed, 6 Nov 2024 08:26:57 +0000 (09:26 +0100)] 
Various man page updates (#35032)

Fixes: #34996
Fixes: #15032
Fixes: #32751
Fixes: #33130
Fixes: #34735
Fixes: #34840
Fixes: #34949
12 months agomount-util: introduce path_is_network_fs_harder() and use it in networkd (#35040)
Zbigniew Jędrzejewski-Szmek [Wed, 6 Nov 2024 07:39:24 +0000 (08:39 +0100)] 
mount-util: introduce path_is_network_fs_harder() and use it in networkd (#35040)

Closes #32426.

12 months agoman: convert multiple left-over "See Also" sections to <simplelist> 35032/head
Lennart Poettering [Tue, 5 Nov 2024 13:47:32 +0000 (14:47 +0100)] 
man: convert multiple left-over "See Also" sections to <simplelist>

These were forgotten during the initial conversion, probably because
most of them consisted only of a single entry.

Fix that.

12 months agoman: link up D-Bus API docs from daemon man pages
Lennart Poettering [Tue, 5 Nov 2024 13:20:01 +0000 (14:20 +0100)] 
man: link up D-Bus API docs from daemon man pages

Let's systematically make sure that we link up the D-Bus interfaces from
the daemon man pages once in prose and once in short form at the bottom
("See Also"), for all daemons.

Also, add reverse links at the bottom of the D-Bus API docs.

Fixes: #34996
12 months agoman: point people from sd-bus man page to busctl
Lennart Poettering [Tue, 5 Nov 2024 13:08:16 +0000 (14:08 +0100)] 
man: point people from sd-bus man page to busctl

12 months agoman: add brief entrypoint man page for sd-varlink
Lennart Poettering [Tue, 5 Nov 2024 13:07:31 +0000 (14:07 +0100)] 
man: add brief entrypoint man page for sd-varlink

We have this in a similar fashion for the other APIs libsystemd
provides. Add the same for sd-varlink. There isn't too much on it for
now, but at least it's a start.

Also link it up everywhere.