Comment 27 for bug 291467

Revision history for this message
David Tombs (dgtombs) wrote : Re: Delayed Intrepid Login

I've done a bit of research on this, and here's what I've come up with. I'm a newb, so sorry if some of this was obvious.

So, gconf key /desktop/gnome/session/required_components/windowmanager on my system lists gnome-wm. I'm assuming this means gnome-session is going to look for something called gnome-wm to be the window manager. It probably finds this in /usr/share/gnome/autostart/gnome-wm.desktop.

Now, this (IMO pretty ugly) script locates whatever window manager you have selected and runs it. Meanwhile, it seems gnome-session is waiting for some GObject signal "registered" from gnome-wm (or whatever app it launches). Since everything works fine with Metacity, I assume Metacity sends this signal, gnome-session gets it (as evidenced by no warnings in .xsession-errors), and everything's great. In the case of Compiz, I don't think it's sent (or at least not received), so gnome-session waits around for a while for this signal to get sent, but it never happens. Boo.

Why does gnome-session wait for this "registered" deal? I think it's because of the line in gnome-wm.desktop:

X-GNOME-Autostart-Phase=WindowManager

So, I guess all window managers (ie, things loaded during the WindowManager phase) should send this "registered" signal at some point. Compiz doesn't seem to, so I think this is actually a Compiz bug.

Other wiser opinions?

PS: Is it possible to run gnome-session with debug logging on?