Diferença entre "ppa-purge" e "add-apt-repository -r"?

42

Qual é a principal diferença entre ppa-purgee add-apt-repository -r. Qual deles melhor elimina itens residuais e motivos para usar um sobre o outro? Será que add-apt-repository -rdeve fazer o que ppa-purgefazer?

Edit: Também remover a chave do chaveiro do apt?

Alinwndrld
fonte

Respostas:

52

Pelo que entendi, a diferença é o que eles fazem após remover o PPA.

ppa-purge - Desativa um PPA e reverte para os pacotes oficiais, se aplicável. Por exemplo, se eu adicionasse o PPA do xorg-edgers e instalasse os drivers da Nvidia, se eu fizer um ppa-purgeno referido PPA, ele não apenas desativaria o PPA do xorg-edgers, mas também reverteria os drivers da NVIDIA do PPA ao oficial os encontrados nos repositórios oficiais do Ubuntu.

add-apt-repository -r - Apenas removerá o referido PPA. Não reverterá nenhum pacote.

Os cenários de caso podem ser:

  • Quando você deseja manter um pacote de um PPA, mas deseja remover o PPA real. Por exemplo, se você deseja adicionar o pacote Ubuntu Tweak de um PPA, mas depois remover o PPA, use o add-apt-repository que deixará o Ubuntu Tweak instalado.

  • Quando você quiser voltar para um pacote oficial e parar de usar um PPA que tenha pacotes atualizados / experimentais (como pacotes de versão do Kernel, pacotes proprietários ...). Nesses casos, convém usar o ppa-purge assumindo que sua intenção é voltar às versões oficiais. O que é o mesmo que remover cada pacote PPA instalado e, em seguida, executar:

    sudo apt-get update  
    sudo apt-get upgrade
    sudo apt-get install PACKAGES
    

Na maioria dos casos, o add-apt-repository deve ser suficiente para adicionar e remover PPAs. O uso do ppa-purge pode ajudar apenas nos pequenos casos em que você deseja remover um pacote e instalar a versão oficial que não é comum, já que a maioria dos usuários adiciona um PPA para ter algo melhor do que o que vem com o Ubuntu. Casos como o kazam (do Kazam PPA), drivers de vídeo proprietários (do swat-x ou xorg-edgers PPA) e até os do Google Chrome e VirtualBox. E mesmo se eles o removerem, são apenas 2 ou 3 comandos para remover os pacotes atuais do PPA removido e instalar os oficiais.

Com tudo isso em mente, tudo se resume ao que o usuário deseja fazer sobre os pacotes relacionados ao PPA.

Luis Alvarado
fonte
Isso significa que não há necessidade de ppa-purgeusar um repositório para instalar o pkg que não está disponível no repositório oficial, como "ubuntu-tweak", pois não há um pacote para reverter para o pacote oficial?
Alinwndrld
@Alinwndrld Atualiza a resposta.
Luis Alvarado
1
@LuisAlvarado Minor erro ortográfico: sudo apt-get ugprade:)
Paddy Landau
@Alinwndrld Pelo menos a versão de desenvolvimento do ppa-purgeremove os pacotes nesse caso. Você também pode testar minha versão do ppa-purge, que inclui muitas melhorias. Ele também pode remover outros repositórios que não os PPAs, então talvez seja melhor chamá-lo remove-apt-repository.
Jarno
12

A página de apt-add-repositorymanual diz isso sobre o comando:

   REPOSITORY can  be  either  a  line  that  can  be  added  directly  to
   sources.list(5),  in the form ppa:<user>/<ppa-name> for adding Personal
   Package Archives, or a distribution component to enable.

   In  the   first   form,   REPOSITORY   will   just   be   appended   to
   /etc/apt/sources.list.

   In  the second form, ppa:<user>/<ppa-name> will be expanded to the full
   deb  line  of  the  PPA  and   added   into   a   new   file   in   the
   /etc/apt/sources.list.d/  directory.   The  GPG public key of the newly
   added PPA will also be downloaded and added to apt's keyring.

   In the third form, the given distribution component will be enabled for
   all sources.  

e:

-r, --remove Remove the specified repository  

Então, add-apt-repositoryapenas adiciona e remove linhas de /etc/apt/sources.liste /etc/apt/sources.list.d/.

A página de ppa-purgemanual diz o seguinte:

NAME
       ppa-purge - disables a PPA and reverts to official packages

DESCRIPTION
       This script provides a  bash  shell  script  capable  of  automatically
       downgrading all packages in a given PPA back to the ubuntu versions.

       You  have  to  run  it  using  root  privileges  because of the package
       manager.  

Portanto ppa-purge, não apenas removerá um PPA, mas também fará o downgrade de todos os pacotes para suas versões padrão. Isso é útil ao testar versões beta ou mais recentes do software.

Seth
fonte
Os dois removem a chave ppa do chaveiro do apt?
Alinwndrld
@Alinwndrld Deveria.
Seth
@Alinwndrld veja aqui . Quanto a ppa-purge, atualmente não. As chaves são prejudiciais lá?
Jarno