Bug 2182191

Summary: The GNOME portal times out when running on other wayland desktops, breaking all portals
Product: [Fedora] Fedora Reporter: Alessandro Astone <ales.astone>
Component: xdg-desktop-portal-gnomeAssignee: David King <amigadave>
Status: CLOSED DUPLICATE QA Contact:
Severity: high Docs Contact:
Priority: unspecified    
Version: 38CC: amigadave, gnome-sig, jadahl
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2023-03-31 13:47:52 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Alessandro Astone 2023-03-27 20:21:55 UTC
Description of problem:
In GNOME 44.0 the xdg-desktop-portal-gnome depends on mutter if the session is Wayland.
Upon starting it waits for mutter on the session dbus. If mutter never started, systemd makes xdg-desktop-portal-gnome time out.
At the same time, the generic xdg-desktop-portal.service was waiting for xdg-desktop-portal-gnome to start and it too times out and gets terminated, so no other desktop-specific portal can be used

Version-Release number of selected component (if applicable):
44~rc-1.fc38
44.0-1.fc39

How reproducible:
In Fedora 38 KDE

Steps to Reproduce:
1. Install xdg-desktop-portal-gnome
2. Reboot

Actual results:
Firefox takes a long time to launch, waiting on the portal service.
Everything that relies on portal is broken.

Expected results:

Additional info:
```
[aleasto@fedora ~]$ systemctl --user status xdg-desktop-portal-gnome | cat
× xdg-desktop-portal-gnome.service - Portal service (GNOME implementation)
     Loaded: loaded (/usr/lib/systemd/user/xdg-desktop-portal-gnome.service; static)
    Drop-In: /usr/lib/systemd/user/service.d
             └─10-timeout-abort.conf
     Active: failed (Result: timeout) since Mon 2023-03-27 22:19:14 CEST; 1min 21s ago
    Process: 3658 ExecStart=/usr/libexec/xdg-desktop-portal-gnome (code=killed, signal=TERM)
   Main PID: 3658 (code=killed, signal=TERM)
        CPU: 12ms

Mar 27 22:18:29 fedora systemd[1327]: Starting xdg-desktop-portal-gnome.service - Portal service (GNOME implementation)...
Mar 27 22:19:14 fedora systemd[1327]: xdg-desktop-portal-gnome.service: start operation timed out. Terminating.
Mar 27 22:19:14 fedora systemd[1327]: xdg-desktop-portal-gnome.service: Failed with result 'timeout'.
Mar 27 22:19:14 fedora systemd[1327]: Failed to start xdg-desktop-portal-gnome.service - Portal service (GNOME implementation).
```

```
[aleasto@fedora ~]$ systemctl --user status xdg-desktop-portal
× xdg-desktop-portal.service - Portal service
     Loaded: loaded (/usr/lib/systemd/user/xdg-desktop-portal.service; static)
    Drop-In: /usr/lib/systemd/user/service.d
             └─10-timeout-abort.conf
     Active: failed (Result: timeout) since Mon 2023-03-27 22:19:13 CEST; 46s ago
    Process: 3651 ExecStart=/usr/libexec/xdg-desktop-portal (code=killed, signal=TERM)
   Main PID: 3651 (code=killed, signal=TERM)
        CPU: 17ms

Mar 27 22:18:28 fedora systemd[1327]: Starting xdg-desktop-portal.service - Portal service...
Mar 27 22:19:13 fedora systemd[1327]: xdg-desktop-portal.service: start operation timed out. Terminating.
Mar 27 22:19:13 fedora systemd[1327]: xdg-desktop-portal.service: Failed with result 'timeout'.
Mar 27 22:19:13 fedora systemd[1327]: Failed to start xdg-desktop-portal.service - Portal service.
```

Comment 1 Alessandro Astone 2023-03-27 20:31:23 UTC
In Fedora 37 KDE, the xdg-desktop-portal-gnome was preinstalled by default, and will be carried over with the upgrade. So this issue will be very widespread.

Upstream issue: https://gitlab.gnome.org/GNOME/xdg-desktop-portal-gnome/-/issues/74

Note that the upstream issue states that the only problem is a 2min delay in portal-related actions, but that is not the case in fedora, where the xdg-desktop-portal.service gets killed after timeout so is unusable.

Comment 2 Alessandro Astone 2023-03-31 13:47:52 UTC

*** This bug has been marked as a duplicate of bug 2176759 ***