mirror of
https://git.yoctoproject.org/poky
synced 2026-03-06 07:19:39 +01:00
This fixes an issue running "opkg upgrade" on a system with systemd (and when there is an update to "systemd-compat-units", for example between yocto 4.2.2 and 4.2.3): //var/lib/opkg/info/systemd-compat-units.postinst: cd: line 3: can't cd to /etc/init.d: No such file or directory The existence of /etc/init.d is now tested without causing an error if doesn't exist. Fixes [YOCTO #15292] (From OE-Core rev: 0330331a1386fd2a34b410a7f62b29bfc8dc23c4) Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
51 lines
1002 B
BlitzBasic
51 lines
1002 B
BlitzBasic
SUMMARY = "Enhances systemd compatilibity with existing SysVinit scripts"
|
|
HOMEPAGE = "http://www.freedesktop.org/wiki/Software/systemd"
|
|
LICENSE = "MIT"
|
|
|
|
|
|
PACKAGE_WRITE_DEPS += "systemd-systemctl-native"
|
|
|
|
S = "${WORKDIR}"
|
|
|
|
inherit features_check
|
|
|
|
INHIBIT_DEFAULT_DEPS = "1"
|
|
|
|
ALLOW_EMPTY:${PN} = "1"
|
|
|
|
REQUIRED_DISTRO_FEATURES += "systemd"
|
|
REQUIRED_DISTRO_FEATURES += "usrmerge"
|
|
|
|
SYSTEMD_DISABLED_SYSV_SERVICES = " \
|
|
busybox-udhcpc \
|
|
hwclock \
|
|
networking \
|
|
nfsserver \
|
|
nfscommon \
|
|
syslog.busybox \
|
|
"
|
|
|
|
pkg_postinst:${PN} () {
|
|
|
|
test -d $D${sysconfdir}/init.d || exit 0
|
|
cd $D${sysconfdir}/init.d
|
|
|
|
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 -e $i.sh ] && ! [ -e $D${sysconfdir}/systemd/system/$i.service -o -e $D${systemd_system_unitdir}/$i.service ] ; then
|
|
echo -n "$i: "
|
|
systemctl $OPTS mask $i.service
|
|
fi
|
|
done
|
|
echo
|
|
}
|
|
|
|
RDEPENDS:${PN} = "systemd"
|