]> git.ipfire.org Git - thirdparty/systemd.git/log
thirdparty/systemd.git
5 weeks agoci: Make claude action review PRs only and fix the instructions 40971/head
Daan De Meyer [Fri, 6 Mar 2026 14:06:36 +0000 (15:06 +0100)] 
ci: Make claude action review PRs only and fix the instructions

Turns out the claude code action has issues reviewing PRs from forks
(https://github.com/anthropics/claude-code-action/issues/939). Let's
reuse the approach from https://github.com/pzmarzly/demo--claude-bot-reviews
instead (which I've explicitly asked permission for to reuse).

Unlike the linked demo, we still insist on a comment by a maintainer
before claude reviews the PR.

5 weeks agoagent: Minimize the amount of instructions in AGENTS.md
Daan De Meyer [Fri, 6 Mar 2026 09:17:01 +0000 (10:17 +0100)] 
agent: Minimize the amount of instructions in AGENTS.md

Let's only keep instructions for stuff that we've seen the AI
mess up in practice rather than having a bunch of AI generated
text that it can figure out for itself these days (given it was
trained on systemd's source code in the first place).

Also add a rule to use git worktrees and check out PRs locally when
reviewing them, since I've seen it mess that up in practice.

5 weeks agoci: Add claude code github action (#40966)
Zbigniew Jędrzejewski-Szmek [Fri, 6 Mar 2026 08:06:58 +0000 (09:06 +0100)] 
ci: Add claude code github action (#40966)

This will allow maintainers to mention claude in comments on issues and
prs to do stuff like review something or try to reproduce a bug or other
stuff. Let's give it a try and see whether we like it or not.

5 weeks agoMove AI instructions to AGENTS.md 40966/head
Daan De Meyer [Fri, 6 Mar 2026 07:54:33 +0000 (08:54 +0100)] 
Move AI instructions to AGENTS.md

This seems to be what all the tools are standardizing on, except
claude (https://github.com/anthropics/claude-code/issues/6235) so
add a symlink from CLAUDE.md to AGENTS.md for now until they support
it as well.

I also had claude extend the instructions a bit.

Co-developed-by: Claude <claude@anthropic.com>
5 weeks agoman: add tags for the next few versions
Luca Boccassi [Fri, 6 Mar 2026 00:25:10 +0000 (00:25 +0000)] 
man: add tags for the next few versions

5 weeks agoTranslations update from Fedora Weblate (#40968)
Luca Boccassi [Fri, 6 Mar 2026 00:29:03 +0000 (00:29 +0000)] 
Translations update from Fedora Weblate (#40968)

Translations update from [Fedora
Weblate](https://translate.fedoraproject.org) for
[systemd/main](https://translate.fedoraproject.org/projects/systemd/main/).

Current translation status:

![Weblate translation
status](https://translate.fedoraproject.org/widget/systemd/main/horizontal-auto.svg)

5 weeks agopo: Translated using Weblate (Portuguese) 40968/head
Américo Monteiro [Thu, 5 Mar 2026 22:10:06 +0000 (22:10 +0000)] 
po: Translated using Weblate (Portuguese)

Currently translated at 100.0% (266 of 266 strings)

Co-authored-by: Américo Monteiro <a_monteiro@gmx.com>
Translate-URL: https://translate.fedoraproject.org/projects/systemd/main/pt/
Translation: systemd/main

5 weeks agopo: Translated using Weblate (Italian)
Salvatore Cocuzza [Thu, 5 Mar 2026 22:10:05 +0000 (22:10 +0000)] 
po: Translated using Weblate (Italian)

Currently translated at 100.0% (266 of 266 strings)

Co-authored-by: Salvatore Cocuzza <info@salvatorecocuzza.it>
Translate-URL: https://translate.fedoraproject.org/projects/systemd/main/it/
Translation: systemd/main

5 weeks agozsh: fixup some recent zsh completers
Ronan Pigott [Thu, 5 Mar 2026 22:42:30 +0000 (15:42 -0700)] 
zsh: fixup some recent zsh completers

These two completers are written in a stacked _arguments style, and some
generic options are valid before or after the verb. If the toplevel
_arguments is permitted to match options after the verb, it will halt
completion prematurely, so stop toplevel matching after the verb.

This corrects the following error:

$ userdbctl --output=class user <TAB> # completes users
$ userdbctl user --output=class <TAB> # completes nothing

5 weeks agopo: update Japanese translation
Yu Watanabe [Thu, 5 Mar 2026 22:06:59 +0000 (07:06 +0900)] 
po: update Japanese translation

5 weeks agoci: Add claude code github action
Daan De Meyer [Thu, 5 Mar 2026 20:39:14 +0000 (21:39 +0100)] 
ci: Add claude code github action

This will allow maintainers to mention claude in comments on issues
and prs to do stuff like review something or try to reproduce a bug
or other stuff. Let's give it a try and see whether we like it or
not.

5 weeks agopo: Update translation files
Hosted Weblate [Thu, 5 Mar 2026 19:43:40 +0000 (19:43 +0000)] 
po: Update translation files

Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://translate.fedoraproject.org/projects/systemd/main/
Translation: systemd/main

5 weeks agonetwork: slightly reword polkit message
Yu Watanabe [Thu, 5 Mar 2026 18:45:28 +0000 (03:45 +0900)] 
network: slightly reword polkit message

5 weeks agotree-wide: suppress misc-use-internal-linkage warnings
Yu Watanabe [Wed, 4 Mar 2026 21:48:25 +0000 (06:48 +0900)] 
tree-wide: suppress misc-use-internal-linkage warnings

Suppress warnings like the following from clang tidy:
```
../src/boot/addon.c:11:19: error: function 'efi_main' can be made static to enforce internal linkage [misc-use-internal-linkage,-warnings-as-errors]
   11 | EFIAPI EFI_STATUS efi_main(EFI_HANDLE image, EFI_SYSTEM_TABLE *system_table);
      |                   ^
```

Some warnings are suppressed simply by setting comments to ignore the warning,
some are by making global variables static, or include a suitable header.

5 weeks agocore/varlink-unit: distinguish PIDREF_AUTOMATIC from unset
Mike Yuan [Thu, 5 Mar 2026 16:13:15 +0000 (17:13 +0100)] 
core/varlink-unit: distinguish PIDREF_AUTOMATIC from unset

Follow-up for ab73333c43aeec919fadf60b22e5cee7c379cdf2

Methods that take numeric pid values use 0 to denote the peer,
hence let's log about 0 on PIDREF_AUTOMATIC, -1 if truly unset.

5 weeks agoboot/pe: remove unneeded parens
Mike Yuan [Thu, 5 Mar 2026 17:51:48 +0000 (18:51 +0100)] 
boot/pe: remove unneeded parens

Follow-up for f8ed94ea9915d67af47954b48d6a9a4d755b6d8e

5 weeks agolibcrypt: also try to dlopen libcrypt.so.1.1
Luca Boccassi [Thu, 5 Mar 2026 17:19:19 +0000 (17:19 +0000)] 
libcrypt: also try to dlopen libcrypt.so.1.1

On top of libcrypt.so.2 and libcrypt.so.1, also try libcrypt.so.1.1
as a third fallback. This is used on debian alpha, and it was
reported that it is intended to ship like that, with a different
SONAME than other architectures:

https://packages.debian.org/sid/alpha/libcrypt1/filelist

5 weeks agopcrlock: Record predictions at start of component range
Fergus Dall [Sun, 30 Nov 2025 05:38:49 +0000 (16:08 +1030)] 
pcrlock: Record predictions at start of component range

Currently pcrlock won't predict PCR values that would be present at the start
of the requested location range (unless there are no events for that PCR in the
location range). This means predictions for the default range 760:940, which is
intended to start just after entering the initrd, are not actually possible to
fulfill until after the initrd is exited (or possibly even later, depending on
what other events are recorded).

Fix this by recording predictions immediately prior to processing components
after the start point.

Fixes #39946

5 weeks agopo: update Japanese translations
Yu Watanabe [Thu, 5 Mar 2026 18:10:21 +0000 (03:10 +0900)] 
po: update Japanese translations

5 weeks agogitignore: ignore new default mkosi tools directories
Yu Watanabe [Wed, 4 Mar 2026 20:17:04 +0000 (05:17 +0900)] 
gitignore: ignore new default mkosi tools directories

The default place has been changed since
https://github.com/systemd/mkosi/commit/e9abfab744340dd2f608b589a9252a3e53b071c3

5 weeks agopath-util: drop unused paths_check_timestamp()
Mike Yuan [Thu, 5 Mar 2026 15:40:54 +0000 (16:40 +0100)] 
path-util: drop unused paths_check_timestamp()

5 weeks agoboot: Make missing CHID DTB match a debug message instead of an error
Hans de Goede [Thu, 5 Mar 2026 13:20:06 +0000 (14:20 +0100)] 
boot: Make missing CHID DTB match a debug message instead of an error

With distributions like Ubuntu and Fedora using systemd-stub to auto load
DTB's on Windows on ARM laptops, the CHID DTB match failing is expected
when that same UKI is instead booted on an ARM SystemReady system where
no DTB is necessary.

In the ARM SystemReady case showing a big red error message is undesirable
and leads to confused users and bug-reports. Lower the message to debug
level when the status is EFI_NOT_FOUND to avoid these false positive error
messages.

Link: https://bugzilla.redhat.com/show_bug.cgi?id=2444759
5 weeks agotree-wide: various Coccinelle-suggested tweaks and related fixes (#40950)
Mike Yuan [Thu, 5 Mar 2026 16:07:39 +0000 (17:07 +0100)] 
tree-wide: various Coccinelle-suggested tweaks and related fixes (#40950)

5 weeks agocore: cleanup unit's dropin directories from global cache
Michal Sekletar [Wed, 25 Feb 2026 18:45:55 +0000 (19:45 +0100)] 
core: cleanup unit's dropin directories from global cache

When user creates dropin files via API (e.g. systemctl set-property ...)
we put the dropin directory path into unit_path_cache. Drop those
directories from the cache in unit_free() and prevent memory leak.

Follow-up for fce94c5c563b8f6ede2b8f7f283d2d2faff4e062.

5 weeks agoupdate TODO
Lennart Poettering [Thu, 5 Mar 2026 15:34:16 +0000 (16:34 +0100)] 
update TODO

5 weeks agoupdate TODO
Lennart Poettering [Thu, 5 Mar 2026 14:44:34 +0000 (15:44 +0100)] 
update TODO

5 weeks agoupdate TODO
Lennart Poettering [Thu, 5 Mar 2026 13:28:14 +0000 (14:28 +0100)] 
update TODO

5 weeks agocore: drop unused errno from debug message 40950/head
Frantisek Sumsal [Wed, 4 Mar 2026 19:56:30 +0000 (20:56 +0100)] 
core: drop unused errno from debug message

And properly guard unset parameters.

5 weeks agotree-wide: various fixlets suggested by Coccinelle
Frantisek Sumsal [Wed, 4 Mar 2026 18:03:54 +0000 (19:03 +0100)] 
tree-wide: various fixlets suggested by Coccinelle

5 weeks agotree-wide: use typed SD_JSON_BUILD_PAIR_* macros more
Frantisek Sumsal [Wed, 4 Mar 2026 17:57:41 +0000 (18:57 +0100)] 
tree-wide: use typed SD_JSON_BUILD_PAIR_* macros more

5 weeks agococcinelle: work around a bug in zlib.h parsing
Frantisek Sumsal [Wed, 4 Mar 2026 18:38:37 +0000 (19:38 +0100)] 
coccinelle: work around a bug in zlib.h parsing

Currently, parsing zlib.h on Fedora (and possibly others) causes spatch
to fail with an assertion. Let's work around that by defining two extra
macros in our Coccinelle parsing hacks.

5 weeks agococcinelle: simplify the SD_JSON_BUILD_PAIR_* transformations
Frantisek Sumsal [Wed, 4 Mar 2026 18:17:42 +0000 (19:17 +0100)] 
coccinelle: simplify the SD_JSON_BUILD_PAIR_* transformations

And also disable them on test-json.c, since there we use the macros
intentionally in a "non-optimal" way to actually test them.

5 weeks agococcinelle: update the list of excluded directories
Frantisek Sumsal [Wed, 4 Mar 2026 18:37:18 +0000 (19:37 +0100)] 
coccinelle: update the list of excluded directories

  - src/boot/efi/ was moved to src/boot/ in 97318131fd06a5bc35454da81dcbbc84f16d9940
  - src/basic/include/linux/ was moved to src/include/uapi/linux/ in
    1a60b97524d8408e5f059b09ae316987c698e671

5 weeks agococcinelle: ignore our own BPF programs
Frantisek Sumsal [Wed, 4 Mar 2026 18:04:26 +0000 (19:04 +0100)] 
coccinelle: ignore our own BPF programs

Since they don't have access to systemd code, so we can't use our custom
functions/macros in them anyway.

5 weeks agoman: clarify requirements around creds null sealing
Luca Boccassi [Tue, 3 Mar 2026 18:18:53 +0000 (18:18 +0000)] 
man: clarify requirements around creds null sealing

5 weeks agomachine-varlink: reference the right struct in VARLINK_DISPATCH_MACHINE_LOOKUP_FIELDS
Mike Yuan [Thu, 5 Mar 2026 00:33:20 +0000 (01:33 +0100)] 
machine-varlink: reference the right struct in VARLINK_DISPATCH_MACHINE_LOOKUP_FIELDS

This practically shouldn't matter, as the layout for name
and pidref fields are identical for all the structs. But
let's get things right.

5 weeks agohwdb/60-tpm2: correct prefix in comment (tpm -> tpm2)
Mike Yuan [Thu, 5 Mar 2026 00:02:41 +0000 (01:02 +0100)] 
hwdb/60-tpm2: correct prefix in comment (tpm -> tpm2)

Follow-up for f2eed3fa25e8c38b7a90d6ab3d22ee90e3569271

5 weeks agojournalctl-filter: drop doubled newline
Mike Yuan [Wed, 4 Mar 2026 21:33:47 +0000 (22:33 +0100)] 
journalctl-filter: drop doubled newline

Follow-up for d8302c2fd92602eae780511037ca08ed8cb0667d

5 weeks agoTranslations update from Fedora Weblate (#40952)
Luca Boccassi [Wed, 4 Mar 2026 20:11:59 +0000 (20:11 +0000)] 
Translations update from Fedora Weblate (#40952)

Translations update from [Fedora
Weblate](https://translate.fedoraproject.org) for
[systemd/main](https://translate.fedoraproject.org/projects/systemd/main/).

Current translation status:

![Weblate translation
status](https://translate.fedoraproject.org/widget/systemd/main/horizontal-auto.svg)

5 weeks agopo: Translated using Weblate (Slovenian) 40952/head
Martin Srebotnjak [Wed, 4 Mar 2026 19:58:26 +0000 (19:58 +0000)] 
po: Translated using Weblate (Slovenian)

Currently translated at 100.0% (266 of 266 strings)

Co-authored-by: Martin Srebotnjak <miles@filmsi.net>
Translate-URL: https://translate.fedoraproject.org/projects/systemd/main/sl/
Translation: systemd/main

5 weeks agopo: Translated using Weblate (Finnish)
Jan Kuparinen [Wed, 4 Mar 2026 19:58:26 +0000 (19:58 +0000)] 
po: Translated using Weblate (Finnish)

Currently translated at 100.0% (266 of 266 strings)

Co-authored-by: Jan Kuparinen <copper_fin@hotmail.com>
Translate-URL: https://translate.fedoraproject.org/projects/systemd/main/fi/
Translation: systemd/main

5 weeks agoupdate TODO
Lennart Poettering [Wed, 4 Mar 2026 16:06:23 +0000 (17:06 +0100)] 
update TODO

5 weeks agobuild(deps): bump ninja from 1.11.1.4 to 1.13.0 in /.github/workflows
dependabot[bot] [Wed, 4 Mar 2026 12:58:47 +0000 (12:58 +0000)] 
build(deps): bump ninja from 1.11.1.4 to 1.13.0 in /.github/workflows

Bumps [ninja](https://github.com/scikit-build/ninja-python-distributions) from 1.11.1.4 to 1.13.0.
- [Release notes](https://github.com/scikit-build/ninja-python-distributions/releases)
- [Changelog](https://github.com/scikit-build/ninja-python-distributions/blob/master/HISTORY.rst)
- [Commits](https://github.com/scikit-build/ninja-python-distributions/compare/1.11.1.4...1.13.0)

---
updated-dependencies:
- dependency-name: ninja
  dependency-version: 1.13.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
5 weeks agopcrextend-util: fix log message
Lennart Poettering [Wed, 4 Mar 2026 14:18:44 +0000 (15:18 +0100)] 
pcrextend-util: fix log message

The NvPCR is actually named differently from what the log msg said. Fix it.

5 weeks agoclang-tidy fixes (#40947)
Mike Yuan [Wed, 4 Mar 2026 15:27:51 +0000 (16:27 +0100)] 
clang-tidy fixes (#40947)

5 weeks agomachine-dbus: do not check for overlapping condition 40947/head
Mike Yuan [Wed, 4 Mar 2026 13:31:54 +0000 (14:31 +0100)] 
machine-dbus: do not check for overlapping condition

Follow-up for c5e48e3a66b23313cd4931b9dc25a8f48cfb1035

This also makes things in line with the varlink method.

5 weeks agosd-journal/catalog: make catalog_file_dirs static
Mike Yuan [Wed, 4 Mar 2026 13:11:52 +0000 (14:11 +0100)] 
sd-journal/catalog: make catalog_file_dirs static

5 weeks agobpf-dlopen: mark bpf_get_error() as static
Mike Yuan [Wed, 4 Mar 2026 13:09:03 +0000 (14:09 +0100)] 
bpf-dlopen: mark bpf_get_error() as static

Any use of this function should go via bpf_get_error_translated().

5 weeks agoshared/password-quality-util-*: make dl functions static
Mike Yuan [Wed, 4 Mar 2026 12:12:41 +0000 (13:12 +0100)] 
shared/password-quality-util-*: make dl functions static

5 weeks agomachined: move declaration of manager_object to machined-dbus.h
Mike Yuan [Wed, 4 Mar 2026 12:49:59 +0000 (13:49 +0100)] 
machined: move declaration of manager_object to machined-dbus.h

5 weeks agovarious: make bus objects static
Mike Yuan [Wed, 4 Mar 2026 12:26:42 +0000 (13:26 +0100)] 
various: make bus objects static

5 weeks agocore/varlink-metrics: make metric_family_table static
Mike Yuan [Wed, 4 Mar 2026 12:11:50 +0000 (13:11 +0100)] 
core/varlink-metrics: make metric_family_table static

5 weeks agoshared/varlink-*: normalize includes
Mike Yuan [Wed, 4 Mar 2026 12:10:31 +0000 (13:10 +0100)] 
shared/varlink-*: normalize includes

5 weeks agovarious: mark arg_* as static
Mike Yuan [Wed, 4 Mar 2026 12:25:37 +0000 (13:25 +0100)] 
various: mark arg_* as static

5 weeks agobootctl: declare missing arg_* in header
Mike Yuan [Wed, 4 Mar 2026 12:25:03 +0000 (13:25 +0100)] 
bootctl: declare missing arg_* in header

Follow-up for 90cf998875a2cfac2cdfe3e659c96d25457bf24b

5 weeks agotree-wide: make private hash ops static
Mike Yuan [Wed, 4 Mar 2026 11:53:12 +0000 (12:53 +0100)] 
tree-wide: make private hash ops static

5 weeks agoshared/acpi-fpdt: set _packed_ attr properly
Mike Yuan [Wed, 4 Mar 2026 11:51:48 +0000 (12:51 +0100)] 
shared/acpi-fpdt: set _packed_ attr properly

We were declaring a variable named _packed...

5 weeks agomeson: bump version to v260~rc2 v260-rc2
Luca Boccassi [Wed, 4 Mar 2026 12:24:14 +0000 (12:24 +0000)] 
meson: bump version to v260~rc2

5 weeks agoNEWS: update contributors list
Luca Boccassi [Wed, 4 Mar 2026 13:19:11 +0000 (13:19 +0000)] 
NEWS: update contributors list

5 weeks agoNEWS: finalize place and date
Luca Boccassi [Wed, 4 Mar 2026 12:23:59 +0000 (12:23 +0000)] 
NEWS: finalize place and date

5 weeks agomachined: do not allow unprivileged users to shell into the root namespace via varlink
Luca Boccassi [Sat, 28 Feb 2026 00:46:21 +0000 (00:46 +0000)] 
machined: do not allow unprivileged users to shell into the root namespace via varlink

Forbid non-root from shelling into a machine that is running in
the root user namespace.

Follow-up for adaff8eb35d9c471af81fddaa4403bc5843a256f

5 weeks agotest: don't register short-living containers with machined, again
Frantisek Sumsal [Wed, 4 Mar 2026 11:32:15 +0000 (12:32 +0100)] 
test: don't register short-living containers with machined, again

Otherwise we might try to register the same scope again before the
previous instance gets a chance to be cleaned up:

[   54.378392] systemd-nspawn[2554]: ░ Spawning container TEST-13-NSPAWN.defaultinaccessiblepaths.nxs on /var/lib/machines/TEST-13-NSPAWN.default_inaccessible_paths.nxs.
[   54.382202] systemd-nspawn[2554]: Failed to allocate scope: Unit TEST-13-NSPAWN.defaultinaccessiblepaths.nxs.scope was already loaded or has a fragment file.
[   54.411211] systemd[1]: TEST-13-NSPAWN.service: Main process exited, code=exited, status=1/FAILURE
[   54.411413] systemd[1]: TEST-13-NSPAWN.service: Failed with result 'exit-code'.
[   54.411885] systemd[1]: Failed to start TEST-13-NSPAWN.service - TEST-13-NSPAWN.

This is basically the same change as in
6a05abb9b49900774bc0323316103dceab0c1a7d but for the newly added tests.

Follow-up for 83b8daa032cd0adb538cfd9467e6acf2c44aa661.

Resolves: #40945

5 weeks agonetwork: Rename ModemManager .network section WRT tech, not project...
Oleksandr Andrushchenko [Mon, 2 Mar 2026 15:01:31 +0000 (17:01 +0200)] 
network: Rename ModemManager .network section WRT tech, not project...

and use dedicated knobs for every option used in
former SimpleConnectProperties.
New section is [MobileNetwork] with the following configuration options:

APN=
AllowedAuthenticationMechanisms==
User=
Password=
IPFamily=
AllowRoaming=
PIN=
OperatorId=

5 weeks agoportable: Add ExtensionImages drop-in for any extension (#40911)
Zbigniew Jędrzejewski-Szmek [Wed, 4 Mar 2026 10:44:00 +0000 (11:44 +0100)] 
portable: Add ExtensionImages drop-in for any extension (#40911)

The diff seems big, but it's just removing and if and deleting the
indentation. With `git show -w` you can see clearly that is just one
line. In the files tab, in github, you can click "hide whitespaces" and
it is clear too.

I don't know if there is some better way, but when using a portable
service with an extension image that just overlays files I need to
manually add the `ExtensionImages=`. And that is added automatically for
other extension images that provide a service unit.

So, this patch just makes sure we add the `ExtensionImages=` for any
extension.

Any thoughts?

Below the commit msg for more details:

---

    Before this patch, when running:

            portablectl attach --extension ext.raw ./base.raw

No drop-in is added for the "ExtensionImages" if there aren't units from
    the extension loaded.

But the extension can just overlay files, as in my case. So before this
patch, I also need to manually add a drop-in with "ExtensionImages=" for
    it to really be loaded.

Let's just always add the drop-in for extensions. This way, it works for
    extensions that just overlay files too.

Please note this commit just removes the if (simpler to view the diff
    with git show -w). Also, the if checked for m->image_path being not
NULL, but removing it shouldn't cause a NULL pointer dereference.
Because
m->image_path is not used inside the if (it was needed just for the if
itself) and image_path is asserted at the beginning of the function to
    be non-NULL too.

    This was like this since the beginning of time in 907952bbc9
    ("portabled: add --extension parameter for layered images support")

5 weeks agotpm2: add hwdb quirk db, to deal with borked TPMs (#40931)
Lennart Poettering [Wed, 4 Mar 2026 08:54:10 +0000 (09:54 +0100)] 
tpm2: add hwdb quirk db, to deal with borked TPMs (#40931)

This adds infrastructure so that we can maintain quirks for TPM devices
in hwdb, to deal with issues such as #40485.

I expected that we need this sooner or later anyway, so here we go.

Fixes: #40485
5 weeks agoupdate NEWS 40931/head
Lennart Poettering [Tue, 3 Mar 2026 20:24:51 +0000 (21:24 +0100)] 
update NEWS

5 weeks agotpm2-setup: don't fail service on two more types of failures
Lennart Poettering [Tue, 3 Mar 2026 20:51:38 +0000 (21:51 +0100)] 
tpm2-setup: don't fail service on two more types of failures

Let's bubble up failures all the way until they reach the services, but
then let's carefully gracefully handle some of them, that are about
issues not immediately actionable to the admin, even if they are
potentially quite problematic.

5 weeks agotpm2-setup: use symbolic exit code
Lennart Poettering [Tue, 3 Mar 2026 20:50:49 +0000 (21:50 +0100)] 
tpm2-setup: use symbolic exit code

76 is the bsd exit code EX_PROTOCOL, which is kinda fitting here. Let#s
hence use the symbolic exit code here.

5 weeks agotest: add superficial testcase for tpm2 identification
Lennart Poettering [Tue, 3 Mar 2026 20:20:13 +0000 (21:20 +0100)] 
test: add superficial testcase for tpm2 identification

5 weeks agotpm2-util: check udev db to determine if NvPCRs are going to work
Lennart Poettering [Tue, 3 Mar 2026 14:59:40 +0000 (15:59 +0100)] 
tpm2-util: check udev db to determine if NvPCRs are going to work

Fixes: #40485
5 weeks agotpm2-util: remove strjoina() usage on user-controlled data
Lennart Poettering [Tue, 3 Mar 2026 14:53:09 +0000 (15:53 +0100)] 
tpm2-util: remove strjoina() usage on user-controlled data

5 weeks agohwdb: introduce hwdb for tpm2 devices
Lennart Poettering [Tue, 3 Mar 2026 13:06:44 +0000 (14:06 +0100)] 
hwdb: introduce hwdb for tpm2 devices

This hwdb is can carry hw quirks and similar for us, in particular tell
us if nvpcrs have a chance of working.

5 weeks agoudev: add tpm2_id builtin
Lennart Poettering [Tue, 3 Mar 2026 11:32:11 +0000 (12:32 +0100)] 
udev: add tpm2_id builtin

We need to be able to look up tpm2 metadata from hwdb, hence add a way
to synthesize a whdb lookup key from with udev rules.

5 weeks agotpm2-util,analyze: add helper for generating hwdb lookup key from TPM2 vendor data
Lennart Poettering [Tue, 3 Mar 2026 11:28:45 +0000 (12:28 +0100)] 
tpm2-util,analyze: add helper for generating hwdb lookup key from TPM2 vendor data

Our goal is to find TPM2 metadata in hwdb, hence let's compile a
"modalias"-style string from the TPM2 metadata, we can use as hwdb
lookup key.

5 weeks agoanalyze: add "identify-tpm2" command that shows TPM2 chip information
Lennart Poettering [Tue, 3 Mar 2026 11:28:22 +0000 (12:28 +0100)] 
analyze: add "identify-tpm2" command that shows TPM2 chip information

5 weeks agotpm2-util: add tpm2_get_vendor_info() helper for getting TPM2 vendor info from the...
Lennart Poettering [Tue, 3 Mar 2026 11:27:55 +0000 (12:27 +0100)] 
tpm2-util: add tpm2_get_vendor_info() helper for getting TPM2 vendor info from the device

5 weeks agotpm2-util: also load libtss2-tcti-device.so.0 in dlopen_tpm2()
Lennart Poettering [Tue, 3 Mar 2026 13:27:36 +0000 (14:27 +0100)] 
tpm2-util: also load libtss2-tcti-device.so.0 in dlopen_tpm2()

This TCTI module is the one we need to actually access a Linux TPM
device, we'll hence pretty much always need it if we do TPM at all.
Given that we nowadays turn off dlopen() after fork() in the child,
let's explicitly load it as part of dlopen_tpm2() so that it is
available whenever TPM2 is used.

5 weeks agoparse_hwdb: sort general matches
Lennart Poettering [Tue, 3 Mar 2026 20:09:27 +0000 (21:09 +0100)] 
parse_hwdb: sort general matches

5 weeks agoparse_hwdb: introduce local variable for boolean syntax
Lennart Poettering [Tue, 3 Mar 2026 20:07:57 +0000 (21:07 +0100)] 
parse_hwdb: introduce local variable for boolean syntax

5 weeks agotpm2-util: mark two functions as static that are not used outside of tpm2-util.c
Lennart Poettering [Tue, 3 Mar 2026 15:00:00 +0000 (16:00 +0100)] 
tpm2-util: mark two functions as static that are not used outside of tpm2-util.c

5 weeks agoudevadm: fix --help text for udevadm test-builtin
Lennart Poettering [Tue, 3 Mar 2026 13:28:46 +0000 (14:28 +0100)] 
udevadm: fix --help text for udevadm test-builtin

5 weeks agoansi-color: in 256 mode, always set the fallback color first
Mike Yuan [Sun, 1 Mar 2026 13:20:53 +0000 (14:20 +0100)] 
ansi-color: in 256 mode, always set the fallback color first

Linux console is very weird when it comes to ANSI color sequences.
Not only that it isn't aware of ':' separator (c.f.
https://github.com/systemd/systemd/pull/40878#issuecomment-3979826739),
it even skips the whole CSI-m sequence if it contains parts it cannot
parse. Hence when color mode is set to 256 (i.e. default when no
extra info is available) let's always emit two distinct CSI-m sequences,
and set the fallback 16 color first in case the terminal doesn't have
complete support for the 256 one.

Replaces #40905

5 weeks agotree-wide: use ALPHANUMERICAL where appropriate
Mike Yuan [Tue, 3 Mar 2026 21:24:39 +0000 (22:24 +0100)] 
tree-wide: use ALPHANUMERICAL where appropriate

Prompted by 43116c56621c7317852c01e67dbcaa78b5e7ff70

5 weeks agoudev: rules: improve usb integration detection
David Santamaría Rogado [Sun, 1 Mar 2026 18:55:27 +0000 (19:55 +0100)] 
udev: rules: improve usb integration detection

usb hubs tend to expose removable attribute as unknown. This makes some
problems like a hub for external usb ports in pogo pins is unknown and
also soldered hubs in laptops for keyboard+touchpad.

Let's set internal when the device removable attribute is fixed and
external when removable, but when it's unknown lets check the parent
ports (not the host devpath!=0) attribute to decide.

This makes us to missdetect pogo ping connected external usb hubs but
let us to correctly detect laptop internal keyboards and touchpads that
are wired through hubs instead directly.

This behaviour is more desirable, as actually there are a bunch of
laptops with this setup.

Fixes: a4381cae8bfacb1160967ac499c2919da7ff8c2b.
5 weeks agovmspawn: change order of fields in --extra-drive=
Zbigniew Jędrzejewski-Szmek [Tue, 3 Mar 2026 15:32:29 +0000 (16:32 +0100)] 
vmspawn: change order of fields in --extra-drive=

Closes #40877. As requested, --extra-drive=path[:format] is changed
to --extra-drive=[format:]path, so that the parsing is less ambiguous.
(In the original request, it was requested that the empty format can be
used also, but that was dropped in the second version of the patch.)

5 weeks agoChores for RC2 (#40939)
Luca Boccassi [Tue, 3 Mar 2026 21:39:43 +0000 (21:39 +0000)] 
Chores for RC2 (#40939)

5 weeks agotree-wide: use DIGITS and friends
Yu Watanabe [Tue, 3 Mar 2026 13:34:41 +0000 (22:34 +0900)] 
tree-wide: use DIGITS and friends

5 weeks agoudev/scsi: use hexchar()
Yu Watanabe [Tue, 3 Mar 2026 13:34:27 +0000 (22:34 +0900)] 
udev/scsi: use hexchar()

5 weeks agosd-messages: fix typo
Lennart Poettering [Tue, 3 Mar 2026 16:02:48 +0000 (17:02 +0100)] 
sd-messages: fix typo

(This was introduced in v260, i.e. not yet released, hence not API
break)

5 weeks agomachined: add comment explaining access to machine objects a bit
Lennart Poettering [Tue, 3 Mar 2026 17:22:29 +0000 (18:22 +0100)] 
machined: add comment explaining access to machine objects a bit

5 weeks agoNEWS: move interesting items closer to top and mention PrivateTmp changes
Zbigniew Jędrzejewski-Szmek [Tue, 3 Mar 2026 17:45:29 +0000 (18:45 +0100)] 
NEWS: move interesting items closer to top and mention PrivateTmp changes

In https://bugzilla.redhat.com/show_bug.cgi?id=2443620 it was
reported that the changes to unit ordering were surprising. Let's
add a note about the PrivateTmp= handling changes.
Follow-up for https://github.com/systemd/systemd/pull/39790.

5 weeks agoNEWS: update contributors list 40939/head
Luca Boccassi [Tue, 3 Mar 2026 17:44:49 +0000 (17:44 +0000)] 
NEWS: update contributors list

5 weeks agoUpdate hwdb
Luca Boccassi [Tue, 3 Mar 2026 17:42:40 +0000 (17:42 +0000)] 
Update hwdb

ninja -C build update-hwdb

5 weeks agosystemctl-start-unit: enclose command in single quotes
Mike Yuan [Tue, 3 Mar 2026 16:50:19 +0000 (17:50 +0100)] 
systemctl-start-unit: enclose command in single quotes

5 weeks agosystemctl: rename enqueue-marked-jobs to enqueue-marked (#40930)
Zbigniew Jędrzejewski-Szmek [Tue, 3 Mar 2026 16:39:23 +0000 (17:39 +0100)] 
systemctl: rename enqueue-marked-jobs to enqueue-marked (#40930)

Closes #40883. As described in the issue, it's not "jobs" that are
marked, and also the name is unnecessarilly long.

I think we don't need any compatibility measures here. At least in the
rpm world, package upgrade scripts go through the helper which is part
of the package so the new systemctl and the new helper are upgraded
together.

5 weeks agohwdb/keyboard: Map FN key on Positron Proxima 15
Mikhail Novosyolov [Tue, 3 Mar 2026 13:57:30 +0000 (16:57 +0300)] 
hwdb/keyboard: Map FN key on Positron Proxima 15

After kernel commit 907bc9268a ("Input: atkbd - map F23 key to support default copilot shortcut")
Fn+F5 combination (switch touchpad on/off) stopped working correctly.

Fn produces F23, it is probably a bug in BIOS, ther eis no "Copilot" key.
It was ignored before that commit, but now we have to remap it here in hwdb.

This workaround is similar to systemd commit d2502f55a2d
("hwdb/keyboard: Map FN key on TUXEDO InfinityFlex 14 Gen1")

Hardware probe of this notebook: https://linux-hardware.org/?probe=7aca7ed668
See also: https://bugzilla.rosa.ru/show_bug.cgi?id=19950

5 weeks agosystemctl: rename enqueue-marked-jobs to enqueue-marked 40930/head
Zbigniew Jędrzejewski-Szmek [Tue, 3 Mar 2026 14:22:08 +0000 (15:22 +0100)] 
systemctl: rename enqueue-marked-jobs to enqueue-marked

Closes #40883. As described in the issue, it's not "jobs" that are
marked, and also the name is unnecessarilly long.

I think we don't need any compatibility measures here. At least in the
rpm world, package upgrade scripts go through the helper which is part
of the package so the new systemctl and the new helper are upgraded
together.

5 weeks agoNEWS: mention the sd_varlink_field_type_t breakage
Zbigniew Jędrzejewski-Szmek [Tue, 3 Mar 2026 14:05:31 +0000 (15:05 +0100)] 
NEWS: mention the sd_varlink_field_type_t breakage

Follow-up for 93d768e0f36a62afed7ebbf3abe3385cfd186480. The commit with
the fix didn't mention this, but the reported reproducer was:
> Install openSUSE Tumbleweed with account-utils and systemd v258.
> Compile and install systemd v260. Run "varlinkctl list-methods
> /run/account/newidmapd-socket" -> the newidmap service crashes in
> varlink_idl_format_all_fields(). Recompile newidmap with systemd v260
> headers -> varlinkctl list-methods works again.

Other people might hit the same issue, so let's mention that this was
fixed.

5 weeks agosome chaseat() love (#40825)
Zbigniew Jędrzejewski-Szmek [Tue, 3 Mar 2026 13:53:20 +0000 (14:53 +0100)] 
some chaseat() love (#40825)

5 weeks agoTODO: fix typo
Yu Watanabe [Tue, 3 Mar 2026 13:11:44 +0000 (22:11 +0900)] 
TODO: fix typo