Commit Graph

83438 Commits

Author SHA1 Message Date
Allison Karlitskaya
5a1b64fee0 man: add docs for ssh.ephemeral-authorized_keys-all
This was added in 071155a1fb ("ssh-generator: support
ssh.ephemeral-key.all-users") without corresponding documentation.  Add
the missing docs now.
2025-09-03 13:04:34 +02:00
Daan De Meyer
1207ba48d7 mkosi: Relax separate branch check in mkosi.sync
There's no guarantee that $GIT_BRANCH is always the same across
stable release branches and main. But we still need to make sure
we switch commits if we're switching between main and release branches.

To make this work, let's not check if the current HEAD commit is an
ancestor of the currently configured origin branch. Instead, let's
check if any of the origin branches contains the current HEAD commit.
This still makes sure that we won't switch commits if we're working
on a local branch while making sure that we do switch commits if we're
switching between main and stable release branches with different
git branches configured for the packaging repo checkout.
2025-09-03 12:11:48 +02:00
Yu Watanabe
9507e118e9 pcrlock: use WRITE_STRING_FILE_LABEL
Fixes #38727.
2025-09-03 11:14:04 +02:00
Yu Watanabe
cbbed2bd44 TEST-45-TIMEDATE: rotate journal before parsing log message
Similar to 04ade57a42.

Fixes the following failure (long line is wrapped):
```
TEST-45-TIMEDATE.sh[234]: + journalctl --sync
TEST-45-TIMEDATE.sh[234]: + for _ in {0..9}
TEST-45-TIMEDATE.sh[234]: + journalctl -q -n 1 '--since=2025-09-01 17:09:25.442936' -p info -t busctl --grep .
TEST-45-TIMEDATE.sh[363]: Sep 01 17:09:25 H busctl[351]: {"type":"signal","endian":"l","flags":1,"version":1,
  "cookie":67,"timestamp-realtime":1756746565578529,"sender":":1.11","path":"/org/freedesktop/timedate1",
  "interface":"org.freedesktop.DBus.Properties","member":"PropertiesChanged","payload":{"type":"sa{sv}as",
    "data":["org.freedesktop.timedate1",{"NTP":{"type":"b","data":false}},[]]}}
TEST-45-TIMEDATE.sh[366]: ++ journalctl -q -n 1 '--since=2025-09-01 17:09:25.442936' -p info -t busctl -o cat
TEST-45-TIMEDATE.sh[367]: ++ jq -r '.payload.data[1].NTP.data'
TEST-45-TIMEDATE.sh[366]: Journal file /run/log/journal/07946b7846564ac0ad1c86e8cabed329/system.journal is truncated, ignoring file.
TEST-45-TIMEDATE.sh[234]: + [[ '' == \f\a\l\s\e ]]
```
2025-09-02 09:38:51 +01:00
Yu Watanabe
5a8b9fd49f NEWS: mention ACLs by "uaccess" is always set by udevd
Follow-up for c960ca2be1 (#36444).
Prompted by https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1112660.
2025-09-01 10:06:18 +01:00
Sergey A
28e8914f29 po: Translated using Weblate (Russian)
Currently translated at 99.2% (262 of 264 strings)

Co-authored-by: Sergey A <Ser82-png@yandex.ru>
Translate-URL: https://translate.fedoraproject.org/projects/systemd/main/ru/
Translation: systemd/main
2025-09-01 03:05:44 +09:00
Felix Pehla
823fc6e9f7 man: loader.conf(5): document auto-reboot/auto-poweroff
These options were added in v255 with commit
cb341090d0, but were not documented as
standalone options in loader.conf. See #29440 for more information.
2025-08-31 08:22:44 +09:00
Josh Triplett
8a6128b68b NEWS: Extend note on /run/lock to recommend locking devices directly 2025-08-30 09:56:41 +01:00
Luca Boccassi
dd28a11d57 NEWS: add note about removal of /run/lock/ from our tmpfiles.d 2025-08-30 02:46:15 +09:00
Yu Watanabe
8c0cad97c7 units: portabled requires /dev/loop-control
Fixes #38692.
2025-08-29 14:49:26 +09:00
Matthias Gerstner
1158545ef7 homed: AddSigningKey: only feed data to OpenSSL _after_ Polkit auth
As a hardening measure it makes sense not to process potentially crafted
data in `openssl_pubkey_to_pem()` before we know that the caller is
authorized to perform the action.
2025-08-29 14:49:12 +09:00
Yu Watanabe
a521e76dc8 tree-wide: some trivial fixes around table_*() result check (#38753) 2025-08-29 05:23:26 +09:00
Antonio Alvarez Feijoo
3eb590f2b0 tree-wide: avoid logging 2 error messages if table_print_with_pager() fails
`table_print_with_pager()` already calls `table_log_print_error()` internally if
there is an error.
2025-08-28 14:09:50 +02:00
Antonio Alvarez Feijoo
134fde8666 resolvectl: add missing error check
Follow-up for 45817e9245
2025-08-28 14:09:14 +02:00
Luca Boccassi
e91bfad241 analyze: fix unit-shell/unit-gdb when target unit has exited
Follow-up for 9a08000d18
Follow-up for ad6e02e7b4
2025-08-28 12:11:45 +01:00
Nick Rosbrook
1be088c299 test: ensure that reload updates DNSSEC and DNSOverTLS on link scopes 2025-08-27 22:33:38 +09:00
Nick Rosbrook
f818c3d6b6 test: use numeric prefixes in resolved.conf.d overrides
There are a lot of resolved.conf.d drop-ins used in these tests. Use
proper numeric prefixes, especially to avoid confusion with sorting
relative to test.conf.

Make the test base config 10-test.conf, and use 90-*.conf elsewhere.
2025-08-27 22:33:38 +09:00
Nick Rosbrook
6d22472089 resolve: re-create link unicast scopes on reload
On reload, resolved does not apply new DNSSEC= (or DNSOverTLS=) settings
on links, because the link unicast scopes are not re-created. However,
the servers and link states are updated correctly, so resolvectl and link
state files do show the new setting, leading users to believe the change
took effect immediately, the same way `resolvectl dnssec` does.

Fix this by freeing all of the link unicast scopes during reload, so
that they are re-created with the new settings in link_allocate_scopes().
2025-08-27 22:33:38 +09:00
Nick Rosbrook
71da422058 resolve: include DNSSEC and DNSOverTLS modes in dumps
This is useful for testing and debugging. E.g., one can examine the
active DNSSEC mode of the scope using:

$ resolvectl show-cache
2025-08-27 22:33:38 +09:00
Yu Watanabe
5bb434e317 shell-completion: support -i option for journalctl
Follow-up for dde54b8a85.
2025-08-26 19:24:39 +01:00
Lennart Poettering
c663d7e3ea update TODO 2025-08-26 17:35:58 +02:00
Yu Watanabe
37d1f1573b bootctl: do not fail on removing unfied kernel image
A boot loader entry for a unified kernel image has
BootEntry.kernel : path to the image relative to ESP or XBOOTLDR,
BootEntry.path   : path to the image.
Hence, these two effectively point to the same file.

Hence, by unlink command, the image is removed by
```
deref_unlink_file(&known_files, e->kernel, e->root);
```
then later tried again by
```
r = chase_and_unlink(e->path, root, ...);
```
and of course it fails with -ENOENT.

Let's ignore the failure there. We already ignore ENOENT on removal
at various places, especially in deref_unlink_file().

Fixes #38706.
Follow-ups for 8702496bfb.
2025-08-26 15:45:44 +02:00
Lennart Poettering
3ef74e44b8 nsresourced: use a hashed rather than a mangled name as fallback
If we are asked to come up with our own name for the namespace to
allocate (because client enabled "mangle"), then we so far created a
randomized name if shortening what was proposed didn't work. This broke
polkit authorization however, because when polkit is in the mix, we
process method calls twice, submitting the polkit request on the first
and then assuming a response is known on the second invocation. But if
we generate a randomized name for the two checks we'll not be ablet to
match up the requests because it's going to be different. Let's fix that
by not using a randomized name, but one hashed from the socket
connection we are processing mixed with the client provided name. This
will ensure that for the same method call we'll generate the same name,
but different calls (i.e. calls with different names on the same socket,
or with any name on any socket) we'll end up with different names,
minimizing chance of collision.

This ensures PK starts to work with nsresourced userns registration when
a bad or no name is specified, which previously would end up in a PK
query loop.
2025-08-26 15:30:39 +02:00
Lennart Poettering
06de39b3bd import-generator: disable timeout for downloaded images
Downloading images can take arbitrary amounts of time, hence disable the
timeout for it.

Inspired by https://github.com/systemd/particleos/issues/80
2025-08-26 15:23:41 +02:00
Kamil Páral
2f615ec1d1 70-mouse.hwdb: Add Razer Basilisk V3, Asus Cerberus, +2 more
All mice were measured using mouse-dpi-tool, and the measurements match vendors
specs, with the exception of Asus Cerberus (it officially has
500/*1000/1500/2500 DPI, but my measurements were quite different, so I opted
to include the real values).
2025-08-26 10:17:20 +01:00
kanitha chim
7562455ba9 po: Translated using Weblate (Khmer (Central))
Currently translated at 41.2% (109 of 264 strings)

Co-authored-by: kanitha chim <kchim@redhat.com>
Translate-URL: https://translate.fedoraproject.org/projects/systemd/main/km/
Translation: systemd/main
2025-08-26 18:01:21 +09:00
Zbigniew Jędrzejewski-Szmek
20b7e0f1fe man: add note about extending machine-info to man page (#38652) 2025-08-26 10:55:20 +02:00
Yu Watanabe
ef72263f06 udev: fix grammar
Follow-up for 7e50402aa3.
2025-08-26 06:00:03 +09:00
Yu Watanabe
dac478c44c core: fix typo
Follow-up for b3415f5dae.
2025-08-26 04:54:19 +09:00
Yu Watanabe
f78a482393 udev: fix typo
Follow-up for 32333754ae.
2025-08-26 04:49:03 +09:00
Jan Fooken
7bb8e9e82f tmpfiles: don't relabel files in dry run mode
tmpfiles attempts to correct the label of a file during various actions
via the function fd_set_perms().  Currently, said function generally
respects the dry-run mode.  However, it attempts to fix the label of a
given file regardless of the state of said dry-run mode.

This causes problems, because a user could attempt to run tmpfiles with
elevated permissions and dry run enabled, expecting the tool to not
modify their system.  Instead, tmpfiles would falsely relabel a file,
modifying their system.

This commit explicitly checks for when dry-run is enabled and skips the
file relabelling process.  Furthermore, I added logging for both cases.
I found helpful during debugging.  That said, I don't think it's
necessary to use the level LOG_INFO on the dry-run path, as it would
always produce an info log.
2025-08-26 04:07:24 +09:00
Luca Boccassi
9ce6d08196 import-generator: fix crash with no remote string in systemd.pull=
SYSTEMD_PROC_CMDLINE=rd.systemd.pull=raw,machine,blockdev,bootorigin:rootdisk systemd-import-generator

Follow-up for 0c892214f7
2025-08-25 19:08:25 +01:00
Lennart Poettering
ce3b12713b nspawn: the second time on_orderly_shutdown() is called userdata is NULL (#38709)
We know that it is, because we set it to NULL in the very same
on_orderly_shutdown() call.
2025-08-25 19:08:01 +01:00
Luca Boccassi
8f6236164c boot: also remember auto-generated entries
Windows/OSX/shell/etc entries are autogenerated, and should be remembered too
as the previous choice, together with Linux ones.

Follow-up for d870ae47b7

Fixes https://github.com/systemd/systemd/issues/38694
2025-08-25 23:45:12 +09:00
AsciiWolf
e8628ddb78 hwdb: sort SDR devices by vendor name 2025-08-25 13:42:09 +01:00
Yu Watanabe
64fc4917b9 core/unit: use UNIT_FOREACH_DEPENDENCY_SAFE() at several more places
manager_add_job() -> transaction_add_job_and_dependencies() may update
dependencies when a unit is not loaded yet. Hence, we need to restart
dependency loop in that case.

Follow-up for b7777d0884 (#37465).
Fixes #38676.
2025-08-25 13:41:23 +01:00
Felix Pehla
ddc9d2a836 systemd-boot: don't always log NX_COMPAT info
Commit 70b7e03 introduced 3 calls to log_debug() about the presence or
absence of NX_COMPAT support. Since sd-boot does not yet have the
ability to only print messages above a certain loglevel, these will
always be printed, even on top of the configured splash screen. This
commit removes the log_debug() call after a success and only prints
those for missing firmware support if the UEFI should support them in
the first place (i.e. starting with version 2.10).
2025-08-25 13:40:54 +01:00
Jörg Behrmann
7175007020 man: unify spelling of OS-specific 2025-08-25 14:38:00 +02:00
Jörg Behrmann
1dcbb0b4ca tools: ignore root element explicitly in check-version-history
Currently these messages (broken for length)

    2025-08-20T12:04:15.9609277Z
    /home/runner/work/systemd/systemd/tools/check-version-history.py:26:
    FutureWarning: This search incorrectly ignores the root element, and will be fixed in a future version.
    If you rely on the current behaviour, change it to './/funcprototype/funcdef/function'

can be seen in CI output. So let's apply the suggestion.
2025-08-25 14:38:00 +02:00
Jörg Behrmann
09a89190bb man: add note about extending machine-info to man page 2025-08-25 14:38:00 +02:00
Jack Wu
46a688c559 hwdb: enable autosuspend for Dell DW5826e WWAN modem 2025-08-22 23:38:08 +01:00
Luca Boccassi
a4f9ddbbe7 TEST-46-HOMED: improve stability of the test (#38659)
Fixes #38643.
2025-08-22 23:37:52 +01:00
Jesse Guo
88fb777619 po: Translated using Weblate (Chinese (Simplified) (zh_CN))
Currently translated at 100.0% (264 of 264 strings)

Co-authored-by: Jesse Guo <jesseguotech@outlook.com>
Translate-URL: https://translate.fedoraproject.org/projects/systemd/main/zh_CN/
Translation: systemd/main
2025-08-22 12:11:11 +01:00
Yu Watanabe
aed28d0c57 TEST-46-HOMED: homectl unregister and friends needs the target is inactive or absent
Hence, we need to wait for the previous operation finished.
Fixes the following failure:
```
TEST-46-HOMED.sh[107]: + homectl unregister signtest
TEST-46-HOMED.sh[1449]: Failed to unregister home: Home signtest is currently being used, or an operation on home signtest is currently being executed.
```

Fixes #38643
2025-08-22 02:28:58 +09:00
Yu Watanabe
5fb7b67556 TEST-46-HOMED: cleanup homedsshtest earlier 2025-08-22 01:11:35 +09:00
Lennart Poettering
a6d25ebc25 update TODO 2025-08-21 11:44:57 +02:00
Yu Watanabe
dd712ba9c4 homed: do not print sensitive data when debug logging is enabled 2025-08-21 18:15:44 +09:00
Christopher Head
bd254d371b Add Razer Cobra mouse to hwdb
The DPI values are based on the product’s printed documentation. The
frequency values are based on the endpoint descriptor reported by lsusb
(the mouse is a full-speed USB device and bInterval is 1 at all DPI
settings). Both sets of values are for a mouse that has *not* been
touched by the vendor’s configuration tool.
2025-08-21 10:15:38 +01:00
Luca Boccassi
65f3e8dfd2 meson: update version numbers for v258~rc3 2025-08-20 15:16:42 +01:00
Luca Boccassi
a801a6d061 Chores for RC3 (#38653) 2025-08-20 15:16:03 +01:00