Pipe Setup

Pipe Settings Location

The Default CUT&RUN-Flow settings used by the system are located in CUT&RUN-Flow’s installation directory. This is by default located in the user’s $HOME directory as such:

# PIpe Defaults Configuration:
$NXF_HOME/assets/rennelab/CnR-flow/nextflow.config  # Pipe Executor, Dependency, Resource, etc. Configuration
#Default: $HOME/.nextflow/assets/rennelab/CnR-flow/nextflow.config

It is recommended that dependency configuration and other pipe-level settings be configured here. An example of this file is provided in Pipe nextflow.config.

Note

If any settings are provided in both the above Pipe nextflow.config file and the Task nextflow.config file located in the task directory, the task-directory settings will take precedence. For more information on Nextflow configuration precedence, see config.

Dependencies

The following external dependencies are utilized by CUT&RUN-Flow:

Dependencies

Dependency

Def. Ver.

Lowest Ver.

Highest Ver.

Citation

Default Conda

Nextflow

20.07.1

20.07.1

20.07.1

[Nextflow_Citation]

N/A

UCSC-faCount

366

366

366

[faCount_Citation]

bioconda::ucsc-facount=366=*_0’

Bowtie2

2.4.1

2.4.1

2.4.1

[Bowtie2_Citation]

bioconda::bowtie2=2.4.1

Samtools

1.9

1.9

1.9

[Samtools_Citation]

bioconda::samtools=1.9=*_11

FastQC

0.11.9

0.11.9

0.11.9

[FastQC_Citation]

bioconda::fastqc=0.11.9

Trimmomatic

0.39

0.39

0.39

[Trimmomatic_Citation]

bioconda::trimmomatic=0.39

CUTRUNTools

20190822

20190822

20190822

[CUTRUNTools_Citation]

N/A

bedtools

2.29.2

2.29.2

2.29.2

[bedtools_Citation]

bioconda::bedtools=2.29.2

UCSC-bedGraphToBigWig

377

377

377

[bedGraphToBigWig_Citation]

libgcc-ng libpng conda-forge::libuuid mysql-connector-c openssl zlib bioconda::ucsc-bedgraphtobigwig=377

MACS2

2.2.6

2.2.6

2.2.6

[MACS2_Citation]

bioconda::macs2=2.2.6

R

3.6.0

3.6.0

3.6.0

[R_Citation]

r=3.6.0

SEACR

1.3

1.3

1.3

[SEACR_Citation]

r=3.6.0 bioconda::bedtools=2.29.2

Dependency Config

Conda/Bioconda

CUT&RUN-FLow comes preconfigured to use the Conda package manager, along with tools from the Bioconda [Bioconda_Citation] package suite for automated dependency handling. Nextflow automatically acquires, stores, and activates each conda environment as it is required in the pipeline. For more information on Nextflow’s, usage of conda, see conda.
// -- External Conda Environments:
facount_conda          = 'bioconda::ucsc-facount=366=*_0'
bowtie2_conda          = 'bioconda::bowtie2=2.4.1'
fastqc_conda           = 'bioconda::fastqc=0.11.9'
trimmomatic_conda      = 'bioconda::trimmomatic=0.39'
bedtools_conda         = 'bioconda::bedtools=2.29.2'
macs2_conda            = 'bioconda::macs2=2.2.6'
R_conda                = 'r=3.6.0'
samtools_conda         = 'bioconda::samtools=1.9=*_11'
bedgraphtobigwig_conda = 'libgcc-ng libpng conda-forge::libuuid mysql-connector-c openssl zlib bioconda::ucsc-bedgraphtobigwig=377'

// -- Packaged/Installed Tool Conda Environments (Changes should not be necessary):
seacr_conda         = "${params.R_conda} ${params.bedtools_conda}"
//kseqtest_conda      = ""  // (uses binary, should not be needed)

// -- Comprehensive Conda Environment (If provided, is used for all execution)
//all_conda           = ""

Modules

CUT&RUN-FLow comes with an alternative “easy” configuration option utilizng Environment Modules. Each conda dependency paramater has an equivalent “module” paramater. Each module will then be loaded at runtime for the appropriate steps of the pipeline. For more information on Nextflow’s use of Environment Modules, see process (“modules section”).
// Dependency Configuration Using Environment Modules
// (values will vary depending on system)
// To enable, comment ("//") / delete the conda-configuration and uncomment this configuration.
// -- External Tool Modules:
//facount_module          = ""  // Ex: "ucsc/20200320"
//bowtie2_module          = ""  // Ex: "bowtie2/2.3.5.1"
//fastqc_module           = ""  // Ex: "fastqc/0.11.7"
//trimmomatic_module      = ""  // Ex: "trimmomatic/0.39"
//bedtools_module         = ""  // Ex: "bedtools/2.29.2"
//macs2_module            = ""  // Ex: "macs/2.2.7.1"
//R_module                = ""  // Ex: "R/4.0"
//bedgraphtobigwig_module = ""  // Ex: "ucsc/20200320"

// -- Packaged/Installed Tool Modules (Changes should not be necessary):
//seacr_module         = "${params.R_module}:${params.bedtools_module}"
//kseqtest_module      = ""  // (uses binary, should not be needed)

// -- Comprehensive Tool Modules (If provided, is used for all execution)
//all_module           = ""  // Ex: "cutruntools/20200104"

Executable System Calls

To accommodate custom module or local setups, each required dependency system call can be customized:
// System Call Settings
//   Call executed on the system, defaults assume that each tool is available
//     on the system PATH (as with conda setup)
//   Can replace with direct path as desired:
//   Ex:
//        samtools_call = "samtools"
//     or samtools_call = "/path/to/samtools/dir/samtools" 
java_call             = "java"
bowtie2_build_call    = "bowtie2-build"
facount_call          = "faCount"
samtools_call         = "samtools"
fastqc_call           = "fastqc"
trimmomatic_call      = "trimmomatic"
bowtie2_call          = "bowtie2"
bedtools_call         = "bedtools"
macs2_call            = "macs2"
bedgraphtobigwig_call = "bedGraphToBigWig"
kseqtest_call         = "${projectDir}/CUTRUNTools/kseq_test"  //Installed with --mode initiate
seacr_call            = "${projectDir}/SEACR/SEACR_1.3.sh"     //Packaged with download
seacr_R_script        = "${projectDir}/SEACR/SEACR_1.3.R"      //Packaged with download