Compiz Fusion e KDE
***
AGGIORNAMENTO:
Questo articolo è datato. Le istruzioni che seguono non sono più valide per versioni di compiz recenti. Per maggiori informazioni vi rimando al commento di Divilinux.
***
Chiunque abbia provato almeno una volta ad avviare Compiz Fusion in ambiente KDE 3.x avrà notato vari problemi con Kicker, il pannello di KDE. Icone sballate o in posizioni errate, altre addirittura scomparse, Pager non più funzionante, e così via… tutti problemi causati dall’avvio ritardato di compiz e dall’uccisione di kwin, il window manager predefinito di KDE. C’è un modo per ovviare a questi problemi tanto stupidi quanto fastidiosi, e consiste nel far caricare direttamente compiz al posto di kwin: la soluzione è semplicissima, eppure tutti gli howto che mi sono ritrovato a leggere ignorano completamente il problema.
All’avvio di ogni sessione, KDE legge dalla variabile globale KDEWM quale window manager lanciare. Se la variabile non è definita, viene avviato kwin. In Debian è possibile definire variabili globali nel file /etc/environment; tutto quello che dobbiamo fare è creare uno script per l’avvio di compiz, quindi definire la variabile KDEWM in modo che punti al suddetto script.
Personalmente, sono solito usare la directory /usr/local/bin per tutti gli script fatti a mano, in modo da tenerli sempre separati dagli eseguibili e dagli script installati invece tramite gestore pacchetti. In questo modo è molto più semplice tenerne traccia, e si riesce a mantenere il proprio sistema sempre pulito ed ordinato.
Prima di tutto installiamo Compiz Fusion seguendo le ottime istruzioni di Madrefoca.
Creiamo il file /usr/local/bin/startcompiz e al suo interno inseriamo qualcosa di simile a questo:
#!/bin/bash
compiz -l --replace --sm-disable --ignore-desktop-hints ccp --loose-binding
Queste sono le opzioni con cui io avvio compiz e non è detto che vadano bene per tutti. Sostituitele con quelle che fanno al caso vostro. Salviamo il file e rendiamolo eseguibile:
chmod +x /usr/local/bin/startcompiz
Ora apriamo nel nostro editor preferito il file /etc/environment (se non esiste lo creiamo) e inseriamo al suo interno la seguente linea:
KDEWM="/usr/local/bin/startcompiz"
D’ora in avanti KDE avvierà compiz al posto di kwin e prima di kicker, che non avrà più problemi a funzionare in modo corretto.


Venerdì 4 Aprile 2008 16:09
Ciao

Nessuno dei problemi che segnali..
Il trucco sta nell’avviare compiz e chiudere la sessione con compiz attivato.
In questa maniera, senza ricorrere ad alcuno script..e salvando la sessione dal kcontrol, compiz verra’ avviato automaticamente e correttamente ad ogni sessione..il tema predefinito (n accordo col wrapper /usr/bin/compiz) rimane kwin. Gli script interferiscono con la sessione di compiz che in pratica viene avviato due volte.
ciao..
Venerdì 4 Aprile 2008 16:29
Quello che dici è giusto.
Ai tempi della stesura di questo articolo lo script di avvio di compiz non gestiva correttamente il window manager predefinito di KDE.
Ti ringrazio per l’aggiornamento, aggiorno l’articolo.
Domenica 6 Aprile 2008 18:22
[...] IN KDE: Devo ammetterlo, per me questo è stato un calvario. Grazie però all’articolo di voRia voi non avrete problemi. In pratica dobbiamo dire a KDE di caricare all’avvio Compiz-Fusion [...]
Lunedì 16 Giugno 2008 19:13
ehm se volessi far partire compiz con emerald che comando dovrei mettere in startcompiz.sh??
Lunedì 16 Giugno 2008 22:28
Questo howto non è più valido per versioni di compiz recenti.
Ora, non so che distro stai usando, comunque in ubuntu ho notato che è disponibile una variabile nello script ‘/usr/bin/compiz-decorator’ chiamata ‘USE_EMERALD’ e settata di default a ‘no’. Penso sia sufficiente installare emerald tramite gestore pacchetti, quindi modificare la suddetta variabile a ‘yes’.
Non ho provato però personalmente questa cosa, sono tutte mie supposizioni.
Il consiglio è quello di provare, dato che la modifica è completamente reversibile in caso di eventuali problemi.