Comment est généré www.debian.org
« Look & feel »
Le site web de Debian est un ensemble de répertoires et de fichiers qui se
trouve dans le répertoire /org/www.debian.org/www
sur la machine
www-master.debian.org. Les pages sont essentiellement des pages
HTML statiques. C'est-à-dire qu'elles ne contiennent pas d'éléments dynamiques
tels que des scripts CGI ou PHP, parce que le site est recopié par des sites
miroirs.
Le site Web de Debian utilise le « Website Meta Language »
(WML) pour générer
les pages HTML, y compris les en-têtes et les pieds-de-page, les titres, les
tables des matières, etc. Bien qu'une page .wml
apparaisse de
prime abord comme étant une page HTML, le HTML n'est qu'un des types
d'informations supplémentaires pouvant être contenus dans des fichiers WML.
Vous pouvez aussi inclure du code Perl dans une page pour vous permettre de
faire à peu près tout ce que vous souhaitez.
Une fois que WML a terminé ses divers filtrages sur un fichier, le résultat final est du HTML. Il faut cependant noter que bien que WML vérifie (et parfois corrige de façon automatique) la validité du code HTML de façon basique, vous devriez installer un outil tel que weblint et/ou tidy pour valider la syntaxe et un minimum de style.
Quiconque contribue régulièrement au site web de Debian devrait installer
WML afin de tester le code et de vérifier que les pages HTML obtenues ont une
apparence satisfaisante. Si vous utilisez Debian, vous pouvez simplement
installer le paquet wml
. Consultez la page
comment utiliser WML pour de plus amples informations.
Sources
Les sources des pages du site web de Debian sont gérées par Git. Ce système de contrôle de version qui permet de voir qui, quoi, quand et même pourquoi a modifié certains fichiers. Git permet un accès aux sources simultané par plusieurs auteurs de façon sûre, ce qui est crucial pour nous, parce que l'équipe du site web de Debian est nombreuse.
Voici quelques informations de base sur comment sont structurées les sources :
- Le répertoire racine du dépôt Git (
webwml
) contient des répertoires dont le nom est celui des langues dans lesquelles ce site est traduit, deux fichiers Makefile et plusieurs scripts. Le nom du répertoire de traduction doit être en anglais et en lettres minuscules, par exemple « french » et non « Français ». - Le fichier
Makefile.common
particulièrement important parce qu'il contient quelques règles communes qui sont appliquées en incluant ce fichier dans les autres Makefile. - Chacun des répertoires de traduction contient aussi un Makefile, divers
fichiers source
.wml
et des sous-répertoires. Les noms des fichiers et des répertoires suivent un certain modèle afin que tous les liens fonctionnent dans toutes les langues. Les répertoires peuvent aussi avoir des fichiers de configuration.wmlrc
qui contiennent des commandes et des préférences pour WML. - Le répertoire
webwml/english/template
contient des fichiers WML spéciaux qui fonctionnent comme modèles (« templates » en anglais). Ils peuvent être appelés depuis n'importe quel autre fichier en utilisant la commande#use
.
Remarque : afin que les changements sur ces fichiers modèles se répercutent aux
fichiers qui les utilisent, des dépendances ont été mises dans les Makefile.
Comme une grande majorité de fichiers utilisent le modèle
template
, ils contiennent une ligne en haut de la page :
#use wml::debian::template
Bien sûr, il y a des exceptions à cette règle.
Scripts
Les scripts sont majoritairement écrits en shell ou en Perl. Quelques-uns sont indépendants, d'autres sont intégrés dans les fichiers sources WML.
- webmaster-team/cron :
Ce dépôt Git contient tous les scripts utilisés pour mettre à jour le site web,
c'est-à-dire les sources des scripts de reconstruction du site
www-master
. - webmaster-team/packages :
Ce dépôt Git contient les sources des scripts pour reconstruire
packages.debian.org
.
Génération du site web
Fichiers WML, templates et scripts shell ou en Perl sont tous les ingrédients nécessaires à la génération du site web de Debian :
- l'essentiel est généré avec WML (à partir du dépôt Git) ;
- la documentation est générée soit par XML DocBook (dépôt Git
ddp
) soit en utilisant les scripts cron des paquets Debian correspondants ; - certaines parties du site sont générées à partir de scripts utilisant d'autres sources, par exemple, la page d'inscription aux listes de diffusion.
Une mise à jour automatique (à partir du dépôt Git et d'autres sources de l’arborescence) est effectuée six fois par jour. À part cela, les vérifications suivantes sont régulièrement lancées sur la totalité du site :
Les journaux de la dernière construction du site web sont accessibles sur https://www-master.debian.org/build-logs/.
Si vous souhaitez contribuer au site, il ne faut pas
simplement modifier les fichiers dans le répertoire www/
ou
ajouter de nouveaux sujets. Prenez plutôt d'abord contact avec
les webmasters.
Comment aider
Nous invitons quiconque à nous aider pour améliorer le site web de Debian. Si vous avez des informations intéressantes sur Debian qui manquent sur le site, prenez contact avec nous et nous veillerons à ce qu'elles soient incluses. Veuillez aussi consulter les journaux de construction mentionnés plus haut et voyez si vous avez des suggestions pour corriger un problème.
Nous avons toujours besoin d'aide pour améliorer le design des pages (d'un point de vue graphique et présentation). Si vous parlez couramment l'anglais, vous pouvez vérifier les pages et nous indiquer toute erreur. Si vous parlez une autre langue, vous pouvez aussi nous aider à traduire les pages ou aider à corriger des erreurs dans les pages déjà traduites. Dans les deux cas, regardez la liste des coordinateurs de traduction et indiquez ces problèmes au responsable de la traduction. Pour de plus amples informations, consultez la page pour les traducteurs.
Comment ne pas aider... (FAQ)
[Q] Je veux ajouter cette fonctionnalité amusante au site web de Debian, je peux ?
Non. Nous voulons que www.debian.org soit le plus accessible possible, ce qui implique
- pas d'extensions propriétaires des navigateurs ;
- pas de navigation utilisant exclusivement des images. Les images peuvent être utilisées pour illustrer, mais l'information sur www.debian.org doit être accessible avec un navigateur en mode texte, comme lynx.
[Q] J'ai une idée sympa à soumettre. Pouvez-vous ajouter truc ou bidule dans le serveur HTTP de www.debian.org ?
[R] Non. Nous voulons que les administrateurs des sites miroirs de www.debian.org aient une tâche facile, donc aucune fonctionnalité exotique de HTTPD, s'il vous plaît. Non, même pas les Server Side Includes (SSI). Une exception a été faite pour la négociation du contenu, parce que c'est la seule façon fiable de permettre une navigation multilingue.