forked from tierney/lockbox
-
Notifications
You must be signed in to change notification settings - Fork 0
/
README
95 lines (56 loc) · 1.97 KB
/
README
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
README for Lockbox.
Thrift Dependency
=================
thrift (for serialization and non-blocking server installation)
YOU NEED TO INSTALL libevent DEVELOPMENT LIBRARIES BEFORE BUILDING thrift. See
the OS-specific package management sections below.
# Download from the list provided here:
# http://www.apache.org/dyn/closer.cgi?path=/thrift/0.9.0/thrift-0.9.0.tar.gz
wget http://mirrors.ibiblio.org/apache/thrift/0.9.0/thrift-0.9.0.tar.gz
# Make sure the non-blocking server option in configured to be built, if you
# want to run a server.
./configure --with-libevent
make
make install
# Verify the nonblocking installation worked.
pkg-config --libs thrift-nb
Ubuntu
======
sudo apt-get install libboost-dev libboost-test-dev \
libboost-program-options-dev libevent-dev automake \
libtool flex bison pkg-config build-essential libssl-dev libnss3-dev \
libgtk2.0-dev libglib2.0-dev \
libgflags-dev \
autoconf libsnappy-dev
Mac OS X
========
brew install glib gtk zlib nss
./bootstrap
PKG_CONFIG_PATH=/opt/X11/lib/pkgconfig \
ZLIB_CFLAGS=/usr/local/Cellar/lzlib/1.3/include \
ZLIB_LIBS=/usr/local/Cellar/lzlib/1.3/lib \
NSS_LIBS=/usr/local/opt/nss/lib NSS_CFLAGS=/usr/local/opt/nss/include \
./configure
Running a Server
================
o If you plan to manage many users' data, then your server will need the
ability to have many files open concurrently (I'm not doing anything smart
about this for the time being).
ulimit -Sn unlimited
Major components
o Zipping.
o Remote interface for serialization.
o thrift
o Server for serialization.
o thrift
o Encryption
o OpenSSL
o Delta encoding. Rsync values.
o courgette
o Diffing modules.
o courgette
o Fork consistency.
o thrift / hashes from OpenSSL
o File watching
o Use python watchdog in order to generate events.
o Chromium interface may work on Linux...