Contribuer

Webmestres

L'équipe Web maintient et développe les sites de la FSFE — allant de fsfe.org aux sites de projet ou de campagne. Les webmestres sont des volontaires qui améliorent le visage que l'organisation donne au monde et apportent des solutions techniques à nos efforts sur le Web.

Apprenez à nous connaître, apprenez à connaître le site

Si vous voulez avoir une idée de ce à quoi correspond travailler sur le site de la FSFE, le meilleur point de départ est de venir discuter avec nous. Certains des webmesters sont régulièrement sur le canal freenode #fsfe, où nous seront ravis de vous rencontrer et de répondre à vos questions  ! Pour connaitre ce qui travaillent sur le site, et avec la FSFE dans son ensemble, visitez la page sur notre équipe.

Vos coordinateurs web Nicolas Jean et Andreas Tolf Tolfsen.

Introduction

Les technologies employées pour la maintenance des pages web de la FSFE apparaitront sans doute familières à beaucoup de développeurs ou auteurs, et leur description pourrait intéresser ceux qui ne les ont pas encore découvertes.

Les traducteurs et bénévoles occasionnels seront probablement principalement à faire avec  :

  • XHTML – grâce auquel les pages web son générées  ;
  • Subversion – pour le versionnage des fichiers source  ;
  • Trac – pour la gestion des droits d'accès, le suivi des dysfonctionnements et autres services.

Les volontaires qui souhaitent s'engager plus profondément dans la maintenance du site devraient également être familiers de :

  • Perl – pour la maintenance et les scripts de création des pages ;
  • Apache – le serveur web

Comprendre le mécanisme de construction des pages web

Les pages web de fsfe.org sont maintenues comme un ensemble de fichiers XML. Le serveur web génère automatiquement les pages HTML à partir de ces fichiers XML, toutes les cinq minutes. Ainsi, toute l'édition des pages se fait dans les fichiers XML, et on ne travaille jamais directement sur les fichiers HTML.

Chaque page de fsfe.org est nommée nomdelapage.langue.html (langue étant le code à deux lettres ISO-639 de la langue, comme "en" pour l'anglais ou "fr" pour le français). Les fichiers source sont nommés nomdelapage.langue.xhtml.

Certaines pages ont un contenu dynamique : hormis les textes fixes tirés du fichier XHTML, elles contiennent des informations provenant d'un ou plusieurs fichiers XML. Lorsqu'une telle page est construite, le système prend les fichiers XML traduits s'ils sont disponibles, et prend la version anglaise de ces fichiers sinon. De telles pages peuvent donc afficher certaines parties traduites alors que d'autres seront encore en anglais. La page d'accueil, la page des nouvelles, et la page des évènements par exemple, sont construites ainsi.

Accéder aux pages Web

Les fichiers sources sont stockés sur le dépôt subversion fsfe-web, lui-même hébergé sur le serveur subversion de la FSFE. D'autres services sont disponibles sur l'instance Trac.

Pour avoir accès à ces outils, suivez les instructions suivantes :

  • Si vous êtes un Fellow de la FSFE, vous avez déjà accès en lecture à subversion et trac. Il vous suffit de vous connecter avec vos noms d'utilisateurs et mot de passe habituels.

  • Sinon, vous pouvez créer un compte invité pour subversion et trac en remplissant le formulaire suivant : https://trac.fsfe.org/fsfe-web/register. Dès que vous vous serez enregistré, vous aurez accès en lecture au dépôt et au trac (notez que votre nom d'utilisateur sera préfixé par guest-). Un message automatique sera envoyé à l'administrateur qui donnera les droits d'écriture dès que possible.

Pour obtenir un accès en écriture au dépôt subversion, au wiki du Trac et au système de tickets, envoyez votre demande à system-hackers@fsfeurope.org.

Rapatrier une version de travail depuis Subversion

Le dépôt subversion est constitué de deux éléments majeurs pour le site de la FSFE : le SVN trunk (tronc SVN) qui est utilisé pour construire les pages du site public http://fsfe.org et la branche «test» qui est utilisée pour générer le site de test http://test.fsfe.org.

Pour le travail de tous les jours, comme ajouter des nouvelles, traduire des pages ou introduire de petites corrections, vous devrez récupérer le tronc :

svn --username VOTRE_NOM_DE_FELLOW co https://svn.fsfe.org/fsfe-web/trunk

Pour travailler sur des changements plus profond, comme débugger de nouvelles fonctionnalités qui pourraient casser le site, vous êtes invités à utiliser la branche de test du dépôt SVN :

svn --username VOTRE_NOM_DE_FELLOW co https://svn.fsfe.org/fsfe-web/branches/test

À noter qu'une version complète du dépôt requiert environ 160 Mo. Aussi, si vous pensez travailler uniquement sur certaines parties, vous pouvez rapatrier uniquement celles-ci. Vous pouvez parcourir la branche SVN en ligne pour trouver ce qui vous intéresse.

Pour rapatrier le SVN du "Document Freedom Day", utilisez:

svn --username VOTRE_NOM_DE_FELLOW co https://svn.fsfe.org/df-web/trunk

Travailler avec le dépôt

Dans subversion, la substitution de mot-clé doit être activée volontairement sur chaque fichier. Comme nous utilisons quelques mot-clés sur les fichiers .xml et .xhtml (par exemple le mot-clé $Author$ en pied de page), vous devriez activer les mot-clés automatiques en ajoutant dans votre fichier local ~/.subversion/config :

  enable-auto-props = yes

  [auto-props]
  *.xml = svn:keywords=Date Author Id Revision;svn:mime-type=text/xml;svn:eol-style=native
  *.xhtml = svn:keywords=Date Author Id Revision;svn:mime-type=text/xhtml;svn:eol-style=native
      

Après avoir récupéré le dépôt une première fois, vous n'aurez qu'à exécuter chaque fois

svn update

juste avant de vous mettre à travailler sur un fichier donné.

Si vous souhaitez ajouter de nouveaux fichiers au dépôt, exécutez

svn add nomdufichier

Pour permettre la substitution de mots-clés pour un nouveau fichier, exécutez

svn propset svn:keywords "Date Author Id Revision" nomdufichier

Pour envoyer vos changements au serveur, qu'il s'agisse d'un nouveau fichier ou de la modification d'un fichier existant, exécutez

svn commit nomdufichier

et votre éditeur par défaut s'ouvrira, vous permettant d'indiquer une courte description des changements apportés.

Si vous êtes habitué à travailler avec CVS, vous vous adapterez facilement à SVN. Comme vous l'avez constaté, les commandes de base sont très ressemblantes. Pour en savoir plus, vous pouvez consulter un aperçu des différences entre CVS et SVN sur Subversion for CVS Users ainsi qu'un aperçu des différences entre commandes sur CVS to SVN Crossover Guide.

Vous pouvez télécharger un manuel détaillé de SVN, le Subversion book (nous utilisons la version 1.5 de SVN).

Outils de coordination

Les travaux sur les pages du site sont coordonnés sur la liste de diffusion des webmestres (en anglais).

L'instance Trac fsfe-web fournit d'autres outils liés à la coordination comme un navigateur de dépôt SVN en ligne, un traqueur de bogues et un wiki.

Vous pourrez trouver plus d'informations sur l'utilisation du trac sur la page TracGuide du wiki.

Si vous souhaitez conserver une trace de toutes les modifications apportées aux sources des pages web, souscrivez à la liste de diffusion des notifications, vous recevrez ainsi un mail à chaque changement posté à l'arbre des sources.

Les responsabilités incombant à l'accès en écriture

Si vous avez un accès en écriture aux pages web, inscrivez-vous à la liste de diffusion des webmestres.

Gardez à l'esprit que toutes vos modifications seront effectives et visibles automatiquement, sans autre action de la part de quiconque. En conséquence, il y a un certain nombre de choses que nous vous demandons lorsque vous postez des changements ou des nouveaux fichiers  :

  • La FSFE est responsable du contenu des pages web. Ne postez pas de modifications qui changent le sens du texte sans l'approbation préalable d'un membre de l'équipe de la FSFE. (Ceci n'est pas nécessaire lors de la traduction d'un contenu existant)

  • Lorsque vous postez des traductions, et qu'il y a une chance que d'autres puissent la relire, utilisez cette opportunité. Vous pouvez utiliser la liste de diffusion des traducteurs pour demander une relecture. Que vous traduisiez des pages ou les relisiez, nous vous encourageons à vérifier l'orthographe de vos fichiers à l'aide d'outils automatisés, comme GNU aspell, ispell ou votre correcteur orthographique préféré. Pour utiliser GNU aspell par exemple sur un système Debian GNU/Linux, il vous suffit d'installer les paquets aspell et aspell-XX (où "XX" est votre code de langue), et de lancer ensuite la commande

    aspell -H -d langue -c file.xhtml

    (où "langue" est le nom du dictionnaire pour votre langue ; l'option -d peut être omise si votre locale UNIX est la même que celle du dictionnaire à utiliser).

  • Assurez-vous que tous les fichiers sont des XML bien formés. Par défault, le serveur SVN va vérifier la syntaxe XML des fichiers aux extensions .xml et .xhtml et refusera les changements si des erreurs XML sont trouvées. Pour éviter cela, vérifiez vos fichiers avant de les envoyer, avec l'une des solutions suivantes :

    Le script /trunk/tools/validate.pl vous aide à trouver les erreurs dans les balises. Du code XML mal écrit enraye le processus de construction automatique des pages Web et bloque les mises à jour ultérieures du site Web. Si vous suspectez le processus d'être bloqué, vous pouvez vérifier la construction en cours.

    Le script validate.pl requiert le module Perl XML::LibXML; si celui-ci n'est pas installé sur votre système, vous pouvez valider les fichiers avec votre validateur XML favori. Par exemple en ligne de commande vous pouvez utiliser xmllint, du projet libxml2.

    Si vous utilisez une distribution Debian GNU/Linux, installez le paquet libxml2-utils  ; lancez la commande

    xmllint --noout fichier.xhtml

    fichier représente le nom du fichier que vous souhaitez vérifier, et lisez les éventuels messages d'erreur.

  • Assurez-vous que l'encodage du fichier soit consistant avec le contenu de l'attribut " encoding " déclaré sur la première ligne du fichier. Par exemple, si votre fichier est codé en « UTF-8 » (également connu sous le nom de « latin-1 »), la première ligne du fichier devrait être

    <?xml version="1.0" encoding="UTF-8" ?>

    Un autre encodage valide est l'unicode, ou " utf-8 ". Si vous souhaitez modifier l'encodage d'un fichier, vous pouvez utiliser l'utilitaire standard iconv, comme dans l'exemple suivant (qui convertit un fichier de l'encodage " latin1 " vers l'" UTF-8 ") ;

    iconv -f LATIN1 -t UTF8 fichieroriginal > fichierdesortie

Coordonnez-vous avec les autres personnes qui ont également un accès SVN afin de vous assurer que les traductions et modifications apportées par les contributeurs qui n'ont pas d'accès en écriture sont expédiées correctement après avoir été relues. Bien sûr, vérifiez ces fichiers avant de les envoyer comme vous vérifiez vos propres fichiers.

License du code source

Lorsque vous introduisez du code serveur (ex : PHP, Perl) ou du code java script au site web, veuillez respecter notre politique de licences. Plus spécifiquement, cela signifie :

  • Lorsque vous écrivez un script pour le compte de la FSFE, merci de le mettre sous licence AGPLv3+ (il s’agit de la licence AGPL version 3 ou toute version ultérieure)
  • Lorsque vous introduisez des scripts écrits par un tiers, veuillez vous assurez qu’ils sont sous une licence libre listée sur http://www.gnu.org/licenses/license-list.html
  • Lorsque vous écrivez un script pour la FSFE (mais que vous n’êtes pas employé) nous préférons avoir le script sous licence AGPLv3+, GPLv3+, LGPLv3+, Apache 2.0 ou CC0, publier le code sous une licence libre est une obligation pour la FSFE.

Utiliser des licences personnalisées

Si vous utilisez des images ou tout autre media qui a été mis sous une Creative Commons license ou tout autre licence, vous pouvez vous assurer que les bonnes informations soient affichées en les ajoutant à la fin du document avant </html>. Voici trois exemples :


  <legal type="cc-license">

  <license>https://creativecommons.org/licenses/by-sa/3.0/</license>

    <notice>This work is published under the Creative Commons BY-SA
  3.0 Unported license by John Doe</notice>
  </legal>


  <legal>
    <license>http://www.gnu.org/licenses/fdl-1.3.txt</license>
    <notice>This page is published under the GNU Free Documentation
  License 1.3 or later</notice>
  </legal>

  <legal>
    <notice>This work is published undere the CC-BY-SA 3.0 Unported
  license or the <a href="http://artlibre.org/">Licence Art Libre
  1.3</a> at your option, etc.</notice>
  </legal>


      

Autres sites de la FSFE

En dehors du site principal fsfe.org, les volontaires sont encouragés à contribuer aux autres sites FSFE et Fellowship  vous pourrez trouver plus d'information sur ces sites sur le wiki FSFE.