Instalei vários pacotes de PPAs e gostaria de reverter para as versões oficiais agora. Muitos dos PPAs não existem mais /etc/apt/sources.list.d
, portanto ppa-purge
não funcionarão neles.
Qual é o caminho mais direto para isso?
Bem, você pode remover e reinstalar os pacotes
ppa-purge
provavelmente ainda é sua melhor aposta para uma fuga limpa. Apenas adicionando novamente o PPA do qual o pacote veio e usando ppa-purge
para matá-lo. Não tenho certeza de quantos PPAs você instalou, mas se for menor que 10, eu estaria tentando fazer isso.
Se você acha que esse método é muito suave, acabei de escrever bash
-porn para ajudar a identificar as versões do pacote cuja origem da instalação agora existe apenas localmente /var/lib/dpkg/status
. Não é o mesmo que pacotes "órfãos".
for p in `dpkg-query --showformat='${Package} ' -W`; do
if [[ $(apt-cache policy $p | grep -Pzo "\*\*\* [^\n]+\s+100") ]]; then
echo $p;
fi;
done
Ainda não tenho certeza se isso é perfeito, mas experimente. Observe que apenas imprimirá os nomes dos pacotes. Você precisará desinstalar / reinstalar manualmente cada pacote.
Para fazer isso, apt-cache policy <package>
verifique primeiro o que está disponível para esse pacote executando e você verá uma lista de versões do pacote (incluindo a /var/lib/dpkg/status
versão). Encontre o externo mais próximo e execute:
sudo apt-get install <package>=<version>
Pode ser necessário adicionar um --reinstall
após o install
mas veja como ele funciona.
ppa-purge
foi removido? Está nos repositórios para o Trusty e em todos os outros lançamentos suportados .Eu escrevi um script mais completo que reconhecerá pacotes cuja versão atual não é de um PPA e eles têm uma versão alternativa disponível para PPA. Após a execução, ele imprime um comando pronto para executar que fará o downgrade desses pacotes para suas versões do PPA.
https://gist.github.com/peci1/2d7859857fdad73ee8443f5ecd5ee5a3
fonte