Skip to content

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

mummer4

mummer4 packages MUMmer4 for TAFFISH.

Package identity:

What This App Packages

MUMmer4 is a fast whole-genome alignment suite for comparing DNA sequences and translated nucleotide sequences. This TAFFISH app builds upstream MUMmer4 4.0.1 from the official release tarball and exposes the standard CLI programs in a reproducible container.

Release r2 is a same-upstream backend repair. Upstream mummerplot.pl initializes its child variable to 1 for non-X11 terminals and then unconditionally sends SIGHUP to that value. Inside an Apptainer session, mummerplot -t png therefore signals container PID 1 after successfully writing the plot. The image applies one checksum-pinned patch that sends the existing SIGHUP only when an X11 listener was actually forked. It does not change MUMmer4 commands, arguments, output formats, or the excluded X11 scope.

The default command is nucmer. Command mode is enabled, so explicit packaged commands such as promer, dnadiff, delta-filter, show-coords, show-snps, and mummerplot can also be run through the same wrapper.

Scope

This app supports:

  • nucleotide whole-genome alignments with nucmer
  • translated DNA alignments with promer
  • alignment filtering and reporting with delta-filter, show-coords, show-snps, show-diff, show-aligns, and show-tiling
  • pairwise assembly/genome comparison summaries with dnadiff
  • upstream dotplot generation with mummerplot and bundled gnuplot-nox

This app does not:

  • download genomes, assemblies, annotations, or external databases
  • perform read mapping, genome assembly, polishing, variant calling, or workflow orchestration
  • provide an interactive X11 plotting session; use file terminals such as -t png or edit the generated .gp script if more control is needed

Container Contents

  • nucmer: default MUMmer4 nucleotide alignment command
  • promer: translated DNA alignment wrapper
  • dnadiff: comparative summary wrapper around nucmer and show/delta tools
  • mummer, mgaps, repeat-match, annotate, combineMUMs: lower-level MUMmer executables
  • delta-filter, show-coords, show-snps, show-diff, show-aligns, show-tiling: delta parsing, filtering, and reporting tools
  • mummerplot: upstream gnuplot-based dotplot helper
  • runtime helpers: perl, bash, sh, sed, gawk, gnuplot

The image follows upstream make install. Some legacy source-tree helper scripts, such as old xfig/mapview examples, are not installed as supported runtime commands. Development headers, the static archive, and libtool/pkgconfig metadata are removed from the final CLI image; the required shared library and all supported runtime commands remain installed.

Usage

Default upstream command:

taf-mummer4 -- -p sample ref.fa qry.fa

Run the same command explicitly:

taf-mummer4 nucmer -p sample ref.fa qry.fa

Access upstream help:

taf-mummer4 -- --help
taf-mummer4 nucmer --help

Translated alignment:

taf-mummer4 promer -p proteins ref.fa qry.fa

Filter a delta file and report coordinates:

taf-mummer4 delta-filter -m sample.delta > sample.filtered.delta
taf-mummer4 show-coords -T -H sample.filtered.delta > sample.coords.tsv

Pairwise comparison summary:

taf-mummer4 dnadiff -p comparison ref.fa qry.fa

Generate a PNG dotplot:

taf-mummer4 mummerplot -p sample_plot -t png sample.delta

Backend Usage and Capability Matrix

MUMmer4 uses the same CLI on all supported backends. These examples select a backend explicitly; omitting the variable uses the configured TAFFISH default.

Capability Docker Podman Apptainer Boundary
Core CLI and prefix outputs TAFFISH_CONTAINER_BACKEND=docker taf-mummer4 nucmer -p sample ref.fa qry.fa TAFFISH_CONTAINER_BACKEND=podman taf-mummer4 nucmer -p sample ref.fa qry.fa TAFFISH_CONTAINER_BACKEND=apptainer taf-mummer4 nucmer -p sample ref.fa qry.fa Current workdir must be writable
File dotplot TAFFISH_CONTAINER_BACKEND=docker taf-mummer4 mummerplot -p plot -t png sample.delta TAFFISH_CONTAINER_BACKEND=podman taf-mummer4 mummerplot -p plot -t png sample.delta TAFFISH_CONTAINER_BACKEND=apptainer taf-mummer4 mummerplot -p plot -t png sample.delta gnuplot-nox; interactive X11 is not provided

No backend-specific image, platform, GPU, device, network, port, IPC, or resource-mount arguments are required. Current-release validation evidence is recorded in release.md before publication.

Command Mode

TAFFISH command mode is enabled. If the first argument is a non-option executable name, it is run inside the same MUMmer4 container environment:

taf-mummer4 nucmer -p sample ref.fa qry.fa
taf-mummer4 dnadiff -p comparison ref.fa qry.fa
taf-mummer4 show-snps -T -H sample.delta > sample.snps.tsv

Because the default command is nucmer, option-leading nucmer arguments should be passed after --:

taf-mummer4 -- --help
taf-mummer4 -- -p sample ref.fa qry.fa

For scripts and pipelines, the explicit form taf-mummer4 nucmer ... is often the clearest because it avoids ambiguity with wrapper options and command mode.

Inputs

Input Meaning Notes
ref.fa reference FASTA Multi-FASTA is supported by upstream tools
qry.fa query FASTA Used by nucmer, promer, and dnadiff
*.delta MUMmer delta alignments Produced by nucmer or promer
*.coords, *.snps, *.report derived reports Produced by show tools and dnadiff

Output Notes

nucmer and promer write a .delta file named from -p PREFIX. delta-filter writes filtered delta data to stdout. show-* tools generally write tabular or text reports to stdout. dnadiff creates a set of files with the requested prefix, including .report, .delta, .1delta, .mdelta, .coords, .snps, and .diff-style breakpoint reports.

mummerplot writes gnuplot scripts and plot data. When a non-interactive terminal is requested, for example -t png, it also asks gnuplot to render the plot file.

Runtime write map:

Path or object Access Lifecycle
User FASTA and delta inputs read-only is sufficient caller-owned
Current workdir and requested prefixes writable persistent result files
/tmp/taf-mummer4-* writable smoke-only scratch, removed on exit
/opt, /usr, image /var read-only no runtime initialization or cache writes

Normal wrapper execution exposes the caller's working directory for input and output. Direct Index smoke needs only a writable /tmp; it does not depend on a fabricated custom mount target.

Resources, Databases, and Platform

No external database, model, taxonomy, reference bundle, persistent cache, or upstream downloader is required. FASTA and delta files are project-specific user inputs, not a fixed reusable resource family. A download/install helper, personal or site-wide resource root, automatic discovery, and custom database/model mount are therefore not applicable. The image contains the MUMmer4 command-line programs, Perl helper scripts installed by upstream, and runtime utilities needed by the standard installed commands.

Native container builds are requested for linux/amd64 and linux/arm64. The image uses Debian runtime libraries and does not require GPU devices, network access, or special host mounts beyond normal input/output file access. The official package exposes plotting as a file-generating CLI; upstream and its organization do not publish a required GUI/plugin companion for this release. The image intentionally uses gnuplot-nox, so GUI/noVNC/service lifecycle rules do not apply to this app.

Boundaries

This app validates packaging and a small functional path. It does not choose alignment parameters for a biological study or replace full scientific validation on production genomes.

Very large genomes can require substantial CPU, memory, and temporary disk space depending on input size and options. Tune upstream MUMmer4 options for your dataset rather than treating the smoke-test settings as scientific defaults.

Troubleshooting

  • If taf-mummer4 ref.fa qry.fa looks for a command named ref.fa, call taf-mummer4 nucmer ref.fa qry.fa or pass option-leading default-command arguments after --.
  • If mummerplot does not render a plot, keep the generated .gp and data files, then run or edit the gnuplot script manually. Prefer -t png, -t svg, or another file terminal in containerized runs.
  • If an older 4.0.1-r1 Apptainer run exits 129 after creating the plot, upgrade to 4.0.1-r2; that is the PID-1 SIGHUP defect repaired here.

Testing

The smoke test covers:

  • wrapper metadata and help
  • exact upstream version identity through nucmer -V
  • command availability for the installed MUMmer4 suite
  • dynamic-library resolution for compiled executables
  • a self-contained FASTA path through nucmer, delta-filter, show-coords, raw mummer, dnadiff, and mummerplot -t png
  • bounded per-stage logs so a failed Index smoke identifies the exact command instead of hiding useful evidence in redirected temporary files

For this r2 candidate, every exact manifest command passed in fresh offline Docker and Podman containers, Docker/Podman read-only-root proxies with only the audited write map writable, and an actual read-only Apptainer SIF. Built wrapper tests also passed with real host workdir binds on all three backends. Both declared native platforms completed the Dockerfile functional checks. Image contents, size, canonical Action provenance, publish dry-run, and strict target cleanup are part of the same release gate. See release.md for the candidate receipts; r2 does not use a backend exception.

It does not replace full scientific validation on production datasets.

License and Citation

TAFFISH app packaging: Apache-2.0.

Upstream MUMmer4: Artistic-2.0. The upstream release tarball is used for compilation; the image also stores upstream LICENSE.md, COPYRIGHT, README.md, INSTALL.md, and ChangeLog under /opt/mummer/share/.

Upstream citation:

Marcais G, Delcher AL, Phillippy AM, Coston R, Salzberg SL, Zimin A. MUMmer4: A fast and versatile genome alignment system. PLoS Computational Biology. 2018;14(1):e1005944. DOI: 10.1371/journal.pcbi.1005944

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages