[Toybox] gzip --rsyncable

Rob Landley rob at landley.net
Mon Jan 22 21:24:34 PST 2018


On 01/21/2018 09:26 PM, Rob Landley wrote:
> On 01/21/2018 08:49 PM, isabella parakiss wrote:
>> https://linux.die.net/man/1/fuse-zip
> 
> I mean a real filesystem.

Sorry, I should clarify.

I took a look at the package you linked to and it's LGPLv3, meaning I
haven't worked for anybody willing to ship that in a system for a full
decade now.

Back in the day I encountered enough systems hanging under memory
pressure because a fuse driver needed to allocate memory to evict pages
via fuse that I just stopped using it. Maybe that's less of an issue now?

Given that squashfs already exists, a package with more dependencies (at
least the fuse subsystem, libfuse at build time, and the daemon and
mount plumbing at runtime) isn't worth it: the convenience of being able
to use a more common archive format is overridden by the convenience of
squashfs being in the kernel source so you can statically link it in and
it's just there (or squashfs.ko being one file).

The can of worms that is writeable zip files... while that's technically
possible the "be patient" warning in the man page seems both understated
and incomplete. (What, is there journaling? Losing power during the
write does what? How long does fsync() take, is it going to lie or just
take a potentially really long time rewriting half the filesystem
because you deleted a file in the middle? Or is it leaving the old
file's space unused like conventional zip -u did last time I looked at
its implementation (admittedly a while ago)? Current zip has -g to
modify in place (the default now seems to be to copy the entire file,
which raises the question of what happens if the containing filesystem
runs out of space and that's before you even ask the fun questions
starting with 'if your backing store is flash and your erase block
granulity...')

tl;dr "I am not comfortable with that solution on a number of levels."

(That's why I have smb and nfs mount helpers on the todo/roadmap, but
don't have a fuse mount helper there. Doesn't mean I'd necessarily say
no if somebody did the work and submitted a patch, just that I
personally wouldn't be testing it.)

Rob


More information about the Toybox mailing list