@@ -34,12 +34,13 @@ CHANGES WITH 255 in spe:
3434 release to be enabled by default.
3535
3636 * "systemctl switch-root" is now restricted to initrd transitions only.
37- Transitions between real systems should be done with "systemctl soft-reboot"
38- instead.
3937
40- * The ip=off and ip=none kernel command line options interpreted by
38+ Transitions between real systems should be done with
39+ "systemctl soft-reboot" instead.
40+
41+ * The "ip=off" and "ip=none" kernel command line options interpreted by
4142 systemd-network-generator will now result in IPv6RA + link-local
42- addressing to be disabled, too. Previously DHCP was turned off, but
43+ addressing being disabled, too. Previously DHCP was turned off, but
4344 IPv6RA and IPv6 link-local addressing was left enabled.
4445
4546 * The NAMING_BRIDGE_MULTIFUNCTION_SLOT naming scheme has been deprecated
@@ -55,16 +56,16 @@ CHANGES WITH 255 in spe:
5556
5657 * The way services are spawned has been overhauled. Previously, a
5758 process was forked that shared all of the manager's memory (via
58- copy-on-write) while doing all the required set ups (e.g.: mount
59+ copy-on-write) while doing all the required setup (e.g.: mount
5960 namespaces, CGroup configuration, etc.) before exec'ing the target
6061 executable. This was problematic for various reasons: several glibc
6162 APIs were called that are not supposed to be used after a fork but
6263 before an exec, copy-on-write meant that if either process (the
6364 manager or the child) touched a memory page a copy was triggered, and
6465 also the memory footprint of the child process was that of the
65- manager but with the memory limits of the service. From this version
66+ manager, but with the memory limits of the service. From this version
6667 onward, the new process is spawned using CLONE_VM and CLONE_VFORK
67- semantics via posix_spawn(), and it immediately execs a new internal
68+ semantics via posix_spawn(3 ), and it immediately execs a new internal
6869 binary, systemd-executor, that receives the configuration to apply
6970 via memfd, and sets up the process before exec'ing the target
7071 executable.
@@ -73,10 +74,10 @@ CHANGES WITH 255 in spe:
7374 instead of PIDs when the kernel supports it, to improve robustness
7475 and reliability.
7576
76- * A new option SurviveFinalKillSignal= is now supported to configure a
77- unit to skip units on the final SIGTERM/SIGKILL spree on shutdown. This
78- is part of the required configuration to let a unit's processes survive
79- a soft-reboot operation without being interrupted .
77+ * A new option SurviveFinalKillSignal= can be used to configure the
78+ unit to be skipped in the final SIGTERM/SIGKILL spree on shutdown.
79+ This is part of the required configuration to let a unit's processes
80+ survive a soft-reboot operation.
8081
8182 * System extension images (sysext) can now set
8283 EXTENSION_RELOAD_MANAGER=1 in their extension-release files to
@@ -88,19 +89,20 @@ CHANGES WITH 255 in spe:
8889 * The ExtensionImages= and ExtensionDirectories= options now support
8990 confexts images/directories.
9091
91- * A new option NFTSet= provides a method for integrating dynamic cgroup IDs
92- into firewall rules with NFT sets. The benefit of using this setting is to be
93- able to use control group as a selector in firewall rules easily and this in
94- turn allows more fine grained filtering. Also, NFT rules for cgroup matching
95- use numeric cgroup IDs, which change every time a service is restarted, making
96- them hard to use in a systemd environment.
92+ * A new option NFTSet= provides a method for integrating dynamic cgroup
93+ IDs into firewall rules with NFT sets. The benefit of using this
94+ setting is to be able to use control group as a selector in firewall
95+ rules easily and this in turn allows more fine grained filtering.
96+ Also, NFT rules for cgroup matching use numeric cgroup IDs, which
97+ change every time a service is restarted, making them hard to use in
98+ systemd environment.
9799
98100 * A new option CoredumpReceive= can be set for service and scope units,
99101 together with Delegate=yes, to make systemd-coredump on the host
100- forward core files from processes crashed inside the delegated CGroup
101- subtree to systemd-coredump running in the container. This new option
102- is by default used by systemd-nspawn containers that use the "--boot"
103- switch, i.e. are fully booted up .
102+ forward core files from processes crashing inside the delegated
103+ CGroup subtree to systemd-coredump running in the container. This new
104+ option is by default used by systemd-nspawn containers that use the
105+ "--boot" switch .
104106
105107 * A new ConditionSecurity=measured-uki option is now available, to ensure
106108 a unit can only run when the system has been booted from a measured UKI.
@@ -111,22 +113,22 @@ CHANGES WITH 255 in spe:
111113 * The $USER environment variable is now always set for services, while
112114 previously it was only set if User= was specified. A new option
113115 SetLoginEnvironment= is now supported to determine whether to also set
114- $HOME, $LOGNAME and $SHELL.
116+ $HOME, $LOGNAME, and $SHELL.
115117
116118 * Socket units now support a new pair of
117119 PollLimitBurst=/PollLimitInterval= options to configure a limit on
118120 how often polling events on the file descriptors backing this unit
119121 will be considered within a time window.
120122
121- * Scope units can now be created passing PIDFDs instead of PIDs to select
123+ * Scope units can now be created using PIDFDs instead of PIDs to select
122124 the processes they should include.
123125
124126 * Sending SIGRTMIN+18 with 0x500 as sigqueue() value will now cause the
125127 manager to dump the list of currently pending jobs.
126128
127- * If the kernel supports MOVE_MOUNT_BENEATH, the systemctl and machinectl
128- bind and mount-image verbs will now cause the new mount to to replace
129- the old mount (if any), instead of overmounting it.
129+ * If the kernel supports MOVE_MOUNT_BENEATH, the systemctl and
130+ machinectl bind and mount-image verbs will now cause the new mount to
131+ replace the old mount (if any), instead of overmounting it.
130132
131133 TPM2 Support + Disk Encryption & Authentication:
132134
@@ -181,14 +183,6 @@ CHANGES WITH 255 in spe:
181183
182184 systemd-boot, systemd-stub, ukify, bootctl, kernel-install:
183185
184- * The 90-loaderentry kernel-install hook now supports installing device
185- trees.
186-
187- * ukify is no longer considered experimental, and now ships in /usr/bin/.
188-
189- * ukify gained a new verb, inspect, that describes the sections of a UKI
190- and print the content of the well-known sections.
191-
192186 * bootctl will now show whether the system was booted from a UKI in its
193187 status output.
194188
@@ -225,18 +219,29 @@ CHANGES WITH 255 in spe:
225219 passed from systemd-boot when running inside Confidential VMs with UEFI
226220 SecureBoot enabled.
227221
222+ * ukify is no longer considered experimental, and now ships in /usr/bin/.
223+
224+ * ukify gained a new verb inspect to describe the sections of a UKI and
225+ print the contents of the well-known sections.
226+
227+ * ukify gained a new verb genkey to generate a set of of key pairs for
228+ signing UKIs and their PCR data.
229+
230+ * The 90-loaderentry kernel-install hook now supports installing device
231+ trees.
232+
228233 systemd-repart:
229234
230- * A new option --copy-from= that synthesizes partition definitions from
231- the given image, which are then applied to the systemd-repart algorithm,
232- has been added .
235+ * A new option --copy-from= has been added that synthesizes partition
236+ definitions from the given image, which are then applied by the
237+ systemd-repart algorithm .
233238
234239 * A new option --copy-source= has been added, which can be used to specify
235240 a directory to which CopyFiles= is considered relative to.
236241
237- * New --make-ddi=confext, --make-ddi=sysext and --make-ddi=portable options
238- have been added to make it easier to generate these types of DDIs,
239- without having to provide repart.d definitions for them.
242+ * New --make-ddi=confext, --make-ddi=sysext, and --make-ddi=portable
243+ options have been added to make it easier to generate these types of
244+ DDIs, without having to provide repart.d definitions for them.
240245
241246 * The dm-verity salt and UUID will now be derived from the specified
242247 seed value.
@@ -258,11 +263,11 @@ CHANGES WITH 255 in spe:
258263 * udev will now create symlinks to loopback block devices in the
259264 /dev/disk/by-loop-ref/ directory that are based on the .lo_file_name
260265 string field selected during allocation. The systemd-dissect tool and
261- the util-linux losetup command now supports a complementing new
262- switch --loop-ref= for selecting the string. This means a loopback
263- block device may now be allocated under a caller-chosen reference and
264- can subsequently be referenced by that without first having to look
265- up the block device name the caller ended up with.
266+ the util-linux losetup command now supports a complementing new switch
267+ --loop-ref= for selecting the string. This means a loopback block
268+ device may now be allocated under a caller-chosen reference and can
269+ subsequently be referenced without first having to look up the block
270+ device name the caller ended up with.
266271
267272 * udev also creates symlinks to loopback block devices in the
268273 /dev/disk/by-loop-inode/ directory based on the .st_dev/st_ino fields
@@ -299,16 +304,16 @@ CHANGES WITH 255 in spe:
299304 is now dropped, as it never worked, hence it should not be used by
300305 anyone.
301306
302- * The 'prefixstable' ipv6 address generation mode now considers the
303- SSID when generating stable addresses, so that a different stable
304- address is used when roaming between wireless networks. If you
305- already use 'prefixstable' addresses with wireless networks, the
306- stable address chosen will be changed by the update.
307+ * The 'prefixstable' ipv6 address generation mode now considers the SSID
308+ when generating stable addresses, so that a different stable address
309+ is used when roaming between wireless networks. If you already use
310+ 'prefixstable' addresses with wireless networks, the stable address
311+ will be changed by the update.
307312
308- * The DHCPv4 client gained a RapidCommit= option, default true, which
313+ * The DHCPv4 client gained a RapidCommit option, true by default , which
309314 enables RFC4039 Rapid Commit behavior to obtain a lease in a
310315 simplified 2-message exchange instead of the typical 4-message
311- exchange if also supported by the DHCP server.
316+ exchange, if also supported by the DHCP server.
312317
313318 * The DHCPv4 client gained new InitialCongestionWindow= and
314319 InitialAdvertisedReceiveWindow= options for route configurations.
@@ -320,7 +325,7 @@ CHANGES WITH 255 in spe:
320325 (RFC8925).
321326
322327 * The SendHostname= and Hostname= options are now available for the
323- DHCPv6 client, independent of the DHCPv4 option, so that these
328+ DHCPv6 client, independently of the DHCPv4= option, so that these
324329 configuration values can be set independently for each client.
325330
326331 * The DHCPv4 and DHCPv6 client state can now be queried via D-Bus,
@@ -345,18 +350,18 @@ CHANGES WITH 255 in spe:
345350 indirection of NFT set types.
346351
347352 * The [IPv6AcceptRA] section supports the following new options:
348- UsePREF64=, UseHopLimit=, UseICMP6RateLimit= and NFTSet=.
353+ UsePREF64=, UseHopLimit=, UseICMP6RateLimit=, and NFTSet=.
349354
350355 * The [IPv6SendRA] section supports the following new options:
351- RetransmitSec=, HopLimit=, HomeAgent=, HomeAgentLifetimeSec= and
356+ RetransmitSec=, HopLimit=, HomeAgent=, HomeAgentLifetimeSec=, and
352357 HomeAgentPreference=.
353358
354359 * A new [IPv6PREF64Prefix] set of options, containing Prefix= and
355360 LifetimeSec=, has been introduced to append pref64 options in router
356361 advertisements (RFC8781).
357362
358363 * The network generator now configures the interfaces with only
359- link-local addressing if ip=link-local is specified on the kernel
364+ link-local addressing if " ip=link-local" is specified on the kernel
360365 command line.
361366
362367 * The prefix of the configuration files generated by the network
@@ -381,20 +386,19 @@ CHANGES WITH 255 in spe:
381386 * systemctl is-failed now checks the system state if no unit is
382387 specified.
383388
384- * systemctl will now automatically soft-reboot if a new root file
385- system has been setup in /run/nextroot/ when a reboot operation
386- is invoked.
389+ * systemctl will now automatically soft-reboot if a new root file system
390+ is found under /run/nextroot/ when a reboot operation is invoked.
387391
388392 Login management:
389393
390- * wall messages now work even when utmp support is disabled, using
394+ * Wall messages now work even when utmp support is disabled, using
391395 systemd-logind to query the necessary information.
392396
393397 * systemd-logind now sends a new PrepareForShutdownWithMetadata D-Bus
394- signal before shutdown/reboot/soft-reboot, that includes additional
395- information with respect to what PrepareForShutdown has . Currently
396- the additional information is the type of operation that is about to
397- be executed.
398+ signal before shutdown/reboot/soft-reboot that includes additional
399+ information compared to the PrepareForShutdown signal . Currently the
400+ additional information is the type of operation that is about to be
401+ executed.
398402
399403 Hibernation & Suspend:
400404
@@ -432,9 +436,9 @@ CHANGES WITH 255 in spe:
432436 transient unit.
433437
434438 * systemd-analyze, systemd-tmpfiles, systemd-sysusers, systemd-sysctl,
435- and systemd-binfmt gained a new --tldr option that can be used in
436- combination with --cat-config to suppress uninteresting configuration
437- lines, such as comments .
439+ and systemd-binfmt gained a new --tldr option that can be used instead
440+ of --cat-config to suppress uninteresting configuration lines, such as
441+ comments and whitespace .
438442
439443 * resolvectl gained a new "show-server-state" command that shows
440444 current statistics of the resolver. This is backed by a new
@@ -448,19 +452,19 @@ CHANGES WITH 255 in spe:
448452
449453 * seccomp now supports the LoongArch64 architecture.
450454
451- * systemd-id128 now supports a new -P option to show only values, and
452- combining -- app with the show verb .
455+ * systemd-id128 now supports a new -P option to show only values. The
456+ combination of -P and -- app options is also supported .
453457
454- * A new pam_systemd_loadkey.so PAM module is now available, which
455- allows automatically fetching the passphrase used by cryptsetup to
456- unlock the root file system and setting it as the PAM authtok. This
457- enables, among other things, configuring auto-unlock of the GNOME
458- Keyring / KDE Wallet when autologin is configured.
458+ * A new pam_systemd_loadkey.so PAM module is now available, which will
459+ automatically fetch the passphrase used by cryptsetup to unlock the
460+ root file system and set it as the PAM authtok. This enables, among
461+ other things, configuring auto-unlock of the GNOME Keyring / KDE
462+ Wallet when autologin is configured.
459463
460464 * Many meson options now use the 'feature' type, which means they
461465 take enabled/disabled/auto as values.
462466
463- * A new meson option configfiledir can be used to change where
467+ * A new meson option -Dconfigfiledir= can be used to change where
464468 configuration files with default values are installed to.
465469
466470 * Options and verbs in man pages are now tagged with the version they
@@ -905,9 +909,6 @@ CHANGES WITH 254:
905909 * ukify has been updated to allow building these UEFI PE "add-on"
906910 images, using the new 'addon<EFI-ARCH>.efi.stub'.
907911
908- * ukify gained a new "genkey" verb for generating a set of of key pairs
909- to sign UKIs and their PCR data with.
910-
911912 * ukify now accepts SBAT information to place in the .sbat PE section
912913 of UKIs and addons. If a UKI is built the SBAT information from the
913914 inner kernel is merged with any SBAT information associated with
0 commit comments