Snaps were born to ease the pain points of embedded Linux developers looking for a secure environment and configuration to run their applications. Snaps are a new application packaging format that uses container technology. Snaps work anywhere, including all major Linux distributions, and are suitable for any class of devices, from desktop to cloud and IoT. As cross-platform, containerised software packages, snaps bundle applications with their dependencies.
Compared to traditional Linux software distribution and containerised packages, snaps are easy to create, build and deploy. Snap packaging was built from the ground up with security in mind, making them safer to run: embedded Linux development with snaps is secured because snaps undergo a rigorous review process before being published. By confining applications, the address book of a home appliance will not access the camera unless permitted, and the game on an embedded device will not reach into a bitcoin wallet and steal any cryptocurrencies that may be left.
Furthermore, Snaps enable every device to be software-defined. Every embedded Linux device running snaps is app-enabled: its main function is an app, and developers can ship other apps next to that primary function.