Re-design of the original CryFS code to work as a library.
Go to file
Sebastian Messmer c6e8052d93 Merge all git repositories into one 2016-02-11 16:40:48 +01:00
.idea Switch to plain cmake, no biicode anymore. 2016-02-10 00:58:03 +01:00
debfiles When installing .deb files, it will automatically add the software source for automatic updates. When uninstalling, the software source will be removed with it. 2015-12-17 19:48:56 +01:00
src Merge all git repositories into one 2016-02-11 16:40:48 +01:00
test Merge all git repositories into one 2016-02-11 16:40:48 +01:00
vendor Merge all git repositories into one 2016-02-11 16:40:48 +01:00
.gitignore Merge all git repositories into one 2016-02-11 16:40:48 +01:00
.travis.yml Merge all git repositories into one 2016-02-11 16:40:48 +01:00
CMakeLists.txt Merge all git repositories into one 2016-02-11 16:40:48 +01:00
CMakeLists.txt~ Merge all git repositories into one 2016-02-11 16:40:48 +01:00
ChangeLog.txt Removed biicode files and adapted ChangeLog/README 2016-02-11 15:28:34 +01:00
LICENSE Update LICENCE to LGPL 2015-03-12 16:21:53 +01:00
README.md Merge all git repositories into one 2016-02-11 16:40:48 +01:00
utils.cmake Use lowercase for cmake function definitions and rename add_boost/enable_style_warnings/activate_cpp14 to target_add_boost/target_enable_style_warnings/target_activate_cpp14 2016-02-11 12:57:50 +01:00

README.md

cryfs Build Status

CryFS encrypts your files, so you can safely store them anywhere. It works well together with cloud services like Dropbox, iCloud, OneDrive and others. See https://www.cryfs.org.

This repository contains the filesystem implementation. There are submodules in the following repositores:

  • Blockstore: Store (encrypted) fixed-size blocks of data in different backends
  • Blobstore: Store resizeable blobs of data using blocks from a blockstore
  • ParallelAccessStore: Concurrency primitive for Blockstore/Blobstore
  • Fs++: Implement a file system against a platform independent interface

Install latest release

Easy install (Ubuntu and Debian)

wget -O - https://www.cryfs.org/install.sh | sudo bash

Manual install (Ubuntu)

# Add apt key
wget -O - https://www.cryfs.org/apt.key | sudo apt-key add -

# Add apt repository
sudo sh -c "echo \"deb http://apt.cryfs.org/ubuntu `lsb_release -s -c` main\" > /etc/apt/sources.list.d/cryfs.list"

# Install cryfs 
sudo apt-get update
sudo apt-get install cryfs

Manual install (Debian)

# Add apt key
wget -O - https://www.cryfs.org/apt.key | sudo apt-key add -

# Add apt repository
sudo sh -c "echo \"deb http://apt.cryfs.org/debian `lsb_release -s -c` main\" > /etc/apt/sources.list.d/cryfs.list"

# Install cryfs 
sudo apt-get update
sudo apt-get install cryfs

Building from source

Requirements

  • GCC version >= 4.8 or Clang (TODO which minimal version?)

  • CMake version >= 3.3

  • libcurl4 (including development headers)

  • Boost libraries filesystem, system, chrono, program_options, thread in version >= 1.56

  • Crypto++ >= 5.6.3 (TODO Lower minimal version possible?)

  • libFUSE >= 2.8.6 (including development headers)

    # Ubuntu
    $ sudo apt-get install libfuse-dev
    TODO Other install commands
    
    # Fedora
    TODO
    
    # Macintosh
    TODO
    

Build

  1. Clone repository

    $ git clone git@github.com:cryfs/cryfs.git cryfs
    $ cd cryfs
    
  2. Build

    $ mkdir cmake && cd cmake
    $ cmake .. -DCMAKE_BUILD_TYPE=Release -DBUILD_TESTING=off
    $ make
    
  3. Install

    $ cd bii/build/messmer_cryfs
    $ sudo make install