Warning | ||
---|---|---|
| ||
This page is a work in progress and the accuracy of the information can not be guaranteed |
Description of how to install the software needed for Lobber.
...
Anchor | ||||
---|---|---|---|---|
|
Common
All hosts are running Ubuntu (10.04) with the following extra packages and customizations.
Code Block |
---|
apt-get install git-core git-doc ssl-cert git-core python-virtualenv
|
Code Block |
---|
apt-get install postfix # local only configuration! |
...
Code Block |
---|
apt-get install apache2 libapache2-mod-wsgi libapache2-mod-shib2 libpq-dev python-dev python-twisted pip install orbited python-pip |
If you don't want to install libpq-dev and python-dev you can install psycopg2 with apt and later symlink it to your virtual python environment.
Code Block |
---|
ln -s /usr/lib/python2.6/dist-packages/psycopg2 /path/to/lobber_env/lib/python2.6/site-packages
ln -s /usr/lib/python2.6/dist-packages/mx /path/to/lobber_env/lib/python2.6/site-packages
ln -s /usr/lib/python2.6/dist-packages/psycopg2-2.0.13.egg-info /path/to/lobber_env/lib/python2.6/site-packages
|
Orbited can not be installed in the lobber python environment because it requires python-twisted.
Code Block |
---|
pip install orbited |
You might need these:
Code Block |
---|
python-egenix-mxdatetime python-egenix-mxtools python-pycurl python-openssl
|
Set up a virtual python environment (virtualenv) and activate it.
...
Code Block |
---|
pip install django django-tagging django-form-utils stomp.py psycopg2 orbited |
You might need these if you are setting up a development sandbox:
Code Block |
---|
pip install uuid django-evolution django-extensions werkzeug django-debug-toolbar
|
Get Lobber from git.nordu.net and check out the latest stable version.
Code Block |
---|
git clone git@gitgit://git.nordu.net:/lobber.git cd lobber git checkout bud-light |
...
Code Block | ||
---|---|---|
| ||
BASE_DIR = '/path/to/lobber' APP_ADDR = 'host_ip or FQDN' BASE_UI_URL = 'https://' + APP_ADDR TRACKER_ADDR = 'host_ip or FQDN' ANNOUNCE_BASE_URL = 'https://' + TRACKER_ADDR ADMINS = ( ('Your name', 'your@email.net'), DATABASE_ENGINE = 'postgresql_psycopg2' DATABASE_NAME = 'lobber' DATABASE_USER = 'lobber' DATABASE_PASSWORD = 'secret_password' DATABASE_HOST = 'database host' DATABASE_PORT = 'database port' DROPBOX_DIR = '/path/to/lobber/dropbox' # Make this unique, and don't share it with anybody. SECRET_KEY = 'secret' INSTALLED_APPS = ( 'django.contrib.auth', 'django.contrib.contenttypes', # For the Permission model. 'django.contrib.sessions', 'django.contrib.sites', 'django.contrib.admin', 'tagging', 'lobber.extensions', 'lobber.userprofile', 'lobber.share', 'lobber.links', 'lobber.tracker', 'lobber.auth' ) |
...
Code Block | ||
---|---|---|
| ||
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.postgresql_psycopg2', 'NAME': 'lobber', 'USER': 'lobber', 'PASSWORD': 'secret', 'HOST': 'database_server', 'PORT': 'database_port' } } |
...
Code Block | ||
---|---|---|
| ||
Alias /admin-media /path/to/lobber/admin-media Alias /site-media /path/to/lobber/site-media | ||
Info | ||
title | Missing documentation
Documentation on how to set up Apache to handle https
...
can be found here:
...
...
...
Usual problems:
- /path/to/lobber/logs/web.log is not writable by www-data (apache user).
- /path/to/lobber/torrents/ is not writable by www-data (apache user).
- /path/to/lobber/dropbox/ is not writable by www-data (apache user).
- /path/to/lobber/db/ (if you are using sqlite) is not writable by www-data (apache user).
...
Anchor | ||||
---|---|---|---|---|
|
Storage node
See Running a storage node (bud light)
Note that the web application and tracker server needs a storage node nowadays – that's how we do file upload.
...
Look at the official Django database documentation.
Anchor | ||||
---|---|---|---|---|
|
Setting up your own development sandbox
- apt-get install python-virtualenv
- virtualenv /mina/envs/lobber
- . /mina/envs/lobber/bin/activate
- pip install django django-extensions django-tagging orbited uuid django-evolution stomp.py werkzeug psycopg2
- git clone git@git.nordu.net:lobber.git (alt. git pull)
- cd lobber
- git checkout <branch>
- mkdir db
- mkdir logs
- cd src
- ./dev-django-admin.sh syncdb
- ln -s /mina/envs/lobber env
- ln -s env/lib/python2.6/site-packages/django/contrib/admin/media admin-media
- Edit paths in settings.py
- ./dev-django-admin.sh runserver_plus