Da qualche settimana seguo la newsletter di Gnome Shell in attesa dell’uscita dell’attesissimo Gnome 3 prevista nei primi giorni di Aprile. Nel frattempo mi è venuta voglia di provare il nuovo ambiente ma purtroppo la versione fornita con Fedora 14 è molto vecchia e non ha senso usarla, abituandosi ad un modo di lavorare che non sarà quello definitivo.
Cercando in giro sembra che l’unica possibilità sia avviare la live di Fedora 15 alpha, che includerà il nuovo desktop di default, oppure la Suse fornita dal progetto Gnome, ma in questo caso non avremmo a disposizione le ultimissime novità che giornalmente vengono inserite nei sorgenti in sviluppo. Inoltre potremmo fare solo un veloce test in live.
In alternativa è possibile seguire i passaggi suggeriti direttamente dagli sviluppatori per compilare manualmente i programmi necessari con l’intero parco di dipendenze richieste. Niente paura perchè seguendo queste istruzioni si creerà di fatto una sandbox da cui sarà possibile avviare (ed usare) gnome-shell senza intaccare minimamente il sistema in uso. Era proprio quello che cercavo!
La traccia da seguire per la compilazione è scritta nella pagina del progetto (http://live.gnome.org/GnomeShell).
Non scriverò qui la sequenza dei comandi in quanto è gia scritta nella pagina di gnome ed è molto semplice ma riporterò solo qualche indicazione sui passaggi da seguire e la soluzione dei problemi che ho incontrato.
Con “curl” si recupera lo script principale che si occuperà di verificare la distribuzione in uso e delle eventuali dipendenze necessarie alla compilazione.
Eseguendo il “gnome-shell-build-setup.sh” ho installato tutti i pacchetti richiesti tranne due di cui non esisteva traccia nei repository di Fedora (libjpeg-devel e gettext-autopoint). Per il primo ho dovuto sostituire il nome nel pacchetto nel file .sh perchè la F15 non usa più questa libreria ma usa la “libjpeg-turbo-devel” (riga 116 dello script). Per il secondo stesso discorso, il programma autopoint è contenuto in “gettext” e non in “gettext-autopoint” per cui ho sostituito il nome del pacchetto nel file (riga 130).
Ho tralasciato il comando “sudo rm -rf /usr/lib*/*.la” in quanto non si fa riferimento a Fedora.
A questo punto non ci resta che lanciare il:
jhbuild build
ed andare a preparare il pranzo: il programma si occupa di scaricare e compilare uno per uno i sorgenti necessari (sono 40!!); naturalmente una buona connessione internet è auspicabile.
L’unico problema che ho incontrato è stato allo scaricamento di “clutter” di cui non è stato possibile fare il download. Googlando un po’ in rete ho scoperto che c’è un problema con il download tramite protocollo git da sito per cui è necessario scaricare a mano i sorgenti relativi prima di continuare. In una nuova shell eseguire:
cd ~/gnome-shell/source/
git clone http://git.clutter-project.org/clutter
A questo punto è possibile continuare la compilazione precedente rispondendo 1 alle domande poste dallo script. Non ho incontrato altri problemi e il tutto si è conluso con un attesissimo *** success *** [40/40].
Prima di avviare avviare il nuovo desktop dalla sandbox ho dovuto cancellare una libreria non necessaria che generava questo errore:
/home/cimmero/gnome-shell/source/gnome-shell/src/.libs/lt-gnome-shell-real: symbol lookup error: /home/cimmero/gnome-shell/install/lib/gtk-3.0/modules/libcanberra-gtk-module.so: undefined symbol: gtk_quit_add
Per evitare di cancellare il file (non si sa mai…) l’ho rinominato:
mv /home/cimmero/gnome-shell/install/lib/gtk-3.0/modules/libcanberra-gtk-module.so /home/cimmero/gnome-shell/install/lib/gtk-3.0/modules/libcanberra-gtk-module.so_cancellato
Quindi è possibile avviare gnome-shell:
cd ~/gnome-shell/source/gnome-shell/src/
./gnome-shell –replace
Una cosa molto utile di questa procedura fornita dagli sviluppatori è che basta eseguire di nuovo il comando “jhbuild build” per scaricare/ricompilare i sorgenti modificati nei repository e provare le ultimissime novità (la policy di jhbuild è impostata su ‘updated’ nel ~/.jhbuildrc).
Un commento? E’ ancora un progetto giovane ma ha già tutta l’aria di un ottimo lavoro, i miei complimenti!