2. Installation¶
2.1. System requirements¶
Mikado requires CPython 3.6 or later to function (Python2 is not supported). Additionally, it requires a functioning installation of one among SQLite, PostgreSQL and MySQL. Mikado has additionally the following python dependencies:
biopython>=1.78
docutils
drmaa
hypothesis
msgpack>=1.0.0
networkx>=2.3
numpy>=1.17.2
pandas>=1.0
pip
pysam>=0.15.3
pyyaml>=5.1.2
scipy>=1.3.1
snakemake>=5.7.0
sqlalchemy>=1.4.0
sqlalchemy-utils>=0.37
tabulate>=0.8.5
pytest>=5.4.1
python-rapidjson>=1.0.0
toml>=0.10.0
pyfaidx>=0.5.8
dataclasses; python_version < '3.7'
marshmallow
marshmallow-dataclass
typeguard # Necessary for mashmallow apparently
Mikado can run with little system requirements, being capable of analysing human data with less than 4GB of RAM in all stages. It benefits from the availability of multiple processors, as many of the steps of the pipeline are parallelised.
Mikado is at its core a data integrator. The Daijin pipeline has been written to facilitate the creation of a functioning workflow. To function, it requires Snakemake [Snake] and the presence of at least one supported RNA-Seq aligner and one supported transcript assembler. If you are planning to execute it on a cluster, we do support job submission on SLURM, LSF and PBS clusters, either in the presence or absence of DRMAA.
2.2. Download¶
Mikado is available through BioConda; to install it, select or configure a python3 Conda environment, add the bioconda channel to your environment, and then install it with:
conda install -c bioconda mikado
.
This will also take care of installing companion tools such as PortCullis. Even with conda, BLAST+, Prodigal, Diamond and TransDecoder have to be installed separately. This can be achieved with:
conda install -c bioconda prodigal blast transdecoder diamond
Mikado is available on PyPI, so it is possible to install it with
pip3 install mikado
The source for the latest release on PyPI can be obtained with
pip3 download mikado
As the package contains some core Cython components, it might be necessary to download and compile the source code instead of relying on the wheel.
Alternatively, Mikado can be installed from source by obtaining it from our GitHub repository. Either download the latest release or download the latest stable development snapshot with
git clone https://github.com/EI-CoreBioinformatics/mikado.git; cd mikado
2.3. Install using containers¶
We support both Docker and Singularity as container technologies. On GitHub, we currently provide:
- A Docker file tracking the “master” github branch, with a Ubuntu 20.04 guest
- A Singularity recipe tracking the “master” github branch, with a Ubuntu 20.04 guest
- A Singularity recipe tracking the “master” github branch, with a Centos 7 guest
We plan to release them in the Docker and Singularity hubs.
2.4. Building and installing from source¶
If you desire to install Mikado from source, this can be achieved with
`bash
pip install -U .
`
2.5. Testing the installed module¶
It is possible to test whether Mikado has been built successfully by opening a python3 interactive session and digiting:
>> import Mikado
>> Mikado.test()
Alternatively, you use pytest:
$ pytest --pyargs Mikado
This will run all the tests included in the suite.