FS is an abstraction, a common interface for file systems. It allows me to provide access to an archive (zip, tar) or database or network (S3, HTTP ...) backed file system. Thus exporting FS as a FUSE filesystem allows all those FS implementations to be accessed as a real file system, eliminating the double implementation (say, if you implement a HTTP backed FS, you can use it as a FUSE fs, don't have to reimplement it with a fuse lib).
You're right, exporting a file system backed FS as FUSE is moot. But exporting the embed.FS or database backed FS as FUSE allows ordinary programs, user, scripts to access those files. FS being read-only is a bless and a curse at the same time: simplifies implementation, but deflates the usefulness. Roland Müller a következőt írta (2023. június 29., csütörtök, 9:00:18 UTC+2): > Hello, > I am struggling to understand the purpose of extension. > FS is an interface to access file systems from go code. Is your new > extension acting as a handler and allows to expose any Go FS to be mounted > and acessed at operating system level? > > > https://en.m.wikipedia.org/wiki/Filesystem_in_Userspace#/media/File%3AFUSE_structure.svg > > Br/Üdvözlettel > Roland > > Am Samstag, 24. Juni 2023 schrieb Tamás Gulácsi <tgula...@gmail.com>: > > Ok, I've put some hours into it, and implemented it: > https://pkg.go.dev/github.com/tgulacsi/g...@v0.25.0/fsfuse > <https://pkg.go.dev/github.com/tgulacsi/go@v0.25.0/fsfuse> > > It uses github.com/jacobsa/fuse to export a mountable io/fs.FS. > > I've only tested with os.DirFS, with that, it works as expected. > > I'd love to get some feedback - if anynone interested, I can export it > to some more direct/slimmer repo. > > Tanás Gulácsi > > > > Tamás Gulácsi a következőt írta (2023. június 23., péntek, 8:08:32 > UTC+2): > >> > >> Hi, > >> Does anyone know an existing solution for exporting an fs.FS as a FUSE > filesystem? > >> As fs.FS is standard now, this would open several new possibilities, > >> as a lot of interesting fs.FS implementations exist (zip, tar, DB, > embedded, union ....), > >> and this one little glue code could export them all! > >> Thanks in advance, > >> Tamás > > > > -- > > You received this message because you are subscribed to the Google > Groups "golang-nuts" group. > > To unsubscribe from this group and stop receiving emails from it, send > an email to golang-nuts...@googlegroups.com. > > To view this discussion on the web visit > https://groups.google.com/d/msgid/golang-nuts/f8edf7e1-a864-4ab0-b7e6-773246485da1n%40googlegroups.com > . > > -- You received this message because you are subscribed to the Google Groups "golang-nuts" group. To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/golang-nuts/8f8b61ab-9975-4bb3-8f09-0a5c2f3a07adn%40googlegroups.com.