我使用Gio
中的launch_default_for_uri
函数(从gi.repository
导入(在用户的默认浏览器中打开URL。这在我运行postmarketOS的手机和运行Fedora 32的桌面上运行得很好,但在我运行的Alpine Linux虚拟机中,它反而引发了以下异常:
Traceback (most recent call last):
File "giotest.py", line 3 in <module>
Gio.AppInfo.launch_default_for_uri("https://stackoverflow.com")
gi.repository.GLib.Error: g-io-error-quark: Operation not supported (15)
这是我的最小可复制示例:
from gi.repository import Gio
Gio.AppInfo.launch_default_for_uri("https://stackoverflow.com")
我想这可能是由于我的虚拟机中缺少依赖项,但我不确定是哪一个。我该怎么做才能在虚拟机中实现这一点?
您可能缺少GIO后端:安装gvfs
应该会有所帮助。
事实证明,至少在我的情况下,这是因为我没有默认的浏览器集。通过Firefox的设置将Firefox设置为我的默认设置解决了这个问题。