I quickly skimmed over it. Is it something similar to guix and nix?
I work for Canonical, but not on snappy, and I’m not fully familiar with guix and nix, so I won’t attempt a real compare and contrast. The systems do have some shared goals, and each does require some amount of work to convert existing packaged apps.
That said, I dug around for my own curiosity, and will share it here:
As mentioned in the post, Snappy has roots in the Phone app work, and so if you’re familiar with iOS apps (or Ubuntu Touch apps), you could think of it like that, but for cloud servers.
For snappy, you dump everything you need* in a directory and write a metadata file that more or less tells it where the binaries are and what ports it needs. Then you run snappy to make a package out of your directory, and that’s that.
There are some trivial example packages here, to get a feel for what it looks like.
* there are frameworks, which are explained here like this:
“The difference between them has to do with security and isolation — frameworks extend the base system, so they have to have custom crafted security profiles. Apps are isolated from one another by default, they have limited permissions to poke around on the system, which means they don’t need any manual review, they can go straight from the vendor to you, directly.”