我尝试使用以下方法设置默认浏览器以打开 Chromium 的 URL:
xdg-settings set default-web-browser chromium.desktop
(是的,我在运行此命令之前检查了 /usr/share/applications/chromium.desktop 是否存在,它确实存在)并且它返回:
xdg-settings: unknown desktop environment
i3 不是桌面环境,所以我绝对可以理解这个错误,但是有没有办法解决它?我希望 xdg-open 使用 Chromium 打开 URL 的原因是,notebook()
从 SageMath 命令行运行会尝试在默认 Web 浏览器中打开笔记本(使用 xdg-open)。目前这显然失败了(没有浏览器或与此相关的应用程序打开该 URL),所以我想让它工作,我相信这需要我让 xdg-open 在 Chromium 中打开 URL。
答案1
安装perl 文件 mimeinfo并以这种方式配置它。请参阅 Arch Wiki 文章xdg-utils:
如果未检测到桌面环境,MIME 类型检测将回退到使用不实现 XDG 标准的文件(具有讽刺意味的是)。如果您希望 xdg-open 在没有桌面环境的情况下使用 XDG MIME 应用程序,你需要安装 perl-file-mimeinfo或切换到支持 XDG MIME 应用程序的资源打开器之一。
答案2
我把它设置在/usr/share/applications/defaults.list它对我有用(从 Slack 应用程序打开链接)。事实上,可用的应用程序列表是/usr/share/applications/*.desktop
在我的例子中必须编辑这些行:
text/html=firefox.desktop;
text/xml=firefox.desktop;
application/xhtml_xml=firefox.desktop;
image/webp=firefox.desktop;
x-scheme-handler/http=firefox.desktop;
x-scheme-handler/https=firefox.desktop;
x-scheme-handler/ftp=firefox.desktop;
这也可以为每个用户完成〜/.config/mimeapps.list