From b645919f173512f9e75aeb26348d60b63dcdc53c Mon Sep 17 00:00:00 2001 From: Jussi Kukkonen Date: Fri, 4 Nov 2016 15:16:49 +0200 Subject: run-postinsts: Use opkg/dpkg to configure when possible Currently run-postinsts script has code to run postinst scripts via opkg/dpkg configure but that code is never used. The advantage of using package managers instead of just executing the scripts is to keep the package manager DB updated. Fix the script so that the package managers are used when appropriate. Also use $localstatedir for the opkg runtime file location. Fixes [YOCTO #10478]. Signed-off-by: Jussi Kukkonen Signed-off-by: Ross Burton --- .../recipes-devtools/run-postinsts/run-postinsts/run-postinsts | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/meta/recipes-devtools/run-postinsts/run-postinsts/run-postinsts b/meta/recipes-devtools/run-postinsts/run-postinsts/run-postinsts index 04ba3941bc..10f2118e96 100755 --- a/meta/recipes-devtools/run-postinsts/run-postinsts/run-postinsts +++ b/meta/recipes-devtools/run-postinsts/run-postinsts/run-postinsts @@ -16,23 +16,25 @@ pm_installed=false for pm in $backend_list; do pi_dir="#SYSCONFDIR#/$pm-postinsts" - [ -d $pi_dir ] && break + if [ ! -d $pi_dir ]; then + continue + fi + # found the package manager, it has postinsts case $pm in "deb") if [ -s "#LOCALSTATEDIR#/lib/dpkg/status" ]; then pm_installed=true - break fi ;; "ipk") - if [ -s "/var/lib/opkg/status" ]; then + if [ -s "#LOCALSTATEDIR#/lib/opkg/status" ]; then pm_installed=true - break fi ;; esac + break done remove_rcsd_link () { -- cgit v1.2.3