syncrypt / client

Syncrypt command line client and sync daemon
https://syncrypt.space
GNU General Public License v3.0
11 stars 1 forks source link
backup cloud-storage command-line encryption file-sharing syncrypt syncrypt-client

Syncrypt client

Build status Build status PyPI version PyPI status

Syncrypt is a fully encrypted file storage service for groups and private backups. This is the client that you can use to store and retrieve files. The client will also do all encryption.

The source code for this client is released under the GNU General Public License Version 3. For more information have a look at the LICENSE file in this directory. Additional information on the GNU GPLv3 can be found here: http://www.gnu.org/licenses/quick-guide-gplv3.html

Installation

Option 1: Install from PyPI (requires Python 3.6+)

pip install syncrypt

This requires the snappy-c library in order to build the python-snappy dependency. In Ubuntu, you can install it with the APT package libsnappy-dev. In OS X, you can install it with brew install snappy.

Option 2: Download one of the packages on our releases page.

Option 3: Install latest development version from source:

pip install git+https://github.com/syncrypt/client

Let's get started

The syncrypt executable is the command line interface for Syncrypt. You can login to syncrypt so that you won't have to enter your login for every command you issue.

syncrypt login

This will ask for the email and the password of your Syncrypt account. If you do not have an account yet, please sign up for our closed alpha mailing list and we will send you an invite.

You can now initialize an arbitary directory as a vault. Simply change into this directory using cd and call:

syncrypt init

After you've set up the directory, you can push all of its contents by typing:

syncrypt push

For an extensive description of syncrypt commands, please see the client manual.

Further Information

Tests

Install test requirements:

bin/pip install -e '.[test]'

Run all tests:

bin/py.test

Currently there is no public syncrypt instance that you can run your test against, so you can limit the tests to those not requiring a test server instance:

bin/py.test -m 'not requires_server'

Develop

Setup in virtualenv for development:

virtualenv .
bin/pip install -e '.[dev]'

Deploy

Make Syncrypt distribution package for the current platform:

bin/pip install -e '.[dist]'
bin/python setup.py dist