Compiz in portage

Tuesday, September 19. 2006, 23:38
Compiz in actionAfter the release of mesa 6.5.1 and some patches added to xorg-server, I was able to add compiz to the portage tree. So we now have a running aiglx/compiz-setup in Gentoo.

It comes along with a script compiz-aiglx that runs the neccessary options and loads all default-plugins. If you're using ~x86 and have a card supported by free dri drivers, you should be fine. If you're using stable, a package.keywords suitable is in my overlay.

If you were using my overlay in the past, make sure you emerge rsync and svn up in the overlay, after that update mesa, xorg-server and compiz from portage. If you relied on the autodetection-hack I previously had, this is removed in the portage-ebuild, so you need to set LIBGL_ALWAYS_INDIRECT=1 and add option --strict-binding (or just use the above mentioned compiz-aiglx script).

Further stuff (configuration tools, quinnstorm stuff) will follow. Submit problems to the Gentoo bugzilla.

Thanks to all the testers and helpers, especially thanks to David Reveman and Kristian Høgsberg for their great coding work.

Trackbacks

No Trackbacks

Comments
Display comments as (Linear | Threaded)

Hmm, why does compiz depend on gnome-base/gnome-desktop and gnome-base/control-center? I don't use them as a Xfce-user.
#1 Silenzium on 2006-09-20 12:08 (Reply)
I've now stripped some gnome-deps. It still needs a bunch of gnome libs, because gnome-window-decorator is the only way to run compiz at the moment with decorations (and running without doesn't make much sense).
#1.1 Hanno (Link) on 2006-09-21 15:52 (Reply)
Had a deeper look, it seems to be impossible at the moment to build compiz without control-center and that needs the whole bunch of deps. Would probably need some restructuring upstream to have less deps.
#1.1.1 Hanno (Link) on 2006-09-21 17:10 (Reply)
You can run compiz-quinnstorm with cgwd, which I understand is based on gnome-window-decorator but with a more reasonable list of deps.
#1.1.2 chithanh on 2006-09-21 19:14 (Reply)
Really, is there a way to avoid nautilus/control-center/etc. compiling?
#2 gfdsa (Link) on 2006-09-20 12:52 (Reply)
Thank you so much for your work, it's running flawlessly on my Macbook.
#3 Hendrik on 2006-09-21 09:23 (Reply)
I think you're missing "x11-proto/glproto" in your stable package.keywords. I'm running emerge now, will try out the tips and report back...
#4 lch on 2006-09-22 14:44 (Reply)
Same as before:

compiz: No GLXFBConfig for default depth, this isn't going to work.
compiz: Failed to manage screen: 0
compiz: No manageable screens found on display :0

I'll try to downgrade to a revision that works, instead... :-(
#4.1 lch on 2006-09-22 21:16 (Reply)
Wait, I noticed that this was not the only thing that has gone, I no longer had DRI, too. The Xorg.0.log had

drmOpenDevice: node name is /dev/dri/card0
drmOpenDevice: open result is -1, (No such device or address)
drmOpenDevice: open result is -1, (No such device or address)
drmOpenDevice: Open failed
[drm] failed to load kernel module "radeon"
(EE) RADEON(0): [dri] RADEONDRIGetVersion failed to open the DRM
[dri] Disabling DRI.

and "modprobe radeon" gave
WARNING: Error inserting drm (/lib/modules/2.6.15-gentoo-r8/x11-drm/drm.ko): Invalid module format
FATAL: Error inserting radeon (/lib/modules/2.6.15-gentoo-r8/x11-drm/radeon.ko): Invalid module format

Then it was brought to my attention that I upgraded gcc to 4.1.1 (including world), but didn't recompile the kernel although I emerged x11-drm again. I did that now, now I have direct rendering again, but as soon as I run compiz the monitor freezes. Keyboard and mouse are still recognized, but you can't see any actions you do on the screen anymore. The only thing that I can see in the Xorg.0.log now that may explain erratic behaviour is

(WW) AIGLX: 3D driver claims to not support visual 0x23
(WW) AIGLX: 3D driver claims to not support visual 0x24
(WW) AIGLX: 3D driver claims to not support visual 0x25
(WW) AIGLX: 3D driver claims to not support visual 0x26
(WW) AIGLX: 3D driver claims to not support visual 0x27
(WW) AIGLX: 3D driver claims to not support visual 0x28
(WW) AIGLX: 3D driver claims to not support visual 0x29
(WW) AIGLX: 3D driver claims to not support visual 0x2a
(WW) AIGLX: 3D driver claims to not support visual 0x2b
(WW) AIGLX: 3D driver claims to not support visual 0x2c
(WW) AIGLX: 3D driver claims to not support visual 0x2d
(WW) AIGLX: 3D driver claims to not support visual 0x2e
(WW) AIGLX: 3D driver claims to not support visual 0x2f
(WW) AIGLX: 3D driver claims to not support visual 0x30
(WW) AIGLX: 3D driver claims to not support visual 0x31
(WW) AIGLX: 3D driver claims to not support visual 0x32
(II) AIGLX: Loaded and initialized /usr/lib/dri/radeon_dri.so

glxgears tells the same:
libGL warning: 3D driver claims to not support visual 0x4b

Any help?
#4.1.1 lch on 2006-09-23 01:49 (Reply)
Forget what I wrote. There was a more recent compiz version available (0.0.13_pre20060921) and this was used when I emerged compiz. I had a look at the overlay and used the correct one via "emerge =compiz-0.0.13_pre20060916". Everything works again.
#4.1.1.1 lch on 2006-09-23 14:01 (Reply)
Just installed based on instructions here:
http://gentoo-wiki.com/HOWTO_AIGLX#Aiglx_with_compiz:_Hanno.27s_Overlay

compiz-0.0.13_pre20060916 was the one installed by default.
I'm getting the same problem:

compiz: No GLXFBConfig for default depth, this isn't going to work.
compiz: Failed to manage screen: 0
compiz: No manageable screens found on display :0

And:

[drm] failed to load kernel module "radeon"
(EE) RADEON(0): [dri] RADEONDRIGetVersion failed to open the DRM
[dri] Disabling DRI.

Anyone found a cause/solution?

I have an AMD 3200+ and a ATI Radeon 9200 with a dual head setup. Although, I'm not running dual head yet. I want to get AIGLX running first...

Also, this is a fresh install of Gentoo.
#4.1.1.1.1 Barry on 2006-09-26 21:16 (Reply)
Got it working. After more research, I found out I didn't compile AGPGART or my AGP chipset drivers or the DRM module. Now I'm having trouble with dual-head + compiz-aiglx. Only the left half of my left screen draws when compiz is active. And, the top and bottom of the cube only partially render.
#4.1.1.1.1.1 Barry on 2006-09-27 00:10 (Reply)
Figured out the problem. I actually got it working with a dual 800x600 desktop. Even tho 2048x2048 textures are supported, if you try to do a 2048x768 dual-head setup, you get bad artifacts and half-rendered screens. A 1024x1536 setup worked good, too. However, I can't setup my LCD's like that without some better mounts. Even switching to a 2040x768 desktop (8 pixel overlap) fixed the partial render problem. Just for kicks, I even got a 2040x1024 (two 1280x1024 displays with a 520 pixel overlap :-)) working.

Anyway, now I'm back to a non-compiz/aiglx desktop at 2560x1024 till I can afford a new graphics card that supports XGL and larger textures...

One question: is it possible to have more than one 2048x2048 texture? I'm wondering if I can do a non-xinerama desktop where the mouse can go between them, but not apps. It would probably end up being 2 independant desktop cubes.
#4.1.1.1.1.1.1 Barry on 2006-09-29 23:46 (Reply)
Man, I spent the night reading about ppl's failures with ATI dual screen setups in compiz. You mean you got it working? If so, for the love of linux, write a howto and post it. You will recive eternal fame and fortune (well maybe not that, but a lot of ppl will be very happy. Me for example)

I read Hanno's blog from time to time (googl has a thing for it) but I'd rather you mail me so I don't have to remember to check back ;o)
#4.1.1.1.1.1.1.1 d-Pixie on 2006-10-24 03:33 (Reply)
I am trying portage aiglx/compiz on i815 chip, old dell laptop.
The intel site says chip will only do 16bit depth, so I have set xorg.conf for this.
But now compiz says "compiz: No GLXFBConfig for default depth, this isn't going to work."
Any advice on if this is fixable, and where I should look for help.
Thanks for your work
David
#5 David on 2006-09-26 22:23 (Reply)
Does anyone know if aiglx would work "out of the box" with the latest gnome/metacity (2.6.0/2.16.2)?
#6 R!tman on 2006-09-30 19:49 (Reply)
I'm just asking because I'm not sure if I'd like to use compiz when metacity can do the job ;-).

BTW, which of the two would you recommend (compiz/metacity) and if possible why? Thx
#6.1 R!tman on 2006-09-30 20:50 (Reply)
Don't know where else to ask this: Is it possible to get around the 2048x2048 texture size limit by breaking up the desktop into multiple textures?
#7 Barry on 2006-10-06 18:00 (Reply)
Hi guys,

I'm hoping that one of you guys could help me out.

I just upgraded my Xorg from 7.0 to 7.1. I'm using Debian/testing 2.6.16.

The problem that I'm having after upgrading Xorg to 7.1 is

[dri] RADEONDRIGetVersion failed to open the DRM

I already did dpkg-reconfigure xserver-xorg with no success.

Here is the log that you guys would like to take a look:

X Window System Version 7.1.1
Release Date: 12 May 2006
X Protocol Version 11, Revision 0, Release 7.1.1
Build Operating System: UNKNOWN
Current Operating System: Linux blackwing 2.6.16-1-bs-686 #1 Fri Oct 6 14:11:59 SGT 2006 i686
Build Date: 07 July 2006
Before reporting problems, check http://wiki.x.org
to make sure that you have the latest version.
(--) RADEON(0): Chipset: "ATI Radeon X300 (RV370) 5B60 (PCIE)" (ChipID = 0x5b60)
(--) RADEON(0): Linear framebuffer at 0xd0000000
(--) RADEON(0): BIOS at 0xdfe00000
(II) RADEON(0): PCIE card detected
drmOpenDevice: node name is /dev/dri/card0
drmOpenDevice: open result is -1, (No such device or address)
drmOpenDevice: open result is -1, (No such device or address)
drmOpenDevice: Open failed
drmOpenByBusid: Searching for BusID pci:0000:01:00.0
drmOpenDevice: node name is /dev/dri/card0
drmOpenDevice: open result is -1, (No such device)
drmOpenDevice: open result is -1, (No such device)
drmOpenDevice: Open failed
drmOpenByBusid: drmOpenMinor returns -19
(EE) RADEON(0): [dri] RADEONDRIGetVersion failed to open the DRM
[dri] Disabling DRI.
(II) RADEON(0): Generation 2 PCI interface, using max accessible memory
(II) RADEON(0): Detected total video RAM=131072K, accessible=131072K (PCI BAR=131072K)
(--) RADEON(0): Mapped VideoRAM: 131072 kByte (64 bit DDR SDRAM)
(EE) AIGLX: Screen 0 is not DRI capable

I also don't quite get it why this says:

Build Operating System: UNKNOWN

/cheer
#8 phing on 2006-11-22 07:43 (Reply)

Add Comment

Enclosing asterisks marks text as bold (*word*), underscore are made via _word_.
E-Mail addresses will not be displayed and will only be used for E-Mail notifications.