diff options
Diffstat (limited to 'x11-wm/compiz/files/0.3.6/compiz-start')
-rwxr-xr-x | x11-wm/compiz/files/0.3.6/compiz-start | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/x11-wm/compiz/files/0.3.6/compiz-start b/x11-wm/compiz/files/0.3.6/compiz-start new file mode 100755 index 000000000000..161068bdf537 --- /dev/null +++ b/x11-wm/compiz/files/0.3.6/compiz-start @@ -0,0 +1,41 @@ +# compiz-start script +# +# hacky autodetection of neccessary options for XGL/AIGLX/NVIDIA +# +# Hanno Boeck, http://www.hboeck.de/ +# +# Licensed under the same conditions as compiz itself (MIT or GPL) + +if [ ! -x /usr/bin/glxinfo ]; then + echo "glxinfo not found, please install mesa-progs." + exit -1 +fi + +GLX_WITH_DIRECT=`glxinfo|grep -c GLX_EXT_texture_from_pixmap` +GLX_WITH_INDIRECT=`LIBGL_ALWAYS_INDIRECT=1 glxinfo|grep -c GLX_EXT_texture_from_pixmap` +GLX_RENDER=`glxinfo|grep -c "OpenGL renderer string: Mesa GLX Indirect"` + + +COMPIZ_OPTIONS="--replace" + +if [ $GLX_WITH_DIRECT -eq 3 ]; then + if [ $GLX_RENDER -eq 0 ]; then + echo NVIDA detected + export __GL_YIELD="NOTHING" + else + echo XGL detected + fi +elif [ $GLX_WITH_INDIRECT -eq 3 ]; then + echo AIGLX detected + export LIBGL_ALWAYS_INDIRECT=1 +fi + +if [ ! -z $KDE_FULL_SESSION ] && [ -x /usr/bin/kde-window-decorator ]; then + echo Using KDE decorator + kde-window-decorator --replace & +else + echo Using GTK decorator + gtk-window-decorator --replace & +fi + +compiz $COMPIZ_OPTIONS gconf move resize minimize place decoration wobbly fade cube rotate scale switcher zoom dbus |