如何授予 Flatpak 应用访问目录的权限

如何授予 Flatpak 应用访问目录的权限

我从 Flathub 安装了 Elisa 音乐播放器,但它拒绝查看我的音乐分区,所以除非我将其复制到,否则我无法将任何音乐添加到它的库中/home/my_user/

有没有办法授予 Flatpak 应用程序访问非规范地址的权限?

除了在编译时指定它之外......

答案1

除了其他答案之外,对我有用的另一个解决方案是安装平封。它使设置权限变得非常简单,并且还有一个额外的好处,那就是使现有权限非常清晰。以下是在 Flatseal 中将目录添加到 steam 的样子:

在 Flatseal 中向 steam 添加额外目录

我在那里添加了目录“MediaSSD”,其他一切都是默认的。

答案2

您可以通过命令行执行此操作。您需要的具体命令是(可能需要使用 运行sudo):

flatpak override <package_name_here> --filesystem=<path_here>

如果您有一条奇怪的路径并且它抱怨“意外的文件系统后缀”,只需将路径部分放在引号中。

如果您希望删除对特定地址的访问权限,请使用“ --nofilesystem”:

flatpak override <package_name_here> --nofilesystem=<path_here>

找到更完整的权限/命令列表这里

答案3

运行一次以允许访问主机上的普通文件,不包括主机操作系统或系统内部:

sudo flatpak override ApplicationIDHere --filesystem=host

使用命令显示 ApplicationID:sudo flatpak list

然后:

flatpak run ApplicationIDHere

答案4

补充一下这个答案,它与 Hassan 所说的类似。我尝试将 WhatsApp Web 安装为 PWA。我需要将这些行添加到 Flatseal 中,以便 Chrome 能够创建带有匹配图标的快捷方式:

~/.local/share/applications

~/.local/share/icons

记得重启 Chrome 以使更改生效

Flatseal Chrome - 文件系统 - 其他文件 - 条目

相关内容