#!/bin/bash # CoreDesktop installed the whole texlive group (22 packages, about 3 GB), # though nothing in it uses LaTeX. Remove it once. A package from the group # that something else still needs stays, marked as a dependency, to go with # that as an orphan. mapfile -t pkgs < <(pacman -Qgq texlive 2> /dev/null) (( ${#pkgs[@]} )) || exit 0 sudo pacman -D --asdeps "${pkgs[@]}" > /dev/null || exit # The ones nothing needs now (-tt counts packages only optionally needed). # Removing them with -s takes the rest of the group, and the dependencies it # pulled in, unless something else needs them. mapfile -t unneeded < <(comm -12 <(printf '%s\n' "${pkgs[@]}" | sort) \ <(pacman -Qqdtt | sort)) (( ${#unneeded[@]} )) || exit 0 echo "Removing texlive..." sudo pacman -Rns --noconfirm "${unneeded[@]}"