Live data from Hacker News

FUSE-T is a kext-less implementation of FUSE for macOS that uses NFSv4

github.com

41–50 of 73 posts

Re: FUSE-T is a kext-less implementation of FUSE for macOS that uses NFSv4

#41
post #40
post #39

Earlier quoted context omitted.

9p is a network protocol. For machine local filesystems one can do better by making use of shared memory which fuse and virtio-fs do.

It's a network protocol as far as everything from Plan9 was designed to be able to operate over the network in the late 90s sense of " the network is the computer". The local file system of Plan 9 though is exposed locally through 9p

Yeah, and that's one of the reasons plan9 was dogshit and never amounted to anything. "Everything is a file" is bad enough, "Everything is a file which might be 'transparently' across a network" is insane.

Re: FUSE-T is a kext-less implementation of FUSE for macOS that uses NFSv4

#42
post #40
post #39

Earlier quoted context omitted.

9p is a network protocol. For machine local filesystems one can do better by making use of shared memory which fuse and virtio-fs do.

It's a network protocol as far as everything from Plan9 was designed to be able to operate over the network in the late 90s sense of " the network is the computer". The local file system of Plan 9 though is exposed locally through 9p

Makes me think how everything including storage is virtualised on AWS, sorta like todays Plan9 :)

Re: FUSE-T is a kext-less implementation of FUSE for macOS that uses NFSv4

#43
post #37
post #22

Earlier quoted context omitted.

9p involves a lot of round trips to create/write files. I benchmarked sshfs using fuse vs. 9p in the kernel and sshfs was significantly faster.

Perfect is the enemy of good, and 9p is great.

That's not an argument here. If starting from scratch, might as well go with the thing that works best. Ssh is not an obscure protocol. If it's faster than 9p, that's what I'll use.

Re: FUSE-T is a kext-less implementation of FUSE for macOS that uses NFSv4

#44
post #31

It’s surprising that given Apple’s war on kexts, they still haven’t come out with a proper API for implementing local user-space filesystems. It seems like this exists for remote filesystems (eg: Google Drive, Dropbox), but not for filesystems on local storage devices? This sounds like a nice workaround, though!

> […] Apple’s war on kexts Hardly a war, a rather rational decision it is – they are progressively moving kernel modules, drivers, file systems and network components into the user space. It is a foundational design principle of GNU Hurd where everything, apart from the microkernel server, runs in the user space. Minix 3 followed the same principle, and many other microkernel designs as well. It makes sense from the…

It makes sense if there's some replacement available. Less so, if there's none (unless you're Apple itself of course...)

Re: FUSE-T is a kext-less implementation of FUSE for macOS that uses NFSv4

#45

I upgraded my MBP after keeping MBP 2013 for 10 years and had to go through the shamanic dance of booting Sonoma into the safe mode, changing preferences and rebooting again to get macfuse working and I would still prefer it to dealing with NFS.

Fuse-T works as a drop-in replacement for the traditional FUSE. And pretty good I must say. You don’t notice the NFS part, it’s all handled by fuse-t itself.

Re: FUSE-T is a kext-less implementation of FUSE for macOS that uses NFSv4

#48
post #24

What prevents Apple from just integrating MacFUSE(or a reimplementation) into the their kernel, and then shipping it with the next release?

Isn’t Fuse itself LGPL? Thats perhaps one reason since copyleft licenses aren’t favourable from their view. I would really love any equivalent API though as dealing with Perforce is a pain in the butt sometimes, and what Microsoft have done with the Prrforce Virtual File system is amazing.

Macfuse itself has been closed source for a long time. Whether their EULA is compatible with the LGPL though, I don’t know. (Also, the old question: are APIs copyrightable?)

Re: FUSE-T is a kext-less implementation of FUSE for macOS that uses NFSv4

#50
post #40

Earlier quoted context omitted.

It's a network protocol as far as everything from Plan9 was designed to be able to operate over the network in the late 90s sense of " the network is the computer". The local file system of Plan 9 though is exposed locally through 9p

Yeah, and that's one of the reasons plan9 was dogshit and never amounted to anything. "Everything is a file" is bad enough, "Everything is a file which might be 'transparently' across a network" is insane.

Classic blocking I/O is the problem, not network transparency. If you don't want files to be transparent through latency/throughput boundaries, then you should also disable the VFS cache.
Post reply on HN