- Package:
- xfce4-terminal
- Source:
- xfce4-terminal
- Description:
- Xfce terminal emulator
- Submitter:
- Chris Waters
- Date:
- 2024-07-04 08:06:03 UTC
- Severity:
- minor
If I right-click on a URL in the terminal, and then choose "Open Link" on the pop-up menu, the link is opened in Chromium, even though I have Firefox selected as the default for both exo-open and Debian's x-www-browser alternative. If I type "exo-open --launch WebBrowser http://debian.org", the URL is opened in Firefox (as expected), but xfce4-terminal's internal code seems to ignore all my settings!
I have learned more about this. It turns out that it only happens if the user has not set the xfce default browser app! Without a user-set default, exo-open defaults to using x-www-browser, but xfce4-terminal's context menu prefers chromium! Once a user setting _exists_, the context menu happily uses it, but until then, it will choose chromium over x-www-browser. This is a minor bug, since there's an easy workaround: the user can actually set their default apps. But I think it's still a bug. (Also, it seems odd that the context menu doesn't just call exo-open, but there may be reasons for that.)
I think this bug is considerably more complicated that the OP suggests:
there are numerous suggestions on the web about how to workaround it,
none of which work for everybody, none of which worked for me, and most
of which don't work for a significant proportion of people. for me.
This bug is noted upstream as XFCE bug 10314, which is detailed
at https://bugzilla.xfce.org/show_bug.cgi?id=10314.
Amazingly, there is a suggestion there that worked for me, namely the
one detailed by 'runkharr', which I reproduce here in case it helps
fellow Debian users and so we all get on the same page.
1. Create a file `exo-launch.desktop´ in your `~/.local/share/applications´ directory wit something like the following content:
[Desktop Entry]
Name=Exo Launcher
Type=Application
Icon=gtk-open
Categories=Desktop;
Comment=A try to force 'xfce4-terminal' to use the preferred application(s)
GenericName=Exo Launcher
Exec=exo-open %u
MimeType=text/html;application/xhtml+xml;x-scheme-handler/http;x-scheme-handler/https;x-scheme-handler/ftp;application/x-mimearchive;
Terminal=false
OnlyShowIn=XFCE;
2. Create (if not already existing) a local `defaults.list´ file, again in your `~/.local/share/applications´ directory. This file must start with a "group header" of
[Default Applications]
3. Insert the following three lines somewhere below this `[Default Applications]´ group header the folowing three lines:
x-scheme-handler/http=exo-launch.desktop;
x-scheme-handler/https=exo-launch.desktop;
x-scheme-handler/ftp=exo-launch.desktop;