是否有与 Flatpak 的“permission-show”和“permission-set”等效的 snap 命令?

是否有与 Flatpak 的“permission-show”和“permission-set”等效的 snap 命令?

我之所以问这个问题,是因为我必须处理 Firefox Web 扩展和 Ubuntu 22.04 中的沙盒 Firefox 的权限问题。(请参阅https://github.com/mi-g/vdhcoapp/issues/139

解决方案是,我必须授予 Firefox 使用该 Web 扩展的权限。但我只在 Flatpak 的permission-show和中找到此类命令permission-set,这意味着我必须安装 Flatpak 才能修改折断应用程序。这很奇怪。

是否有任何权限管理方案折断如果不是,原因何在?

答案1

您可以通过 设置权限dbus,下面的命令将使用当前用户会话设置权限,不需要安装 flatpak。还有其他方法,请参阅文档

dbus-send --print-reply \
    --dest=org.freedesktop.impl.portal.PermissionStore \
    /org/freedesktop/impl/portal/PermissionStore \
    org.freedesktop.impl.portal.PermissionStore.SetPermission \
    string:'webextensions' \
    boolean:'true' \
    string:'<your-extension>' \
    string:'snap.firefox' \
    array:string:'yes'

我发现没有办法设置系统权限,这必须在每个会话中完成。

答案2

在此链接中感谢 el-calavera:https://github.com/mi-g/vdhcoapp/issues/139#issuecomment-1535179270这回答了我的问题。

我将在此引用她/他的回答:

“Snap 中的原生消息传递功能使用的是源自 flatpak 项目的 xdg-desktop-portal 框架。这就是为什么权限存储在名为 ~/.local/share/flatpak/db/webextensions 的文件中的原因。Flatpak 提供了一种编辑此文件的方法,而 snap 没有。”

这意味着我们必须使用 flatpak 来管理有关本机消息传递的这些权限。

相关内容