How to set default browser for PDF reader Evince on Linux?
Solution 1
As far as I understand LXDE uses xdg to do calls to applications. This command should fix your issue:
To find out which application opens a pdf file :
xdg-mime query default application/pdf
To set the application to evince
xdg-mime default evince.desktop application/pdf
This should work if your application is registered to the desktop (i.e. if there is a launcher)
Solution 2
Solving your issue is like voodoo, even when there are "protocols" regarding how and which applications are supposed to open a specific kind of file. You'll see that they're very inconsistent between systems and different desktop environments.
So there's no really a "right" answer. I had a similar problem with firefox, so I'm giving you my solution:
- Create a
~/.local/share/applications/defaults.list
if it doesn't exist Add the following
[Default Applications] application/pdf=evince.desktop;
...or just the last line if there's something before.
Solution 3
I had a reverse problem - I want firefox to open the links, but evince started chromium no matter what.
I used strace -o /tmp/output evince
to see what functions are called and found this in the log:
open("/home/koniu/.local/share/applications/firefox.desktop;", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
open("/usr/local/share/applications/firefox.desktop;", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
open("/usr/share/applications/firefox.desktop;", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
open("/home/koniu/.local/share/applications/chromium.desktop", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
open("/usr/local/share/applications/chromium.desktop", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
open("/usr/share/applications/chromium.desktop", O_RDONLY|O_LARGEFILE) = 16
No idea why there's a semicolon included in the firefox.desktop but I created /home/koniu/.local/share/applications/firefox.desktop
with the following content:
[Desktop Entry]
Name=Firefox
Exec=/usr/bin/firefox %U
Terminal=false
X-MultipleArgs=false
Type=Application
Icon=firefox
Categories=Network;WebBrowser;
MimeType=text/html;text/xml;application/xhtml_xml;x-scheme-handler/http;x-scheme-handler/https;
StartupNotify=true
And now evince
starts firefox
as desired.
Solution 4
You can edit your $HOME/.local/share/applications/mimeapps.list
file. If this file does not exist, create one.
For illustration's sake, if you want Chromium to be the default browser, add the following line:
x-scheme-handler/http=chromium.desktop
That's all.
Solution 5
To change Gnome applications you need to use gconftool:
$ gconftool -s /desktop/gnome/url-handlers/http/command -t string 'chromium-browser %s'
To check the changes:
$ gconftool -g /desktop/gnome/url-handlers/http/command
Other Gnome applications:
/desktop/gnome/url-handlers/chrome/command
/desktop/gnome/url-handlers/https/command
/desktop/gnome/url-handlers/http/command
/desktop/gnome/url-handlers/ftp/command
Reference:
http://www.salixos.org/forum/viewtopic.php?f=15&t=1376&view=print
Related videos on Youtube
Tyrone Williams
Updated on September 17, 2022Comments
-
Tyrone Williams almost 2 years
I find this command
sudo update-alternatives –config x-www-browser
I choose Chrome. It works for xpdf, but Evince still starts Firefox after click.
I feel Linux is not standard. I use Linux Mint 8 (Helena) LXDE.
-
g24l over 12 yearsthis question is not well phrased , what do you mean that evince starts firefox ? Having seen this, now I am not so sure about my answer.
-
erik over 10 yearsI think the question is about which browser starts if you click on a URL in a PDF document.
-
Martin Thoma over 9 yearsFor MATE users: askubuntu.com/a/533160/10425
-
-
Tyrone Williams about 14 yearsyou almost killed my system! after apt-get gnome-control-center, the system is almost broken.
-
msw about 14 yearsdefine "almost broken"
-
Jarvin about 14 yearsThe issue may be you are telling him to install gnome stuff when his window manager is probably LXDE.
-
Tyrone Williams about 14 yearsi report it: forums.linuxmint.com/viewtopic.php?f=47&t=50017 it write file .xsession-errors with "fcitx signal 11", and eat the hd space.
-
frabjous almost 14 years@Dan keep in mind that evince is "gnome stuff", and has gnome dependencies; that said, I don't know what the right answer here is. (Also, LXDE is a desktop environment, not a window manager, not that matters here.)
-
g24l over 12 yearsyou keep telling the guy to setup gnome, but he is using LXDE...
-
user1686 over 12 years@g24l: Evince is a GNOME program, though. (However, it doesn't use GConf for URL handlers anymore.)
-
xubuntix about 12 yearsthis should actually be
xdg-mime default evince.desktop application/pdf
-
Rudy Matela almost 11 yearsWorked like a charm on Arch Linux.
-
Ciro Santilli Путлер Капут 六四事 over 9 yearsI've heard that
mimeapps.list
is the new filename for freedesktop.org: standards.freedesktop.org/mime-apps-spec/… -
Shi B. almost 9 yearsIt works like Voodoo, magical, but just simply works =)
-
phinz over 3 yearsFor me (Debian 10, unwanted default was libreoffice) this didn't work. Instead
xdg-mime default org.gnome.Evince.desktop application/pdf
did the trick.