Skip to content

Commit

Permalink
Update install instructions
Browse files Browse the repository at this point in the history
  • Loading branch information
camillescott committed Mar 7, 2018
1 parent 6879b02 commit d0cc08e
Showing 1 changed file with 44 additions and 62 deletions.
106 changes: 44 additions & 62 deletions README.rst
Original file line number Diff line number Diff line change
Expand Up @@ -22,84 +22,71 @@ or rely on crappy non-free software.
Science shouldn't suck for the sake of sucking, so dammit attempts
to make this sucky part of the process suck a little less.

Installation
------------

Complete instructions with explanations and more platform options are in the documentation
`website <http://www.camillescott.org/dammit/>`__. For the impatient, here's a stripped
down version. These instructions assume you're on a clean Ubuntu 14.04 install.
dammit will run on OSX too, though some of the dependencies will need to be
installed manually and are not included here.

First get packages from the Ubuntu archives::
System Requirements
-------------------

sudo apt-get update
sudo apt-get install python-pip python-dev python-numpy git ruby hmmer unzip \
infernal ncbi-blast+ liburi-escape-xs-perl emboss liburi-perl \
build-essential libsm6 libxrender1 libfontconfig1 \
parallel
sudo gem install crb-blast
dammit, for now, is officially supported on GNU/Linux systems via
`bioconda <https://bioconda.github.io/index.html>`__. macOS support will
be available via bioconda soon.

Install some packages manually::
For the standard pipeline, dammit needs ~18GB of space to store its prepared
databases, plus a few hundred MB per BUSCO database. For the standard annotation
pipeline, I recommended 16GB of RAM. This can be reduced by editing LAST parameters
via a custom configuration file.

cd
curl -LO https://github.com/TransDecoder/TransDecoder/archive/2.0.1.tar.gz
tar -xvzf 2.0.1.tar.gz
cd TransDecoder-2.0.1; make
export PATH=$HOME/TransDecoder-2.0.1:$PATH
The full pipeline, which uses uniref90, needs several hundred GB of space
and considerable RAM to prepare the databases.

cd
curl -LO http://last.cbrc.jp/last-658.zip
unzip last-658.zip
cd last-658
make
export PATH=$HOME/last-658/src:$PATH
export PATH=$HOME/last-658/scripts:$PATH

cd
curl -LO http://busco.ezlab.org/files/BUSCO_v1.1b1.tar.gz
tar -xvzf BUSCO_v1.1b1.tar.gz
chmod +x BUSCO_v1.1b1/*.py
export PATH=$HOME/BUSCO_v1.1b1:$PATH
cd
Installation
------------

To add these to your environment permanently::
As of version 1.\*, the recommended installation platform for dammit is via
`bioconda <https://bioconda.github.io/index.html>`__. If you already have anaconda
installed, proceed to the next step. Otherwise, you can either follow the
instructions from bioconda, or if you're on Ubuntu (or most GNU/Linux platforms),
install it directly into your home folder with::

echo 'export PATH=$PATH:$HOME/TransDecoder-2.0.1' >> $HOME/.bashrc
echo 'export PATH=$PATH:$HOME/last-658/src' >> $HOME/.bashrc
echo 'export PATH=$PATH:$HOME/BUSCO_v1.1b1' >> $HOME/.bashrc
wget https://repo.continuum.io/miniconda/Miniconda3-latest-Linux-x86_64.sh -O miniconda.sh && bash miniconda.sh -b -p $HOME/miniconda
echo 'export PATH="$HOME/miniconda/bin:$PATH"' >> $HOME/.bashrc

Now, install dammit::
It's recommended that you use `conda` environments to separate your packages,
though it isn't strictly necessary::

sudo pip install -U setuptools
sudo pip install dammit
conda create -n dammit python=3
source ativate dammit

This will spend a bit of time compiling and installing pandas if you don't
already have a recent versions installed; the ones available in the Ubuntu 14.04 archives are
just too old.
Now, add the channels and install dammit::

Dev Version
-----------
conda config --add channels defaults
conda config --add channels conda-forge
conda config --add channels bioconda

If you want the latest features (and bugs), you can install dammit from github::
conda install dammit

pip install git+https://github.com/camillescott/dammit.git
And that's it!

Usage
-----

To check for dependencies, run::

dammit dependencies

To check for databases, run::

dammit databases

and to download and install them, run::
and to download and install the general databases, use::

dammit databases --install

A reduced database set that excludes OrthoDB, uniref, Pfam, and Rfam
(ie, all the homology searches other than user-supplied databases) with::

dammit databases --install --quick

dammit supports all the released BUSCO databases, which can be installed with the
`--busco-group` flag; a complete list of available groups can be seen with
`dammit databases -h`::

dammit databases --install --busco-group fungi

To annotate your transcriptome, the most basic usage is::

dammit annotate <transcriptome_fasta>
Expand All @@ -117,11 +104,6 @@ Known Issues
* There can be errors resuming runs which were interrupted on the BUSCO stage. If the task fails on
resume, delete the BUSCO results folder within your dammit results folder, which will have a name
of the form `run_<name>.busco_results`.
* The `dependencies` subcommand doesn't search for all subdependencies; for example, BUSCO relies on
EMBOSS, which is not searched for. Although the installation instructions cover these
dependencies, users who *cough* don't read the directions *cough* might be confused that a
dependency is marked as installed but still doesn't work.


Acknowledgements
----------------
Expand All @@ -130,6 +112,6 @@ I've received input and advice from a many sources, including but probably not l
Brown, Matt MacManes, Chris Hamm, Michael Crusoe, Russell Neches, Luiz Irber, Lisa Cohen, Sherine
Awad, and Tamer Mansour.

CS is funded by the National Human Genome Research Institute of the National Institutes of Health
under Award Number R01HG007513 through May 2016, and also receives support from the Gordon and Betty
CS was funded by the National Human Genome Research Institute of the National Institutes of Health
under Award Number R01HG007513 through May 2016, and now receives support from the Gordon and Betty
Moore Foundation under Award number GBMF4551.

0 comments on commit d0cc08e

Please sign in to comment.