Cómo está hecho www.debian.org
- Apariencia
- Fuentes
- Scripts
- Generar el sitio web
- Cómo ayudar
- Cómo no ayudar... (Preguntas frecuentes)
Apariencia
El sitio web de Debian es una colección de directorios y
archivos ubidcados en /org/www.debian.org/www
en www-master.debian.org. La mayor parte
de las páginas son archivos HTML estáticos. No contienen elementos dinámicos
como scripts CGI o PHP, ya que existen réplicas del sitio web.
El sitio web de Debian usa el lenguaje «Website Meta Language»
(WML) para generar las páginas HTML,
incluyendo cabeceras y pies de página, tablas de contenido, etc.
Aunque un archivo .wml
puede parecer HTML a primera vista, HTML es únicamente uno de los tipos
de información extra que puede utilizarse en WML. También se puede incluir código Perl
en una página y por tanto hacer casi cualquier cosa.
Cuando WML ha terminado de ejecutar sus distintos filtros en un archivo, el producto final es puro HTML. Tenga en cuenta que aunque WML comprueba (y algunas veces corrige «automágicamente») la validez básica del código HTML, debería instalar una herramienta como weblint y/o tidy como comprobador de sintaxis y de estilo.
Todo el que esté contribuyendo de manera regular al sitio web de Debian debería instalar
WML para probar el código y asegurarse de que las páginas HTML resultantes parecen correctas. Si
está ejecutando Debian, simplemente instale el paquete wml
.
Para más información, consulte la página sobre uso de WML.
Fuentes
Usamos Git para almacenar las fuentes del sitio web de Debian. El sistema de control de versiones nos permite mantener un registro de todos los cambios y podemos ver quién cambió qué, cuándo e incluso por qué. Git ofrece una forma segura de controlar la edición concurrente de archivos fuente por parte de múltiples autores, una tarea crucial para el equipo de la web de Debian, debido a que es bastante numeroso.
Aquí hay más información sobre cómo se estructuran las fuentes:
- El directorio superior en el repositorio Git (
webwml
) contiene directorios con los nombres de los idiomas de las distintas páginas, dos «Makefiles» y varios scripts. Los nombres de directorio para páginas traducidas debería ir en inglés y minúsculas, por ejemplogerman
, noDeutsch
. - El archivo
Makefile.common
es especialmente importante, pues contiene algunas reglas comunes que son aplicables mediante la inclusión de este archivo en otros «Makefiles». - Todos los subdirectorios de cada idioma también contienen «Makefiles», archivos fuente
.wml
y subdirectorios adicionales. Los nombres de los archivos y directorios siguen un cierto patrón, de tal manera que los enlaces funcionen para todas las páginas traducidas. Algunos directorios también incluiyen un archivo.wmlrc
de configuración con órdenes adicionales y preferencias para WML. - El directorio
webwml/english/template
contiene archivos WML especiales que funcionan como plantillas. Pueden ser referenciados desde todos los demás archivos utilizando la orden#use
.
Por favor, tenga en cuenta: con objeto de que los cambios en las plantillas se propaguen a los archivos
que las usan, los archivos dependen de ellas en los «Makefiles».
Una amplia mayoría de los archivos utiliza la plantilla template
,
la dependencia genérica, teniendo la siguiente línea en la parte superior:
#use wml::debian::template
Por supuesto, hay excepciones a esta regla.
Scripts
Los scripts están escritos mayormente en código de shell o en Perl. Algunos de ellos funcionan de manera independiente y otros están integrados en los archivos fuente de WML.
- «webmaster-team/cron»:
este repositorio Git contiene todos los scripts que se usan para actualizar el sitio web de Debian,
es decir, las fuentes para los scripts de construcció de
www-master
. - «webmaster-team/packages»:
este repositorio Git contien las fuentes de los scripts de actualización de
packages.debian.org
.
Generar el sitio web
WML, las plantillas y los scripts de shell y Perl son todos los ingredientes que se necesitan para generar el sitio web de Debian:
- La mayor parte se genera utilizando WML (desde el repositorio Git).
- La documentación se genera bien utilizando DocBook XML (repositorio Git de
ddp
) o con scripts de cron desde los correspondientes paquetes Debian. - Algunas partes del sitio se generan mediante scripts utilizando otras fuentes, por ejemplo las páginas de (de)suscripción de las listas de correo.
Seis veces al día se ejecuta una actualización automática (desde los repositorios Git y otras fuentes). Aparte de esto, regularmente ejecutamos las siguiente comprobaciones sobre la totalidad del sitio web:
Los registros actuales de construcción para el sitio web pueden localizarse en https://www-master.debian.org/build-logs/.
Si le gustaría contribuir en este sitio, no empiece
simplemente añadiendo o editando elementos en el directorio www/
.
Por favor, contacte primero con los administradores de la web.
Cómo ayudar
Animamos a todo el mundo a ayudar con el sitio web de Debian. Si tiene alguna información valiosa relacionada con Debian que piense que le falta a nuestras páginas, contacte con nosotros: la veremos incluida. También consulte los registros de construcción mencionados arriba por si tiene sugerencias para arreglar algún fallo.
Además estamos buscando personas que puedan ayudar con el diseño (gráficos, estructura y apariencia, etc.). Si habla inglés con fluidez, por favor considere revisar nuestras páginas e infórmenos de los errores encontrados. Si habla otra lengua, quizá quiera ayudara traducir páginas existentes o arreglar fallos en las páginas ya traducidas. En ambos casos, por favor consulte la lista de coordinadores de traducción y contacte con la persona responsable. Para más información, vea nuestra página para traductores.
Cómo no ayudar... (Preguntas frecuentes)
[P] Quiero incluir en el sitio web de Debian este detalle vistoso, ¿puedo?
[R] No. Queremos que www.debian.org sea todo lo accesible que se pueda, por tanto
- no usamos extensiones específicas de un navegador,
- no dependemos únicamente de imágenes. Las imágenes pueden utilizarse para clarificar, pero la información de www.debian.org tiene que mantenerse accesible para navegadores de web de sólo texto, como lynx.
[P] Tengo una buena idea. ¿Pueden habilitar esto o esto otro en el servidor HTTP de www.debian.org, por favor?
[R] No. Queremos hacer la vida más fácil a los administradores de las réplicas de www.debian.org, por tanto: «no a las características especiales de HTTPD, por favor». No, ni siquiera SSI («Server Side Includes»). Se ha hecho una única excepción con la negociación de contenido. Esto se debe a que es la única forma robusta de dar servicio en múltiples idiomas.