Here's a random thought. What if I wanted to use symlinks and white out files. So say I have an sfs that I want to modify but I don't want to extract it. I just want to mount it. Say, I have another folder that represents changes, which uses whiteout files for deletions. Now, first I create the symlinks pointing to the original sfs. Next, I apply, the whitout files to remove any symlinks and/or directories that should no longer be symlinked to the original. Finally, I create the symlinks to the folder representing the changes.
Once created the combined folder, which has all the merged symlinks can be transformed into normal files by using the command:
Code: Select all
rsync --copy-unsafe-links
If the symlinks are relative, then they could form the base of a chroot system, and this should be equivalent to using a layered file system with the the changes layer on top. As a side note, bind's can be used as an alternative to symlinking directories. However, binds might not work when used as sub-layers within a layered file system.
When I replace the unionfs mount with aufs, it mounts the RO mount point and
carries through the build environment but it does not carry through the
project build sources which were bind-mounted into a subdirectory.
https://sourceforge.net/p/aufs/mailman/ ... /28053576/
and I know that layered file systems isn't a focus of corepup but it is good to have options and know the differences between the options.
As a final note, since termux lacks the ability to mount or extract sfs files without root permissions, a prooted version of puppy running in termux could use this symlink approach to load and unload sfs files however, rather than sfs we would use a format that termux can extract without root premissions such as tar files. One member of this forum created the challenge of making a termux proot puppy. See thread:
viewtopic.php?f=33&t=1121