Live data from Hacker News

The File Filesystem (2021)

mgree.github.io

101–105 of 105 posts

Re: The File Filesystem (2021)

#101
post #71

Oh this is cool! I recently wrapped libfuse in Nim and after porting the 'hello' filesystem example I made one which is more or less exactly this. However my version you pipe data and have to provide a mountpoint, then when it's done it writes the result over stdout. That means you can inline it in a pipe chain but also that you have to make sure to grab the output. At the moment I'm exploring other stuff which could…

Would you mind sharing the Nim code? I've been interested in working with FUSE for a while, and use Nim for a few projects. No worries if not, I'm just curious!

JNRowe beat me to it! Feel free to browse the rest of my GitHub, its mostly Nim code. And if you want to talk Nim or Fuse you can join the Nim Discord server (or the Matrix or IRC bridge) or post on the Nim forum.

Re: The File Filesystem (2021)

#102
post #24

Earlier quoted context omitted.

Honest question: How is this useful? I don’t see any use-case where this would come in handy.

We used this in Gitlab CI. Unfortunately, the only way they deal with artifacts is by putting them in Zip files. Cache between builds would thus be stored as a Zip file. However, fully extracting it before each build would sometimes take as much, if not more time than to just build fresh. Mounting a Zip file as a filesystem allows extracting entries on-demand, at the time a file access would've been made. This was a…

tar is what you're looking for, no?

Re: The File Filesystem (2021)

#104

Earlier quoted context omitted.

Would be nice to have something that integrates with 7z - it supports a lot of weird archive types, including "weird" ones I care about (for example PE files, better known as ".exe files").

Or zstd. I have some dd blobs of partitions, the blobs are zstandard-compressed, would like to mount them.

Ratarmount also works for that. However, it, and any other tool I know of, works only well if it was compressed with pzstd because of a limitation of the zstd format. It needs separate zstd frames for fast seeking.

Re: The File Filesystem (2021)

#105

Earlier quoted context omitted.

We used this in Gitlab CI. Unfortunately, the only way they deal with artifacts is by putting them in Zip files. Cache between builds would thus be stored as a Zip file. However, fully extracting it before each build would sometimes take as much, if not more time than to just build fresh. Mounting a Zip file as a filesystem allows extracting entries on-demand, at the time a file access would've been made. This was a…

tar is what you're looking for, no?

It was a while ago, and I haven't used Gitlab in a few years. Maybe they've added TAR as an option since, but Zip was the only option at that time.
Post reply on HN