跳转到内容

Electron

来自 Arch Linux 中文维基

Electron 是由 GitHub 开发的应用程序框架,用于使用 Web 技术构建跨平台桌面应用程序。它使用 Chromium 浏览器引擎进行渲染,并使用 Node.js 运行时环境作为后端。

安装

安装 electron包 软件包以获取最新版本。

某些应用程序需要较旧版本的 Electron。你可以在安装最新版本的同时并行安装旧版本。对应的软件包名称会附带版本号后缀,例如 electron30AUR。

提示与技巧

配置文件

electron 命令会从 $XDG_CONFIG_HOME/electronXX-flags.conf 文件中读取命令行参数,其中 XX 为 Electron 的版本号。如果该文件不存在,则会回退到 $XDG_CONFIG_HOME/electron-flags.conf。(如果未设置 $XDG_CONFIG_HOME,则默认为 ~/.config。)

注意:
  • 这些配置文件仅会被 Arch Linux 提供的 electron包 读取;对于自行捆绑 Electron 构建版本的软件包(例如 slack-desktopAUR),这些配置文件不起作用。有时可以使用替代软件包,例如 slack-electronAUR。
  • 某些应用程序(例如 vesktopAUR)可能支持设置应用程序专属的命令行参数。对于此类应用程序,可以在 ~/.config/application_name-flags.conf 创建专属的参数配置文件,其中 application_name 是需要设置参数的应用程序名称。例如,要为 spotifyAUR 设置参数,可以将其添加到 ~/.config/spotify-flags.conf 中。

以井号 # 开头的行会被视为注释并被忽略,而其他行则会作为命令行参数传递给实际的 Electron 可执行文件,每行对应一个参数(不会根据空白字符拆分行!)。这些参数会在传递给 electron 命令本身的选项之前添加。

例如,这可以用于全局启用 Wayland。

示例:

~/.config/electron-flags.conf
--enable-features=WaylandWindowDecorations,AllowQt
# --ozone-platform-hint=wayland (已在 Electron 38 中移除)
--ozone-platform=wayland
# GTK4 在 Wayland 上表现更好。
--gtk-version=4

确定应用程序使用的 Electron 版本

如果应用程序是通过软件包管理器安装的,可以查询软件包的依赖关系,查看它是否依赖于 electron38AUR 等软件包。如果是,则说明它使用 Electron 38。 (如果它依赖于 electron包:该软件包始终提供最新版本的 Electron;要了解当前的具体版本,可以查询该软件包的依赖关系。)

也可以通过运行中应用程序的开发者工具确定其使用的 Electron 版本;参见 [1]。

Secret Service API

Electron 提供了 safeStorage API,用于与兼容 FreeDesktop.org Secret Service API 的密钥环进行交互。受支持的密钥环包括通过 GNOME libsecret 提供支持的 GNOME/Keyring、KDE Wallet 和 KeePass。

运行 Electron 应用程序时,可以通过 --password-store 命令行参数选择后端。例如,要让基于 Electron 构建的 electron-desktop 通过 libsecret 或 KeePass 进行交互,可以运行:

$ electron-desktop --password-store="gnome-libsecret"

将任意网站转换为应用程序

有时你可能需要将某个特定网站作为独立应用程序使用。通过 webapp-manager包,可以将任意网站转换为 Electron 应用程序。

警告:nativefier 已被弃用,不再推荐使用这种方式!参见 issue #1577。

启用 Wayland

参见 Wayland#Electron。

强制使用 X11

要强制应用程序使用 X11(XWayland)显示服务器后端,而不是默认使用原生 Wayland,可以添加 --ozone-platform=X11 命令行参数。

故障排除

由于 Electron 基于 Chromium,因此 Chromium#疑难解答 中的内容可能有所帮助。