This is a list of all the tools redistributed with SqueezeMeta, and a brief description of the custom modifications (if any) that were applied to each tool.
We vendor third-party software since
- The pipeline is complex and we want to minimize the burden on our users. We aim for SqueezeMeta to depend only on libraries that can be installed via standard packaging tools (apt, yum, etc)
- Some tools require modifications (e.g. parametrized rather than hardcoded database locations) to work well within our pipeline.
A given tool should be replaceable by its original version if
- It has no custom patch listed
- It has ONLY the "Work within the SQM directory structure" patch listed
In order to control which software is called by SqueezeMeta, modify the "External software" section of the SqueezeMeta/scripts/SqueezeMeta_conf.pl
E.g. changing $spades_soft = "$installpath/bin/SPAdes/spades.py";
to $spades_soft = "spades.py";
will make SqueezeMeta use the SPAdes version in $PATH
rather than the vendored one.
Note that some of these tools require additional software and libraries to be available via PATH
and LD_LIBRARY_PATH
. This is also indicated in the SqueezeMeta_conf.pl
file.
SqueezeMeta redistributes the following third-party software:
- trimmomatic
- Megahit
- Spades
- Work within the SQM directory structure
- canu
- Work within the SQM directory structure
- prinseq
- kmer-db
- CD-HIT
- Recompile with MAX_SEQ=20000000
- amos
- Work within the SQM directory structure
- Add multithreading in nucmer calls (minimus2)
- Add a custom minimus2 script for the SQM-seqmerge mode
- mummer
- hmmer
- barrnap
- Work within the SQM directory structure
- Add
-dbdir
as an additional command line argument
- aragorn
- prodigal
- DIAMOND
- bwa
- minimap2
- bowtie2
- MaxBin
- Work within the SQM directory structure
- Add
-markerpath
as an additional command line argument
- MetaBAT
- DAS tool
- Add extra logging, remove some superfluous error messages
- Explicitly load
library(methods)
in DAS_Tool.R since Rscript does not load it on startup (even if R console does)
- checkm
- Work within the SQM directory structure
- Port to python3
- comparem
- Work within the SQM directory structure
- Port to python3
- MinPath
- Work within the SQM directory structure
- Port to python3
- RDP classifier
- pullseq
- Short-Pair
- Work within the SQM directory structure
- Port to python3
- SAMtools
- Mothur
- Flye