У меня была обратная проблема - я хочу, чтобы firefox открывал ссылки, но, несмотря ни на что, запускал хром.
Я использовал strace -o /tmp/output evince
чтобы увидеть, какие функции вызываются, и нашел это в журнале:
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
Не знаю, почему в firefox.desktop есть точка с запятой, но я создал /home/koniu/.local/share/applications/firefox.desktop
со следующим содержимым:
[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
И теперь evince
запускает firefox
по желанию.