[systemd-devel] RFC: user session lifetimes vs. $DISPLAY

Kok, Auke-jan H auke-jan.h.kok at intel.com
Tue Mar 5 11:59:44 PST 2013


On Tue, Mar 5, 2013 at 11:48 AM, Lennart Poettering <mztabzr at 0pointer.de> wrote:
> On Mon, 18.02.13 11:08, Kok, Auke-jan H (auke-jan.h.kok at intel.com) wrote:
>
>> I believe that the DBus bits are properly in place to have one single
>> user bus per user session.
>
> Nope, we never finished that. However, you currently can invoke
> "dbus-daemon --session" in a per-user rather than per-session context
> and things should just work, and that's what most folks do, but in the
> long run, we really should fix this.

What's actually missing here?

>> For each login, you'd have an instance service (e.g.
>> gnome-session@:0.service) to serve that display.
>
> Well, I am not convinced it is necessary to instantiate
> everything. People can do that if they really really want to make things
> work to allow one local user to run multiple sessions, but I am pretty
> sure that should be out of scope for GNOME. GNOME components should just
> be normal services that are started on the user bus and which find their
> display from XDG_RUNTIME_DIR.
>
>> GUI processes running under a gnome-session@:0.service should be able
>> to getenv(DISPLAY) if it's set by gnome-session at .service
>> (Environment=DISPLAY=%I).
>
> Yes and no. For the instantiation case you are right, but as mentioned I
> don't think GNOME and suchlike really should bother with that. I'd hence
> expect that GNOME apps would run without $DISPLAY set, but libX11 would
> be capable of using $XDG_RUNTIME_DIR/display in that case.

ok, thanks for replying - I'm trying to figure out the direction here
and seeing if I can get some of the X11 folks here engaged in removing
some of the blockers.

Auke


More information about the systemd-devel mailing list