Installation
This document assumes you are familiar with Python and Django. It should outline the steps necessary for you to follow the Introductory Tutorial.
Requirements
- Python 2.5 (or a higher release of 2.x).
- Django 1.3.1 or 1.4.
- South 0.7.2 or higher
- PIL 1.1.6 or higher
- django-classy-tags 0.3.4.1 or higher
- django-mptt 0.5.2 (strict due to API compatibility issues)
- django-sekizai 0.6.1 or higher
- html5lib 0.90 or higher
- An installed and working instance of one of the databases listed in the Databases section.
Note
When installing the django CMS using pip, Django, django-mptt django-classy-tags, django-sekizai, south and html5lib will be installed automatically.
Recommended
- django-filer with its django CMS plugins, file and image management application to use instead of some core plugins
- django-reversion 1.6, to support versions of your content
On Ubuntu
Warning
The instructions here install certain packages, such as PIL, Django, South and django CMS globally, which is not recommended. We recommend you use virtualenv instead. If you choose to do so, install Django, django CMS and South inside a virtualenv.
If you’re using Ubuntu (tested with 10.10), the following should get you started:
sudo aptitude install python2.6 python-setuptools python-imaging
sudo easy_install pip
sudo pip install Django==1.4 django-cms south
Additionally, you need the Python driver for your selected database:
sudo aptitude python-psycopg2
or
sudo aptitude install python-mysql
This will install PIL and your database’s driver globally.
You have now everything that is needed for you to follow the Introductory Tutorial.
On Mac OSX
TODO (Should setup everything up to but not including “pip install django-cms” like the above)
On Microsoft Windows
TODO.
Databases
We recommend using PostgreSQL or MySQL with django CMS. Installing and maintaining database systems is outside the scope of this documentation, but is very well documented on the systems’ respective websites.
To use django CMS efficiently, we recommend:
- Creating a separate set of credentials for django CMS.
- Creating a separate database for django CMS to use.