-
Notifications
You must be signed in to change notification settings - Fork 18
Developers
TBD
Remember to get this package:
pip install jottalib[FUSE]
TBD
A cli friendly sync client for JottaCloud.
It will sync your directory tree with JottaCloud, just like the official client does.
Run jotta-scanner
at some interval:
python jotta-scanner <top dir of your local tree> <the mount point on jottacloud>
The top dir is just an existing directory on your system that you want to backup.
The mount point is a path on JottaCloud. It's put together from a combination of an existing device name, an existing backupdir and a folder name (that will be created if it doesn't exist). Like this: /<devicename>/<backupdir>/<foldername>
Example:
python jotta-scanner /mnt/pictures /mybox/backup/pictures
Remember to get this package:
pip install jottalib[scanner]
The basic operation on the JottaCloud servers is to make file level backups. Unlike data-level protocols like rsync
, the JottaCloud protocol does not seem to support delta encoding, so file syncing needs to happen by copying the full file content.
To determine if a file needs to be updated, Jotta Cloud Client will compare the md5 hash of the local file with the one that the JottaCloud server reports. If the hashes differ, the client will upload the file. This is akin to how the official JottaCloud client works.
There are several ways where you can adapt this tool to your setup. Let's look at how.
- Local checksum cache
- On supported file systems, the program will store the calculated md5 checksum, so that next time we don't have to calculate it again.
--no-checksum | This will skip checksums altogether, and only compare file modification time & file size with the backed up file. This will save a lot of time calculating the checksum, but comes at a price: We can't be certain to catch all cases where the file is modified, so the file might not be backed up properly. |
TBD
Remember to get this package:
pip install jottalib[monitor]
TBD
A lot of words to describe spirit and method, and a link to the docs
The project aims to supply a fully-functional QStandardItemModel
for easy pyqt4 programming.
Take a look at jottalib.qt
, where you'll find a JFSModel(QtGui.QStandardItemModel)
class and various JFSNode(QtGui.QStandardItem) classes to match the jottacloud api. Using these classes you'll hopefully be able to focus on the UI/UX and leave the plumbing to jottalib.
Note! By default, the pyqt
is an optional dependency. You have to install it explicitly:
pip install jottalib[Qt]
TBD
Want to help out? Great! You have several options to get started.
- Look for low hanging fruit in the reported issues.
- As about in the dev channel to figure out where to begin
- Flesh out details on what you miss in a new bug report
- Fork the code and add the features you miss. Then, submit a pull request and smile! You're contributing to the world!
Jump to: Documentation for users || Documentation for developers