Skip to content

taffish/busco

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

taf-busco

TAFFISH wrapper for BUSCO, the Benchmarking Universal Single-Copy Ortholog tool for assessing genome, transcriptome, and protein-set completeness.

This repository packages upstream BUSCO 6.0.0 as a TAFFISH tool app. It uses the official BUSCO Docker image ezlabgva/busco:v6.0.0_cv1 as the base image and exposes BUSCO through the versioned taf-busco command.

Installation

Install from the public TAFFISH Hub index:

taf update
taf install busco

Install the exact release:

taf install busco 6.0.0-r2

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

taf install --from .

Usage

Show TAFFISH app help:

taf-busco --help

Show the in-container BUSCO command summary:

taf-busco

Show upstream BUSCO help and version:

taf-busco --help
taf-busco --version
taf-busco busco --help
taf-busco busco --version

Run common BUSCO workflows:

taf-busco -i genome.fa -m genome -l bacteria_odb12 -o genome_busco
taf-busco -i transcriptome.fa -m transcriptome -l eukaryota_odb12 -o transcriptome_busco
taf-busco -i proteins.fa -m proteins -l bacteria_odb12 -o protein_busco

Use automatic lineage selection:

taf-busco -i genome.fa -m genome --auto-lineage -o genome_auto_busco

Use a local lineage dataset without runtime downloads:

taf-busco \
  -i genome.fa \
  -m genome \
  -l ./lineages/bacteria_odb12 \
  --offline \
  --download_path ./lineages \
  -o genome_busco

Generate BUSCO plots from an existing output directory:

taf-busco --plot ./busco_runs

Because this is a command-mode TAFFISH tool, options passed directly to taf-busco are treated as BUSCO options:

taf-busco -i genome.fa -m genome -l bacteria_odb12 -o busco_out

Explicit command mode is also supported:

taf-busco busco -i genome.fa -m genome -l bacteria_odb12 -o busco_out

Package

name: busco
command: taf-busco
version: 6.0.0-r2
kind: tool
image: ghcr.io/taffish/busco:6.0.0-r2

Container

The container image is built from docker/Dockerfile. It starts from the official BUSCO image docker.io/ezlabgva/busco:v6.0.0_cv1, adds a small taf-busco-entrypoint dispatcher, and keeps the upstream BUSCO runtime environment intact.

The upstream BUSCO image is currently published as linux/amd64. This TAFFISH release therefore declares:

build_platforms: linux/amd64

For Docker and Podman, src/main.taf declares --platform linux/amd64, so Apple Silicon or other arm64 hosts can use the official amd64 BUSCO image through normal Docker/Podman emulation without setting a global platform variable for every run. This is not native arm64 support.

If Docker fails before BUSCO starts on an Apple Silicon Mac, first make sure Docker is not using a stale or unauthorized ghcr.io login, then run the normal Docker-backed command:

docker logout ghcr.io
TAFFISH_CONTAINER_BACKEND=docker taf-busco busco -h

Docker or Podman is the recommended TAFFISH backend for this amd64-on-arm64 compatibility path. Native arm64 support would require a separately validated arm64 BUSCO image. Apptainer compatibility depends on the host and site configuration.

The image includes BUSCO and representative dependencies used by common BUSCO modes:

busco
hmmsearch
tblastn
makeblastdb
augustus
prodigal
metaeuk
miniprot
stats.sh
run_sepp.py

The TAFFISH metadata declares a Docker smoke check:

exist: busco, taf-busco-entrypoint, python3, hmmsearch, tblastn
exist: makeblastdb, augustus, prodigal, metaeuk, miniprot
exist: stats.sh, run_sepp.py, wget
test:  taf-busco-entrypoint displays the BUSCO command summary
test:  busco --version reports BUSCO 6.0.0
test:  busco --help reports the BUSCO command-line usage
test:  BUSCO help exposes auto-lineage, offline, and plot options
test:  representative dependency version/help commands are available

The smoke check intentionally does not run a full BUSCO analysis because lineage datasets may require network downloads and real BUSCO runs can be slow. Functional BUSCO validation should be run with a chosen lineage dataset and input file appropriate for the user's organism and mode.

Upstream

Maintainer Notes

Useful checks before publishing:

taf check
taf compile -- --version
taf publish --release --dry-run
docker build --check -f docker/Dockerfile .
docker build --platform linux/amd64 -t ghcr.io/taffish/busco:6.0.0-r2 -f docker/Dockerfile .
docker run --rm --platform linux/amd64 ghcr.io/taffish/busco:6.0.0-r2 taf-busco-entrypoint --version
docker run --rm --platform linux/amd64 ghcr.io/taffish/busco:6.0.0-r2 busco --help

When testing on Apple Silicon with TAFFISH-generated commands, Docker should receive an explicit --platform linux/amd64 argument from the app wrapper. Treat any remaining platform message as informational unless BUSCO itself exits with an error.

The repository wrapper files are licensed under Apache-2.0. Upstream BUSCO, the official BUSCO container, lineage datasets, and bundled third-party tools are distributed under their own upstream terms.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors