Traducción de las ayudas de aplicaciones y utilidades del entorno de escritorio Gnome | ||
---|---|---|
Anterior |
Pues vamos con el último paso: la entrega al repositorio. Esta fase es, sin duda, la más compleja, ya que es necesario conocer el funcionamiento de numerosas herramientas: cvs, make, db2html, etc. Si queremos ser totalmente rigurosos sería incluso necesario disponer de un entorno para compilar paquetes de desarrollo Gnome. Todo esto no es, desde luego, una tarea trivial, por lo que si os véis superados nuevamente, dejad este tipo de tareas para los coordinadores. Tampoco quisiera desanimaros, a la postre es todo cuestión de remangarse. En las próximas secciones intentaré acercaros mis experiencias con las entregas.
Para realizar la entrega de la documentación necesitamos en primer lugar obtener una copia del paquete al que pertenezca. Esta copia la obtenemos del repositorio CVS de Gnome utilizando los siguientes comandos:
bash-2.04$ cd /gnome/cvs bash-2.04$ export CVSROOT=:pserver:anonymous@anoncvs.gnome.org:/cvs/gnome bash-2.04$ cvs login (Logging in to anonymous@anoncvs.gnome.org) CVS password: <retorno> bash-2.04$ cvs -z3 co gnome-applets |
![]() | Este comando utiliza la rama principal del paquete, conocida como «HEAD». En algunas ocasiones esta rama puede no ser la apropiada, y no deberían entregarse paquetes copiados de una rama en otra diferente (al menos sin estar seguro de lo que se hace). |
Veamos ahora una lista de los ficheros que tendremos que manipular cuando realicemos una entrega:
./gnome-applets/ChangeLog ./gnome-applets/configure.in ./gnome-applets/whereami/ChangeLog ./gnome-applets/whereami/docs/Makefile.am ./gnome-applets/whereami/docs/es/Makefile.am ./gnome-applets/whereami/docs/es/figures ./gnome-applets/whereami/docs/es/figures/whereami_applet.png ./gnome-applets/whereami/docs/es/whereami.sgml ./gnome-applets/whereami/docs/es/whereami_applet.sgml ./gnome-applets/whereami/docs/es/license.sgml ./gnome-applets/whereami/docs/es/licencia-es.sgml ./gnome-applets/whereami/docs/es/licencia-nota-es.sgml ./gnome-applets/whereami/docs/es/authors.sgml ./gnome-applets/whereami/docs/es/topic.dat ./gnome-applets/whereami/docs/es/whereami_applet-es.omf |
Lo primero que debemos hacer es copiar los ficheros de la traducción es la estructura de directorios del paquete. Suponiendo que nuestro directorio de trabajo es /home/mbarreiro/traducciones/whereami, las comandos serían los siguientes
bash-2.04$ cd /gnome/cvs/gnome-applets bash-2.04$ cd whereami/docs bash-2.04$ mkdir es bash-2.04$ cd es bash-2.04$ cp -rf /home/mbarreiro/traducciones/whereami/* . |
![]() | Es importante asegurarnos de que no copiamos otros ficheros o directorios, como por ejemplo el directorio whereami que se genera al crear la documentación en formato html, o las copias de seguridad creadas al editar los ficheros (whereami.sgml~). |
Con esto tendremos todos los ficheros en su lugar de destino, a falta del fichero Makefile.am. Veamos cómo conseguir y actualizar este fichero:
bash-2.04$ cd /gnome/cvs/gnome-applets/whereami/docs/es bash-2.04$ cp ../C/Makefile.am . |
gnome-applets/whereami/docs/es/Makefile.am
figs = \ figures/whereami_applet.png docname = whereami_applet lang = es omffile = whereami_applet-C.omf sgml_ents = whereami.sgml \ license.sgml \ licencia-es.sgml \ licencia-nota-es.sgml \ authors.sgml include $(top_srcdir)/sgmldocs.make dist-hook: app-dist-hook |
Si la traducción es nueva, habrá que incluir el código de idioma para que se genere e instale la nueva documentación. Para ello modificaremos el fichero docs/Makefile.am:
gnome-applets/whereami/docs/Makefile.am
SUBDIRS = C es it |
gnome-applets/whereami/ChangeLog
2001-07-28 Manuel de Vega barreiro <mbarreiro@red.madritel.es> New Spanish Translation * docs/es/* * docs/Makefile.am |
A nivel de paquete debemos modificar el fichero configure.in, incorporando las siguientes modificaciones:
gnome-applets/configure.in
... AC_SUBST(CANVAS_PIXBUF_LIBS) ALL_LINGUAS="az ca cs da de el en_GB es et eu fi fr ga gl hu it ja ko lt nl nn no pl pt pt_BR ro ru sk sl sv tr uk wa zh_CN.GB2312 zh_TW.Big5" AM_GNOME_GETTEXT ... AC_OUTPUT([ gnome-applets.spec Makefile macros/Makefile ... whereami/docs/it/Makefile whereami/docs/es/Makefile gtik/Makefile ... |
![]() | Observa que el código de cada idioma se añade respetando el orden alfabético, ya que en caso contrario todo el mundo se volvería loco al introducir un nuevo idioma. |
Como de costumbre, debemos reflejar todos los cambios en el ChangeLog, esta vez a nivel de paquete, para que el resto de desarrolladores conozca los cambios que hemos realizado:
gnome-applets/ChangeLog
2001-07-28 Manuel de Vega barreiro <mbarreiro@red.madritel.es> Whereami help Spanish translation * configure.in * whereami/docs/Makefile.am * whereami/docs/es/* |
![]() | Los ficheros ChangeLog y configure.in sufren frecuentes cambios, por lo que conviene modificarlos justo antes de realizar la entrega. |
Ésta es, por así decirlo, la prueba del nueve. Se trata de compilar el paquete con las modificaciones que hemos incorporado. El problema es que compilar paquetes sacados directamente del repositorio CVS no es una tarea fácil. Esto se debe más a las dependencias cruzadas con otros paquetes y librerías, que al propio paquete.
![]() | Jugar a compilar e instalar paquetes en desarrollo es la forma mas fácil de conseguir un escritorio inutilizable. No lo hagas en un sistema en producción, ni en un ordenador del que dependa tu trabajo diario. |
Dicho todo esto, veamos los comandos para compilar el paquete:
bash-2.04$ cd /gnome/cvs/gnome-applets bash-2.04$ ./autogen.sh bash-2.04$ make |
Para realizar la entrega debemos presentarnos en nuestra cuenta personal y ejecutar los siguientes comandos:
![]() | Puedes solicitar una cuenta personal en el repositorio CVS de la siguiente manera:
|
bash-2.04$ cd /gnome/cvs bash-2.04$ export CVSROOT=:pserver:barreiro@cvs.gnome.org:/cvs/gnome bash-2.04$ cvs login (Logging in to barreiro@cvs.gnome.org) CVS password: <clave de acceso> bash-2.04$ |
En este caso los comandos necesarios para la entrega serían:
bash-2.04$ cd /gnome/cvs/gnome-applets/whereami/docs bash-2.04$ cvs add es bash-2.04$ cvs add es/* bash-2.04$ cvs add es/figures/* bash-2.04$ cd .. bash-2.04$ cvs commit bash-2.04$ cd /gnome/cvs/gnome-applets bash-2.04$ cvs commit configure.in ChangeLog bash-2.04$ cvs logout |
Os recomiendo repasar la lista, ya que a veces podemos enviar ficheros que no forman parte de esta entrega por error. Éste es el motivo por el que acostumbro a realizar la entrega en dos partes.
En este caso los comandos necesarios para la entrega serían:
bash-2.04$ cd /gnome/cvs/gnome-applets/whereami bash-2.04$ cvs commit bash-2.04$ cd /gnome/cvs/gnome-applets bash-2.04$ cvs commit ChangeLog bash-2.04$ cvs logout |