Skip to content

taffish/cufflinks

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

taf-cufflinks

TAFFISH wrapper for Cufflinks, the classic RNA-seq command suite for reference-guided transcript assembly, abundance estimation, and differential expression workflows.

This repository packages upstream Cufflinks 2.2.1 as a TAFFISH tool app. It downloads the official cufflinks-2.2.1.Linux_x86_64.tar.gz binary release, keeps the bundled command suite together, and exposes it through the versioned taf-cufflinks command.

Installation

Install from the public TAFFISH Hub index:

taf update
taf install cufflinks

Install the exact release:

taf install cufflinks 2.2.1-r2

For local testing before the app is published to the public index:

taf install --from .

Usage

Show TAFFISH app help:

taf-cufflinks --help

Show the upstream cufflinks command summary:

taf-cufflinks
taf-cufflinks cufflinks

Assemble transcripts from coordinate-sorted RNA-seq alignments:

taf-cufflinks cufflinks -o sample_cufflinks accepted_hits.bam

The default command is cufflinks, so option-leading calls can also use the TAFFISH -- separator:

taf-cufflinks -- -o sample_cufflinks accepted_hits.bam

Compare assembled transcripts with a reference annotation:

taf-cufflinks cuffcompare -r reference.gtf transcripts.gtf

Merge multiple assemblies:

printf "%s\n" sample1/transcripts.gtf sample2/transcripts.gtf > assemblies.txt
taf-cufflinks cuffmerge -g reference.gtf -s genome.fa assemblies.txt

Quantify, test, and normalize expression:

taf-cufflinks cuffquant -o sample_quant reference.gtf accepted_hits.bam
taf-cufflinks cuffdiff -o diff_out transcripts.gtf sample1.bam sample2.bam
taf-cufflinks cuffnorm -o norm_out transcripts.gtf sample1.cxb sample2.cxb

Convert or filter annotation records with the bundled gffread helper:

taf-cufflinks gffread transcripts.gtf -o transcripts.gff3

Because this is a command-mode TAFFISH tool, the first non-option argument is treated as an executable inside the container. For Cufflinks suite commands, name the command explicitly:

taf-cufflinks cuffdiff -o diff_out transcripts.gtf sample1.bam sample2.bam
taf-cufflinks cuffmerge -g reference.gtf assemblies.txt
taf-cufflinks gffread transcripts.gtf -o transcripts.gff3

Scope

This app packages the upstream Cufflinks 2.2.1 command suite:

cufflinks
cuffcompare
cuffmerge
cuffquant
cuffdiff
cuffnorm
gffread
gtf_to_sam

The upstream prebuilt package is linux/amd64, so this TAFFISH release declares native support for linux/amd64 only. On Apple Silicon or other arm64 hosts, Docker or Podman can run the amd64 image through emulation because src/main.taf declares --platform linux/amd64:

TAFFISH_CONTAINER_BACKEND=docker taf-cufflinks cufflinks

That is amd64 emulation, not native arm64 support. Apptainer compatibility depends on the host and site configuration.

Cufflinks expects RNA-seq alignments sorted by reference coordinate. Spliced alignments normally need XS:A strand tags, as produced by splice-aware RNA-seq aligners in classic Tuxedo-style workflows.

This image does not bundle TopHat, Bowtie, HISAT2, STAR, SAMtools, R, cummeRbund, reference genomes, or annotation databases. Those tools and data should be installed as separate TAFFISH apps, host tools, or flow dependencies.

The upstream cuffmerge helper is a Python 2 script. During the Docker build, the script is converted to Python 3 with 2to3 and small compatibility fixes; the runtime image includes Python 3 and the helper executables that cuffmerge calls.

Package

name: cufflinks
command: taf-cufflinks
version: 2.2.1-r2
kind: tool
image: ghcr.io/taffish/cufflinks:2.2.1-r2

Container

The container image is built from docker/Dockerfile. It starts from debian:12-slim, downloads the official Cufflinks 2.2.1 Linux x86_64 binary archive, verifies its SHA256 checksum, converts cuffmerge for Python 3, and installs the command suite under /opt/cufflinks/bin.

Runtime dependencies are intentionally small:

python3
zlib1g
coreutils sort from Debian base

The TAFFISH metadata declares a Docker smoke check:

exist: cufflinks, cuffcompare, cuffmerge, cuffquant, cuffdiff, cuffnorm
exist: gffread, gtf_to_sam, python3, sort
test:  each public command reports the pinned 2.2.1 command surface
test:  cuffmerge is valid Python 3 after build-time conversion
test:  gffread converts a tiny GTF and cuffcompare writes a combined GTF

Upstream

Maintainer Notes

Useful checks before publishing:

taf check
taf compile -- cufflinks
taf publish --release --dry-run
docker build --platform linux/amd64 -t ghcr.io/taffish/cufflinks:2.2.1-r2 -f docker/Dockerfile .
docker run --rm --platform linux/amd64 ghcr.io/taffish/cufflinks:2.2.1-r2 cufflinks
docker run --rm --platform linux/amd64 ghcr.io/taffish/cufflinks:2.2.1-r2 cuffmerge --help

The repository wrapper files are licensed under Apache-2.0. Upstream Cufflinks is distributed under the Boost Software License 1.0, and third-party runtime components are distributed under their own upstream licenses.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors