]> git.ipfire.org Git - thirdparty/openembedded/openembedded-core-contrib.git/commit
systemd: upgrade to 255.1
authorChen Qi <Qi.Chen@windriver.com>
Wed, 27 Dec 2023 04:20:34 +0000 (12:20 +0800)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Fri, 26 Jan 2024 16:05:57 +0000 (16:05 +0000)
commitebafe463799b39025a0b24a0a14a2f02b6de9bac
treea8309ff8f1fdecb0bef2ee455f9700b7ddcb2de4
parentb86b1f1265b87f73ea132a9c0d3b1978972ad41b
systemd: upgrade to 255.1

1. Patch changes:

0004-Move-sysusers.d-sysctl.d-binfmt.d-modules-load.d-to-.patch
is removed because it has no real effect now. The /lib is now
/usr/lib because 'usrmerge' is a required distro feature for systemd.

0002-binfmt-Don-t-install-dependency-links-at-install-tim.patch is
refreshed for the new version to avoid patch-fuzz issue.

2. root user's home directory now defaults to "/root":

The sysuers.d/basic.conf is still modified to respect the ROOT_HOME
value, so if users set ROOT_HOME to "/home/root", the behavior is the
same as before. However, this is only for backward compatibility. With
this patch, The ROOT_HOME value is set to "/root" in init-manager-systemd.inc.
This is because systemd's source codes are hardcoding "/root", and other
values are not officially supported. See the list below.
$ grep -rl '"/root"' src/ | grep -v 'src/test'
src/core/namespace.c
src/basic/user-util.c
src/nss-systemd/nss-systemd.c
src/nspawn/nspawn.c
src/firstboot/firstboot.c
src/shared/userdb.c
src/shared/user-record.c
$ grep -rl /root network/ factory/ sysctl.d/ sysusers.d/ rules.d/ tmpfiles.d/ units/ xorg/ tools/
sysusers.d/basic.conf.in
tmpfiles.d/provision.conf
units/emergency.service.in
units/rescue.service.in
tools/list-discoverable-partitions.py
Previously, the recipe was just substituting sysusers.d/basic.conf.in,
which is not enough to be treated as 'fully support'. I deliberately put
a warning message in do_install to warn users about non "/root" ROOT_HOME
value. Don't remove it until all above places are handled.

3. cgroupv2 is now the default.
cgroupv2 is the default for systemd for many years and it's the default
for distros such as ubuntu and fedora. Let's also use it as the default.

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/conf/distro/include/init-manager-systemd.inc
meta/recipes-core/systemd/systemd.inc
meta/recipes-core/systemd/systemd/0002-binfmt-Don-t-install-dependency-links-at-install-tim.patch
meta/recipes-core/systemd/systemd/0004-Move-sysusers.d-sysctl.d-binfmt.d-modules-load.d-to-.patch [deleted file]
meta/recipes-core/systemd/systemd/basic.conf.in [deleted file]
meta/recipes-core/systemd/systemd_255.1.bb [moved from meta/recipes-core/systemd/systemd_254.4.bb with 98% similarity]