hal*_*leo 4 centos xdgutils default-browser centos7
有很多与我类似的问题(例如xdg-open 未打开默认浏览器或xdgutils - xdg-settings 未在 gentoo 中设置 default-web-browser,但没有一个答案对我的情况有帮助。因此我询问我的特殊情况:
在 Centos 7 上,我没有运行免费的桌面管理器,我只是从命令行运行一些 X11 应用程序(如 VS Code),其中 DISPLAY 变量设置为我连接的 (Windows) 计算机上的 X 服务器。
在 Centos 机器上我安装了两个浏览器,firefox并且google-chrome. 我只需输入firefoxresp 即可启动这两个浏览器。google-chrome在 bash 终端中。
xdg-open可用并打开链接google-chrome- 与 VS Code 一样。不过我想将其更改为firefox.
我试过:
在 Firefox 的 GUI 首选项中勾选“默认浏览器”。
使用xdg-settings, 但是
xdg-settings get default-web-browser
Run Code Online (Sandbox Code Playgroud)
返回“xdg-settings:未知的桌面环境”
设置 $BROWSER。在 bash 中我发出了
export BROWSER=firefox
Run Code Online (Sandbox Code Playgroud)
但仍然google-chrome是由xdg-open
在这种环境下如何将默认浏览器设置为firefox?
注意:奇怪的是,在另一台装有 Centos 6的机器上(并且“没有桌面环境”),该export BROWSER方法有效!
可以在XDG MIME 应用程序规范mimeapps.list中描述的配置文件中设置所需的行为。
TLDR:
为了将 Firefox 配置为用户的默认浏览器,请创建~/.config/mimeapps.list包含以下行的内容:
[Default Applications]
x-scheme-handler/http=firefox.desktop
x-scheme-handler/https=firefox.desktop
x-scheme-handler/ftp=firefox.desktop
x-scheme-handler/chrome=firefox.desktop
text/html=firefox.desktop
application/x-extension-htm=firefox.desktop
application/x-extension-html=firefox.desktop
application/x-extension-shtml=firefox.desktop
application/xhtml+xml=firefox.desktop
application/x-extension-xhtml=firefox.desktop
application/x-extension-xht=firefox.desktop
Run Code Online (Sandbox Code Playgroud)
详细信息:
xdg-utils喜欢xdg-open(1)并在本规范的文件名和位置xdg-mime(1)部分列出的位置中查找该文件:
$XDG_CONFIG_HOME/$desktop-mimeapps.list用户覆盖,特定于桌面(对于高级用户)$XDG_CONFIG_HOME/mimeapps.list用户覆盖(用户配置 GUI 的推荐位置)$XDG_CONFIG_DIRS/$desktop-mimeapps.list系统管理员和 ISV 覆盖,特定于桌面$XDG_CONFIG_DIRS/mimeapps.list系统管理员和 ISV 覆盖$XDG_DATA_HOME/applications/$desktop-mimeapps.list为了完整性,已弃用,特定于桌面$XDG_DATA_HOME/applications/mimeapps.list为了兼容性,已弃用$XDG_DATA_DIRS/applications/$desktop-mimeapps.list发行版提供的默认值、特定于桌面的$XDG_DATA_DIRS/applications/mimeapps.list发行版提供的默认值变量的位置由XDG 基本目录$XDG规范控制。如果您想弄清楚在特定情况下在哪里寻找配置,请使用环境变量运行它们,如下所示:xdg-utilsXDG_UTILS_DEBUG_LEVEL
$ XDG_UTILS_DEBUG_LEVEL=10 xdg-open 'https://www.example.com'
...
Checking /home/USERNAME/.config/mimeapps.list
...
Run Code Online (Sandbox Code Playgroud)