Skip to content

2. Commands

Andreas Sjödin edited this page Nov 23, 2023 · 14 revisions

Regular user: Commands Overview

Nanometa Live incorporates a variety of terminal commands for different functionalities. Here is a quick summary. Detailed usage instructions can be found in the USAGE section.

nanometa-demo

This command sets up a demo project with tutorial data, providing a convenient way to explore the functionalities of Nanometa Live without setting up an entire project from scratch. The nanometa-demo command automatically downloads tutorial data and configures the project for immediate use.

Basic Usage:

nanometa-demo [-h] [--config CONFIG] [-p PATH] [--version]

Arguments:

  • -h, --help: Shows the help message, detailing all available command-line arguments.
  • --config: Specifies the path to the configuration file. By default, it uses 'config.yaml'.
  • -p, --path: Provides the path to the project directory where the demo project will be set up.
  • --version: Outputs the current version of the script.

This command is ideal for new users or for those looking to quickly test new features in a controlled environment.


nanometa-new

The nanometa-new command initializes a new project with the specified parameters. Below is the full list of available arguments:

Basic Usage

nanometa-new [-h] -p PATH [-c CONFIG] [additional options]

Main arguments

  • -h, --help: Show help message and exit.
  • -p PATH, --path PATH: Specifies the path to the project directory (Required).
  • -c CONFIG, --config CONFIG: The name of the config file. Default is 'config.yaml'.
  • --version: Shows the current version of the script.

Analysis Configuration

  • --analysis_name ANALYSIS_NAME: Sets the name of the analysis.
  • --species_of_interest SPECIES_OF_INTEREST: Path to a file containing species of interest.
  • --danger_lower_limit DANGER_LOWER_LIMIT: Sets the danger cutoff for species abundance.

GUI Configuration

  • --taxonomic_hierarchy_letters [TAXONOMIC_HIERARCHY_LETTERS ...]: Specifies the taxonomic hierarchy levels used by Kraken2.
  • --default_hierarchy_letters [DEFAULT_HIERARCHY_LETTERS ...]: Sets the default taxonomy levels displayed in the Sankey plot.
  • --default_reads_per_level DEFAULT_READS_PER_LEVEL: Sets the default number of entries per taxonomy level in the Sankey plot.
  • --update_interval_seconds UPDATE_INTERVAL_SECONDS: Sets the GUI update frequency in seconds.
  • --gui_port GUI_PORT: Specifies the GUI port number.

Workflow Configuration

  • --local_package_management LOCAL_PACKAGE_MANAGEMENT: Specifies the package management for Snakemake (None/conda).
  • --conda_frontend CONDA_FRONTEND: Specifies the Conda frontend to use (mamba/conda).
  • --nanopore_output_directory NANOPORE_OUTPUT_DIRECTORY: Path to the Nanopore output directory.
  • --remove_temp_files REMOVE_TEMP_FILES: Determines whether to remove temporary files (yes/no).
  • --check_intervals_seconds CHECK_INTERVALS_SECONDS: Sets the workflow frequency in seconds.
  • --snakemake_cores SNAKEMAKE_CORES: Specifies the number of cores for Snakemake.
  • --kraken_cores KRAKEN_CORES: Specifies the number of cores for Kraken2.
  • --validation_cores VALIDATION_CORES: Specifies the number of cores for KrakenTools.
  • --blast_cores BLAST_CORES: Specifies the number of cores for BLAST.

Database and Tool Configuration

  • --kraken_db KRAKEN_DB: Specifies the path to the Kraken2 database.
  • --kraken_taxonomy KRAKEN_TAXONOMY: Sets the type of taxonomy for Kraken (gtdb/ncbi).
  • --kraken_memory_mapping KRAKEN_MEMORY_MAPPING: Specifies memory mapping options for Kraken2.
  • --blast_validation BLAST_VALIDATION: Enables or disables BLAST validation.
  • --min_perc_identity MIN_PERC_IDENTITY: Sets the minimum percent identity for BLAST.
  • --e_val_cutoff E_VAL_CUTOFF: Sets the E-value cutoff for BLAST.

nanometa-prepare

The nanometa-prepare command sets up the necessary data for your project. Once this command is run, the program can operate without an internet connection.

Basic Usage

nanometa-prepare [-h] [-x PREFIX] [--config CONFIG] [-p PATH] [--mode {gtdb-api,gtdb-file,local-species,local-taxid}] [--version]

Arguments

  • -h, --help: Show this help message and exit.
  • -x PREFIX, --prefix PREFIX: Specifies the prefix for the output CSV file.
  • --config CONFIG: Path to the configuration file. Default is 'config.yaml'.
  • -p PATH, --path PATH: Specifies the path to the project directory.
  • --version: Shows the current version of the script.

Mode of Operation

  • --mode {gtdb-api,gtdb-file,local-species,local-taxid}: Sets the mode of operation for handling genome files. Can be one of the following:
    • gtdb-api: Fetches genome information via GTDB API (Default).
    • gtdb-file: Utilizes a GTDB metadata file, either from a local source or an online location, for genome information.
    • local-species: Retrieves genome data from a local directory, using species names in file names.
    • local-taxid: Retrieves genome data from a local directory, using taxonomy IDs in file names.

nanometa-live

Launches the Nanometa Live pipeline for real-time metagenomic analysis.

Basic Usage:

nanometa-live [-h] [--config CONFIG] [--version] [-p PATH]

Options:

  • -h, --help: Displays the help message, including a list of available commands and options.
  • -p, --path: Defines the path to the directory where the project resides.
  • --config: Specifies the path to the project's configuration file. The default configuration file is named 'config.yaml'.
  • --version: Outputs the current version of the Nanometa Live script.

nanometa-sim

Simulates the output of nanopore batch files to test the pipeline in real-time.

Basic Usage:

nanometa-sim [-h] -i INPUT_FOLDER -o OUTPUT_FOLDER [--min_delay MIN_DELAY] [--max_delay MAX_DELAY] [--version]

Arguments:

  • -h, --help: Displays help message and available commands.
  • -i, --input_folder: Specifies the folder containing test .fastq.gz files to be used for simulation.
  • -o, --output_folder: Specifies the directory where the simulated nanopore output will be written.
  • --min_delay: Sets the minimum time interval (in minutes) between copying files to the output folder. Useful for controlling the simulation speed.
  • --max_delay: Sets the maximum time interval (in minutes) between copying files to the output folder. Useful for adding variability to the simulation.
  • --version: Shows the current version of the script.

Expert user: Commands Overview

nanometa-backend

Runs the backend workflow separately from the front-end GUI. This command is automatically invoked when using nanometa-live.

Basic Usage:

nanometa-backend [-h] [--config CONFIG] [--version] [-p PATH]

Arguments:

  • -h, --help: Displays the help message, listing available commands.
  • --config: Specifies the path to the configuration file. The default is 'config.yaml'.
  • --version: Outputs the current version of the script.
  • -p, --path: Designates the path to the project directory where the backend workflow will operate.

This command essentially runs the Snakemake workflow at a set time interval, managing the backend operations of Nanometa Live.


nanometa-gui

This command runs the Graphical User Interface (GUI) separately from the backend workflow. This allows you to review data from previous analyses without the necessity of re-running the entire workflow. The nanometa-gui command is automatically invoked when using the nanometa-live command.

Basic Usage:

nanometa-gui [-h] [--config CONFIG] [--version] [-p PATH]

Arguments:

  • -h, --help: Displays the help message and provides a list of available command-line arguments.
  • --config: Specifies the path to the configuration file. The default file used is 'config.yaml'.
  • --version: Outputs the current version of the script.
  • -p, --path: Designates the path to the project directory where the GUI will fetch the data for display.

This command is particularly useful for conducting post-analysis reviews, offering a focused view via the GUI without engaging the backend.