无法将 xdg-open url-handler 更改为 Firefox

joe*_*aro 7 i3 manjaro xdg-open

我的问题是许多程序调用 xdg-open 来打开网站,但在我的 Manjaro 系统(基于 Arch Linux)上,这以某种方式绑定到 cups :)

当这种对 xdg-open 的调用发生时,CPU 使用率会上升很多,但没有任何反应。我重新启动是因为笔记本电脑很快变热。

~ $ xdg-settings get default-web-browser
cups.desktop
Run Code Online (Sandbox Code Playgroud)

当我想改变它时,我得到以下响应:

~ $ xdg-settings set default-web-browser firefox.desktop
xdg-settings: $BROWSER is set and can't be changed with xdg-settings
Run Code Online (Sandbox Code Playgroud)

我可以继续更改浏览器的环境变量,我已经修复了,但仅适用于这个终端。如何使此更改永久化或将其添加到自动启动?

我正在使用:i3 4.12,鱼壳

Mat*_*aun 8

我遇到了这个问题,因为每次安装 Chromium 时都会将其设为默认浏览器。

使用xdg-mime固定它:

xdg-mime default firefox.desktop x-scheme-handler/https x-scheme-handler/http
Run Code Online (Sandbox Code Playgroud)

在我的 Arch Linux 系统上,这在 中添加了两行~/.config/mimeapps.list,将 HTTP 和 HTTPS 与 Firefox 相关联。

现在我可以同时安装 Firefox 和 Chromium,并将 Firefox 作为默认浏览器。

  • 添加 `text/html` 作为参数来处理文件系统中的 .html 文件。 (2认同)

tem*_*emp 4

/etc/profile检查和中的 BROWSER 变量,/etc/environment最终检查~/.bashrc. 它可能已设置为/usr/bin/xdg-open,因此您应该考虑更改它以避免递归调用。

  • 我的经验:我在“~/.bashrc”中有“BROWSER=firefox”,但应用程序仍然在 chromium 中打开 URL。`xdg-settings get default-web-browser` 生成了 `chromium.desktop`,但由于存在 `$BROWSER`,所以不允许我设置它。我必须打开一个新终端,执行 `export BROWSER=""`,然后运行 ​​`xdg-settings set default-web-browser firefox.desktop`,然后应用程序在 Firefox 中打开 url。我觉得这很奇怪,因为它的行为就像“$BROWSER”取代(因此不会设置),但在实践中并没有这样发生。为遇到此问题的其他人添加注释。 (3认同)