Link in flatpak apps won't open on click since anymore last update

I’ve learned that flatpak devs seem to have been wrestling with this issue for over five years, without any definitive outcome (See link at my post #9).

The issue was closed on September 11, 2003, with the final resolution equating to not much more than a shrug of the shoulders. :man_shrugging: :person_shrugging: :woman_shrugging:

I ran into this issue too on a new Manjaro Cinnamon install. Spend 4 hours, tried all the tricks and checked all the checks… and finally found a solution thanks to this Github comment.

I ran /usr/lib/xdg-desktop-portal --verbose --replace

and for good measure right after that

I ran /usr/lib/xdg-desktop-portal-gtk --verbose --replace

and that fixed the problem for me. So maybe only the first command is enough to fix the issue :wink:

xfce here too, same issue

Failed to call portal: GDBus.Error:org.freedesktop.DBus.Error.UnknownMethod: Nenhuma interface ?org.freedesktop.portal.OpenURI? no objeto no caminho /org/freedesktop/portal/desktop

@vi.o.vini
Did you try the commands in the @muvvenby post (scroll up)?

I had this issue too: clicking on links in flatpak apps wouldn’t open in my default browser, also the file manager wouldn’t open (like in Warehouse in case of “Open User Data Folder”)

Troubleshooting:

flatpak run --log-session-bus your.installed.flatpak.app.of.choice

Clicking on link or open mime inode/directory showed:

C13: -> org.freedesktop.portal.Desktop call org.freedesktop.portal.OpenURI.OpenURI at /org/freedesktop/portal/desktop
B109: <- :1.39 return error org.freedesktop.DBus.Error.UnknownMethod from C13

Checked mime types were set:

gio mime inode/directory
gio mime x-scheme-handler/https
(those were set correctly in my case)

Gave them a go:

gio open https://forum.manjaro.org
(opened the URL as expected in my default browser)

The fix:

I made sure XDG_CURRENT_DESKTOP environment variable was set

echo $XDG_CURRENT_DESKTOP
XFCE
systemctl --user import-environment XDG_CURRENT_DESKTOP
systemctl --user show-environment

Made sure xdg-desktop-portal-gtk is installed

Added a new portals conf for XFCE

~/.config/xdg-desktop-portal/xfce-portals.conf

[preferred]
default=gtk;

Restarted services:

systemctl --user restart xdg-desktop-portal.service xdg-desktop-portal-gtk.service

Success, links finally opened in the default browser and file manager could be started by flatpak apps

Hope this helps.

1 Like

Similar methodology outlined here (i have no idea if you really want xapp to be the default?)

Thanks for the feedback. I’m really not an expert and hoped sharing my fix would result in either validation or constructive criticism. Xapp sounded like a good default for XFCE, its description says “A backend implementation for xdg-desktop-portal using GTK and various pieces of Cinnamon/MATE/Xfce4 infrastructure”. My understanding is, GTK is the fallback anyway? Should be ok, no?

I thought xfce used the gtk backend regularly. :person_shrugging:

I got GNOME on my notebook. That install didn’t have the issue discussed here, so I used its setup to reverse engineer the portal conf and backends. The GNOME portal conf uses “default=gnome;gtk;”, so I just followed that example and replaced gnome with xapp for the XFCE install.

xapp appears to be for screenshot/screencast ability on cinnamon.
(maybe you are thinking xapp=xfce because of x?)
https://wiki.archlinux.org/title/XDG_Desktop_Portal

Then again … it sorta looks like it on the flatpak/xdg-desktop-portal github page…

You will of course be in a better position to be sure :wink:

I looked through the github of xapp and it seems to do very little for XFCE. I tried xapp as the mere default and everything broke again, then I set GTK as mere default and everything worked as intended. I’m going to revise my fix up thread.

1 Like

This topic was automatically closed 36 hours after the last reply. New replies are no longer allowed.

Hi,
I’m continuing here this topic Link in flatpak apps won't open anymore on click since last update since the original topic is closed and locked.

I would like to thank CrackalackingZ, I’m sorry for late answer, I didn’t noticed the topic was updated since I was very busy.

Your solution indeed did the trick. Thank you for sharing!

I also add some extra config.Since the systemd environment variable are reinitialized every time I boot, I loose the environment variable XDG_CURRENT_DESKTOP in my systemd environment variable.

To solve this issue I followed the section about systemd environment variable in archlinux wiki : systemd/User - ArchWiki

I created a ~/.config/environment.d/user.conf file in which I added the XDG_CURRENT_DESKTOP environment variable :

XDG_CURRENT_DESKTOP=XFCE

Then this environment variable is initialized every time my user is logging, and then everything works well.

Now when I click on links from flatpak apps, the links are opened in my browser :tada: :tada: :confetti_ball:

Thanks again for your answer, it allowed me to solve this painful issue

I do wonder why this would be continually unset though.

@ms34 I merged your new topic into the existing one and reopened it. If the current solution is still valid, then it will again automatically close 36 hours after the last reply.

2 Likes

Thank you @Yochanan , the solution is still valid and the extra information I brought can also be useful to other people facing the same problem. It’s indeed more useful here than in a separate extra topic

@CrackalackingZ Thank you again for the answer !

1 Like

I do wonder why this would be continually unset though.

It’s just maybe never set at boot or login

It’s good to have this fixes at hand, but maybe something should be done to negate the need for a manual fix in the first place.

I’m also using a GNOME install, it got the correct portal conf /usr/share/xdg-desktop-portal/portals/gnome.portal … although I have no idea, which package placed it there. I only recently setup a new notebook and definitely didn’t have to do this manually. It just worked out of the box.

Maybe it would be a good idea to have a xdg-desktop-portal-xfce package for XFCE to setup the required portal conf, environment variable and a dependency on xdg-desktop-portal-gtk?

No wonder you had issues. xdg-desktop-portal-xapp should only be installed on Cinnamon. On Xfce, one should only have xdg-desktop-portal-gtk.

Don’t install portals you don’t need. :wink: