chipsenkbeil / chipsenkbeil/distant
Support user-level file system mounting
- Dominant language
- Rust
- Stars
- 635
- Forks
- 12
- PR merge metrics
- No merged PRs in 30d
Description
This would be a neat long-term feature to support a user-level file system similar to SSHFS.
* Windows has a [Cloud files api](https://learn.microsoft.com/en-us/windows/win32/cfapi/build-a-cloud-file-sync-engine) for Windows 10 and later that seems like a reasonable path forward. [Stack overflow has a good topic on this](https://stackoverflow.com/questions/1412763/writing-a-user-mode-filesystem-for-windows).
* MacOS has a [FileProvider API]*https://developer.apple.com/documentation/fileprovider) for remote file synchronization, maybe using [icrate](https://docs.rs/icrate/latest/icrate/FileProvider/trait.NSFileProviderReplicatedExtension.html) or some other binding. [iTerm2 example in Swift](https://github.com/gnachman/iTerm2/blob/cedb1d2d1362bc29909ea48d2f5da0952187e554/iTermFileProvider/FileProviderExtension.swift#L14) and [associated info.plist](https://github.com/gnachman/iTerm2/blob/cedb1d2d1362bc29909ea48d2f5da0952187e554/iTermFileProvider/Info.plist#L14).
* [Filesystem in Userspace](https://en.wikipedia.org/wiki/Filesystem_in_Userspace) is supported on pretty much everything, but the support and requirements vary to set it up. SSHFS does this. See [fuser crate](https://github.com/cberner/fuser) for modern Rust libary.
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.