#!/bin/bash echo "Removing all but base & base-devel..." #pacman -R $(comm -23 <(pacman -Qq | sort) <((for i in $(pacman -Qqg base); do pactree -ul "$i"; done) | sort -u)) #pacman -R $(comm -23 <(pacman -Qq | sort) <(( pacman -Qq | sort > /tmp/allInstalled.reset rm /tmp/baseDeps.reset for i in $(pacman -Qqg base base-devel) do pactree -ul "$i" >> /tmp/baseDeps.reset done for i in pacman glibc pacman-contrib do echo "$i" >> /tmp/baseDeps.reset done sort -u /tmp/baseDeps.reset > /tmp/baseDepsSorted.reset removePkgs="$(comm -23 /tmp/allInstalled.reset /tmp/baseDepsSorted.reset)" pacman -R --noconfirm $removePkgs #echo "Adding back other packages..." pacman -S --noconfirm base-devel pacman-contrib asp openssh git python2 dosfstools rsync squashfs-tools libisoburn python2-gitpython parched unison arch-install-scripts lynx python2-ndg-httpsclient wget findbrokenpkgs tig