Main > Reference Manual > Download and install > Configuring the user interface

The previous sections discussed the installation and compilation of the core planning engine.
In this section the configuration of the user interface is described. We'll only cover the recommended setup for a production environment: using Apache web server and mod_wsgi. See this page for alternative deployment configurations.

The Django web application framework

  • Install Python
    FrePPLe works with Python versions 2.5 to 2.7. Python 3.x is not supported.
  • Install Django
    Since frePPle requires some patches to the standard Django package, it is recommended NOT to install it as a binary package that comes with your Linux distribution. Instead download the source from https://www.djangoproject.com/download/ and expand it in a local folder.
  • Apply patches to Django
    Update you django directory with the following command:
    patch -p0 < frepple_directory/contrib/django/django.patch

The database

You know how do this, isn't it? If not, search Google.

  • Install the database
    It's recommended to set up your database with full support for UTF-8.
  • Install the Python database drivers
    You'll need cx_oracle for an Oracle database, psycopg2 for PostgreSQL or mysql-python for MySQL.
  • Create the database user(s)

The web server

See https://docs.djangoproject.com/en/dev/howto/deployment/modwsgi/ for a detailed explanation of Django deployment using Apache and mod_wsgi.
For 99% of frePPLe implementations, the Apache web server for the Django application should also be used to serve the static pages - no need to set up a seperate instance or a different web server.

  • Install the Apache web server
  • Install the mod_wsgi Apache module
    It can be downloaded from http://code.google.com/p/modwsgi/. On most Linux systems it'll also be available as a binary package.
  • Configure the Apache web server
    See the sample httpd.conf and freppledb.wsgi configuration files in the folder contrib/django.
    Both files require updating for your particular setup: folders names vary, port numbers can be different, security requirements may vary, settings may depend on the expected number of users, etc.

The frePPLe web application

  • Update the settings.py configuration file
    Update the database connection parameters, switch off debugging, specify the administrator email, ...
  • Create the database schema
    In the directory <frepple>/contrib/django/freppledb issue the following command. It will create all objects in the database schema.
    ./manage.py syncdb