Commit Graph
86941 Commits
Author SHA1 Message Date
Mike Yuan 08e4cf491a various: make bus objects static 2026-03-04 14:32:16 +01:00
Mike Yuan 5aeda638bb core/varlink-metrics: make metric_family_table static 2026-03-04 14:32:16 +01:00
Mike Yuan a0ea74092e shared/varlink-*: normalize includes 2026-03-04 14:32:16 +01:00
Mike Yuan 769b0bf746 various: mark arg_* as static 2026-03-04 14:32:15 +01:00
Mike Yuan 192954ac68 bootctl: declare missing arg_* in header
Follow-up for 90cf998875
2026-03-04 14:32:15 +01:00
Mike Yuan 18d1f2dced tree-wide: make private hash ops static 2026-03-04 14:32:15 +01:00
Mike Yuan 11f06ab768 shared/acpi-fpdt: set _packed_ attr properly
We were declaring a variable named _packed...
2026-03-04 14:32:15 +01:00
Luca Boccassi 2c635c7baa meson: bump version to v260~rc2 2026-03-04 13:19:16 +00:00
Luca Boccassi ba6c437ef9 NEWS: update contributors list 2026-03-04 13:19:16 +00:00
Luca Boccassi b55a8ed469 NEWS: finalize place and date 2026-03-04 13:03:44 +00:00
Luca Boccassi e5a5656b55 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 adaff8eb35
2026-03-04 13:03:44 +00:00
Frantisek Sumsal acf00ba7b5 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
6a05abb9b4 but for the newly added tests.

Follow-up for 83b8daa032.

Resolves: #40945
2026-03-04 13:03:15 +00:00
Oleksandr Andrushchenko 899992bc1e 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=
2026-03-04 12:42:19 +01:00
Zbigniew Jędrzejewski-Szmek a22ad0efcc 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")
2026-03-04 11:44:00 +01:00
Lennart Poettering ed65bc11c5 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
2026-03-04 09:54:10 +01:00
Lennart Poettering 378b2f0d4a update NEWS 2026-03-04 08:28:46 +01:00
Lennart Poettering 64fd94faa0 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.
2026-03-04 08:28:46 +01:00
Lennart Poettering 3dc670901e 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.
2026-03-04 08:28:46 +01:00
Lennart Poettering 9c8a2e53d3 test: add superficial testcase for tpm2 identification 2026-03-04 08:28:46 +01:00
Lennart Poettering a420348cc3 tpm2-util: check udev db to determine if NvPCRs are going to work
Fixes: #40485
2026-03-04 08:28:46 +01:00
Lennart Poettering 9c40895f13 tpm2-util: remove strjoina() usage on user-controlled data 2026-03-04 08:28:46 +01:00
Lennart Poettering f2eed3fa25 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.
2026-03-04 08:28:41 +01:00
Lennart Poettering dc75e54270 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.
2026-03-04 08:28:29 +01:00
Lennart Poettering bafc133178 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.
2026-03-04 08:28:29 +01:00
Lennart Poettering 205b70e328 analyze: add "identify-tpm2" command that shows TPM2 chip information 2026-03-04 08:28:29 +01:00
Lennart Poettering 98a9844f3e tpm2-util: add tpm2_get_vendor_info() helper for getting TPM2 vendor info from the device 2026-03-04 08:28:29 +01:00
Lennart Poettering 5f85409f93 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.
2026-03-04 08:28:29 +01:00
Lennart Poettering 96a8bfcd7a parse_hwdb: sort general matches 2026-03-04 08:22:20 +01:00
Lennart Poettering 4dbb0cd0bf parse_hwdb: introduce local variable for boolean syntax 2026-03-04 08:22:20 +01:00
Lennart Poettering 170a8f1d40 tpm2-util: mark two functions as static that are not used outside of tpm2-util.c 2026-03-04 08:22:20 +01:00
Lennart Poettering 59a9d1d8ca udevadm: fix --help text for udevadm test-builtin 2026-03-04 08:47:19 +09:00
Mike Yuan 36d30330f7 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
2026-03-03 23:56:05 +01:00
Mike Yuan 085f92730a tree-wide: use ALPHANUMERICAL where appropriate
Prompted by 43116c5662
2026-03-04 07:36:10 +09:00
David Santamaría Rogado 3e7b9b7462 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: a4381cae8b.
2026-03-04 07:33:51 +09:00
Zbigniew Jędrzejewski-Szmek a8637c059b 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.)
2026-03-04 07:05:32 +09:00
Luca Boccassi 7791edc112 Chores for RC2 (#40939) 2026-03-03 21:39:43 +00:00
Yu Watanabe 43116c5662 tree-wide: use DIGITS and friends 2026-03-03 22:18:26 +01:00
Yu Watanabe 8e82ea1468 udev/scsi: use hexchar() 2026-03-03 22:18:26 +01:00
Lennart Poettering acd23fc491 sd-messages: fix typo
(This was introduced in v260, i.e. not yet released, hence not API
break)
2026-03-03 20:15:29 +01:00
Lennart Poettering ec718b44a1 machined: add comment explaining access to machine objects a bit 2026-03-03 20:01:09 +01:00
Zbigniew Jędrzejewski-Szmek 6e0f0510d2 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.
2026-03-03 18:50:27 +01:00
Luca Boccassi 05c2147a52 NEWS: update contributors list 2026-03-03 17:44:49 +00:00
Luca Boccassi 71a230d4a6 Update hwdb
ninja -C build update-hwdb
2026-03-03 17:42:40 +00:00
Mike Yuan 38a527b0c6 systemctl-start-unit: enclose command in single quotes 2026-03-03 17:51:43 +01:00
Zbigniew Jędrzejewski-Szmek 80c78ab0e9 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.
2026-03-03 17:39:23 +01:00
Mikhail Novosyolov 9aad3336ff 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 d2502f55a2
("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
2026-03-03 23:31:01 +09:00
Zbigniew Jędrzejewski-Szmek d90858544c 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.
2026-03-03 15:26:45 +01:00
Zbigniew Jędrzejewski-Szmek ec4ff79f07 NEWS: mention the sd_varlink_field_type_t breakage
Follow-up for 93d768e0f3. 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.
2026-03-03 15:05:31 +01:00
Zbigniew Jędrzejewski-Szmek 72baece86a some chaseat() love (#40825) 2026-03-03 14:53:20 +01:00
Yu Watanabe 950eabc791 TODO: fix typo 2026-03-03 22:11:44 +09:00