#!/bin/sh -e # # script for purge package and its dependencies from system # purge() { for j in $(apkg -j $1); do apkg -a | grep -qx $j && { echo "[$1] dependent package is installed: $j" error=1 } done [ "$error" ] && return 1 for i in $(apkg -d $1); do apkg -a | grep -qx $i || continue for d in $(apkg -j $i); do [ "$d" = "$1" ] && continue apkg -a | grep -qx $d && continue 2 done if [ "$purgeit" ]; then spm -r $i else echo $i fi done if [ "$purgeit" ]; then spm -r $1 fi } help() { cat < option: -p remove from system EOF exit 0 } while [ "$1" ]; do case $1 in -p) purgeit=1;; -h) help;; *) pkg="$pkg $1";; esac shift done for p in $pkg; do apkg -p $p >/dev/null || continue # skip if package not exist in repo apkg -a | grep -qx $p || continue # skip if package not installed purge $p done exit 0