GNOME Bugzilla – Bug 700384
GMenu doesn't work over X forwarding
Last modified: 2014-08-21 01:22:48 UTC
Starting Nautilus over SSH X forwarding. Works fine, except nothing happens when I try to open the application menu. No errors are printed to stderr either. Since critical things are hidden in there, this is a rather severe bug in the user interface.
I looked at the code, and it seems like it uses DBus for this feature. So back to the drawing board I'd say. DBus does not propagate over the X11 connection, so it cannot be used for a central UI function like this. You need to use something more standard, like window properties.
even if IPC is all that X11 does, these days, it does so in a pretty poor way. it'd be much more appropriate to fix SSH to forward the DBus cookie and session, as basically everything depends on DBus, these days, so even if you can get the menu running, other things will most likely break — like remote volumes operations via GVFS, which (unsurprisingly) uses DBus, and most definitely won't be using X11 properties for that; or like hotplug volumes detection, which uses udisk, which uses DBus.
Possibly, but that's not going to happen anytime soon. So if DBus is considered a critical component of GTK and/or Gnome, then applications should simply refuse to start without it rather than opening in some half-assed broken way. Or DBus is considered non-critical and should only be used for non-essential functionality.
(In reply to comment #2) > even if IPC is all that X11 does, these days, it does so in a pretty poor way. > > it'd be much more appropriate to fix SSH to forward the DBus cookie and > session, as basically everything depends on DBus, these days, so even if you > can get the menu running, other things will most likely break — like remote > volumes operations via GVFS, which (unsurprisingly) uses DBus, and most > definitely won't be using X11 properties for that; or like hotplug volumes > detection, which uses udisk, which uses DBus. Nobody expects that remote volumes should be available when using X11 forwarding. However, as Pierre points out, one would expect that basic GUI functionality such as menus works... Please also note that you cannot assume that SSH is being used. X11 forwarding is used in many other contexts as well.
*** This bug has been marked as a duplicate of bug 671802 ***