No soy desarrollador de Ubuntu, con suerte puedo compilar mis aplicaciones (rara vez, ya que prefiero los binarios). Pero el tema de empaquetamiento siempre me ha resultado interesante.
¿Cuántas veces nos hemos encontrado con una aplicación que no está en los repositorios de Ubuntu y sólo disponemos del código fuente?
Siempre pienso lo útil que sería que pudiera transformarlo en un .deb para instalarlo fácilmente. Ahí es donde entra los MOTU, personas que se encargan de mantener distintos paquetes de los repositorios Universe y Multiverse para que siempre dispongamos de sus últimas actualizaciones :).
Como me gusta aprender, estoy comenzando a leer sobre el empaquetamiento para Ubuntu y me estoy guiando por unos videos disponibles en Youtube. Hay 4 en inglés y sólo uno en español así que a medida que los vaya viendo voy a hacer una traducción libre y las iré posteando acá. Es bastante más fácil poder leer que adelantar y retroceder para leer los comandos.
La primera parte (Learning MOTU: Getting Started) está en español e inglés, así que puedo que esta primera parte no sea del todo útil. Bueno, basta de hablar y pongámonos manos a la obra…
Introducción
Primero hablaremos sobre el empaquetamiento, esto es el proceso de transformar el código fuente, sin importar el lenguage en el que esté escrito aplicando sólo una construcción y transformarlo en un paquete binario.
Lo primero que haremos será configurar nuestro entorno de desarrollo, para ello instalaremos algunos paquetes, crearemos nuestra llave GPG e instalaremos pbuilder, una herramienta para empaquetar.
Instalando paquetes
Instalaremos:
devscriptsbuild-essentialgnupgpbuilderdh-make
~$ sudo apt-get install debscripts build-essential gpg pbuilder dh_make fakeroot debhelper gnupg dh-make
Configurando entorno
Ahora configuraremos un par de variables que utilizaremos todo el tiempo, el nombre y dirección de correo. Para ello editaremos el fichero .bashrc de tu directorio home con cualquier editor y al final agregamos:
export DEBFULLNAME="nombre" export DEBEMAIL="nombre@isp.com"
Guardado el archivo, cargamos el fichero para que acepte las variables:
~$ source .bashrc
La llave GPG
La idea de esto, es que podamos probar que es efectivamente nuestro trabajo y nadie lo ha alterado en el camino. Puedes leer un poco más aquí, pero en general basta con ejecutar el siguiente comando y aceptar las opciones por defecto:
~$ gpg --gen-key
Luego de preguntar por algunos datos como nombre, correo electrónico y password necesitará un poco de entropía, es decir, que tu equipo tenga actividad por lo que mientras termina configuraremos pbuilder. Un dato importante, para que tu llave sirva (y puedas utilizarla en otras cosas más adelante) es necesario que guardes
Pbuilder
La idea de esta aplicación es que cuando le digamos que vamos a compilar el código fuente se encargará de utilizar un pequeño entorno que imitará los equipos e instalará las dependencias. Las dependencias son los paquetes que son necesarios para que el paquete en cuestión pueda ser construido exitosamente. Lo primero que haremos será decirle a pbuilder para que secciones de los repositorios de Ubuntu se utilizará (en resumen, todos). Para ello con cualquier editor de texto creamos un fichero llamado .pbuilderrc con el siguiente contenido:
COMPONENTS="main restricted universe multiverse"
… y lo guardamos en nuestra carpeta home.
Ahora lo echamos a andar:
~$ sudo pbuilder create
Tomará un poco de tiempo y cuando termine estaremos listos para comenzar…
Aclaro nuevamente que no sólo estoy transcribiendo el tutorial original, no me manejo mucho en el tema y no soy para nada un MOTU.










Vamos... sabemos que quieres comentar algo ;)