aboutsummaryrefslogtreecommitdiffstats
path: root/meta/recipes-core/initscripts
diff options
context:
space:
mode:
authorRoss Burton <ross.burton@intel.com>2014-02-11 22:43:04 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2014-02-11 22:59:38 +0000
commit7b317cdd1d407942d992ad68c450fc7743ab09f4 (patch)
treea2de295f02ac6e97dd63e895d2f694e4d96ca589 /meta/recipes-core/initscripts
parent92cad721d764ec28c3570dfe4a80847c3df19453 (diff)
downloadopenembedded-core-contrib-7b317cdd1d407942d992ad68c450fc7743ab09f4.tar.gz
initscripts: mask initscripts from systemd
Many of the init scripts in here will do nasty things if systemd decides to run them. Mask the obviously bad ones so that systemd won't attempt to invoke them if initscripts is installed with systemd. (From OE-Core rev: 844f897710dfee9c59599d09b5c8c906e0d70ac0) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-core/initscripts')
-rw-r--r--meta/recipes-core/initscripts/initscripts_1.0.bb25
1 files changed, 25 insertions, 0 deletions
diff --git a/meta/recipes-core/initscripts/initscripts_1.0.bb b/meta/recipes-core/initscripts/initscripts_1.0.bb
index d1644a3204..20c025752b 100644
--- a/meta/recipes-core/initscripts/initscripts_1.0.bb
+++ b/meta/recipes-core/initscripts/initscripts_1.0.bb
@@ -41,6 +41,7 @@ KERNEL_VERSION = ""
inherit update-alternatives
DEPENDS_append = " update-rc.d-native"
+DEPENDS_append = " ${@base_contains('DISTRO_FEATURES','systemd','systemd-systemctl-native','',d)}"
PACKAGES =+ "${PN}-functions"
RDEPENDS_${PN} = "${PN}-functions"
@@ -134,3 +135,27 @@ do_install () {
# populate-volatile.sh
update-rc.d -r ${D} dmesg.sh start 38 S .
}
+
+MASKED_SCRIPTS = " \
+ banner \
+ bootmisc \
+ checkroot \
+ devpts \
+ hostname \
+ mountall \
+ mountnfs \
+ rmnologin \
+ sysfs \
+ urandom"
+
+pkg_postinst_${PN} () {
+ if ${@base_contains('DISTRO_FEATURES','systemd','true','false',d)}; then
+ if [ -n "$D" ]; then
+ OPTS="--root=$D"
+ fi
+ for SERVICE in ${MASKED_SCRIPTS}; do
+ systemctl $OPTS mask $SERVICE.service
+ done
+ fi
+fi
+}