我已经运行update-alternatives
了 GNOME首选应用选择的事情。所有都指向将 Chromium 浏览器作为默认浏览器。然而,当我运行 时xdg-open http://askubuntu.com
,Firefox 启动了!同样,Emacs和市场(bzr
)还可以在 Firefox 而不是 Chromium 中启动东西。
是否有任何其他设置会影响 xdg-open 功能?
肯定是有些东西坏了:
更新
我已经清除了 Firefox:
- update-alternatives-使用 Chromium 浏览器
- sensible-browser-打开 Chromium 浏览器
- xdg-open & gnome-open - 使用 google-chrome 打开,它会告诉我“它不是默认浏览器”
!!!!
答案1
以上所有答案基本上都是正确的,具体取决于您正在做什么以及您使用的程序如何调用事物。对我来说,问题是我的终端仿真器 (Tilix) 仍然打开错误的浏览器 (Firefox 而不是 Chrome),并且还xdg-open foobar.html
打开了错误的浏览器。
最终我发现还有xdg-mime
:
xdg-mime query default x-scheme-handler/http
firefox.desktop
xdg-mime query default x-scheme-handler/https
firefox.desktop
这是不正确的,因此我将其改为:
xdg-mime default google-chrome.desktop 'x-scheme-handler/http'
xdg-mime default google-chrome.desktop 'x-scheme-handler/https'
然后还有“text/html”的绑定,我也对其进行了更改:
xdg-mime default google-chrome.desktop 'text/html'
同时确保以下内容也设置正确:
- 环境
BROWSER
变量 sensible-browser
(/usr/bin/sensible-browser
,尝试启动此列表中其他一些项目的包装脚本)gnome-www-browser
(/usr/bin/gnome-www-browser
,指向 的符号链接/etc/alternatives/gnome-www-browser
)x-www-browser
(/usr/bin/x-www-browser
,符号链接到/etc/alternatives/x-www-browser
www-browser
(/usr/bin/www-browser
,指向 的符号链接/etc/alternatives/www-browser
)- 所有
update-alternatives --get-selections
指向浏览器的“替代”条目(请参阅列表)。 - GConf 数据库(参见@Isaiah 的回答)
这最终可以在我的桌面上打开大多数情况下正确的浏览器。2018 年无疑是桌面 Linux 之年。
答案2
Chromium 在其偏好设置中还有一个选项可以将其设为默认浏览器:
这应该可行,但如果不行,请继续阅读:
有几个键在会议确定由哪个浏览器启动的数据库xdg-open
:
/desktop/gnome/url-handlers/unknown/command
/desktop/gnome/url-handlers/http/command
/desktop/gnome/url-handlers/https/command
/desktop/gnome/url-handlers/about/command
确保它们都设置正确:
- 点击Alt+F2
- 进入
gconf-editor
- 导航到上述键,它们应该设置为
/usr/bin/chromium-browser %s
。
答案3
就我的情况而言,我安装了 Chromium 并将其设为默认浏览器。在此之前,Chrome 是默认浏览器。
我尝试了所有我能做的:设置 Chromium 默认浏览器,更改配置文件运行 Chromium 的设置%U多变的 (https://askubuntu.com/a/41085/94263),将替代方案更改为使用 Chromium 作为默认设置x-www-浏览器(https://askubuntu.com/a/24052/94263),但没有任何帮助,xdg-开放打开了新的 Chromium 窗口,其中包含起始页,但无法打开给定的链接,明智的浏览器打开了 Chrome。我尝试清除 Chrome(Chromium 被自动设置为默认设置,并自动更新替代方案)并再次安装它,因为我需要 Pepper flash,它成为了默认x-www-浏览器再次选择,再次开放明智的浏览器命令。然后我谷歌了一些页面,关注优先级,还发现有gnome-www-浏览器符号链接/etc/替代方案/也和谷歌浏览器是默认设置。Chrome 已将优先级设置为200和铬 -40。Google Chrome 的优先级更高,因此 update-alternatives 实用程序会自动将其作为“更好版本”安装为默认网络浏览器。
我已从x-www-浏览器和gnome-www-浏览器:
sudo update-alternatives --remove x-www-browser /usr/bin/google-chrome
sudo update-alternatives --remove x-www-browser /usr/bin/chromium-browser
sudo update-alternatives --remove gnome-www-browser /usr/bin/google-chrome
sudo update-alternatives --remove gnome-www-browser /usr/bin/chromium-browser
然后我安装了具有其他优先级的新替代方案:
sudo update-alternatives --install /usr/bin/x-www-browser x-www-browser /usr/bin/google-chrome 40
sudo update-alternatives --install /usr/bin/x-www-browser x-www-browser /usr/bin/chromium-browser 200
sudo update-alternatives --install /usr/bin/gnome-www-browser gnome-www-browser /usr/bin/google-chrome 40
sudo update-alternatives --install /usr/bin/gnome-www-browser gnome-www-browser /usr/bin/chromium-browser 200
我不知道‘40’和‘200’所有计算机的默认优先级,否则您将得到其他数字。最好先输入
sudo update-alternatives --display x-www-browser
sudo update-alternatives --display gnome-www-browser
更新。我尝试在完全不同的系统上做同样的事情,优先级与这里相同。
Upd2. 如果您只运行一次 google-chrome,它会将其优先级改回200但 chromium-browser 将保持默认状态。
这对我来说很管用。Chromium 被自动设置为默认设置,并且明智的浏览器正在推出 Chromium。但xdg-开放正在打开新的空白窗口。