When I try to open/save a file from various applications (vivaldi, chromium, slack...) nothing happens Reproducible: Always Steps to Reproduce: 1.Install fedora 38 2.Install sway, vivaldi, chromium from packages or slack from flatpak 3.Try to open a file chooser dialog Actual Results: Nothing happens Expected Results: A file chooser dialog should be opened From what I understand it should be handled by a `org.freedesktop.impl.portal.FileChooser` interface provided by gtk. If I set `UseIn` to `gnome;sway` instead of `gnome` in /usr/share/xdg-desktop-portal/portals/gtk.portal, everything works as expected.
When you say "install sway", what exactly do you mean? Which package are you installing? Also, please, provide the output of `rpm -qa|grep sway`. The file /usr/share/xdg-desktop-portal/portals/gtk.portal is owned by xdg-desktop-portal-gtk, so if the correct solution is the one you are suggesting, a bug against xdg-desktop-portal-gtk should be opened. Thanks
Thank you for the fast response! I installed sway quite a while ago so to be honest I don't remember the exact packages I installed, I just know that I have `sudo dnf install sway` in my shell history and my current packages are: ``` swaylock-1.7.2-1.fc38.x86_64 swayidle-1.8.0-2.fc38.x86_64 swaybg-1.2.0-2.fc38.x86_64 sway-wallpapers-1.8.1-1.fc38.noarch sway-1.8.1-1.fc38.x86_64 sway-config-upstream-1.8.1-1.fc38.noarch sway-systemd-0.4.0-1.fc38.noarch ``` I filed the bug against sway because the issue is sway-specific and I don't know how those dialogs should be displayed when using sway, maybe xdg-desktop-portal shouldn't be used with sway, I wish I could select multiple components in the bug tracker as it is more of an interface issue between 2 components rather than a bug on a single one.
Lovely. And 100% reproducible - just take up-to-date F38 Sway spin installation and add `xdg-desktop-portal-gnome`. `xdg-desktop-portal` picks `xdg-desktop-portal-gnome` for all the portals provided by the backend. Completely ignoring the fact that GNOME portal backend is running in a degraded Settings-only mode and refuses to serve any other impls. It should be fixed with `xdg-desktop-portal-1.18.0` and new `portals.conf` configuration, but we don't have that in Fedora 38 :( > If I set `UseIn` to `gnome;sway` instead of `gnome` in /usr/share/xdg-desktop-portal/portals/gtk.portal, everything works as expected. Yep. That seems to work, because it goes straight to the -gtk backend instead of checking all available implementations in alphabetic order. Doesn't really help on Silverblue with layered Sway (/usr is readonly), but `Environment=XDG_DESKTOP_PORTAL_DIR=%h/.config/xdg-desktop-portal/portals` in the systemd unit override may solve that. Anyways, the bug goes to the rightful owner at `xdg-desktop-portal`. ``` systemd[890]: Starting xdg-desktop-portal-gnome.service - Portal service (GNOME implementation)... xdg-desktop-portal-gnome[11157]: Non-compatible display server, exposing settings only. systemd[890]: Started xdg-desktop-portal-gnome.service - Portal service (GNOME implementation). ... xdg-desktop-portal[11131]: XDP: load portals from /usr/share/xdg-desktop-portal/portals systemd[890]: Starting xdg-desktop-portal.service - Portal service... xdg-desktop-portal[11131]: XDP: loading /usr/share/xdg-desktop-portal/portals/wlr.portal xdg-desktop-portal[11131]: XDP: portal implementation for wlroots, sway, Wayfire, river, phosh, Hyprland xdg-desktop-portal[11131]: XDP: portal implementation supports org.freedesktop.impl.portal.Screenshot xdg-desktop-portal[11131]: XDP: portal implementation supports org.freedesktop.impl.portal.ScreenCast xdg-desktop-portal[11131]: XDP: loading /usr/share/xdg-desktop-portal/portals/gnome.portal xdg-desktop-portal[11131]: XDP: portal implementation for gnome xdg-desktop-portal[11131]: XDP: portal implementation supports org.freedesktop.impl.portal.Account xdg-desktop-portal[11131]: XDP: portal implementation supports org.freedesktop.impl.portal.AppChooser xdg-desktop-portal[11131]: XDP: portal implementation supports org.freedesktop.impl.portal.Screenshot xdg-desktop-portal[11131]: XDP: portal implementation supports org.freedesktop.impl.portal.ScreenCast xdg-desktop-portal[11131]: XDP: portal implementation supports org.freedesktop.impl.portal.RemoteDesktop xdg-desktop-portal[11131]: XDP: portal implementation supports org.freedesktop.impl.portal.Lockdown xdg-desktop-portal[11131]: XDP: portal implementation supports org.freedesktop.impl.portal.Background xdg-desktop-portal[11131]: XDP: portal implementation supports org.freedesktop.impl.portal.Settings xdg-desktop-portal[11131]: XDP: portal implementation supports org.freedesktop.impl.portal.Wallpaper xdg-desktop-portal[11131]: XDP: portal implementation supports org.freedesktop.impl.portal.FileChooser xdg-desktop-portal[11131]: XDP: portal implementation supports org.freedesktop.impl.portal.Print xdg-desktop-portal[11131]: XDP: portal implementation supports org.freedesktop.impl.portal.DynamicLauncher xdg-desktop-portal[11131]: XDP: loading /usr/share/xdg-desktop-portal/portals/gtk.portal xdg-desktop-portal[11131]: XDP: portal implementation for gnome xdg-desktop-portal[11131]: XDP: portal implementation supports org.freedesktop.impl.portal.FileChooser xdg-desktop-portal[11131]: XDP: portal implementation supports org.freedesktop.impl.portal.AppChooser xdg-desktop-portal[11131]: XDP: portal implementation supports org.freedesktop.impl.portal.Print xdg-desktop-portal[11131]: XDP: portal implementation supports org.freedesktop.impl.portal.Notification xdg-desktop-portal[11131]: XDP: portal implementation supports org.freedesktop.impl.portal.Inhibit xdg-desktop-portal[11131]: XDP: portal implementation supports org.freedesktop.impl.portal.Access xdg-desktop-portal[11131]: XDP: portal implementation supports org.freedesktop.impl.portal.Account xdg-desktop-portal[11131]: XDP: portal implementation supports org.freedesktop.impl.portal.Email xdg-desktop-portal[11131]: XDP: portal implementation supports org.freedesktop.impl.portal.DynamicLauncher xdg-desktop-portal[11131]: XDP: portal implementation supports org.freedesktop.impl.portal.Settings xdg-desktop-portal[11131]: XDP: Creating dummy proxy for org.freedesktop.impl.portal.Lockdown on org.freedesktop.impl.portal.desktop.gnome xdg-desktop-portal[11131]: XDP: Dummy proxy created xdg-desktop-portal[11131]: XDP: Falling back to gnome.portal for org.freedesktop.impl.portal.Lockdown xdg-desktop-portal[11131]: XDP: providing portal org.freedesktop.portal.MemoryMonitor xdg-desktop-portal[11131]: XDP: providing portal org.freedesktop.portal.PowerProfileMonitor xdg-desktop-portal[11131]: XDP: providing portal org.freedesktop.portal.NetworkMonitor xdg-desktop-portal[11131]: XDP: providing portal org.freedesktop.portal.ProxyResolver xdg-desktop-portal[11131]: XDP: providing portal org.freedesktop.portal.Trash xdg-desktop-portal[11131]: XDP: providing portal org.freedesktop.portal.GameMode xdg-desktop-portal[11131]: XDP: providing portal org.freedesktop.portal.Realtime xdg-desktop-portal[11131]: XDP: Using gnome.portal for org.freedesktop.impl.portal.Settings xdg-desktop-portal[11131]: XDP: Using gtk.portal for org.freedesktop.impl.portal.Settings xdg-desktop-portal[11131]: XDP: providing portal org.freedesktop.portal.Settings xdg-desktop-portal[11131]: XDP: Creating dummy proxy for org.freedesktop.impl.portal.FileChooser on org.freedesktop.impl.portal.desktop.gnome xdg-desktop-portal[11131]: XDP: Dummy proxy created xdg-desktop-portal[11131]: XDP: Falling back to gnome.portal for org.freedesktop.impl.portal.FileChooser <= this. xdg-desktop-portal[11131]: XDP: providing portal org.freedesktop.portal.FileChooser xdg-desktop-portal[11131]: XDP: Creating dummy proxy for org.freedesktop.impl.portal.AppChooser on org.freedesktop.impl.portal.desktop.gnome xdg-desktop-portal[11131]: XDP: Dummy proxy created xdg-desktop-portal[11131]: XDP: Falling back to gnome.portal for org.freedesktop.impl.portal.AppChooser xdg-desktop-portal[11131]: XDP: providing portal org.freedesktop.portal.OpenURI xdg-desktop-portal[11131]: XDP: Creating dummy proxy for org.freedesktop.impl.portal.Print on org.freedesktop.impl.portal.desktop.gnome xdg-desktop-portal[11131]: XDP: Dummy proxy created xdg-desktop-portal[11131]: XDP: Falling back to gnome.portal for org.freedesktop.impl.portal.Print xdg-desktop-portal[11131]: XDP: providing portal org.freedesktop.portal.Print xdg-desktop-portal[11131]: XDP: Creating dummy proxy for org.freedesktop.impl.portal.Notification on org.freedesktop.impl.portal.desktop.gtk xdg-desktop-portal[11131]: XDP: Dummy proxy created xdg-desktop-portal[11131]: XDP: Falling back to gtk.portal for org.freedesktop.impl.portal.Notification xdg-desktop-portal[11131]: XDP: providing portal org.freedesktop.portal.Notification ```
after upgrading to fedora 39 i ran into the same bug, i am using Enlightenment. ``` enlightenment-data-0.25.4-3.fc39.noarch enlightenment-0.25.4-3.fc39.x86_64 ``` ctrl+o in brave-browser / firefox does not work. workaround with adding enlightenment to UseIn in file /usr/share/xdg-desktop-portal/portals/gtk.portal does not seem to work. I fixed by creating /usr/libexec/xdg-desktop-portal as personal application launcher and adding it to startup applications, that way it's started with enlightenment environment. i am unable to remove xdg-desktop-portal-gnome as it's used by gnome-shell which protected. ``` Problem: The operation would result in removing the following protected packages: gnome-shell ``` thanks for helping out.
for xdg-desktop-portal-gtk (amongst others) to show the file picker systemd needs to have a (default) DISPLAY env variable in it's own systemd environment this default behaviour no longer exists?! fix therefor: make sure DISPLAY=:0 in the (sway) user environment to check: env | grep DISPLAY then import this in the --user environment of systemd systemctl --user import-environment DISPLAY
Fedora Linux 38 entered end-of-life (EOL) status on 2024-05-21. Fedora Linux 38 is no longer maintained, which means that it will not receive any further security or bug fix updates. As a result we are closing this bug. If you can reproduce this bug against a currently maintained version of Fedora Linux please feel free to reopen this bug against that version. Note that the version field may be hidden. Click the "Show advanced fields" button if you do not see the version field. If you are unable to reopen this bug, please file a new report against an active release. Thank you for reporting this bug and we are sorry it could not be fixed.
Based on this discussion: https://discussion.fedoraproject.org/t/131018 the problem is that people affected don't have sway-systemd package installed, perhaps because they disabled weak deps support. Please check. It could be argued that this could be a hard dependency (in that case feel free to report it against sway-config-fedora and discuss) or that it should be explicitly listed in the "Sway Desktop" dnf group (in that case file a ticket against fedora-comps [1]). [1] https://pagure.io/fedora-comps