Proposing an install script to setup the following scenario:
instance 0 (BUILD DIRECTORY)
|__PFI upper_changes (w_changes=RAM2)
|__07Dummy
instance 1 (Normal Frugal install Original 07rootfs.sfs)
|__USER upper_changes
|__07rootfs.sfs
instance 2 (User Remaster install 07NewBuild.sfs symlinked)
|__07rootfs.sfs (to be deleted when instance0 PFI is squashed, or not present to boot into in the first place)
Then:
Fred's backup/restore-sys script OR a set of scripts could be written as build.sys to backup a user modified PFI upper_changes and squash the backup to /instance0/07NEW BUILD.sfs then symlink it to /instance2. This could be acheived while still running instance0.
The user could then boot into instance2 to test his build.
Leaving something like this:
instance 0 (BUILD DIRECTORY)
|__upper_changes (PFI-USERMODIFIED) (w_changes=RAM2)
|__NEWBUILD_07root.sfs (prefixed as not to be loaded)
|__07Dummy
instance 1 (Normal Frugal install Original 07rootfs.sfs)
|__USER upper_changes
|__07rootfs.sfs
instance 2 (User Remaster install 07NewBuild.sfs symlinked)
|__/instance0/NEWBUILD_07root.sfs symlinked> 07NEWBUILD.sfs (w_change=RAM2)
To restore the PFI to it's original state, a script could be run from one of the instances (not sure which) to unsquash the 07rootfs.sfs to instance0 as a new PFI_upper_changes and either rename the 1st PFI_upper_changes or delete them.
Leaving something like this:
instance 0 (BUILD DIRECTORY)
|__upper_changes (PFI Original Pristine) (w_changes=RAM2)
|__PREFIXED_upper_changes (NEWBUILD-PFI-BKP)
|__NEWBUILD_07root.sfs (prefixed as not to be loaded)
|__07Dummy
instance 1 (Normal Frugal install Original 07rootfs.sfs)
|__USER upper_changes
|__07rootfs.sfs
instance 2 (User Remaster install 07NewBuild.sfs symlinked)
|__/instance0/NEWBUILD_07root.sfs symlinked> 07NEWBUILD.sfs (w_change=RAM2)