Bijdragen

Webmasteren

Het Web team beheert en ontwikkelt de websites van FSFE — van fsfe.org tot project- en campagnesites. Webmasters zijn vrijwilligers die het gezicht van de organisatie naar de wereld toe en de technische oplossingen van onze webinspanningen verbeteren.

Ons en de website leren kennen

Als u een idee wil krijgen over waaruit het werk aan de FSFE-website bestaat, is de beste manier om een chat met ons te hebben. Sommige webmasters zijn regelmatig te vinden op #fsfe op freenode, waar we u graag ontmoeten en uw vragen beantwoorden! Om uit te vinden wie er aan het website werkt, en met FSFE als geheel, bezoekt u onze teampagina.

Uw webcoördinatoren, Nicolas Jean en Andreas Tolf Tolfsen.

Introductie

De technologieën en programma's die gebruikt worden om een FSFE-webpagina te beheren zouden al bekend moeten zijn bij veel ontwikkelaren en auteurs en zouden interessant kunnen zijn voor hen de ze nog niet hebben ontdekt.

Vertalers en gelegenheidsvrijwilligers zullen waarschijnlijk alleen in contact komen met:

  • XHTML – van waaruit de webpagina's worden gegenereerd
  • Subversion – voor versiecontrole van webpaginabronnen
  • Trac – voor permissiemanagement, issue tracking en andere verwante diensten.

Vrijwilligers die interesse hebben om meer te weten over het beheer zouden ook kennis moeten hebben van:

  • Perl – voor het beheer en de scripts om pagina's te maken
  • Apache – de webserver

Begrijpen hoe de webpagina's worden opgebouwd

De webpagina's van fsfe.org worden beheerd als een verzameling XML-bestanden. De webserver genereert de HTML-pagina's automatisch iedere tien minuten uit deze XML-bestanden. Daarom vinden alle bewerkingen van de pagina's plaats in de XML-bestanden en wordt de HTML nooit direct bewerkt.

Iedere pagina op fsfe.org heeft als naam paginanaam.taal.html (taal is de tweeletterige ISO-639 code van de taal, zoals "en" voor Engels of "de" voor Duits). De bronbestanden hebben als naam paginanaam.taal.xhtml.

Sommige pagina's hebben een dynamisch deel: buiten de vaste teksten uit het XHTML-bestand bevatten zij informatie uit een of verschillende XML-bestanden. Als zo'n pagina word opgebouwd neemt het systeem het vertaalde XML-bestand als het beschikbaar is, en valt het terug op de Engelse versie van die XML-bestanden die nog niet zijn vertaald. Op die manier kunnen zulke pagina's zijn opgebouwd uit delen waarvan de tekst is vertaald en andere delen die nog steeds in het Engels zijn. Voorbeelden van zulke pagina's zijn de startpagina, de nieuwspagina en de evenementenpagina.

Toegang krijgen tot de webpagina's

De bronbestanden voor de webpagina's zijn opgeslagen op de fsfe-web subversion repository die gehost word op de FSFE subversionserver. Andere diensten zijn beschikbaar op de verwante trac instance.

Om toegang tot deze diensten te krijgen hoeft u alleen deze instructies te volgen:

  • Als u een Fellow van de FSFE bent dan heeft u al leestoegang tot subversion en trac. Log in met uw gewone Fellowship-gebruikersnaam en wachtwoord.

  • Iedereen kan een gastaccount registreren voor subversion en trac door gebruik te maken van het webformulier op https://trac.fsfe.org/fsfe-web/register. Meteen als u zich registreert heeft u leestoegang tot de subversion repository en kan u inloggen op de trac-site (let alstublieft op dat een guest- voorvoegsel aan de door u gekozen gebruikersnaam zal worden toegevoegd).

Om schrijftoegang op de subversion repository, de trac wiki en het ticket system te verkrijgen schrijft u gewoon aan system-hackers@fsfeurope.org

Een SVN-tak vinden om aan te werken

De subversion repository heeft twee hoofdbases met code voor de FSFE-website: de SVN trunk ("basis"), die wordt gebruikt om de productie-instance van te website te bouwen op http://fsfe.org/ en de test tak, die gebruikt wordt om http://test.fsfe.org/ te bouwen.

Voor dagelijks werk, zoals het toevoegen van nieuwsberichten, het vertalen van pagina's (of zelfs het ontwikkelen van kleine veranderingen aan de website) zou u de SVN-basis moeten bekijken:

svn --gebruikersnaam UW_FELLOWSHIP_NAAM co https://svn.fsfe.org/fsfe-web/trunk

Om aan belangrijke veranderingen aan de website te werken, zoals het debuggen van nieuwe dingen die mogelijk de site zouden kunnen breken, wordt u aangemoedigd om te kijken naar de test-tak van de SVN repository:

svn --gebruikersnaam UW_FELLOWSHIP_NAAM co https://svn.fsfe.org/fsfe-web/branches/test

Let alstublieft op dat een volledig werkende kopie ongeveer 160 MB nodig heeft; als u van plan bent om aan een deel van de website te werken dan kan u kijken naar alleen de mappen waarin u interesse heeft. U kan de SVN-tak online doorzoeken om uit te vinden waarin u geïnteresseerd bent.

Om de Document Vrijheidsdag SVN te bekijken gebruikt u:

svn --gebruikersnaam UW_FELLOWSHIP_NAAM co https://svn.fsfe.org/df-web/trunk

Werken met de repository

In subversion moet keyword substitution ("trefwoord vervangen") expliciet op ieder bestand zijn toegestaan. Omdat we enkele trefwoorden gebruiken op .xml en .xhtml-bestanden (voor bijvoorbeeld het $Author$-trefwoord in de voetnoot van de pagina), zou u trefwoorden automatisch moeten toestaan door het toevoegen van het volgende knipsel aan uw ~/.subversion/config-bestand:

    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
        

Nadat u de repository voor het eerst hebt bekeken zou u

svn update

iedere keer moeten uitvoeren voordat u aan een specifiek bestand begint.

Als u nieuwe bestanden of mappen toe wil voegen aan de repository dan moet u

svn add filename

uitvoeren. Om trefwoordvervanging voor een nieuw bestand toe te staan, voert u uit:

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

Om uw veranderingen aan de server te posten, ongeacht of het een nieuw bestand is of een wijziging van een bestaand bestand, voert u uit:

svn commit filename

en uw standaardeditor zal worden geopend om een beschrijving van uw veranderingen mogelijk te maken.

Als u gewend bent om met CVS te werken dan zal u gemakkelijk beginnen te werken met SVN; zoals u heeft opgemerkt zijn de basiscommando's erg vergelijkbaar. Om meer te weten te komen kan u een overzicht van de verschillen tussen CVS en SVN zien op Subversion voor CVS-gebruikers en een snelle referentievergelijking tussen CVS en SVN-commando's op CVS naar SVN overstapgids

U kan een gedetailleerde handleiding voor SVN vinden op de Subversion boek pagina (we gebruiken de 1.5-versie van SVN).

Coördinatiegereedschappen

Het werk op de webpagina's word gecoördineerd op de Webmasters e-maillijst.

De fsfe-web trac instance biedt nog meer gereedschap om te helpen bij de coördinatie: een SVN repository webbrowser, een tracksysteem voor uitdagingen en een wiki.

U kan meer te weten komen over het gebruik van trac op de TracGuide wikipagina.

Als u alle commits bij wil houden die aan de webpaginabronnen worden gedaan, dan kan u zich ook abonneren op de commit notificatie e-maillijst en u zal een e-mail ontvangen voor iedere verandering aan de bronnen.

Verantwoord omgaan met schrijftoegang

Als u schrijftoegang hebt tot de webpagina's, abonneert u zich dan alstublieft op de Webmasters e-maillijst.

Ben er alstublieft van bewust dat al uw veranderingen automatisch tot stand komen en zichtbaar worden, zonder enige verdere actie van wie dan ook. Daarom zij er enkele dingen die we aan u zouden willen vragen om te doen als u veranderingen aanbrengt of nieuwe bestanden toevoegt:

  • De FSFE word verantwoordelijk gehouden voor de inhoud van de webpagina's. Breng alstublieft geen wijzigingen aan die de betekenis van de tekst veranderen zonder dat u toestemming heeft van een lid van het kernteam van de FSFE (dit is niet noodzakelijk voor vertalingen van al bestaande inhoud).

  • Als u vertalingen post en er bestaat een kans dat anderen ze kunnen proeflezen, gebruik die kans dan. U kan op de Vertalers e-maillijst vragen of iemand wil proeflezen. Of u nu bestanden vertaalt of ze proefleest, u word aangemoedigd om de spelling van bestanden te controleren met automatisch gereedschap, zoals GNU aspell, ispell of uw favoriete spellingscontrole. Om bijvoorbeeld GNU aspell te gebruiken op Debian GNU/Linux installeert u gewoon de pakketten aspell en aspell-XX (waar "XX" uw taalcode is), en voer dan het volgende commando uit:

    aspell -H -d taal -c file.xhtml

    waar "taal" de naam van het woordenboek van uw taal is; de -d optie kan u overslaan als uw UNIX-taalinstelling dezelfde is als de taal van het woordenboek.

  • Verzeker uzelf ervan dat alle bestanden juist XML zijn. De SVN-server controleert standaard de XML-syntax van bestanden met .xml- en .xhtml-extensies en zal u verbieden iets te plaatsen als er XML-fouten worden gevonden. Om dit te vermijden kan u uw bestanden vooraf controleren op een van de volgende manieren:

    Er is een script genaamd /trunk/tools/validate.pl die helpt fouten te vinden in de opmaak. Onjuist XML breekt automatisch het bouwproces van webpagina's en blokkeert updates voor de gehele FSFE-website. Als u vermoed dat het bouwproces is gebroken dan kan u de log bekijken van de laatstgebouwde versie op onze statuspagina's.

    Het validate.pl-script vereist de XML::LibXML Perl-module; als dit niet is geïnstalleerd op uw systeem dan kan u bestanden valideren met uw favoriete XML-validatieprogramma. U kan bijvoorbeeld op de commandoregel het xmllint-gereedschap gebruiken van het libxml2-project.

    Als u de GNU/Linux Debian-distributie gebruikt, installeert u dan het libxml2-utils-pakket; voer het volgende commando in:

    xmllint --noout bestand.xhtml

    waar bestand het bestand specificeert dat u wil controleren, en kijk naar mogelijke foutmeldingen.

  • Verzeker uzelf ervan dat de codering van het bestand consistent is met de inhoud van de "encoding"-attribuutverklaring in de eerste regel van het bestand. Als uw bestand bijvoorbeeld de codering "UTF-8" heeft dan zou de eerste regel van het bestand moeten zijn:

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

    Als u de codering van een bestand wil veranderen dan kan u het standaard iconv-gereedschap gebruiken, zoals in het volgende voorbeeld (dat een bestand omzet van een "latin1"- naar een "UTF-8"-codering):

    iconv -f LATIN1 -t UTF8 inputfile > outputfile

Coördineer alstublieft met andere mensen die ook SVN-commit toegang hebben om er zeker van te zijn dat vertalingen en wijzigingen van mensen zonder committoegang op de juiste wijze op de site worden geplaatst na het proeflezen. Controleert u deze bestanden alstublieft voordat u ze op de site plaatst zoals u uw eigen bestanden controleert.

Broncodelicenties

Of u nu serverside programmacode (bijvoorbeeld PHP, Perl) danwel javascriptcode op de website plaatst, verzeker uzelf er dan alstublieft van dat ze overeenkomen met ons licentiebeleid. Dit betekent specifiek:

  • Als u scripts schrijft namens de FSFE, plaatst u ze dan alstublieft onder AGPLv3+ (dat is AGPL 3.0 met de toevoeging "or any later version")
  • Als u scripts aanlevert vanuit derde partijen, verzeker uzelf er dan alstublieft van dat ze zijn voorzien van een Vrije Softwarelicentie die staat op http://www.gnu.org/licenses/license-list.html
  • Als u scripts schrijft voor FSFE (maar niet werkzaam bent voor FSFE) dan zouden we er de voorkeur aan geven als het script een van een AGPLv3+, GPLv3+, LGPLv3+, Apache 2.0 of CC0-licentie is voorzien. Het hebben van een Vrije Softwarelicentie is voor FSFE verplicht om het te kunnen gebruiken.

Gebruik van media met een aangepaste licentie

Als u afbeeldingen of andere media gebruikt die zijn voorzien van een Creative Commons- of andere licentie dan kan u er zeker van zijn dat de juiste licentie-informatie word getoond door het volgende toe te voegen aan het eind van het document voor </html>. Hier zijn drie voorbeelden:


    <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>


        

Andere FSFE websites

Vrijwilligers zijn uitgenodigd om naast de fsfe.org-hoofdwebsite ook bij te dragen aan andere FSFE- en Fellowshipwebsites; u kan hierover meer informatie vinden op de FSFE wiki.