thinkmoore / racket-fuse

A Racket library for implementing FUSE filesystems
Other
5 stars 1 forks source link

Remove dependency on libfuse #1

Open thinkmoore opened 7 years ago

thinkmoore commented 7 years ago

Currently, libfuse is only used to invoke mount_compat which shells out to fusermount to mount a FUSE filesystem. At the very least, the library can shell out itself, if not implement the necessary functionality from fusermount.

jakeisnt commented 3 years ago

Hey, I'd like to use this library but am having some trouble with the libfuse dependency. Do you have any interest in fixing this issue? If not, do you have any resources I could look into for completing this myself? Thanks for your work on this library!

thinkmoore commented 3 years ago

Unfortunately I don't have time right now to work on this project. Trying to dredge things up from memory, you'll want to look at the FUSE documentation for the API call fuse_mount. The fuse_mount_compat25 symbol that the library loads looks pretty specific to the version of libfuse on MacOS at the time I was working on the library. The slight trick is that in C you can just import fuse.h and call fuse_mount, which might be a macro. Since this library is using FFI to load the shared library, it needed to reference the specific C function that actually implements the mount functionality---the name and exact API of this function may have changed.

If you dig a little and have a question or two, I'll do my best to help. :)