1. Preparation

Important!

In the following sections whenever a “parameter” in brackets {} is shown, the intention is to fill in your own filename or value. Each parameter will be explained in the section in detail.

Tip

Notice the small “Copy to Clipboard” button on the right hand side of each code chunk, this can be used to copy the code.

1.1 Singularity container

This workflow is distributed as a self-contained Singularity container image, which includes all necessary software dependencies and helper scripts. This simplifies setup considerably. It is required that Singularity version 3.x or later is available on your system. If you are working with a high performance computing (HPC) system, then this will likely already be installed and available for use. Try writing singularity --help in your terminal (that’s connected to the HPC system) and see if the command is recognized.

1.2 Download pre-built image

The singularity container needs an image file to activate the precompiled work environment. You can download the required workflow image file (imam_workflow.sif) directly through the terminal via:

wget https://github.com/LucvZon/illumina-metagenomic-analysis-manual/releases/download/v1.0.1/imam_workflow.sif

Or go to the github page and manually download it there, then transfer it to your HPC system.

1.3 Verify container

You can test basic execution:

singularity --version
singularity exec imam_workflow.sif echo "Container is accessible!"

To check more in depth, you can start an interactive shell inside the build container and run some checks. singularity shell imam_workflow.sif will drop you into a shell running inside the container. The conda environment needed for this workflow is automatically active on start-up of the interactive shell. All the tools of the conda environment will therefore be ready to use.

Please note that you do not have to run conda activate {environment} to activate the environment – everything is inside imam_workflow.sif. If you’re curious about the conda environment we’re using, you can check it out here

singularity shell imam_workflow.sif # Start interactive shell
fastp --help # Check one of the tools from the conda environment
which python # Check python version of the conda environment
Note

We are now ready to start executing the code to perform quality control of our raw Illumina sequencing data in the next chapter.