Rewriting beet-fs

Hi, all. I have written an implementation of beetfs from the ground up using pyfuse3 after not being able to get the old beetfs to work some time ago and it is in a kind-of functioning state. I am looking for any more experienced python developers to help me fine-tune it, as it does not currently scale up to bigger library sizes. The codebase can be found here: GitHub - Abbotta4/beetfs: A rewrite of beetfs for beets

I am excited to pick up on some tips and skills developing with you all!

3 Likes

Wow! Just wanted to say this looks incredibly cool—nice work!

2 Likes

Hi @Abbott Thanks for actively developing for Beets. I was wondering what would be a use case for BeetsFS if the files are already on a harddrive that you can mount. I realize that this must be a real novice question :wink:

1 Like

For info on beetfs:

Are you aware of freezetag?

1 Like

Hi @janpeeters The use case that inspired me to try re-writing is related to archival. If I want to use the out-of-box beets to edit my tags, I have to choose between writing the tags to the files so they show up in my various media players or creating a copy of my files with the tags written to them. The first option is good for hard drive space because I only have one copy of the media files, but now the files are altered and will no longer match backup checksums. The second option is good because I can leave the original files untouched, but now my library takes up twice the hard drive space. With beetfs, you can read from the files as if they had the tags written to them through the FUSE filesystem, but the underlying files on the disk are untouched, so no more need to have two copies of each file. I hope that shines some light on my intentions :slight_smile:

freezetag looks cool! It’s nice to know I’m not the only one who wants something like this

@Abbott Thanks for your explanation. This clarifies it nicely. I’m going to try to use it and see it in practice! Best of luck with development.