Informazioni per i webmaster
Introduzione
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
- Savannah – per i servizi CVS (cfr oltre) e la gestione dei permessi di accesso
- XHTML – il formato sorgente da cui ogni 5 minuti vengono generate le pagine statiche del sito
- Concurrent Version System (CVS) – per il coordinamento e la sincronizzazione
I volontari interessati ad approfondire la manutenzione del sito dovrebbero avere familiarità anche con
Come sono generate le pagine web
Le pagine HTML del sito fsfe.org sono generate dal server web in modo automatico ogni cinque minuti a partire da una serie di file XML. Di conseguenza, non serve modificare le pagine HTML, ma tutto il lavoro di aggiornamento è fatto sui file XML.
I nomi delle pagine seguono la sintassi: "nome.lingua.html" (dove lingua è il codice di due lettere iso-639 della lingua, ad esempio "en" per l'inglese, o "de" per il tedesco). I file sorgenti sono chiamati "nome.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 non tutti i file XML sono tradotti, il sistema di generazione delle pagine utilizza la versione originale inglese, quindi è possibile che la pagina finale contenga delle parti tradotte e delle parti in inglese. Questo può succedere ad esempio con la pagina iniziale, quella delle notizie e quella degli eventi.
Registrarsi su savannah
I file sorgenti per le pagine web sono ospitati su Savannah, un server della Free Software Foundation, la nostra organizzazione sorella negli Stati Uniti. Per ottenere l'accesso in scrittura su questi file, occorre avere un account su quel server.
Creare un nuovo account
Esiste un'apposita pagina per creare un account su Savannah. Basta scegliere un nome di login, una password, indicare il proprio nome e indirizzo e-mail e fare clic sul pulsante "Submit".
In breve tempo si riceverà una mail da savannah: per completare la procedura, basta visitare la URL contenuta nella mail entro due giorni dalla sua ricezione.
Dopo aver confermato la creazione dell'account, è possibile fare login su https://savannah.gnu.org col proprio nome di login e la propria password.
Creare una chiave SSH
Mentre la password serve per accedere al portale web di Savannah, per avere accesso in scrittura al CVS occorre crearsi una chiave SSH e registrarla su Savannah. Se si intende accedere a Savannah da più macchine diverse, occorre creare più chiavi SSH e registrarle tutte.
Per creare e registrare una chiave SSH, basta seguire le istruzioni contenute nella FAQ di Savannah.
Unirsi al progetto FSFE
Savannah ospita moltissimi progetti, e l'accesso al CVS è regolato in modo autonomo per ognuno di essi. Per avere accesso ai file sorgenti delle pagine web FSFE occorre diventare membri del progetto FSFE.
Basta scegliere Partecipazione ai gruppi nel menù in alto nella propria pagina personale, inserire "FSFE" nel campo Richieste di inclusione e un commento opzionale per motivare la propria richiesta.
Gli amministratori del progetto FSFE riceveranno una mail con la richiesta di inclusione e potranno così approvarla. Quando la richiesta sarà approvata il gruppo "Free Software Foundation Europe" comparirà nell'elenco dei Gruppi ai quali partecipo sulla propria pagina personale di savannah.
Eseguire il primo check out dell'archivio CVS
Per prima cosa occorre assicurarsi che il proprio file ~/.bashrc contenga una riga
export CVS_RSH=ssh
quindi occorre creare una directory in cui verrà scaricato l'archivio, entrarvi ed eseguire il comando
$ cvs -z3 -d nomeutente@cvs.savannah.gnu.org:/web/fsfe co .
Dopo aver inserito la passphrase della propria chiave SSH, inizierà il check out dell'archivio.
Lavorare con l'archivio
Una volta effettuato il check out dell'archivio, ogni volta che si intende lavorare sulla propria copia locale occorre per prima cosa eseguire
$ cvs update -d
nella directory che contiene i file che si intende modificare. In questo modo i file saranno aggiornati con la copia centrale dell'archivio.
Per aggiungere nuovi file all'archivio, occorre eseguire
$ cvs 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
$ cvs commit nomefile
e inserire una descrizione breve delle proprie modifiche nella finestra dell'editor che si aprirà.
Un manuale dettagliato sull'uso di CVS è disponibile sulla CVS home page.
Per essere sempre aggiornati su tutte le modifiche fatte sui file sorgenti delle pagine web, è possibile iscriversi alla mailing list delle notifiche CVS: si riceverà una mail per ogni operazione di modifica eseguita da qualcuno sull'archivio.
Uso responsabile del permesso di scrittura
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. Nell'archivio CVS c'è uno script chiamato 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 al CVS per fare in modo che le traduzioni o le modifiche suggerite da chi non ha accesso al CVS siano revisionate e inserite opportunamente nell'archivio.
Altre informazioni
Il sito web della FSFE comprende un livello europeo/globale, comune a tutte le pagine, e un livello locale, che può essere scelto dall'utente e contiene informazioni specifiche su una certa area geografica.
Per comprendere il meccanismo sottostante a questo funzionamento è possibile leggere un documento che descrive la struttura del sito web.
Esiste anche un file in formato Texinfo, intitolato Webmastering FSF Europe curato da Jonas Öberg, che ha implementato il sistema di generazione delle pagine.

