Ubuntu Edgy + Aiglx + Compiz

Dopo aver provato Xgl e Beryl, non poteva mancare nel bagaglio della mia linux-box 🙂 la prova di Aiglx e di Compiz (quello originale di David Reveman, diverso dal fork costituito da Beryl). E subito mi sono tuffato alla ricerca di guide e metodi per installarlo. Ho faticato parecchio per capire come fare e molti di voi lo sanno. La difficoltà era dovuta al fatto che non capivo che i driver Ati proprietari sono anche nei repositories e non solo nel sito ufficiale.
Alla fine, comunque, compreso questo particolare, sono riuscito facilmente ad installare il tutto e ad ammirare lo spettacolo offerto dall’accoppiata Aiglx-Compiz, che — credetemi — è di gran lunga migliore di quello Xgl-Beryl. I problemi non mancano anche qui, ma credo che la qualità sia superiore in Compiz, imho.

Fonte: forum di Ubuntu Italia.

Aggiornamenti
  • Aggiornamento del 23 novembre 2006: aggiornati i repo per Compiz**
  • Aggiornamento del 17 novembre 2006: un sentitissimo grazie a Nicola (Nki) per avermi dato preziosi ragguagli sulle schede nVidia. Grazie Nicola! 😉

Nota importante: se fate copia e incolla dei vari comandi da terminale e delle stringhe per il file xorg.conf, state attenti a che le virgolette siano quelle semplici (che si hanno digitando il carattere Shift+2) e NON quelle tipografiche inclinate, altrimenti Linux non comprenderà i comandi!!

Cominciamo dai driver

La guida che propongo è per le Ati (le meno adatte a questo giochino, ma diciamo che vanno) ma funziona anche con le nVidia (segnalo nella guida cosa cambiare). Non so null’altro delle nVidia, tranne che sono particolarmente compatibili con Aiglx. Anche le integrate Intel vanno bene.

a) Driver Ati

Anzitutto (e qui avevo inciampato…) dobbiamo capire la differenza tra i vari driver Ati.

Diciamo che Aiglx è compatibile — al momento attuale — solo con i driver open, cioè quelli inclusi in X.org. Uno schema illustra meglio le cose.

  • Driver proprietari: si possono scaricare dal sito Ati ufficiale oppure dai repo, e sono caratterizzati dalla sigla fglrx. Se andate in Synaptic e cercate fglrx vedrete che si chiamano xorg-driver-fglrx. |
  • Driver open: sono già installati di default in Edgy (credo anche in Dapper, ma non l’ho mai verificato) e si chiamano xserver-xorg-video-ati. Potete verificarlo in Synaptic. Se li avete installati, bene! Verificate che il direct rendering sia attivo, digitando nel terminale:
glxinfo | grep rendering

Se vi risponderà:

direct rendering: Yes

potete procedere alla installazione di Compiz.

Se, al contrario, avete installato i driver proprietari, dovete rimuoverli e installare quelli open perché Aiglx non va con i driver proprietari (ve lo dico anche per esperienza diretta!).

b) Driver nVidia

Per le nVidia, al contrario delle Ati, dovete installarvi i driver proprietari.

Vi consiglio di seguire questa pagina di Alberto Milone: scegliete la versione di Ubuntu che state usando e quindi procedete alla installazione del driver nVidia. Dopo il necessario riavvio della macchina, tornate qua e proseguite con Compiz.

Installiamo Compiz

Anzitutto aggiungiamo i repositories di Gandalfn nel nostro sources.list. Apriamo il terminale e scriviamo:

sudo gedit /etc/apt/sources.list

e incolliamo alla fine del file:

# Repo per Compiz originale (Reveman)
deb http://gandalfn.club.fr/ubuntu edgy stable

Questo è il repo per la versione stabile di Compiz. Esiste anche quello per le versioni di sviluppo non ancora rilasciate ufficialmente, e quindi potenzialmente instabili. Se volete cimentarvi, ecco il repo:

# Repo per Compiz originale (Reveman) - SVILUPPO
deb http://gandalfn.club.fr/ubuntu edgy stable dev

Installiamoci le chiavi per autenticare i pacchetti:

gpg --keyserver hkp://wwwkeys.eu.pgp.net --recv-keys 0x483170E9
gpg --export -a 0x483170E9 | sudo apt-key add -

Aggiorniamo ora apt:

sudo apt-get update

e installiamo Compiz, scegliendo in base al desktop manager; su Gnome date:

sudo apt-get install compiz gnome-compiz-manager

Per gli altri desktop manager, afaik, dovete mettere compiz-freedesktop-kde oppure compiz-freedesktop-xfce a seconda che abbiate l’uno o l’altro. Se mi fate sapere, posso aggiornare qui questa informazione.

Se volete, potete installarvi i plugin aggiuntivi (gli extra) per Compiz, che vi daranno ulteriori effetti. Questi pacchetti sono disponibili solo se avete attivato i repo di sviluppo:

sudo apt-get install compiz-extra compiz-extra-plugins compiz-extra-gnome gnome-compiz-manager-extra

Ritocchi a xorg.conf

Apriamo il terminale e facciamo un backup di xorg.conf:

sudo cp /etc/X11/xorg.conf /etc/X11/xorg.conf.primadicompiz

È importante che facciate il backup, perché in caso di problemi lo ripristinate in un lampo e ripartite come prima.

Poi editiamolo:

sudo gedit /etc/X11/xorg.conf

Vediamo per ordine cosa fare. Vi indico le sezioni da modificare, postandovi come è in effetti il mio xorg.conf, escluse le sezioni non interessate. Per le nVidia, posto sempre la differenza evidenziandola in corsivo.

Sezione “Module”

Semplicemente verificate che ci siano le due righe con dri e glx (questa vostra sezione potrebbe differire dalla mia, per cui verificate solo le due voci, eventualmente aggiungetele):

Section "Module"
Load "i2c"
Load "bitmap"
Load "ddc"
Load "dri"
Load "extmod"
Load "freetype"
Load "glx"
Load "int10"
Load "type1"
Load "vbe"
EndSection

Se avete anche la riga Load GLcore, mettete un cancelletto all’inizio della riga, cioè così:

#Load GLcore

Solo per le nVidia: NON attivate Load "dri", anzi mettete un cancelletto (#) ad inizio riga.

Sezione “Device”

a) Scheda Ati

Section "Device"
Identifier "Vostra scheda video"
Driver     "radeon"
BusID      "Vostro busID"
Option     "RenderAccel" "true"
Option     "NoRenderExtension" "false"
Option     "DisableGLXRootClipping" "true"
Option     "AddARGBGLXVisuals" "true"
Option     "AllowGLXWithComposite" "true"
Option     "XAANoOffscreenPixmaps" "true"
EndSection

Attenzione alla seconda riga. Se avete una scheda Ati, mettete tra le virgolette "radeon" (al posto di "ati"). Quindi aggiungete le ultime 6 Option.

b) Schede nVidia

Section "Device"
Identifier "Vostra scheda video"
Driver     "nvidia"
BusID      "Vostro busID"
Option     "RenderAccel"           "1"
Option     "XAANoOffscreenPixmaps" "1"
Option     "AllowGLXWithComposite" "1"
EndSection

Sezione “Screen”

Section "Screen"
Identifier   "Default Screen"
Device       "Vostro modello"
Monitor      "Vostro modello"
DefaultDepth 24

Accertatevi solo di avere il valore 24 nel DefaultDepth.

Per le schede nVidia

Aggiungete prima di DefaultDepth questa riga:

Option "AddARGBGLXVisuals" "1"

Sezione “ServerLayout”

Section    "ServerLayout"
Identifier "Default Layout"
Option     "AIGLX" "true"
Screen     "Default Screen"
EndSection

Inserite la riga Option e Aiglx.

Per le schede nVidia (Sezione “ServerLayout”)

NON abilitate la voce AIGLX. I nuovi driver supportano nativamente Compiz.

Sezione “Modules”

Section "DRI"
Mode    0666
EndSection

Accertatevi che ci sia questa sezione e con questi valori.

Per le schede nVidia (Sezione “Modules”)

Se avete questa sezione, commentatela tutta, mettendo il simbolo # o cancellatela tutta.

Nuova sezione “Extensions”

Section "Extensions"
Option  "Composite"  "Enable"
EndSection

Non dovreste avere questa sezione, per cui aggiungetela alla fine del file.

Per le schede nVidia:

Section "Extensions"
Option "Composite" "Enable"
Option "RENDER" "true"
Option "DAMAGE" "true"
EndSection

Chiudete e salvate il file. Riavviate il sistema. Al riavvio, se tutto procederà per il verso giusto, potrete godervi il vostro Compiz. Ricordo alcune combinazioni di tasti per chi non li conoscesse:

  • Ctrl+Alt e tasto sinistro del mouse fanno girare il cubo
  • Ctrl+Alt+freccia sinistra/destra fanno girare il cubo
  • Ctrl+Alt+freccia in giù dispiega il cubo
  • Ctrl+Alt+freccia in su mostra le finestre aperte (come Exposè di Mac OSX)
  • Alt+rotellina del mouse su una finestra riduce o aumenta l’opacità della stessa
  • Super (tasto Win)+rotellina fanno lo zoom dello schermo (se avete attivato l’opzione nelle preferenze di Compiz).
    A proposito, le preferenze di Compiz potete cambiarle facendo clic destro sul simbolo del cubo rosso vicino all’orologio.
  • Per altre combinazioni date uno sguardo qua.

Se il sistema grafico non si avvia

Se durante il riavvio non vi parte il sistema grafico e vi spunta la semplice schermata nera, non allarmatevi. Premete la combinazione di tasti Alt+F2 (se non avete già il prompt) e loggatevi normalmente (il sistema è comunque avviato, avrete davanti a voi solo il potente terminale di Linux).

Digitate:

sudo cp /etc/X11/xorg.conf.primadicompiz /etc/X11/xorg.conf

cioè stiamo ripristinando l’xorg.conf di cui avevamo fatto il backup poco fa.

Digitate poi:

sudo shutdown -r now

e il sistema ripartirà normalmente e ritornerete a Edgy come se non aveste fatto nulla. Avrete solo Compiz installato ma non funzionante.

A questo punto vi consiglio di rivedere la guida da cima a fondo per controllare eventuali sbagli. Se non avete commesso errori, avete tre possibilità:

  1. disinstallare Compiz, per tornare a Ubuntu pulita come prima, col comando:
sudo apt-get remove --purge compiz-freedesktop-gnome gnome-compiz-manager

sostituendo la dicitura compiz-freedesktop-gnome con quello che avevate installato (kde o xfce)

  1. provare altre guide (Janvitus, Pollycoke, Gandalfn, cioè le migliori). La guida che state leggendo ha funzionato perfettamente nel mio sistema, ma questo non vuol dire che faccia altrettanto nel vostro
  2. la vostra scheda non è compatibile con Aiglx (difficile che accada, ma possibile).

Prima di lasciarvi, vi chiedo di segnalarmi eventuali inesattezze qui presenti. L’ho controllata punto per punto, ma l’errore è sempre in agguato.

Totem

Un ritocco per la visione dei video in Totem. Se utilizzate totem-gstreamer, date nel terminale:

gstreamer-properties

aprite la scheda video e selezionate in default video playback XWindow (NoXv).

Se utilizzate totem-xine, date nel terminale:

gedit ~/.gnome2/totem_config

e sostituite la riga #video.driver:auto con video.driver:xshm.

Nota: la tilde (~) si ottiene con Alt-Gr+ì e indica la vostra cartella home.

Con amicizia,
Aldo