Commit graph

71875 commits

Author SHA1 Message Date
Nick Rosbrook 6fec0fed10 shared/install: correctly install alias for units outside search path
Currently, if a unit file is enabled from outside of the search path,
and that unit has an alias, then the symlink ends up pointing outside of
the search path too. For example:

 $ cat /tmp/a.service
 [Service]
 ExecStart=sleep infinity

 [Install]
 Alias=b.service
 WantedBy=multi-user.target

 $ systemctl enable /tmp/a.service
 Created symlink /etc/systemd/system/a.service → /tmp/a.service.
 Created symlink /etc/systemd/system/b.service → /tmp/a.service.
 Created symlink /etc/systemd/system/multi-user.target.wants/a.service → /tmp/a.service.

This then means the alias is treated as a separate unit:

 $ systemctl start a.service
 $ sudo systemctl status a
 ● a.service
  Loaded: loaded (/etc/systemd/system/a.service; enabled; preset: enabled)
  Active: active (running) since Fri 2024-03-15 15:17:49 EDT; 9s ago
 Main PID: 769593 (sleep)
   Tasks: 1 (limit: 18898)
  Memory: 220.0K
     CPU: 5ms
  CGroup: /system.slice/a.service
          └─769593 sleep infinity

 Mar 15 15:17:49 six systemd[1]: Started a.service.
 $ sudo systemctl status b
 ○ b.service
  Loaded: loaded (/etc/systemd/system/b.service; alias)
  Active: inactive (dead)

To fix this, make sure the alias uses a target that is inside the search
path. Since the unit file itself is outside of the search path, a
symlink inside the search path will have been created already. Hence,
just point the alias symlink to that recently created symlink.
2024-03-18 11:58:07 +00:00
Ronan Pigott ce88017255 resolved: wait to gc transactions if they might still give an answer
In some cases when a query completes there are still pending
transactions that are no longer useful to answer the query. But if this
query is repeated in the future and we don't have the answers cached,
we're going to ask and ignore the answer again.

Instead of purging these superfluous transactions, let's wait and see if
they produce an answer, since we already asked the question, and use it
to fill our cache.
2024-03-18 11:10:11 +00:00
Luca Boccassi 48570c9273
Merge pull request #31811 from yuwata/network-pin-persistent-storage
network: pin file descriptor of persistent storage
2024-03-18 11:08:21 +00:00
Abraham Samuel Adekunle fcf38e2cb3 Add unittest file for basic:label 2024-03-18 11:04:42 +00:00
Luca Boccassi 9cebda59e8
Merge pull request #31829 from keszybz/more-header-checks
Update c/c++ version checks and add test for -std=c++26
2024-03-17 17:58:59 +00:00
Daan De Meyer e4bdf1d830
Merge pull request #31831 from DaanDeMeyer/opensuse
Update opensuse packaging specs submodule to latest
2024-03-17 17:03:09 +01:00
Daan De Meyer 4c8ab1e0ee Update arch/debian packaging source URLs
Let's use the actual URL to avoid warnings from git about getting
redirected.
2024-03-17 16:47:19 +01:00
Daan De Meyer 99cc65a0c9 Switch opensuse packaging specs source url to src.opensuse.org
opensuse's OBS has two git mirrors, code.opensuse.org uses pagure,
src.opensuse.org uses gitea. Let's try src.opensuse.org as pagure
doesn't seem to work properly when more advanced git functionality
is used.
2024-03-17 16:45:33 +01:00
Luca Boccassi a0f288c3e7
Merge pull request #31821 from behrmann/news256
NEWS: more reformulations and fixlets
2024-03-17 13:14:16 +00:00
Daan De Meyer 966e05af04 tpm2-setup: Add --graceful
Currently the associated units fail if full tpm support is not available
on the system. Similar to systemd-pcrextend, let's add a --graceful option
that exits gracefully if no full TPM support is detected and use it in both
units.
2024-03-17 13:34:51 +01:00
Daan De Meyer c0aeff4b99 units: Accept modules_load and rd.modules_load in systemd-modules-load.service
The service will use either, so let's make sure either of them starts
the service as well.
2024-03-17 13:33:45 +01:00
Zbigniew Jędrzejewski-Szmek 3317aedff0 meson: test with c++26 too
The docs say that support is experimental, but it's better for us if we know
about any problems early.

Header tests pass without any issue with gcc-14.0.1-0.8.fc40.x86_64.
2024-03-17 12:23:07 +01:00
Zbigniew Jędrzejewski-Szmek 345ef6eb56 meson: gcc docs say that name "c2x" is deprecated 2024-03-17 12:23:06 +01:00
Zbigniew Jędrzejewski-Szmek 62dfaa229e meson: use loops to unify repeated checks 2024-03-17 12:23:05 +01:00
Jörg Behrmann 28ec58298f NEWS: style fixes and a few reformulations
- mention the version format spec for sytsemd-vpick
- say what "systemd-creds --user" can be used by unprivileged users as well
- say what importctl does
- use en dash instead of em dash
- add a missing article
2024-03-16 15:16:01 +01:00
samuelvw01 3623a7ea83 Update _udevadm 2024-03-16 21:51:56 +09:00
Jörg Behrmann 80e748155e man: add missing "and" to importctl description 2024-03-16 12:52:48 +01:00
Yu Watanabe 7b799b870f units: use relative path 2024-03-16 05:31:44 +09:00
Daan De Meyer e48c170f51 mkosi: Do disk space cleanup asynchronously
This can actually take a rather long time (multiple minutes) so
make sure we do it asynchronously.
2024-03-16 05:31:25 +09:00
Tycho Andersen af668ab10a docs: update footer to 2024 2024-03-16 03:14:23 +09:00
Yu Watanabe 1716bac658
Merge pull request #31808 from keszybz/sundry-cleanups
Sundry cleanups
2024-03-16 01:40:56 +09:00
Daan De Meyer 6233a76932 meson: Rename add-git-hook.sh to git-setup.sh and configure git in it
Let's automatically apply the recommended git config with meson.
2024-03-15 17:27:49 +01:00
Daan De Meyer c735424908 docs: Update HACKING guide with recommended git config 2024-03-15 17:27:49 +01:00
Yu Watanabe 7eafdbeb00 network/dhcp-server: use the pinned fd of persistent storge 2024-03-16 01:12:05 +09:00
Yu Watanabe e1254d0616 network/varlink: return earlier from SetPersistentStorage method if nothing changed 2024-03-16 01:12:05 +09:00
Yu Watanabe 013359ac65 network: pin file descriptor of persistent storage
This also drop the support of /run/systemd/netif/persistent-storage-ready,
as the file is anyway removed when networkd is stopped.
Let's use $SYSTEMD_NETWORK_PERSISTENT_STORAGE_READY=1 instead on testing.
2024-03-16 01:12:05 +09:00
Luca Boccassi 09e99a41f0 NEWS: mention portablectl --copy=mixed 2024-03-15 15:16:12 +00:00
Luca Boccassi ab16e4852e shell completion: add --copy=mixed in portablectl
Follow-up for 82047a6aa7
2024-03-16 00:11:41 +09:00
Zbigniew Jędrzejewski-Szmek 3df28dd9b6 test/TEST-46: drop whitespace after redirection operators 2024-03-15 16:07:58 +01:00
Zbigniew Jędrzejewski-Szmek c7fa1470f9 portablectl: add forgotten value to --help
Followup for 82047a6aa7.
2024-03-15 16:07:58 +01:00
Zbigniew Jędrzejewski-Szmek 80fcdb731d journal: use empty_to_null() in one more place
Follow-up for 45bcab66a9.
2024-03-15 16:07:58 +01:00
Luca Boccassi e82131bf7f portable: when logging about attaching, include the used profile
Useful information to have in the logs.

Mar 14 16:45:27 H systemd-portabled[510]: Successfully attached ephemeral '/usr/share/minimal_0.raw' and its extension(s) '/usr/share/app0.raw' using profile 'default'
2024-03-15 15:05:08 +00:00
Luca Boccassi 681b1645b4
Merge pull request #31791 from yuwata/sd-dhcp-server-several-preparations
sd-dhcp-server: several cleanups and extension
2024-03-15 15:04:04 +00:00
Zbigniew Jędrzejewski-Szmek c78e86ab8d
Merge pull request #31777 from keszybz/unit-retitling-and-comments
Unit retitling and comments
2024-03-15 15:57:10 +01:00
Yu Watanabe dbf66cd1ab network/address: acquire address in address_process_request()
Previously, if an [Address] section is configured with a null address,
e.g. Address=0.0.0.0/24, then we acquired a free address in
link_request_address().

With this commit, we queue a request with the null address as is, and
acquire a free address later in address_process_request(). Similary,
now IPv4ACD daemon is configured in address_process_request().

With this change, we can make the address acquisition depend on other
conditions, e.g. if the persistent storage is ready or not.
2024-03-15 14:54:49 +00:00
Luca Boccassi df81883aa5 NEWS: fix typo and reword a couple of entries 2024-03-15 14:51:31 +00:00
Jörg Behrmann db319cb460 NEWS: fix typos 2024-03-15 23:41:18 +09:00
Mike Yuan 0867b87a90
NEWS: fix typo 2024-03-15 22:35:05 +08:00
Zbigniew Jędrzejewski-Szmek aa747c0033 TODO: various things noticed while writing NEWS 2024-03-15 15:25:15 +01:00
Zbigniew Jędrzejewski-Szmek e91db7371b NEWS: add initial version of changes in v256 2024-03-15 15:25:15 +01:00
Max Gautier ba53d4eb9a documentation: fix inconsistency
Since this sentence is in the same section it refers to, it does not
make much sense to mention the "section below".
2024-03-15 14:09:52 +00:00
Evgeny Vereshchagin 2e0c2fb8fb cifuzz,cflite: set mmap_rnd_bits to 28
to get MSan jobs to work with the latest Ubuntu images.

https://github.com/google/sanitizers/issues/1614
https://github.com/actions/runner-images/issues/9491
2024-03-15 21:58:41 +09:00
Unique-Usman 6a57d86bf9 Added a test file for the dirent-util.c 2024-03-14 22:53:32 +00:00
Yu Watanabe 5ed4c2b944 sd-dhcp-server: also save the server address and netmask to the leases file
And introduce a tiny helper to retrieve these information.
The function is not used at this time, but will be used later.
2024-03-15 04:15:10 +09:00
Yu Watanabe d47f83302e sd-dhcp-server: rearrange the parser of the leases file
No functional changes, just refactoring and preparation for later
commits.
2024-03-15 04:15:10 +09:00
Yu Watanabe 11b88419ae sd-dhcp-server: make sd_dhcp_server_set_lease_file() optionally take directory fd
Currently, though, no valid directory fd is passed to the function call.
Preparation for later commits.
2024-03-15 04:15:10 +09:00
Yu Watanabe 6e0abf5fb3 docs: fix typo
Follow-up for 34c6b7d9de.
2024-03-15 04:04:01 +09:00
Lennart Poettering afd20791ef update TODO 2024-03-14 19:09:55 +01:00
Lennart Poettering f63c1ada25
Merge pull request #31739 from poettering/pid1-sd-notify-tweaks
pid1: send various notifications via sd_notify() reporting boot progress
2024-03-14 18:43:57 +01:00
Yu Watanabe 134fe8d274 network: introduce link_requeue_request() 2024-03-15 02:28:48 +09:00