Flatpak
单文件 Flatpak 捆绑包
目前,electron-builder
**不**支持将应用程序发布到 Flatpak 仓库,例如 Flathub。 这意味着 electron-builder
中的 Flatpak 支持仅限于生成 单文件捆绑包,与从仓库安装的应用程序捆绑包相比,它有各种限制。
值得一提的是,有一些 计划 计划 旨在使将 Electron 应用程序发布到 Flathub 更加容易。 当这种情况发生时,应该更容易为 electron-builder
创建一个 Flathub 发布器(其工作方式与其他发布器类似)。
顶级的 flatpak 键包含一组选项,用于指示 electron-builder 如何构建 Flatpak 捆绑包。
构建依赖项
需要安装 flatpak
和 flatpak-builder
包才能构建 Flatpak 捆绑包。
故障排除¶
如果 Flatpak 构建过程失败并出现类似 “flatpak failed with status code X” 的错误消息,则设置 DEBUG="@malept/flatpak-bundler"
环境变量应提供有关该错误的更多上下文。
启用 Flatpak 构建调试日志记录
env DEBUG="@malept/flatpak-bundler" electron-builder build --linux flatpak
配置¶
Electron-Builder / app-builder-lib / FlatpakOptions
扩展¶
属性¶
artifactName?¶
readonly
optional
artifactName:null
|string
继承自¶
TargetSpecificOptions
.artifactName
base?¶
readonly
optional
base:string
从指定应用程序的文件开始。 这可以用于创建扩展另一个应用程序的应用程序。 默认为 org.electronjs.Electron2.BaseApp。
请参阅 flatpak 清单文档。
baseVersion?¶
readonly
optional
baseVersion:string
使用在 base 中指定的应用程序的此特定版本。 默认为 20.08
。
请参阅 flatpak 清单文档。
branch?¶
readonly
optional
branch:string
导出应用程序时要使用的分支。 默认为 master
。
请参阅 flatpak 清单文档。
category?¶
readonly
optional
category:null
|string
继承自¶
description?¶
readonly
optional
description:null
|string
与应用程序 package.json 中的 description 相同,但允许您为 Linux 指定不同的描述。
继承自¶
CommonLinuxOptions
.description
desktop?¶
readonly
optional
desktop:null
|LinuxDesktopFile
继承自¶
executableArgs?¶
readonly
optional
executableArgs:null
|string
[]
可执行参数。 传递给 executableName
继承自¶
CommonLinuxOptions
.executableArgs
files?¶
readonly
optional
files: [string
,string
][]
要直接复制到应用程序中的文件。 应该是 [source, dest] 元组的列表。 Source 应该是要复制到 flatpak 中的文件/目录的相对/绝对路径,而 dest 应该是应用程序安装前缀内的路径(例如 /share/applications/)。
请参阅 @malept/flatpak-bundler 文档。
finishArgs?¶
readonly
optional
finishArgs:string
[]
传递给 flatpak build-finish 命令的参数数组。 默认为
[
// Wayland/X11 Rendering
"--socket=wayland",
"--socket=x11",
"--share=ipc",
// Open GL
"--device=dri",
// Audio output
"--socket=pulseaudio",
// Read/write home directory access
"--filesystem=home",
// Allow communication with network
"--share=network",
// System notifications with libnotify
"--talk-name=org.freedesktop.Notifications",
]
请参阅 flatpak 清单文档。
license?¶
readonly
optional
license:null
|string
EULA 许可证文件的路径。 默认为 license.txt
或 eula.txt
(或大写变体)。 仅支持纯文本。
mimeTypes?¶
readonly
optional
mimeTypes:null
|string
[]
除了文件关联中指定的 mime 类型之外的 mime 类型。 如果您不想注册新的 mime 类型,而是想重用现有的 mime 类型,请使用它。
继承自¶
modules?¶
readonly
optional
modules:any
[]
一个对象数组,用于指定要按顺序构建的模块。
请参阅 flatpak 清单文档。
publish?¶
optional
publish:Publish
继承自¶
runtime?¶
readonly
optional
runtime:string
应用程序使用的运行时的名称。 默认为 org.freedesktop.Platform
。
请参阅 flatpak 清单文档。
runtimeVersion?¶
readonly
optional
runtimeVersion:string
应用程序使用的运行时的版本。 默认为 20.08
。
请参阅 flatpak 清单文档。
sdk?¶
readonly
optional
sdk:string
应用程序构建时使用的开发运行时的名称。 默认为 org.freedesktop.Sdk
。
请参阅 flatpak 清单文档。
symlinks?¶
readonly
optional
symlinks: [string
,string
][]
要在应用程序文件中创建的符号链接。 应该是 [target, location] 符号链接元组的列表。 Target 可以是应用程序安装前缀内的相对或绝对路径,location 应该是前缀内的绝对路径,用于创建符号链接。
请参阅 @malept/flatpak-bundler 文档。
synopsis?¶
readonly
optional
synopsis:null
|string
简短描述。
继承自¶
useWaylandFlags?¶
readonly
optional
useWaylandFlags:boolean
是否在包装器脚本中启用 Wayland 特定标志 (--enable-features=UseOzonePlatform --ozone-platform=wayland
)。 这些标志仅从 Electron 版本 12 开始可用。 默认为 false
。