[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Consulta sobre Apt pinning



-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hola!

Actualmente estoy usando en mi estación de trabajo Debian GNU/Linux
Squeeze y por unas pruebas que estoy haciendo de VoIP estoy necesitando
instalar específicamente el paquete Twinkle en su versión de la rama
estable. Por lo que estuve viendo, esto se puede hacer con pinning y
estuve leyendo las páginas del manual de apt_preferences, pero no me
termina de quedar en claro cómo funciona la asignación de las
prioridades, por lo cual me gustaria saber si alguien de por aquí me
puede ayudar a entender cómo funciona esto.

Por ejemplo, estuve probando creando el archivo /etc/apt/preferences con
el siguiente contenido:

Package: twinkle
Pin: release a=stable
Pin-Priority: 900

Luego, compruebo la asignación de prioridades:

# apt-cache policy twinkle
twinkle:
  Instalados: (ninguno)
  Candidato: 1:1.2-3
  Pin del paquete: 1:1.2-3
  Tabla de versión:
     1:1.4.2-2 900
        500 http://debian.freesoftware.org testing/main Packages
        100 /var/lib/dpkg/status
     1:1.2-3 900
        500 http://ftp.us.debian.org stable/main Packages


Por lo que pude ver en las páginas del manual de apt_preferences, si no
hay definida una «distribución objetivo», a los paquetes instalados se
les asigna una prioridad de 100 y 500 al resto. Estimo que por eso
estará el '500' al lado de cada repositorio. Aunque el candidato es el
paquete para estable como pretendo que sea, no me queda claro por qué
arriba dice '900' al lado de tanto la versión de testing como la de
estable si solo le estaría asignando prioridad 900 al paquete para
estable.

Independientemente de esta duda, por lo que estuve probando, la
instalación se hace del paquete de la rama estable y se mantiene, que es
lo que quería; vale decir que si hago un upgrade, más allá de que el
paquete de testing tiene una versión mas nueva, no se actualiza el
instalado de la rama estable.

Continuando con mi comprensión de entender cómo se hace la asignación de
prioridades, probé agregando en mi sources.list el repositorio inestable
y agregando un bloque más a mi archivo preferences de manera de quedar
así:

Package: twinkle
Pin: release a=stable
Pin-Priority: 900

Package: twinkle
Pin: release a=unstable
Pin-Priority: 950

En este caso, supongo que el paquete candidato debería ser el de la rama
inestable. Comprobando la asignación de prioridades me encuentro con lo
siguiente:

# apt-cache policy twinkle
twinkle:
  Instalados: (ninguno)
  Candidato: 1:1.4.2-2
  Pin del paquete: 1:1.4.2-2
  Tabla de versión:
     1:1.4.2-2 950
        500 http://debian.freesoftware.org testing/main Packages
        500 http://ftp.us.debian.org unstable/main Packages
     1:1.2-3 950
        500 http://ftp.us.debian.org stable/main Packages
        100 /var/lib/dpkg/status

Acá se me plantea una duda similar a la que exponía más arriba: ¿por qué
aparece al lado de cada versión el valor '950' si le asigné en el
archivo preferences 900 a la versión de la rama estable y 950 a la
versión de la rama unestable?

Como dato adicional, veo que el /var/lib/dpkg/status se movió de lugar
con valor 100. Por lo que pude ver, me da la impresión de que este
archivo tiene todos los paquetes instalados y como a los que se
encuentran bajo esta condición dijimos que se les asigna una prioridad
de 100, imagino que esta es la forma en que Debian nos dice 'todos los
paquetes que están en este archivo tienen prioridad de 100'. Bah, en
realidad, más que los _últimos_ instalados, serían los últimos que
alguna vez pudieron estar instalados, ya que después le hice un
'remove'.

Gracias anticipadas por responder.

Saludos,
Daniel

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)

iEYEARECAAYFAkqILi8ACgkQZpa/GxTmHTeO3gCfW1BpVytjiuInM4HogPvQoh6H
GzcAniIfQbXmn5PzSWL5g7udq8fA2P8m
=3uNd
-----END PGP SIGNATURE-----


Reply to: