Skip to content
 
 

Repository files navigation

bioutil

bioutil is a Linux workstation bootstrap utility for bioinformatics. It helps turn a fresh OS install into a practical analysis machine with terminal tools, package managers, containers, workflow engines, and curated bioinformatics environments.

Public repository: https://github.com/Jakeelamb/bioutil

What It Sets Up

  • Terminal and remote-work basics: Git, SSH, rsync, tmux, screen, search tools, disk-usage tools, and optional terminal emulators.
  • Package management for bioinformatics: micromamba configured with conda-forge, Bioconda, and strict channel priority.
  • Container runtimes: Docker and Apptainer/Singularity choices for local, workstation, and HPC-style workflows.
  • Workflow engines: Nextflow, Snakemake, and nf-core.
  • Data-source tooling: NCBI Datasets, SRA Toolkit, Entrez Direct, public API clients, and reference-data helpers.
  • Curated analysis profiles for common workflows instead of one giant global install.
  • A Bio_Util Doctor check that reports which parts of the machine are ready.

Active Tabs

The TUI is intentionally focused on bioinformatics workstation setup:

  • Genomics Profiles
  • Workflows and Runtimes
  • Data Sources
  • Workstation Basics

The inherited generic security, gaming, desktop rice, and broad app-store tabs are no longer part of the active Bio_Util menu.

Profiles

The Genomics Profiles tab includes:

  • Core Bioinformatics CLI
  • Short-Read Genomics Profile
  • Long-Read Genomics Profile
  • RNA-seq Profile
  • Single-Cell Profile
  • Metagenomics Profile
  • Assembly + Annotation Profile
  • Protein + Structure Profile

Each analysis profile creates or updates an isolated micromamba environment, such as bio-core, bio-short-read, or bio-metagenomics. That keeps conflicting tools out of base and gives users a clear activation command for each workflow.

Run From Source

cargo run --bin bioutil

Run with an automation config:

auto_execute = [
    "Conda / Micromamba + Bioconda",
    "Core Bioinformatics CLI",
    "NCBI Datasets CLI"
]

skip_confirmation = true
size_bypass = true
cargo run --bin bioutil -- --config /path/to/bioutil.toml

Build

cargo build --release --bin bioutil

The resulting executable is:

target/release/bioutil

Project Direction

bioutil is intentionally profile-based:

  • Install only what the user explicitly selects.
  • Prefer isolated micromamba environments for bioinformatics tools.
  • Keep Docker, Podman, and Apptainer as separate runtime choices.
  • Avoid modifying shell, terminal, Conda, or editor configuration without a prompt.
  • Use Bio_Util Doctor and smoke tests to make setup failures visible.

Attribution

bioutil is inspired by and forked from Chris Titus Tech's Linutil, which provides the original Rust TUI architecture and script-driven setup model. This project keeps the upstream MIT license and adapts that foundation for bioinformatics workstation setup.

About

Bioinformatics workstation bootstrap utility for fresh Linux installs

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages