From 9833cbffa27174dad6b3db2f9862c832480fb0b3 Mon Sep 17 00:00:00 2001 From: Karolis Ramanauskas Date: Sun, 23 Jun 2024 10:34:28 -0500 Subject: [PATCH 01/13] Updates .gitignore file: VS Code workspace files. --- .gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index 61cbea349..4080d007a 100644 --- a/.gitignore +++ b/.gitignore @@ -31,3 +31,4 @@ bin/* semblans_fa/* plant_cdna/* project/* +*.code-workspace From 55fc76dbbb68d8e630685878e1a87a40bc95239e Mon Sep 17 00:00:00 2001 From: Karolis Ramanauskas Date: Sun, 23 Jun 2024 11:25:51 -0500 Subject: [PATCH 02/13] Change Ensembl reference links to Dropbox (to allow command line download). --- README.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index c15048e92..568e0396f 100644 --- a/README.md +++ b/README.md @@ -36,8 +36,8 @@ Some users may experience issues, particularly during the transcript assembly ph Reference peptide sets for **postprocess** -[**Ensembl animal reference**](https://uofi.app.box.com/s/0rlp6q0u5uvc161mzbdr3c0xoiti63sk) +[**Ensembl animal reference**](https://www.dropbox.com/scl/fi/n49jm9i1yscrfrsj1dnq8/ensembl_animals.pep.all.fa.gz?rlkey=yemush6bm36wr4fu7dpe8h5e0&st=98kgb83l&dl=1) -[**Ensembl plant reference**](https://uofi.app.box.com/s/lvg7x2qrxvg8hfcmue9xv4y9t1rgfb48) +[**Ensembl plant reference**](https://www.dropbox.com/scl/fi/hbvtnd9wsiwt8k7gakcmq/ensembl_plant.pep.all.fa.gz?rlkey=8cp9sn5wrt9uu4vc2pmg8xvin&st=1gesuqq0&dl=1) -[**Ensembl fungi reference**](https://uofi.box.com/s/qc4nmun4apb0pik5fqxukn4qvn3wm943) +[**Ensembl fungi reference**](https://www.dropbox.com/scl/fi/8as6tci331utcrqrl7txz/ensembl_fungi.pep.all.fa.gz?rlkey=eyhsv35lelnao5xgd7s9dy51e&st=oc9dz9s6&dl=1) From 9d3e4ff3fff9dedb989eb1b82c3d2388040f6ba2 Mon Sep 17 00:00:00 2001 From: Karolis Ramanauskas Date: Sun, 23 Jun 2024 11:47:54 -0500 Subject: [PATCH 03/13] Make install.sh script more resilient. --- install.sh | 121 ++++++++++++++++++++++++++++------------------------- 1 file changed, 65 insertions(+), 56 deletions(-) diff --git a/install.sh b/install.sh index 9e104124c..44993f325 100755 --- a/install.sh +++ b/install.sh @@ -1,4 +1,14 @@ -#!/bin/bash +#!/usr/bin/env bash +#################################################### +# Suppress printing of error messages +# exec 2>/dev/null +# Stop on first error +set -o errexit +# Set trap on ERR to be inherited by shell functions +set -o errtrace +# Trap errors +trap 'echo Error at line: $LINENO' ERR +#################################################### # Determine whether to install PANTHER for annotation install_panther=false @@ -12,7 +22,6 @@ for flag in "$@"; do fi done - echo "Initiating install of Semblans" if $install_panther @@ -39,14 +48,14 @@ fi echo "Now installing required libraries" # Install boost libraries -if ( [ ! -f ./lib/libboost_filesystem.a ] || - [ ! -f ./lib/libboost_regex.a ] || - [ ! -f ./lib/libboost_system.a ] || - [ ! -f ./lib/libboost_locale.a ] ); then +if [ ! -f ./lib/libboost_filesystem.a ] || + [ ! -f ./lib/libboost_regex.a ] || + [ ! -f ./lib/libboost_system.a ] || + [ ! -f ./lib/libboost_locale.a ]; then echo " Installing Boost libraries ..." wget -q https://boostorg.jfrog.io/artifactory/main/release/1.81.0/source/boost_1_81_0.tar.gz tar -xf boost_1_81_0.tar.gz - cd boost_1_81_0 + cd boost_1_81_0 || return 1 ./bootstrap.sh --prefix=../ ./b2 install cxxflags="-std=c++11" link=static make @@ -102,7 +111,7 @@ if [ ! -e "./external/hmmer/bin/hmmscan" ]; then wget -q http://eddylab.org/software/hmmer/hmmer.tar.gz tar -xf hmmer.tar.gz -C ./external/ mv ./external/hmmer* ./external/hmmer - cd ./external/hmmer + cd ./external/hmmer || return 1 ./configure --prefix "$PWD" make make install @@ -132,13 +141,13 @@ fi # Install NCBI sra-tools -if ( [ ! -e "./external/sratoolkit/bin/prefetch" ] && - [ ! -e "./external/sratoolkit/bin/fasterq-dump" ] ); then +if [ ! -e "./external/sratoolkit/bin/prefetch" ] && + [ ! -e "./external/sratoolkit/bin/fasterq-dump" ]; then echo "Installing SRA-Tools ..." wget -q --output-document sratoolkit.tar.gz https://ftp-trace.ncbi.nlm.nih.gov/sra/sdk/current/sratoolkit.current-ubuntu64.tar.gz tar -xf sratoolkit.tar.gz -C ./external/ mv ./external/sratoolkit* ./external/sratoolkit - cd ./external/sratoolkit + cd ./external/sratoolkit || return 1 wget -q https://raw.githubusercontent.com/ncbi/sra-tools/master/LICENSE cd ../../ rm sratoolkit.tar.gz @@ -163,9 +172,9 @@ if [ ! -e "./external/Rcorrector/rcorrector" ]; then wget -q --output-document rcorrector.tar.gz https://github.com/mourisl/Rcorrector/archive/refs/tags/v1.0.7.tar.gz tar -xf rcorrector.tar.gz -C ./external/ mv ./external/Rcorrector* ./external/Rcorrector - cd ./external/Rcorrector + cd ./external/Rcorrector || return 1 make - cd ../../ + cd ../.. rm rcorrector.tar.gz else echo "Rcorrector already installed. Skipping ..." @@ -177,9 +186,9 @@ if [ ! -e "./external/Trimmomatic/trimmomatic-0.39.jar" ]; then wget -q --output-document trimmomatic.zip http://www.usadellab.org/cms/uploads/supplementary/Trimmomatic/Trimmomatic-0.39.zip unzip trimmomatic.zip -d ./external/ mv ./external/Trimmomatic* ./external/Trimmomatic - cd ./external/Trimmomatic/adapters/ + cd ./external/Trimmomatic/adapters || return 1 echo -e "$(cat NexteraPE-PE.fa)\n$(cat TruSeq2-PE.fa)\n$(cat TruSeq2-SE.fa)\n$(cat TruSeq3-PE-2.fa)\n$(cat TruSeq3-PE.fa)\n$(cat TruSeq3-SE.fa)" > TruSeq_all.fa - cd ../../../ + cd ../../.. rm trimmomatic.zip else echo "Trimmomatic already installed. Skipping ..." @@ -191,9 +200,9 @@ if [ ! -e "./external/kraken2/kraken2" ]; then wget -q --output-document kraken2.tar.gz https://github.com/DerrickWood/kraken2/archive/refs/tags/v2.1.2.tar.gz tar -xf kraken2.tar.gz -C ./external/ mv ./external/kraken2-2.1.2 ./external/kraken2 - cd ./external/kraken2 + cd ./external/kraken2 || return 1 ./install_kraken2.sh . - cd ../../ + cd ../.. rm kraken2.tar.gz else echo "Kraken2 already installed. Skipping ..." @@ -205,19 +214,19 @@ if [ ! -e "./external/trinityrnaseq/Trinity" ]; then wget -q --output-document trinity.tar.gz https://github.com/trinityrnaseq/trinityrnaseq/releases/download/Trinity-v2.15.1/trinityrnaseq-v2.15.1.FULL.tar.gz tar -xf trinity.tar.gz -C ./external/ mv ./external/trinityrnaseq-v2.15.1 ./external/trinityrnaseq - cd ./external/trinityrnaseq/trinity-plugins/bamsifter + cd ./external/trinityrnaseq/trinity-plugins/bamsifter || return 1 sed -i '1s/^/#include \n/' sift_bam_max_cov.cpp - cd ../../ + cd ../.. make - cd ../../ + cd ../.. rm trinity.tar.gz else echo "Trinity already installed. Skipping ..." fi # Install NCBI BLAST -if ( [ ! -e "./external/ncbi-blast+/bin/blastx" ] || - [ ! -e "./external/ncbi-blast+/bin/blastp" ] ); then +if [ ! -e "./external/ncbi-blast+/bin/blastx" ] || + [ ! -e "./external/ncbi-blast+/bin/blastp" ]; then echo "Installing NCBI-BLAST+ ..." wget -q --output-document ncbi-blast.tar.gz https://ftp.ncbi.nlm.nih.gov/blast/executables/blast+/2.15.0/ncbi-blast-2.15.0+-x64-linux.tar.gz tar -xf ncbi-blast.tar.gz -C ./external/ @@ -228,15 +237,15 @@ else fi # Install Diamond -if ( [ ! -e "./external/diamond/diamond" ] ); then +if [ ! -e "./external/diamond/diamond" ]; then echo "Installing Diamond ..." mkdir ./external/diamond-2.1.7 wget -q --output-document diamond.tar.gz https://github.com/bbuchfink/diamond/releases/download/v2.1.7/diamond-linux64.tar.gz tar -xf diamond.tar.gz -C ./external/diamond-2.1.7/ mv ./external/diamond-2.1.7 ./external/diamond - cd ./external/diamond + cd ./external/diamond || return 1 wget -q https://raw.githubusercontent.com/bbuchfink/diamond/master/LICENSE - cd ../../ + cd ../.. rm diamond.tar.gz else echo "Diamond already installed. Skipping ..." @@ -244,51 +253,51 @@ fi # Install Corset -if ( [ ! -e "./external/corset/corset" ] ); then +if [ ! -e "./external/corset/corset" ]; then echo "Installing Corset ..." wget -q --output-document corset.tar.gz https://github.com/Oshlack/Corset/releases/download/version-1.09/corset-1.09-linux64.tar.gz tar -xf corset.tar.gz -C ./external/ mv ./external/corset-1.09-linux64 ./external/corset - cd ./external/corset/ + cd ./external/corset || return 1 chmod -x LICENSE chmod -x COPYING - cd ../../ + cd ../.. rm corset.tar.gz else echo "Corset already installed. Skipping ..." fi # Install STAR -#if ( [ ! -e "./external/STAR/bin" ] ); then -# echo "Installing STAR ..." -# wget -q --output-document star.tar.gz https://github.com/alexdobin/STAR/archive/refs/tags/2.7.11a.tar.gz -# tar -xf star.tar.gz -C ./external/ -# mv ./external/STAR* ./external/STAR -# cd ./external/STAR/source/ -# make STAR -# cd ../../../ -# rm star.tar.gz -#else -# echo "STAR alread installed. Skipping ..." -#fi +# if [ ! -e "./external/STAR/bin" ]; then +# echo "Installing STAR ..." +# wget -q --output-document star.tar.gz https://github.com/alexdobin/STAR/archive/refs/tags/2.7.11a.tar.gz +# tar -xf star.tar.gz -C ./external/ +# mv ./external/STAR* ./external/STAR +# cd ./external/STAR/source || return 1 +# make STAR +# cd ../../.. +# rm star.tar.gz +# else +# echo "STAR alread installed. Skipping ..." +# fi # Install Salmon -if ( [ ! -e "./external/salmon/bin/salmon" ] ); then +if [ ! -e "./external/salmon/bin/salmon" ]; then echo "Installing Salmon ..." wget -q --output-document salmon.tar.gz https://github.com/COMBINE-lab/salmon/releases/download/v1.10.0/salmon-1.10.0_linux_x86_64.tar.gz tar -xf salmon.tar.gz -C ./external/ mv ./external/salmon* ./external/salmon - cd ./external/salmon + cd ./external/salmon || return 1 wget -q https://raw.githubusercontent.com/COMBINE-lab/salmon/master/LICENSE - cd ../../ + cd ../.. rm salmon.tar.gz else echo "Salmon already installed. Skipping ..." fi # Install TransDecoder -if ( [ ! -e "./external/TransDecoder/TransDecoder.LongOrfs" ] || - [ ! -e "./external/TransDecoder/TransDecoder.Predict" ] ); then +if [ ! -e "./external/TransDecoder/TransDecoder.LongOrfs" ] || + [ ! -e "./external/TransDecoder/TransDecoder.Predict" ]; then echo "Installing TransDecoder ..." wget -q --output-document transdecoder.tar.gz https://github.com/TransDecoder/TransDecoder/archive/refs/tags/TransDecoder-v5.7.0.tar.gz tar -xf transdecoder.tar.gz -C ./external/ @@ -317,8 +326,8 @@ if $install_panther ; then fi # Check SRA Toolkit installation -if ( [ ! -e "./external/sratoolkit/bin/prefetch" ] && - [ -e "./external/sratoolkit/bin/fasterq-dump" ] ); then +if [ ! -e "./external/sratoolkit/bin/prefetch" ] && + [ -e "./external/sratoolkit/bin/fasterq-dump" ]; then packagesNotInstalled+=("SRA-Tools") fi @@ -348,8 +357,8 @@ if [ ! -e "./external/trinityrnaseq/Trinity" ]; then fi # Check BLAST installation -if ( [ ! -e "./external/ncbi-blast+/bin/blastx" ] || - [ ! -e "./external/ncbi-blast+/bin/blastp" ] ); then +if [ ! -e "./external/ncbi-blast+/bin/blastx" ] || + [ ! -e "./external/ncbi-blast+/bin/blastp" ]; then packagesNotInstalled+=("BLAST+") fi @@ -369,8 +378,8 @@ if [ ! -e "./external/salmon/bin/salmon" ]; then fi # Check TransDecoder installation -if ( [ ! -e "./external/TransDecoder/TransDecoder.LongOrfs" ] || - [ ! -e "./external/TransDecoder/TransDecoder.Predict" ] ); then +if [ ! -e "./external/TransDecoder/TransDecoder.LongOrfs" ] || + [ ! -e "./external/TransDecoder/TransDecoder.Predict" ]; then packagesNotInstalled+=("TransDecoder") fi @@ -391,14 +400,14 @@ fi #======================================================================== echo "Now building Semblans ..." -mkdir ./bin/ +mkdir ./bin make # Determine if build was successful -if ( [ ! -e "./bin/preprocess" ] || - [ ! -e "./bin/assemble" ] || - [ ! -e "./bin/postprocess" ] || - [ ! -e "./bin/semblans" ] ); then +if [ ! -e "./bin/preprocess" ] || + [ ! -e "./bin/assemble" ] || + [ ! -e "./bin/postprocess" ] || + [ ! -e "./bin/semblans" ]; then echo "ERROR: Semblans failed to build from source" exit 1 else From 38a26523cb5eeed574f9f6f9043afa39ac4022cd Mon Sep 17 00:00:00 2001 From: Karolis Ramanauskas Date: Sun, 23 Jun 2024 11:51:07 -0500 Subject: [PATCH 04/13] Fixes install.sh to not produce errors when trying to create directories that already exist. --- install.sh | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/install.sh b/install.sh index 44993f325..ba17629db 100755 --- a/install.sh +++ b/install.sh @@ -34,11 +34,11 @@ else fi # Prepare Semblans file structure -mkdir include &>/dev/null -mkdir lib &>/dev/null -mkdir external &>/dev/null +mkdir -p include &>/dev/null +mkdir -p lib &>/dev/null +mkdir -p external &>/dev/null if $install_panther; then - mkdir data &>/dev/null + mkdir -p data &>/dev/null fi #======================================================================== From 7d4fd069309a1aabc7d4bb0219c16c20fd77c98b Mon Sep 17 00:00:00 2001 From: Karolis Ramanauskas Date: Sun, 23 Jun 2024 11:52:39 -0500 Subject: [PATCH 05/13] Fixes install.sh to not produce errors when trying to create directories that already exist. (redux) --- install.sh | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/install.sh b/install.sh index ba17629db..56a8dd174 100755 --- a/install.sh +++ b/install.sh @@ -82,7 +82,7 @@ fi echo " Installing libconfini library ..." wget -q https://github.com/madmurphy/libconfini/releases/download/1.16.4/libconfini-1.16.4-x86_64-bin.tar.xz tar -xf libconfini-1.16.4-x86_64-bin.tar.xz -mkdir ./include/libconfini +mkdir -p ./include/libconfini mv ./usr/include/* ./include/libconfini/ mv ./usr/lib/* ./lib/ mv ./usr/share/doc/libconfini/AUTHORS ./include/libconfini/ @@ -239,7 +239,7 @@ fi # Install Diamond if [ ! -e "./external/diamond/diamond" ]; then echo "Installing Diamond ..." - mkdir ./external/diamond-2.1.7 + mkdir -p ./external/diamond-2.1.7 wget -q --output-document diamond.tar.gz https://github.com/bbuchfink/diamond/releases/download/v2.1.7/diamond-linux64.tar.gz tar -xf diamond.tar.gz -C ./external/diamond-2.1.7/ mv ./external/diamond-2.1.7 ./external/diamond @@ -400,7 +400,7 @@ fi #======================================================================== echo "Now building Semblans ..." -mkdir ./bin +mkdir -p ./bin make # Determine if build was successful From 0cb85baf0df1696c0702a1d1b2a6648fa4d77560 Mon Sep 17 00:00:00 2001 From: Karolis Ramanauskas Date: Sun, 23 Jun 2024 11:54:52 -0500 Subject: [PATCH 06/13] a bit more install.sh fixes. --- install.sh | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/install.sh b/install.sh index 56a8dd174..5295595e1 100755 --- a/install.sh +++ b/install.sh @@ -82,13 +82,14 @@ fi echo " Installing libconfini library ..." wget -q https://github.com/madmurphy/libconfini/releases/download/1.16.4/libconfini-1.16.4-x86_64-bin.tar.xz tar -xf libconfini-1.16.4-x86_64-bin.tar.xz +rm -rf ./include/libconfini mkdir -p ./include/libconfini mv ./usr/include/* ./include/libconfini/ mv ./usr/lib/* ./lib/ mv ./usr/share/doc/libconfini/AUTHORS ./include/libconfini/ mv ./usr/share/doc/libconfini/COPYING ./include/libconfini/ rm libconfini-1.16.4-x86_64-bin.tar.xz -rm -rf ./usr/ +rm -rf ./usr # Install libcurl echo " Installing libcurl library ..." From d426534fa00e8646c7ea218da4ceb7d77e95d240 Mon Sep 17 00:00:00 2001 From: Karolis Ramanauskas Date: Sun, 23 Jun 2024 12:06:16 -0500 Subject: [PATCH 07/13] ...even more install.sh fixes. --- install.sh | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/install.sh b/install.sh index 5295595e1..f9f87713e 100755 --- a/install.sh +++ b/install.sh @@ -33,12 +33,15 @@ else echo "If user wishes to perform annotations, they should include the --with-panther / -p flag." fi -# Prepare Semblans file structure -mkdir -p include &>/dev/null -mkdir -p lib &>/dev/null -mkdir -p external &>/dev/null +# Prepare Semblans directory structure +rm -rf ./include ./lib ./external ./data + +mkdir -p ./include +mkdir -p ./lib +mkdir -p ./external + if $install_panther; then - mkdir -p data &>/dev/null + mkdir -p ./data fi #======================================================================== @@ -82,7 +85,6 @@ fi echo " Installing libconfini library ..." wget -q https://github.com/madmurphy/libconfini/releases/download/1.16.4/libconfini-1.16.4-x86_64-bin.tar.xz tar -xf libconfini-1.16.4-x86_64-bin.tar.xz -rm -rf ./include/libconfini mkdir -p ./include/libconfini mv ./usr/include/* ./include/libconfini/ mv ./usr/lib/* ./lib/ From 67ed4fa53ae803be648ed5dc514896350a52442e Mon Sep 17 00:00:00 2001 From: Karolis Ramanauskas Date: Sun, 23 Jun 2024 12:22:33 -0500 Subject: [PATCH 08/13] Remove unnecessary "make" commands (there is no Makefile here). Previous step builds boost. --- install.sh | 2 -- 1 file changed, 2 deletions(-) diff --git a/install.sh b/install.sh index f9f87713e..b4dd3f91e 100755 --- a/install.sh +++ b/install.sh @@ -61,8 +61,6 @@ if [ ! -f ./lib/libboost_filesystem.a ] || cd boost_1_81_0 || return 1 ./bootstrap.sh --prefix=../ ./b2 install cxxflags="-std=c++11" link=static - make - make install mv LICENSE_1_0.txt ../include/boost/ cd .. rm -rf boost_1_81_0* From f385c649d18eb84d79d84852f861141d4337bda4 Mon Sep 17 00:00:00 2001 From: Karolis Ramanauskas Date: Sun, 23 Jun 2024 12:29:23 -0500 Subject: [PATCH 09/13] Listing the dependencies that the user must install themselves in the README. --- README.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/README.md b/README.md index 568e0396f..fd18df922 100644 --- a/README.md +++ b/README.md @@ -14,6 +14,12 @@ All documentation for Semblans can be found in the [wiki](https://github.com/gla # Installation +**Dependencies**: Semblans will install most of the dependencies it requires, but make sure you have working installations of: + - [**bowtie2**](https://bowtie-bio.sourceforge.net/bowtie2/index.shtml) + - [**jellyfish**](https://genome.umd.edu/jellyfish.html) + - [**salmon**](https://salmon.readthedocs.io/en/latest/salmon.html) + - [**samtools**](http://www.htslib.org) + If the user has downloaded a pre-compiled Semblans release, this step is not necessary. To install Semblans, navigate to its root directory and then call: ``` ./install.sh From 3865574643b4e568d09dc14608e4a41111ccf3f6 Mon Sep 17 00:00:00 2001 From: Karolis Ramanauskas Date: Sun, 23 Jun 2024 12:35:08 -0500 Subject: [PATCH 10/13] Fix dependency list in README.md --- README.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index fd18df922..8598ad588 100644 --- a/README.md +++ b/README.md @@ -15,10 +15,10 @@ All documentation for Semblans can be found in the [wiki](https://github.com/gla # Installation **Dependencies**: Semblans will install most of the dependencies it requires, but make sure you have working installations of: - - [**bowtie2**](https://bowtie-bio.sourceforge.net/bowtie2/index.shtml) - - [**jellyfish**](https://genome.umd.edu/jellyfish.html) - - [**salmon**](https://salmon.readthedocs.io/en/latest/salmon.html) - - [**samtools**](http://www.htslib.org) +- [**bowtie2**](https://bowtie-bio.sourceforge.net/bowtie2/index.shtml) +- [**jellyfish**](https://genome.umd.edu/jellyfish.html) +- [**salmon**](https://salmon.readthedocs.io/en/latest/salmon.html) +- [**samtools**](http://www.htslib.org) If the user has downloaded a pre-compiled Semblans release, this step is not necessary. To install Semblans, navigate to its root directory and then call: ``` From 30cb545fd94c92aed455ff66586880f11541e5be Mon Sep 17 00:00:00 2001 From: Karolis Ramanauskas Date: Sun, 23 Jun 2024 12:43:23 -0500 Subject: [PATCH 11/13] Updates installation instructions in the README.md file. --- README.md | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 8598ad588..ec332da78 100644 --- a/README.md +++ b/README.md @@ -20,14 +20,20 @@ All documentation for Semblans can be found in the [wiki](https://github.com/gla - [**salmon**](https://salmon.readthedocs.io/en/latest/salmon.html) - [**samtools**](http://www.htslib.org) -If the user has downloaded a pre-compiled Semblans release, this step is not necessary. To install Semblans, navigate to its root directory and then call: +On Ubuntu this can be done by running: +```bash +sudo apt update +sudo apt install bowtie2 jellyfish salmon samtools ``` + +If the user has downloaded a pre-compiled Semblans release, this step is not necessary. To install Semblans, navigate to its root directory and then call: +```bash ./install.sh ``` Please allow several minutes for Semblans to set up the necessary packages. By default, Semblans will not retrieve the PantherDB functional protein database for sequence annotation. **If the user intends to utilize Semblans' annotation functionality, they should instead call the following installation command: -``` +```bash ./install.sh --with-panther ``` **Be aware that the PantherDB database is large (~17GB compressed; ~80GB uncompressed), and can take some time to download.** @@ -35,8 +41,14 @@ By default, Semblans will not retrieve the PantherDB functional protein database # Quick Start / Test data Included with Semblans is a directory called 'examples'. This directory contains a very small short read dataset ("ChloroSubSet") for testing/verifying functionality of the Semblans pipeline. To test, uncompress the data from **ChloroSubSet.tar.gz**. The user should then **ensure they have a reference proteome**, as one is necessary for several of the pipeline's postprocessing stages. Links to broad, kingdom-level reference proteomes are hosted at the bottom of this document. In this example, I use the kingdom-level plant proteome. Once prepared, the user may call: -``` -semblans --left ChloroSubSet_1.fq --right ChloroSubSet_2.fq --prefix ChloroSubSet --ref-proteome ensembl_plant.pep.all.fa --threads 8 --ram 10 +```bash +semblans \ +--left ChloroSubSet_1.fq \ +--right ChloroSubSet_2.fq \ +--prefix ChloroSubSet \ +--ref-proteome ensembl_plant.pep.all.fa \ +--threads 8 \ +--ram 10 ``` Some users may experience issues, particularly during the transcript assembly phase during Trinity. Common errors and solutions are hosted on our GitHub's [wiki page](https://github.com/gladshire/Semblans/wiki/Common-Errors-&-Solutions#issues-at-trinity-stage). As cataloguing these is an ongoing process, we urge users to post an issue on the Semblans repository page detailing their problem if it persists or is otherwise unaddressed by this page. From 17dbcc34c5af31800c30598c9dc7958ccff1f0ab Mon Sep 17 00:00:00 2001 From: Karolis Ramanauskas Date: Sun, 23 Jun 2024 12:46:51 -0500 Subject: [PATCH 12/13] Example command should not require eight threads. --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index ec332da78..f251df87e 100644 --- a/README.md +++ b/README.md @@ -47,7 +47,7 @@ semblans \ --right ChloroSubSet_2.fq \ --prefix ChloroSubSet \ --ref-proteome ensembl_plant.pep.all.fa \ ---threads 8 \ +--threads 4 \ --ram 10 ``` Some users may experience issues, particularly during the transcript assembly phase during Trinity. Common errors and solutions are hosted on our GitHub's [wiki page](https://github.com/gladshire/Semblans/wiki/Common-Errors-&-Solutions#issues-at-trinity-stage). As cataloguing these is an ongoing process, we urge users to post an issue on the Semblans repository page detailing their problem if it persists or is otherwise unaddressed by this page. From b87eff01dde501449499d5dac54d2256c7f89db5 Mon Sep 17 00:00:00 2001 From: Karolis Ramanauskas Date: Sun, 23 Jun 2024 12:53:27 -0500 Subject: [PATCH 13/13] More dependencies, Trinity does not run without python3 and numpy installed. --- README.md | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index f251df87e..0d93bc5f7 100644 --- a/README.md +++ b/README.md @@ -12,20 +12,23 @@ Through the collation of several external packages and the leveraging of C++ dat All documentation for Semblans can be found in the [wiki](https://github.com/gladshire/Semblans/wiki) -# Installation +# Dependencies -**Dependencies**: Semblans will install most of the dependencies it requires, but make sure you have working installations of: +Semblans will install most of the dependencies it requires, but make sure you have working installations of: - [**bowtie2**](https://bowtie-bio.sourceforge.net/bowtie2/index.shtml) - [**jellyfish**](https://genome.umd.edu/jellyfish.html) - [**salmon**](https://salmon.readthedocs.io/en/latest/salmon.html) - [**samtools**](http://www.htslib.org) +- [**numpy**](https://numpy.org) On Ubuntu this can be done by running: ```bash sudo apt update -sudo apt install bowtie2 jellyfish salmon samtools +sudo apt install bowtie2 jellyfish salmon samtools python3-numpy ``` +# Installation + If the user has downloaded a pre-compiled Semblans release, this step is not necessary. To install Semblans, navigate to its root directory and then call: ```bash ./install.sh