Installation
Nextflow can be used on any POSIX-compatible system (Linux, macOS, etc), and on Windows through WSL. This page describes how to install Nextflow.
Note
New versions of Nextflow are released regularly. See Updating Nextflow for more information about Nextflow release cadence, how to update Nextflow, and how select your version of Nextflow.
Requirements
Nextflow requires Bash 3.2 (or later) and Java 17 (or later, up to 23) to be installed. To see which version of Java you have, run the following command:
java -version
Changed in version 24.11.0-edge: Support for Java versions prior to 17 was dropped.
If you don’t have a compatible version of Java installed, it is recommended that you install it through SDKMAN!, and that you use the latest Long-Term-Support (LTS) version of Temurin. See Which version of JDK should I use? for more information about different versions of Java.
To install Java with SDKMAN:
-
curl -s https://get.sdkman.io | bash
Open a new terminal.
Install Java:
sdk install java 17.0.10-tem
Confirm that Java is installed correctly:
java -version
Install Nextflow
Nextflow is distributed as an easy to use self-installing package. It is also distributed via Conda and as a standalone distribution.
Self-installing
In order to make the installation process as simple as possible, Nextflow is distributed as a self-installing package.
To install Nextflow with the self-installing package:
Download Nextflow:
curl -s https://get.nextflow.io | bash
Tip
Set
export CAPSULE_LOG=none
to make the installation logs less verbose.Make Nextflow executable:
chmod +x nextflow
Move Nextflow into an executable path. For example:
mkdir -p $HOME/.local/bin/ mv nextflow $HOME/.local/bin/
Tip
Ensure the directory
$HOME/.local/bin/
is included in yourPATH
variable. Temporarily add this directory toPATH
by settingexport PATH="$PATH:$HOME/.local/bin"
. Add the directory toPATH
permanently by adding the export command to your shell configuration file, such as~/.bashrc
or~/.zshrc
. Alternatively, move thenextflow
executable to a directory already in yourPATH
.Warning
Nextflow will update its executable during the self update process, therefore the update can fail if the executable is placed in a directory with restricted permissions.
Confirm Nextflow is installed correctly:
nextflow info
Conda
To install Nextflow with Conda:
Add the Bioconda and conda-forge channels to your Conda configuration:
conda config --add channels bioconda conda config --add channels conda-forge
Create an environment:
conda create --name nf_env nextflow
Active the environment:
source activate nf_env
Confirm Nextflow is installed correctly:
nextflow info
Warning
Installing Nextflow via Conda may lead to outdated versions, dependency conflicts, and Java compatibility issues. Using the self-installing package is recommended for a more reliable and up-to-date installation.
Standalone distribution
The Nextflow standalone distribution (i.e. the dist
release) is a self-contained nextflow
executable that can run without needing to download core dependencies at runtime. This distribution is useful for offline environments, as well as building and testing Nextflow locally.
To use the standalone distribution:
Download the standalone distribution from Assets section of the GitHub releases page.
Grant execution permissions to the downloaded file. For example:
chmod +x nextflow-24.10.1-dist
Use it as a drop-in replacement for
nextflow
command. For example:./nextflow-24.10.1-dist run info
Note
The standalone distribution will still download core and third-party plugins as needed at runtime.
Seqera Platform
You can launch workflows directly from Seqera Platform without installing Nextflow locally.
Launching from Seqera Platform provides you with:
User-friendly launch interfaces.
Automated cloud infrastructure creation.
Organizational user management.
Advanced analytics with resource optimization.
Seqera Cloud Basic is free for small teams. Researchers at qualifying academic institutions can apply for free access to Seqera Cloud Pro. See the Seqera Platform documentation for set-up information and tutorials to get started.