Prerequisites

AiiDA is designed to run on Unix operating systems and requires the following software:

Depending on your set up, there are a few optional dependencies:

  • virtualenv (Software to create a virtual python environment to install AiiDA in)
  • graphviz (For plotting AiiDA provenance graphs)
  • git (Version control system used for AiiDA development)

Supported operating systems

AiiDA has been tested on the following platforms:

  • Ubuntu 14.04, 16.04
  • Mac OS X

We expect AiiDA to also run on:

  • Older and newer Ubuntu versions
  • Other Linux distributions
  • Windows subsystem for Linux

Below, we provide installation instructions for a number of operating systems.

Ubuntu

To install the prerequisites on Ubuntu and any other Debian derived distribution, you can use the apt package manager. The following will install the basic python requirements and the git source control manager:

sudo apt-get install git python2.7-dev python-pip virtualenv

To install the requirements for the postgres database run the following:

sudo apt-get install postgresql postgresql-server-dev-all postgresql-client

For a more detailed description of database requirements and usage see the database section.

Mac OS X (homebrew)

For Mac OS we recommend using the Homebrew package manager. If you have not installed Homebrew yet, you can do so with the following command:

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

After you have installed Homebrew, you can install the basic requirements as follows:

brew install git python postgresql

To start the postgres database server, execute:

pg_ctl -D /usr/local/var/postgres start

For a more detailed description of database requirements and usage see the database section.

Mac OS X (MacPorts)

Another package manager for MacOS is macports.

sudo port install git python postgresql96 postgresql96-server

To start the postgres database server, run:

sudo su postgres
pg_ctl -D /opt/local/var/db/postgresql96/defaultdb start

Gentoo Linux

Windows Subsystem for Linux (Ubuntu)

The guide for Ubuntu above can be followed but there are a few things to note:

  1. Linux services under WSL are not started automatically. To start the PostgreSQL service, type the command below in the terminal:

    sudo service postgresql start
    
  2. There is a known issue in WSL Ubuntu 18.04 where the timezone is not configured correctly out-of-the-box, which may cause problem for the database. The following command can be used to re-configure the time zone:

    dpkg-reconfigure tzdata
    
  3. The file open limit may need to be raised using sudo ulimit -n 2048 (default is 1024), when running tests.