FUSE file system for sync.com
This software is not supported by sync.com and is still very experimental. I will not be responsible for any data loss other issues.
Install git
apt install git
First install n
for using the stable NodeJS (right now stable is 17.2.0) see https://github.com/tj/n#installation and select the stable version
sudo n stable
Clone the repository
git clone https://github.com/k-aito/node-sync-dot-com-fuse.git
cd ./node-sync-dot-com-fuse
Install the needed NPM modules
npm install
Create ./mnt folder and copy .env.example, change the credentials and run the application.
mkdir ./mnt/
cp ./.env.example ./.env
# Edit .env
node ./SyncAPI.js
- Right now I use a cache file (you must have enough free space for the file you will read), so it means the read must be sequential and not blocking.
- VLC is playing with release the file and have a weird behavior, so it fails.
- Reading picture is similar because they read the end of file at a time.
- When the file descriptor is released, I remove the cache file. If there is access later like on VLC it fails too.
- There is no throttling right now, so sometimes there are NGINX issues. I think it's related because I do to many requests to fast.
- It can be impossible to browse when reading if you use too much "threads".
- Linux (Debian Buster)
- Reading video file with MPV
- There is like a read ahead at start, but it doesn't care when reading further
- Copying file
- Reading video file with MPV
- Implement upload
- Implement move
- Implement delete
- Implement throttling for download
- Find a way to download the needed chunk instead of sequentially
- Find a way to remove the cache file
All the codes related to sync.com (login, decrypt... are from sync.com website) and is available with the debugger. Big thanks to take the time to reading my questions and answer them.