]> git.ipfire.org Git - thirdparty/systemd.git/log
thirdparty/systemd.git
9 months agofmf: Don't fail if we can't modify sysctl values
Daan De Meyer [Thu, 13 Feb 2025 13:41:21 +0000 (14:41 +0100)] 
fmf: Don't fail if we can't modify sysctl values

If the script is running unprivileged we might not be able to modify
these so let's skip in that case.

9 months agocore/condition: fix segfault when key not found in os-release
Zbigniew JÄ™drzejewski-Szmek [Thu, 13 Feb 2025 14:49:50 +0000 (15:49 +0100)] 
core/condition: fix segfault when key not found in os-release

'ConditionOSRelease=|ID_LIKE$=*rhel*' results in a segfault.
The key 'ID_LIKE' is not present in Fedora's os-release file.

I think the most reasonable behaviour is to treat missing keys as empty.
This matches the "shell-like" sprit, since in a shell empty keys would
by default be treated as empty too. Thus, "ID_LIKE=" would match, if
ID_LIKE is not present in the file, and ID_LIKE=!$foo" would also match.
The other option would be to make those matches fail, but I think that'd
make the feature harder to use, esp. with negative matches.

Documentation is updated to clarify the new behaviour.

https://bugzilla.redhat.com/show_bug.cgi?id=2345544

9 months agoupdate TODO
Lennart Poettering [Thu, 13 Feb 2025 16:38:54 +0000 (17:38 +0100)] 
update TODO

9 months agoupdate TODO
Lennart Poettering [Thu, 13 Feb 2025 16:35:59 +0000 (17:35 +0100)] 
update TODO

9 months agosysupdate: Don't use compression extension for UKIs in manpage
Daan De Meyer [Thu, 13 Feb 2025 12:03:39 +0000 (13:03 +0100)] 
sysupdate: Don't use compression extension for UKIs in manpage

UKIs should generally not be compressed since the kernel image and
initrd in them will already be compressed so let's remove the compression
suffix from the examples in the sysupdate manpage.

9 months agoptyfwd: Forward various signals to forked process (#36345)
Daan De Meyer [Thu, 13 Feb 2025 10:30:34 +0000 (11:30 +0100)] 
ptyfwd: Forward various signals to forked process (#36345)

9 months agoUpdate TODO 36345/head
Daan De Meyer [Thu, 13 Feb 2025 08:42:36 +0000 (09:42 +0100)] 
Update TODO

9 months agoptyfwd: Forward various signals to forked process
Daan De Meyer [Mon, 10 Feb 2025 22:59:04 +0000 (23:59 +0100)] 
ptyfwd: Forward various signals to forked process

We want systemd-pty-forward to be something that can be dropped in
somewhere without too much thought. To enable this, let's make sure
we forward various signals to the forked process. This makes sure that
any signals are delivered to the actual child process regardless of whether
it's running within systemd-pty-forward or not.

9 months agologin: Queue session for garbage collection on leader death (#36364)
Lennart Poettering [Thu, 13 Feb 2025 08:10:06 +0000 (09:10 +0100)] 
login: Queue session for garbage collection on leader death (#36364)

This ensures sessions are cleaned up properly in case the user service
manager was manually stopped.

How to reproduce:
- Install Fedora 41
- Log in
- Run `systemctl --user exit`
- Log in again
- Run `loginctl`

Expected results:
- Only 1 `manager` session

Actual results:
- More than 1 `manager` session

9 months agologin: Queue session for garbage collection on leader death 36364/head
msizanoen [Wed, 12 Feb 2025 14:27:25 +0000 (21:27 +0700)] 
login: Queue session for garbage collection on leader death

This ensures sessions are cleaned up properly in case the user service
manager was manually stopped.

9 months agologin: Continue watching leader pidfd after stop
msizanoen [Wed, 12 Feb 2025 15:09:01 +0000 (22:09 +0700)] 
login: Continue watching leader pidfd after stop

This ensures that garbage collection will be triggered when the leader
process dies.

9 months agoupdate TODO
Lennart Poettering [Wed, 12 Feb 2025 21:02:04 +0000 (22:02 +0100)] 
update TODO

9 months agoupdate TODO
Lennart Poettering [Wed, 12 Feb 2025 20:55:57 +0000 (21:55 +0100)] 
update TODO

9 months agomkosi: Update to latest
Daan De Meyer [Wed, 12 Feb 2025 10:09:36 +0000 (11:09 +0100)] 
mkosi: Update to latest

In https://github.com/systemd/mkosi/pull/3497, mkosi has started parsing
options passed after the verb as regular mkosi options instead of options
for the invoked command. We adapt to this change by adding '--' as a delimiter
everywhere where required.

9 months agoudev: several improvements for debugging logs (#36357)
Daan De Meyer [Wed, 12 Feb 2025 13:35:46 +0000 (14:35 +0100)] 
udev: several improvements for debugging logs (#36357)

9 months agosocket: resolve unit specifiers in BindToDevice
Paul Fertser [Tue, 11 Feb 2025 13:33:15 +0000 (13:33 +0000)] 
socket: resolve unit specifiers in BindToDevice

There are cases where templated Socket unit files are used for network services
with interface name used as an instance. This patch allows using %i for
BindToDevice setting to limit the scope automatically.

9 months agoudev-watch: do not try to remove invalid watch handle 36357/head
Yu Watanabe [Wed, 12 Feb 2025 00:23:33 +0000 (09:23 +0900)] 
udev-watch: do not try to remove invalid watch handle

When a new device is processed, there should be no watch handle for
the device, hence udev_watch_clear() provides -1. Let's not try to call
inotify_rm_watch() in that case.

This should not change any behavior. Just for suppressing spurious
debugging log:
=====
(udev-worker)[3626140]: zram1: Removing watch handle -1.
=====

9 months agoudev-watch: mention that the failure is ignored
Yu Watanabe [Wed, 12 Feb 2025 00:22:49 +0000 (09:22 +0900)] 
udev-watch: mention that the failure is ignored

9 months agoudev-worker: add debugging log about success of flock() for whole block device
Yu Watanabe [Wed, 12 Feb 2025 00:20:51 +0000 (09:20 +0900)] 
udev-worker: add debugging log about success of flock() for whole block device

9 months agonspawn: add @keyring to default syscall allow_list
Anthony Messina [Tue, 11 Feb 2025 00:38:11 +0000 (18:38 -0600)] 
nspawn: add @keyring to default syscall allow_list

Keyring namespacing introduced in kernel version v5.3-rc1 https://github.com/torvalds/linux/commit/c84ca912b07901be528e5184fd254fca1dddf2ac

Fixes #17606

9 months agoFollow-ups for xattr-util (#36335)
Yu Watanabe [Tue, 11 Feb 2025 22:59:24 +0000 (07:59 +0900)] 
Follow-ups for xattr-util (#36335)

9 months agoman: Fix a minor typo in the org.freedesktop.login1 man page
Philip Withnall [Tue, 11 Feb 2025 16:38:14 +0000 (16:38 +0000)] 
man: Fix a minor typo in the org.freedesktop.login1 man page

Signed-off-by: Philip Withnall <pwithnall@gnome.org>
9 months agotest-xattr-util: return early if not privileged enough to set trusted.* 36335/head
Mike Yuan [Mon, 10 Feb 2025 12:33:43 +0000 (13:33 +0100)] 
test-xattr-util: return early if not privileged enough to set trusted.*

9 months agotest-xattr-util: relax listxattr() retval check
Mike Yuan [Sun, 9 Feb 2025 22:18:05 +0000 (23:18 +0100)] 
test-xattr-util: relax listxattr() retval check

Follow-up for d228afd792d713a754e4368c014c1f43f10cf5b7

Apparently security.selinux might get set on the file too,
behind our back.

9 months agoxattr-util: drop unnecessary nofollow normalization
Mike Yuan [Sun, 9 Feb 2025 21:56:00 +0000 (22:56 +0100)] 
xattr-util: drop unnecessary nofollow normalization

Follow-up for b8df25dcfe674e37ceb3d54e00a31e1d33e96057

This is some leftover from get/listxattrat() usage which
got dropped later.

9 months agoresolve: add an option to explicitly disable query AAAA, SRV, MX, etc... (#34165)
Muhammad Nuzaihan Bin Kamal Luddin [Tue, 11 Feb 2025 09:29:39 +0000 (17:29 +0800)] 
resolve: add an option to explicitly disable query AAAA, SRV, MX, etc... (#34165)

Based on this patch i had submitted to RedHat
(https://issues.redhat.com/browse/RHEL-56280), i am submitting this
patch to this upstream systemd.

There is no way to explicitly enable/disable IPv6 AAAA queries.

Problem was that i am using RHEL9 and some applications does not use a
newer glibc that supports `no-aaaa` option in `/etc/resolv.conf`. So
some applications will still resolve IPv6 AAAA even with `no-aaaa`
option and it is inconsistent across the system where some work and some
don't.

So this systemd-resolved patch catch-all queries and disable IPv6 AAAA
queries for all applications in the OS by having an option
`RefuseRecordTypes=AAAA` to disable IPv6 AAAA queries.

Although https://github.com/systemd/systemd/pull/28136 tries to fix this
automatically but it still does not work with
`net.ipv6.conf.all.disable_ipv6 = 1`. Also tried with explicitly
removing the conditional and force set `family = AF_INET` and still
resolves AAAA records.

The issue is that i want to explicitly disable IPv6 AAAA queries instead
of systemd-resolved to figure out itself which address family it is
using, which always have problems.

9 months agostring-util: introduce strprepend(), drop effectively unused strnappend() (#36343)
Yu Watanabe [Tue, 11 Feb 2025 09:09:03 +0000 (18:09 +0900)] 
string-util: introduce strprepend(), drop effectively unused strnappend() (#36343)

Split out from #36337

9 months agopo: Translated using Weblate (Bulgarian)
Alexander Shopov [Tue, 11 Feb 2025 01:17:15 +0000 (02:17 +0100)] 
po: Translated using Weblate (Bulgarian)

Currently translated at 100.0% (259 of 259 strings)

Co-authored-by: Alexander Shopov <ash@kambanaria.org>
Translate-URL: https://translate.fedoraproject.org/projects/systemd/main/bg/
Translation: systemd/main

9 months agostring-util: modernize strextendn() a bit 36343/head
Mike Yuan [Mon, 10 Feb 2025 18:14:49 +0000 (19:14 +0100)] 
string-util: modernize strextendn() a bit

l == SIZE_MAX requires no special handling, since we assert
on (s || l == 0) above.

9 months agostring-util: drop now unused strnappend()
Mike Yuan [Mon, 10 Feb 2025 18:05:17 +0000 (19:05 +0100)] 
string-util: drop now unused strnappend()

9 months agoenv-util: use strextendn() instead of strnappend() where appropriate
Mike Yuan [Mon, 10 Feb 2025 18:04:29 +0000 (19:04 +0100)] 
env-util: use strextendn() instead of strnappend() where appropriate

9 months agocryptsetup: port to strprepend()
Mike Yuan [Mon, 10 Feb 2025 18:04:08 +0000 (19:04 +0100)] 
cryptsetup: port to strprepend()

9 months agostring-util: introduce strprepend() helper
Mike Yuan [Mon, 10 Feb 2025 18:03:08 +0000 (19:03 +0100)] 
string-util: introduce strprepend() helper

9 months agobootctl: fix potential uninitialized memory access (#36329)
Lennart Poettering [Mon, 10 Feb 2025 14:34:38 +0000 (15:34 +0100)] 
bootctl: fix potential uninitialized memory access (#36329)

9 months agoescape: apply the minimal ansi highlighting on --help we usually do (#36339)
Lennart Poettering [Mon, 10 Feb 2025 14:33:59 +0000 (15:33 +0100)] 
escape: apply the minimal ansi highlighting on --help we usually do (#36339)

9 months agoupdate TODO
Lennart Poettering [Mon, 10 Feb 2025 08:26:49 +0000 (09:26 +0100)] 
update TODO

9 months agopo: Translated using Weblate (Czech)
Jan Kalabza [Mon, 10 Feb 2025 02:01:27 +0000 (03:01 +0100)] 
po: Translated using Weblate (Czech)

Currently translated at 100.0% (257 of 257 strings)

Co-authored-by: Jan Kalabza <jan.kalabza@gmail.com>
Translate-URL: https://translate.fedoraproject.org/projects/systemd/main/cs/
Translation: systemd/main

9 months agobootctl,kernel-install: suffix some paths referring to dirs in log messages with /
Lennart Poettering [Sun, 9 Feb 2025 08:54:04 +0000 (09:54 +0100)] 
bootctl,kernel-install: suffix some paths referring to dirs in log messages with /

9 months agoupdate TODO
Lennart Poettering [Sun, 9 Feb 2025 08:53:25 +0000 (09:53 +0100)] 
update TODO

9 months agobootctl: minor reordering of fields in output 36329/head
Lennart Poettering [Sun, 9 Feb 2025 22:34:29 +0000 (23:34 +0100)] 
bootctl: minor reordering of fields in output

Let's move the currently used/default/oneshot entry output after the
basic info about the boot loader itself, since conceptually these are
objects kinda "one level down" from the boot loader perspective. Hence,
let's *first* show all info about the boot loader itself before we
display the objects it manages.

This is just a trivial change in output, just swaps th elines for these
fields with the ones showing where the boot loader is installed.

9 months agoukify: add --pcr-certificate= parameter
Luca Boccassi [Sat, 8 Feb 2025 13:17:22 +0000 (13:17 +0000)] 
ukify: add --pcr-certificate= parameter

Public keys and certificates are not the same, as the latter embeds more
information that the former, and other tools like sd-measure have distinct
parameters for each of them.
Add a new --pcr-certificate= parameter to ukify, and use it to pass certs
down to sd-measure, as an alternative to --pcr-public-key=. Do not allow
specifying both.

9 months agobootctl: suppress output of empty partition info if we also have no idea about EFI...
Lennart Poettering [Sun, 9 Feb 2025 22:23:38 +0000 (23:23 +0100)] 
bootctl: suppress output of empty partition info if we also have no idea about EFI binary path

So far we'd output both the partition and the binary path always, even
if we didn't know either (but in that case show empty information).
Let's address this, and show partition info only if we know it, or if we
know the EFI binary path, but suppress both if we know neither.

Note that we'll show the partition info if we don't know it still if we
know the EFI binary path used for boot, since it is relative to the
partition of course, and hence it's really strange to know one but not
the other, hence it deserves some mentioning in the output.

9 months agobootctl: also shown whether stub loader partition data was passed
Lennart Poettering [Sun, 9 Feb 2025 22:21:08 +0000 (23:21 +0100)] 
bootctl: also shown whether stub loader partition data was passed

Let's make the stub and loader output sections more alike, and say in
both cases whether we recieved that data from the boot phase or not the
same way.

9 months agobootctl: fix potential uninitialized memory access
Lennart Poettering [Sun, 9 Feb 2025 08:53:39 +0000 (09:53 +0100)] 
bootctl: fix potential uninitialized memory access

And while we are at it, let' get rid of have_xyz_partition_uuid
variables, to simplify things.

9 months agotmpfiles: 3 trivial cleanups (#36332)
Yu Watanabe [Sun, 9 Feb 2025 17:33:33 +0000 (02:33 +0900)] 
tmpfiles: 3 trivial cleanups (#36332)

9 months agocore: remove path to transient unit file from unit name maps on stop (#36186)
Yu Watanabe [Sun, 9 Feb 2025 15:48:01 +0000 (00:48 +0900)] 
core: remove path to transient unit file from unit name maps on stop (#36186)

Fixes #35190.

9 months agomissing_sched: add CLONE_PIDFD
Michael Olbrich [Sun, 9 Feb 2025 12:32:36 +0000 (13:32 +0100)] 
missing_sched: add CLONE_PIDFD

CLONE_PIDFD was introduced in v5.2 and in sched.h in glibc-2.31 so
without this, building with older version fails with:

src/basic/raw-clone.h:41:108: error: 'CLONE_PIDFD' undeclared (first use in this function); did you mean 'CLONE_FILES'?

9 months agoxattr-util: try new *xattrat() family syscalls first (#36228)
Yu Watanabe [Sun, 9 Feb 2025 15:41:38 +0000 (00:41 +0900)] 
xattr-util: try new *xattrat() family syscalls first (#36228)

While killing cgroup v1 I want to turn all cg_* helpers to take
cgroupfs_fd + cg path, which means all relevant path operations must
support openat() semantics. `removexattrat()` is currently missing. I
took the chance to do a bigger refactor for xattr-util.

9 months agostoragetm: Check if /sys/kernel/config is a mountpoint
Daan De Meyer [Sat, 8 Feb 2025 11:44:19 +0000 (12:44 +0100)] 
storagetm: Check if /sys/kernel/config is a mountpoint

Otherwise we'll fail with an unclear error later on so let's check
this first before continuing.

9 months agotmpfiles: drop redundant proc_mounted() check 36332/head
Mike Yuan [Sun, 9 Feb 2025 14:25:05 +0000 (15:25 +0100)] 
tmpfiles: drop redundant proc_mounted() check

Follow-up for 01131684ac66e82faae18e40e110089003d7c536

After the mentioned commit, the execution of tmpfiles
is aborted without /proc/. No need to check for individual
operations.

9 months agotmpfiles: use prefix_roota() where appropriate
Mike Yuan [Sun, 9 Feb 2025 14:38:40 +0000 (15:38 +0100)] 
tmpfiles: use prefix_roota() where appropriate

9 months agotmpfiles: fix copypasta in create_symlink() (FIFO -> symlink)
Mike Yuan [Sun, 9 Feb 2025 14:38:05 +0000 (15:38 +0100)] 
tmpfiles: fix copypasta in create_symlink() (FIFO -> symlink)

9 months agohwdb: add accel orientation and location for the BMAX Y14
Enrico Tagliavini [Sun, 9 Feb 2025 13:44:46 +0000 (14:44 +0100)] 
hwdb: add accel orientation and location for the BMAX Y14

The BMAX MaxBook Y14 has 2 acceleromenter sensors, one seems to be in
the display, the other in the base. With the default ACCEL_MOUNT_MATRIX
monitor-sensor would report the display to be rotate of 180 degrees
compared to its real position, i.e. upside down when normal and vice
versa. Left up and right up are also swapped.

Correcting the ACCEL_MOUNT_MATRIX for the display sensor solves the
issue and monitor-sensor reports the correct values.

For the Y13 model the Z axis value was also inverted. For the Y14 to
work correctly, this is not necessary, but I'm not sure how to double
check this.

Sensors info:

P: /devices/pci0000:00/0000:00:15.0/i2c_designware.0/i2c-0/i2c-KIOX010A:00/iio:device0
M: iio:device0
R: 0
U: iio
T: iio_device
D: c 237:0
N: iio:device0
L: 0
E: DEVPATH=/devices/pci0000:00/0000:00:15.0/i2c_designware.0/i2c-0/i2c-KIOX010A:00/iio:device0
E: SUBSYSTEM=iio
E: DEVNAME=/dev/iio:device0
E: DEVTYPE=iio_device
E: MAJOR=237
E: MINOR=0
E: USEC_INITIALIZED=25931869
E: IIO_SENSOR_PROXY_TYPE=iio-poll-accel iio-buffer-accel
E: SYSTEMD_WANTS=iio-sensor-proxy.service
E: TAGS=:systemd:
E: CURRENT_TAGS=:systemd:

P: /devices/pci0000:00/0000:00:15.3/i2c_designware.3/i2c-3/i2c-KIOX020A:00/iio:device1
M: iio:device1
R: 1
U: iio
T: iio_device
D: c 237:1
N: iio:device1
L: 0
E: DEVPATH=/devices/pci0000:00/0000:00:15.3/i2c_designware.3/i2c-3/i2c-KIOX020A:00/iio:device1
E: SUBSYSTEM=iio
E: DEVNAME=/dev/iio:device1
E: DEVTYPE=iio_device
E: MAJOR=237
E: MINOR=1
E: USEC_INITIALIZED=26000295
E: IIO_SENSOR_PROXY_TYPE=iio-poll-accel iio-buffer-accel
E: SYSTEMD_WANTS=iio-sensor-proxy.service
E: TAGS=:systemd:
E: CURRENT_TAGS=:systemd:

accel-display
acpi:KIOX010A:KIOX010A:
dmi:bvnAmericanMegatrendsInternational,LLC.:bvr5.00_002:bd05/13/2024:br5.27:efr1.1:svnAMI:pnIntel:pvrDefaultstring:rvnAMI:rnIntel:rvrDefaultstring:cvnDefaultstring:ct31:cvrDefaultstring:skuH8Y6:

accel-base
acpi:KIOX020A:KIOX020A:

9 months agosmack-util: several cleanups 36228/head
Mike Yuan [Thu, 30 Jan 2025 14:33:13 +0000 (15:33 +0100)] 
smack-util: several cleanups

- Make _read_at and _apply_at variants the "canonical" functions
  (which leverage xsetxattr()/xremovexattr()), turn others
  into static inline helpers
- Unexport string table lookup (not used anywhere else)
- Define nop functions as static inline if !ENABLE_SMACK

9 months agotmpfiles,chown-recursive: port to xsetxattr()/xremovexattr()
Mike Yuan [Thu, 30 Jan 2025 16:30:45 +0000 (17:30 +0100)] 
tmpfiles,chown-recursive: port to xsetxattr()/xremovexattr()

9 months agotest-xattr-util: add test cases for symlinks
Mike Yuan [Sun, 9 Feb 2025 12:23:27 +0000 (13:23 +0100)] 
test-xattr-util: add test cases for symlinks

9 months agoxattr-util: try new *xattrat() family syscalls first
Mike Yuan [Mon, 20 Jan 2025 19:43:02 +0000 (20:43 +0100)] 
xattr-util: try new *xattrat() family syscalls first

Added in https://github.com/torvalds/linux/commit/6140be90ec70c39fa844741ca3cc807dd0866394

However, when O_PATH fds are encountered we'd have to go by
/proc/self/fd/ still, since the kernel people are reluctant
to make the new syscalls work with them
(https://lore.kernel.org/linux-fsdevel/20250206-steril-raumplanung-733224062432@brauner/)
Hence getxattrat() and listxattrat() are not employed.

While at it, remove the discrepancy between path being NULL
and empty - I don't grok the "security issue" claimed earlier,
but nowadays even the kernel treats the two as identical:
https://github.com/torvalds/linux/commit/e896474fe4851ffc4dd860c92daa906783090346

9 months agoxattr-util: modernize getcrtime_at() and friends
Mike Yuan [Sun, 26 Jan 2025 16:46:30 +0000 (17:46 +0100)] 
xattr-util: modernize getcrtime_at() and friends

- Drop fd_ prefix for openat()-like function
- Make fd_setcrtime() accept O_PATH fds too
- Use statx_timestamp_load()

9 months agomissing_syscall: add {set,remove}xattrat()
Mike Yuan [Mon, 20 Jan 2025 18:43:00 +0000 (19:43 +0100)] 
missing_syscall: add {set,remove}xattrat()

9 months agomissing_syscall: drop more defs below our kernel baseline
Mike Yuan [Thu, 30 Jan 2025 15:18:21 +0000 (16:18 +0100)] 
missing_syscall: drop more defs below our kernel baseline

9 months agomissing_ioprio: remove outdated comment now that linux/ioprio.h exists
Mike Yuan [Thu, 30 Jan 2025 16:51:51 +0000 (17:51 +0100)] 
missing_ioprio: remove outdated comment now that linux/ioprio.h exists

9 months agomeson: glibc now provides wrapper for sched_setattr()
Mike Yuan [Sun, 9 Feb 2025 13:49:15 +0000 (14:49 +0100)] 
meson: glibc now provides wrapper for sched_setattr()

C.f. https://github.com/bminor/glibc/commit/21571ca0d70302909cf72707b2a7736cf12190a0

9 months agocompress: mark string table lookup funcs as _const_/_pure_
Mike Yuan [Sun, 9 Feb 2025 11:26:25 +0000 (12:26 +0100)] 
compress: mark string table lookup funcs as _const_/_pure_

Follow-up for cfaf78001c3451d549bcb1ee4adca3e85b934e56

9 months agonetwork: mark container/VM/namespace networks as not required for online + disable...
Lennart Poettering [Fri, 7 Feb 2025 17:08:51 +0000 (18:08 +0100)] 
network: mark container/VM/namespace networks as not required for online + disable DHCP lease persistency

These networks are not connections to upstream routers, but where we are
ourselves are the upstream router, hence it doesn't make too much sense
to require them to be up as default to determine if we are "online",
because they lead "in the wrong direction".

Also, disable DHCP lease persistency for these networks, since
container/VM/namespaces are generally shortlived, and typically have no
persistent identity. Moreover, the IP range we assign each VM/container
connection is just too small to permit persistency, as otherwise we'll
run out of leases way too quickly if VM/containers are restarted a bunch of
times with different MAC addresses (which I ran into).

I think these are better defaults, but of course these are only
defaults.

9 months agobootctl: improve output regarding random seed if we cannot access ESP
Lennart Poettering [Sun, 9 Feb 2025 06:38:41 +0000 (07:38 +0100)] 
bootctl: improve output regarding random seed if we cannot access ESP

9 months agoimport-generator: fix copy/paste issue
Lennart Poettering [Fri, 7 Feb 2025 15:42:13 +0000 (16:42 +0100)] 
import-generator: fix copy/paste issue

9 months agoupdate TODO
Lennart Poettering [Sun, 9 Feb 2025 06:28:35 +0000 (07:28 +0100)] 
update TODO

9 months agojournal-remote,journal-upload: added compression support (#34822)
Yu Watanabe [Sun, 9 Feb 2025 04:33:33 +0000 (13:33 +0900)] 
journal-remote,journal-upload: added compression support (#34822)

9 months agohwdb: add front button support for MSI Claw 7 AI+ A2VM
Matthew Schwartz [Sat, 8 Feb 2025 20:14:53 +0000 (12:14 -0800)] 
hwdb: add front button support for MSI Claw 7 AI+ A2VM

9 months agoUpdate Bulgarian translation
Alexander Shopov [Sat, 8 Feb 2025 22:31:09 +0000 (23:31 +0100)] 
Update Bulgarian translation

Update po-file based on latest generated from source
Update systemd.bg.catalog.in based on latest in source

Signed-off-by: Alexander Shopov <ash@kambanaria.org>
9 months agorepart: do not fail if no key/cert provided and verity-sig is deferred
Luca Boccassi [Mon, 3 Feb 2025 09:38:00 +0000 (10:38 +0100)] 
repart: do not fail if no key/cert provided and verity-sig is deferred

9 months agoudevadm-test: show result in json format (#36284)
Yu Watanabe [Sat, 8 Feb 2025 06:50:04 +0000 (15:50 +0900)] 
udevadm-test: show result in json format (#36284)

This adds `--json=MODE` command line option to `udevadm test`.
This may be useful for parsing e.g. network interface name or device
node symlinks.

Closes #23661.

9 months agomeson: fix suite of alignment check tests
Yu Watanabe [Fri, 7 Feb 2025 17:20:02 +0000 (02:20 +0900)] 
meson: fix suite of alignment check tests

Follow-up for 97318131fd06a5bc35454da81dcbbc84f16d9940.

By default, suite of each built test is determined by the directory of
the source file. Hence, before the mentioned commit, all tests in
src/boot/efi/ are in the 'efi' suite. The commit changed the directory
tree, but forgot to update the name of the test suite.

9 months agonetwork: allow to configure routing policy rule even if requesting interface is not...
Luca Boccassi [Fri, 7 Feb 2025 22:56:36 +0000 (22:56 +0000)] 
network: allow to configure routing policy rule even if requesting interface is not activated yet (#36257)

Fixes a regression caused by 4f8b153d903fd4a6e8d7d3e49113582d70d1525a
(v257).
Fixes #36244.

9 months agoukify: add --pcrsig and --join-pcrsig arguments to append offline signature (#36181)
Luca Boccassi [Fri, 7 Feb 2025 17:14:45 +0000 (17:14 +0000)] 
ukify: add --pcrsig and --join-pcrsig arguments to append offline signature (#36181)

Add a build parameter to take an existing UKI and attach a .pcrsig
section
to it. This allows one to create a UKI with a .pcrpkey section with
--policy-digest to get the json output from sd-measure, sign the digest
offline, and attach the .pcrsig section with the signature later.

9 months agoimport: update to current fedora keyring
Lennart Poettering [Fri, 7 Feb 2025 13:58:29 +0000 (14:58 +0100)] 
import: update to current fedora keyring

Add a bunch of more released keys. Kinda a follow-up for c8c5ce5772b08da0ad317331b1f4929c1b466ae0

9 months agoman/udevadm: add examples to get predictable interface name and persistent device... 36284/head
Yu Watanabe [Tue, 4 Feb 2025 04:26:25 +0000 (13:26 +0900)] 
man/udevadm: add examples to get predictable interface name and persistent device node symlinks

Closes #23661.

9 months agoudevadm-test: allow to dump result in json format
Yu Watanabe [Sun, 2 Feb 2025 03:07:48 +0000 (12:07 +0900)] 
udevadm-test: allow to dump result in json format

This adds --json=MODE option for 'udevadm test' command.
When specified, all messages, except for the final result, will be
written to stderr, and the final result is shown in JSON format to
stdout. It may be useful for parsing the test result.

9 months agoudevadm-test: show guiding messages in stderr
Yu Watanabe [Tue, 4 Feb 2025 03:58:16 +0000 (12:58 +0900)] 
udevadm-test: show guiding messages in stderr

Then, only final results will be shown in stdout.

9 months agoudev-rules: always use log_info() to dump current event status
Yu Watanabe [Sun, 2 Feb 2025 03:02:49 +0000 (12:02 +0900)] 
udev-rules: always use log_info() to dump current event status

9 months agoudev-dump: show more information
Yu Watanabe [Fri, 7 Feb 2025 01:04:41 +0000 (10:04 +0900)] 
udev-dump: show more information

This also reorders and renames entries.

9 months agoudev-dump: fix gid check
Yu Watanabe [Fri, 7 Feb 2025 02:07:37 +0000 (11:07 +0900)] 
udev-dump: fix gid check

Fixes a bug introduced by 03b6879f4d45c49264708aef872fd05af30ddcf0.

9 months agoudev: sd_device_get_sysnum() provides non-NULL result on success
Yu Watanabe [Fri, 7 Feb 2025 16:32:46 +0000 (01:32 +0900)] 
udev: sd_device_get_sysnum() provides non-NULL result on success

This drops unnecessary conditions.

9 months agoudev: use device_get_sysnum_unsigned() where applicable
Yu Watanabe [Fri, 7 Feb 2025 16:31:04 +0000 (01:31 +0900)] 
udev: use device_get_sysnum_unsigned() where applicable

9 months agosd-device: introduce device_get_sysnum_unsigned()
Yu Watanabe [Fri, 7 Feb 2025 16:25:15 +0000 (01:25 +0900)] 
sd-device: introduce device_get_sysnum_unsigned()

9 months agoukify: do not fail if pefile complains about hardcoded 256MB limit 36181/head
Luca Boccassi [Thu, 30 Jan 2025 01:19:59 +0000 (01:19 +0000)] 
ukify: do not fail if pefile complains about hardcoded 256MB limit

pefile has an hardcoded limit to 256MB per section:

https://github.com/erocarrera/pefile/issues/396

When building an initrd with large firmware files and
lots of kernel modules, this limit can be reached.
Skip over those warnings.

9 months agoukify: add --pcrsig and --join-pcrsig arguments to append offline signature
Luca Boccassi [Sat, 25 Jan 2025 02:09:49 +0000 (02:09 +0000)] 
ukify: add --pcrsig and --join-pcrsig arguments to append offline signature

Add a build parameter to take an existing UKI and attach a .pcrsig section
to it. This allows one to create a UKI with a .pcrpkey section with
--policy-digest to get the json output from sd-measure, sign the digest
offline, and attach the .pcrsig section with the signature later.

9 months agoimport-pubring.gpg: add openSUSE build key
Thorsten Kukuk [Fri, 7 Feb 2025 13:36:06 +0000 (14:36 +0100)] 
import-pubring.gpg: add openSUSE build key

9 months agomkosi: Fix section for BuildSourcesEphemeral=
Daan De Meyer [Fri, 7 Feb 2025 11:04:15 +0000 (12:04 +0100)] 
mkosi: Fix section for BuildSourcesEphemeral=

Followup for f26ded4e31b433d3bb6ee4dc3e02e28f7a1d223f

9 months agokernel-install: addresses post-merge comments for #36218 (#36304)
Yu Watanabe [Fri, 7 Feb 2025 12:11:03 +0000 (21:11 +0900)] 
kernel-install: addresses post-merge comments for #36218 (#36304)

9 months agomkosi: Work around regression in opensuse rpm 4.20 release
Daan De Meyer [Fri, 7 Feb 2025 10:37:34 +0000 (11:37 +0100)] 
mkosi: Work around regression in opensuse rpm 4.20 release

The rpm 4.20 release introduces the following downstream
change in /usr/lib/rpm/macros:

```
%buildroot              %{_builddir}/%{NAME}-%{VERSION}-build/BUILDROOT
```

This definition is broken as rpm internally does the following
since 4.20 to calculate the buildroot:

```
char *bn = rpmExpand("%{NAME}-%{VERSION}-build", NULL);
/* Tilde and caret in paths are evil, convert to underscores */
for (char *t = bn; *t; t++) {
    if (*t == '^' || *t == '~')
        *t = '_';
    }
```

This has broken our upstream opensuse CI builds in systemd as
we do the following to fetch the list of unpackaged files by the rpm build:

```
rpmbuild
...
--define "__check_files sh -c '$(rpm --define "_topdir /var/tmp" --eval %__check_files) | tee /tmp/unpackaged-files'"
...
```

which stopped working because the check files script tries
to look for unpackaged files in the "/var/tmp/BUILD/systemd-258~devel-build/BUILDROOT"
directory (%buildroot) whereas it should be looking in "/var/tmp/BUILD/systemd-258_devel-build/BUILDROOT".

Let's remove the %buildroot compat definition until the bug is
addressed in opensuse tumbleweed.

9 months agomkosi: Install strace in build image
Daan De Meyer [Fri, 7 Feb 2025 10:36:26 +0000 (11:36 +0100)] 
mkosi: Install strace in build image

Useful to debug regressions in rpm or other package managers.

9 months agoudev/net: add support for configuring EEE feature (#36302)
Lennart Poettering [Fri, 7 Feb 2025 11:38:06 +0000 (12:38 +0100)] 
udev/net: add support for configuring EEE feature (#36302)

Closes #36278.

9 months agocore/namespace: relabel bind mount source based on the target path
Michal Sekletar [Tue, 21 Jan 2025 14:31:14 +0000 (15:31 +0100)] 
core/namespace: relabel bind mount source based on the target path

Some bind mounts, e.g. /tmp bind mount when PrivateTmp=disconnected,
must be explicitly relabeled because now it would have incorrect SELinux
label. /tmp is expected to have well-known SELinux label, tmp_t. Now it
has label inherited from the source directory of the bind mount.

9 months agoman/kernel-install: update documents for plugins 36304/head
Yu Watanabe [Fri, 7 Feb 2025 06:20:25 +0000 (15:20 +0900)] 
man/kernel-install: update documents for plugins

Addresses the post-merge comments in #36218.

9 months agomeson: also skip uid/gid check for nobody user/group when id command not found
Yu Watanabe [Fri, 7 Feb 2025 02:36:46 +0000 (11:36 +0900)] 
meson: also skip uid/gid check for nobody user/group when id command not found

Follow-up for 8b413ae4060b21ed4712fdad7eba195890740756.

9 months agokernel-install: rename $ADDON_DIR -> $EXTRA_DIR
Yu Watanabe [Fri, 7 Feb 2025 05:46:05 +0000 (14:46 +0900)] 
kernel-install: rename $ADDON_DIR -> $EXTRA_DIR

As the directory contains not only addons, but also credentials and
extensions.

No functional change, just refactoring.

Follow-up for 75ee025c5de5d753dc1d8a28f8780247f5a887ae.
Addresses the post-merge comment
https://github.com/systemd/systemd/pull/36218#discussion_r1940872236.

9 months agohwdb: XBox Series Elite controller modalias entry has been added. (#36305)
Daniil [Fri, 7 Feb 2025 09:46:44 +0000 (10:46 +0100)] 
hwdb: XBox Series Elite controller modalias entry has been added. (#36305)

Change was requested in response on #36297.
The reason for that change is that XBox Series Elite controller has
exact 4 buttons identified as keyboard key sets.
While it detects using USB connection without any issues, wireless
connection ends with assumption that it's a keyboard.

9 months agocore/exec-invoke: drop unnecessary casts
Yu Watanabe [Fri, 7 Feb 2025 05:28:41 +0000 (14:28 +0900)] 
core/exec-invoke: drop unnecessary casts

Follow-up for c554acd11d4dc778df1393c3a7e829a24de0455e.

9 months agojournal-remote: added compression, compression-level and content-encoding negotiation 34822/head
Andrii Chubatiuk [Sat, 2 Nov 2024 20:03:26 +0000 (22:03 +0200)] 
journal-remote: added compression, compression-level and content-encoding negotiation