Com'è realizzato www.debian.org
Look & Feel
Il sito Debian è una raccolta di directory e file in
/org/www.debian.org/www
su www-master.debian.org.
Molte pagine sono file HTML statici. Non contengono elementi dinamici
come script CGI o PHP poiché il sito viene replicato sui mirror.
Il sito web Debian usa il Website Meta Language
(WML) per generare pagine HTML,
incluse intestazioni e più di pagina, heading, indici, eccetera.
Anche se un file .wml
può sembrare, ad un primo sguardo, simile ad uno HTML,
HTML è solo uno dei tipi di informazione aggiuntiva che si può usare in WML. Si può anche
includere codice Perl e quindi fare quasi qualsiasi cosa.
Dopo che WML completa a i passaggi dei vari filtri sui un file, il prodotto finale è vero HTML. Notare che nonostante WML controlli, e qualche volta magicamente corregga, la validità di base del codice HTML, sarebbe meglio installare uno strumento come weblint e/o tidy per un controllo minimo della sintassi.
Chiunque contribuisca con regolarità al sito web Debian dovrebbe installare
WML per controllare il codice ed essere sicuro che le pagine HTML
finali siano corrette. Se si utilizza Debian, basta installare il
pacchetto wml
.
Per maggiori informazioni controllare la pagina using WML.
Sorgenti
Usiamo Git per memorizzare i sorgenti del sito web Debian. Il sistema di controllo delle versioni ci permette di tenere traccia di tuttte le modifiche e possiamo controllare chi ha fatto cosa e quando, anche perché. Git offre un modo sicuro per controllare la modifica in contemporanea di file sorgenti da parte di più autori — un compito cruciale per il gruppo web di Debian, perché vi sono parecchi membri.
Ecco alcune informazioni preliminari su come sono strutturati i sorgenti:
- La directory radice del repository Git (
webwml
) contiene directory nominate in accordo con la lingua del loro contenuto, due Makefile e alcuni script. I nomi delle directory per le pagine tradotte devono essere in inglese e usare solo lettere minuscole, per esempiogerman
e nonDeutsch
. - Il file
Makefile.common
è particolarmente importante poiché contiene alcune regole comuni che sono richiamate includendo questo file in altri Makefile. - Ogni sottodirectory delle varie lingue contiene un Makefile, vari
file sorgente
.wml
e ulteriori sottodirectory. I nome di tutti i file e directory seguono certi modelli in modo che ogni link funzioni per tutte le pagine tradotte. Alcune directory contengono anche file di configurazione.wmlrc
con comandi e impostazioni aggiuntive per WML. - La directory
webwml/english/template
contiene file WML speciali che funzionano come modelli. Possono essere richiamati da altri file con il comando#use
.
Nota: per accertarsi che le modifiche ai modelli siano propagate ai file
che li includono, i file hanno delle dipendenze impostate nel Makefile.
La stragrande maggioranza dei file usa il modello template
,
la dipendenza generica, e quindi contengno questa prima linea:
#use wml::debian::template
Ci sono eccezioni a questa regola, naturalmente.
Script
Gli script sono, per la maggior parte, scritti in shell o Perl. Alcuni di loro sono a sé stanti, altri sono integrati in file sorgente WML.
- webmaster-team/cron:
Questo repository Git contiene tutti gli script usati per aggiornare il sito web Debian,
vale a dire i sorgenti degli script che ricostruiscono
www-master
. - webmaster-team/packages:
Questo repository Git contiene i sorgenti degli script che ricostruiscono
packages.debian.org
.
Generare il sito web
WML, modelli e script shell o Perl sono tutti gli ingredienti necessari a generare il sito web Debian:
- Per lo più è generato usando WML (dal repository Git).
- La documentazione è generata con DocBook XML (repository Git
ddp
) oppure con script cron dei corrispondenti pacchetti Debian. - Alcune parti del sito web sono generate con script che usano altre fonti, per esempio, le pagine per (dis)iscriversi alle liste di messaggi.
Sei volte al giorno viene fatto un aggiornamento automatico a partire dal repository Git e altre sorgenti. Oltre questo, vengono eseguiti i seguenti controlli su tutto il sito web:
Gli ultimi log della costruzione del sito web possono essere trovati in https://www-master.debian.org/build-logs/.
Se si vuole contribuire al sito, non modificare direttamente
i file nella directory www/
o aggiungere nuovi elementi. Invece,
contattare prima i webmaster.
Come aiutare
Invitiamo tutti ad aiutare con il sito web Debian. Se si hanno informazioni importanti su Debian, che si pensa manchino, contattaci — faremo in modo che siano incluse. Inoltre, dare un'occhiata ai summenzionati log della costruzione per vedere se si quanche suggerimento per risolvere i problemi.
Stiamo anche cercando persone che possano aiutare con l'aspetto (immagini, layout, ecc.). Se si parla bene l'inglese sarebbe utile considerare di rileggere le nostre pagine e segnalare errori. Se si parlano altre lingue si può aiutare a tradurre le pagine esistenti o risolvere problemi in quelle già tradotte. In entrambi i casi, dare uno sguardo all'elenco dei coordinatori delle traduzioni e entrare in contatto con la persona responsabile. Per maggiori informazioni controllare la nostra pagina per i traduttori.
Come non aiutare... (FAQ)
[D] Vorrei aggiungere questa bella caratteristica sul sito web Debian website, posso?
[R] No. Vogliamo che www.debian.org si più accessibile possibile, quindi
- nessuna "estensione" specifica ad un solo browser,
- nessuna dipendenza dalle sole immagini. Le immagini possono essere utilizzate per chiarire ma l'informazione in www.debian.org deve rimanere accessibile ai browser testuali, come lynx.
[D] Ho questa idea simpatica che vorrei proporre. Potete abilitare X o Y su www.debian.org, per favore?
[R] No. Vogliamo rendere la vita facile agli amministratori dei mirror di www.debian.org, quindi nessuna caratteristica su HTTPD, grazie. No, neppure SSI (Server Side Includes). Una eccezione è stata fatta per la negoziazione dei contenuti, perché è l'unico modo robusto per servire più lingue.