¿Diferencia entre "ppa-purge" y "add-apt-repository -r"?

42

¿Cuál es la principal diferencia entre ppa-purgey add-apt-repository -r. ¿Cuál es mejor para eliminar los elementos residuales y la razón para usar uno sobre otro? ¿ add-apt-repository -rDebe hacer qué ppa-purgehacer?

Editar: ¿También eliminan ambas claves del llavero de apt?

Alinwndrld
fuente

Respuestas:

52

Por lo que entiendo, la diferencia es lo que hacen después de eliminar el PPA.

ppa-purge : desactiva un PPA y vuelve a los paquetes oficiales, si corresponde. Por ejemplo, si agregué el PPA xorg-edgers e instalé los controladores de Nvidia, si hago uno ppa-purgeen dicho PPA, no solo deshabilitaría el PPA xorg-edgers sino que también revertiría los controladores NVIDIA del oficial del PPA al oficial los que se encuentran en los repositorios oficiales de Ubuntu.

add-apt-repository -r : solo eliminará dicho PPA. No revertirá ningún paquete.

Los escenarios de casos pueden ser:

  • Cuando desea conservar un paquete de un PPA pero desea eliminar el PPA real. Por ejemplo, si desea agregar el paquete Ubuntu Tweak de un PPA pero luego desea eliminar el PPA, usaría add-apt-repository que dejará Ubuntu Tweak instalado.

  • Cuando desee volver a un paquete oficial y dejar de usar un PPA que tenga paquetes actualizados / experimentales (como paquetes de versión Kernel, paquetes propietarios ...). En estos casos, es posible que desee utilizar ppa-purge asumiendo que su intención es volver a las versiones oficiales. Lo que es lo mismo que eliminar cada paquete PPA instalado y luego hacer:

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

Para la mayoría de los casos, add-apt-repository debería ser suficiente para agregar y eliminar PPA. El uso de ppa-purge solo puede ayudar en los casos pequeños en los que desea eliminar realmente un paquete e instalar la versión oficial que no es común, ya que la mayoría de los usuarios agregan un PPA para tener algo mejor que el que viene con Ubuntu. Casos como kazam (de Kazam PPA), controladores de video patentados (de swat-x o xorg-edgers PPA) e incluso los de Google Chrome y VirtualBox. E incluso si lo eliminan, solo son 2 o 3 comandos para eliminar los paquetes actuales del PPA eliminado e instalar los oficiales.

Con todo esto en mente, simplemente se reduce a lo que el usuario quiere hacer sobre los paquetes relacionados con el PPA.

Luis Alvarado
fuente
¿Eso significa que no es necesario ppa-purgesi uso un repositorio para instalar el paquete que no está disponible en el repositorio oficial, por ejemplo, como "ubuntu-tweak", ya que no hay paquete para revertir al paquete oficial?
Alinwndrld
@Alinwndrld actualizará la respuesta.
Luis Alvarado
1
@LuisAlvarado Error de ortografía menor: sudo apt-get ugprade:)
Paddy Landau
@Alinwndrld Al menos la versión de desarrollo de ppa-purgeelimina los paquetes en ese caso. También podría probar mi versión de ppa-purge, que incluye muchas mejoras. También puede eliminar otros repositorios que no sean PPA, por lo que tal vez sería mejor llamarlo remove-apt-repository.
jarno
12

La página de apt-add-repositorymanual dice esto sobre el 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.  

y:

-r, --remove Remove the specified repository  

Tan add-apt-repositorysolo agrega y elimina líneas de /etc/apt/sources.listy /etc/apt/sources.list.d/.

La página de ppa-purgemanual dice esto:

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.  

Por ppa-purgelo tanto , no solo eliminará un PPA, también degradará los paquetes a sus versiones predeterminadas. Esto es útil cuando se prueban versiones beta o más nuevas de software.

Seth
fuente
¿Ambos eliminan la clave ppa del llavero de apt?
Alinwndrld
@Alinwndrld Debería.
Seth
@Alinwndrld mira aquí . En cuanto a ppa-purge, actualmente no. ¿Son dañinas las teclas allí?
jarno