To ensure that these dependencies are easy to install, we have created a conda package for itero that is available as part of bioconda. This is the easiest way to get itero up and running on your system. itero can also be run outside of conda, and we include some installation suggestions for these types of systems, below. However, because many HPC systems are configured differently, we cannot provide extensive support for itero on HPC platforms.
We build and test the binaries available through conda using 64-bit operating systems that include:
- Apple OSX 10.9.x
- CentOS 7.x
It may seem odd to impose a particular distribution on users, and we largely agree. However, conda makes it very easy for us to distribute both Python and non-Python packages, setup identical environments across very heterogenous platforms (linux, osx), make sure all the $PATHs are correct, and have things run largely as expected. Using conda has several other benefits, including environment separation similar to virtualenv.
In short, using conda gets us as close to a “one-click” install that we will probably ever get.
Install Process (using conda/bioconda)¶
We do not support itero on Windows.
We build and test the binaries available through using 64-bit operating systems that include:
- Apple OSX 10.9.x
- CentOS 7.x
The installation process is a 3-step process. You need to:
Install Anaconda or miniconda¶
The major difference between the two python distributions is that anaconda comes with many, many packages pre-installed, while miniconda comes with almost zero packages pre-installed. As such, the beginning anaconda distribution is roughly 500 MB in size while the beginning miniconda distribution is 15-30 MB in size.
Follow the instructions here for your platform: http://docs.continuum.io/anaconda/install.html
Find the correct miniconda-x.x.x file for your platform from http://repo.continuum.io/miniconda/ and download that file. Be sure you do not get one of the packages that has a name starting with miniconda3-. When that has completed, run one of the following:
bash Miniconda-x.x.x-Linux-x86_64.sh [linux] bash Miniconda-x.x.x-MacOSX-x86_64.sh [osx]
Once you have installed Miniconda, we will refer to it as anaconda throughout the remainder of this documentation.
Checking your $PATH¶
Regardless of whether you install anaconda or miniconda, you need to check that you’ve installed the package correctly. To ensure that the correct location for anaconda or miniconda are added to your $PATH (this occurs automatically on the $BASH shell), run the following:
$ python -V
The output should look similar to (x will be replaced by a version):
Python 2.7.x :: Anaconda x.x.x (x86_64)
Notice that the output shows we’re using the Anaconda x.x.x version of Python. If you do not see the expected output (or something similar), then you likely need to edit your $PATH variable to add anaconda or miniconda.
The easiest way to edit your path, if needed is to open
~/.bashrc with a
text editor (if you are using ZSH, this will be
~/.zshrc) and add, as the
$HOME/path/to/conda/bin is the location of anaconda/miniconda on your
Once you have installed anaconda (or miniconda), you need to configure conda to use the bioconda channel. More information on this process can be found on the bioconda website, but the gist of the process is that you need to run:
conda config --add channels defaults conda config --add channels conda-forge conda config --add channels bioconda
conda install itero
This will install everything that you need to run the program.
Install Process (Alternative / HPC)¶
python setup.py install
in the main directory. This should install all of the Python dependencies, but you still need to install and configure the 3rd-party dependencies.
You will need to install 3rd-party dependencies on your own if you are using the python setup.py install method of installing itero
You can build and install these dependencies where you like. To configure itero to use the dependencies you have build and installed, you need to create a
$HOME/.itero.conf that gives the paths to each program and looks like:
[executables] bedtools:/path/to/bin/bedtools bwa:/path/to/bin/bwa gawk:/path/to/bin/gawk samtools:/path/to/bin/samtools spades:/path/to/bin/spades.py