Announcing mtp-mount: pure-Rust FUSE mount for MTP devices

tl;dr: I created mtp-mount, it’s out on crates.io, check it out!

The same in more words:

I recently created mtp-rs, a pure-Rust MTP implementation that’s on average 4x faster than libmtp, and 1000x more stable in speed. I wrote more about this in my earlier blog post Announcing mtp-rs: pure-Rust MTP library, up to 4x faster than libmtp, check it out for benchmarks and details.

I use mtp-rs in my pure-Rust file manager Cmdr, but I was on the lookout for new ways to exercise the lib and make use of it. It came up in an mtp-rs issue comment that FUSE or some other mount possibility for MTP devices would be nice.

So I wrote this lib, tested it thoroughly with automated tests and virtual MTP devices, and it works nicely. Unfortunately, I couldn’t make FUSE work on my Mac because I wasn’t comfortable enabling a kernel extension through Recovery Mode. Other community members and I also thoroughly tested mtp-rs with real devices, and mtp-mount is only a thin layer over it, so I feel confident that it’ll work end to end. I’d be glad to hear about your testing results! The sooner we get confirmation that this works with real devices, the sooner we can make it 1.0.

I’m happy that the lib has a second consumer this way, and one that might come in handy to others, too. Enjoy!

Comments