Accesso CVS ad Alioth
La gestione della pagine web del sito Debian è documentata, seppur in modo essenziale, qui, c'è però bisogno di aggiungere un particolare tanto banale quanto tutto sommato essenziale.
Nella sezione che spiega come usare CVS per effettuare il checkout, ovvero il mirror locale delle pagine in formato .wml, viene riportato un collegamento a fondo pagina su come ottenere l'accesso in scrittura al repository CVS richiedendo di far parte del progetto Alioth webwml.
Si aprirà una pagina che richiede di effettuare il login, ed è proprio qui che può nascere il disguido; per chi non è ancora iscritto ad Alioth questo significa scegliere di creare un nuovo account, compilare il form, ricevere un messaggio di iscrizione avvenuta e attendere l'email che validerà l'operazione.
Dopodiché se non ci si ricorda di tornare alla pagina che spiega come usare CVS e cliccare nuovamente sul link detto poc'anzi (ovvero questo) ci troveremo con un account privo delle credenziali sufficienti ad accedere tramite cvs e ssh.
Ciò non avviene se si ha già un account, in quanto una volta effettuato il login si verrà automaticamente indirizzati alla pagina voluta, ovvero quella dove fare la vera richiesta di appartenere al gruppo webwml; qui basterà scrivere di essere un traduttore e manutentore delle pagine web e inviare la richiesta.
Un'altra mancanza è l'impostazione della variabile CVS_RSH, si può trovare una breve descrizione a questa pagina, per comodità è bene inserire il comando export CVS_RSH=ssh nel file $HOME/.profile.
Checkout e update
Generalmente è sufficiente avere il mirror dell'albero english e italian e di alcuni script utili contenuti nella directory principale, ecco dunque i comandi per ottenere il checkout parziale come utente anonimo:
$ cvs -d :pserver:anonymous@cvs.alioth.debian.org:/cvsroot/webwml checkout webwml/english webwml/italian $ cvs -d :pserver:anonymous@cvs.alioth.debian.org:/cvsroot/webwml checkout -l webwml
e come utente registrato (nomeutente ha sempre il suffisso -guest, ad esempio skizzhg-guest):
$ cvs -d :ext:nomeutente@cvs.alioth.debian.org:/cvsroot/webwml checkout webwml/english webwml/italian $ cvs -d :ext:nomeutente@cvs.alioth.debian.org:/cvsroot/webwml checkout -l webwml
Verrà creata una directory webwml nel percorso in cui si eseguono i comandi, nel caso non si volesse tenerla nella home ricordarsi quindi di spostarsi altrove. In futuro i comandi andranno eseguiti all'interno di questa directory.
Nei successivi aggiornamenti bisognerà sempre specificare le directory altrimenti verrà scaricato l'intero albero:
$ cd /percorso/directory/webwml $ cvs update -d english italian
Un esempio per un cronjob che aggiorna tre volte la settimana potrebbe essere:
11 11 * * 1,3,5 cd /percorso/directory/webwml && /usr/bin/cvs -Q update -d english italian
Differenze
Una volta che si hanno i file in locale si potranno facilmente controllare le differenze con la versione precedente per individuare i cambiamenti da apportare per aggiornare la pagina. Supponiamo di voler aggiornare la pagina http://www.debian.org/devel/debian-nonprofit/index.it.html, si cercherà quindi il corrispettivo file locale in /percorso/directory/webwml/italian/devel/debian-nonprofit/index.wml, l'intestazione riporta una riga con il numero di versione e il maintainer:
#use wml::debian::translation-check translation="1.17" maintainer="Johan Haggi"
Il comando per effettuare il diff sarà il seguente (notare che il diff va fatto sul ramo english):
$ cvs -d :pserver:anonymous@cvs.alioth.debian.org:/cvsroot/webwml diff -r1.17 english/devel/debian-nonprofit/index.wmljoin/
o così se si ha un account:
cvs -d :ext:nomeutente@cvs.alioth.debian.org:/cvsroot/webwml diff -r1.17 english/devel/join/debian-nonprofit/index.wml
Correzioni e aggiornamenti
Durante la navigazione del sito Debian si possono incontrare pagine che hanno la seguente dicitura: "Nota: L'originale è più recente di questa traduzione." o più semplicemente capita di individuare degli errori e dei refusi.
Gli errori si possono segnalare alla mailing list italiana del progetto o si può correggere la pagina mandando poi il file sempre alla mailing list per una revisione.
È tassativo mantenere la stessa codifica, che è iso-8859-1, mentre il vostro sistema, e quindi l'editor, usa utf-8 in modo predefinito, attrezzatevi di conseguenza.
L'aggiornamento è anche possibile ma a certe condizioni, prima di tutto queste, poi va individuato il maintainer (è riportato all'inizio del file .wml) e possibilmente comunicare a lui/lei il cambiamento mandando il file e segnalando nel corpo del messaggio le modifiche apportate in stile "diff" (numero riga, riga vecchia, riga nuova o riga italiana e riga inglese per eventuali paragrafi aggiunti), ricordarsi di modificare il numero di revisione (1.17 diventerà 1.18). In caso di dubbi o se non si trovasse il contatto del maintainer negli archivi della mailing list, inviare a quest'ultima esponendo le motivazioni.
Per la priorità degli aggiornamenti o le pagine ancora da tradurre si veda la pagina delle statistiche, per le nuove traduzioni è gradita la prenotazione in mailing list per evitare che più persone lavorino contemporaneamente alla stessa traduzione.
TODO
Verificare che il cronjob funzioni
- Oltre a CVS_RSH va spiegato come impostare CVSROOT, dovrebbe essere qualcosa come:
export CVSROOT=:ext:nomeutente@cvs.alioth.debian.org:/cvsroot/webwml
