#959125 xdg-desktop-portal-gtk: does not provide implementations for org.freedesktop.impl.portal.{ScreenCast,RemoteDesktop}

Package:
xdg-desktop-portal-gtk
Source:
xdg-desktop-portal-gtk
Description:
GTK+/GNOME portal backend for xdg-desktop-portal
Submitter:
Pedro Ângelo
Date:
2021-11-23 19:00:03 UTC
Severity:
important
#959125#5
Date:
2020-04-29 16:13:08 UTC
From:
To:
Dear Maintainer,

while testing a self-compiled version of `obs-xdg-portal` plugin for Open
Broadcast Studio I noticed that the plugin failed to bring up the portal window
necessary to authorize the program to capture the screen.

I looked into this issue with dbus-monitor and got the following:

~~~

$ dbus-monitor path=/org/freedesktop/portal/desktop

method call time=1588071448.258833 sender=:1.531 ->
destination=org.freedesktop.portal.Desktop serial=2
path=/org/freedesktop/portal/desktop;
interface=org.freedesktop.portal.ScreenCast; member=CreateSession
   array [
      dict entry(
         string "handle_token"
         variant             string "obs1"
      )
      dict entry(
         string "session_handle_token"
         variant             string "obs1"
      )
   ]
method call time=1588071448.273349 sender=:1.473 -> destination=:1.146
serial=213 path=/org/freedesktop/portal/desktop;
interface=org.freedesktop.impl.portal.ScreenCast; member=CreateSession
   object path "/org/freedesktop/portal/desktop/request/1_531/obs1"
   object path "/org/freedesktop/portal/desktop/session/1_531/obs1"
   string ""
   array [
   ]

~~~

and it seems to never return from the call to `createSession`.

looking into the service log I get:

~~~

$ journalctl --user

Apr 27 20:15:26 rae xdg-desktop-por[20017]: A backend call failed:
GDBus.Error:org.freedesktop.DBus.Error.UnknownMethod: No such interface
“org.freedesktop.impl.portal.ScreenCast” on object at path
/org/freedesktop/portal/desktop
Apr 27 20:15:26 rae xdg-desktop-por[20017]: Failed to close session
implementation: GDBus.Error:org.freedesktop.DBus.Error.UnknownMethod: No such
interface “org.freedesktop.impl.portal.Session” on object at path
/org/freedesktop/portal/desktop/session/1_476/obs1

~~~

looking upstream, there's an issue reported about xdg-desktop-portal-gtk not
instantiating the ScreenCast and RemoteDesktop interfaces on Ubuntu:

https://github.com/flatpak/xdg-desktop-portal-gtk/issues/296

I can reproduce the behaviour reported upstream:

~~~

$ xdg-desktop-portal-gtk --replace --verbose

XDP: providing org.freedesktop.impl.portal.FileChooser
XDP: providing org.freedesktop.impl.portal.AppChooser
XDP: providing org.freedesktop.impl.portal.Print
XDP: providing org.freedesktop.impl.portal.Screenshot
XDP: providing org.freedesktop.impl.portal.Notification
XDP: Using org.gnome.SessionManager for inhibit
XDP: Using org.gnome.Screensaver for screensaver state
XDP: Using org.gnome.SessionManager for session state
XDP: providing org.freedesktop.impl.portal.Inhibit
XDP: providing org.freedesktop.impl.portal.Access
XDP: providing org.freedesktop.impl.portal.Account
XDP: providing org.freedesktop.impl.portal.Email
XDP: providing org.freedesktop.impl.portal.Lockdown
XDP: providing org.freedesktop.impl.portal.Background
...
XDP: providing org.freedesktop.impl.portal.Settings
XDP: providing org.freedesktop.impl.portal.Wallpaper
XDP: org.freedesktop.impl.portal.desktop.gtk acquired

~~~

This happens both in version 1.6.1 from Testing and version 1.7.1 from
Experimental.

I can also reproduce the same broken behaviour for the
`org.freedesktop.impl.portal.RemoteDesktop` interface using upstream's testing
script:

https://gitlab.gnome.org/snippets/39

Please let me know if there's anything else I can do to help fix this, as this
renders any screen grabbing and screen casting application unusable in GNOME
Wayland.

Best regards,

P.

#959125#10
Date:
2020-04-29 17:48:53 UTC
From:
To:
Control: block -1 by 954022

It needs a newer version of pipewire (see #954022).

The error behaviour when not everything needed is available is also
not great (it should fail cleanly with an error rather than waiting
forever). I'm not sure whether that's an xdg-desktop-portal or
xdg-desktop-portal-gtk bug.

    smcv

#959125#17
Date:
2021-11-23 16:31:15 UTC
From:
To:
hi Pedro,
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=954022

This is fixed since 5/9/20.

Can you check if the bug persists ?

And close the bug if it is okay ?

Regards,