Old:Debian: accelerare GTK con Cairo e Glitz
Attenzione: questo articolo è ancora incompleto e in fase di scrittura da parte del suo autore.
Sentitevi liberi di contribuire, proponendo modifiche alla guida tramite l'apposita pagina di discussione, in modo da non interferire con il lavoro portato avanti sulla voce. Per altre informazioni si rimanda al template. |
Premessa
Questa guida spiega come abilitare Cairo e GLitz in Debian Etch (testing) in modo accelerare notevolmente le prestazione delle librerie GTK e dell' ambiente Gnome. È basata sulla ottima documentazione scritta da felipe e intitolata: GTK velocissime con Clearlooks + Cairo + Glitz!.
Essendo necessaria l' installazione di pacchetti provenienti dal tree experimental, potrebbe essere utile configurare la vostra Debian-box per l' utilizzo di repositories misti. A questo scopo vi consiglio la lettura di APT uso avanzato: mixare releases diverse.
Il software utilizzato è altamente sperimentale, per cui ne sconsiglio l' utilizzo ai deboli di cuore.
Non mi resta che augurarvi buona lettura & happy debian!
Prerequisiti
Repositories
Dato che dovremo utilizzare alcuni pacchetti sorgenti ed altri provenienti da experimental, è necessario aggiungere (se non presenti) i seguenti repositories al nostro file /etc/apt/sources.list:
deb-src http://debian.fastweb.it/debian/ testing main non-free contrib deb http://debian.fastweb.it/debian/ ../project/experimental main contrib non-free
Una volta inseriti i repositories, aggiorniamo il database dei pacchetti:
# apt-get update
Strumenti CVS
Utilizzeremo codice proveniente dall' archivio di sviluppo del tema GTK Clearlooks, per cui abbiamo bisogno dei relativi strumenti. Installiamoli:
# apt-get install cvs
Checkinstall
Un altro strumento utile al momento di installare programmi compilati da codice sorgente è checkinstall. Installiamolo:
# apt-get install checkinstall
Libtool
È necessario anche installare libtool:
# apt-get install libtool
Ricompilare Cairo
Le librerie Cairo fornite da Debian non sono compilate per supportare Glitz. Dobbiamo quindi ricompilarle abilitandolo.
Per prima cosa creiamo una cartella di lavoro:
$ mkdir src
Ora scarichiamo il pacchetto sorgente delle librerie e le relative dipendenze:
$ apt-get source libcairo2 # sudo apt-get build-dep libcairo2
Ora abilitiamo il supporto a Glitz editando il file rules all' interno di libcairo-1.0.0/debian. Dobbiamo andare alla sezione DEB_CONFIGURE_USER_FLAGS= \ del file e modificare la direttiva --disable-glitz in --enable-glitz.
Fatto questo passiamo alla compilazione vera e propria del pacchetto, che può essere fatta in vari modo.
- primo metodo (lanciato all' interno di ~/src/libcairo-1.0.0 ):
# debian/rules binary
- secondo metodo (lanciato all' interno di ~/src):
# apt-get source libcairo2 --compile
Quale che sia il metodo da noi scelto, ci ritroveremo con 3 pacchetti debian pronti per essere installati. Si tratta dei pacchetti: libcairo2_1.0.0-3_i386.deb, libcairo2-dev_1.0.0-3_i386.deb, libcairo2-doc_1.0.0-3_all.deb che possiamo tranquillamente installare con il comando:
# dpkg -i *.deb
Compilare Clearlooks
Ora che abbiamo preparato Cairo con il supporto Glitz, possiamo procedere alla compilazione dell' engine GTK ClearLooks. Questo engine ci permetterà di rendere estremamente veloci le nostre applicazioni basate su GTK, compreso il desktop environment Gnome. Utilizzeremo la versione cvs dell' engine.
Aggiornare GTK
Per compilare clearlooks avremo bisogno delle librerie di sviluppo GTK+. Le versioni presenti in testing e unstable non sono abbastanza recenti, per cui dovremo installare la versione experimental:
apt-get install -t experimental libgtk2.0-dev
Scaricare i sorgenti
Scarichiamo i sorgenti di clearlooks tramite cvs:
cvs -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/clearlooks login [INVIO] cvs -z3 -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/clearlooks co -P clearlooks-cairo [INVIO]
Ora rinominiamo la directory appena creata da clearlooks-cairo a clearlooks-cairo-0.1, spostiamoci nella directory appena rinominata e compiliamo l' engine nel modo seguente:
./autogen.sh make
Prima di passare alla disinstallazione vera e propria dobbiamo rimuovere (se presente) il pacchetto automake1.9:
# apt-get remove automake1.9
Ora possiamo installare l' engine usando il comando (da lanciare nella directory da cui abbiamo lanciato il make):
# checkinstall
Dovremo rispondere ad un paio di banali domande poste da checkinstall, dopodichè il pacchetto sarà installato e pronto per essere utilizzato attraverso il theme manager di Gnome.
Avvertenze
Quando selezioniamo l' engine clearlooks-cairo nel theme manager di Gnome, quest'ultimo andrà il blocco.
Nessuna paura: attendiamo il freeze e quindi riavviamo il server X con la combinazione di tasti: CTRL+ALT+BACKSPACE. Quando rientrieremo in Gnome potremo constatare la velocità del nuovo engine.
Configurare Xorg
Passiamo adesso a configurare Xorg in modo da rendere il nostro Desktop davvero accattivante.
Apriamo il file /etc/X11/xorg.conf come utente root e creiamo questa nuova sezione (anche al termine del file):
Section "Extensions" Option "Composite" "Enable" Option "RENDER" "Enable" EndSection
Configurare Gnome
A questo punto scarichiamo il tema Compocity di felipe e installiamolo.
Visto così non è molto bello, ma ora vedremo come renderlo davvero magnifico. Quello che ci serve è il programma xcompmgr.
Editiamo il file /etc/apt/sources.list inserendo il seguente repository:
deb http://www.sukria.net/debian ./
Aggiorniamo il database dei pacchetti e installiamo il programma con:
# apt-get update # apt-get install xcompmgr
Ora dobbiamo fare in modo che il programma (con i relativi parametri) venga eseguito ad ogni sessione di Gnome. Per fare questo lanciamo il gestore delle sessioni:
$ gnome-session-properties
selezioniamo il menu "Programmi d'avvio" e quindi premiamo il pulsante "Aggiungi"
Come programma da avviare digitiamo xcompmgr -cf -r9 -l-13 -t9 -D4 e come nella casella ordine impostiamo il valore 20 quindi salviamo e usciamo.
Ora riavviamo il server X con la combinazione di tasti CTRL+ALT+BACKSPACE e quando ci loggheremo nuovamente, potremo goderci tutta la potenza dei nuovi standards di FreeDesktop.