From e36751cdcd6b2a3db31f4597a0b4dd22d5c54330 Mon Sep 17 00:00:00 2001 From: Phil Blundell Date: Fri, 21 Sep 2012 20:42:38 +0100 Subject: rootfs_ipk: Avoid leaving run-postinsts around if online package management is disabled If all postinsts have already been run during rootfs construction then there's no point in having run-postinsts in the installed system. Clean it up at the same time that update-rc.d and suchlike are being removed. (From OE-Core rev: b260cf9fbeb6f029c1ce45e77edd03968caa8288) Signed-off-by: Phil Blundell Signed-off-by: Richard Purdie --- meta/classes/rootfs_ipk.bbclass | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/meta/classes/rootfs_ipk.bbclass b/meta/classes/rootfs_ipk.bbclass index 6cdd8f6062..46e8d60918 100644 --- a/meta/classes/rootfs_ipk.bbclass +++ b/meta/classes/rootfs_ipk.bbclass @@ -97,8 +97,18 @@ fakeroot rootfs_ipk_do_rootfs () { if ${@base_contains("IMAGE_FEATURES", "package-management", "false", "true", d)}; then if ! grep Status:.install.ok.unpacked ${STATUS}; then # All packages were successfully configured. - # update-rc.d, base-passwd are no further use, remove them now - opkg-cl ${IPKG_ARGS} --force-depends remove update-rc.d base-passwd || true + # update-rc.d, base-passwd, run-postinsts are no further use, remove them now + remove_run_postinsts=false + if [ -e ${IMAGE_ROOTFS}${sysconfdir}/init.d/run-postinsts ]; then + remove_run_postinsts=true + fi + opkg-cl ${IPKG_ARGS} --force-depends remove update-rc.d base-passwd ${ROOTFS_BOOTSTRAP_INSTALL} || true + + # Need to remove rc.d files for run-postinsts by hand since opkg won't + # call postrm scripts in offline root mode. + if $remove_run_postinsts; then + update-rc.d -f -r ${IMAGE_ROOTFS} run-postinsts remove + fi # Also delete the status files rm -rf ${IMAGE_ROOTFS}${opkglibdir} -- cgit v1.2.3-54-g00ecf