I think that something like Deep Freeze is really useful so why not set it as a “native” function under Haiku ?
Deep Freeze under Windows allow to “freeze” a partition. “Freezed” mode is not a simple read-only mode because it allow changes. But all the changes made on that partition will disappear at next reboot. Deep Freeze replace the NTFS driver with another one that forgot any changes at each computer reboot.
I suggest something like a new flag as on Gparted :
I would be interested in some kind of front-end to expose this functionality to the user too.
Very useful on the system drive to make a “non-breakable” OS for semi-embedded use. Also very good for anti-forensics depending on where the written sectors are stored, no worries about applications (like the browser) leaving traces of all those lovely places you’ve been.
One method I have used before for the browser is:
Setup a RAM disk, one that doesn’t save its contents between reboots.
Configure the browser the way you want and then take a copy of its settings folder and put it elsewhere.
Put a line in the user bootscript to copy the backed-up settings into the RAM disk each boot.
Make a link in the /boot/home/config/settings/ folder pointing to the browser’s settings folder in the RAM disk.
Other related features I would like to see, which may or may not be easy to implement:
Filesystem encryption
Encryption with a randomly-chosen key each boot, that’s only ever stored in RAM. The filesystem is initialized at each boot.
Useful for a “scratch partition” which gets destroyed each time you reboot (key is lost, data is completely gone without a trace)
Some way of putting the swap file on the above mentioned scratch partition, so that whatever got swapped out to disk, is gone without a trace whenever the machine is shut down. Hopefully the runtime encryption key is stored in locked memory!
Some of this stuff is best provided as a third-party application, providing the necessary OS hooks are present.