High performance file syncing and sharing, with also Markdown WYSIWYG editing, Wiki, file label and other knowledge management features.
Go to file
2012-10-30 10:53:07 +08:00
app Reduce ccnet dependency and add app dir. 2012-07-28 16:36:10 +08:00
common Complete quota management RPC. 2012-10-26 14:31:23 +08:00
controller fixed a bug in controller 2012-09-17 20:39:37 +08:00
daemon Change commit description for merge. 2012-10-24 21:14:59 +08:00
data disbale/enable auto sync in tray menu 2012-09-21 15:54:15 +08:00
debian Update rules for building debian package 2012-10-23 10:53:41 +08:00
desktop Make distcheck pass. 2012-10-20 15:16:34 +08:00
gui add i18n support in applet 2012-10-30 10:53:07 +08:00
httpserver [http] Fix a bug in upload file. 2012-10-12 20:30:33 +08:00
include Complete quota management RPC. 2012-10-26 14:31:23 +08:00
lib Make distcheck pass. 2012-10-20 15:16:34 +08:00
m4 add i18n support in applet 2012-10-30 10:53:07 +08:00
monitor Clean up shared repo listing API and add permission for public repo. 2012-09-26 14:51:53 +08:00
msi add i18n support in applet 2012-10-30 10:53:07 +08:00
po add i18n support in applet 2012-10-30 10:53:07 +08:00
python Complete quota management RPC. 2012-10-26 14:31:23 +08:00
server Complete quota management RPC. 2012-10-26 14:31:23 +08:00
tests Make distcheck pass. 2012-10-20 15:16:34 +08:00
tools add rpc to get file id by (commit, path) 2012-10-18 14:48:06 +08:00
web add i18n support in applet 2012-10-30 10:53:07 +08:00
.gitignore add i18n support in applet 2012-10-30 10:53:07 +08:00
autogen.sh [Mac] fix some bugs when compiling in Mac and rename ccnetweb to 2012-08-11 22:29:48 +08:00
ccnet-web.sh.in Make seafile-apple run. 2012-08-04 19:53:23 +08:00
configure.ac add i18n support in applet 2012-10-30 10:53:07 +08:00
dll2pyd.sh [win] add windows package files 2012-08-21 14:43:23 +08:00
Makefile.am add i18n support in applet 2012-10-30 10:53:07 +08:00
README.markdown Update README.markdown to describe how to run seafile. 2012-10-20 17:21:52 +08:00
setupmac.sh [mac] fix a bug and set version to 1.1 2012-10-20 10:56:47 +08:00
setupwin.sh [win] add windows package files 2012-08-21 14:43:23 +08:00

Introduction

Seafile is a distributed file synchronization client/server. A user first creates a synchronized folder on a server, then sync it with any local folder. It is distributed in the sense that a client can sync with any server, public key authentication is used, no login from client is required.

Feature Summary

Seafile can be used to build a full-fledged cloud storage platform. It has following features:

  1. Full web operations like create folders, upload files, move files.
  2. Synchronizing on demand (every client can choose what to sync)
  3. Sync with existing folders
  4. Sharing groups, users can create and join groups.
  5. Full version operation like SyncFolder history, single file history, file restore.
  6. Organizations, users can create and join organizations like github.

Seafile uses GIT's version control model, but simplified for automatic file synchronization. Every synchronized folder is like a GIT repository. It has its own unique history, which consists of a list of commits. File history, commit diff, etc., are all supported.

Multiple storage backends can be used to store metadatas and files.

Dependency

The following packages are required to build seafile:

json-glib >= 0.10.2
valac >= 0.8
libsearpc >= 1.0
libccnet >= 0.9.3
libmysqlclient-dev
libzdb >= 2.10.2
libevhtp >= 0.3.0
libevent-dev
uuid-dev
libsqlite-dev
libssl-dev

libsearpc tarball can be downloaded from this link: https://github.com/downloads/haiwen/libsearpc/libsearpc-1.0.1.tar.gz

libccnet tarball can be downloaded from this link: https://github.com/downloads/haiwen/ccnet/ccnet-1.0.0.tar.gz

libzdb tarball can be downloaded from this link: http://www.tildeslash.com/libzdb/dist/libzdb-2.10.5.tar.gz

libevhtp tarball can be downloaded from this link: https://github.com/downloads/ellzey/libevhtp/libevhtp-0.3.0.tar.gz

Other programs can be installed from apt-get or yum tools in linux.

Compile

To compile the daemon components, just

./configure; make; make install

To also compile the server components, use

./configure --enable-server

Run

Run Client:

Using following command to run seafile client: $ seafile-applet

If you get following error, please use 'sudo ldconfig -v' to update linker runtime: 'seafile-applet: error while loading shared libraries: libseafile.so.0: cannot open shared object file: No such file or directory'

$ sudo ldconfig -v # update linker rumtime

Run Server:

Please view this page to understand how to configure and run seafile server: https://github.com/haiwen/seafile/wiki/Deploy-seafile-server-on-linux