Snap documentation¶
Snaps are self-contained application packages that work across different Linux distributions on many different platforms, from embedded devices and desktops, to servers and the cloud.
The snap daemon, snapd, handles installation, confinement, and updates, allowing developers to focus on their applications while users get a consistent experience across platforms.
Snap packages and snapd solve the problem of inconsistent application packaging and deployment by providing a unified system that works the same way regardless of the underlying Linux distribution or hardware.
Snaps are useful for application developers seeking a universal packaging solution, system administrators managing diverse Linux environments, IoT and embedded device makers, and organizations where security and consistent deployments are priorities.
For guidance on building snaps, see the Snapcraft build-tool documentation.
In this documentation¶
First steps¶
Get snap running and take a tour of its core features before diving deeper.
Install snapd: Install the snap daemon • Distribution support
Explore snap: Get started with snap’s main features on a single page
Managing snaps¶
Install, configure, and maintain snaps day-to-day. Control updates, interfaces, services, and data.
Configuration: Configure snaps • Apps and aliases • Set system options • Configure snaps with confdb
Updates: Manage updates • Manage validation sets
Services and resources: Control services • Use quota resources • Create data snapshots • Disk space awareness • Data locations • Work with components
Troubleshooting: Fix common issues
Security and confinement¶
Understand how snaps use Linux security technologies to isolate applications and protect your system.
Confinement: Snap confinement • Classic confinement • Security policies
Interfaces: All about interfaces • Interface auto-connection • Interface hooks • Super-privileged interfaces • Connect interfaces • Interface reference
Verification: Assertions • Snapd release process
Snap development¶
For guidance on building snaps, see the Snapcraft build-tool documentation.
Extend snap functionality using the REST API, internal tooling, and in-development features.
APIs and tools: REST API • Use snapctl • Environment variables • Supported snap hooks • API authentication and authorization
Publishing: