Для начала генеральной уборки надо сменить сессию на root, т.к. практически все команды надо запускать от рута.
su
Первое, что нам надо сделать, это провести очистку кеша. Когда вы устанавливаете программы через pacman, то нераспакованные архивы остаются в системе. Чтобы от них избавиться введите команду
pacman -Scc
Далее надо удалить пакеты-сироты (орфаны) packages-orphans, они устанавливаются, как зависимости, но теперь не нужны. Однако не спешите сразу их удалять, а сначала проверьте, нет ли в них нужных вам пакетов.
pacman -Qtdq
Если их нет, то удаляем их командой
pacman -Qtdq | pacman -Rns -
(Минус (dash) на конце команды нужен, это не опечатка)
Или такой вид написания команды, тут как вам больше нравится
pacman -Rns $(pacman -Qtdq)
Если добавить в команду ещё одну букву t, то удалим и необязательные зависимости
pacman -Qttdq | pacman -Rns -
Далее удаляем циркулярные зависимости, но перед удалением, также проверьте пакеты.
pacman -Qqd | pacman -Rsu -
pacman -Qqd | pacman -Rsu --print -
Далее можно перейти к ручному удалению пакетов. Конечно ввести
pacman -Q
и поочереди проверять за что отвечает каждый пакет - это странное занятие, упростим данную затею следующими командами с их описанием.
pacman -Qii [название пакета]
Выводит информацию о пакете. Тут стоит обратить внимание на пункты Required By и Optional For, чтобы узнать, не является ли он зависимостью какого-либо другого пакета.
pacman -Qe
Выведет все пакеты, которые были установлены вами вручную, а не как зависимости.
pacman -Qm
Выведет все сторонние пакеты, в основном из AUR.
LC_ALL=C pacman -Qi | awk '/^Name/{name=$3} /^Installed Size/{print $4$5, name}' | sort -h
Эта страшная команда выводит все пакеты,отсортированные по размеру.
Либо можно воспользоваться утилитой pacgrahp. С дополнительным ключом, она выведет все пакеты по размеру.
pacgrahp -c
Если хотите удалить какую-то программу сразу вместе с зависимостями, то
pacman -Rns [название программы]
Если к этой команде добавить ещё одну букву s, то удаляться также вручную установленные зависимости.
pacman -Rnss [название программы]
А с опцией c, удалятся пакеты, которые зависят от того, который вы удаляете.
pacman -Rcnss [название программы]
Кстати, таким образом можно удалить и всю систему, если удалить пакет glibc с выше указанными опциями. Так что не вводите эту команду.
pacman -Rcnss glibc
Для очистки директории HOME можно использовать следующие утилиты.
ncdu, gdu, dust, dirstat-rs, dua, filelight, baobab, k4dirstat
Для home
ncdu --color dark --show-percent --hide-graph -rr -x --exclude .git --exclude node_modules
Для root
sudo ncdu --color dark --show-percent --hide-graph -rr -x --exclude .git --exclude node_modules /