summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* | | update TODOLennart Poettering2022-10-251-0/+22
|/ /
* | man: Mention that journal file size is capped to 4G in compact modeDaan De Meyer2022-10-251-15/+10
| |
* | Report version string as in the Boot Loader Spec, fix boot loader upgradesZbigniew Jędrzejewski-Szmek2022-10-251-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We generate a "version string" that is reported by various tools. This patch changes this version string to use the characters specified for the version string in the Boot Loader Specification. We start using the special characters we have in the spec for this exact purpose and thus fix version comparisons. We also stop using '+' which is not part of the allowed charset and is used for boot attempt counting and should not be part of the version string. The version string is (among other places) used in sd-boot and the comparison result is used by 'bootctl update' to decide whether to install a new binary. Before, because 'nn-rc1' compares higher than 'nn', we would refuse to upgrade pre-release versions. The boot loader is the primary motivation. I'm not aware of programatic version comparisons in other places, but it makes sense to use the same versions string everywhere. (This patch effectively only matters for non-distro builds, because distro builds presumably use -Dversion-tag to set something meaningful. Ideally, those version strings are compatible with our version strings, but this is outside of our control.)
* | btrfs-util: move btrfs_defrag_fd() from fd-util.[ch]Yu Watanabe2022-10-254-16/+13
|/ | | | | | After d71ece3f0b85c7a3decc50143b68ac07fc5831ae, the function is not used in libbasic or libsystemd anymore. Let's move it to more appropriate place.
* Merge pull request #25118 from bluca/rc2v252-rc3Luca Boccassi2022-10-2412-418/+2248
|\ | | | | hwdb/news for rc3
| * Update autosuspend hwdbLuca Boccassi2022-10-241-0/+10
| | | | | | | | ninja -C build update-hwdb-autosuspend
| * Update hwdbLuca Boccassi2022-10-2410-360/+2205
| | | | | | | | ninja -C build update-hwdb
| * NEWS: update contributors listLuca Boccassi2022-10-241-58/+33
|/
* Merge pull request #25052 from yuwata/resolvconf-compatYu Watanabe2022-10-245-51/+117
|\ | | | | resolvconf-compat: first try to use the specified interface name as is
| * test: add tests for setting DNS servers by resolvectl or resolvconfYu Watanabe2022-10-241-2/+36
| |
| * resolvconf-compat: first parse provided interface name as isYu Watanabe2022-10-242-34/+62
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Then, try to drop multiple protocol specifiers at the end. Strictly speaking, this breaks backward compatibility: if eth0 and eth0.42 exists, then previously, echo 'nameserver 192.168.0.1' | resolvconf -a eth0.42 adds the DNS server to eth0 instead of eth0.42, as we unconditionally dropped the specifier after the last dot, and echo 'nameserver 192.168.0.1' | resolvconf -a eth0.42.dhcp adds the DNS server to eth0.42. However, with this commit, now the both commands add the DNS server to eth0.42. But, hopefully, this should be preferable behavior. Fixes #25032.
| * resolvectl: rely on invoked_as()Yu Watanabe2022-10-241-4/+7
| |
| * string-util: make free_and_strdup_warn() return 1 when new string is assignedYu Watanabe2022-10-241-2/+5
| |
| * systemctl: fix potential memleak on failure in determine_default()Yu Watanabe2022-10-241-9/+7
| | | | | | | | And make verb_set_default() return zero on success.
* | udev: fix the errno check if a couple of placesFrantisek Sumsal2022-10-241-2/+2
| | | | | | | | Follow-up to 691a596da15.
* | mkosi: libbpf0 -> libbpf1Luca Boccassi2022-10-241-1/+1
| |
* | Merge pull request #25080 from keszybz/search-pathsYu Watanabe2022-10-245-101/+128
|\ \ | | | | | | Refusing linking files underneath our hierarchy, improve error messages
| * | man: fix count mismatchZbigniew Jędrzejewski-Szmek2022-10-241-1/+1
| | | | | | | | | | | | We said "search path" and "search paths" in the same sentence…
| * | systemctl,manager: refuse linking unit files underneath the search pathsZbigniew Jędrzejewski-Szmek2022-10-243-3/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We treat symlinks to unit files outside of the search path differently from symlinks to unit files *in* the search path. The former are "linked" unit files, while the latter are enablement symlinks and such and will be removed when disabling the unit. The history of the check for in_search_path() is interesting: this condition was added already in the first version of the code in 830964834f330836b9d33752e83de09d4f38da87. Since the beginning, matching arguments would simply be ignored. I think this is dubious. The man page says: > Link a unit file that is *not* in the unit file search paths > into the unit file search path But for backwards-compat, let's continue to silently do nothing for files *in* the search path. The case of symlinks to unit files underneath the search path, but in some subdirectory, is less clear. We didn't check for this case, so it was implicitly allowed. But that's just an oversight, we don't want to allow people to create additional subhierarchies under our hierarchy. Let's check for this case and refuse. Closes #24605.
| * | shared/install: check that install_changes_add() didn't fail on successZbigniew Jędrzejewski-Szmek2022-10-241-19/+41
| | | | | | | | | | | | | | | | | | | | | This adds a check for an allocation error for the calls to install_changes_add() where we're plannig to return success from the call. In cases where we're returning failure, it doesn't matter as much: the operation will fail anyway, and if the allocation fails, we'll just get a less descriptive error message.
| * | shared/install: add forgotten calls to install_changes_add()Zbigniew Jędrzejewski-Szmek2022-10-241-25/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | The machinery to report a good error message only works if the error was registered with install_changes_add() and a file name. Otherwise we only get a generic "Op failed: %m" message. In some places -EINVAL is replaced by -EUCLEAN, so that we get the proper error message.
| * | shared/install: make install_changes_add propagate passed-in errno valueZbigniew Jędrzejewski-Szmek2022-10-242-50/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The function was written to only return an error from internal allocation failures, because when using it to create a bus message, we want to distinguish a failed operation from an allocation error when sending the reply. But it turns out that the only caller that makes this distinction checks that the passed-in errno value ('type') is not negative beforehand. So we can make the function pass 'type' value through, which makes most of the callers nicer. No functional change.
| * | Make comment about coordinating offline and online installation symmetricZbigniew Jędrzejewski-Szmek2022-10-202-3/+4
| | | | | | | | | | | | https://github.com/systemd/systemd/pull/24728#issuecomment-1260966910
* | | test-string-util: remove several strdupa() callsLuca BRUNO2022-10-241-5/+5
| | | | | | | | | | | | | | | | | | | | | This performs the same semantic transformation as the Coccinelle script 'strdupa.cocci'. Somehow the existing semantic patch is not properly triggering on this 'string_replace_char' test.
* | | hwdb: fix key toggle and programmable button for Positivo K142 (#25111)Edson Juliano Drosdeck2022-10-241-0/+2
| | |
* | | po: Translated using Weblate (Estonian)H A2022-10-241-9/+6
| | | | | | | | | | | | | | | | | | | | | | | | Currently translated at 71.5% (138 of 193 strings) Co-authored-by: H A <contact+fedora@hen.ee> Translate-URL: https://translate.fedoraproject.org/projects/systemd/master/et/ Translation: systemd/main
* | | homed: properly initialize all return paramsLennart Poettering2022-10-241-0/+1
| |/ |/|
* | Merge pull request #25100 from weblate/weblate-systemd-masterFrantisek Sumsal2022-10-225-50/+37
|\ \ | | | | | | Translations update from Fedora Weblate
| * | po: Translated using Weblate (Finnish)Jan Kuparinen2022-10-221-10/+7
| | | | | | | | | | | | | | | | | | | | | | | | Currently translated at 100.0% (193 of 193 strings) Co-authored-by: Jan Kuparinen <copper_fin@hotmail.com> Translate-URL: https://translate.fedoraproject.org/projects/systemd/master/fi/ Translation: systemd/main
| * | po: Translated using Weblate (Ukrainian)Yuri Chornoivan2022-10-221-11/+7
| | | | | | | | | | | | | | | | | | | | | | | | Currently translated at 100.0% (193 of 193 strings) Co-authored-by: Yuri Chornoivan <yurchor@ukr.net> Translate-URL: https://translate.fedoraproject.org/projects/systemd/master/uk/ Translation: systemd/main
| * | po: Translated using Weblate (Turkish)Oğuz Ersen2022-10-221-10/+8
| | | | | | | | | | | | | | | | | | | | | | | | Currently translated at 100.0% (193 of 193 strings) Co-authored-by: Oğuz Ersen <oguz@ersen.moe> Translate-URL: https://translate.fedoraproject.org/projects/systemd/master/tr/ Translation: systemd/main
| * | po: Translated using Weblate (Korean)김인수2022-10-221-9/+6
| | | | | | | | | | | | | | | | | | | | | | | | Currently translated at 100.0% (193 of 193 strings) Co-authored-by: 김인수 <simmon@nplob.com> Translate-URL: https://translate.fedoraproject.org/projects/systemd/master/ko/ Translation: systemd/main
| * | po: Translated using Weblate (Czech)Daniel Rusek2022-10-221-10/+9
|/ / | | | | | | | | | | | | | | Currently translated at 100.0% (193 of 193 strings) Co-authored-by: Daniel Rusek <mail@asciiwolf.com> Translate-URL: https://translate.fedoraproject.org/projects/systemd/master/cs/ Translation: systemd/main
* | meson: always use libatomic if foundZbigniew Jędrzejewski-Szmek2022-10-211-10/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Semi-quoting https://github.com/systemd/systemd/issues/25057: clang-16 has made the choice to turn on -Werror=implicit-function-declaration,implicit-int. (See Gentoo's tracker bug https://bugs.gentoo.org/870412). Added in commit 132c73b57ad1d363e97e1f4720f0e920826f34e1, systemd now does a check to see if libatomic is needed with some compile/link tests with e.g. __atomic_exchange_1, but the tests don't provide a prototype for __atomic_exchange_1 so with clang-16 the test fails, breaking the build. Let's simplify things by linking to libatomic unconditionally if it is found and seems to work. If actually unneeded, it might be dropped via --as-needed. This seems to work with gcc and clang. declare_dependency() is used instead of cc.find_library(), because the latter picks up a symlink in gcc private directory (e.g. /usr/lib/gcc/x86_64-redhat-linux/12/libatomic.so), and we don't want that. Fixes #25057.
* | hwdb: Add support for Elgato Stream Deck XL (gen 2)Jonathan Kang2022-10-211-0/+4
| | | | | | | | | | | | Add support for the following Elgato Stream Deck Device: ID 0fd9:008f Elgato Systems GmbH Stream Deck XL
* | Merge pull request #25083 from bluca/revert_timerMichael Biebl2022-10-202-39/+23
|\ \ | | | | | | Revert "Fix issue with system time set back (#24131)"
| * | Revert "Fix issue with system time set back (#24131)"Luca Boccassi2022-10-202-39/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This fix unfortunately introduced a much worse regression that is affecting many users, so let's revert it for now and rework it in the next release. This reverts commit 5ded3917a161d87984d74d70b5eb2a254e54b44e. Fixes https://github.com/systemd/systemd/issues/24984
* | | Merge pull request #25084 from mrc0mmand/scorecard-tweaksFrantisek Sumsal2022-10-201-7/+14
|\ \ \ | | | | | | | | ci: run the Scorecards action in PRs only on config update
| * | | ci: run the Scorecards action in PRs only on config updateFrantisek Sumsal2022-10-201-7/+11
| | | | | | | | | | | | | | | | | | | | | | | | Also, unify the string quotation a bit and drop one unnecessary expression syntax (as everything in `if` statements is automatically evaluated as an expression).
| * | | ci: add a missing SPDX lineFrantisek Sumsal2022-10-201-0/+3
| | | |
* | | | update TODOLennart Poettering2022-10-201-0/+7
| | | |
* | | | Merge pull request #25081 from keszybz/test-local-addresses-failLuca Boccassi2022-10-203-19/+5
|\ \ \ \ | |/ / / |/| | | Fix racy check in test-local-addresses
| * | | test-local-addresses: drop racy checkZbigniew Jędrzejewski-Szmek2022-10-201-7/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The test would fail when addresses were being removed in parallel. In general, the check is only valid when the machine configuration is static, which in general isn't true. CentOS CI (Arch Linux) fails in TEST-02-UNITTESTS test-local-addresses: 10:38:05 (gdb) #0 0x00007f86260a164c in ?? () from /usr/lib/libc.so.6 10:38:05 No symbol table info available. 10:38:05 #1 0x00007f8626051958 in raise () from /usr/lib/libc.so.6 10:38:05 No symbol table info available. 10:38:05 #2 0x00007f862603b53d in abort () from /usr/lib/libc.so.6 10:38:05 No symbol table info available. 10:38:05 #3 0x00007f862639a755 in log_assert_failed ( 10:38:05 text=text@entry=0x56180e56c03b "n == n_ipv4 + n_ipv6", 10:38:05 file=file@entry=0x56180e56c0d1 "src/test/test-local-addresses.c", 10:38:05 line=line@entry=45, 10:38:05 func=func@entry=0x56180e56c360 <__PRETTY_FUNCTION__.6> "test_local_addresses") at ../build/src/basic/log.c:853 10:38:05 No locals. 10:38:05 #4 0x000056180e56b77e in test_local_addresses () 10:38:05 at ../build/src/test/test-local-addresses.c:45 10:38:05 a = 0x0 10:38:05 n = 234 10:38:05 n_ipv4 = 236 10:38:05 n_ipv6 = 7 10:38:05 __PRETTY_FUNCTION__ = "test_local_addresses" 10:38:05 __func__ = "test_local_addresses" 10:38:05 #5 0x000056180e56ba67 in run_test_table () at ../build/src/shared/tests.h:106 10:38:05 r = 0 10:38:05 t = 0x56180e56e010 <__unique_prefix_static_test_table_entry10> 10:38:05 __PRETTY_FUNCTION__ = <optimized out> 10:38:05 __func__ = "run_test_table" 10:38:05 #6 0x000056180e56bb2f in main (argc=1, argv=0x7ffc3a814808) 10:38:05 at ../build/src/test/test-local-addresses.c:81 10:38:05 _intro = 0x0 10:38:05 _outro = 0x0 10:38:05 _r = 0 10:38:05 _q = 0 10:38:05 (gdb) The logs show that there's a huge number of private addresses, probably from some other test running in parallel.
| * | | test-local-addresses: inline iterator variableZbigniew Jędrzejewski-Szmek2022-10-201-3/+1
| | | |
| * | | resolved: drop unnecessary empty linesZbigniew Jędrzejewski-Szmek2022-10-201-4/+0
| | | |
| * | | tree-wide: inline declarations of sd_netlink_message iteratorsZbigniew Jędrzejewski-Szmek2022-10-202-5/+3
| | |/ | |/| | | | | | | Most places were already converted, but a few weren't for some reason.
* | | Merge pull request #25077 from keszybz/completions-optional-componentsLuca Boccassi2022-10-2016-52/+67
|\ \ \ | |_|/ |/| | Fix completions when machinectl is not installed and other fixes
| * | shell-completion/zsh: rename helper for clarityZbigniew Jędrzejewski-Szmek2022-10-201-7/+7
| | |
| * | shell-completion/zsh: silence error when machinectl is not installedZbigniew Jędrzejewski-Szmek2022-10-2013-19/+40
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This fixes a few unrelated issues: - when ENABLE_MACHINED is false, machinectl is not installed, but _sd_machines is still used in a few places that want to complete -M and such. Also, bash completion calls machinectl in various places. Make missing machinectl mean "no machines" in this case, so that no error is generated in the callers. - machinectl list --full would print multiple lines of output per machine, breaking grep, issue introduced in e2268fa43742ece4a5cdc2e93f731b2bb2fcc883. Using --max-addresses=1 would fix the issue, but let's use --max-addresses=0 because we now can. - the lists used in various places were slightly different for no good reason. - don't use a subshell if not necessary. The code for bash still uses the same combined list of images and running machines for various commands. The zsh code uses images for start/clone, and running machines for the rest. Maybe something to fix in the future. Replaces #25048.
| * | machinectl: allow --max-addresses=0Zbigniew Jędrzejewski-Szmek2022-10-202-26/+20
| |/ | | | | | | Sometimes the addresses are not important, so allow skipping them in output.