Skip to content

Instantly share code, notes, and snippets.

@afrendeiro
Last active October 21, 2019 13:12
Show Gist options
  • Star 3 You must be signed in to star a gist
  • Fork 2 You must be signed in to fork a gist
  • Save afrendeiro/a3718d50cdb370a83f88 to your computer and use it in GitHub Desktop.
Save afrendeiro/a3718d50cdb370a83f88 to your computer and use it in GitHub Desktop.
Software install from fresh Ubuntu 14.04 LTS image on AWS EC2
# New users
sudo adduser username
# Grant the new user sudo privileges
sudo visudo
# username ALL=(ALL:ALL) ALL
# add this line ^^
# change to that user
su - username
# change server name
# sudo hostname new-name
# or
# edit /etc/hostname
# add 127.0.1.1 new-name to /etc/hosts
# requires reboot in both cases
# system update
sudo apt-get update
sudo apt-get install -y build-essential # just to make sure
sudo apt-get upgrade -y
sudo apt-get dist-upgrade -y
# configs
# keep ssh sessions alive
# edit /etc/ssh/ssh_config
# add the line:
# ServerAliveInterval 120
# under Host *
sudo service ssh restart
# perl always complains if localle is not set.
# add these lines to /etc/environment:
# export LANGUAGE=en_US.UTF-8
# export LC_ALL=en_US.UTF-8
# export LANG=en_US.UTF-8
# export LC_TYPE=en_US.UTF-8
# basics
sudo apt-get install -y git github-backup cmake
sudo apt-get install -y awscli
complete -C aws_completer aws
# python
sudo apt-get install -y python-dev python-pip python-virtualenv s3cmd
# python dependencies
# since neither pip or easy_install can install system-level dependencies, let's use apt-get
sudo apt-get install -y libatlas-base-dev libfreetype6-dev
sudo apt-get install -y python-numpy
sudo apt-get install -y cython python-scipy python-pandas python-matplotlib ipython
sudo pip install seaborn rpy2
# bioinfo
sudo apt-get install -y bedtools samtools picard-tools fastqc ghostscript
# python bioinfo
sudo apt-get install -y python-biopython
sudo pip install pysam htseq pybedtools macs2
sudo apt-get install -y libmysqlclient-dev libpq-dev python-dev
sudo pip install cgat
# R
sudo apt-get install -y r-base r-base-dev
# R packages (install for everyone)
sudo R
install.packages("ggplot2") # bunch of stuff more
# R bioconductor
source("http://bioconductor.org/biocLite.R")
biocLite(c("DiffBind", "DESeq", "GenomicRanges", "ballgown"))
quit(save="no")
# EC2 <--> S3 data transfer
sudo apt-get install s3cmd
s3cmd --configure
# Libraries installed from source
# globally
# install to: /usr/local/bin/ or /usr/local/lib/
# edit /etc/environment with paths if needed
# (not needed if not copying executables to bin)
# locally for a user
# mkdir -p .local/bin
# Add to .bashrc or .bash_profile:
# PATH=$PATH:/home/username/.local/bin
# source .bashrc
# sambamba
wget https://github.com/lomereiter/sambamba/releases/download/v0.5.2/sambamba_v0.5.2_linux.tar.bz2
tar -xjvf sambamba_v0.5.2_linux.tar.bz2
rm sambamba*.tar.bz2
chmod +x sambamba*
sudo mv sambamba* /usr/local/bin/sambamba
# bamtools
git clone git://github.com/pezmaster31/bamtools.git
cd bamtools
mkdir build
cd build
cmake ..
make
cd ..
sudo mv bin/bamtools-2.3.0 /usr/local/bin/bamtools
cd ..
rm -r bamtools
# trimmomatic
wget http://www.usadellab.org/cms/uploads/supplementary/Trimmomatic/Trimmomatic-0.33.zip
unzip Trimmomatic-0.33.zip
chmod +x Trimmomatic-0.33/trimmomatic-0.33.jar
sudo mv Trimmomatic-0.33/trimmomatic-0.33.jar /usr/bin/
# run as java -jar `which trimmomatic-0.33.jar`
# skewer
git clone https://github.com/relipmoc/skewer.git
cd skewer
make
sudo make install
cd ..
sudo rm -r skewer
# hisat
wget http://ccb.jhu.edu/software/hisat/downloads/hisat-0.1.5-beta-Linux_x86_64.zip
unzip hisat-0.1.5-beta-Linux_x86_64.zip
sudo cp hisat-0.1.5-beta/hisat* /usr/local/bin
rm hisat-0.1.5-beta-Linux_x86_64.zip
rm -r hisat-0.1.5-beta/
# stringTie
wget http://ccb.jhu.edu/software/stringtie/dl/stringtie-1.0.3.Linux_x86_64.tar.gz
tar xfz stringtie-1.0.3.Linux_x86_64.tar.gz
sudo cp stringtie-1.0.3.Linux_x86_64/stringtie /usr/local/bin
rm stringtie-1.0.3.Linux_x86_64.tar.gz
rm -r stringtie-1.0.3.Linux_x86_64
# ucsc tools
rsync -aP rsync://hgdownload.cse.ucsc.edu/genome/admin/exe/linux.x86_64/ ucscTools
sudo cp ucscTools/* /usr/local/bin
sudo cp ucscTools/blat/blat /usr/local/bin
# MEME
sudo apt-get install libhtml-template-perl libxml-simple-perl libsoap-lite-perl imagemagick
wget http://meme-suite.org/meme-software/4.10.1/meme_4.10.1_3.tar.gz
tar xf meme_4.10.1_3.tar.gz
cd meme_4.10.1/
sudo mkdir -p /usr/local/meme
./configure --prefix=/usr/local/meme --enable-build-libxml2 --with-url=http://meme.nbcr.net/meme
make -j 4
make test
sudo make install
# homer
## weblogo dependency
sudo mkdir /usr/local/lib/
sudo wget http://weblogo.berkeley.edu/release/weblogo.2.8.2.tar.gz -O /usr/local/lib/weblogo.2.8.2.tar.gz
sudo tar xfz /usr/local/lib/weblogo.2.8.2.tar.gz
## add /usr/local/lib/weblogo to PATH
## and export PERL5LIB=$PERL5LIB:/usr/local/lib/weblogo
## to /etc/environment
## blat, samtools and ghostscript are already in!
sudo mkdir /usr/local/lib/homer
cd /usr/local/lib/homer
sudo wget http://homer.salk.edu/homer/configureHomer.pl
sudo perl configureHomer.pl -install
# add
# :/usr/local/lib/homer/bin
# to /etc/environment
# spp + phantompeakqualtools
sudo apt-get install libboost-all-dev
sudo R
install.packages(c("caTools", "snow"))
quit(save="no")
wget https://phantompeakqualtools.googlecode.com/files/ccQualityControl.v.1.1.tar.gz
tar xfz ccQualityControl.v.1.1.tar.gz
sudo R CMD INSTALL phantompeakqualtools/spp_1.10.1.tar.gz
# add #! /usr/bin/env R to first line of phantompeakqualtools/run_spp*
chmod +x phantompeakqualtools/run_spp*
sudo mv phantompeakqualtools/run_spp* /usr/local/bin
rm ccQualityControl.v.1.1.tar.gz
rm -r phantompeakqualtools
# run with Rscript `which run_spp.R`
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment