rpm-postinsts: avoid errors during boot with read-only-rootfs enabled
authorPaul Eggleton <paul.eggleton@linux.intel.com>
Wed, 10 Apr 2013 14:36:39 +0000 (14:36 +0000)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Wed, 10 Apr 2013 15:49:24 +0000 (16:49 +0100)
* If /etc/rpm-postinsts doesn't exist, don't error
* If deleting the script errors, don't bother printing it (this will
  always happen if the root filesystem is read-only)

(From OE-Core rev: f787b8302ed61bdaf1767473b856f31fe5bba28e)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/recipes-devtools/rpm/rpm-postinsts.bb

index 0a62da0..fb05ad6 100644 (file)
@@ -32,7 +32,10 @@ do_install() {
        i=\$i
        cat > ${D}${sysconfdir}/rcS.d/S${POSTINSTALL_INITPOSITION}run-postinsts << EOF
 #!/bin/sh
-for i in \`ls /etc/rpm-postinsts/\`; do
+
+. /etc/default/rcS
+
+[ -d /etc/rpm-postinsts ] && for i in \`ls /etc/rpm-postinsts/ \`; do
        i=/etc/rpm-postinsts/$i
        echo "Running postinst $i..."
        if [ -f $i ] && $i ${REDIRECT_CMD}; then
@@ -41,7 +44,7 @@ for i in \`ls /etc/rpm-postinsts/\`; do
                echo "ERROR: postinst $i failed."
        fi
 done
-rm -f ${sysconfdir}/rcS.d/S${POSTINSTALL_INITPOSITION}run-postinsts
+rm -f ${sysconfdir}/rcS.d/S${POSTINSTALL_INITPOSITION}run-postinsts 2>/dev/null
 EOF
        chmod 0755 ${D}${sysconfdir}/rcS.d/S${POSTINSTALL_INITPOSITION}run-postinsts
 }