Change arago over to a single init-manager for all images instead of a
mixture of systemd/sysvinit based on perceived image size. With the
migration to a more targeted initramfs we have the space in the image to
support systemd and not require sysvinit for the smaller images.
We will still support setups that use ARAGO_SYSVINIT, but the preferred
method will be to set ARAGO_INIT_MANAGER in the local.conf with the
deault being systemd.
Signed-off-by: Ryan Eatmon <[email protected]>
---
v2: - Add missing .inc in require.
- Fix assignment in init-manager-*.inc files.
- Remove packagegroup-arago-sysvinit-boot.bb since we stopped using
it.
meta-arago-distro/conf/distro/arago.conf | 11 +++--------
.../conf/distro/include/init-manager-systemd.inc | 10 ++++++++++
.../conf/distro/include/init-manager-sysvinit.inc | 10 ++++++++++
.../recipes-core/images/arago-image.inc | 2 +-
.../recipes-core/images/arago-tiny-image.inc | 4 ----
.../packagegroup-arago-sysvinit-boot.bb | 15 ---------------
6 files changed, 24 insertions(+), 28 deletions(-)
create mode 100644
meta-arago-distro/conf/distro/include/init-manager-systemd.inc
create mode 100644
meta-arago-distro/conf/distro/include/init-manager-sysvinit.inc
delete mode 100644
meta-arago-distro/recipes-core/packagegroups/packagegroup-arago-sysvinit-boot.bb
diff --git a/meta-arago-distro/conf/distro/arago.conf
b/meta-arago-distro/conf/distro/arago.conf
index 38c42ef8..698053cb 100644
--- a/meta-arago-distro/conf/distro/arago.conf
+++ b/meta-arago-distro/conf/distro/arago.conf
@@ -58,14 +58,9 @@ DISTRO_FEATURES_FILTER_NATIVE:append = " opencl opencv
openmp"
DISTRO_FEATURES_FILTER_NATIVESDK:append = " opencl opencv openmp"
# Set global runtime providers for major components
-ARAGO_SYSVINIT ?= "0"
-VIRTUAL-RUNTIME_dev_manager = "${@'udev' if
oe.types.boolean(d.getVar('ARAGO_SYSVINIT')) else 'systemd'}"
-VIRTUAL-RUNTIME_init_manager = "${@'sysvinit' if
oe.types.boolean(d.getVar('ARAGO_SYSVINIT')) else 'systemd'}"
-VIRTUAL-RUNTIME_initscripts = "${@'initscripts' if
oe.types.boolean(d.getVar('ARAGO_SYSVINIT')) else 'systemd-compat-units'}"
-VIRTUAL-RUNTIME_initramfs = "${@'sysvinit-initramfs' if
oe.types.boolean(d.getVar('ARAGO_SYSVINIT')) else 'systemd-initramfs'}"
-VIRTUAL-RUNTIME_login_manager = "${@'busybox' if
oe.types.boolean(d.getVar('ARAGO_SYSVINIT')) else 'shadow-base'}"
-
-DISTRO_FEATURES:append = " ${@'' if oe.types.boolean(d.getVar('ARAGO_SYSVINIT'))
else ' systemd'}"
+ARAGO_SYSVINIT ??= "0"
+ARAGO_INIT_MANAGER ??=
"${@['systemd','sysvinit'][int(d.getVar('ARAGO_SYSVINIT'))]}"
+require conf/distro/include/init-manager-${ARAGO_INIT_MANAGER}.inc
# Distro-specific package configuration
PACKAGECONFIG:append:pn-systemd = " coredump networkd resolved
serial-getty-generator"
diff --git a/meta-arago-distro/conf/distro/include/init-manager-systemd.inc
b/meta-arago-distro/conf/distro/include/init-manager-systemd.inc
new file mode 100644
index 00000000..5d9d9a8e
--- /dev/null
+++ b/meta-arago-distro/conf/distro/include/init-manager-systemd.inc
@@ -0,0 +1,10 @@
+# Use systemd for system initialization
+
+DISTRO_FEATURES:append = " systemd"
+DISTRO_FEATURES_BACKFILL_CONSIDERED:append = " sysvinit"
+
+VIRTUAL-RUNTIME_dev_manager = "systemd"
+VIRTUAL-RUNTIME_init_manager = "systemd"
+VIRTUAL-RUNTIME_initscripts = "systemd-compat-units"
+VIRTUAL-RUNTIME_initramfs = "systemd-initramfs"
+VIRTUAL-RUNTIME_login_manager = "shadow-base"
diff --git a/meta-arago-distro/conf/distro/include/init-manager-sysvinit.inc
b/meta-arago-distro/conf/distro/include/init-manager-sysvinit.inc
new file mode 100644
index 00000000..6ee41d6c
--- /dev/null
+++ b/meta-arago-distro/conf/distro/include/init-manager-sysvinit.inc
@@ -0,0 +1,10 @@
+# Use sysvinit for system initialization
+
+DISTRO_FEATURES:append = " sysvinit"
+DISTRO_FEATURES_BACKFILL_CONSIDERED:append = " systemd"
+
+VIRTUAL-RUNTIME_dev_manager = ""
+VIRTUAL-RUNTIME_init_manager = "sysvinit"
+VIRTUAL-RUNTIME_initscripts = "initscripts"
+VIRTUAL-RUNTIME_initramfs = "sysvinit-initramfs"
+VIRTUAL-RUNTIME_login_manager = "busybox"
diff --git a/meta-arago-distro/recipes-core/images/arago-image.inc
b/meta-arago-distro/recipes-core/images/arago-image.inc
index d00c1f70..1c87afd5 100644
--- a/meta-arago-distro/recipes-core/images/arago-image.inc
+++ b/meta-arago-distro/recipes-core/images/arago-image.inc
@@ -30,6 +30,6 @@ BAD_RECOMMENDATIONS += " \
coreutils \
coreutils-dev \
"
-BAD_RECOMMENDATIONS += "${@oe.utils.conditional("ARAGO_SYSVINIT", "1", "",
"busybox-syslog", d)}"
+BAD_RECOMMENDATIONS += "${@oe.utils.conditional("ARAGO_INIT_MANAGER", "sysvinit", "",
"busybox-syslog", d)}"
inherit core-image remove-net-rules
diff --git a/meta-arago-distro/recipes-core/images/arago-tiny-image.inc
b/meta-arago-distro/recipes-core/images/arago-tiny-image.inc
index 242e763c..6c726c4d 100644
--- a/meta-arago-distro/recipes-core/images/arago-tiny-image.inc
+++ b/meta-arago-distro/recipes-core/images/arago-tiny-image.inc
@@ -1,9 +1,5 @@
-ARAGO_SYSVINIT = "1"
require arago-image.inc
IMAGE_FEATURES:remove = "splash"
-IMAGE_INSTALL = " \
- packagegroup-arago-sysvinit-boot \
-"
diff --git
a/meta-arago-distro/recipes-core/packagegroups/packagegroup-arago-sysvinit-boot.bb
b/meta-arago-distro/recipes-core/packagegroups/packagegroup-arago-sysvinit-boot.bb
deleted file mode 100644
index df7ff960..00000000
---
a/meta-arago-distro/recipes-core/packagegroups/packagegroup-arago-sysvinit-boot.bb
+++ /dev/null
@@ -1,15 +0,0 @@
-REQUIRED_DISTRO_FEATURES = "sysvinit"
-inherit features_check
-
-require recipes-core/packagegroups/packagegroup-core-boot.bb
-
-PR = "r0"
-
-# Cannot use eudev:
-# "eudev was skipped: 'systemd' in DISTRO_FEATURES"
-#VIRTUAL-RUNTIME_dev_manager = "eudev"
-VIRTUAL-RUNTIME_dev_manager = ""
-VIRTUAL-RUNTIME_init_manager = "sysvinit"
-VIRTUAL-RUNTIME_initscripts = "initscripts"
-VIRTUAL-RUNTIME_initramfs = "sysvinit-initramfs"
-VIRTUAL-RUNTIME_login_manager = "busybox"
--
2.17.1