Permalink
Browse files

Simplified installation instructions

  • Loading branch information...
lmrodriguezr committed Feb 5, 2019
1 parent 3ff41c1 commit 441667f0d35032b7431c99d37c3407cf0b55d725
@@ -9,6 +9,8 @@ Once you have satisfied all the [system requirements](requirements.md), you'll
need to make them accessible to MiGA. For that, create a `bash` configuration
file at `~/.miga_modules` loading any necessary packages (*e.g.*, if you're
in a cluster architecture using `modules`, this is where you should load them).
Note that some contents may already be present in this file from previous
steps. Do not remove or modify those lines if you're not sure what they do.
Here's an example of a configuration file for a single computer:

```bash
@@ -2,313 +2,19 @@

MiGA requires a system (single computer, cluster, or cloud-computing
infrastructure) with Linux or MacOS. If you simply want to access projects
previously processed, all you need is `ruby` 1.9+ and the
previously processed, all you need is `ruby` 1.9+ (recommended 2.3+) and the
[required gems](#ruby-libraries). If you want to use MiGA to process your data,
please continue these instructions.

MiGA has a relatively long list of requirements, but most of them are easy to
install. Find your system below and follow the instructions for:
[Linux users with `apt-get`](#for-linux-users-with-aptget),
[MacOS users (or others with Homebrew)](#for-macos-users-or-others-with-homebrew),
or [any other users](#for-any-other-users).
install. Find your system below and follow the instructions using:

## For Linux users with `apt-get`
* [`apt-get`](requirements/apt-get.md),
* [Homebrew or Linuxbrew](requirements/brew.md),
* [Anaconda or Miniconda](requirements/conda.md),
* [Installing from source](requirements/source.md).

### Essentials

If you have `apt-get`, execute:

```bash
# General-purpose software
sudo apt-get install ruby ruby-sqlite3 r-base sqlite3 python
# Bioinformatics software
sudo apt-get install ncbi-blast+ hmmer bedtools \
prodigal mcl barrnap scythe fastqc
```

### IDBA-UD

Now install IDBA-UD (the one in `apt-get` is only for IDBA-Hybrid):

```bash
wget https://github.com/loneknightpy/idba/releases/download/1.1.3/idba-1.1.3.tar.gz
tar zxvf idba-1.1.3.tar.gz
cd idba-1.1.3
./configure
make
sudo install bin/idba_ud /usr/bin/
```

### SolexaQA++

Next, you'll need to install SolexaQA++. If you have a 64-bits Linux:

```bash
curl -L -o SolexaQA++_v3.1.7.1.zip \
"https://downloads.sourceforge.net/project/solexaqa/src/SolexaQA%2B%2B_v3.1.7.1.zip"
unzip -p SolexaQA++_v3.1.7.1.zip Linux_x64/SolexaQA++ > SolexaQA++
sudo install SolexaQA++ /usr/bin/
```

If you have 32-bits Linux, you can build SolexaQA++ from source:

```bash
sudo apt-get install libboost-dev libboost-filesystem-dev \
libboost-regex-dev libboost-iostreams-dev
curl -L -o SolexaQA++_v3.1.7.1.zip \
"https://downloads.sourceforge.net/project/solexaqa/src/SolexaQA%2B%2B_v3.1.7.1.zip"
unzip SolexaQA++_v3.1.7.1.zip 'source/*'
cd source && make
sudo install source/SolexaQA++ /usr/bin/
```

### Ruby libraries

If you don't have direct writing privileges to the system gem repository, you
can either use `sudo gem ...` if you have superuser access, or
`gem install --user ...`:

```bash
gem install daemons json
```

### R packages

This may take a while (you may need to change the last line for
`| sudo R --vanilla -q` if your user doesn't have privileges to install
R packages):

```bash
echo "
install.packages(c('enveomics.R','ape','phangorn','phytools','cluster','vegan'),
repos='http://cran.rstudio.com/')" \
| R --vanilla -q
```

### MyTaxa utils

**The MyTaxa utilities are optional**, but without them the
[MyTaxa](../part5/workflow.md#mytaxa) and
[MyTaxa scan](../part5/workflow.md#mytaxa-scan) analyses are disabled. Note that
MyTaxa requires about **15Gb** of disk available to store the database.

We will install the necessary software in `$HOME/apps`. You can change this
directory if you prefer:

```bash
[[ -d $HOME/apps/bin ]] || mkdir -p $HOME/apps/bin
cd $HOME/apps
# Install Diamond
curl -L \
http://github.com/bbuchfink/diamond/releases/download/v0.9.4/diamond-linux64.tar.gz \
| tar zx
mv diamond diamond-sse2 bin/
# Install MyTaxa
curl -L \
https://github.com/luo-chengwei/MyTaxa/archive/master.tar.gz | tar zx
cd MyTaxa-master
make
python utils/download_db.py
curl -O \
http://enve-omics.ce.gatech.edu/data/public_mytaxa/AllGenomes.faa.dmnd
cd ..
# Install Krona
curl -L \
https://github.com/marbl/Krona/archive/master.tar.gz | tar zx
cd bin
for i in ../Krona-master/KronaTools/scripts/*.pl ; do
ln -sf "$i" "kt$(basename $i .pl)"
done
cd ..
```

## For MacOS users (or others with Homebrew)

If you have MacOS, we'll use [Homebrew](https://brew.sh/) to install most of the
software. If you don't have Homebrew, execute (and follow the instructions):

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

Next, make sure you have the brewsci/science and brewsci/bio taps:

```bash
brew tap brewsci/science
brew tap brewsci/bio
```

### Essentials

Now that you have Homebrew and the science tap, execute:

```bash
# General-purpose software
brew install r sqlite3 python
brew cask install java
# Bioinformatics software
brew install blast hmmer bedtools \
prodigal idba mcl barrnap fastqc solexaqa
brew install jonchang/biology/scythe
# Pending: Scythe in science (contacting authors)
# See: https://github.com/brewsci/homebrew-bio/issues/23
# See also: https://github.com/vsbuffalo/scythe/pull/20
```

### Ruby libraries

If you don't have direct writing privileges to the system gem repository, you
can either use `sudo gem ...` if you have superuser access, or
`gem install --user ...`:

```bash
gem install sqlite3 -- \
--with-sqlite3-lib=/usr/lib --with-sqlite3-include=/usr/include
gem install daemons json
```

### R packages

This may take a while (you may need to change the last line for
`| sudo R --vanilla -q` if your user doesn't have privileges to install
R packages):

```bash
echo "
install.packages(c('enveomics.R','ape','phangorn','phytools','cluster','vegan'),
repos='http://cran.rstudio.com/')" \
| R --vanilla -q
```

### MyTaxa utils

**The MyTaxa utilities are optional**, but without them the
[MyTaxa](../part5/workflow.md#mytaxa) and
[MyTaxa scan](../part5/workflow.md#mytaxa-scan) analyses are disabled. Note that
MyTaxa requires about **15Gb** of disk available to store the database.

We will install the necessary software in `$HOME/apps`. You can change this
directory if you prefer:

```bash
[[ -d $HOME/apps/bin ]] || mkdir -p $HOME/apps/bin
cd $HOME/apps
# Install Diamond (using Homebrew)
brew install diamond
# Install MyTaxa
curl -L \
https://github.com/luo-chengwei/MyTaxa/archive/master.tar.gz | tar zx
cd MyTaxa-master
make
python utils/download_db.py
curl -O \
http://enve-omics.ce.gatech.edu/data/public_mytaxa/AllGenomes.faa.dmnd
cd ..
# Install Krona
curl -L -o Krona.tar.gz \
https://github.com/marbl/Krona/archive/master.tar.gz
tar zxf Krona.tar.gz
cd bin
for i in ../Krona-master/KronaTools/scripts/*.pl ; do
ln -sf "$i" "kt$(basename $i .pl)"
done
cd ..
```

## For any other users

### Essentials

If you don't have either apt-get nor Homebrew, here's the list of requirements
and URLs with installation instructions:

* **Ruby**: https://www.ruby-lang.org/. Required version: 1.9+.
* **Python**: https://www.python.org/.
* **R**: http://www.r-project.org/.
* **SQLite3**: https://www.sqlite.org/.
* **NCBI BLAST+**: ftp://ftp.ncbi.nlm.nih.gov/blast/executables/blast+/LATEST.
* **HMMer**: http://hmmer.janelia.org/software. Required version: 3.0+.
* **Bedtools**: http://bedtools.readthedocs.org/en/latest/.
* **Prodigal**: http://prodigal.ornl.gov.
* **IDBA**: http://i.cs.hku.hk/~alse/hkubrg/projects/idba. Required flavor:
IDBA-UD.
* **MCL**: http://micans.org/mcl/.
* **Barrnap**: http://www.vicbioinformatics.com/software.barrnap.shtml.
* **Scythe**: https://github.com/vsbuffalo/scythe. Required version: 0.991+.
* **FastQC**: http://www.bioinformatics.babraham.ac.uk/projects/fastqc.
* **SolexaQA++**: http://solexaqa.sourceforge.net. Required version: v3.1.3+.

### Ruby libraries

If you don't have direct writing privileges to the system gem repository, you
can either use `sudo gem ...` if you have superuser access, or
`gem install --user ...`:

```bash
gem install daemons json sqlite3
```

### R packages

This may take a while (you may need to change the last line for
`| sudo R --vanilla -q` if your user doesn't have privileges to install
R packages):

```bash
echo "
install.packages(c('enveomics.R','ape','phangorn','phytools','cluster','vegan'),
repos='http://cran.rstudio.com/')" \
| R --vanilla -q
```

### MyTaxa utils

**The MyTaxa utilities are optional**, but without them the
[MyTaxa](../part5/workflow.md#mytaxa) and
[MyTaxa scan](../part5/workflow.md#mytaxa-scan) analyses are disabled. Note that
MyTaxa requires about **15Gb** of disk available to store the database.

To install **Diamond**, we provide below the method for 64-bits Linux. If you
have a different system please checkout https://github.com/bbuchfink/diamond
instead.

We will install the necessary software in `$HOME/apps`. You can change this
directory if you prefer:

```bash
[[ -d $HOME/apps/bin ]] || mkdir -p $HOME/apps/bin
cd $HOME/apps
# Install Diamond (for 64-bits Linux)
curl -L \
http://github.com/bbuchfink/diamond/releases/download/v0.9.4/diamond-linux64.tar.gz \
| tar zx
mv diamond diamond-sse2 bin/
# Install MyTaxa
curl -L \
https://github.com/luo-chengwei/MyTaxa/archive/master.tar.gz | tar zx
cd MyTaxa-master
make
python utils/download_db.py
curl -O \
http://enve-omics.ce.gatech.edu/data/public_mytaxa/AllGenomes.faa.dmnd
cd ..
# Install Krona
curl -L \
https://github.com/marbl/Krona/archive/master.tar.gz | tar zx
cd bin
for i in ../Krona-master/KronaTools/scripts/*.pl ; do
ln -sf "$i" "kt$(basename $i .pl)"
done
cd ..
```
In addition, you will also need the [MyTaxa utils](requirements/mytaxa.md)
in order to activate the [MyTaxa](../part5/workflow.md#mytaxa) and
[MyTaxa Scan](../part5/workflow.md#mytaxa-scan) steps (optional).

Oops, something went wrong.

0 comments on commit 441667f

Please sign in to comment.