]> git.ipfire.org Git - thirdparty/openembedded/openembedded-core.git/commitdiff
systemd-compat-units.bb: fix postinstall script
authorMichael Opdenacker <michael.opdenacker@bootlin.com>
Wed, 22 Nov 2023 10:23:48 +0000 (11:23 +0100)
committerSteve Sakoman <steve@sakoman.com>
Thu, 28 Dec 2023 14:43:58 +0000 (04:43 -1000)
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]

Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 0330331a1386fd2a34b410a7f62b29bfc8dc23c4)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
meta/recipes-core/systemd/systemd-compat-units.bb

index 253bc9fcf1e5de2e6a12c74e792b5470472fdd4f..c03d97f9c936a2bd1766b8906ba6377a0855c391 100644 (file)
@@ -27,7 +27,8 @@ SYSTEMD_DISABLED_SYSV_SERVICES = " \
 
 pkg_postinst:${PN} () {
 
-       cd $D${sysconfdir}/init.d  ||  exit 0
+       test -d $D${sysconfdir}/init.d  ||  exit 0
+       cd $D${sysconfdir}/init.d
 
        echo "Disabling the following sysv scripts: "