loganylchen/NanoRNAMod
None
Overview
Latest release: v0.1.5, Last update: 2026-05-19
Share link: https://snakemake.github.io/snakemake-workflow-catalog?wf=loganylchen/NanoRNAMod
Quality control: linting: failed formatting: failed
Deployment
Step 1: Install Snakemake and Snakedeploy
Snakemake and Snakedeploy are best installed via the Conda package manager. It is recommended to install conda via Miniforge. Run
conda create -c conda-forge -c bioconda -c nodefaults --name snakemake snakemake snakedeploy
to install both Snakemake and Snakedeploy in an isolated environment. For all following commands ensure that this environment is activated via
conda activate snakemake
For other installation methods, refer to the Snakemake and Snakedeploy documentation.
Step 2: Deploy workflow
With Snakemake and Snakedeploy installed, the workflow can be deployed as follows. First, create an appropriate project working directory on your system and enter it:
mkdir -p path/to/project-workdir
cd path/to/project-workdir
In all following steps, we will assume that you are inside of that directory. Then run
snakedeploy deploy-workflow https://github.com/loganylchen/NanoRNAMod . --tag v0.1.5
Snakedeploy will create two folders, workflow and config. The former contains the deployment of the chosen workflow as a Snakemake module, the latter contains configuration files which will be modified in the next step in order to configure the workflow to your needs.
Step 3: Configure workflow
To configure the workflow, adapt config/config.yml to your needs following the instructions below.
Step 4: Run workflow
The deployment method is controlled using the --software-deployment-method (short --sdm) argument.
To run the workflow with automatic deployment of all required software via conda/mamba, use
snakemake --cores all --sdm conda
Snakemake will automatically detect the main Snakefile in the workflow subfolder and execute the workflow module that has been defined by the deployment in step 2.
For further options such as cluster and cloud execution, see the docs.
Step 5: Generate report
After finalizing your data analysis, you can automatically generate an interactive visual HTML report for inspection of results together with parameters and code inside of the browser using
snakemake --report report.zip
Configuration
The following section is imported from the workflow’s config/README.md.
Describe how to configure the workflow (using config.yaml and maybe additional files). All of them need to be present with example entries inside of the config folder.
Workflow parameters
The following table is automatically parsed from the workflow’s config.schema.y(a)ml file.
Parameter |
Type |
Description |
Required |
Default |
|---|---|---|---|---|
samples |
string |
yes |
||
project |
string |
yes |
||
reference |
yes |
|||
. transcriptome_fasta |
string |
yes |
||
. genome_fasta |
string |
|||
. transcriptome_gtf |
string |
|||
tools |
yes |
|||
. xpore |
||||
. . activate |
boolean |
|||
. nanocompore |
||||
. . activate |
boolean |
|||
params |
yes |
|||
. minimap2 |
string |
|||
. samtools_filtering |
string |
|||
. f5c_eventalign_full |
string |
|||
. f5c_eventalign_simple |
string |
|||
. nanocompore |
string |
|||
threads |
yes |
|||
. minimap2 |
integer |
|||
. multi_to_single |
integer |
|||
. tombo_lsc |
integer |
|||
. tombo_msc |
integer |
|||
. tombo_resquiggle |
integer |
|||
. slow5tools |
integer |
|||
. f5c |
integer |
|||
. m6anet |
integer |
|||
. nanocompore |
integer |
Linting and formatting
Linting results
1/tmp/tmpc1urpb32/loganylchen-NanoRNAMod-30e62bd/workflow/Snakefile:196: SyntaxWarning: invalid escape sequence '\d'
2 sample="[\da-zA-Z]+_?[0-9]*",
3/tmp/tmpc1urpb32/loganylchen-NanoRNAMod-30e62bd/workflow/Snakefile:197: SyntaxWarning: invalid escape sequence '\d'
4 control="[\da-zA-Z]+_?[0-9]*",
5/tmp/tmpc1urpb32/loganylchen-NanoRNAMod-30e62bd/workflow/Snakefile:198: SyntaxWarning: invalid escape sequence '\d'
6 native="[\da-zA-Z]+_?[0-9]*",
7/tmp/tmpc1urpb32/loganylchen-NanoRNAMod-30e62bd/workflow/Snakefile:201: SyntaxWarning: invalid escape sequence '\d'
8 project="[\da-zA-Z]+_?[0-9]*",
9No validator found for JSON Schema version identifier 'http://json-schema.org/draft-06/schema#'
10Defaulting to validator for JSON Schema version 'https://json-schema.org/draft/2020-12/schema'
11Note that schema file may not be validated correctly.
12No validator found for JSON Schema version identifier 'http://json-schema.org/draft-06/schema#'
13Defaulting to validator for JSON Schema version 'https://json-schema.org/draft/2020-12/schema'
14Note that schema file may not be validated correctly.
15============================================================
16NanoRNAMod — Active tools summary
17 Comparison tools (1): pybaleen
18 Per-sample tools (0): none
19 Inactive tools (6): xpore, nanocompore, differr, drummer, eligos2, epinano
20 Samples: A, B, F
21 Comparisons: A_F, B_F
22============================================================
23Lints for snakefile /tmp/tmpc1urpb32/loganylchen-NanoRNAMod-30e62bd/workflow/Snakefile:
24 * Absolute path "/scratch/..." in line 227:
25 Do not define absolute paths inside of the workflow, since this renders
26 your workflow irreproducible on other machines. Use path relative to the
27 working directory instead, or make the path configurable via a config
28 file.
29 Also see:
30 https://snakemake.readthedocs.io/en/latest/snakefiles/configuration.html#configuration
31 * Environment variable TMPDIR used but not asserted with envvars directive in line 217.:
32 Asserting existence of environment variables with the envvars directive
33 ensures proper error messages if the user fails to invoke a workflow with
34 all required environment variables defined. Further, it allows snakemake
35 to pass them on in case of distributed execution.
36 Also see:
37 https://snakemake.readthedocs.io/en/latest/snakefiles/configuration.html#environment-variables
38 * Environment variable TMPDIR used but not asserted with envvars directive in line 224.:
39 Asserting existence of environment variables with the envvars directive
40 ensures proper error messages if the user fails to invoke a workflow with
41 all required environment variables defined. Further, it allows snakemake
42 to pass them on in case of distributed execution.
43 Also see:
44 https://snakemake.readthedocs.io/en/latest/snakefiles/configuration.html#environment-variables
45 * Mixed rules and functions in same snakefile.:
46 Small one-liner functions used only once should be defined as lambda
47 expressions. Other functions should be collected in a common module, e.g.
48 'rules/common.smk'. This makes the workflow steps more readable.
49 Also see:
50 https://snakemake.readthedocs.io/en/latest/snakefiles/modularization.html#includes
51
52Lints for snakefile /tmp/tmpc1urpb32/loganylchen-NanoRNAMod-30e62bd/workflow/rules/common.smk:
53 * Mixed rules and functions in same snakefile.:
54 Small one-liner functions used only once should be defined as lambda
55 expressions. Other functions should be collected in a common module, e.g.
56 'rules/common.smk'. This makes the workflow steps more readable.
57 Also see:
58 https://snakemake.readthedocs.io/en/latest/snakefiles/modularization.html#includes
59
60Lints for rule workflow_version (line 183, /tmp/tmpc1urpb32/loganylchen-NanoRNAMod-30e62bd/workflow/rules/common.smk):
61 * No log directive defined:
62 Without a log directive, all output will be printed to the terminal. In
63 distributed environments, this means that errors are harder to discover.
64 In local environments, output of concurrent jobs will be mixed and become
65 unreadable.
66 Also see:
67 https://snakemake.readthedocs.io/en/stable/snakefiles/rules.html#log-files
68 * Migrate long run directives into scripts or notebooks:
69 Long run directives hamper workflow readability. Use the script or
70 notebook directive instead. Note that the script or notebook directive
71 does not involve boilerplate. Similar to run, you will have direct access
72 to params, input, output, and wildcards.Only use the run directive for a
73 handful of lines.
74 Also see:
75 https://snakemake.readthedocs.io/en/latest/snakefiles/rules.html#external-scripts
76 https://snakemake.readthedocs.io/en/latest/snakefiles/rules.html#jupyter-notebook-integration
77
78Lints for rule link_fastq (line 6, /tmp/tmpc1urpb32/loganylchen-NanoRNAMod-30e62bd/workflow/rules/prep_data_prep.smk):
79 * Specify a conda environment or container for each rule.:
80 This way, the used software for each specific step is documented, and the
81 workflow can be executed on any machine without prerequisites.
82 Also see:
83 https://snakemake.readthedocs.io/en/latest/snakefiles/deployment.html#integrated-package-management
84 https://snakemake.readthedocs.io/en/latest/snakefiles/deployment.html#running-jobs-in-containers
85
86Lints for rule link_blow5 (line 32, /tmp/tmpc1urpb32/loganylchen-NanoRNAMod-30e62bd/workflow/rules/prep_data_prep.smk):
87 * Specify a conda environment or container for each rule.:
88 This way, the used software for each specific step is documented, and the
89 workflow can be executed on any machine without prerequisites.
90 Also see:
91 https://snakemake.readthedocs.io/en/latest/snakefiles/deployment.html#integrated-package-management
92 https://snakemake.readthedocs.io/en/latest/snakefiles/deployment.html#running-jobs-in-containers
93
94Lints for rule xpore_run (line 58, /tmp/tmpc1urpb32/loganylchen-NanoRNAMod-30e62bd/workflow/rules/modetect_xpore.smk):
95 * Do not access input and output files individually by index in shell commands:
96 When individual access to input or output files is needed (i.e., just
97 writing '{input}' is impossible), use names ('{input.somename}') instead
98 of index based access.
99 Also see:
100 https://snakemake.readthedocs.io/en/latest/snakefiles/rules.html#rules
101
102Lints for rule prep_drummer_region (line 1, /tmp/tmpc1urpb32/loganylchen-NanoRNAMod-30e62bd/workflow/rules/modetect_drummer.smk):
103 * No log directive defined:
104 Without a log directive, all output will be printed to the terminal. In
105 distributed environments, this means that errors are harder to discover.
106 In local environments, output of concurrent jobs will be mixed and become
107 unreadable.
108 Also see:
109 https://snakemake.readthedocs.io/en/stable/snakefiles/rules.html#log-files
110
111Lints for rule eligos2_prep (line 41, /tmp/tmpc1urpb32/loganylchen-NanoRNAMod-30e62bd/workflow/rules/modetect_eligos2.smk):
112 * No log directive defined:
113 Without a log directive, all output will be printed to the terminal. In
114 distributed environments, this means that errors are harder to discover.
115 In local environments, output of concurrent jobs will be mixed and become
116 unreadable.
117 Also see:
118 https://snakemake.readthedocs.io/en/stable/snakefiles/rules.html#log-files
Formatting results
1[DEBUG]
2[DEBUG] In file "/tmp/tmpc1urpb32/loganylchen-NanoRNAMod-30e62bd/workflow/rules/modetect_nanocompore.smk": Formatted content is different from original
3[DEBUG]
4[DEBUG]
5[DEBUG] In file "/tmp/tmpc1urpb32/loganylchen-NanoRNAMod-30e62bd/workflow/rules/modetect_pybaleen.smk": Formatted content is different from original
6[DEBUG]
7[WARNING] In file "/tmp/tmpc1urpb32/loganylchen-NanoRNAMod-30e62bd/workflow/rules/modetect_drummer.smk": Keyword "output" at line 39 has comments under a value.
8 PEP8 recommends block comments appear before what they describe
9(see https://www.python.org/dev/peps/pep-0008/#id30)
10[DEBUG] In file "/tmp/tmpc1urpb32/loganylchen-NanoRNAMod-30e62bd/workflow/rules/modetect_drummer.smk": Formatted content is different from original
11[DEBUG]
12[DEBUG] In file "/tmp/tmpc1urpb32/loganylchen-NanoRNAMod-30e62bd/workflow/rules/modetect_differr.smk": Formatted content is different from original
13[DEBUG]
14[DEBUG] In file "/tmp/tmpc1urpb32/loganylchen-NanoRNAMod-30e62bd/workflow/rules/modetect_eligos2.smk": Formatted content is different from original
15[DEBUG]
16[DEBUG]
17[DEBUG] In file "/tmp/tmpc1urpb32/loganylchen-NanoRNAMod-30e62bd/workflow/rules/prep_index_f5c.smk": Formatted content is different from original
18[DEBUG]
19[DEBUG]
20[DEBUG] In file "/tmp/tmpc1urpb32/loganylchen-NanoRNAMod-30e62bd/workflow/rules/prep_reference.smk": Formatted content is different from original
21[DEBUG]
22[DEBUG]
23[DEBUG] In file "/tmp/tmpc1urpb32/loganylchen-NanoRNAMod-30e62bd/workflow/rules/modetect_xpore.smk": Formatted content is different from original
24[DEBUG]
25[DEBUG] In file "/tmp/tmpc1urpb32/loganylchen-NanoRNAMod-30e62bd/workflow/rules/polya_estimate_nanopolish.smk": Formatted content is different from original
26[DEBUG]
27[DEBUG] In file "/tmp/tmpc1urpb32/loganylchen-NanoRNAMod-30e62bd/workflow/rules/modetect_epinano.smk": Formatted content is different from original
28[DEBUG]
29[DEBUG] In file "/tmp/tmpc1urpb32/loganylchen-NanoRNAMod-30e62bd/workflow/rules/prep_data_prep.smk": Formatted content is different from original
30[DEBUG]
31[DEBUG] In file "/tmp/tmpc1urpb32/loganylchen-NanoRNAMod-30e62bd/workflow/rules/prep_align_minimap2.smk": Formatted content is different from original
32[DEBUG]
33<unknown>:1: SyntaxWarning: invalid escape sequence '\d'
34<unknown>:1: SyntaxWarning: invalid escape sequence '\d'
35<unknown>:1: SyntaxWarning: invalid escape sequence '\d'
36<unknown>:1: SyntaxWarning: invalid escape sequence '\d'
37[WARNING] In file "/tmp/tmpc1urpb32/loganylchen-NanoRNAMod-30e62bd/workflow/Snakefile": Keyword "input" at line 275 has comments under a value.
38 PEP8 recommends block comments appear before what they describe
39(see https://www.python.org/dev/peps/pep-0008/#id30)
40[DEBUG] In file "/tmp/tmpc1urpb32/loganylchen-NanoRNAMod-30e62bd/workflow/Snakefile": Formatted content is different from original
41[DEBUG]
42[DEBUG]
43[DEBUG] In file "/tmp/tmpc1urpb32/loganylchen-NanoRNAMod-30e62bd/workflow/rules/prep_eventalign_f5c.smk": Formatted content is different from original
44[DEBUG]
45[DEBUG] In file "/tmp/tmpc1urpb32/loganylchen-NanoRNAMod-30e62bd/workflow/rules/common.smk": Formatted content is different from original
46[DEBUG]
47[INFO] 15 file(s) would be changed 😬
48[INFO] 6 file(s) would be left unchanged 🎉
49
50snakefmt version: 0.11.5