Crafting

This section contains guides for putting together your snap and managing its contents.

Basic configuration

The essential elements in a snap are the package information, base, and platforms.

Software dependencies

Much of the work of making a snap is in determining and adding its dependencies.

User settings and data

You can make snap settings available to users, and control its data retention on the user’s machine between versions.

Confinement

If your snap needs to make its files available to the host, or it needs less restrictive permissions with the host, you can extend access with layouts and the confinement level.

Parts processing

If you need to manually manipulate a part’s files and data during processing, you can override the lifecycle steps.

Builds

While crafting, you’ll typically build on your local host. To speed up local builds, you can cache packages downloaded with APT. When your snap matures or becomes cross-platform, you can build at scale on Launchpad.