PPA Purge: cómo remover un repositorio PPA en forma segura

Los PPA permiten a los usuarios instalar aplicaciones que no están presentes o no se encuentran lo suficientemente actualizadas en el repositorio oficial de Ubuntu, ya que quienes administran estos repositorios se toman un tiempo prudencial para hacer “oficiales” las actualizaciones de los programas en pos de mejorar la estabilidad y seguridad del sistema.

Por suerte, en Ubuntu contamos con los PPA para sobrepasar esta “medida”, que si bien es muy adecuada desde el punto de vista de los desarrolladores de Ubuntu, puede no serlo tanto desde el punto de vista del usuario final que siempre quiere tener el último “chiche” y la última versión de los programas. Las desventaja de este método es que, al agregar PPAs, aumentamos los riesgos de inestabilidad del sistema y abrimos brechas de seguridad importantes.

Estas son las razones, precisamente, por las que puede resultar necesario remover un repositorio PPA que hayas agregado previamente.

PPA-PURGE al rescate

ppa-purge es un script que removerá el PPA indicado de tu sources.list así como todos los paquetes instalados desde aquél. Por último, volverá a instalar las versiones “oficiales” de los programas que hayas actualizado a través del PPA. En una palabra, es una forma de restaurar tu sistema al punto previo anterior al agregar el PPA.

Modo de uso

El problema surgió cuando escribiste esto en un terminal:

sudo add-apt-repository ppa:mi_ppa

Al ejecutar esta línea lo que hiciste fue agregar un PPA a tu listado de repositorios desde los cuales Ubuntu instalará y actualizará las aplicaciones disponibles.

Para deshacer esta situación, primero tenés que instalar PPA-PURGE. Podés bajarte el paquete DEB desde aquí.

Una vez instalado, abrí un terminal y escribí:

sudo ppa-purge ppa:mi_ppa/subdirectorio/

En caso de que antes haya agregado el PPA entero, sólo habrá que poner el nombre del PPA, de lo contrario hay que poner también el subdirectorio específico.

Así, por ejemplo, estos serían los pares para instalar y desinstalar un PPA:

sudo add-apt-repository ppa:chromium-daily
sudo ppa-purge ppa:chromium-daily

sudo add-apt-repository ppa:tualatrix/gloobus
sudo ppa-purge ppa:tualatrix/gloobus

En el primer ejemplo, habíamos instalado el PPA completo y en el segundo sólo un directorio. Al usar ppa-purge, obviamente, debemos especificar la misma ruta que habíamos utilizado con add-apt-repository.

Esperemos que el Centro de Software de Ubuntu mejorado que vendrá con Ubuntu 10.10 incorpore la posibilidad de agregar y/o remover PPAs. Por ahora, debemos conformarnos con éste método, que según mi experiencia es el más seguro y confiable.

Cómo listar los PPA utilizados actualmente

Es probable que no recuerdes cómo demonios se llamaba ese maldito PPA que te está causando problemas. Existen básicamente 3 formas de averiguar los PPA que tu sources.list está utilizando actualmente.

La primera es la más fácil. Andá a Sistema > Administración > Orígenes del Software. Una vez allí, andá a la pestaña Otro software. Allí aparecerán listados todos los PPA. Desde esta ventana también vas a poder deshabilitar los PPA que te causen problemas (aunque esto, por sí sólo, no restaurará las versiones anteriores de los programas). También podés agregarle un “comentario” a cada PPA para que sea más fácil de identificar (claro, ¡a veces la ruta del PPA no nos dice nada que nos dé una pista para saber de qué se trata!).

También podés acceder a un listado de los PPA yendo a Aplicaciones > Centro de software de Ubuntu. Sin embargo, desde allí no vas a poder deshabilitar los PPA, apenas ver/instalar/desinstalar las aplicaciones disponibles a través de esos PPA.

El tercer método consiste en utilizar el terminal. Escribimos:

grep -i ppa.launchpad.net /etc/apt/sources.list.d/*.list

Esta es, a mi modo de ver, la mejor forma de ver cuáles son los PPA instalados en el sistema.

Recordá que si vas a utilizar el método 1 (a través de Orígenes del Software) o el 3 (usando el terminal) para obtener la ruta del PPA necesaria para desinstalarlo usando ppa-purge, ésta viene dada por el texto que se encuentra entre ppa.launchpad.net y ubuntu.

Por ejemplo, para:

http://ppa.launchpad.net/jason-scheunemann/ppa/ubuntu

la ruta del PPA es: jason-scheunemann/ppa

Entonces, en ppa-purge vas a poner:

sudo ppa-purge ppa:jason-scheunemann/ppa

Para que tengas como referencia, es bueno saber que, generalmente, la estructura de las rutas de los PPA es la siguiente: nombre_de_usuario/nombre_del_ppa.


12 comentarios

  1.   Edison Galindo dijo

    ecxelente, muchas gracias

  2.   Browe1387 dijo

    Hola excelente web y todo su contenido, pero tengo una duda no, es referente a tu web.
    E tu web al bajar un poco mas se despliega una barrita en la cual esta twitter y algo mas, my duda es como poner esa barra? no es la primera ves que la veo en una web es por eso mi duda, cres que me puedas ayudar? bueno aqui te dejo una imagen para que sepas cual es.
    http://i47.tinypic.com/280l9qf.png

    De antemano muchas Gracias.

  3.   Browe1387 dijo

    Muchas gracias.

  4.   Anomimo dijo

    Eliminar archivos de /etc/apt/sources.list.d
    Automáticamente deja de buscar esos ppa al hacer un apt-get update.

    1.    Angel22 dijo

      Muy buen comentario es lo que le falto al post

  5.   Saito Mordraug dijo

    Excelente guía, muy necesaria para los usuarios que probando cosas o simplemente explorando se llenan de PPA que nunca van a utilizar, ensuciando su sistema.

  6.   Carlos dijo

    Pues yo no soy capaz de eliminar esté repositorio:

    deb http://ppa.launchpad.net/ubuntu-x-swat/intel-graphics-updates/ubuntu precise main

    Lo más que consigo es que se desactive, pero por alguna razón que no comprendo, intenta deshacer los cambios del repositorio con paquetes para «oneiric» en lugar de para «precise» y por supuesto da error.

    ¿Cómo sería el comando para quitar ese repositorio?

    1.    rac dijo

      Buenas,

      Una solución “poco fina” pero útil si el ppa-purgue no te funciona, es borrar el fichero de /etc/apt/sources.list.d como ha dicho un anónimo por ahí arriba o “comentar” las direcciones.

      Si haces un

      cd /etc/apt/sources.list.d

      y luego un

      ls

      verás los ficheros que usa tu distribución para montar los repositorios.

      Seguramente el que quieres quitar se llame ubuntu-x-swat.list o algo por el estilo.

      O bien borras el fichero con un

      sudo rm ubuntu-x-swat.list

      o bien entras en él y “anulas” la líneas del fichero con una almohadilla #.

      sudo nano ubuntu-x-swat.list

      poner # delante de cada línea del fichero, Crtl+O para guardar, Intro para decir que sí y Crtl+X para salir.

      en cuanto hagas el

      sudo apt-get update

      o

      sudo aptitude update

      verás que ya ignora esas líneas.

      Espero que mi “yo del presente” ayude a alguien del futuro… 😛

      1.    josshy dijo

        Desde el gestor de paquetes le das orígenes de software ppa y borras la que no quieras mas

    2.    josshy dijo

      Desde centro de software de ubuntu le das en orígenes de software luego en la parte superior dice ppa le das hay seleccionas la que no mas y le das quitar y listo por ultimo actualizas sudo apt-get update

  7.   Vicente dijo

    Gracias me sirvió

    1.    usemoslinux dijo

      De nada!!
      Abrazo! Pablo.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

*

*

  1. Responsable de los datos: Miguel Ángel Gatón
  2. Finalidad de los datos: Controlar el SPAM, gestión de comentarios.
  3. Legitimación: Tu consentimiento
  4. Comunicación de los datos: No se comunicarán los datos a terceros salvo por obligación legal.
  5. Almacenamiento de los datos: Base de datos alojada en Occentus Networks (UE)
  6. Derechos: En cualquier momento puedes limitar, recuperar y borrar tu información.