Encontrar e remover pacotes não-Debian.
Abaixo há dois métodos para encontrar pacotes instalados "não Debian": usando
apt ou
apt-forktracer.
Note que nenhum deles é 100% preciso, por exemplo, o método usando apt list trará pacotes que já foram fornecidos pelo Debian no passado, mas não são mais, tais como pacotes de kernels antigos.
Portanto, use os dois métodos, faça uma comparação e analise quais pacotes você quer deixar ou remover, principalmente as bibliotecas. Na dúvida não ultrapasse, ou seja, na dúvida não remova.
1)
sudo apt list '?narrow(?installed, ?not(?origin(Debian)))'
2)
sudo apt-get install apt-forktracer
sudo apt-forktracer | sort
Veja uma parte da saída do primeiro método:
Listing... Pronto
cav-linux/now 1.1.268025-1 amd64 [installed,local]
code/stable,now 1.79.0-1686149120 amd64 [installed]
cpp-10/now 10.2.1-6 amd64 [installed,local]
dpatch/now 2.0.41 all [installed,local]
gcc-10-base/now 10.2.1-6 amd64 [installed,local]
gcc-10/now 10.2.1-6 amd64 [installed,local]
gcc-9-base/now 9.3.0-22 amd64 [installed,local]
google-chrome-stable/stable,now 114.0.5735.106-1 amd64 [installed]
Para remover é o de sempre:
sudo apt-get --purge remove um_pacote
sudo apt-get --purge remove outro_pacote
...
No final das remoções:
sudo apt autoremove
sudo apt --fix-broken install
sudo apt-get update
Encontrar e desmarcar pacotes retidos
Aproveitando o ensejo, é desejável às vezes para deixar o sistema mais "limpo" remover quaisquer retenções (holds) em pacotes, principalmente se você for fazer um upgrade de uma versão para outra do sistema todo.
E mesmo que não for fazer upgrade é recomendável para saber se tem pacotes quebrados (você manteve (hold) pacotes quebrados).
Encontrando:
sudo apt-mark showhold
Caso não tiver, não retorna nada.
Desmarcando:
sudo apt-mark unhold nome_do_pacote
E daí pode remover, se quiser.
Fonte:
Chapter 4. Upgrades from Debian 11 (bullseye)