# Pootle requirements

## Hardware Requirements

Your Pootle installation will need to be flexible enough to handle the translation load. The recommended hardware depends highly on the performance you expect, the number of users you want to support, and the number and size of the files you want to host.

Whatever hardware you have, you will still benefit from performance improvements if you can optimize your system.

Your disk space should always be enough to store your files and your Pootle database, with some extra space available.

## System Requirements

To run Pootle you need a computer running:

- Linux
- Mac OS X

Or, any other Unix-like system.

Note

Pootle will not run on Windows since it uses RQ, whose workers cannot run on Windows.

Some developers do develop on Windows so these problems can be worked around for some of the development tasks.

Pootle should be able to run on any system that implements `fork()`.

## Python version

Python 2.7 is required, 3.x is not yet supported.

## Installing system packages

You will need a C compiler and the development libraries for Python and XML to be available on your system before you will be able to install your virtual environment. You will also need pip.

Eg. on a Debian-based system:

    $ sudo apt-get install build-essential libxml2-dev libxslt-dev python-dev python-pip zlib1g-dev

You will also need to access to a working Redis server to provide caching to Pootle and for managing asynchronous workers.

To install and run Redis on a Debian-based system:

    $ sudo apt-get install redis-server
    $ sudo service redis-server start

Note

Pootle requires a minimum Redis server version of 2.8.4. If you are using Debian Wheezy you will need to install redis-server from backports.

## Database requirements

Make sure to install the requirements for your chosen database, either MySQL or PostgreSQL.

## System requirements for customising static resources

In order to customise static resources such as CSS or JavaScript, you must install Node.js and npm.

On a Debian-based system you can install these with:

    $ sudo apt-get install nodejs npm

On Debian Jessie and perhaps other distributions you also need to link the `nodejs` command to `node`:

    $ sudo update-alternatives --install /usr/bin/node node /usr/bin/nodejs 99