Snap/Snappy Ecosystem

Snappy was the predecessor to Ubuntu Core.
When we started with snaps in 2014, we started off a “headless phone” image for IoT. We could not use the already existing “click” packages (usually used on phones) on this setup, they were pretty much exactly what flatpacks are today and were tightly tied to a UI that we did not have.

We had to go a step further with the security models and system integration to run daemons, cli apps, even kernels and bootloaders and the like, so “snappy packages” were created. Initially they were read-only tarballs and managed by a python script called “snappy-daemon” …

In the course towards the Ubuntu Core 16 release (based on 16.04) all this was re-designed. A complete package manager was created (snapd), the package format was re-worked and renamed to “snap”. Ubuntu Core was re-designed to be completely created and run from snap packages (rootfs, kernel, bootloader, they all became snaps) …
Later on in the 16.04 cycle snaps also started supporting desktop apps …

So while many of us older farts have a conservative mind and stick to the “Snappy” name out of nostalgia, “Snappy” was really something completely different and just a step on the way to what snaps and Ubuntu Core are today.

5 Likes