Puppy versus Quirky
July 15, 2017 —
BarryK
A tester of Quirky Xerus64 8.1.94 (8.2beta), has complained about the lack of a "pupsave" file, and slow shutdown.
Someone with a Puppy background needs to be aware that Quirky has some philosophical differences from Puppy, and be prepared to embrace them.
Quirky is intended primarily to be a full installation. For other distributions, such as Ubuntu, Debian and Slackware, a full install is all they offer. Basically, a full install just means that the distro occupies an entire partition, and it has to have a Linux filesystem, such as ext4.
A full install may or may not have an initramfs. This is a mini-Linux that runs in RAM before the main distro partition is started up. Quirky does not have a initramfs. Debian for the desktop does, for the Pi doesn't.
The reasons for and against an initramfs are a topic for another time!
Quirky's full install has a fundamental difference from other distros, due to the ramdisk-based snapshot/recovery/rollback mechanism, called "easyinit".
Quirky is deployed as a live-CD ISO file, but this is not as flexible as Puppy. Puppy has several modes, known as PUPMODEs, one of which is, running from live-CD, to have a "pupsave" file mounted as a layer in the aufs layered filesystem.
What this means is that all changes get automatically and immediately saved to hard drive. The downside to this is that it is limited by the size of the pupsave file, but then, if you make it big to start with, say 5GB, then you are good to go for awhile.
Ditto for a frugal installation -- this is similar to a live-CD in that Puppy can also have a pupsave file.
Quirky live-CD and frugal installation run totally in RAM. There was a philosophical choice made not to use a pupsave file. One reason is for those people who want to be as invisible on the Internet as possible, or as secure as possible. any changes happen in RAM only. The user can choose to save the current session at any time, by clicking the "save" icon on the desktop. But a security-conscious user may choose to do that only when there is some change, such as Internet-setup, or a package installed.
Note though, Quirky can be configured to bring up the session-save window at every shutdown, so you can decide whether you want to save the current session or not.
There two limitations to consider with this totally-running-in-RAM situation:
One is the size of RAM. My laptop has 4GB of RAM, however Quirky assigns about 5.3GB working space -- this is because zram compression is used. So that's how much space you have for installing packages, caching, etc. Though, Quirky dumps all caching in /var at shutdown, to save space.
So, if you have a reasonable amount of RAM in your PC, you are pretty much OK. If you download files, you would do that to the hard drive, so as not to bulk up your session in RAM -- so you do need to have that awareness.
There is a storage icon in the tray that will start flashing if RAM space is getting low.
Two, as everything is running in RAM, when you save a session to hard drive (or external drive), the session has to be copied in its entirety to the save-file. In Quirky, the save-file is named s.sfs, and it is a squashfs filesystem. And yes, if at any time you want to see your saved files, just click on s.sfs and you can view the contents.
Saving a session is done by the 'mksquashfs' utility, and the time this takes depends on how much there is to save. It starts off just a couple of seconds. If your session grows to say 5GB, then a save may take a minute.
There are some future possibilites for keeping the session small. For a frugal installation, there is q.sfs (all of Quirky) and s.sfs. It is possible to transfer installed packages out of s.sfs, to q.sfs. It could even be done when the package is installed.
In fact, I might do this soon, as it is easy to implement. When you click on the "save" icon, Quirk could detect if you have installed packages and offer to move them permanently into q.sfs. That frees up your working space in RAM, and s.sfs stays small.
This will even work with a live-CD, not just a frugal installation.
Regarding other interesting ways of running Quirky, I am exploring those in the latest branch, Easy Linux.