La squadra Web gestisce e sviluppa i siti di FSFE — da fsfe.org ai siti di progetti e campagne. I webmaster sono volontari che lavorano per migliorare l'immagine dell'organizzazione nel mondo e affinare le soluzioni tecniche per la nostra comunicazione su web.
Le tecnologie e i programmi usati per gestire il sito web della FSFE dovrebbero essere già familiari a molti sviluppatori e autori, ma potrebbero interessare anche chi non li conosce ancora.
Ai traduttori e ai volontari occasionali basterà avere familiarità con
I volontari interessati ad approfondire la manutenzione del sito dovrebbero avere familiarità anche con
Le pagine web di fsfe.org sono gestite da un insieme di file XML. Il server web genera le pagine HTML da questi file XML in modo automatico ogni dieci minuti. Di conseguenza, il lavoro di redazione delle pagine riguarda i file XML, mentre l'HTML non viene mai modificato direttamente.
Il nome di ogni pagina su fsfe.org segue questo schema: nomepagina.lingua.html (dove lingua è il codice ISO-639-1 di due lettere della lingua, come "en" per l'inglese o "it" per l'italiano). I nomi dei file sorgenti sono: nomepagina.lingua.xhtml.
Alcune pagine contengono una parte generata in modo dinamico: oltre a una parte fissa proveniente dal file .xhtml, includono informazioni provenienti da uno o più file .xml. Quando una pagina di questo tipo viene generata, il sistema di generazione delle pagine prende i file XML tradotti se disponibili e utilizza la versione inglese di quei file XML che non sono stati ancora tradotti. Quindi è possibile che la pagina finale contenga delle parti tradotte e delle parti in inglese. Esempi di queste pagine sono la pagina iniziale, quella delle notizie, e quella degli eventi.
I file sorgenti delle pagine web si trovano nel repository subversion fsfe-web, ospitato dal server subversion di FSFE. Sono disponibili altri servizi nella relativa istanza trac.
Per avere accesso a questi strumenti, segui queste istruzioni:
Se sei un Fellow della FSFE hai già accesso a subversion e a trac, e puoi usare il nome utente e la password del tuo account della Fellowship.
Per ottenere il permesso di scrittura nel repository subversion, e nel wiki e sistema ticket di trac, scrivi a system-hackers@fsfeurope.org
Tutti gli altri possono registrare un account per subversion e trac attraverso il modulo web su https://trac.fsfe.org/fsfe-web/register. Appena registrato, avrai accesso alla lettura del repository subversion e potrai loggarti nel sito trac (un prefisso guest- verrà aggiunto al nome utente che scegli). Un messaggio di notifica verrà inviato automaticamente all'amministratore del repository, che abiliterà l'accesso alla scrittura il prima possibile.
Il repository subversion ha due archivi principali per il codice del sito web di FSFE, il trunk SVN, che viene usato per creare l'istanza di produzione del sito all'url http://fsfe.org/, e il branch test, che viene usato per creare http://test.fsfe.org/.
Per il lavoro di tutti i giorni, come aggiungere delle notizie, tradurre le pagine (ma anche fare piccole modifiche di sviluppo) dovrai fare il checkout del trunk SVN:
svn --username TUONOME co https://svn.fsfe.org/fsfe-web/trunk
Per lavorare a cambiamenti significativi del sito, incluso il debugging di nuove funzionalità che potrebbero rendere il sito inaccessibile, sei invitato a fare il checkout del branch test dell'archivio SVN:
svn --username TUONOME co https://svn.fsfe.org/fsfe-web/branches/test
Si prega di notare che una copia di lavoro completa richiederà uno spazio di circa 160M; se prevedi di lavorare solo su parte del sito, puoi fare il checkout soltanto delle directory che ti interessano. Puoi vedere l'albero SVN online per scoprire quale ti interessa.
Dopo che hai fatto il checkout dell'archivio la prima volta, dovresti eseguire il comando
$ svn update
ogni volta prima di lavorare su un file.
Per aggiungere nuovi file o directory all'archivio, occorre eseguire
$ svn add nomefile
Per inviare il proprio lavoro al server, che si tratti di un nuovo file o di una modifica a un file esistente, basta eseguire
$ svn commit nomefile
e inserire una descrizione breve delle proprie modifiche nella finestra dell'editor che si aprirà.
In subversion, la sostituzione di parole chiave deve essere abilitata esplicitamente su ogni file. Dato che usiamo alcune parole chiave nei file .xml e .xhtml (ad esempio la parola chiave $Author$ nel footer della pagina), puoi automatizzare il funzionamento delle parole chiave aggiungendo le seguenti righe nel tuo file ~/.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
Se sei abituato a lavorare con CVS, usare SVN sarà facile; come avrai notato, i comandi di base sono molto simili. Per saperne di più, puoi vedere una panoramica delle differenze tra CVS e SVN in Subversion for CVS Users, e un veloce confronto dei comandi CVS e SVN in CVS to SVN Crossover Guide
Puoi scaricare un manuale dettagliato di SVN alla pagina Subversion book (stiamo usando la versione 1.5 di SVN).
Il lavoro sulle pagine del sito è coordinato tramite la mailing list dei Webmaster.
L'istanza trac fsfe-web fornisce ulteriori strumenti per aiutare il coordinamento: un browser web dell'archivio SVN, un sistema di tracciamento [dei problemi] e un wiki.
Puoi trovare maggiori informazioni sull'uso di trac nella pagina wiki TracGuide.
Se vuoi essere aggiornato su tutti i commit che vengono fatti ai sorgenti delle pagine web, puoi iscriverti anche alla mailing list di notifica dei commit e riceverai un'email per ogni modifica inviata all'albero dei sorgenti.
Chiunque abbia permesso di scrittura sulle pagine web dovrebbe iscriversi alla mailing list dei webmaster.
Occorre avere chiaro che i cambiamenti fatti alle pagine diventeranno automaticamente visibili senza alcun meccanismo di approvazione da parte di alcuno. Di conseguenza, ci sono alcune regole da seguire ogni volta che si apportano modifiche ai file o si creano nuovi file:
La FSFE è responsabile del contenuto delle pagine web. Non apportare modifiche che cambiano il significato dei testi senza avere l'approvazione di un membro del team di FSFE (per le traduzioni di materiale già esistente questo non è necessario, ma si seguano le indicazioni al punto seguente)
Se si è tradotta una pagina web, prima di farne il commit occorre cercare qualcuno che possa revisionare la traduzione. La mailing list dei traduttori è il posto ideale per trovare aiuto in questo senso. Traduttori e revisori delle pagine sono incoraggiati a usare qualche strumento di correzione ortografica automatica, come GNU aspell, ispell, o altri correttori ortografici. Ad esempio, per usare GNU aspell su un sistema Debian GNU/Linux basta installare i pacchetti aspell e aspell-XX (dove "XX" è il codice della propria lingua) ed eseguire il comando
aspell -H -d lingua -c file.xhtml
(dove "lingua" è il nome del dizionario per la propria lingua; l'opzione -d può essere omessa se la lingua impostata sul proprio sistema è la stessa del dizionario che si intende usare).
Assicurarsi che i file rispettino la sintassi XML. Il server SVN, per impostazione predefinita, controllerà la sintassi XML dei file con estensione .xml e .xhtml, e impedirà il commit se trova errori di sintassi XML. Per evitare questa eventualità, puoi controllare i file prima di fare il commit, in uno dei seguenti modi. C'è uno script chiamato /trunk/tools/validate.pl che aiuta a trovare gli errori nel markup XML. Questi errori interrompono la procedura di generazione automatica delle pagine web, bloccando l'aggiornamento dell'intero sito. Se si sospettano errori di questo tipo, è possibile controllare il log dell'ultimo aggiornamento.
Lo script validate.pl richiede il modulo Perl XML::LibXML; se questo non è installato sul proprio sistema, è possibile controllare i file con il proprio validatore XML preferito. Ad esempio, è possibile usare il comando xmllint del progetto libxml2.
Se si usa la distribuzione Debian GNU/Linux, occorre installare il pacchetto libxml2-utils); basta eseguire il comando
xmllint --noout file.xhtml
dove file indica il file che si intende verificare, e controllare eventuali messaggi di errore.
Assicurarsi che la codifica caratteri del file sia coerente con l'indicazione contenuta nell'attributo "encoding" dichiarato nella prima riga del file. Ad esempio, se il file adotta la codifica "iso-8859-1" (chiamata anche "latin-1"), la prima riga del file dovrebbe essere
<?xml version="1.0" encoding="iso-8859-1" ?>
Un'altra codifica valida è quella unicode, o "UTF-8". Se occorre modificare la codifica di un file, basta usare il comando standard iconv, come nell'esempio seguente (che converte un file dalla codifica "latin1" a quella "utf-8"):
iconv -f LATIN1 -t UTF8 inputfile > outputfile
Occorre inoltre coordinarsi con le altre persone che hanno accesso a SVN per fare in modo che le traduzioni o le modifiche suggerite da chi non ha accesso a SVN siano revisionate e inserite opportunamente nell'archivio. Ovviamente, anche questi file devono essere controllati prima del commit, come si fa con i propri.
Given that the FSFE webpage has a European/global level and user-chosen local levels that supplement them for information that is country-specific, the layout has a certain complexity that is hidden entirely from the user of the page.
Esiste anche un file in formato Texinfo, intitolato Webmastering FSFE curato da Jonas Öberg, che ha implementato il sistema di generazione delle pagine. La sua lettura è consigliata a chi vuole approfondire il funzionamento delle pagine web.