Bajar de categoría un montón de paquetes


11

Tal vez haya instalado paquetes de un PPA o una fuente externa (por ejemplo, descargó un .deb para un paquete que está disponible a través de los repositorios de Ubuntu).
Luego, decide abandonar estas versiones actualizadas a favor de los repositorios oficiales.
El primer paso es eliminar las entradas de sources.list.

¿Hay alguna manera de degradar todo a la versión más alta disponible? Sé que puedes instalar versiones específicas con

apt-get install [paquete] = [versión]
¿Pero puedes degradar todo?


¿Se refiere a un comando para eliminar las aplicaciones PPA actuales y luego instalar las del repositorio oficial? Haría algo como sudo apt-get -y remove package1 package2 package3 && sudo apt-get install package1 package2 package3: no creo que haya un solo comando como, sudo apt-get repocleanpor ejemplo, hacerlo.
kingmilo

¿Entonces tengo que obtener todos los paquetes que instalé del repositorio? No hay actualización a la versión más alta disponible (eso es algo que puede hacer con openSUSEs zypper).
Manuel

Si elimina el repositorio y el paquete está disponible en el repositorio oficial y ese paquete es una versión más alta que el paquete que estaba disponible en el repositorio que agregó, ese paquete se actualizará a la versión disponible en el repositorio oficial.
kingmilo

1
Sí, pero ¿y si no? La actualización no es un problema en absoluto, sino la degradación.
Manuel

Respuestas:


16

Llegué un poco tarde a la fiesta, pero encontré esta pregunta cuando busqué una respuesta y ahora tengo mi propia respuesta para compartir.

Creo que puedes hacer esto a través del misterioso mundo de apt_preferences.

Intenta crear un archivo llamado / tmp / a_p (o lo que sea) así ...

Package: *
Pin: release a=*-backports
Pin-Priority: 100

Package: *
Pin: release n=*
Pin-Priority: 1001

Entonces corre:

sudo apt-get -o Dir::Etc::Preferences=/tmp/a_p dist-upgrade

La segunda sección del archivo básicamente hace lo que solicitó el OP, ya que aumenta la prioridad de todos los paquetes en cualquier repositorio en vivo para que se instalen incluso si esto significa una degradación.

La primera sección evita que la segunda active la instalación de todos los puertos. Puede que le importe o no le interese o quiera esto. Sugeriría retoques para ver qué funciona. Puede usar apt-cache -o Dir::Etc::Preferences=/tmp/a_p policy somepkgpara ver qué efecto tiene el archivo a_p en paquetes específicos.

TIM


6

Ok, lo que si se encuentra es el script ppa-purge

Si agregó un PPA y un software actualizado, puede eliminar el repositorio y en este paso degradar todos los paquetes que se actualizaron con

ppa-purge [nombre del repositorio]

¿Es esto útil para otra persona?

Pero aún está abierto si puede instalar la versión más alta disponible, incluso si la versión instalada es más alta ...

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.