Comment 22 for bug 2036098

Revision history for this message
Simon McVittie (smcv) wrote :

The change in https://launchpad.net/ubuntu/+source/lubuntu-default-settings/23.10.2 looks correct to me, but incomplete. Someone, somewhere, also needs to be installing lubuntu-portals.conf and/or lxqt-portals.conf. Can you point me to where that change took place?

> The problem appears to have been the "DesktopNames=Lubuntu;LXQt;" line in /usr/share/xdg-desktop-portal/lxqt-portals.conf.

Are you sure you mean that? I would expect to see DesktopNames in /usr/share/xsessions/*.desktop, as shown in https://launchpadlibrarian.net/688333989/lubuntu-default-settings_23.10.1_23.10.2.diff.gz, but I would not expect to see any DesktopNames in /usr/share/xdg-desktop-portal/*-portals.conf.

> "Lubuntu;" looks like it was causing XDG_CURRENT_DESKTOP to become "Lubuntu" in the xdg-desktop-portal process and breaking the portal.

If that's the case, then a straightforward short-term workaround would be to either set "DesktopNames=LXQt;" (only), or copy lxqt-portals.conf to lubuntu-portals.conf. I think either of those would be a better and more reliable workaround than restarting xdg-desktop-portal at arbitrary times.

For a longer-term solution, if that behaviour is what is happening, then that would indicate that there is something in desktop startup (display manager? session manager?) that is not converting DesktopNames into XDG_CURRENT_DESKTOP correctly. The fact that you can work around this by restarting x-d-p might indicate that there are two components that "fight", with one of them doing it correctly (taking the whole list), and the other doing it wrong (taking only the first element of the list).

The semantics I expect are that DesktopNames=Foo;Bar;Baz; becomes XDG_CURRENT_DESKTOP=Foo:Bar:Baz, which x-d-p interprets as "use foo-portals.conf or bar-portals.conf or baz-portals.conf or portals.conf, in that order". In other desktop variants, things like Ubuntu's customized GNOME session rely on this behaviour.