Commit Graph

79591 Commits

Author SHA1 Message Date
Yu Watanabe
3cc23a2c23 nspawn: enable FUSE unconditionally
FUSE is userns-safe since kernel v4.18 (da315f6e03988a7127680bbc26e1028991b899b8),
and now our kernel base line is 5.4. Let's drop the logic of checking
the version of FUSE, and unconditionally enable FUSE.
2025-02-18 23:24:20 +09:00
Yu Watanabe
1236f06c42 nspawn: use FOREACH_ARRAY() where applicable 2025-02-18 23:24:20 +09:00
Yu Watanabe
81f637630c network: introduce link_should_mark_config()
This split-out common logic from link_drop_routes() and friends.

This is mostly a refactoring, and not change behavior in most cases.
But slightly change behavior for how foreign nexthops and routing
policy rules are managed.

E.g. when KeepConfiguration=static, previously all foreign nexthops and
routing policy rules were kept, but now only foreign nexthops and rules
with RTPROT_STATIC are kept and others are dropped.

Similary, when KeepConfiguration=dynamic, previously all foreign nexthops
and rules were removed, but now foreign configs with a dynamic protocol
e.g. RTPROT_DHCP are kept, and still configs with RTPROT_STATIC are
dropped.

Currently, we do not set/get/manage protocol for neighbor entries.
Hence, the logic of managing foreign neighbor entries is unchanged.
2025-02-18 23:13:51 +09:00
Yu Watanabe
1cac0676da test-network: add test case for KeepConfiguration=yes with RTPROT_BOOT
For issue #36411.
2025-02-18 23:01:53 +09:00
Yu Watanabe
724faccf45 network/route: do not remove any foreign routes when KeepConfiguration=yes
Without this change, only foreign routes with RTPROT_KERNEL, RTPROT_STATIC,
RTPROT_DHCP, RTPROT_RA, and RTPROT_REDIRECT are kept, and foreign routes with
other protocol e.g. RTPROT_BOOT are removed even if KeepConfiguration=yes.

Fixes a regression in dd6d53a8dc (v257).
Fixes #36411.
2025-02-18 23:01:53 +09:00
Daan De Meyer
0022761c14 mkosi: update opensuse commit reference
* 9002a773f0 Update systemd to version 257.3 / rev 441 via SR 1245900
* 7545891f58 Update systemd to version 257.2 / rev 440 via SR 1243303
* c14020ba43 Update systemd to version 257.2 / rev 439 via SR 1241438
* 3137d3ab3d update 2025-02-06 19:07
2025-02-18 14:16:54 +01:00
Daan De Meyer
840ce150a6 mkosi: update arch commit reference
* 1b4994657d return if not a git repository (skip backports and reverts)
* 9d3374e98b move patch up
* 2416b7d81c upgpkg: 257.3-1: new upstream release
2025-02-18 14:16:28 +01:00
Lennart Poettering
a34ce4842b ci: test new logic 2025-02-18 13:49:24 +01:00
Lennart Poettering
4e24796b5a mount-tool: add explicitly control of path canonicalization
With this the default canonicalization of paths can be turned off,
giving users explicit control on what shall happen if symlinks are
encountered within a path.
2025-02-18 13:49:24 +01:00
Lennart Poettering
61178346e6 mount-tool: modernize umount and make sure it works for bind mounted files
So far, "systemd-umount" executed on a bind mounted file would assume it
is supposed to unmount a loopback mounted file system. Let's address
that by instead checking if the file is a mount.
2025-02-18 13:49:24 +01:00
Lennart Poettering
66b5e7dfaa catalog: assign a proper message ID for mounts on symlinked paths
For some reason we reused the non-empty catalog entry so far, which is
plain wrong. Correct that.
2025-02-18 13:49:24 +01:00
Lennart Poettering
38c35970b1 core: port mount unit inode creation to make_mount_point_inode_from_mode() too
This also ports over things to use chase() to create/pin the underlying
to mount, and in particular checks that the path does not contain any
symlinks. That's crucial since we cannot allow mounts to be established
with that, since it would mean we couldn't recognize the entries in
/proc/self/mountinfo anymore.
2025-02-18 13:49:24 +01:00
Lennart Poettering
3075ea0bc9 mount-util: refactor make_mount_point_inode_from_xyz()
This replaces make_mount_point_inode_from_stat() by
make_mount_point_inode_from_mode() and makes it take a single mode_t
rather than a "struct stat". Moreover, at an "atfd" style directory
parameter.

Then port all users over to new feature, and in particular make use of
the directory fd: use chase() to create and pin parent directories first where
needed.
2025-02-18 13:49:24 +01:00
Lennart Poettering
8e0193aabf tree-wide: pass EBADF to fd params of namespace_fork() 2025-02-18 12:11:00 +01:00
Lennart Poettering
fff6dfc75e timedated: rework clock change overflow check
Let's use explicit language constructs to test for overflow, the
previous code was ultimately relying on undefined behaviour.
2025-02-18 11:22:34 +01:00
Lennart Poettering
0df15b843e Firstboot tweaklets (#36424) 2025-02-18 11:22:11 +01:00
Marco Trevisan (Treviño)
bd887a75d4 man/org.freedesktop.systemd1.xml: Clarify the behavior of Subscribe()
It was unclear that it was applied to standard signals too, and this
lead to unexpected behavior.

See: https://github.com/systemd/systemd/pull/36366
2025-02-18 09:56:11 +00:00
Lennart Poettering
787904d078 terminal-util: output newline at end of "Press any key to proceed" message
So far we'd leave the cursor at the end of the Press any key to proceed
message as long as the user didn't type in anything yet, and generated
the newline only after.

Let's switch this around: let's output the newline before.

This should make boot-time output nicer since it means concurrent output
while we wait will start at the beginning of line, and not in the middle.
2025-02-18 09:19:03 +01:00
Lennart Poettering
0e7dd5aa4d homectl: when asking for a user pw for an initial homed account at boot, don't insist on strong password
It's just very annoying during debugging, and also unnecessary.
2025-02-18 09:19:03 +01:00
Lennart Poettering
0680c7e5b4 homectl: don't show --enforce-password-policy= recommendation in first-boot invocation
The hint is not useful, since this is after all invoked as part of the
boot process, and not from an interactive shell, where the user could
directly retry with the changed switch. Hence let's simply suppress the
hint for those cases.
2025-02-18 09:19:03 +01:00
Lennart Poettering
89b3d1fafb update TODO 2025-02-18 09:16:57 +01:00
Luca Boccassi
cf4deeaf1e ukify: print all remaining log-like output to stderr
We want to be able to capture stdout for json and such, so convert
all remaining logging to stderr.
2025-02-17 22:20:32 +01:00
Anthony Avina
1bcb739f08 Update footer.html to 2025
Updating footer to reflect current year: 2025
2025-02-17 19:49:32 +00:00
Emilio Sepulveda
ce37853543 po: Translated using Weblate (Interlingua)
Currently translated at 0.3% (1 of 257 strings)

Co-authored-by: Emilio Sepulveda <emism.translations@gmail.com>
Translate-URL: https://translate.fedoraproject.org/projects/systemd/main/ia/
Translation: systemd/main
2025-02-18 03:43:59 +09:00
Lennart Poettering
78367395a1 firstboot: add tab completion for interactive questions (#36271)
let's make it easier and quicker to go through firstboot questions by
providing TAB completion
2025-02-17 16:32:54 +01:00
Lennart Poettering
0fe3b0e4e2 homectl: show full list of selected groups as they are added 2025-02-17 15:21:18 +01:00
Lennart Poettering
cfe16540c8 homectl: optionally force interactive firstboot query 2025-02-17 15:21:18 +01:00
Lennart Poettering
9e6fbb5a51 homectl: clarify that we pick the default shell if the prompt is skipped 2025-02-17 15:21:18 +01:00
Lennart Poettering
94a2b1cd25 firstboot: add auto-completion to various fields
This adds TAB-based auto-completion to various fields we query from the
user, such as locale, keymap, timezone, group membership.

It makes it a lot easier to quickly iterate through firstboot without
typing too much.
2025-02-17 15:21:18 +01:00
Lennart Poettering
b6478aa12f terminal-util: beef up show_menu()
This modernizes the function a bit, and adds some bits:

1. whether to show numbers before entries is now optional, and if they
   are shown they are displayed in grey.

2. a common prefix can now be grayed out (later useful for completion
   support)

3. some variables have been named to clarify their purpose

4. the table display dimensions can now be auto-sized (by specifying
   SIZE_MAX and number of columns and column width)
2025-02-17 15:21:13 +01:00
Lennart Poettering
8fcd85768b terminal-util: tweak any_key_to_proceed() a bit
1. Make the message a bit more visible, by adding ANSI color. This
   matters in particular during boot, where the message otherwise might
   be overprinted by other output

2. Let's turn off terminal echo so that whatever key is entered is not
   made visible on screen, and we can handle newline and other keys
   reasonably uniformly.
2025-02-17 15:07:38 +01:00
Lennart Poettering
4ba044ebd0 ask-password-api: refuse control characters in passwords
Just some extra safety
2025-02-17 15:05:18 +01:00
Lennart Poettering
104a6b8c39 utf8: add helper that determines length in bytes of last UTF-8 character in string 2025-02-17 15:05:18 +01:00
Lennart Poettering
428146dc89 strv-util: add strv_filter_prefix() helper 2025-02-17 15:00:00 +01:00
Lennart Poettering
f77f363c95 string-util: add str_common_prefix() helper that determines length of common prefix of two strings 2025-02-17 14:57:03 +01:00
Daan De Meyer
42839efb10 mkfs-util: Add support for btrfs compression
Corresponding PR in btrfs-progs: https://github.com/kdave/btrfs-progs/pull/882
2025-02-17 14:11:04 +01:00
Lennart Poettering
480f72c0a3 update TODO 2025-02-17 11:38:32 +01:00
Luca Boccassi
7dd9ba6feb mkosi: update debian commit reference
* 08eb5e1eff Set tty device node mode to 0600
* e3955d1ca2 initramfs-tools: copy hwdb.bin to initramfs
* aff03b8933 d/rules: fix bpftool path discovery on ubuntu
* cab4f15666 Update changelog for 257.3-1 release
* 9bfeffe2a3 autopkgtest: fix mkosi config section
* 44487bfe02 ukify: depend on python3-zstandard and recommend python3-lz4
* 0a20294f18 d/rules: adjust vmlinux.h path for Ubuntu
* 94fa0939ed Drop fallback for missing linux-bpf-dev package
* b0b75e3f4b systemd-boot: check that bootvar really points to sd-boot
* 464453cbd6 systemd-boot: fix creating bootvar on arm64
* ce4a878ef7 systemd-boot: warn if efibootmgr is not installed
* cce6971f68 Install new udev rule for hidraw
* 0c483fbd26 d/t/control: do not pull in gdm3 on loong64
* 52451a0c14 d/t/control: depend on debian-archive-keyring and ubuntu-keyring
2025-02-17 14:50:07 +09:00
Luca Boccassi
135640c140 dissect: fix log_debug_errno assert due to r=0
systemd-dissect[612]: Assertion '(_error) != 0' failed at src/shared/dissect-image.c:3436, function dissected_image_load_verity_sig_partition(). Aborting.
2025-02-17 14:38:05 +09:00
Yu Watanabe
f9c03297c5 network: update outdated comment
Now, our kernel base line supports ambient capabilities, hence the
comment is outdated.
2025-02-17 06:20:46 +09:00
Yu Watanabe
eb381e65f1 network/address: update comment
As commented in the code, the check is now redundant. But let's keep
that to make IPv6LL addresses on other interfaces not removed
accidentally.
2025-02-17 06:20:46 +09:00
Yu Watanabe
29c2d4e158 network/address: IFA_FLAGS is supported since kernel v3.14
Our kernel base line is now v5.4.
2025-02-17 06:20:46 +09:00
Yu Watanabe
7d1a8da719 network/bridge-mdb: drop workaround for MDB entry on bridge
Our kernel base line is now v5.4.
2025-02-17 06:20:46 +09:00
Yu Watanabe
0d73214cae network: mention IFLA_PERM_ADDRESS is since kernel v5.6 2025-02-17 06:20:46 +09:00
Yu Watanabe
49625caaa9 network/routing-policy-rule: assume FRA_PROTOCOL attribute is always set
Since kernel v4.17 (1b71af6053af1bd2f849e9fda4f71c1e3f145dcf), the
attribute is always set in each netlink message for routing policy rule.
Now, our base line is v5.4. Hence, we can drop the workaround.
2025-02-17 06:20:36 +09:00
Yu Watanabe
6698795eda network: add/update comments about required kernel configs 2025-02-17 05:13:06 +09:00
Yu Watanabe
034b69d8b8 network: assume nexthop is supported by the kernel
It is supported since kernel v5.3 (65ee00a9409f751188a8cdc0988167858eb4a536),
but our base line is now v5.4.
2025-02-17 04:54:59 +09:00
Daan De Meyer
7db71cd79f ukify: Fix --sign-profile= check for main profile
opts.profile is always an env file so we have to parse the default
value as well to check if it's in --sign-profile= or not.
2025-02-16 18:52:26 +01:00
Luca Boccassi
1f1b403d03 journal-remote: several follow-ups for compression support, and trivial cleanups (#36334)
Follow-ups for cfaf78001c (#34822).
2025-02-16 14:33:47 +00:00
Yu Watanabe
7ffa9dc616 TEST-75-RESOLVED: add test cases for resolving service with record type filter 2025-02-16 23:22:50 +09:00