linux - 在 electron-installer-snap 中指定包依赖

标签 linux electron snapcraft

我可以使用 electron-installer-snap 为我的 Electron 应用程序成功构建一个 snap 包,但是,我的应用程序依赖于 keytar module随后取决于正在安装的 libsecret-1-0

我看不到将包​​依赖项传递给 electron-installer-snap 的方法(至少从他们的 API 文档)。目前,我正在使用以下内容创建快照

createSnapPackage({
  name: 'my-app',
  executableName: 'myApp',
  arch: 'x64',
  grade: 'devel',
  confinement: 'devmode',
  version: '0.1.0',
  src: '/path-to-src',
  dest: '/path-to-write-snap',
  features: {
    passwords: true
  }
});

注意:包创建和安装工作正常,但是,在启动时,应用程序崩溃并出现以下错误:

A JavaScript error occurred in the main process Uncaught Exception: Error: Cannot open /snap/my-app/x1/my-app/resources/app.asar/keytar.node: Error: libsecret-1.so.0: cannot open shared object file: No such file or directory

注意:我正在运行 Ubuntu 16.04 来创建快照。感谢任何帮助/指点!

最佳答案

传递以下用户选项似乎可以解决问题:

{
  ...
  parts: {
    electronApp: {
      'stage-packages': ['libsecret-1-0'],
    }
  }
}

关于linux - 在 electron-installer-snap 中指定包依赖,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51539198/

相关文章:

c - Linux 上的 GetTcpTable 等效项

php - JSON 文件未更新到服务器

javascript - Electron JS : how to manipulate cookies from rendered Process(browser window)?

angular - Electron 在根文件夹中寻找资源

docker - 在 docker 上启用实时恢复并不能保持容器存活

python - 在 Linux 上将 PIL 图像转换为视频

linux - 根据另一行将字符串替换为另一个字符串

node.js - 无法使用 Node js 从 SFTP 下载大文件

node.js - 如何在snapcraft中正确安装nodejs?

electron - 使用 electron-builder 的 snap 安装程序的默认主目录