diff mbox series

[1/6] conf: Switch to systemd by default and simplify init manager selection

Message ID 20260221084230.3219379-1-richard.purdie@linuxfoundation.org
State New
Headers show
Series [1/6] conf: Switch to systemd by default and simplify init manager selection | expand

Commit Message

Richard Purdie Feb. 21, 2026, 8:42 a.m. UTC
This change effectively switches things to use INIT_MANAGER to select the init
system and drops the old compatibility 'none' method. The init manager selection
is now complex enough that requiring users to select it makes sense.

The new default is systemd, which reflects popular opinion. This is known to have
issues in some of our configurations such as musl but is also frequently asked for.

Anyone replacing defaultsetup.conf in their own setup will need to provide
equivalent functionality but that is execpted for any of the settings in there.

This change drops sysvinit from the default distro features backfill, meaning
we no longer need to remove it in systemd setups and places the init managers
on a more equal and equivalent standing.

This is a behaviour change for anyone using nodistro and anyone not already
setting INIT_MANAGER explictly.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
---
 meta/conf/bitbake.conf                                 | 2 +-
 meta/conf/distro/defaultsetup.conf                     | 2 +-
 meta/conf/distro/include/init-manager-mdev-busybox.inc | 1 -
 meta/conf/distro/include/init-manager-none.inc         | 4 ----
 meta/conf/distro/include/init-manager-systemd.inc      | 1 -
 meta/conf/distro/include/init-manager-sysvinit.inc     | 1 -
 6 files changed, 2 insertions(+), 9 deletions(-)
 delete mode 100644 meta/conf/distro/include/init-manager-none.inc
diff mbox series

Patch

diff --git a/meta/conf/bitbake.conf b/meta/conf/bitbake.conf
index be76c88cce1..aa6b5bbf9a0 100644
--- a/meta/conf/bitbake.conf
+++ b/meta/conf/bitbake.conf
@@ -920,7 +920,7 @@  DISTRO_FEATURES_NATIVESDK:mingw32 = "x11 ipv6"
 DISTRO_FEATURES_FILTER_NATIVE ?= "api-documentation debuginfod opencl opengl wayland"
 DISTRO_FEATURES_FILTER_NATIVESDK ?= "api-documentation debuginfod opencl opengl wayland"
 
-DISTRO_FEATURES_BACKFILL = "pulseaudio sysvinit gobject-introspection-data ldconfig"
+DISTRO_FEATURES_BACKFILL = "pulseaudio gobject-introspection-data ldconfig"
 MACHINE_FEATURES_BACKFILL = "rtc qemu-usermode"
 
 COMBINED_FEATURES = "${@oe.utils.set_intersect('DISTRO_FEATURES', 'MACHINE_FEATURES', d)}"
diff --git a/meta/conf/distro/defaultsetup.conf b/meta/conf/distro/defaultsetup.conf
index 62a5849c77e..269c3ad3f7b 100644
--- a/meta/conf/distro/defaultsetup.conf
+++ b/meta/conf/distro/defaultsetup.conf
@@ -12,5 +12,5 @@  PACKAGE_CLASSES ?= "package_ipk"
 INHERIT_DISTRO ?= "debian devshell sstate license remove-libtool create-spdx buildstats"
 INHERIT += "${PACKAGE_CLASSES} ${USER_CLASSES} ${INHERIT_DISTRO}"
 
-INIT_MANAGER ??= "none"
+INIT_MANAGER ??= "systemd"
 require conf/distro/include/init-manager-${INIT_MANAGER}.inc
diff --git a/meta/conf/distro/include/init-manager-mdev-busybox.inc b/meta/conf/distro/include/init-manager-mdev-busybox.inc
index d9b05e1781b..9b44e3e529c 100644
--- a/meta/conf/distro/include/init-manager-mdev-busybox.inc
+++ b/meta/conf/distro/include/init-manager-mdev-busybox.inc
@@ -1,5 +1,4 @@ 
 # enable mdev/busybox for init
-DISTRO_FEATURES_BACKFILL_CONSIDERED:append = " systemd sysvinit"
 VIRTUAL-RUNTIME_dev_manager ??= "busybox-mdev"
 VIRTUAL-RUNTIME_init_manager ??= "busybox"
 VIRTUAL-RUNTIME_initscripts ??= "initscripts"
diff --git a/meta/conf/distro/include/init-manager-none.inc b/meta/conf/distro/include/init-manager-none.inc
deleted file mode 100644
index 6ece5c99061..00000000000
--- a/meta/conf/distro/include/init-manager-none.inc
+++ /dev/null
@@ -1,4 +0,0 @@ 
-VIRTUAL-RUNTIME_init_manager ??= "sysvinit"
-VIRTUAL-RUNTIME_initscripts ??= "initscripts"
-VIRTUAL-RUNTIME_login_manager ??= "busybox"
-VIRTUAL-RUNTIME_dev_manager ??= "udev"
diff --git a/meta/conf/distro/include/init-manager-systemd.inc b/meta/conf/distro/include/init-manager-systemd.inc
index 1e64b8ad226..63fd225ca50 100644
--- a/meta/conf/distro/include/init-manager-systemd.inc
+++ b/meta/conf/distro/include/init-manager-systemd.inc
@@ -1,6 +1,5 @@ 
 # Use systemd for system initialization
 DISTRO_FEATURES:append = " systemd usrmerge"
-DISTRO_FEATURES_BACKFILL_CONSIDERED:append = " sysvinit"
 VIRTUAL-RUNTIME_init_manager ??= "systemd"
 VIRTUAL-RUNTIME_initscripts ??= ""
 VIRTUAL-RUNTIME_login_manager ??= "shadow-base"
diff --git a/meta/conf/distro/include/init-manager-sysvinit.inc b/meta/conf/distro/include/init-manager-sysvinit.inc
index e2d17b358d4..9ff5fed877c 100644
--- a/meta/conf/distro/include/init-manager-sysvinit.inc
+++ b/meta/conf/distro/include/init-manager-sysvinit.inc
@@ -1,6 +1,5 @@ 
 # Use sysvinit for system initialization
 DISTRO_FEATURES:append = " sysvinit"
-DISTRO_FEATURES_BACKFILL_CONSIDERED:append = " systemd"
 VIRTUAL-RUNTIME_init_manager ??= "sysvinit"
 VIRTUAL-RUNTIME_initscripts ??= "initscripts"
 VIRTUAL-RUNTIME_login_manager ??= "busybox"