Installation

This guide covers all methods for installing py-gbcms.

PyPI Installation

Install the latest stable release:

pip install py-gbcms

Verify installation:

gbcms --version

Docker

Pull the official Docker image:

docker pull ghcr.io/msk-access/py-gbcms:2.1.0

Run via Docker:

docker run --rm ghcr.io/msk-access/py-gbcms:2.1.0 gbcms --help

Requirements

System Requirements

  • Python: 3.10 or higher

  • Operating Systems: Linux, macOS, Windows (with WSL2)

  • Memory: Minimum 4GB RAM (8GB+ recommended for large BAM files)

  • Disk: Varies by BAM file size

For Source Installation

  • Rust toolchain: 1.70 or higher (for building from source)

  • Build tools: gcc, make (Linux/macOS)

For Nextflow Workflow

  • Nextflow: 21.10.3 or higher

  • Container runtime: Docker or Singularity

  • HPC scheduler: SLURM (optional, for cluster execution)


Installation Methods

1. PyPI (Stable Release)

Best for: Most users, production use

Benefits:

  • Pre-compiled wheels for major platforms

  • No Rust toolchain required

  • Fastest installation

2. From Source (Development)

Best for: Developers, contributing code, bleeding-edge features

Prerequisites

Install Rust toolchain:

Installation Steps

Verify:

3. Docker

Best for: Reproducibility, containerized workflows, no local dependencies

Pull Image

Usage Example

Note: Use -v to mount your data directory into the container.

4. Singularity (HPC)

Best for: HPC clusters without Docker


Nextflow Workflow Setup

For processing multiple samples in parallel:

1. Install Nextflow

Verify:

2. Install Container Runtime

Docker (local):

Follow instructions at https://docs.docker.com/engine/installation/

Singularity (HPC):

Singularity is usually pre-installed on HPC systems. Check with:

If not available, contact your system administrator.

3. Clone Repository (for Nextflow workflow)

The Nextflow workflow is in the nextflow/ directory.


Verification

Test Installation

Run a simple command:

Expected output:

Check Version

Should show: 2.1.0 (or current version)


Troubleshooting

Python Version Issues

Error: Python 3.10+ required

Solution:

Rust Toolchain Not Found

Error: cargo not found or rustc not found

Solution:

Docker Permission Denied

Error: permission denied while trying to connect to the Docker daemon

Solution:

Module Import Errors

Error: ModuleNotFoundError: No module named 'gbcms'

Solution:

BAM Index Not Found

Error: BAI index not found

Solution:

This creates sample.bam.bai in the same directory.


Upgrading

Upgrade from PyPI

Upgrade Docker Image

Upgrade from Source


Uninstallation

PyPI

Docker

Singularity


Next Steps

After installation:

Last updated