From bcc8b87c7242ff7daa87afea697bcce282998dc7 Mon Sep 17 00:00:00 2001 From: Joe Slater Date: Mon, 15 Aug 2016 16:04:53 -0700 Subject: systemd-compat-units: pkg_postinst() does not work The test for various files is wrong and will always be true, even if init.d does not exist. Exit if init.d does not exist, and correctly test for file existence otherwise. (From OE-Core rev: 8183309080aee45746daaff46b0506b09b5bd269) Signed-off-by: Joe Slater Signed-off-by: Ross Burton Signed-off-by: Richard Purdie --- meta/recipes-core/systemd/systemd-compat-units.bb | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) (limited to 'meta/recipes-core/systemd') diff --git a/meta/recipes-core/systemd/systemd-compat-units.bb b/meta/recipes-core/systemd/systemd-compat-units.bb index 0b8ff09b2b..90811da1bc 100644 --- a/meta/recipes-core/systemd/systemd-compat-units.bb +++ b/meta/recipes-core/systemd/systemd-compat-units.bb @@ -23,21 +23,24 @@ SYSTEMD_DISABLED_SYSV_SERVICES = " \ " pkg_postinst_${PN} () { - cd $D${sysconfdir}/init.d - echo "Disabling the following sysv scripts: " + cd $D${sysconfdir}/init.d || exit 0 - OPTS="" + echo "Disabling the following sysv scripts: " if [ -n "$D" ]; then OPTS="--root=$D" + else + OPTS="" fi for i in ${SYSTEMD_DISABLED_SYSV_SERVICES} ; do - if [ \( -e $i -o $i.sh \) -a ! \( -e $D${sysconfdir}/systemd/system/$i.service -o -e $D${systemd_unitdir}/system/$i.service \) ] ; then - echo -n "$i: " ; systemctl ${OPTS} mask $i.service + if [ -e $i -o -e $i.sh ] && ! [ -e $D${sysconfdir}/systemd/system/$i.service -o -e $D${systemd_unitdir}/system/$i.service ] ; then + echo -n "$i: " + systemctl $OPTS mask $i.service fi - done ; echo + done + echo } -RDPEPENDS_${PN} = "systemd" +RDEPENDS_${PN} = "systemd" -- cgit v1.2.3-54-g00ecf