}
pacclean() {
+ local _count_pkg=$(pacman -Qq | wc -l)
+ local _count_pkg_exp=$(pacman -Qeq | wc -l)
local _pkgs=( $(pacman -Qeq) )
for pkg in ${_pkgs[@]}; do
# the file has been removed by a previous clean
local edrq=''
while true; do
- echo -n "Explicit, Dependency, Remove, Quit? [Edrq] "
+ echo -n "Explicit, Dependency, Remove, List, Quit? [Edrlq] "
read -sk edrq
echo
case $edrq in
- [Qq]) return ;;
+ [Qq]) break 2 ;;
$'\n') ;&
[Ee]) break ;;
[Rr]) sudo pacman -Rnscu $pkg; break ;;
[Dd]) sudo pacman -D --asdeps $pkg; break ;;
+ [Ll]) pacman -Ql $pkg | less ;;
esac
done
done
+ local _count_pkg_after=$(pacman -Qq | wc -l)
+ local _count_pkg_exp_after=$(pacman -Qeq | wc -l)
+ local _delta_pkg=$(($_count_pkg_after - $_count_pkg))
+ local _delta_pkg_exp=$(($_count_pkg_exp_after - $_count_pkg_exp))
+ printf "\n %8s | %8s" "Packages" "Explicit"
+ printf "\nBefore | %8d | %8d" $_count_pkg $_count_pkg_exp
+ printf "\n After | %8d | %8d" $_count_pkg_after $_count_pkg_exp_after
+ printf "\n | %8d | %8d" $_delta_pkg $_delta_pkg_exp
+ printf "\n"
}
# [l]ist [o]orphans
alias paclo='pacman -Qdt'