TAFFISH wrapper for MAFFT, a multiple sequence alignment program for amino acid, nucleotide, and RNA structural alignment workflows.
This app packages upstream MAFFT 7.525 as a TAFFISH executable package. It
builds the official mafft-7.525-with-extensions-src.tgz source archive in a
Debian 12 container image and exposes the upstream mafft command through the
versioned taf-mafft command.
Release 7.525-r3 is a help-only TAFFISH update. It keeps the upstream
software, Dockerfile, runtime dependencies, smoke tests, and command behavior
unchanged from 7.525-r2, and refreshes the terminal taf-mafft --help text.
Package metadata:
name: mafft
command: taf-mafft
version: 7.525-r3
kind: tool
image: ghcr.io/taffish/mafft:7.525-r3
upstream release: v7.525
upstream runtime version: v7.525
After the TAFFISH Hub index has been updated:
taf update
taf install mafftInstall the exact release:
taf install mafft 7.525-r3For local testing before the app is published to the public index:
taf install --from .Show TAFFISH wrapper help:
taf-mafft --helpShow upstream MAFFT help, version, and manual output:
taf-mafft -- --help
taf-mafft -- --version
taf-mafft -- --manAlign sequences with the default upstream mafft command:
taf-mafft --auto --thread 8 input.fa > aligned.faUse high-accuracy aliases:
taf-mafft linsi --thread 8 input.fa > linsi.fa
taf-mafft ginsi --thread 8 input.fa > ginsi.fa
taf-mafft einsi --thread 8 input.fa > einsi.faThese names are upstream MAFFT strategy aliases, not separate tools. Upstream
installs them as symlinks to the same mafft driver script; the script selects
the corresponding preset from the invoked command name. For example, linsi
and mafft-linsi are the L-INS-i preset, roughly corresponding to
mafft --localpair --maxiterate 1000.
Use speed-oriented aliases:
taf-mafft fftns input.fa > fftns.fa
taf-mafft fftnsi input.fa > fftnsi.fa
taf-mafft nwns input.fa > nwns.fa
taf-mafft nwnsi input.fa > nwnsi.faLikewise, fftns, fftnsi, nwns, and nwnsi are preset aliases for MAFFT's
speed-oriented strategies.
Use the RNA structural alignment helpers from the official with-extensions source archive:
taf-mafft mafft-qinsi rna.fa > qinsi.fa
taf-mafft mafft-xinsi rna.fa > xinsi.faAlign two existing profile alignments and compute a small distance table:
taf-mafft mafft-profile group1.fa group2.fa > profile.fa
taf-mafft mafft-distance input.fa > distance.tsvBecause this is a command-mode TAFFISH tool, the first non-option argument is treated as an executable inside the container. MAFFT exposes several public commands and aliases in the same image, so command-mode usage is useful:
taf-mafft mafft --help
taf-mafft mafft-linsi --help
taf-mafft mafft-homologs.rb --help
taf-mafft mafft-sparsecore.rbFor option-leading arguments to the default in-container mafft command, the
short form is supported:
taf-mafft --auto input.fa > aligned.faFor wrapper-reserved options such as upstream --help, --version, and
--man, use the wrapper delimiter:
taf-mafft -- --help
taf-mafft -- --version
taf-mafft -- --manMAFFT writes alignments to standard output by default. Redirect output to a
file when running normal workflows. Use --thread N for explicit threading;
--thread -1 leaves thread selection to MAFFT.
name: mafft
command: taf-mafft
version: 7.525-r3
kind: tool
image: ghcr.io/taffish/mafft:7.525-r3
The container image is built from docker/Dockerfile. It starts from
debian:12-slim, downloads the official MAFFT 7.525 with-extensions source
archive from the MAFFT source page, verifies this source checksum:
sha256: 2876f4adc1a2de4ed206bc40896763bf208bf1a02bda52f8bfdd91cf52d73e4a
It compiles MAFFT from source with GCC/G++, installs it into /opt/mafft, and
enables the upstream DASH client by building with DASH_CLIENT=dash_client.
The final image keeps upstream docs, manual pages, sample data, and license
files under /opt/mafft/share/doc/mafft.
The Dockerfile performs build-time source checksum, compile, install-layout, and key-file checks. Runtime behavior checks, including upstream help/manual output, script syntax, dynamic linkage, and small alignment workflows, are kept in the TAFFISH smoke metadata so multi-architecture image builds do not depend on QEMU-emulated runtime probes during Docker build.
The image includes:
mafft
linsi, ginsi, einsi
fftns, fftnsi, nwns, nwnsi
mafft-linsi, mafft-ginsi, mafft-einsi
mafft-qinsi, mafft-xinsi
mafft-profile, mafft-distance
mafft-homologs.rb, mafft-sparsecore.rb
bash, perl, ruby, libwww-perl, lynx, man-db, file, gawk, gzip
The linsi/mafft-linsi, ginsi/mafft-ginsi, einsi/mafft-einsi,
fftns, fftnsi, nwns, nwnsi, mafft-qinsi, and mafft-xinsi entries
are upstream alias symlinks to the MAFFT driver script. They are included
because users commonly call those strategy names directly.
The image includes compiled MAFFT core helpers in /opt/mafft/libexec/mafft,
including mxscarnamod for the extension-backed RNA structural alignment
paths and a statically linked dash_client helper for --dash.
This app supports the common MAFFT command surface:
- default FFT-NS style alignment through
mafft --auto,--thread,--quiet, output format, ordering, seed/profile, and other standard MAFFT options- high-accuracy aliases: L-INS-i, G-INS-i, E-INS-i
- speed aliases: FFT-NS, FFT-NS-i, NW-NS, NW-NS-i
- group-to-group profile alignment with
mafft-profile - distance helper with
mafft-distance - RNA structural alignment helpers
mafft-qinsiandmafft-xinsi - upstream script syntax for
mafft-homologs.rbandmafft-sparsecore.rb - upstream
mafft --manoutput
Some upstream options are intentionally not made self-contained because they depend on external tools, local databases, or remote services:
--fastapairand--fastaparttreerequire an external FASTA/fasta34 executable, optionally viaFASTA_4_MAFFT.- LAST-based paths require
lastalandlastdbin MAFFT's binary directory. - LaRA paths require
mafft_lara. - FOLDALIGN paths require
foldalign210. - DAFS paths require the DAFS executable expected by upstream MAFFT.
--contrafoldrequires an externalcontrafoldexecutable; the bundledcontrafoldwraphelper alone is not enough for that mode.mafft-homologs.rb -lrequires local BLAST+/psiblastand a suitable local database.- Remote BLAST, MAFFTash, SEEKQUENCER, and DASH paths may require network access and availability of their upstream services.
These boundaries are documented rather than hidden. The smoke test remains offline and does not depend on NCBI, remote alignment services, or large external databases.
The image is built and validated for:
linux/amd64
linux/arm64
The TAFFISH metadata declares a Docker smoke check:
exist: mafft, core aliases, mafft-qinsi, mafft-xinsi, mafft-profile,
mafft-distance, MAFFT Ruby/Perl helper scripts, and required runtimes
test: upstream version reports v7.525 (2024/Mar/13)
test: upstream help and man output are available
test: public aliases expose the MAFFT v7.525 help surface
test: hidden helpers, script interpreters, and dynamic libraries are present
test: a tiny FASTA alignment runs through mafft
test: L-INS-i, G-INS-i, E-INS-i aliases align a tiny FASTA
test: FFT-NS, FFT-NS-i, NW-NS, NW-NS-i aliases align a tiny FASTA
test: mafft-profile and mafft-distance write non-empty expected outputs
test: mafft-qinsi and mafft-xinsi align the bundled upstream RNA sample
test: mafft-sparsecore.rb and mafft-homologs.rb basic script entry paths work
During TAFFISH Hub indexing, this smoke metadata verifies that the published image exposes the pinned upstream command suite and can execute core alignment, alias, profile, distance, and RNA-extension paths without network access.
- Project: MAFFT
- Homepage: https://mafft.cbrc.jp/alignment/software/
- Source page: https://mafft.cbrc.jp/alignment/software/source.html
- Source archive: https://mafft.cbrc.jp/alignment/software/mafft-7.525-with-extensions-src.tgz
- Upstream version packaged here: 7.525
- Upstream license: core MAFFT is BSD-3-Clause; the with-extensions archive
includes Vienna RNA Package, MXSCARNA, and ProbConsRNA components with their
own terms in
license.extensions - Citation: Katoh and Standley 2013, doi:10.1093/molbev/mst010, PMID:23329690; Katoh et al. 2002, doi:10.1093/nar/gkf436, PMID:12136088
The MAFFT homepage currently advertises a newer 7.526 release, but the official source page checked for this app only provides the 7.525 source archives. This release therefore packages the highest official source archive available from the source page, using the with-extensions variant for RNA structural alignment support.
Useful checks before publishing:
taf check
taf build
taf publish --release --dry-run
docker build -t ghcr.io/taffish/mafft:7.525-r3 -f docker/Dockerfile .
docker build --platform linux/amd64 -t ghcr.io/taffish/mafft:7.525-r3-amd64-test -f docker/Dockerfile .
docker run --rm ghcr.io/taffish/mafft:7.525-r3 mafft --version
docker run --rm ghcr.io/taffish/mafft:7.525-r3 mafft --helpThe repository wrapper files are licensed under Apache-2.0. Upstream MAFFT core is distributed under a BSD-style license, and the with-extensions components are distributed under their own upstream licenses and redistribution terms.