Un sitio Impertinente

Archive for September, 2011

De dpatch a quilt

con 2 comentarios

Hace unas semanas me reactivé con el Proyecto Debian, comencé el proceso de mitigación de bugs en los paquetes que mantengo desde el año 2007. Una de las herramientas en que siempre me apoyé y que fue fiel compañero de batalla para aplicar parches: dpatch. Actualizandome conseguí que quilt ahora viene con soporte nativo en el dpkg 3.0 format, así que decidí probarlo. Una de las cosas que me gustó fue que usando quilt no tengo que hacerle mucho hacking al debian/rules (al contrario que dpatch, se necesitaba declarar funciones de patch/unpatch/etc). Para la migración de dpatch a quilt utilicé este simple comando:

for inc in $(dpatch list-all); do quilt import -P $inc.diff debian/patches/$inc.dpatch; quilt push; done

Antes de comenzar debemos preparar el ambiente:

cd /donde/sea/que/esten/las/fuentes/
mkdir debian/patches
export QUILT_PATCHES=debian/patches
touch debian/patches/series

Nota: Se recomienda setear la variable QUILT_PATCHES=debian/patches en ~/.quiltrc

Una forma rápida para comentar a parchear con quilt es la siguiente:

quilt push -a # Aplicamos parches, si existen
quilt new repara_esto.diff # Se crea el archivo que contendrá el parche
quilt add algo.c # Se agrega el archivo a modificar
sed -i '1 s/^/Hola/' algo.c # Se realiza la modificación al archivo
quilt refresh # Se crea el parche
quilt pop -a # Se deshacen los cambios

Y para modificar un archivo que ya tenga un parche:

quilt push repara_esto.diff
sed -i 's/Hola/Chao/' algo.c
quilt refresh repara_esto.diff
quilt pop -a

Más información: Quilt for Debian Maintainers

Escrito por apostols

September 7th, 2011 at 9:58 am

Agregado en Debian,Ñu-con-Linux