Configurando preferencias de APT para mezclar repositorios.


Cuando me cambie a Lenny hace ya varios meses también configure APT para mezclar los repositorios de Debian-multimedia, Sid y Experimental.

De Debian-multimedia saque solo los paquetes de flash y avidemux, pero quería conservar el Mplayer y FFMPEG de la rama Testing. Para Sid, quería EasyTag y Experimental Transset y los faltantes de Gnome 2.22 como Nautilus y el nuevo applet de reloj – y ahora Pidgin y OpenOffice 3.0 -.

Bien, ahora si explico, las preferencias de APT se manejan en el fichero /etc/apt/preferences y cada regla tiene esta forma:

Package: <nombre_paquete>
Pin: <definición_pin>
Pin-Priority: <prioridad>

En la parte de Package creo que no hay duda, es el nombre del paquete que quieres, puedes usar comodines como *.

En la parte de Pin podemos especificar la versión del paquete, publicación – Sarge, Lenny, unstable, testing -, o bien el repositorio origen.

En Pin-Priority colocamos un número que nos indique la prioridad, aquí pongo el significado de estos:

1001

El paquete NUNCA será remplazado. No se puede actualizar o envejecer de ninguna manera.

1000

El efecto es casi igual, ahora no se podrá envejecer a la versión indicada.

990

El paquete se podrá actualizar a una versión superior de la publicación definida como “preferente” en apt.conf.

500

El paquete se podrá actualizar a una versión superior de cualquier repositorio disponible en sources.list

100

Otras versiones de cualquier publicación tendrá preferencia sobre la versión indicada en la parte de Pin. De hecho la versión indicada en Pin solo se instalará si no hay otra disponible y el paquete no esta instalado aun.

-1

Paquete despreciado, totalmente contrario a la prioridad 1001, el paquete nunca se instalará.

Suficiente de esto, dejo un ejemplo:

Package: perl
Pin: version 5.8*
Pin-Priority: 1001

Aquí podemos ver que el paquete perl-5.8* no es sustituible por ningún otro. Para más información pueden consultar “man apt_preferences”. Mi archivo /etc/apt/preferences es el siguiente:

Package: *
Pin: release o=Debian,a=testing
Pin-Priority: 900

Package: *
Pin: release o=Debian,a=unstable
Pin-Priority: 300

Package: *
Pin: release o=Debian,a=experimental
Pin-Priority: 200

Package: *
Pin: origin http://www.debian-multimedia.org
Pin-Priority: 100

Así uso los paquetes de testing, los paquetes de unstable que no estan en testing también los muestra. Lo mismo sucede con los paquetes que solo estan en experimental. Para actualizar Pidgin 2.4 disponible en testing a Pidgin 2.5 de experimental hago lo siguiente:

#apt-get -t experimental update pidgin

Para OpenOffice 3.0, el cual por cierto esta de lujo:

#apt-get remove openoffice.org && apt-get -t experimental install openoffice.org

Y así para Nautilus 2.22 o cualquier otro paquete, si prefieren alguno de sid o debian-multimedia tambien funcionará. Espero que les sirva.

PD: se han fijado que Lenny no es estable aun y ya se esta añejando, eso no lo sentí con Etch, pero ni modo, todo sea por la estabilidad y seguridad del sistema.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s