deb
De Wikipedia, la enciclopedia libre
| Paquete debian |
|
|---|---|
| Extensión de archivo: | .deb |
| Tipo de MIME: | application/x-deb |
| Desarrollado por: | Debian |
| Tipo de formato: | Sistema de gestión de paquetes |
| Contenedor para: | Paquete de software |
deb es la extensión del formato de paquetes de software de Debian, y el nombre más usado para dichos paquetes. Como Debian, su nombre proviene de Deborah Murdock, esposa del fundador Ian Murdock.
El programa predeterminado para manejar estos paquetes es dpkg, generalmente via el sistema APT.
Los paquetes deb también pueden ser convertidos a otros formatos de paquetes y viceversa usando la aplicación Alien.
Tabla de contenidos |
[editar] Origen del nombre
La extensión deb viene de la palabra Debian, que es a su vez una contracción de Debra y de Ian[1]
[editar] Estructura Interna
Los paquetes deb son un ar (archivador) estándar. Estos paquetes contienen tres archivos:
- debian-binary - número de versión del formato deb
- control.tar.gz - toda la metainformación del paquete
- data.tar.gz - los archivos que se instalan
[editar] Creación de un paquete de Debian
Los paquetes y el sistema de paquetes son parte fundamental dentro de Debian. El esfuerzo de muchos desarrolladores se centra en “debianizar” fuentes, es decir adaptar ficheros fuentes para que funcionen de acuerdo con el sistema de paquetes de Debian. Cualquier persona puede realizar un paquete aunque para que éste forme parte de la distribución debe ser desarrollador oficial.
[editar] Obtener los archivos fuentes
Necesitamos disponer de los ficheros fuentes con el código original del programa que queremos "debianizar". Para este ejemplo utilizaremos las fuentes del programa "Hello" que muestra un mensaje de bienvenida por la pantalla. Descomprimimos las fuentes (normalmente se encuentran en un archivo.tgz), en este caso el archivo se llama “hello_2.1.1.tar.gz”
[editar] Ver como funciona el programa
Una vez obtenidos los archivos fuentes del programa lo configuramos, compilamos e instalamos (./configure, make, make install). Para crear un paquete Debian se debe estar familiarizado con el programa y haberlo utilizado muchas veces.
[editar] Modificando los fuentes
Algunos cambios comunes en los ficheros fuente son:
[editar] Cambiar la ruta de instalación
Normalmente los programas se instalan en el directorio /usr/local. En Debian este directorio está reservado para las aplicaciones del administrador del sistema. Los programas en Debian deben instalarse en la ruta /usr/bin. Normalmente los programas utilizan el fichero makefile como guión (script) para compilar. Por lo tanto deberemos mirar en este archivo y cambiar la línea:
BIN = /usr/local/bin
por:
BIN = /usr/bin
[editar] Cambiar las librerías
Normalmente en el fichero “makefile” se hace referencia a librerías que puede que no se encuentren en Debian o ni siquiera en Linux. Por lo tanto habrá que cambiar esas librerías por otras que existan en Debian y que hagan lo mismo.
[editar] Proceso de debianización. Directorio /debian
Nos situamos en el directorio de hacemos:
dh_make -e tudirección@de.correo -f ../hello_2.1.1.orig.tar.gz
“dh_make” es un paquete que probablemente no tengamos instalado en nuestro sistema por lo que habrá que descargarlo: “apt-get install dh_make”. Se trata de un script para debianizar fuentes. Tras ejecutar este comando nos creará, dentro del directorio donde se encuentran las fuentes, la carpeta "debian" que contendrá una estructura de archivos necesaria para crear el paquete de Debian. Bajo el directorio /debian hay algunos ficheros que no pueden faltar y que habrá que editar para completar lo que hizo por defecto "dh_make", estos ficheros son:
Fichero "control": Este fichero contiene varios valores que "dpkg" y "dselect" usarán para gestionar el paquete. Por ejemplo, nombre del paquete, desarrollador, prioridad, dependencias, arquitecturas soportadas, descripción.
Fichero "copyright": Este fichero contiene la información sobre la licencia y copyright de las fuentes originales del paquete.
Fichero "changelog": Este fichero contiene información que usan dpkg y otros programas para obtener el número de versión, revisión, distribución y urgencia de tu paquete.
Fichero "rules": Ahora se necesita mirar las reglas exactas que "dpkg-buildpackage" utilizará para crear el paquete. Este fichero es en realidad otro Makefile, pero diferente al que viene en las fuentes originales. A diferencia de otros ficheros en debian/, éste necesita ser configurado como ejecutable. "dh_make" te crea un por defecto que debería servir para paquetes simples.
Dentro del directorio /debian, además de estos ficheros hay muchos más. Algunos de ellos tiene la extensión.ex, esto indica que son ejemplos.
[editar] Crear el paquete
Entramos en el directorio principal del programa y ejecutamos:
dpkg-buildpackage -rfakeroot
Te pedirá que introduzcas dos veces tu clave PGP. Tras ejecutarse, en el directorio inmediatamente superior aparecerán una serie de archivos:
hello_x.x.orig.tar.gz: Es el código fuente original.hello_x.x.diff.gz: Este fichero comprimido contiene todos y cada uno de los cambios que se hizo al código fuente original.hello_x.x.dsc: Es una breve descripción del paquete, está firmada con PGP por la persona que lo ha empaquetado y tiene una valor de control (función hash MD5) de los dos ficheros anteriores para poder detectar si han sido modificados por alguien ajeno al desarrollador.hello_x.x_i386.deb: Este es el paquete binario completo. Puedes usar "dpkg" para instalar o eliminar tanto éste paquete como cualquier otro.hello_x.x_i386.changes: Este fichero describe todos los cambios hechos en la revisión actual del paquete, y es usado por los programas de gestión del archivo FTP para instalar los paquetes binarios y fuentes en él. Se genera parcialmente a partir del fichero “changelog” y elfichero.dsc. Este fichero está firmado con PGP o GPG, de forma que cualquiera puedes estar aún más seguro de que es realmente tuyo.
[editar] Referencias
- ↑ Ian Murdock es el fundador de la distribución Debian y Debra es su esposa.

