Symptoms & scope
- A sandboxed app hangs while opening a file chooser.
- Screen sharing offers no selection dialog or a backend activation error.
Relevant environment
Desktop using xdg-desktop-portal; backend capabilities vary, and file chooser support need not come from the screen-capture backend.
Recognizable messages (synthetic examples)
xdg-desktop-portal[510]: Failed to create file chooser proxy: Error calling StartServiceByName for org.freedesktop.impl.portal.desktop.gnome: Timeout was reachedCheck that specific backend and session; this line does not justify enlarging filesystem sandbox permissions.
xdg-desktop-portal[510]: Failed to create screenshot proxy: Error calling StartServiceByName for org.freedesktop.impl.portal.desktop.wlr: Timeout was reachedInvestigate interface support, activation and compositor environment; do not infer a GPU fault from this alone.
Possible causes
These are possible explanations, not a confirmed diagnosis. Several independent faults can coexist.
- Desktop-specific portal configuration may select an unavailable backend.
- The backend process may inherit a stale desktop or display environment.
Diagnose safely
Run one command at a time in the relevant session. Read the explanation first. Uppercase placeholders need your own values; tools and privileges vary by distribution. These commands are displayed here and never executed by the website.
Check 1
Reads service status and recent logs in the affected desktop account; applies to systemd user sessions.
systemctl --user status xdg-desktop-portal.service --no-pagerInterpret the result: Inspect the named org.freedesktop.impl.portal backend and failing interface. A running frontend does not guarantee its backend is available.
Check 2
Reads user overrides and installed portal definitions; adapt the user path if XDG_CONFIG_HOME is customized.
rg -n "preferred|default=|FileChooser=|ScreenCast=|Interfaces=|UseIn=" "$HOME/.config/xdg-desktop-portal" /usr/share/xdg-desktop-portalInterpret the result: Check precedence and which backend actually implements the needed interface. Merely installing several backends does not select the right one.
Evidence-guided next steps
Select installed backends for the needed interfaces
If configuration selects an absent or unsupported backend, back up the user portals.conf and use installed desktop-compatible providers for FileChooser and ScreenCast as appropriate. Install the distribution’s matching backend if needed, then restart the portal services after closing active portal requests.
Precautions: A wlroots screen-capture backend may not implement a file chooser. Do not remove every other desktop backend blindly.
Recovery / rollback: Restore the saved user portals.conf or remove only the new override, then restart the same portal services.
Did this solution help you?
Repair the session environment supplied to portals
If the backend is installed but targets a different desktop or display, correct the compositor’s documented session-start environment integration for DISPLAY, WAYLAND_DISPLAY and XDG_CURRENT_DESKTOP. Save its configuration and relogin to restart affected services with the intended values.
Precautions: Do not import all environment variables indiscriminately; multiple simultaneous desktops for one account can share a user manager.
Recovery / rollback: Restore the saved session-start integration and relogin; end the conflicting temporary desktop if it changed shared values.
Did this solution help you?
References & review
This guide was prepared from primary project or distribution sources and reviewed on the date shown. This is an editorial source check, not evidence that a fix was reproduced on your hardware. Diagnostic log examples are synthetic fixtures. Version-dependent details must be checked against your installed release.
- XDG Desktop Portal: backend configuration and precedence (project or distribution documentation)
- XDG Desktop Portal: desktop session integration (project or distribution documentation)
- XDG Desktop Portal upstream: file chooser backend activation example (upstream issue report; reported behavior is not a reproduced fix)
- XDG Desktop Portal upstream: screenshot backend activation example (upstream issue report; reported behavior is not a reproduced fix)