Verá que existen otros ficheros en el subdirectorio debian/, muchas de las cuales tendrán el sufijo `.ex', que indica que son ejemplos. Si quieres o deseas usar cualquiera de éstas, lee la información relativa (pista: Manual de Política), renombre-lo para eliminar el sufijo `.ex' , y modifíquelo y el fichero de reglas si fuera necesario. Algunos de estos ficheros, los más usados, se explican en las siguientes secciones.
Cualquier detalle extra en discrepancias entre el programa original y su versión debianizada debería estar documentada aquí. Dh_make crea una por defecto, y éste es su aspecto:
gentoo for DEBIAN ---------------------- <possible notes regarding this package - if none, delete this file> Josip Rodin <jrodin@jagor.srce.hr>, Wed, 11 Nov 1998 21:02:14 +0100
Dado que no tenemos que poner nada aquí - está permitido borrarla. Por cierto, sí, puede renombrar el fichero a README.Debian :-)
Una de las cosas más molestas de los programas es cuando pasas mucho tiempo y esfuerzo adaptando un programa y una actualización destroza todos tus cambios. Debian arregla este problema marcando los ficheros de configuración de forma que cuando actualizas un paquete no se le pregunta si desea mantener la nueva configuración o no. Lo consigue poniendo la ruta completa a cada fichero de configuración (se encuentran generalmente en /etc) una por línea, en un fichero llamado 'conffiles'.
Gentoo tiene un fichero de configuración, /etc/gentoorc, y meteremos éste en el fichero 'conffiles'. No es necesario tener este último fichero si su programa no tiene ningún fichero de configuración.
Este fichero especifica los directorios que se necesitan pero que por alguna razón no crea un proceso de instalación normal (make install). Por defecto, tiene éste aspecto:
1 usr/bin 2 usr/sbin
Observe que la barra precedente no está incluida. Normalmente lo cambiaríamos para gentools a algo así:
1 usr/X11R6/bin 2 usr/X11R6/man/man1
pero estos directorios ya se crean en el Makefile, así que no necesitaremos este fichero y lo podremos borrar.
Los ficheros que terminan en *.ex son ejemplos de cómo añadir ese tipo de soporte en el paquete. Si usa uno de ellos, editelo y elimine la extensión .ex. Si no lo quiere usar, simplemente borrelo.
Su programa debería tener una página de manual. Si no la tiene, éste es un
esqueleto que puede rellenar. Lea las páginas de manual para
man(7)
para una breve descripción de cómo crear una página de
manual. Asegúrese de renombrar este fichero al nombre del programa y modificar
la extensión para indicar la sección a la que debería ir. Aquí hay una corta
lista:
Section | Deguiónion | Notes 1 Comandos de Usuario Programas ejecutables o guiones. 2 Llamadas al Sistema Funciones dadas por el kernel. 3 Llamadas a Librerías Funciones dadas por las librerías del sistema. 4 Ficheros Especiales Generalmente se encuentra en /dev 5 Formatos de Fichero Por ejemplo, el formato del /etc/passwd 6 Juegos U otros programas frívolos. 7 Paquetes de Macros Como las macros de man. 8 Administración del Sist. Programas que sólo ejecuta el superusuario. 9 Rutinas del Kernel Llamadas al sistema no estándar.
Así que la página de manual de gentoo debería llamarse gentoo.1, o gentoo.1x porque es un programa de X11. Cómo no había página de manual en las fuentes originales la escribí del ejemplo.
Los usuarios de X Windows tendrán un gestor de ventanas con menús que pueden adaptarse para lanzar programas. Si tienen instalado el paquete de menu de Debian, se creará un conjunto de menús para cada programa del sistema para ellos. No se exige en la política de Debian, pero los usuarios seguramente lo apreciarán. Podemos añadir a Gentoo a los menús editando este fichero. Aquí está el fichero que dh_make crea por defecto:
?package(gentoo):needs=X11|text|vc|wm section=Apps/vea-manual-menu\ title="gentoo" command="/usr/bin/gentoo"
El primer campo especifica qué tipo de interfaz necesita el programa (esto es, texto o X11). La siguiente es el menu y submenu dónde debería aparecer. La lista actual de secciones está en /usr/share/doc/debian-policy/menu-policy.html/ch2.html#s2.1 El tercero es el nombre del programa. El cuarto es el icono para el programa o nada si no hay ninguno. El quinto es el texto que aparecerá en el menu. Finalmente, el sexto es la orden que ejecuta el programa.
Ahora cambiaremos la entrada de menu a ésta:
?package(gentoo):needs=X11 section=Apps/Misc \ title="gentoo" command="/usr/X11R6/bin/gentoo"
Vea menufile(5)
, update-menus(1)
y
/usr/share/doc/debian-policy/menu-policy.html/ para más información.
Puede usar este fichero, junto con los programas uscan(1)
y
uupdate(1)
(en el paquete devscripts) para vigilar el servidor de
donde obtuvo las fuentes originales.
Esto es lo que he puesto yo:
# watch control file for uscan # Site Directory Pattern Version Guión ftp.obsession.se /gentoo gentoo-(.*)\.tar\.gz debian uupdate
Pista: conectese a Internet, e intente ejecutar el programa "uscan" en el directorio donde ha creado el fichero. Vea la página de manual para más detalles.
Si su paquete tiene documentación en HTML o de otro tipo (excepto páginas de
manual y documentos info), debería usar el fichero `doc-base' para registrarlo
para que el usuario pueda encontrarlo con por ejemplo dhelp(1)
o
dwww(1)
.
Este es el aspecto del fichero doc-base:
Document: gentoo Title: Gentoo Manual Author: Emil Brink Abstract: This manual describes what Gentoo is, and how it can be used. Section: Apps/Tools Format: HTML Index: /usr/share/doc/gentoo/html/index.html Files: /usr/share/doc/gentoo/html/*.html
Para información sobre el formato del fichero, vea install-docs(8)
y el manual doc-base en /usr/doc/doc-base/doc-base.html/index.html.
Estos ficheros se llaman guiones de gestión, y debería intentar evitarlos si puede porque son demasiados complejos. Para más información lea el Manual de Empaquetamiento.
Por ahora, debería intentar evitar editar manualmente estos guiones si puede porque suelen hacerse muy complejos. Para más información lea el Manual de Empaquetamiento (sección 6) y eche un vistazo a los ejemplos dados por dh_make.
Ahora estamos preparados para construir el paquete.
jrodin@jagor.srce.hr
jfs@computer.org