Compilación de paquetes Debian con svn-buildpackage
svn-buildpackage es una herramienta para construir y mantener paquetes Debian utilizando un repositorio subversion.
Introducción
Aunque se trata de una herramienta pensada para Debian maintainers te puede venir bien saber utilizarla para poder construir paquetes a partir del repositorio si por cualquier motivo un paquete no está disponible en un momento dado. En principio para eso es la receta, pero no descarto ampliarla si en el futuro lo uso para hacer y mantener paquetes. Si algún otro se anima a completarla, perfecto también.
EDITADO: Al final hice otra receta sobre cómo mantener paquetes con svn-buildpackage
Ingredientes
Para compilar paquetes Debian obviamente vas a necesitar todas las herramientas típicas del mantenedor:
- build-essential
- fakeroot
- svn-buildpackage
- python-dev (para el ejemplo de esta receta)
La excusa: gnome-bluetooth
Para ver cómo funciona svn-buildpackage vamos a construir el paquete Debian de gnome-bluetooth, que no es un paquete oficial (lleva más de 800 días en preparación). Evidentemente lo puedes hacer con cualquier paquete Debian o Ubuntu mantenido de la misma forma.
Repositorio
Tienes que descargar los fuentes de los paquetes. svn-buildpackage no requiere que los fuentes del programa (upstream) estén en el mismo sitio que los ficheros de gestión del paquete Debian. En el caso de gnome-bluetooth si que está todo. Voy a suponer que lo vas a hacer todo desde un directorio devel
por tener una referencia de donde está cada cosa.
Y también habrá que empaquetar una librería que viene con gnome-bluetooth llamada libbbtctl.
libbtctl
Empezamos por la librería, porque es una dependencia del paquete principal. Lo primero es instalar las build-depends, que las puedes ver en el fichero debian/control
Y para construir los paquetes simplemente:
E instalarla, claro:
gnome-bluetooth
Las build-depends son:
Como ves hacen falta muchos paquetes para compilar paquetes ;-)
Y por fin, generar los paquetes e instalarlos.
Y ya está. Fácil, fácil y para toda la familia.
Referencias
- /usr/share/doc/svn-buildpackage/HOWTO.html
- Manage your Debian packages with Subversion and pbuilder