Installazione su (K)Ubuntu Dapper Drake e Edgy Eft di Xgl/Beryl

Premettiamo che tutta l'operazione seguente non è adatta ai deboli di cuore. La possibilità che Xgl non funzioni sono piuttosto alte, non ditevi che non vi avevo avvertito. Inoltre io ho sperimentato il tutto con KDE (uso Kubuntu), quindi prendete le note relative a gnome cum grano salis. Se però tutto funziona avrete a disposizione un desktop davvero eccezionale:

... e nuovi effetti possono essere aggiunti tramite il gestore di plugin di Beryl.

Tanto per chiarire di cosa stiamo parlando:

Xgl
È un server X in grado di sfruttare l'accelerazione hardware delle schede grafiche tramite OpenGL. Un'accelerazione decente si ha solo con l'utilizzo dei driver binari delle schede video, per cui se vi fa schifo installare i driver proprietari, è meglio che lasciate perdere subito.
Beryl
È una (relativamente) recente alternativa a Compiz, il primo window manager e compositing manager sviluppato per sfruttare Xgl e mostrare tutti gli effetti grafici che vedete nel video. Può funzionare anche con AIGLX, il parallelo di Xgl sviluppato dal Fedora Project, che però supporta meno hardware rispetto a Xgl. A differenza di Compiz, Beryl:
  • Usa un proprio formato per la configurazione al posto di gconf, minimizzando le dipendenze da gnome
  • Utilizza beryl-settings al posto di gnome-xgl-settings o gconf-editor
  • Ha molti più plugin e dispone di miglioramenti per i plugin disponibili anche per Compiz
  • Si avvia con beryl-manager
  • Ha un decoratore di finestre proprio (emerald) al posto del supporto per metacity di Compiz
  • Ha un theme manager proprio (emerald-themer) al posto del theme manager di gnome
  • Viene aggiornato di continuo con nuovi plugin e modifiche al codice
Se da una parte queste caratteristiche rendono Beryl più adatto a KDE (mentre Compiz si trova a suo agio su Gnome) e gli danno molti più effetti grafici, d'altro canto lo rendono più instabile, quindi valutate attentamente se volete davvero installarlo!
Emerald
È il theme manager di Beryl: in pratica permette di modificare l'aspetto delle finestre del sistema (attenzione: solo parti come i pulsanti di minimizzazione, massimizzazione e ridimensionamento, chiusura e shading, e l'aspetto del bordo delle finestre, barra del titolo inclusa).

Passiamo ora all'installazione. La procedura qui mostrata dovrebbe dare la possibilità di avere comunque un sistema perfettamente funzionante anche se qualcosa va storto, ma mai dire mai: fate un backup, che non fa mai male!.

Installazione

Se avete già in precedenza installato Compiz, rimuovetelo eseguendo da terminale:

sudo apt-get remove compiz compiz-gnome gset-compiz

Visto che non fa (quasi) mai male assicuriamoci di avere l'ultima versione di tutti i pacchetti:

sudo apt-get update
sudo apt-get dist-upgrade

Aggiungiamo ora i repository per l'installazione del software. Sempre da terminale scrivete:

sudo nano /etc/apt/sources.list

Andate alla fine del file e aggiungete queste tre righe:

# repository per Xgl e Beryl
deb http://www.beerorkid.com/compiz dapper main aiglx
deb http://media.blutkind.org/xgl/ dapper main aiglx

Per salvare le modifiche premete ctrl+o, premete invio e poi premete ctrl+x per uscire da nano. Adesso recuperiamo le chiavi pubbliche per controllare che il software non sia manomesso e poi installiamo il software necessario:

sudo wget http://www.beerorkid.com/compiz/quinn.key.asc -O - | sudo apt-key add -
sudo wget http://media.blutkind.org/xgl/quinn.key.asc -O - | sudo apt-key add -
sudo apt-get update
sudo apt-get install xserver-xgl libgl1-mesa xserver-xorg libglitz-glx1 beryl emerald-themes

Al termine di tutto questo Xgl sarà installato, ma c'è ancora da fare qualcosa prima di poterlo utilizzare in tutto il suo splendore

Aggiunta di un login grafico

Consiglio caldamente di non utilizzare Xgl come server X predefinito, ma di aggiungere un'opzione al login grafico, così se qualcosa andrà storto potrete ancora utilizzare normalmente KDE o Gnome. Creiamo prima di tutto un file per l'esecuzione di Xgl. Digitate:

sudo nano /usr/bin/startxgl.sh

Se usate gnome scriveteci quanto segue:

#!/bin/sh
Xgl -fullscreen :1 -ac -accel glx:pbuffer -accel xv:pbuffer & sleep 2 && DISPLAY=:1
exec gnome-session

se invece usate KDE scrivete:

#!/bin/sh
Xgl -fullscreen :1 -ac -accel glx:pbuffer -accel xv:pbuffer & sleep 2 && DISPLAY=:1
exec startkde

Premete ctrl+o, invio, ctrl+x. Rendiamo ora lo script eseguibile:

sudo chmod +x /usr/bin/startxgl.sh

Istruiamo ora kdm alla possibiltià di effettuare un nuovo tipo di login:

sudo nano /usr/share/xsessions/xgl.desktop

E inseriamo quanto segue:

[Desktop Entry]
Encoding=UTF-8
Name=XGL
Exec=/usr/bin/startxgl.sh
Icon=
Type=Application

Come sempre per salvare ctrl+o, invio, ctrl+x. Adesso le istruzioni si dividono:

  • Se usate KDE digitate:
    nano ~/.kde/Autostart/startupxglb.sh
    
    E inserite quanto segue:
    #!/bin/sh
    xprop -root -f _XKB_RULES_NAMES 8s -set _XKB_RULES_NAMES xorg
    setxkbmap -model pc105 -layout it
    if [ `ps aux | grep Xgl | grep -v grep | wc -l` -eq 1 ] ; then
    	beryl-manager
    	beryl-xgl
    fi
    
    Premete ctrl+o, invio, ctrl+x. Rendete lo script eseguibile con:
    chmod +x ~/.kde/Autostart/startupxglb.sh
    
  • Se usate gnome digitate:
    nano ~/startupxglb.sh
    
    E inserite quanto segue:
    #!/bin/sh
    xprop -root -f _XKB_RULES_NAMES 8s -set _XKB_RULES_NAMES xorg
    setxkbmap -model pc105 -layout it
    if [ `ps aux | grep Xgl | grep -v grep | wc -l` -eq 1 ] ; then
    	beryl-manager
    	beryl-xgl
    fi
    
    Premete ctrl+o, invio, ctrl+x. Rendete lo script eseguibile con:
    chmod +x ~/startupxglb.sh
    
    Poi andate nel menu System > Preferences > Sessions > Startup Programs e aggiungete
    /home/<vostro_nome_utente>/startubxglb.sh
    
    Attenzione: non uso Gnome, quindi non sono certo che questa procedura funzioni. All'ardito le sperimentazioni.

Siete pronti a testare il sistema. Riavviate tutto o, se preferite, premete ctrl+alt+backspace per riavviare il server X. Il vostr kdm (o gdm) dovrebbe rendervi disponibile un'altra sessione, di nome XGL. Selezionatela e fate login. Se tutto è andato bene avrete delle belle finestre gelatinose, un desktop cubico (usate ctrl+alt+tasto sinistro del mouse per girarlo), effetti di tutti i tipi per minimizzazioni e massimizzazioni e molto altro!

Problemi riscontrati

Davvero tanti :-P

Per usare un eufemismo diciamo che Xgl e Beryl non sono esattamente software stabilissimo. In effetti hanno la tendenza a crashare nei momenti più inopportuni... ma è software in via di sviluppo, quindi non lamentiamoci.

L'audio non va, e la cosa è alquanto assurda (cosa ha che fare l'audio con il server X utilizzato?), ma tant'è... se qualcuno ha informazioni a riguardo mi contatti! KDE senza AmaroK è come un calendario senza giorni, un ombrello senza pioggia, un gatto senza palla, un credente senza Dio (sto esagerando?) Addendum: l'audio cessa di funzionare quando Xgl crasha e viene riavviato, oppure in condizioni scomode del genere.

I font sono rimpiccioliti a dimensioni lillipuziane, ma niente che il pannello di configurazione del sistema (System Setting) non possa sistemare (se preferite lanciarlo da riga di comando usate systemsettings, e sudo systemsettings per sistemare i font anche da root, altrimenti adept e compagnia cantando saranno quasi illeggibili. La parte più difficile è stata come trovare ripristinare i font in Firefox (in effetti uso Swiftfox, ma è la stessa cosa): il trucco è aprire Firefox, digitare nella barra degli indirizzi about:config, cercare browser.display.screen_resolution e assegnargli il valore dei DPI del proprio schermo (tipicamente 72, 75 o 92). La funzione automatizzata che mette a disposizione Firefox per impostare questo valore non funziona con Xgl a quanto pare.

Per il resto è uno spettacolo per gli occhi! Divertitevi!

IppatsuMan v0.4