Files
scratchpkg/pkgbase
2019-01-21 00:15:04 +08:00

29 lines
586 B
Bash
Executable File

#!/bin/bash
echo "Calculate keep packages..."
keep=$(pkgdeplist -l base | awk '{print $2}')
if [ "$1" ]; then
echo "Calculate extrakeep packages..."
extrakeep=$(pkgdeplist -l $@ | awk '{print $2}')
fi
keep="$keep $extrakeep"
echo "Get all installed packages..."
allinstalled=$(scratch listinst | awk '{print $1}')
echo "Calculate selected packages to remove..."
for pkg in $allinstalled; do
echo $keep | tr ' ' '\n' | grep -qx $pkg
if [ "$?" != 0 ]; then
if [ "$remove" = "" ]; then
remove=$pkg
else
remove="$remove $pkg"
fi
fi
done
scratch remove $remove
exit $?