domingo, 15 de enero de 2012

Actualizando Pacman 4

La semana pasada actualizé mi distribución (arch linux) y hubo dos cosas que requirieron algo más de trabajo por mi parte, del que es habitual al actualizar los paquetes. Este trabajo extra fue debido principalmente a la actualización del gestor de paquetes de arch, pacman, a la versión 4 y al reemplazo del paquete module-init-tools por kmod.

El principal cambio que introduce pacman 4 es la firma de los paquetes en los repositorios por parte de los desarrolladores para añadir seguridad en las instalaciones. Aunque podemos configurar pacman para que acepte un paquete a pesar de no haber validado la clave de la persona que lo empaquetó, ya que tenemos la opción de verificar las firmas, ¿por qué no hacerlo?.
Para ello, lo que tenemos que hacer es añadir las claves PGP de los desarrolladores y de los usuarios con permisos para empaquetar (Trusted Users en la jerga arch). El propio paquete pacman contiene un script que permite añadir una clave y validarla, pacman-key. Así que lo que nos queda es añadir localmente dichas claves y confiar en ellas, pero como hacerlo para cada una de las claves puede ser realmente pesado, os dejo un script que automatiza el proceso.

En cuanto al paquete kmod, el único inconveniente que encontré es que elimina la opción de listar los módulos disponibles (-l) del comando modprobe (que ahora es un enlace a kmod). Esa opción se ha eliminado ya que está planificado dejar de usarla, pero como estoy acostumbrado a emplearla de manera asidua y me resulta muy cómoda, he creado un pequeño alias que me permite seguir llamando a modprobe con la opción -l sin que de error y listando los módulos como hacía antes. Aquí está el alias:

function _mod () {
    [ "$1" = "-l" ] && \
        find /lib/modules/$(uname -r)/kernel/drivers | \
            sed "s/\/lib\/modules\/$(uname -r)\/kernel\/drivers\///g" || \
        modprobe $@
}
alias modprobe=_mod

No hay comentarios:

Publicar un comentario