Skip to content
Richard Challis edited this page Dec 22, 2023 · 12 revisions

About

BlobTk contains a set of core functions used by BlobToolKit tools. Implemented in Rust, these functions are intended to be accessible from the command line, as python modules and will include web assembly code for use in javascript.

Installation

A conda package is available to install both the BlobTk command line tool and python package. Alternate installation methods are also available for the individual components. All options should work on both Linux and MacOS.

Conda

conda install -c tolkit blobtk

To use the conda install on an M1/M2 (arm64) Mac, you may need to specify conda config --env --set subdir osx-64 before running the above command

Command line tool

The command line tool is available as a linux/macos binary from the latest release page.

linux:

curl -Ls "https://github.com/blobtoolkit/core/releases/download/0.4.7/blobtk-linux" > blobtk &&
chmod 755 blobtk

macos (intel):

curl -Ls "https://github.com/blobtoolkit/core/releases/download/0.4.7/blobtk-macos-x64" > blobtk &&
chmod 755 blobtk

macos (arm64): N.B. binary misnamed in current release

curl -Ls "https://github.com/blobtoolkit/core/releases/download/0.4.7/blobtk-macos-amd64" > blobtk &&
chmod 755 blobtk

Pip

The python module can be installed using pip:

pip install blobtk

Build from source

First install rust if you haven't already (BlobTk requires at least rust v1.70):

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

Then clone this repository and build BlobTk:

git clone https://github.com/blobtoolkit/blobtk
cd blobtk/rust && cargo build --release
# executable is in ./target/release/blobtk
./target/release/blobtk plot --help

# or to install into your path
cd blobtk/rust && cargo install --path .
blobtk plot --version

Build the python package from source using maturin

cd blobtk/rust && maturin build --release

Docker

Blobtk can be run in a container with Docker or Singularity by pulling the BlobTk Docker image:

docker pull genomehubs/blobtk:latest