This document is a synthesis of the various threads I have read on the topic of getting compiz working. It is also my experience in setting up compiz on three different machines: A Compaq C540US laptop, a Toshiba Satellite 1005-S157 laptop, and a generic PII 450 MHz tower with a 64 Meg ATI Radeon. Both laptops are equipped with Intel video chipsets (945 and 830 respectively).
This document is inspired by and borrows from
this howto document.
Please note, I am not a Slackware guru. This is my experience, and the results of direct experimentation with all of the above listed systems. Compiz is fairly buggy; therefore, your results will most likely vary. All the steps below assume you are using KDE.
Contrary to popular opinion, adding the lines below to your /etc/X11/xorg.conf isn't required. As a matter of fact, their inclusion made compiz less stable on all of the above listed systems. I invite anyone with other video cards (especially nvidia) to experiment as to whether the below these lines are needed, and post your results in this thread.
Code:
Option "AddARGBGLXVisuals" "True"
Option "DisableGLXRootClipping" "True"
Option "AllowGLXWithComposite" "True"
Option "RenderAccel" "True"
Option "TripleBuffer" "True"
If you are running a custom kernel, make sure you set the option Character devices-->Direct Rendering Manager (XFree86 4.1.0 and higher DRI support)--><your video driver> as a module. If you compile that option directly into the kernel, you will get the following error:
Code:
"compiz: No GLXFBConfig for default depth, this isn't going to work."
If you are running one of the kernels that ships on the Slackware 12 install, you should be fine as far as this area is concerned.
Making compiz work:
1) Cut and paste the scripts below, make them executable, and place them in your /usr/local/bin directory. Invoke cstop once under "Run command". That will make it much easier to stop compiz when it weirds out. You can also then invoke cstart with "Run command" after you get compiz configured and functional.
cstart:
Code:
#! /bin/sh
# cstart: a script to start compiz and kde-window-decorator.
LIBGL_ALWAYS_INDIRECT=1 compiz --replace decoration ini &
kde-window-decorator &
cstop:
Code:
#! /bin/sh
# cstop: script to stop compiz
kwin --replace &
2) Edit your /etc/X11/xorg.conf file to include the following lines into the file:
Code:
Section "Extensions"
Option "Composite" "enable"
EndSection
3) Save /etc/X11/xorg.conf and restart KDE.
4) In a konsole session, type "mkdir ~/.compiz".
5) In the same konsole session, type "cstart". You should get the following output:
Code:
[1] 17949
[2] 17950
root@darkstar:~# Could not open main display config file /root/.compiz/options/general-allscreens.conf
Loading default plugins (ini,inotify,png,decoration,move,resize,switcher)
Could not open config file /root/.compiz/options/general-screen0.conf - using defaults for core
Could not open config file /root/.compiz/options/decoration-allscreens.conf - using defaults for decoration
Could not open config file /root/.compiz/options/move-allscreens.conf - using defaults for move
Could not open config file /root/.compiz/options/resize-allscreens.conf - using defaults for resize
Could not open config file /root/.compiz/options/switcher-screen0.conf - using defaults for switcher
Could not open config file /root/.compiz/options/switcher-allscreens.conf - using defaults for switcher
kde-window-decorator: Could not acquire decoration manager selection on screen 0 display ":0.0"
6) Start a new console session, and enter "cstop", or invoke cstop from "Run command".
7) Edit your ~/.compiz/options/general-allscreens.conf file. Under the section "active_plugins", add the plugins you want to start with compiz. Below are the options I chose:
Code:
active_plugins=decoration,ini,svg,png,wobbly,fade,minimize,cube,move,place,resize,rotate,scale,switcher,zoom
8) In a konsole session, type "cstart". You should get the following output:
Code:
[1] 19445
[2] 19446
root@darkstar:~# compiz: Plugin 'ini' already active
Could not open config file /root/.compiz/options/wobbly-screen0.conf - using defaults for wobbly
Could not open config file /root/.compiz/options/wobbly-allscreens.conf - using defaults for wobbly
Could not open config file /root/.compiz/options/fade-screen0.conf - using defaults for fade
Could not open config file /root/.compiz/options/minimize-screen0.conf - using defaults for minimize
Could not open config file /root/.compiz/options/cube-screen0.conf - using defaults for cube
Could not open config file /root/.compiz/options/cube-allscreens.conf - using defaults for cube
Could not open config file /root/.compiz/options/place-screen0.conf - using defaults for place
Could not open config file /root/.compiz/options/rotate-screen0.conf - using defaults for rotate
Could not open config file /root/.compiz/options/rotate-allscreens.conf - using defaults for rotate
Could not open config file /root/.compiz/options/scale-screen0.conf - using defaults for scale
Could not open config file /root/.compiz/options/scale-allscreens.conf - using defaults for scale
Could not open config file /root/.compiz/options/zoom-screen0.conf - using defaults for zoom
Could not open config file /root/.compiz/options/zoom-allscreens.conf - using defaults for zoom
kde-window-decorator: Could not acquire decoration manager selection on screen 0 display ":0.0"
At this point, compiz should be up and running with all of your chosen plugin options. Now you should be able to start and stop compiz at will.
Some final words: This was done with the version of compiz that ships with Slackware 12. The above steps will most likely work with the other precompiled Slackware versions of compiz that are circulating around the Internet, but I can't say so unequivocally. Please post back as to whether or not this works for you.
Blessed be!
Pappy