OptionalappOptionalappAdditional plugs for the Electron app,
which are necessary for the app to be a consumer of a feature in the system. Common features
can be set via the [[features]] option. To set any attributes for the plugs, set them in
the [[plugs]] option.
For example, if the app uses a DBus interface:
{
appPlugs: ['my-dbus-interface'],
plugs: {
'my-dbus-interface': {
interface: 'dbus',
name: 'com.example.my-interface',
bus: 'session'
}
}
}
plugs will be passed through directly to the generated snapcraft.yaml.
OptionalappAdditional slots for the Electron app,
which are necessary for the app to be a producer of a feature in the system. Common features
can be set via the [[features]] option. To set any attributes for the plugs, set them in
the [[slots]] option.
For example, if the app creates a DBus interface:
{
appSlots: ['my-dbus-interface'],
slots: {
'my-dbus-interface': {
interface: 'dbus',
name: 'com.example.my-interface',
bus: 'session'
}
}
}
[[slots]] will be passed through directly to the generated snapcraft.yaml.
OptionalconfinementSee the Snapcraft documentation.
Default: devmode
OptionaldescriptionThe longer description for the snap. Can contain newlines.
OptionaldesktopThe absolute path to a custom Freedesktop.org desktop file template.
OptionalexecutableThe executable name of the Electron app, sans file extension. Corresponds
to the executableName option
in Electron Packager.
Default: either productName or name in package.json
OptionalfeaturesDescribes what functionality the Electron app needs, in order to work inside the Snap sandbox.
Example:
{
features: {
audio: true,
mpris: 'com.example.mpris',
webgl: true
}
}
Setting a feature to a false-y value does not disable the feature, only omitting the
feature from the Object does that.
Optionalalsa?: trueAudio support via ALSA (replaces audio support if both are specified)
Optionalaudio?: trueAudio support via PulseAudio.
OptionalbrowserSandbox?: falseWeb browser functionality. This was originally enabled by default when using Electron ≥ 5.0.0, due to the setuid sandbox support. However, Snapcraft allows for use of the snap confined sandbox, particularly within strict confinement. We should encourage but not enforce the browser-sandbox plug.
Optionalmpris?: stringMPRIS support.
If enabled, the interface name must be specified as the feature value.
Optionalpasswords?: trueAccess the secret service (e.g., GNOME Keyring)
Optionalwebgl?: trueWebGL support (requires Mesa, etc.)
OptionalgradeThe quality grade of the Snap. See the Snapcraft documentation for valid values.
Default: devel
OptionalhookOne or more hook scripts to be installed with
the Snap. The format of the Object is { hookName: pathToHookScript, […] }. Hook names
can be found in the Snapcraft documentation.
OptionalnameThe name of the Snap package.
Default: name in package.json
OptionalplugsSee [[appPlugs]] for details.
OptionalslotsSee [[appSlots]] for details.
OptionalsnapcraftThe absolute path to the snapcraft executable.
By default, it searches paths in the PATH environment variable.
OptionalsummaryA 78 character long summary for the Snap.
Default: description in package.json
OptionalversionThe version of the Snap package.
Default: version in package.json
Additional app-specific Snapcraft configuration for the Electron app. This is different from [[SnapcraftConfig]] in that it is scoped under
apps.<app-name>.