# Setup Develop Environment
### Preparation
Package names are according to Ubuntu 12.04. For other Linux distros, please find their corresponding names yourself.
- libevent-dev (2.0 or later )
- libcurl4-openssl-dev (1.0.0 or later)
- libglib2.0-dev (2.28 or later)
- uuid-dev
- intltool (0.40 or later)
- libsqlite3-dev (3.7 or later)
- libmysqlclient-dev (5.5 or later)
- libarchive-dev
- libtool
- libjansson-dev
- valac
- libfuse-dev
- python-dateutil
The following libraries need to be compiled from source.
- [libzdb](http://www.tildeslash.com/libzdb/dist/libzdb-2.12.tar.gz)
- [libevhtp](https://github.com/ellzey/libevhtp/archive/1.1.6.zip)
libzdb relies on two packages: `re2c` and `flex`.libevhtp can be build by `cmake .; make; sudo make install`. libevhtp's version should be 1.1.6 or 1.1.7.
'''Seahub''' is the web front end of Seafile. It's written in the Django framework. Seahub requires Python 2.6(2.7) installed on your server, and it needs the following python libraries:
- [Django1.5](https://www.djangoproject.com/download/1.5.2/tarball/)
- [Djblets](https://github.com/djblets/djblets/tarball/release-0.6.14)
- sqlite3
- simplejson (python-simplejson)
- PIL (aka. python imaging library, python-image) or Pillow
- chardet
### Download & Compile
Clone [libsearpc](https://github.com/haiwen/libsearpc/), [ccnet](https://github.com/haiwen/ccnet/), [seafile](https://github.com/haiwen/seafile/), [seahub](https://github.com/haiwen/seahub/) to ~/dev (or wherever you want).
Complie libsearpc with
~~~
cd ~/dev/libsearpc
./autogen.sh
./configure
make
make install
~~~
Compile ccnet with
~~~
cd ~/dev/ccnet
./autogen.sh
./configure --disable-client --enable-server # `export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig` if libsearpc is not found
make
make install
~~~
Compile seafile with
~~~
cd ~/dev/seafile
./autogen.sh
./configure --disable-client --enable-server
make
make install
~~~
### Run seafile
Run seafile with
~~~
cd ~/dev/seafile/tests/basic
./seafile.sh 2
~~~
Or you can start ccnet, seafile and fileserver manually by:
~~~
ccnet-server -c ~/dev/seafile/test/basic/conf2/ -D all -f -
seaf-server -c ~/dev/seafile/test/basic/conf2/ -d ~/dev/seafile/test/basic/conf2/seafile-data/ -f -l -
fileserver -c ~/dev/seafile/test/basic/conf2/ -d ~/dev/seafile/test/basic/conf2/seafile-data/ -f
~~~
### Prepare seahub
Go to seahub
~~~
cd ~/dev/seahub
~~~
Download django-1.5 to thirdpart. And create and modify setenv.sh from templates
~~~
cp setenv.sh.template setenv.sh
~~~
Create database
~~~
. setenv.sh
python manage.py syncdb
~~~
Create admin account (assume seafile is under ~/dev/seafile)
~~~
python tools/seahub-admin.py ~/dev/seafile/tests/basic/conf2
~~~
Start seahub
~~~
./run-seahub.sh.template
~~~
- 介紹
- 概览
- Seafile 组件
- 研发路线图
- 常见问题解答
- 修改日志
- 我要参与
- Linux 下部署 Seafile 服务器
- 部署 Seafile 服务器(使用 SQLite)
- 部署 Seafile 服务器(使用 MySQL)
- Nginx 下配置 Seahub
- Nginx 下启用 Https
- Apache 下配置 Seahub
- Apache 下启用 Https
- Seafile LDAP 配置
- 开机启动 Seafile
- 防火墙设置
- Logrotate 管理系统日志
- 使用 Memcached
- 使用 NAT
- 非根域名下部署 Seahub
- 从 SQLite 迁移至 MySQL
- 安装常见问题
- 升级
- Windows 下部署 Seafile 服务器
- 下载安装 Windows 版 Seafile 服务器
- 安装 Seafile 为 Windows 服务
- 所用端口说明
- 升级
- 从 Windows 迁移到 Linux
- 垃圾回收
- 部署 Seafile 专业版服务器
- 下载安装 Seafile 专业版服务器
- 从社区版迁移至专业版
- 升级
- Amazon S3 下安装
- OpenStackSwift 下安装
- Ceph 下安装
- 配置选项
- 文件搜索说明
- 集群部署
- 集群中启用搜索和后台服务
- NFS 下集群安装
- 常见问题解答
- 软件许可协议
- 服务器个性化配置
- ccnet.conf
- seafile.conf
- seahub_settings.py
- 发送邮件提醒
- 个性化邮件提醒
- 用户管理
- 存储容量与文件上传/下载大小限制
- 自定义 Web
- 管理员手册
- 账户管理
- 日志
- 备份与恢复
- Seafile FSCK
- Seafile GC
- WebDAV 和 FUSE 扩展
- WebDAV 扩展
- FUSE 扩展
- 安全选项
- 安全特性
- 日志和审计
- 开发文档
- 编译 Seafile
- Linux
- Windows
- Max OS X
- Server
- 开发环境
- 编程规范
- Web API
- Python API
- 数据模型
- 服务器组件
- 同步算法