Snapcraft
Snapcraft project. Documentation: https://documentation.ubuntu.com/snapcraft/stable/
| Type | Core22Project | Core24Project | Core26Project | BareCore22Project | BareCore24Project | BareCore26Project | _BaselessCore22Project | _BaselessProject |
|---|---|
| File match |
.snapcraft.yaml
snapcraft.yaml
|
| Schema URL | https://catalog.lintel.tools/schemas/schemastore/snapcraft/latest.json |
| Source | https://raw.githubusercontent.com/canonical/snapcraft/main/schema/snapcraft.json |
Validate with Lintel
npx @lintel/lintel check
One of
Definitions
Snapcraft project app definition.
The command to run inside the snap when the app is invoked.
The desktop file used to start an app when the desktop environment starts.
The identifier to a desktop ID within an external appstream file.
The bus name that the application or service exposes through D-Bus.
The desktop file used to start an app.
The name of the bash completion script for the app.
The command to run to stop the service.
The command to run after the service is stopped.
The maximum amount of time to wait for the service to start.
The maximum amount of time to wait for the service to stop.
The maximum amount of time the service can run without sending a heartbeat to the watchdog.
The command to run to restart the service.
The time to wait between service restarts.
The time or schedule to run a service.
Configures the app as a service, and sets its runtime and notification behavior.
The ordered list of apps that the service runs after it launches.
The ordered list of apps that the service runs before it launches.
Determines how the service should restart when the snap refreshes.
The signal to send when stopping the service.
The conditions that cause the service to restart.
The list of additional successful exit statuses that the service can return.
Whether snapd can automatically start the service when the snap is installed.
The list of slots that the app provides.
The interfaces that the app can connect to.
The aliases that can be used to run the app.
The runtime environment variables.
The ordered list of commands to run before the app's command runs.
The sockets used to activate an app.
Determines whether the service is run on a system or user instance of systemd.
The slots exposed by the snap to activate the service with D-Bus.
The attributes to pass to the snap's metadata file for the app.
The extensions to add to the project.
Snapcraft project architecture definition.
The architectures to build the snap on.
The target architecture for the build.
The identifying name of the snap.
The self-contained software pieces needed to create the final artifact.
The amount of isolation the snap has from the host system.
The version of the snap.
The full description of the project.
The snap author's contact links and email addresses.
The links and email addresses for submitting issues, bugs, and feature requests.
The links to the source code of the snap or the original project.
The project's license as an SPDX expression
Selects a part to inherit metadata from and reuse for the snap's metadata.
Required if one of version, summary, or description isn't set.
The package repositories to use for build and stage packages.
Specifies the algorithm that compresses the snap.
The snap's donation links.
The links to the original software's web pages.
The path to the snap's icon.
The file layouts in the execution environment.
The quality grade of the snap.
The architectures that the snap builds and runs on.
The minimum version of snapd and its features that the snap requires from the host.
Configures the snap's hooks.
The attributes to pass to the snap's metadata file.
The individual programs and services that the snap runs.
Declares the snap's plugs.
Declares the snap's slots.
The linter configuration settings.
The epoch associated with this version of the snap.
The system usernames the snap can use to run daemons and services.
The snap's runtime environment variables.
The list of packages to install when building a snap.
The snaps to install when building a snap.
The Ubuntu Pro (formerly Ubuntu Advantage) services to enable when building the snap.
The primary-key header for snaps signed by third parties.
Declares the components to build in conjunction with the snap.
The identifying name of the snap.
The self-contained software pieces needed to create the final artifact.
The amount of isolation the snap has from the host system.
The version of the snap.
The full description of the project.
The platforms where the snap can be built and where the resulting snap can run.
The snap author's contact links and email addresses.
The links and email addresses for submitting issues, bugs, and feature requests.
The links to the source code of the snap or the original project.
The project's license as an SPDX expression
Selects a part to inherit metadata from and reuse for the snap's metadata.
Required if one of version, summary, or description isn't set.
The package repositories to use for build and stage packages.
Specifies the algorithm that compresses the snap.
The snap's donation links.
The links to the original software's web pages.
The path to the snap's icon.
The file layouts in the execution environment.
The quality grade of the snap.
The minimum version of snapd and its features that the snap requires from the host.
Configures the snap's hooks.
The attributes to pass to the snap's metadata file.
The individual programs and services that the snap runs.
Declares the snap's plugs.
Declares the snap's slots.
The linter configuration settings.
The epoch associated with this version of the snap.
The system usernames the snap can use to run daemons and services.
The snap's runtime environment variables.
The list of packages to install when building a snap.
The snaps to install when building a snap.
The Ubuntu Pro (formerly Ubuntu Advantage) services to enable when building the snap.
The primary-key header for snaps signed by third parties.
Declares the components to build in conjunction with the snap.
The identifying name of the snap.
The self-contained software pieces needed to create the final artifact.
The amount of isolation the snap has from the host system.
The version of the snap.
The full description of the project.
The platforms where the snap can be built and where the resulting snap can run.
The snap author's contact links and email addresses.
The links and email addresses for submitting issues, bugs, and feature requests.
The links to the source code of the snap or the original project.
The project's license as an SPDX expression
Selects a part to inherit metadata from and reuse for the snap's metadata.
Required if one of version, summary, or description isn't set.
The package repositories to use for build and stage packages.
Specifies the algorithm that compresses the snap.
The snap's donation links.
The links to the original software's web pages.
The path to the snap's icon.
The file layouts in the execution environment.
The minimum version of snapd and its features that the snap requires from the host.
Configures the snap's hooks.
The attributes to pass to the snap's metadata file.
The individual programs and services that the snap runs.
Declares the snap's plugs.
Declares the snap's slots.
The linter configuration settings.
The epoch associated with this version of the snap.
The system usernames the snap can use to run daemons and services.
The snap's runtime environment variables.
The list of packages to install when building a snap.
The snaps to install when building a snap.
The Ubuntu Pro (formerly Ubuntu Advantage) services to enable when building the snap.
The primary-key header for snaps signed by third parties.
Declares the components to build in conjunction with the snap.
Snapcraft component definition.
The summary of the component.
The full description of the component.
The type of the component.
The version of the component.
The configuration for the component's hooks.
Selects a part to inherit metadata from and reuse for the component's metadata.
Only the component's version can be set.
Snapcraft project content plug definition.
The name of the interface.
The path to where the producer's files will be available in the snap.
The name for the content type.
The name of the producer snap..
The identifying name of the snap.
The self-contained software pieces needed to create the final artifact.
The amount of isolation the snap has from the host system.
The version of the snap.
The full description of the project.
The baseline system that the snap is built in.
The snap author's contact links and email addresses.
The links and email addresses for submitting issues, bugs, and feature requests.
The links to the source code of the snap or the original project.
The project's license as an SPDX expression
Selects a part to inherit metadata from and reuse for the snap's metadata.
Required if one of version, summary, or description isn't set.
The package repositories to use for build and stage packages.
Specifies the algorithm that compresses the snap.
The snap's donation links.
The links to the original software's web pages.
The path to the snap's icon.
The file layouts in the execution environment.
The quality grade of the snap.
The architectures that the snap builds and runs on.
The minimum version of snapd and its features that the snap requires from the host.
Configures the snap's hooks.
The attributes to pass to the snap's metadata file.
The individual programs and services that the snap runs.
Declares the snap's plugs.
Declares the snap's slots.
The linter configuration settings.
The epoch associated with this version of the snap.
The system usernames the snap can use to run daemons and services.
The snap's runtime environment variables.
The list of packages to install when building a snap.
The snaps to install when building a snap.
The Ubuntu Pro (formerly Ubuntu Advantage) services to enable when building the snap.
The primary-key header for snaps signed by third parties.
Declares the components to build in conjunction with the snap.
The identifying name of the snap.
The self-contained software pieces needed to create the final artifact.
The amount of isolation the snap has from the host system.
The version of the snap.
The full description of the project.
The baseline system that the snap is built in.
The platforms where the snap can be built and where the resulting snap can run.
The snap author's contact links and email addresses.
The links and email addresses for submitting issues, bugs, and feature requests.
The links to the source code of the snap or the original project.
The project's license as an SPDX expression
Selects a part to inherit metadata from and reuse for the snap's metadata.
Required if one of version, summary, or description isn't set.
The package repositories to use for build and stage packages.
Specifies the algorithm that compresses the snap.
The snap's donation links.
The links to the original software's web pages.
The path to the snap's icon.
The file layouts in the execution environment.
The quality grade of the snap.
The minimum version of snapd and its features that the snap requires from the host.
Configures the snap's hooks.
The attributes to pass to the snap's metadata file.
The individual programs and services that the snap runs.
Declares the snap's plugs.
Declares the snap's slots.
The linter configuration settings.
The epoch associated with this version of the snap.
The system usernames the snap can use to run daemons and services.
The snap's runtime environment variables.
The list of packages to install when building a snap.
The snaps to install when building a snap.
The Ubuntu Pro (formerly Ubuntu Advantage) services to enable when building the snap.
The primary-key header for snaps signed by third parties.
Declares the components to build in conjunction with the snap.
The identifying name of the snap.
The self-contained software pieces needed to create the final artifact.
The amount of isolation the snap has from the host system.
The version of the snap.
The full description of the project.
The platforms where the snap can be built and where the resulting snap can run.
The snap author's contact links and email addresses.
The links and email addresses for submitting issues, bugs, and feature requests.
The links to the source code of the snap or the original project.
The project's license as an SPDX expression
Selects a part to inherit metadata from and reuse for the snap's metadata.
Required if one of version, summary, or description isn't set.
The package repositories to use for build and stage packages.
Specifies the algorithm that compresses the snap.
The snap's donation links.
The links to the original software's web pages.
The path to the snap's icon.
The file layouts in the execution environment.
The minimum version of snapd and its features that the snap requires from the host.
Configures the snap's hooks.
The attributes to pass to the snap's metadata file.
The individual programs and services that the snap runs.
Declares the snap's plugs.
Declares the snap's slots.
The linter configuration settings.
The epoch associated with this version of the snap.
The system usernames the snap can use to run daemons and services.
The snap's runtime environment variables.
The list of packages to install when building a snap.
The snaps to install when building a snap.
The Ubuntu Pro (formerly Ubuntu Advantage) services to enable when building the snap.
The primary-key header for snaps signed by third parties.
Declares the components to build in conjunction with the snap.
Snapcraft project hook definition.
The ordered list of commands to run before the hook runs.
The environment variables for the hook.
The list of interfaces that the hook can connect to.
The attributes to pass to the snap's metadata file for the hook.
Linter configuration.
:ivar ignore: A list describing which files should have issues ignored for given linters.
The items in the list can be either:
- a string, which must be the name of one of the known linters (see below). All issues
from this linter will be ignored.
- a dict containing exactly one key, which must be the name of one of the known linters.
The value is then a list of strings corresponding to the filenames/patterns that
should be ignored for that linter.
The "known" linter names are the keys in :ref:LINTERS
Linters or files to skip when linting.
Snapcraft project platform definition.
The architectures to build the snap on.
The target architecture for the build.
Snapcraft app socket definition.
The socket's abstract name or socket path.
The mode or permissions of the socket in octal.
The identifying name of the snap.
The baseline system that the snap is built in.
The self-contained software pieces needed to create the final artifact.
The amount of isolation the snap has from the host system.
The version of the snap.
The full description of the project.
The architectures that the snap builds and runs on.
The snap author's contact links and email addresses.
The links and email addresses for submitting issues, bugs, and feature requests.
The links to the source code of the snap or the original project.
The project's license as an SPDX expression
Selects a part to inherit metadata from and reuse for the snap's metadata.
Required if one of version, summary, or description isn't set.
The package repositories to use for build and stage packages.
Specifies the algorithm that compresses the snap.
The snap's donation links.
The links to the original software's web pages.
The path to the snap's icon.
The file layouts in the execution environment.
The quality grade of the snap.
The architectures that the snap builds and runs on.
The minimum version of snapd and its features that the snap requires from the host.
Configures the snap's hooks.
The attributes to pass to the snap's metadata file.
The individual programs and services that the snap runs.
Declares the snap's plugs.
Declares the snap's slots.
The linter configuration settings.
The epoch associated with this version of the snap.
The system usernames the snap can use to run daemons and services.
The snap's runtime environment variables.
The list of packages to install when building a snap.
The snaps to install when building a snap.
The Ubuntu Pro (formerly Ubuntu Advantage) services to enable when building the snap.
The primary-key header for snaps signed by third parties.
Declares the components to build in conjunction with the snap.
Project types that do not require a base.
The identifying name of the snap.
The baseline system that the snap is built in.
The self-contained software pieces needed to create the final artifact.
The amount of isolation the snap has from the host system.
The version of the snap.
The full description of the project.
The architectures that the snap builds and runs on.
The snap author's contact links and email addresses.
The links and email addresses for submitting issues, bugs, and feature requests.
The links to the source code of the snap or the original project.
The project's license as an SPDX expression
Selects a part to inherit metadata from and reuse for the snap's metadata.
Required if one of version, summary, or description isn't set.
The package repositories to use for build and stage packages.
Specifies the algorithm that compresses the snap.
The snap's donation links.
The links to the original software's web pages.
The path to the snap's icon.
The file layouts in the execution environment.
The quality grade of the snap.
The architectures that the snap builds and runs on.
The minimum version of snapd and its features that the snap requires from the host.
Configures the snap's hooks.
The attributes to pass to the snap's metadata file.
The individual programs and services that the snap runs.
Declares the snap's plugs.
Declares the snap's slots.
The linter configuration settings.
The epoch associated with this version of the snap.
The system usernames the snap can use to run daemons and services.
The snap's runtime environment variables.
The list of packages to install when building a snap.
The snaps to install when building a snap.
The Ubuntu Pro (formerly Ubuntu Advantage) services to enable when building the snap.
The primary-key header for snaps signed by third parties.
Declares the components to build in conjunction with the snap.