mirror of
https://github.com/abraunegg/onedrive
synced 2026-03-14 14:35:46 +01:00
No description
- D 95.5%
- Shell 2.3%
- Roff 0.9%
- M4 0.7%
- Makefile 0.4%
- Other 0.2%
| src | ||
| .gitignore | ||
| config | ||
| LICENSE | ||
| Makefile | ||
| onedrive.service | ||
| README.md | ||
OneDrive Free Client
Features:
- State caching
- Real-Time file monitoring with Inotify
- Resumable uploads
What's missing:
- OneDrive for business is not supported
- While local changes are uploaded right away, remote changes are delayed.
- No GUI
Dependencies
Dependencies: Ubuntu
sudo apt-get install libcurl-dev
sudo apt-get install libsqlite3-dev
sudo wget http://master.dl.sourceforge.net/project/d-apt/files/d-apt.list -O /etc/apt/sources.list.d/d-apt.list
wget -qO - http://dlang.org/d-keyring.gpg | sudo apt-key add -
sudo apt-get update && sudo apt-get install dmd-bin
Installation
git clone git@github.com:skilion/onedrive.git
cd onedrive
make
sudo make install
Configuration:
You should copy the default config file into your home directory before making changes:
mkdir -p ~/.config/onedrive
cp ./config ~/.config/onedrive/config
Available options:
sync_dir: directory where the files will be syncedskip_file: any files or directories that match this pattern will be skipped during sync
Pattern are case insensitive.
* and ? wildcards characters are supported.
Use | to separate multiple patterns.
Selective sync
Selective sync allows you to sync only specific files and directories.
To enable selective sync create a file named sync_list in ~/.config/onedrive.
Each line represents a path to a file or directory relative from your sync_dir.
$ cat ~/.config/onedrive/sync_list
Backup
Documents/report.odt
Work/ProjectX
notes.txt
First run
The first time you run the program you will be asked to sign in. The procedure requires a web browser.
Service
If you want to sync your files automatically, enable and start the systemd service:
systemctl --user enable onedrive
systemctl --user start onedrive
To see the logs run:
journalctl --user-unit onedrive -f
Usage:
onedrive [OPTION]...
-m --monitor Keep monitoring for local and remote changes.
--resync Forget the last saved state, perform a full sync.
--logout Logout the current user.
--confdir Set the directory to use to store the configuration files.
-v --verbose Print more details, useful for debugging.
-h --help This help information.
Notes:
- After changing
skip_filein your configs or the sync list, you must executeonedrive --resync - Windows naming conventions apply
- Use
make debugto generate an executable for debugging