#!/bin/bash #set -e ############################################################################### # Author : Erik Dubois # Website : https://www.erikdubois.be # Website : https://www.arcolinux.info # Website : https://www.arcolinux.com # Website : https://www.arcolinuxd.com # Website : https://www.arcolinuxb.com # Website : https://www.arcolinuxiso.com # Website : https://www.arcolinuxforum.com ############################################################################### # # DO NOT JUST RUN THIS. EXAMINE AND JUDGE. RUN AT YOUR OWN RISK. # ############################################################################### _clean_packages(){ local _packages_to_remove=($(comm -23 <(pacman -Qqt | sort) <({ pacman -Qqg base-devel; echo "base"; echo "base-devel"; } | sort -u))) local xx # @ does one by one to avoid errors in the entire process # * can be used to treat all packages in one command for xx in ${_packages_to_remove[@]}; do pacman -Rsc $xx --noconfirm; done } _clean_packages