Creative Commons License
Excepto donde se indique otra cosa, todo el contenido de este lugar está bajo una licencia de Creative Commons.
Taquiones > debian > Backporting en Debian (I)

Backporting en Debian (I)

El término backport hace referencia a acciones efectuadas sobre versiones antiguas de un determinado software, tales como aplicar parches de seguridad; en nuestro caso se aplica a construir paquetes Debian en versiones anteriores a las que fueron construídos inicialmente.

Vamos a utilizar pbuilder para llevar el paquete ikiwiki de la versión unstable a la versión stable, aka Sarge.

Esta es una relación de enlaces y documentación en la que me he basado:

Primeros pasos

Instalamos los siguientes paquetes en la máquina en la que vamos a trabajar:

# apt-get install pbuilder fakeroot sudo devscripts apt-utils

En este caso, y siguiendo el último tutorial, vamos a hacer un uso intensivo del programa sudo, de manera que no tengamos que trabajar contínuamente como root. Un ejemplo de configuración válida para este programa sería el siguiente:

username ALL = /usr/sbin/pbuilder

siendo username obviamente sustituído por nuestro usuario. sudo nos pedirá nuestra contraseña la primera vez y la mantendrá durante unos quince minutos en memoria.

Conviene crear un pequeño programa que invoque la secuencia correcta, porque no suele ser habitual tener a /usr/sbin en la ruta de búsqueda de un usuario sin privilegios. Podemos guardarlo bajo $HOME/bin/pbuilder con algo como:

#!/bin/sh

sudo /usr/bin/pbuilder $*

Ajustando la configuración

El archivo /etc/pbuilder/pbuilderrc tendrá que ser modificado para trabajar cómodamente con él. Las siguientes son las opciones a tocar:

  • MIRRORSITE=http://ftp.uk.debian.org/debian
  • http_proxy=http://proxy.venexma.int:8080
  • DISTRIBUTION=sarge
  • DEBOOTSTRAPOPTS[0]=--arch=i386
  • DEBOOTSTRAPOPTS[1]=--debug
  • APTCONFDIR="/etc/pbuilder/apt.config/"

Los parámetros para debootstrap se deben a que estamos trabajando sobre amd64 y necesitamos que el paquete se construya para i386. Existe un apartado especial en la documentación que menciona que debe utilizarse linux32 y la opción --arch de debootstrap juntas de la siguiente forma:

$ pbuilder create --distribution sid --debootstrapopts --arch \
    --debootstrapopts i386 --basetgz \
    /var/cache/pbuilder/base-i386.tgz --mirror http://ftp.jp.debian.org/debian
$ linux32 pbuilder build --basetgz /var/cache/pbuilder/base-i386.tgz

También debemos ajustar las opciones de apt para que las use en la imagen: