compiz needs --strict-binding and --indirect-rendering option for running in aiglx. Preferrably it should autodetect which kind of x is running and set options accordingly. I once wrote a patch for that (attached), but both krh and davidr weren't happy with the kind it works (detect if tfp-extension is in GLX extensions) and it seems not to work sometimes. Probably introduce some variable that can be read by compiz?
Created attachment 6850 [details] [review] Detect aiglx if tfp-extension not in GLX extensions
Also, for AIGLX, compiz should use COW. I'm sitting on the patch to add COW support as an option, will commit that shortly.
Debian uses a wrapper script for this, see http://git.debian.org/?p=pkg-xorg/app/compiz.git;a=blob;h=ae4bf40eb933bb639700abf648a19fd1a45d75aa;hb=564d9ea992eaf29b8e862596af1aad8ac465f7e4;f=debian/compiz.wrapper
Compiz should be able to do the right thing, but a bug in libGL prevents this from working right. It already uses COW by default and since at least 0.3.6, compiz falls back to indirect rendering if tfp is not available in direct mode. AIGLX should advertise tfp in indirect mode, but this currently only works if libGL is forced into indirect mode by setting LIBGL_ALWAYS_INDIRECT. If this inconsitency is fixed (Hanno tracked this down, but I don't remember if he had a patch for it), compiz should just work out of the box on either Xgl or AIGLX.
Sorry about the phenomenal bug spam, guys. Adding xorg-team@ to the QA contact so bugs don't get lost in future.
*** Bug 11328 has been marked as a duplicate of this bug. ***
This has been dealt with a few times since this bug was dealt with. If this is still considered an issue, feel free to re-open on bugs.opencompositing.org.
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.