On 04/10/13 00:36, Samuel Thibault wrote: > Simon McVittie, le Thu 03 Oct 2013 12:37:07 +0100, a écrit : >> On 03/10/13 12:09, Samuel Thibault wrote: >>> It essentially needs dbus-launch, to start dbus-daemon. >> >> Is this the session bus, or a parallel bus, or both? > > I don't really know what that means. What I can see in the source code > (at-spi2-core/bus/at-spi-bus-launcher.c) is this: > > name_owner_id = g_bus_own_name (G_BUS_TYPE_SESSION, > "org.a11y.Bus",
That's a session bus, so you need to get one started, somehow. The automagic mechanism which D-Bus has always had is that clients' default session bus address (if they don't see any relevant environment variables) is "autolaunch:", which means "fork-and-exec dbus-launch, which will look in X11 window properties to try to find a session bus, and if there isn't one, start one itself and advertise it in X11 window properties". The *other* automagic mechanism is to run dbus-launch from a file in /etc/X11/Xsession.d, so that there's already one running. I consider this to be rather unpleasant, particularly the autolaunch: bit (dbus-launch is poorly-documented and confusingly-implemented): it's primarily there to support the "run a single GNOME/KDE app under fvwm" use-case. I'd prefer it if graphical environments that want D-Bus could run their own dbus-daemon and put $DBUS_SESSION_BUS_ADDRESS in graphical clients' environment. g-i is basically a very small graphical environment, so I'd prefer it if g-i could take responsibility for doing that. dbus-run-session(1) is a new tool which I added to make that easier: it's a "command prefix"-style tool, like chroot or sudo (but retaining a supervising parent process rather than ending with an exec(), so more like schroot, really). It starts a dbus-daemon as a child, finds out the address, and starts the process given in its arguments (the session) as a second child, with the D-Bus address in its environment. It watches its children until the session terminates, then kills the dbus-daemon and exits itself. For now, my plan is to put together a dbus-udeb (with dbus-daemon, dbus-uuidgen and probably dbus-run-session), a libdbus-1-3-udeb, and possibly a dbus-x11-udeb containing dbus-launch. I'd appreciate it if dbus-x11-udeb could go away before Jessie is released, though. S -- To UNSUBSCRIBE, email to debian-bugs-rc-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org