Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.debian.bugs.dist > #1153885 > unrolled thread

Bug#1040920: gnome-flashback: Gnome flashback unsets XDG_SESSION_ID

Started byNikolaus Rath <Nikolaus@rath.org>
First post2023-07-12 14:00 +0200
Last post2023-07-18 13:50 +0200
Articles 8 — 3 participants

Back to article view | Back to linux.debian.bugs.dist


Contents

  Bug#1040920: gnome-flashback: Gnome flashback unsets XDG_SESSION_ID Nikolaus Rath <Nikolaus@rath.org> - 2023-07-12 14:00 +0200
    Bug#1040920: gnome-flashback: Gnome flashback unsets XDG_SESSION_ID Alberts Muktupāvels <alberts.muktupavels@gmail.com> - 2023-07-12 14:10 +0200
    Bug#1040920: Acknowledgement (gnome-flashback: Gnome flashback unsets XDG_SESSION_ID) Alberts Muktupāvels <alberts.muktupavels@gmail.com> - 2023-07-12 14:30 +0200
    Bug#1040920: Acknowledgement (gnome-flashback: Gnome flashback unsets XDG_SESSION_ID) "Nikolaus Rath" <nikolaus@rath.org> - 2023-07-16 13:30 +0200
      Bug#1040920: Acknowledgement (gnome-flashback: Gnome flashback unsets XDG_SESSION_ID) Alberts Muktupāvels <alberts.muktupavels@gmail.com> - 2023-07-17 22:10 +0200
    Bug#1040920: Info received (Bug#1040920: Acknowledgement (gnome-flashback: Gnome flashback unsets XDG_SESSION_ID)) "Nikolaus Rath" <nikolaus@rath.org> - 2023-07-16 21:20 +0200
    Bug#1040920: Acknowledgement (gnome-flashback: Gnome flashback unsets XDG_SESSION_ID) Alberts Muktupāvels <alberts.muktupavels@gmail.com> - 2023-07-17 23:00 +0200
    Bug#1040920: Acknowledgement (gnome-flashback: Gnome flashback unsets XDG_SESSION_ID) Alberts Muktupāvels <alberts.muktupavels@gmail.com> - 2023-07-18 13:50 +0200

#1153885 — Bug#1040920: gnome-flashback: Gnome flashback unsets XDG_SESSION_ID

FromNikolaus Rath <Nikolaus@rath.org>
Date2023-07-12 14:00 +0200
SubjectBug#1040920: gnome-flashback: Gnome flashback unsets XDG_SESSION_ID
Message-ID<GQGFH-aQu-7@gated-at.bofh.it>
Package: gnome-flashback
Version: 3.46.0-1
Severity: normal


When starting a Gnome Flashback session, the XDG_SESSION_ID environment
variable is not set. This results on applications that rely on logind to
not behave properly.

Debugging this more closely, I found that XDG_SESSION_ID is still
set in ~/.xsession, but seemingly disappears somewhere in this call:

exec gnome-session --systemd --session=gnome-flashback --disable-acceleration-check

-- System Information:
Debian Release: 12.0
  APT prefers stable-security
  APT policy: (500, 'stable-security'), (500, 'stable')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 6.1.0-10-amd64 (SMP w/8 CPU threads; PREEMPT)
Kernel taint flags: TAINT_PROPRIETARY_MODULE, TAINT_OOT_MODULE, TAINT_UNSIGNED_MODULE
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages gnome-flashback depends on:
ii  gnome-flashback-common     3.46.0-1
ii  libasound2                 1.2.8-1+b1
ii  libatk1.0-0                2.46.0-5
ii  libc6                      2.36-9
ii  libcairo2                  1.16.0-7
ii  libcanberra-gtk3-0         0.30-10
ii  libcanberra0               0.30-10
ii  libgdk-pixbuf-2.0-0        2.42.10+dfsg-1+b1
ii  libgdm1                    43.0-3
ii  libglib2.0-0               2.74.6-2
ii  libgnome-bluetooth-3.0-13  42.5-3
ii  libgnome-desktop-3-20      43.2-2
ii  libgnome-panel0            3.46.0-1+b1
ii  libgtk-3-0                 3.24.37-2
ii  libibus-1.0-5              1.5.27-5
ii  libpam0g                   1.5.2-6
ii  libpango-1.0-0             1.50.12+ds-1
ii  libpangocairo-1.0-0        1.50.12+ds-1
ii  libpolkit-agent-1-0        122-3
ii  libpolkit-gobject-1-0      122-3
ii  libpulse-mainloop-glib0    16.1+dfsg1-2+b1
ii  libpulse0                  16.1+dfsg1-2+b1
ii  libsystemd0                252.6-1
ii  libx11-6                   2:1.8.4-2+deb12u1
ii  libx11-xcb1                2:1.8.4-2+deb12u1
ii  libxcb-randr0              1.15-1
ii  libxext6                   2:1.3.4-1+b1
ii  libxfixes3                 1:6.0.0-2
ii  libxi6                     2:1.8-1+b1
ii  libxkbfile1                1:1.1.0-1
ii  libxrandr2                 2:1.5.2-2+b1
ii  libxxf86vm1                1:1.1.4-1+b2
ii  nautilus                   43.2-1

Versions of packages gnome-flashback recommends:
ii  dbus                   1.14.6-1
ii  gnome-settings-daemon  43.0-4
ii  libpam-gnome-keyring   42.1-1+b2

Versions of packages gnome-flashback suggests:
pn  gnome-power-manager  <none>

-- no debconf information

[toc] | [next] | [standalone]


#1153886

FromAlberts Muktupāvels <alberts.muktupavels@gmail.com>
Date2023-07-12 14:10 +0200
Message-ID<GQGPn-b8V-1@gated-at.bofh.it>
In reply to#1153885

[Multipart message — attachments visible in raw view] — view raw

GNOME Flashback does not do that!

That variable is blacklisted by gnome-session:
https://gitlab.gnome.org/GNOME/gnome-session/-/blob/main/gnome-session/gsm-util.c#L38

On Wed, Jul 12, 2023 at 2:51 PM Nikolaus Rath <Nikolaus@rath.org> wrote:

> Package: gnome-flashback
> Version: 3.46.0-1
> Severity: normal
>
>
> When starting a Gnome Flashback session, the XDG_SESSION_ID environment
> variable is not set. This results on applications that rely on logind to
> not behave properly.
>
> Debugging this more closely, I found that XDG_SESSION_ID is still
> set in ~/.xsession, but seemingly disappears somewhere in this call:
>
> exec gnome-session --systemd --session=gnome-flashback
> --disable-acceleration-check
>
> -- System Information:
> Debian Release: 12.0
>   APT prefers stable-security
>   APT policy: (500, 'stable-security'), (500, 'stable')
> Architecture: amd64 (x86_64)
> Foreign Architectures: i386
>
> Kernel: Linux 6.1.0-10-amd64 (SMP w/8 CPU threads; PREEMPT)
> Kernel taint flags: TAINT_PROPRIETARY_MODULE, TAINT_OOT_MODULE,
> TAINT_UNSIGNED_MODULE
> Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8), LANGUAGE
> not set
> Shell: /bin/sh linked to /usr/bin/dash
> Init: systemd (via /run/systemd/system)
> LSM: AppArmor: enabled
>
> Versions of packages gnome-flashback depends on:
> ii  gnome-flashback-common     3.46.0-1
> ii  libasound2                 1.2.8-1+b1
> ii  libatk1.0-0                2.46.0-5
> ii  libc6                      2.36-9
> ii  libcairo2                  1.16.0-7
> ii  libcanberra-gtk3-0         0.30-10
> ii  libcanberra0               0.30-10
> ii  libgdk-pixbuf-2.0-0        2.42.10+dfsg-1+b1
> ii  libgdm1                    43.0-3
> ii  libglib2.0-0               2.74.6-2
> ii  libgnome-bluetooth-3.0-13  42.5-3
> ii  libgnome-desktop-3-20      43.2-2
> ii  libgnome-panel0            3.46.0-1+b1
> ii  libgtk-3-0                 3.24.37-2
> ii  libibus-1.0-5              1.5.27-5
> ii  libpam0g                   1.5.2-6
> ii  libpango-1.0-0             1.50.12+ds-1
> ii  libpangocairo-1.0-0        1.50.12+ds-1
> ii  libpolkit-agent-1-0        122-3
> ii  libpolkit-gobject-1-0      122-3
> ii  libpulse-mainloop-glib0    16.1+dfsg1-2+b1
> ii  libpulse0                  16.1+dfsg1-2+b1
> ii  libsystemd0                252.6-1
> ii  libx11-6                   2:1.8.4-2+deb12u1
> ii  libx11-xcb1                2:1.8.4-2+deb12u1
> ii  libxcb-randr0              1.15-1
> ii  libxext6                   2:1.3.4-1+b1
> ii  libxfixes3                 1:6.0.0-2
> ii  libxi6                     2:1.8-1+b1
> ii  libxkbfile1                1:1.1.0-1
> ii  libxrandr2                 2:1.5.2-2+b1
> ii  libxxf86vm1                1:1.1.4-1+b2
> ii  nautilus                   43.2-1
>
> Versions of packages gnome-flashback recommends:
> ii  dbus                   1.14.6-1
> ii  gnome-settings-daemon  43.0-4
> ii  libpam-gnome-keyring   42.1-1+b2
>
> Versions of packages gnome-flashback suggests:
> pn  gnome-power-manager  <none>
>
> -- no debconf information
>
>

-- 
Alberts Muktupāvels

[toc] | [prev] | [next] | [standalone]


#1153891 — Bug#1040920: Acknowledgement (gnome-flashback: Gnome flashback unsets XDG_SESSION_ID)

FromAlberts Muktupāvels <alberts.muktupavels@gmail.com>
Date2023-07-12 14:30 +0200
SubjectBug#1040920: Acknowledgement (gnome-flashback: Gnome flashback unsets XDG_SESSION_ID)
Message-ID<GQH8K-bfs-21@gated-at.bofh.it>
In reply to#1153885

[Multipart message — attachments visible in raw view] — view raw

Maybe... Why do you need that variable?

On Wed, Jul 12, 2023 at 3:12 PM Nikolaus Rath <nikolaus@rath.org> wrote:

> Could this be an unintended side effect of
> https://salsa.debian.org/gnome-team/gnome-session/-/commit/6f5c3c80be8f92ababd8d6201c5c58e732b47f54
> ?
>
>

-- 
Alberts Muktupāvels

[toc] | [prev] | [next] | [standalone]


#1154477 — Bug#1040920: Acknowledgement (gnome-flashback: Gnome flashback unsets XDG_SESSION_ID)

From"Nikolaus Rath" <nikolaus@rath.org>
Date2023-07-16 13:30 +0200
SubjectBug#1040920: Acknowledgement (gnome-flashback: Gnome flashback unsets XDG_SESSION_ID)
Message-ID<GS86S-CFB-7@gated-at.bofh.it>
In reply to#1153885
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

[toc] | [prev] | [next] | [standalone]


#1154680 — Bug#1040920: Acknowledgement (gnome-flashback: Gnome flashback unsets XDG_SESSION_ID)

FromAlberts Muktupāvels <alberts.muktupavels@gmail.com>
Date2023-07-17 22:10 +0200
SubjectBug#1040920: Acknowledgement (gnome-flashback: Gnome flashback unsets XDG_SESSION_ID)
Message-ID<GSCHD-VEa-5@gated-at.bofh.it>
In reply to#1154477

[Multipart message — attachments visible in raw view] — view raw

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 <nikolaus@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

[toc] | [prev] | [next] | [standalone]


#1154537 — Bug#1040920: Info received (Bug#1040920: Acknowledgement (gnome-flashback: Gnome flashback unsets XDG_SESSION_ID))

From"Nikolaus Rath" <nikolaus@rath.org>
Date2023-07-16 21:20 +0200
SubjectBug#1040920: Info received (Bug#1040920: Acknowledgement (gnome-flashback: Gnome flashback unsets XDG_SESSION_ID))
Message-ID<GSfrH-HaU-1@gated-at.bofh.it>
In reply to#1153885
Another finding: starting gnome-session with `--builtin` instead of `--systemd` works around the problem.

[toc] | [prev] | [next] | [standalone]


#1154688 — Bug#1040920: Acknowledgement (gnome-flashback: Gnome flashback unsets XDG_SESSION_ID)

FromAlberts Muktupāvels <alberts.muktupavels@gmail.com>
Date2023-07-17 23:00 +0200
SubjectBug#1040920: Acknowledgement (gnome-flashback: Gnome flashback unsets XDG_SESSION_ID)
Message-ID<GSDu1-VUz-1@gated-at.bofh.it>
In reply to#1153885

[Multipart message — attachments visible in raw view] — view raw

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 <nikolaus@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 <nikolaus@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

[toc] | [prev] | [next] | [standalone]


#1154749 — Bug#1040920: Acknowledgement (gnome-flashback: Gnome flashback unsets XDG_SESSION_ID)

FromAlberts Muktupāvels <alberts.muktupavels@gmail.com>
Date2023-07-18 13:50 +0200
SubjectBug#1040920: Acknowledgement (gnome-flashback: Gnome flashback unsets XDG_SESSION_ID)
Message-ID<GSRnk-14He-5@gated-at.bofh.it>
In reply to#1153885

[Multipart message — attachments visible in raw view] — view raw

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 <nikolaus@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 <nikolaus@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 <nikolaus@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

[toc] | [prev] | [standalone]


Back to top | Article view | linux.debian.bugs.dist


csiph-web