KDE-compiz-gcompizthemer-Autostart-HowTo

pinocchio

pinocchio

Linux-User
Ich benutze KDE und XFCE4 mit dem Xgl-Server. Als Windowmanager läuft compiz mit cgwd (gcompizthemer) und gconf. Als BS nutzte ich SuSE 10.1 ... jaja... ist bei einigen nicht so beliebt...hab auch schon FreeBSD probiert.
Ich wollte eine Xgl-KDE Session mit Compiz im KDM Loginmanager starten können. Als Lösung legte ich unter /usr/share/xsessions die Datei kde-XGL.desktop mit folgendem Inhalt an:

[Desktop Entry]
Comment=
Comment[de]=
Encoding=UTF-8
Exec=/usr/bin/startxgl.sh
GenericName=
GenericName[de]=
Icon=
MimeType=
Name=kde-Xgl
Name[de]=kde-Xgl
-------------------------------------
nun, dies alleine reichte leider nicht. Ein Script habe ich mit folgendem Inhalt unter /usr/bin/startxgl.sh abgelegt:

#!/bin/sh
LOCKFILE=$HOME/.xgl.log

> $LOCKFILE
#ACHTUNG nur NVIDIA-Kraka
Xgl :1 -nolisten tcp -fullscreen -ac -accel xv:fbo -accel glx:pbuffer &
DISPLAY=:1
exec startkde


------------------------------------
ACHTUNG: für ATI-Karten lautet die letzten Zeilen so:
Xgl :1 -nolisten tcp -fullscreen -ac -accel glx:pbuffer -accel xv:pbuffer &
DISPLAY=:1
exec startkde
------------------------------------

nun kann man im Loginmanager die Sitzung "kde-Xgl" auswählen. Diese startet das Script /usr/bin/startxgl.sh und schreibt gleichzeitig eine Log-Datei ins jeweilige User-Verzeichniss.
Dieses Log-Datei (LOCKFILE=$HOME/.xgl.log) wird benötigt um den Fenstermanager "Compiz" bei einer KDE-Xgl-Sitzung zu starten jedoch nicht bei einer normalen KDE-Sitzung. Ein Script unter /usr/local/bin/Compiz/ mit der Bezeichnug kde-compiz.sh mit diesem Inhalt nutzt diese Log-Datei:

!#/bin/bash
LOCKFILE=$HOME/.xgl.log
if [ -f $LOCKFILE ]
then
echo "Compiz wird gestartet"
sleep 7
killall kwin
compiz --replace gconf wobbly fade minimize cube rotate zoom scale move resize place switcher & cgwd &
echo "löschen des Logfiles"
sleep 5
rm $LOCKFILE
fi
-----------------------------------
dieses Script löscht jene Log-Datei (LOCKFILE=$HOME/.xgl.log) beim ausführen.
Damit dieses automatisch bei KDE-Start geschieht, wird eine Datei compiz.desktop unter /home/"USERNAME"/.kde/Autostart mit folgendem Inhalt angelegt:

[Desktop Entry]
Comment=
Comment[de]=
Encoding=UTF-8
Exec=sh '/usr/local/bin/Compiz/kde-compiz.sh'
GenericName=
GenericName[de]=
Icon=
MimeType=
Name=compiz laden
Name[de]=compiz laden
------------------------------------
nun kann die Compiz-Erweiterungen (wabbelnde Fenster,Cube-Effekt,....) nur bei laufender Xgl-KDE-Session geladen werden und sorgt bei normaler KDE (X.org)-Session für fehlerfreien Betrieb, da die Log-Datei (LOCKFILE=$HOME/.xgl.log) nur bie Xgl produziert wird und nicht beim X.org-Server.

Natürlich sollte die Grafikkarte (NVIDIA oder ATI) mit 3D-Beschleunigung laufen und alle nötigen Programme sollten installiert sein. Dieser Schnipsel sollte bei der Datei /etc/X11/xorg.conf noch angefügt werden:

Section "Extensions"
Option "Composite" "Enable"
EndSection
-----------------------------------
dieses HowTo ist das Ergebnis einer langwierigen Recherche im Internet auf diversen Foren und Wiki´s. Lediglich die Lösung mit der Logdatei habe ich selber durch probieren entdeckt. Wer dieses super funktionierende Ergebnis nachbauen will sollte einen Texteditor (gedit,emacs,vi,kwrite) und die Shell bedienen können und geduldig probieren. Auch auf XFCE, Gnome übertragbar....viel Spaß....

Pinocchio :D
 
Zuletzt bearbeitet:

Ähnliche Themen

rsnapshot und ein Rechteproblem?

Falsche Rechte gesetzt beim Anlegen von Ordnern via Samba-Client

Displayport + externer Monitor zeigt bei startx nichts erst bei DVI

Kein WM startet mit Benutzer/root, außer Xfce !

Ubuntu X / dbus problem

Zurück
Oben