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>
This commit is contained in:
Ross Burton
2014-02-11 22:43:04 +00:00
committed by Richard Purdie
parent 92cad721d7
commit 7b317cdd1d

View File

@@ -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
}