From: wanchao-xu Date: Mon, 2 Sep 2024 09:03:06 +0000 (+0800) Subject: Support to remove the preload-rw packages. X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=6f543b67ea64130e7daef825587552ce2a2626e1;p=tools%2Fmic.git Support to remove the preload-rw packages. Change-Id: I332bcc322a7aa8e0741cdd91ca006a408944c819 Signed-off-by: wanchao-xu --- diff --git a/plugins/backend/zypppkgmgr.py b/plugins/backend/zypppkgmgr.py index 88742c6..bbaee01 100644 --- a/plugins/backend/zypppkgmgr.py +++ b/plugins/backend/zypppkgmgr.py @@ -1136,11 +1136,15 @@ if [ -n "$pkgs" ]; then rpm -e --allmatches $pkgs if [ -f /usr/bin/pkgcmd ]; then for pkg in $pkgs; do - info=$(pkgcmd -l --global | grep $pkg) - pkgid=$(echo ${info#*pkgid} | awk -F ' ' '{print $1}' | sed 's/.*\\[\\(.*\\)\\].*/\\1/') + result=$(pkgcmd -l --global | grep -m 1 $pkg) + pkgid=$(echo ${result#*pkgid} | awk -F ' ' '{print $1}' | sed 's/.*\\[\\(.*\\)\\].*/\\1/') if [ -n "$pkgid" ]; then - pkgtype=$(echo ${info#*pkg_type} | awk -F ' ' '{print $1}' | sed 's/.*\\[\\(.*\\)\\].*/\\1/') echo "Uninstalling preload $pkgtype package $pkgid ..." + pkginfo=$(pkginfo --pkg $pkgid) + pkgtype=$(echo "$pkginfo" | grep "Type:" | awk -F ': ' '{print $2}') + preload=$(echo "$pkginfo" | grep "Preload:" | awk -F ': ' '{print $2}') + readonly=$(echo "$pkginfo" | grep "Readonly:" | awk -F ': ' '{print $2}') + options="" if [[ $pkgtype == 'tpk' ]]; then cmd='/usr/bin/tpk-backend' elif [[ $pkgtype == 'wgt' ]]; then @@ -1148,8 +1152,15 @@ if [ -n "$pkgs" ]; then else cmd='/usr/bin/unified-backend' fi + if [[ $preload == "1" ]]; then + if [[ $readonly == "1" ]]; then + options="--preload" + else + options="--preload-rw" + fi + fi if [ -f $cmd ]; then - $cmd -d $pkg --preload --force-remove + $cmd -d $pkg $options --force-remove else echo "$cmd is not installed" exit 1