web-dev-qa-db-fra.com

Différence entre "ppa-purge" et "add-apt-repository -r"?

Quelle est la principale différence entre ppa-purge et add-apt-repository -r. Lequel mieux serait d'éliminer les éléments résiduels et la raison d'utiliser l'un plutôt que l'autre? Est-ce que add-apt-repository -r doit faire ce que ppa-purge fait?

Edit: Est-ce que les deux aussi enlèvent la clé du trousseau d’apt?

42
Alinwndrld

Pour ce que je comprends, la différence est ce qu'ils font après retirer le PPA.

ppa-purge - Désactive un PPA et rétablit les packages officiels le cas échéant. Par exemple, si j'ajoutais le PPA xorg-edgers et installais les pilotes Nvidia, si je faisais un ppa-purge sur ledit PPA, cela désactiverait non seulement le PPA xorg-edgers, mais aussi renverrais les pilotes NVIDIA de celui du PPA. ceux officiels trouvés sur les dépôts officiels Ubuntu.

add-apt-repository -r - Supprime uniquement ledit PPA. Ne reviendra pas les paquets.

Les scénarios de cas pourraient être:

  • Lorsque vous souhaitez conserver un package d'un PPA mais souhaitez supprimer le PPA réel. Par exemple, si vous voulez ajouter le paquet Ubuntu Tweak à partir d'un PPA, puis que vous voulez le supprimer, vous devez utiliser add-apt-repository, ce qui laissera Ubuntu Tweak installé.

  • Lorsque vous souhaitez revenir à un package officiel et cesser d'utiliser un PPA contenant des packages mis à jour/expérimentaux (comme les packages de version du noyau, les packages propriétaires, etc.). Dans ce cas, vous pouvez utiliser ppa-purge en supposant que votre intention est de revenir aux versions officielles. Ce qui revient à supprimer chaque paquet PPA installé et à faire ensuite:

    Sudo apt-get update  
    Sudo apt-get upgrade
    Sudo apt-get install PACKAGES
    

Dans la plupart des cas, add-apt-repository devrait suffire à ajouter et supprimer des PPA. L'utilisation de ppa-purge ne peut aider que dans les cas où vous souhaitez réellement supprimer un paquet et installer la version officielle, ce qui n'est pas courant car la plupart des utilisateurs ajoutent un PPA pour avoir quelque chose de meilleur que celui cela vient avec Ubuntu. Des cas tels que kazam (de Kazam PPA), des pilotes vidéo propriétaires (de swat-x ou xorg-edgers PPA) et même les pilotes Google Chrome et VirtualBox. Et même s’ils le suppriment, il n’ya que 2 ou 3 commandes pour supprimer les packages actuels du PPA supprimé et installer ceux qui sont officiels.

Cela dit, tout dépend de ce que l'utilisateur veut faire à propos des packages liés au PPA.

52
Luis Alvarado

La page de manuel apt-add-repository indique ceci à propos de la commande:

   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.  

et:

-r, --remove Remove the specified repository  

Donc, add-apt-repository ajoute et supprime simplement les lignes de /etc/apt/sources.list et /etc/apt/sources.list.d/.

La page de manuel ppa-purge indique ceci:

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.  

Ainsi, ppa-purge ne supprimera pas seulement un PPA, il rétrogradera également tous les paquets vers leurs versions par défaut. Ceci est utile lorsque vous testez une version bêta ou une version plus récente du logiciel.

12
Seth