Hi, Look at this - https://wiki.gnome.org/Initiatives/SystemdUser and related merge requests. As far as I understand, current behaviour is expected one when a session is started/managed by systemd --user. You already confirmed that with --builtin / --systemd test.
And this confirms above: https://github.com/systemd/systemd/issues/12399 > services forked off "systemd --user" belong to no session. or if you so > will are shared by them all. On Tue, Jul 18, 2023 at 12:14 PM Nikolaus Rath <nikol...@rath.org> wrote: > Hi Alberts, > > One example of a real problem is > https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1040917. > > > https://manpages.ubuntu.com/manpages/impish/man5/org.freedesktop.login1.5.html > also seems pretty clear to me: > > *GetSessionByPID()* and *GetUserByPID()* get the session/user object the > specified PID belongs to if there is any. > > > In other words, if this DBus request fails then the specified PID is not > part of any logind session. > > Does that help? > > Best, > -Nikolaus > > > > On Mon, 17 Jul 2023, at 21:48, Alberts Muktupāvels wrote: > > Hi, > > I just logged into the Ubuntu GNOME x11 session. The XDG_SESSION_ID > environment variable is not set there either. Also GetSessionByPID for > gnome-shell returns the same error at least for me. > > Sorry but you will have to link to relevant documentation if you think > that there are real problems. Also I don't think there is much I can do > from gnome-flashback to change anything... > > > On Mon, Jul 17, 2023 at 11:15 PM Nikolaus Rath <nikol...@rath.org> wrote: > > > Hi Alberts, > > I believe that way you can get *a session id*. However, the fact that the > dbus query returns an error means that the various X11 processes (those > started by gnome-session as well as those started by the user) are actually > not part of that session (or any session, for that matter). > > It's not a matter of determining the session id (even though I first > thought that), the problem is that the entire gnome flashback session is > not associated with a logind session. > > Best, > -Nikolaus > > On Mon, 17 Jul 2023, at 21:02, Alberts Muktupāvels wrote: > > Can not you get session id from logind manager using > /org/freedesktop/login1/session/auto path? > > dbus-send --system --print-reply --dest=org.freedesktop.login1 > /org/freedesktop/login1/session/auto org.freedesktop.DBus.Properties.Get > string:org.freedesktop.login1.Session string:Id > > On Sun, Jul 16, 2023 at 2:27 PM Nikolaus Rath <nikol...@rath.org> wrote: > > retitle 1040920 "Gnome flashback breaks out of logind session" > thanks > > Upon closer examination, the problem is not that GNome flashback unsets > XDG_SESSION_ID, but that it breaks out of the active logind session (so > unsetting the variable is, in some way, correct). > > In other desktop environments (vanilla i3 as well as regular Gnome), the > desktop environment is correctly associated with a logind session: > > nikratio@vostro ~> dbus-send --system --print-reply > --dest=org.freedesktop.login1 /org/freedesktop/login1 > org.freedesktop.login1.Manager.GetSessionByPID uint32:$fish_pid > method return time=1689506142.664977 sender=:1.6 -> destination=:1.1126 > serial=2461 reply_serial=2 > object path "/org/freedesktop/login1/session/_342" > > When running Gnome Flashback, however: > > ikratio@vostro ~> dbus-send --system --print-reply > --dest=org.freedesktop.login1 /org/freedesktop/login1 > org.freedesktop.login1.Manager.GetSessionByPID uint32:$fish_pid > Error org.freedesktop.login1.NoSessionForPID: PID 858156 does not belong > to any known session > > > I don't think this is intentional.. or is it? > > Best, > -Nikolaus > > > > -- > Alberts Muktupāvels > > > > > -- > Alberts Muktupāvels > > > -- Alberts Muktupāvels