Snap
顶层 snap 键包含一组选项,用于指示 electron-builder 如何构建 Snap。
配置¶
Electron-Builder / app-builder-lib / SnapOptions
继承¶
属性¶
after?¶
readonlyoptionalafter:null|string[]
指定任何应在此部分之前构建的 parts。默认为 ["desktop-gtk2""]。
如果列表包含 default,它将被替换为默认列表,因此,可以使用 ["default", "foo"] 来添加自定义部分 foo 以及默认部分。
allowNativeWayland?¶
readonlyoptionalallowNativeWayland:null|boolean
允许使用原生 wayland 支持运行程序,使用 –ozone-platform=wayland。默认禁用,因为在旧版本 Electron/Snap 中存在此问题:https://github.com/electron-userland/electron-builder/issues/4007
appPartStage?¶
readonlyoptionalappPartStage:null|string[]
指定要暂存应用程序部分的哪些文件以及要排除哪些文件。接受单个文件、目录、通配符、globstars 和排除项。请参阅 Snapcraft filesets 以了解有关格式的更多信息。
默认值可以在 snap.ts 中找到。
artifactName?¶
readonlyoptionalartifactName:null|string
继承自¶
TargetSpecificOptions.artifactName
assumes?¶
readonlyoptionalassumes:null|string|string[]
核心必须支持的功能列表,以便安装此 snap。
autoStart?¶
readonlyoptionalautoStart:boolean
snap 是否应在登录时自动启动。
默认¶
false
base?¶
readonlyoptionalbase:null|string
类型为 base 的 snap,用作此 snap 的执行环境。示例:core、core18、core20、core22。默认为 core20
buildPackages?¶
readonlyoptionalbuildPackages:null|string[]
构建此 snap 需要安装的 debian 软件包列表。
category?¶
readonlyoptionalcategory:null|string
继承自¶
compression?¶
readonlyoptionalcompression:null|"xz"|"lzo"
设置 snap 的压缩类型。可以是 xz、lzo 或 null。
confinement?¶
readonlyoptionalconfinement:null|"devmode"|"strict"|"classic"
snap 支持的 confinement 类型。
默认¶
strict
description?¶
readonlyoptionaldescription:null|string
与应用程序 package.json 中的 description 相同,但允许您为 Linux 指定不同的描述。
继承自¶
CommonLinuxOptions.description
desktop?¶
readonlyoptionaldesktop:null|LinuxDesktopFile
继承自¶
environment?¶
readonlyoptionalenvironment:null|object
自定义环境。默认为 {"TMPDIR: "$XDG_RUNTIME_DIR"}。如果您设置自定义环境,它将与默认环境合并。
executableArgs?¶
readonlyoptionalexecutableArgs:null|string[]
可执行文件参数。传递给 executableName
继承自¶
CommonLinuxOptions.executableArgs
grade?¶
readonlyoptionalgrade:null|"devel"|"stable"
snap 的质量等级。它可以是 devel(即 snap 的开发版本,因此不发布到“stable”或“candidate”频道)或“stable”(即稳定版本或候选版本,可以发布到所有频道)。
默认¶
stable
hooks?¶
readonlyoptionalhooks:null|string
hooks 目录,相对于 build(构建资源目录)。
默认¶
build/snap-hooks
layout?¶
readonlyoptionallayout:null|object
指定要从 /usr、/var 和 /etc 等位置访问的任何文件。请参阅 snap layouts 以了解更多信息。
mimeTypes?¶
readonlyoptionalmimeTypes:null|string[]
除了文件关联中指定的 mime 类型之外的 mime 类型。如果您不想注册新的 mime 类型,而是想重用现有的 mime 类型,请使用它。
继承自¶
plugs?¶
readonlyoptionalplugs:null|PlugDescriptor| (string|PlugDescriptor)[]
plugs 列表。默认为 ["desktop", "desktop-legacy", "home", "x11", "wayland", "unity7", "browser-support", "network", "gsettings", "audio-playback", "pulseaudio", "opengl"]。
如果列表包含 default,它将被替换为默认列表,因此,可以使用 ["default", "foo"] 来添加自定义 plug foo 以及默认 plug。
可以使用对象而不是 plug 的名称来指定其他属性
[
{
"browser-sandbox": {
"interface": "browser-support",
"allow-sandbox": true
},
},
"another-simple-plug-name"
]
publish?¶
optionalpublish:Publish
继承自¶
slots?¶
readonlyoptionalslots:null|PlugDescriptor| (string|SlotDescriptor)[]
slots 列表。
可以使用对象而不是 slot 的名称来指定其他属性: ``` [ { “mpris”: { “name”: “chromium” }, } ]
如果您希望您的应用程序成为兼容的 MPris 播放器,您需要定义名称为“chromium”的 mpris slot。此 electron 具有 硬编码,我们需要传递此名称,以便 snap 在严格限制下允许它。
stagePackages?¶
readonlyoptionalstagePackages:null|string[]
用于支持 app 部分创建所需的 Ubuntu 软件包列表。类似于 deb 的 depends。默认为 ["libnspr4", "libnss3", "libxss1", "libappindicator3-1", "libsecret-1-0"]。
如果列表包含 default,它将被替换为默认列表,因此,可以使用 ["default", "foo"] 来添加自定义软件包 foo 以及默认软件包。
summary?¶
readonlyoptionalsummary:null|string
78 个字符长的摘要。默认为 productName。
synopsis?¶
readonlyoptionalsynopsis:null|string
简短描述。
继承自¶
title?¶
readonlyoptionaltitle:null|string
snap 的可选标题,可以包含大写字母和空格。默认为 productName。请参阅 snap 格式文档。
useTemplateApp?¶
readonlyoptionaluseTemplateApp:boolean
是否使用模板 snap。如果未指定 stagePackages,则默认为 true。