package mount import ( "context" "syscall" "github.com/hanwen/go-fuse/v2/fs" "github.com/hanwen/go-fuse/v2/fuse" ) type WeedFS struct { fs.Inode } func (r *WeedFS) OnAdd(ctx context.Context) { ch := r.NewPersistentInode( ctx, &fs.MemRegularFile{ Data: []byte("file.txt"), Attr: fuse.Attr{ Mode: 0644, }, }, fs.StableAttr{Ino: 2}) r.AddChild("file.txt", ch, false) } func (r *WeedFS) Getattr(ctx context.Context, fh fs.FileHandle, out *fuse.AttrOut) syscall.Errno { out.Mode = 0755 return 0 } var _ = (fs.NodeGetattrer)((*WeedFS)(nil)) var _ = (fs.NodeOnAdder)((*WeedFS)(nil))