]> git.ipfire.org Git - thirdparty/systemd.git/log
thirdparty/systemd.git
2 months agojson-util: don't use assert_return() 39237/head
Lennart Poettering [Tue, 7 Oct 2025 16:57:26 +0000 (18:57 +0200)] 
json-util: don't use assert_return()

assert_return() exists for gracefully handling programmng errors in
public APIs. But these are internal APIs, hence just use a tough
assert().

2 months agojson: add generic dispatchers for version strings
Lennart Poettering [Tue, 9 Sep 2025 09:22:46 +0000 (11:22 +0200)] 
json: add generic dispatchers for version strings

2 months agojson: add new json_dispatch_strv_path() helper
Lennart Poettering [Fri, 29 Aug 2025 13:17:28 +0000 (15:17 +0200)] 
json: add new json_dispatch_strv_path() helper

2 months agobasic/log-context: mark global vars as static
Mike Yuan [Tue, 7 Oct 2025 12:34:41 +0000 (14:34 +0200)] 
basic/log-context: mark global vars as static

2 months agolicensing: update address of FSF
Zbigniew Jędrzejewski-Szmek [Tue, 7 Oct 2025 11:04:47 +0000 (13:04 +0200)] 
licensing: update address of FSF

rpmlint complains about the old address, even though it totally
doesn't matter and nobody cares.

2 months agobootspec: also process uki-url boot loader spec field
Lennart Poettering [Mon, 6 Oct 2025 06:52:21 +0000 (08:52 +0200)] 
bootspec: also process uki-url boot loader spec field

Let's also add support for "uki-url", which was added at the same time to
the spec as "uki".

Follow-up for: 4a94a1b83f8857b906bc7924b3f853768b5499b5

2 months agosysctl: support reading configuration from stdin and command line arguments (#39219)
Lennart Poettering [Mon, 6 Oct 2025 14:12:11 +0000 (16:12 +0200)] 
sysctl: support reading configuration from stdin and command line arguments (#39219)

This makes systemd-sysctl support following syntax, like
systemd-sysusers and systemd-tmpfiles:
```sh
$ /usr/lib/systemd/systemd-sysctl --inline 'foo.bar=42'
$ /usr/lib/systemd/systemd-sysctl - <<EOF
foo.bar=42
EOF
```

2 months agomute-console: remove unimplemented option
Antonio Alvarez Feijoo [Mon, 6 Oct 2025 10:42:27 +0000 (12:42 +0200)] 
mute-console: remove unimplemented option

```
$ build/systemd-mute-console -q
Code should not be reached at src/mute-console/mute-console.c:103, function parse_argv(). Aborting. 💥
Aborted (core dumped)
```

2 months agocopilot: Tell the AI to be thorough
Daan De Meyer [Mon, 6 Oct 2025 10:59:44 +0000 (12:59 +0200)] 
copilot: Tell the AI to be thorough

At least when doing a local review, asking it to be thorough results
in a lot more comments on coding style violation so let's add such an
instruction to the global instructions.

2 months agodocs: Mention newline requirement for multi-line function decl
Daan De Meyer [Mon, 6 Oct 2025 10:44:09 +0000 (12:44 +0200)] 
docs: Mention newline requirement for multi-line function decl

2 months agotimesync: several cleanups (#39220)
Mike Yuan [Mon, 6 Oct 2025 10:16:47 +0000 (12:16 +0200)] 
timesync: several cleanups (#39220)

Prompted by the logs provided at
https://github.com/systemd/systemd/issues/36498#issuecomment-3369227155.

2 months agoAdd copilot instructions
Daan De Meyer [Mon, 6 Oct 2025 08:42:10 +0000 (10:42 +0200)] 
Add copilot instructions

This was generated using copilot itself with Claude Sonnet 4.5 as
the backing model.

The idea is to test this out on some PRs to see whether copilot can
provide useful PR reviews. The idea is that it'll be able to take care
of the low hanging fruit like coding style issues and such. Once we get
some feedback on how it performs, we can make more changes to this document
to get it to behave better (assuming we decide to keep using it at all).

2 months agomkosi: update debian commit reference to e50fce1d4b2a9f1bb990027de8e86603f3b42301
Luca Boccassi [Sun, 5 Oct 2025 18:46:50 +0000 (19:46 +0100)] 
mkosi: update debian commit reference to e50fce1d4b2a9f1bb990027de8e86603f3b42301

e50fce1d4b Fix installation of new manpages
8b45d3d793 Install new files for upstream build
a401468f75 autopkgest: install bsdutils and bsdextrautils for unit tests
587584577e Explicitly disable bpf-framework for stage1 builds
209a8475d9 systemd: recommend login package

2 months agovarlinkctl: add detailed error message when `--more` is needed
Jelle van der Waa [Sat, 4 Oct 2025 13:11:05 +0000 (15:11 +0200)] 
varlinkctl: add detailed error message when `--more` is needed

Instead of reporting a "Invalid exchange", tell the user the `--more`
flag is missing.

Closes: #39201
2 months agotest: add test cases for sysctl reading configuration from stdin or positional arguments 39219/head
Yu Watanabe [Sun, 5 Oct 2025 18:21:05 +0000 (03:21 +0900)] 
test: add test cases for sysctl reading configuration from stdin or positional arguments

2 months agotimesync: assume link NTP servers are unchanged on error and no servers registered yet 39220/head
Yu Watanabe [Sun, 5 Oct 2025 19:03:39 +0000 (04:03 +0900)] 
timesync: assume link NTP servers are unchanged on error and no servers registered yet

This also silences annoying debug message when networkd is not running,
in which case sd_network_get_ntp() returns -ENOENT.

2 months agotimesync: drop redundant space
Yu Watanabe [Sun, 5 Oct 2025 19:21:32 +0000 (04:21 +0900)] 
timesync: drop redundant space

2 months agosd-bus: silence spurious debugging log message
Yu Watanabe [Sun, 5 Oct 2025 19:26:19 +0000 (04:26 +0900)] 
sd-bus: silence spurious debugging log message

2 months agotest: merge TEST-76-SYSCTL into TEST-87-AUX-UTILS-VM
Yu Watanabe [Sun, 5 Oct 2025 18:26:28 +0000 (03:26 +0900)] 
test: merge TEST-76-SYSCTL into TEST-87-AUX-UTILS-VM

2 months agosysctl: add --inline option
Yu Watanabe [Sun, 5 Oct 2025 17:29:39 +0000 (02:29 +0900)] 
sysctl: add --inline option

This maybe useful to apply a simple configuration without creating conf
file.

2 months agosysctl: port parse_file() over conf_file_read()
Yu Watanabe [Sun, 5 Oct 2025 16:51:59 +0000 (01:51 +0900)] 
sysctl: port parse_file() over conf_file_read()

Then, systemd-sysctl can also support stdin and relative paths, like
systemd-sysusers and systemd-tmpfiles do.

2 months agosysctl: assorted coding style cleanups
Yu Watanabe [Sun, 5 Oct 2025 17:55:53 +0000 (02:55 +0900)] 
sysctl: assorted coding style cleanups

2 months agosysctl: shorten code a bit
Yu Watanabe [Sun, 5 Oct 2025 17:41:15 +0000 (02:41 +0900)] 
sysctl: shorten code a bit

2 months agosysctl: propagate failures in parsing credential files
Yu Watanabe [Sun, 5 Oct 2025 17:27:27 +0000 (02:27 +0900)] 
sysctl: propagate failures in parsing credential files

We already propagate failures in parsing conf files in usual places, or
given by command arguments. Let's make the behavior consistent.

2 months agosysctl: prettify help message
Yu Watanabe [Sun, 5 Oct 2025 17:26:04 +0000 (02:26 +0900)] 
sysctl: prettify help message

2 months agosysctl: add missing help entry for --strict
Yu Watanabe [Sun, 5 Oct 2025 17:20:21 +0000 (02:20 +0900)] 
sysctl: add missing help entry for --strict

Follow-up for e88748c17e58aad6818e64fd3071de011808165e.

2 months agomkosi: pull in new knot package for TEST-75-RESOLVED
Luca Boccassi [Sun, 5 Oct 2025 13:12:17 +0000 (14:12 +0100)] 
mkosi: pull in new knot package for TEST-75-RESOLVED

5728s TEST-75-RESOLVED.sh[439]: /usr/lib/systemd/tests/testdata/units/TEST-75-RESOLVED.sh: line 154: keymgr: command not found

The command was split out into a new package

2 months agoNEWS: Document new uaccess udev rule priority requirement
Guido Günther [Sun, 5 Oct 2025 07:26:26 +0000 (09:26 +0200)] 
NEWS: Document new uaccess udev rule priority requirement

Closes: https://github.com/systemd/systemd/issues/39206
Signed-off-by: Guido Günther <agx@sigxcpu.org>
2 months agomam: add sd_bus_track_handler_t signature to manpage (#39204)
jsks [Sun, 5 Oct 2025 10:00:22 +0000 (12:00 +0200)] 
mam: add sd_bus_track_handler_t signature to manpage (#39204)

This is consistent with how the other handler/callback types are
documented.

2 months agoshared/bootspec: don't warn for new `loader.conf` options and correctly parse new...
Yu Watanabe [Sat, 4 Oct 2025 21:35:54 +0000 (23:35 +0200)] 
shared/bootspec: don't warn for new `loader.conf` options and correctly parse new `uki` and `profile` boot entry options (#39165)

Commit e2a3d562189c413de3262ec47cdc1e1b0b13d78b added the `uki` option
to sd-boot, and 1e9c9773b994f2f703a5aa5ba80961e90be3a892 added
`profile`, but because these were not added in src/shared/bootspec,
bootctl still shows warnings like `Unknown line 'uki', ignoring.` when
parsing the config. This PR allows parsing and displaying them correctly
in `bootctl` output. It also stops it from printing a warning for any of
the new `loader.conf` options (`log-level`, `reboot-on-error`, etc.).
Note that `uki-url` is still not handled as I can't easily test it.

2 months agoman/sd-login: minor grammar updates
Zbigniew Jędrzejewski-Szmek [Fri, 3 Oct 2025 16:36:39 +0000 (18:36 +0200)] 
man/sd-login: minor grammar updates

2 months agoman: fix advice regarding thread safety of libsystemd
Zbigniew Jędrzejewski-Szmek [Fri, 3 Oct 2025 11:17:32 +0000 (13:17 +0200)] 
man: fix advice regarding thread safety of libsystemd

The prohibition to move libsystemd objects between threads was added in
64a7ef8bc06b5dcfcd9f99ea10a43bde75c4370f ('man: be more explicit about thread
safety of sd_journal'). At the time, this was valid, because we were using the
mempool for allocation and it apparently didn't handle access from different
threads. Sadlly, the commit links to a bugzilla entry referenced in the commit
is not publicly visible anymore, so the details are murky. But we stopped using
the mempool in a5d8835c78112206bbf0812dd4cb471f803bfe88 ('mempool: only enable
mempool use when linked to libsystemd-shared.so'), with subsequent followup in
b01f31954f1c7c4601925173ae2638b572224e9a ('Turn mempool_enabled() into a weak
symbol'). The restriction added in the man page is not necessary since then.

The text in the man page was arguably incorrect in calling the code
"thread-agnostic". If the code does not support being touched from threads at
all and has global state to tied to the main thread, it is not "agnostic", but
just doesn't support threads.

(I'm looking into https://github.com/systemd/python-systemd/issues/143, and
with the current scheme, the python-systemd module and all python code using
libsystemd would be very hard to use. With the change to free-threaded python
in python3.13, i.e. the replacement of single Global Interpreter Lock by
locking on individual objects, this limitation would become even more
constraining.)

2 months agoUse string tables to parse option arguments (#39173)
Yu Watanabe [Sat, 4 Oct 2025 21:16:12 +0000 (23:16 +0200)] 
Use string tables to parse option arguments (#39173)

2 months agoTEST-74-AUX-UTILS: use sshd_config.d
val4oss [Wed, 1 Oct 2025 15:32:53 +0000 (17:32 +0200)] 
TEST-74-AUX-UTILS: use sshd_config.d

* From the TEST-74-AUX-UTILS.ssh.sh writing directly into
  /etc/ssh/sshd_config can hide config from distro using /usr/etc.
* Using directory configuration /etc/ssh/sshd_config.d/* suits for all
  cases.

Signed-off-by: val4oss <val4oss@pm.me>
2 months agoman: fix typo
Yu Watanabe [Sat, 4 Oct 2025 20:44:28 +0000 (05:44 +0900)] 
man: fix typo

Follow-up for 91214a37ef4eb8042d2598aa89bae52b410d11a7.
Fixes #39203.

2 months agomeson: add man and html targets (#39207)
Yu Watanabe [Sat, 4 Oct 2025 20:41:58 +0000 (22:41 +0200)] 
meson: add man and html targets (#39207)

2 months agopo: Translated using Weblate (Turkish)
Oğuz Ersen [Sat, 4 Oct 2025 19:48:38 +0000 (19:48 +0000)] 
po: Translated using Weblate (Turkish)

Currently translated at 100.0% (264 of 264 strings)

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

2 months agomeson: add target aliases 'man' and 'html' 39207/head
Zbigniew Jędrzejewski-Szmek [Sat, 4 Oct 2025 16:09:20 +0000 (18:09 +0200)] 
meson: add target aliases 'man' and 'html'

Previously we would need to say 'ninja -C build man/man man/html', now
just 'ninja -C build man html'.

2 months agomeson: drop remaining target names
Zbigniew Jędrzejewski-Szmek [Sat, 4 Oct 2025 16:05:47 +0000 (18:05 +0200)] 
meson: drop remaining target names

Most of those were dropped in 7d247d3cb875e1778e6cc81dbf255b13092b29e0. I left
behind the few cases where the 'output' name was different from the target name.
But we actually don't need those either, so get rid of those. (And one case
where I missed the name argument.)

No functional change, except that e.g. 'ninja -C build update-man-rules-impl'
doesn't work, but I hope nobody was using that.

2 months agoStop specifying license for generated file, instead mark as generated
Zbigniew Jędrzejewski-Szmek [Fri, 3 Oct 2025 14:10:03 +0000 (16:10 +0200)] 
Stop specifying license for generated file, instead mark as generated

I exclude generated files from license check, and I noticed
that this file was marked with a license header, which doesn't
make much sense, it is not copyrightable.

2 months agomeson: using f-strings in meson
Zbigniew Jędrzejewski-Szmek [Fri, 3 Oct 2025 13:26:20 +0000 (15:26 +0200)] 
meson: using f-strings in meson

Those were added before 0.61 which is our minimum version.

Dots were dropped from the end of some messages. Most messages did not have the
trailing dot.

0.63 added support for multi-line f-strings. We can't use those yet.

2 months agotree-wide: combine DUMP_STRING_TABLE() and return 39173/head
David Tardon [Wed, 1 Oct 2025 17:31:17 +0000 (19:31 +0200)] 
tree-wide: combine DUMP_STRING_TABLE() and return

2 months agonspawn: inline handle_arg_console() to its only call place
David Tardon [Wed, 1 Oct 2025 17:27:23 +0000 (19:27 +0200)] 
nspawn: inline handle_arg_console() to its only call place

2 months agonspawn: set arguments directly
David Tardon [Wed, 1 Oct 2025 17:24:05 +0000 (19:24 +0200)] 
nspawn: set arguments directly

There's no point in going through handle_arg_console() now that all the
checks have been moved out of it.

2 months agonspawn: postpone selection of console mode
David Tardon [Wed, 1 Oct 2025 17:07:53 +0000 (19:07 +0200)] 
nspawn: postpone selection of console mode

Moving it away from argument parsing code allows to simplify that.

2 months agonspawn: use table to parse --console=
David Tardon [Tue, 30 Sep 2025 07:56:09 +0000 (09:56 +0200)] 
nspawn: use table to parse --console=

2 months agomain: extract common code to a function
David Tardon [Fri, 26 Sep 2025 12:58:57 +0000 (14:58 +0200)] 
main: extract common code to a function

2 months agouserdbctl: use table to parse --output=
David Tardon [Fri, 26 Sep 2025 14:11:17 +0000 (16:11 +0200)] 
userdbctl: use table to parse --output=

2 months agouserdbctl: require value for --output=
David Tardon [Thu, 2 Oct 2025 13:57:10 +0000 (15:57 +0200)] 
userdbctl: require value for --output=

Currently, when --output= is used with empty string, it resets the mode.
E.g.,

 # userdbctl user --output=json --output= ...

will use the default output mode, not JSON. But that functionality is
not documented and it seems to be of little practical use. Let's just
drop it.

2 months agovpick-tool: use table to parse --print=
David Tardon [Fri, 26 Sep 2025 13:47:30 +0000 (15:47 +0200)] 
vpick-tool: use table to parse --print=

2 months agohomectl: use table to parse --export-format=
David Tardon [Fri, 26 Sep 2025 13:17:12 +0000 (15:17 +0200)] 
homectl: use table to parse --export-format=

2 months agocgtop: rename enum value to match its string repr.
David Tardon [Thu, 2 Oct 2025 14:13:20 +0000 (16:13 +0200)] 
cgtop: rename enum value to match its string repr.

2 months agonspawn: correct the option name `--private-users-ownership=` when it's not expected...
n0099 [Thu, 2 Oct 2025 08:44:28 +0000 (08:44 +0000)] 
nspawn: correct the option name `--private-users-ownership=` when it's not expected value

2 months agohwdb: fix calibrate rotation sensor for Positivo K116J (#39189)
Lucas Adriano Salles [Thu, 2 Oct 2025 13:50:04 +0000 (08:50 -0500)] 
hwdb: fix calibrate rotation sensor for Positivo K116J (#39189)

Fixes #39188.

2 months agoUpdate systemctl.xml
Managor [Sat, 27 Sep 2025 11:58:01 +0000 (14:58 +0300)] 
Update systemctl.xml

2 months agoUpdate systemctl.xml
Managor [Sat, 27 Sep 2025 11:48:23 +0000 (14:48 +0300)] 
Update systemctl.xml

2 months agobuild(deps): bump ossf/scorecard-action from 2.4.2 to 2.4.3
dependabot[bot] [Wed, 1 Oct 2025 09:02:06 +0000 (09:02 +0000)] 
build(deps): bump ossf/scorecard-action from 2.4.2 to 2.4.3

Bumps [ossf/scorecard-action](https://github.com/ossf/scorecard-action) from 2.4.2 to 2.4.3.
- [Release notes](https://github.com/ossf/scorecard-action/releases)
- [Changelog](https://github.com/ossf/scorecard-action/blob/main/RELEASE.md)
- [Commits](https://github.com/ossf/scorecard-action/compare/05b42c624433fc40578a4040d5cf5e36ddca8cde...4eaacf0543bb3f2c246792bd56e8cdeffafb205a)

---
updated-dependencies:
- dependency-name: ossf/scorecard-action
  dependency-version: 2.4.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2 months agobuild(deps): bump meson from 1.8.3 to 1.9.1 in /.github/workflows
dependabot[bot] [Wed, 1 Oct 2025 09:02:18 +0000 (09:02 +0000)] 
build(deps): bump meson from 1.8.3 to 1.9.1 in /.github/workflows

Bumps [meson](https://github.com/mesonbuild/meson) from 1.8.3 to 1.9.1.
- [Release notes](https://github.com/mesonbuild/meson/releases)
- [Commits](https://github.com/mesonbuild/meson/compare/1.8.3...1.9.1)

---
updated-dependencies:
- dependency-name: meson
  dependency-version: 1.9.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2 months agocgtop: use table to parse --cpu=
David Tardon [Fri, 26 Sep 2025 09:05:19 +0000 (11:05 +0200)] 
cgtop: use table to parse --cpu=

2 months agocgtop: use table to parse --order=
David Tardon [Fri, 26 Sep 2025 08:59:31 +0000 (10:59 +0200)] 
cgtop: use table to parse --order=

2 months agounits/systemd-battery-check.service: minor cleanup (#39178)
Yu Watanabe [Tue, 30 Sep 2025 18:54:00 +0000 (20:54 +0200)] 
units/systemd-battery-check.service: minor cleanup (#39178)

2 months agounits/systemd-battery-check.service: split [Unit] options into groups 39178/head
Mike Yuan [Tue, 30 Sep 2025 14:32:48 +0000 (16:32 +0200)] 
units/systemd-battery-check.service: split [Unit] options into groups

2 months agounits/systemd-battery-check.service: prettify Description=
Mike Yuan [Tue, 30 Sep 2025 14:32:14 +0000 (16:32 +0200)] 
units/systemd-battery-check.service: prettify Description=

Addresses https://github.com/systemd/systemd/pull/39170#issuecomment-3348997894

2 months agoSeveral more timezone related cleanups (#39160)
Mike Yuan [Tue, 30 Sep 2025 13:40:40 +0000 (15:40 +0200)] 
Several more timezone related cleanups (#39160)

Continuation of #38876.

2 months agoshared/bootspec: update valid loader.conf options 39165/head
Felix Pehla [Mon, 29 Sep 2025 21:06:16 +0000 (23:06 +0200)] 
shared/bootspec: update valid loader.conf options

2 months agoshared/bootspec: parse loader.conf options added in v258
Felix Pehla [Sat, 27 Sep 2025 19:58:21 +0000 (21:58 +0200)] 
shared/bootspec: parse loader.conf options added in v258

2 months agotest: store and compare just the property value
Frantisek Sumsal [Mon, 29 Sep 2025 14:11:27 +0000 (16:11 +0200)] 
test: store and compare just the property value

Follow-up for 5730a400fd5ee82566fe03eb832121a0d4bc26b6.

2 months agoshared/bootspec: parse 'profile' boot entry option
Felix Pehla [Sun, 28 Sep 2025 16:50:06 +0000 (18:50 +0200)] 
shared/bootspec: parse 'profile' boot entry option

Commit 1e9c9773b994f2f703a5aa5ba80961e90be3a892 makes sd-boot recognize
a 'profile' option in a boot loader entry but bootctl and other
components parsing said config do not know about it.

This commit makes the option get parsed correctly and displays it too.

2 months agoshared/bootspec: parse 'uki' boot entry option
Felix Pehla [Sat, 27 Sep 2025 13:01:06 +0000 (15:01 +0200)] 
shared/bootspec: parse 'uki' boot entry option

Commit e2a3d562189c413de3262ec47cdc1e1b0b13d78b (as part of #36314)
makes sd-boot recognize a 'uki' stanza in a boot loader entry and
uapi-group/specifications@3f2bd8236d7f9ce6dedf8bda9cadffd0d363cb08 adds
it to the BLS, but bootctl and other components parsing said config do
not know about it, leading to the error message
`Unknown line 'uki', ignoring.` when attempting to parse the same entry.

This commit makes it get parsed the same way that that 'efi' is.

2 months agounits: move FailureAction= to the correct section
Yu Watanabe [Mon, 29 Sep 2025 13:26:54 +0000 (22:26 +0900)] 
units: move FailureAction= to the correct section

FailureAction= in [Service] is still supported but deprecated.

Follow-up for e3d4148d50909119c4e9327e6ad96d3ca7f4661a.

2 months agoexport: use table to parse --format=
David Tardon [Fri, 26 Sep 2025 13:25:02 +0000 (15:25 +0200)] 
export: use table to parse --format=

2 months agohomectl firstboot tweaks (#39137)
Lennart Poettering [Mon, 29 Sep 2025 08:56:27 +0000 (10:56 +0200)] 
homectl firstboot tweaks (#39137)

This adds what #39101 and #39070 did for the regular firstboot wizard
but for the homectl firstboot part: i.e. port to the generic prompt
loop, show the "chrome" bars, and mute the console.

And then it also makes querying for aux groups and shells optional,
because quite frankly, i am not sure what to answer there.

2 months agovmspawn: enable qemu guest agent with --console=gui
Luca Boccassi [Sat, 27 Sep 2025 15:46:12 +0000 (16:46 +0100)] 
vmspawn: enable qemu guest agent with --console=gui

For auto resolution scaling, etc

2 months agopo: Translated using Weblate (Khmer (Central))
kanitha chim [Sun, 28 Sep 2025 10:07:55 +0000 (10:07 +0000)] 
po: Translated using Weblate (Khmer (Central))

Currently translated at 100.0% (264 of 264 strings)

Co-authored-by: kanitha chim <kchim@redhat.com>
Translate-URL: https://translate.fedoraproject.org/projects/systemd/main/km/
Translation: systemd/main

2 months agotree-wide: stop assigning colon prefixed timezone to $TZ 39160/head
Yu Watanabe [Sun, 28 Sep 2025 01:19:08 +0000 (10:19 +0900)] 
tree-wide: stop assigning colon prefixed timezone to $TZ

glibc (and also musl, though we do not officially support it yet)
silently ignores colon prefix in $TZ. Let's always not prefix the
timezone.

tzset(3) states:
> A nonempty value of TZ can be one of two formats, either of which can
> be preceded by a colon which is ignored.

Addresses https://github.com/systemd/systemd/pull/38876#discussion_r2384347594.

2 months agotimedatectl,test: use SAVE_TIMEZONE at more places
Yu Watanabe [Sun, 28 Sep 2025 01:10:47 +0000 (10:10 +0900)] 
timedatectl,test: use SAVE_TIMEZONE at more places

2 months agocalendar-spec: use SAVE_TIMEZONE
Yu Watanabe [Sun, 28 Sep 2025 01:09:44 +0000 (10:09 +0900)] 
calendar-spec: use SAVE_TIMEZONE

Then, we can avoid heavy fork() operation.

2 months agosd-boot: fix indentation of status output
Felix Pehla [Sat, 27 Sep 2025 18:46:09 +0000 (20:46 +0200)] 
sd-boot: fix indentation of status output

64376936c70ac1cba18fcdcaec8eb337d80c48a7 missed some printf()s when
adjusting indentation.

2 months agotime-util: fix using wrong timezone when parsing timestamp (#38876)
Yu Watanabe [Sun, 28 Sep 2025 00:49:10 +0000 (09:49 +0900)] 
time-util: fix using wrong timezone when parsing timestamp (#38876)

This mostly fixes issues workarounded several times, e.g. #28472 and
#35471.

2 months agobash-completion: systemd-sysext/systemd-confext missing options (#38948)
Yu Watanabe [Sun, 28 Sep 2025 00:48:13 +0000 (09:48 +0900)] 
bash-completion: systemd-sysext/systemd-confext missing options (#38948)

2 months agovmspawn: try to set up swtpm state for 4K RSA keys support
Luca Boccassi [Fri, 26 Sep 2025 22:54:02 +0000 (23:54 +0100)] 
vmspawn: try to set up swtpm state for 4K RSA keys support

The next version of swtpm will support RSA4096, but it needs to be called
with a new parameter in order to do so. Try with it first, and if
execution fails, fallback to running without it.

This is especially needed for OBS builds, as the signing key is RSA4096
and cannot be changed by users, so the generated UKIs have RSA4096 signatures
for the pcrsig sections, and swtpm refuses them without the new support.

2 months agoVarious small cleanups (#39155)
Mike Yuan [Sat, 27 Sep 2025 15:22:57 +0000 (17:22 +0200)] 
Various small cleanups (#39155)

2 months agoRevert "Bump required minimum version of libfido2 to 1.5.0" and add missing def instead
Luca Boccassi [Thu, 18 Sep 2025 16:29:41 +0000 (17:29 +0100)] 
Revert "Bump required minimum version of libfido2 to 1.5.0" and add missing def instead

It helps nobody to break compatibility for a missing definition
for printing an error.
Just add the missing definition if not present, as it is already
done for thousands of others from the kernel, glibc, etc.

This partially reverts commit d8b60944f5f752a06ad1553ca77b04b7fea903e9.

2 months agoman/udev_enumerate_new: fix style 39155/head
Zbigniew Jędrzejewski-Szmek [Sat, 27 Sep 2025 13:28:18 +0000 (16:28 +0300)] 
man/udev_enumerate_new: fix style

Follow-up for 4f4641799e289ad5d0c149004972470ce7961551.

2 months agossh-generator: adjust formatting
Zbigniew Jędrzejewski-Szmek [Tue, 16 Sep 2025 14:51:02 +0000 (16:51 +0200)] 
ssh-generator: adjust formatting

2 months agocore/varlink: drop duplicated check
Zbigniew Jędrzejewski-Szmek [Wed, 3 Sep 2025 14:08:19 +0000 (16:08 +0200)] 
core/varlink: drop duplicated check

Those are static functions that are only called from manager_varlink_init
which already does the same check.

2 months agoshared/generator: fix grammar in comment
Zbigniew Jędrzejewski-Szmek [Tue, 5 Aug 2025 12:02:01 +0000 (14:02 +0200)] 
shared/generator: fix grammar in comment

2 months agocore/cgroup: drop useless wrapper
Zbigniew Jędrzejewski-Szmek [Tue, 29 Jul 2025 09:04:30 +0000 (11:04 +0200)] 
core/cgroup: drop useless wrapper

2 months agoethtool-util: several cleanups for applying link settings (#38879)
Daan De Meyer [Sat, 27 Sep 2025 12:31:11 +0000 (14:31 +0200)] 
ethtool-util: several cleanups for applying link settings (#38879)

2 months agotime-util: fix issues in parse_timestamp() and optimize performance 38876/head
Yu Watanabe [Tue, 9 Sep 2025 00:52:45 +0000 (09:52 +0900)] 
time-util: fix issues in parse_timestamp() and optimize performance

Previously, an input string ends with short timezone spec e.g. WET,
was parsed by setting $TZ environment variable to the timezone.
But the timezone might be different from the original local timezone,
thus the result might not follow the timezone change in the original
local timezone.

This makes the check of the short timezone spec with tzname[] earlier,
then it is not necessary to load another timezone file for e.g. WET,
and provides expected time.

This also make it use SAVE_TIMEZONE macro and drop use of forking
process. This makes greatly improve performance when parsing string
that contains timezone different from the current local timezone.

Unfortunately, there is still one corner case that our test fails.
When tzdata is built with rearguard enabled, then at least
Africa/Windhoek timezone does not provide correct time, but time shifted
1 hour from the original.

2 months agotime-util: introduce parse_gmtoff() helper function
Yu Watanabe [Tue, 9 Sep 2025 00:50:46 +0000 (09:50 +0900)] 
time-util: introduce parse_gmtoff() helper function

2 months agotime-util: introduce SAVE_TIMEZONE macro
Yu Watanabe [Tue, 9 Sep 2025 00:36:07 +0000 (09:36 +0900)] 
time-util: introduce SAVE_TIMEZONE macro

2 months agopam_systemd: correct alignment
Mike Yuan [Fri, 26 Sep 2025 22:58:54 +0000 (00:58 +0200)] 
pam_systemd: correct alignment

Follow-up for cf2630acaa87ded5ad99ea30ed4bd895e71ca503

2 months agoshared: add missing alloc-util.h include
Xarblu [Fri, 26 Sep 2025 19:40:50 +0000 (21:40 +0200)] 
shared: add missing alloc-util.h include

Needed for _cleanup_free_

2 months agoman: add missing description for udev_enumerate_new functions
Osama Abdelkader [Fri, 26 Sep 2025 18:34:53 +0000 (21:34 +0300)] 
man: add missing description for udev_enumerate_new functions

Add proper description section for udev_enumerate_new(), udev_enumerate_ref(),
and udev_enumerate_unref() functions. The description matches the source code
comments for consistency.

Signed-off-by: Osama Abdelkader <osama.abdelkader@gmail.com>
2 months agopam_systemd: honor session class provided via PAM environment
Michal Sekletar [Mon, 25 Aug 2025 13:09:36 +0000 (15:09 +0200)] 
pam_systemd: honor session class provided via PAM environment

Replaces #38638

Co-authored-by: Lennart Poettering <lennart@poettering.net>
2 months agobash-completion: update systemd-sysext, systemd-confext 38948/head
Pascal Bachor [Fri, 26 Sep 2025 18:20:49 +0000 (20:20 +0200)] 
bash-completion: update systemd-sysext, systemd-confext

2 months agosysext: support --mutable=help
Pascal Bachor [Fri, 26 Sep 2025 18:20:31 +0000 (20:20 +0200)] 
sysext: support --mutable=help

2 months agodocs(boot): fix typo in code block
Le_Futuriste [Fri, 26 Sep 2025 14:41:19 +0000 (16:41 +0200)] 
docs(boot): fix typo in code block

2 months agoTEST-64-UDEV-STORAGE: do not use -f/--force option for wipefs
Yu Watanabe [Sun, 31 Aug 2025 00:30:22 +0000 (09:30 +0900)] 
TEST-64-UDEV-STORAGE: do not use -f/--force option for wipefs

When -f/--force is used, wipefs does not call ioctl(BLKRRPART), hence
the partitions will remain in sysfs. Let's not use the option.

This also makes it use 'udevadm lock' for safety.