电子生成器快照安装程序混淆主目录

问题描述

这是上一个问题 Defult home directory for snap installer using electron-builder 的后续问题,按照那里的要求提出。

我目前正在构建一个电子应用程序,并使用电子构建器构建安装程序,例如 .deb.snap。我的应用程序使用 showSaveDialog/showOpenDialog 打开/保存打开 nautilus(在 ubuntu 中)的文件,如文件资源管理器。现在,如果应用程序是使用 .snap 安装程序安装的,则资源管理器弹出窗口中的 Home 选项卡指向 /home/user/snap/<app>/<revision>/,如下图所示,而不是我们的实际目录通常在 linux 中调用 home (/home/username/)。由于此弹出式资源管理器窗口中的 Home 不是实际用户的主目录,因此让用户感到困惑。
有没有办法解决这个问题?

enter image description here

解决方法

这似乎是基于 GTK 的打开/保存对话框在快照限制中运行时的常见问题。

网络上散布着以下错误报告:

上面最后一个链接中的评论者建议设置 $G_HOME 环境变量。

您可以覆盖此变量以影响文件选择器,但您需要尽早进行。在我的测试中,需要在 app-ready 事件之前完成:

df <- structure(list(col1 = c("  data","  data","  data"
),col2 = c("data","data","data"),col3 = c("data",col4 = c("hippo-11-trx-2021","goose-17-plt-2017","monkey-01-mno","zebra-99-451-2019")),class = "data.frame",row.names = c(NA,-4L))

风险自负;这种变化可能还有其他潜在的不良影响。 我没有在 snap 限制下运行它,但能够更改文件选择器用于“主页”条目的目录。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...