mirror of
https://github.com/outbackdingo/scratchpkg.git
synced 2026-02-05 08:28:00 +00:00
29 lines
586 B
Bash
Executable File
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 $?
|