At the moment, there are three options available to install antiSMASH:
- Using the Bioconda package.
- Using one of the pre-built Docker images. A slightly larger download, but zero-fuss install on any system that can run Docker.
- A manual install, with three options to get the required dependencies:
- Using the pre-built Debian installer. This obviously is limited to Debian and related distributions.
- Using the Bioconda distribution.
- Full manual install. Most work, but most options to customise your install.
Using Bioconda#
Note: The bioconda packages are built and updated by volunteers from the bioconda project and might lag behind the official antiSMASH releases.
Bioconda is a channel for the conda package manager with a focus on bioinformatics software. Once you have bioconda installed, install antiSMASH with the following:
conda create -n antismash antismash
conda activate antismash
download-antismash-databases
conda deactivate
Later, if you want to run antiSMASH, simply call
conda activate antismash
antismash my_input.gbk
Using Docker (or podman)#
If you're not on Debian, but don't want to bother with the full-blown manual installation, there are two docker images you can use. To use the wrapper scripts with podman, just replace all mentions of "docker" in the commands below with "podman".
antiSMASH standalone#
This image includes all the required databases, no further configuration needed. It is a ~9 GB download at the moment. If you have docker installed, just grab the wrapper script and get going:
mkdir ~/bin # not required if you already have that
curl -q https://dl.secondarymetabolites.org/releases/latest/docker-run_antismash-full > ~/bin/run_antismash
chmod a+x ~/bin/run_antismash
run_antismash <input file> <output directory> [antismash options]
Note that due to the nature of the wrapper script having to do some magic mapping between your system and the container, you always need to provide input file and output directory first, and in that order.
antiSMASH standalone-lite#
This image includes everything but the PFAM and ClusterBlast databases, meaning
you still have to install those. The wrapper script assumes those databases will
live in /data/databases
, make sure to tweak the script and the rest of the
install instructions if you want to change this location.
First, grab the wrapper script:
mkdir ~/bin # not required if you already have that
curl -q https://dl.secondarymetabolites.org/releases/latest/docker-run_antismash-lite > ~/bin/run_antismash
chmod a+x ~/bin/run_antismash
The easiest way to download the antiSMASH databases is using the database downloader script.
Again the wrapper script assumes your databases live in /data/databases
. If you want to use
a different location, just provide that to the download_antismash_databases
script as the parameter.
curl -q https://dl.secondarymetabolites.org/releases/latest/download_antismash_databases_docker > ~/bin/download_antismash_databases
chmod a+x ~/bin/download_antismash_databases
download_antismash_databases
Note that due to the nature of the wrapper script having to do some magic mapping between your system and the container, you always need to provide input file and output directory first, and in that order:
run_antismash <input file> <output directory> [antismash options]
Manual install#
antiSMASH relies on a number of external tools to perform its analyses. You need to install those before installing antiSMASH. Use one of the methods mentioned below to get all relevant dependencies, then continue with installing the latest antiSMASH release to install antiSMASH itself.
Dependencies via Debian/Ubuntu#
For 64bit AMD/Intel Debian or Ubuntu machines, all the required dependencies are available either from the official Debian repositories, or from the custom antiSMASH repository.
First add the antiSMASH debian repository:
sudo apt-get update
sudo apt-get install -y apt-transport-https
sudo wget http://dl.secondarymetabolites.org/antismash-stretch.list -O /etc/apt/sources.list.d/antismash.list
sudo wget -q -O- http://dl.secondarymetabolites.org/antismash.asc | sudo apt-key add -
sudo apt-get update
then install the binaries themselves
sudo apt-get install hmmer2 hmmer diamond-aligner fasttree prodigal ncbi-blast+
For versions older than 8.0, add glimmerhmm
if you want to support fungal gene detection, but we
strongly recommend using a purpose-built fungal gene finding tool instead.
For versions older than 7.0, add muscle
.
If you want to use CASSIS or the full RODEO analysis for RiPPs and agree to the MEME license, add meme-suite
.
After the dependencies are installed, create a Python virtual environment.
Dependencies via Bioconda#
Bioconda is a channel for the conda package manager with a focus on bioinformatics software. Once you have bioconda installed, install the dependencies:
conda create -n antismash
conda activate antismash
conda install hmmer2 hmmer diamond fasttree prodigal blast
For versions older than 8.0, add glimmerhmm
if you want to support fungal gene detection, but we
strongly recommend using a purpose-built fungal gene finding tool instead.
For versions older than 7.0, add bioconda/label/cf201901::muscle
.
If you want to use CASSIS or the full RODEO analysis for RiPPs and agree to the MEME license,
also run conda install meme==4.11.2
.
Later, if you want to run antiSMASH, simply call
conda activate antismash
antismash my_input.gbk
After the dependencies are installed, continue with installing the latest antiSMASH release.
Dependencies via Homebrew#
Homebrew is a package manager for macOS (and Linux). It comes with a great selection of bioinformatics packages.
First, add the brewsci/bio
tap to get access to the bioinformatics packages.
brew tap brewsci/bio
then install the binaries themselves
brew install brewsci/bio/hmmer@2 hmmer diamond fasttree prodigal blast
For versions older than 8.0, add brewsci/science/glimmerhmm
if you want to support fungal gene detection, but we
strongly recommend using a purpose-built fungal gene finding tool instead.
Versions older than 7.0 also need muscle
, but homebrew only ships version 5 of that tool which no longer supports
the features antiSMASH requires muscle
for. We recommend using a more recent antiSMASH or building muscle from source.
If you want to use CASSIS or the full RODEO analysis for RiPPs and agree to the MEME license, run
brew install https://raw.githubusercontent.com/brewsci/homebrew-bio/12b4ef4679c5c6ed21ab7c046c2709c4cefb4338/Formula/meme.rb
to install MEME in version 4.11.2
After the dependencies are installed, create a Python virtual environment.
Full manual install#
Install the following dependencies:
- diamond (versions 0.9.22, 0.9.24, 2.0.7, 2.0.9, and 2.0.15 tested, 2.1.7 breaks with antiSMASH 7.0.0 and older)
- fasttree (versions 2.1.9 and 2.1.11 tested)
- hmmer2 (version 2.3.2 tested, append a 2 to all hmmer2 executables to avoid conflict with hmmer3 executable names, like hmmalign -> hmmalign2)
- hmmer3 (3.1b2 tested)
- meme (version 4.11.2 required for meme specifically, which is only used in the cassis module, fimo tested with 5.5.2)
- NCBI blast+ (versions 2.10.0 and 2.11.0 tested)
- prodigal (version 2.6.3 tested)
- python (versions 3.9, 3.10, and 3.11 tested, any version >= 3.9.0 should work)
- python-virtualenv (not needed, but highly recommended)
For versions of antiSMASH prior to 8.0, there are additional requirements: - GlimmerHMM (version 3.0.4 tested)
For versions of antiSMASH prior to 7.0, there are additional requirements: - muscle (versions 3.8.31 and 3.8.1551 tested, version 5 and above are not compatible)
After the dependencies are installed, create a Python virtual environment.
Create a Python virtual environment#
Not strictly necessary, but highly recommended if you're not already using conda
.
- Create and activate a virtual environment (this can be skipped, but is highly recommended)
virtualenv -p $(which python3) ~/asenv
source ~/asenv/bin/activate
Later, if you want to run antiSMASH, simply call
source ~/asenv/bin/activate
antismash my_input.gbk
Now, continue with installing the latest antiSMASH release.
Installing the latest antiSMASH release#
See here for all release versions, adjust the instructions below as required.
- Download and extract the antiSMASH source (using 6.0.0 as an example, see above for other versions):
wget https://dl.secondarymetabolites.org/releases/6.0.0/antismash-6.0.0.tar.gz
tar -zxf antismash-6.0.0.tar.gz
- Install antiSMASH (again, using 6.0 as an example, the name will match the download step):
pip install ./antismash-6.0.0
download-antismash-databases
Prepare data files and performance caches with the following (NOTE: for versions before 7.0, change --prepare-data
to --check-prereqs
)
antismash --prepare-data
If you want to see the available command line options, use
antismash --help
or, for a full list of all available options, including debug options
antismash --help-showall