[ anterior ] [ Contenidos ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ siguiente ]
Probablemente hayas escogido ya el paquete que deseas construir. Lo primero
que necesitas hacer es comprobar si el paquete está ya en la distribución. Si
usas la distribución «estable», quizás sea mejor que vayas a la página de búsqueda de
paquetes
. Si usas la actual distribución
«inestable», compruebalo con las órdenes:
dpkg -s programa dpkg -l '*programa*'
Si el paquete ya existe, ¡instálalo! :-) Si te encuentras con que el paquete
es huérfano (cuando su desarrollador es el «Debian QA Group», es decir, el
grupo de calidad de Debian), entonces podrías adoptarlo. Consulta la lista de paquets
huérfanos
y la lista de paquetes en
espera de adopción
para verificar que el paquete está libre.
Si puedes adoptar el paquete, descarga las fuentes (con algo como apt-get source packagename) y examínalas. Este documento no incluye aún, desafortunadamente, información exhaustiva sobre la adopción de paquetes. No debería ser díficil entender cómo funciona el paquete ya que alguien ha hecho el trabajo inicial por tí. Aún así es mejor que sigas leyendo pues muchos de los consejos a continuación serán también aplicables para este caso.
Debes seguir los pasos indicados a continuación si el paquete es nuevo y decides que te gustaría verlo en Debian:
comprueba que no hay nadie más trabajando en el paquete consultando la lista de paquetes
en los que se está trabajando
. Contacta con la persona que esté
trabajando en el paquete si lo crees conveniente. Si no, intenta encontrar
otro programa interesante que nadie mantenga.
el programa debe tener una licencia. Preferiblemente la
licencia deberá ser libre en el sentido marcado por las Directrices de
Debian para el software libre
. Si la licencia no sigue alguna de
estas reglas aún puede incluirse en las secciones «contrib» o «non-free» de
Debian. Si no estás seguro sobre en qué lugar debería ir debes enviar el texto
de la licencia a debian-legal@lists.debian.org
y pedir consejo.
el programa no debería ejecutarse con setuid root, o aún mejor: no debería tener ningún programa «setuid» ni «setgid».
el programa no debería ser un demonio, o algo que vaya en los directorios */sbin, o abrir un puerto como root.
el programa debería estar compuesto por binarios ejecutables, no lo intentes aún con bibliotecas.
el programa debería tener una buena documentación, o, al menos, un código fuente legible y no ofuscado.
deberías contactar con el autor o autores del programa para comprobar si está/n de acuerdo con que se empaquete. Es importante que el autor o autores sigan manteniendo el programa para que puedas en el futuro consultarle/s en caso de que haya problemas específicos. No deberías intentar empaquetar programas que no estén mantenidos.
y por último, pero no menos importante, deberías saber cómo funciona y haberlo utilizado durante algún tiempo.
Por supuesto, esta lista es para tomar medidas de seguridad, y con la intención de salvarte de usuarios enfurecidos si haces algo mal con algún demonio setuid... Pero cuando tengas más experiencia en empaquetar cosas, podrás hacer este tipo de paquetes, incluso los desarrolladores más experimentados preguntan en la lista de distribución de debian-devel cuando tienen dudas. La gente allí te ayudará gustosamente.
Para más ayuda sobre esto, lee la Referencia del Desarrollador.
La primera cosa a hacer es encontrar y descargar el paquete original. Supongo que ya tienes el código fuente que obtuviste de la página del autor. Las fuentes de los programas libres de Linux generalmente vienen en formato tar/gzip, con extensión .tar.gz, y generalmente contienen un subdirectorio llamado programa-versión con todas las fuentes en él. Si tu programa viene en otro tipo de archivo (por ejemplo, el fichero termina en ".Z" o ".zip"), descomprímelo con las herramientas adecuadas, o pregunta en debian-mentors si no estás seguro de cómo se puede desempaquetar correctamente (pista: prueba `file archivo.extensión`).
Como ejemplo, usaré el programa conocido como «gentoo», un gestor de ficheros de X11 en GTK+. Observa que el programa ya ha sido empaquetado previamente pero ha cambiado sustancialmente de versión desde que este texto se escribió.
Crea un subdirectorio bajo tu directorio personal llamado «debian» o «deb» o lo que creas apropiado (por ejemplo ~/gentoo/ estaría bien en este caso) Y mueve a él el archivo que has descargado, y descomprímelo de la siguiente forma: `tar xzf gentoo-0.9.12.tar.gz`. Asegúrate de que no hay errores, incluso errores "irrelevantes", porque es muy probable que haya problemas desempaquetando en sistemas de otras personas, cuyas herramientas de desempaquetado puede que no ignoren estas anomalías.
Ahora tienes otro subdirectorio, llamado «gentoo-0.9.12». Muévete a ese directorio y lee en profundidad la documentación que encuentres. Está generalmente en ficheros que se llaman README*, INSTALL*, *.lsm o *.html. Allí encontrarás instrucciones de cómo compilar e instalar el programa (muy probablemente asumirán que lo quieres instalar en el directorio /usr/local/bin: no harás esto, pero eso lo veremos más adelante en Instalación en un subdirectorio, Sección 3.1).
El proceso varía de programa a programa, pero gran parte de los programas modernos vienen con un guión «configure» que configura las fuentes para tu sistema y se asegura de que tu sistema está en condiciones de compilarlo. Después de configurarlo (con `./configure`), los programas generalmente se compilan con `make`. Algunos de ellos soportan `make check` para ejecutarse incluyendo comprobaciones automáticas. Generalmente se instalarán en sus directorios de destino ejecutando `make install`.
Ahora intenta compilar, y ejecutar el programa, para asegurarte de que funciona bien y que no rompe nada más mientras está instalándose o ejecutándose.
También, generalmente, puedes escribir `make uninstall` para eliminar todos los programas instalados, y `make clean` (o mejor `make distclean`) para limpiar el directorio donde se genera el programa.
Deberías empezar a construir tu paquete en un directorio de fuentes completamente limpio, o simplemente con las fuentes recién desempaquetadas.
Para construir correctamente el paquete, debes cambiar el nombre original del programa en letras minúsculas (si no lo está ya), y deberías renombrar el directorio de fuentes a <nombre_de_paquete>-<versión>.
Si el nombre del programa está formado por varias palabras, contráelas a una palabra o haz una abreviatura. Por ejemplo, el paquete del programa "el editor para X de Javi" se podría llamar javiedx o jle4x, o lo que decidas, siempre y cuando no se exceda de unos límites razonables, como 20 caracteres.
Comprueba también la versión exacta del programa (la que se incluye en la versión del paquete). Si el programa no está numerado con versiones del estilo de X.Y.Z, pero con fecha de lanzamiento, eres libre de utilizar la fecha como número de versión, precedida por "0.0" (sólo por si los desarrolladores originales deciden sacar una versión nueva como 1.0). Así, si la fecha de las fuentes es el 19 de diciembre de 1998, puedes utilizar la abreviatura norteamericana 0.0.19981219 como número de versión.
Aún así habrá algunos programas que ni siquiera estén numerados, en cuyo caso deberás contactar con el desarrollador original para ver si tienen algún otro sistema de seguimiento de revisiones.
Asegúrate que estás en el directorio donde están las fuentes del programa y ejecuta lo siguiente:
dh_make -e tu.dirección@de.desarrollador -f ../gentoo-0.9.12.tar.gz
Por supuesto, debes cambiar tanto la cadena «tu.dirección@de.desarrollador» por
tu dirección de correo electrónico para que se incluya en la entrada del
fichero de cambios así como en otros ficheros, como el nombre de fichero de tu
archivo fuente original. Lee dh_make(1)
para más detalles.
Saldrá alguna información. Te preguntará qué tipo de paquete deseas crear. Gentoo es un sólo paquete de binarios - crea sólo un binario, y, por tanto, sólo un fichero .deb - así que seleccionaremos la primera opción, con la tecla «s». Comprueba la información que aparece en la pantalla y confirma pulsando la tecla <intro>.
Como nuevo desarrollador, está desaconsejado crear paquetes multibinarios, o bibliotecas, como se explicó antes. No es extremadamente difícil, pero sí necesita algunos conocimientos más, así que aquí no describiremos el proceso.
Ten en cuenta que deberías ejecutar dh_make sólo una vez, y que no se comportará correctamente si lo haces otra vez en el mismo directorio, ya "debianizado". Esto también significa que usarás un método distinto para crear una nueva revisión o una nueva versión de tu paquete en el futuro. Lee más sobre esto más adelante en Actualizar tu paquete., Capítulo 9.
[ anterior ] [ Contenidos ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ siguiente ]
Guía del nuevo desarrollador de Debian
versión 1.2, 6 de Abril 2001.joy-mg@debian.org
jfs@computer.org
david.martinez@rediris.es
anja_isbilia@yahoo.es