Installation
BDT should be installed using container technologies.
docker pull nipreps/bdt:main
Containerized execution (Docker and Singularity)
BDT is a NiPreps application, and therefore follows some overarching principles of containerized execution drawn from the BIDS-Apps protocols. For detailed information of containerized execution of NiPreps, please visit the corresponding Docker or Singularity subsections.
External Dependencies
BDT is written using Python 3.12, and is based on nipype.
The Python environment (nipype, niworkflows, pybids, and related NiPreps
libraries) is resolved with pixi from pixi.lock.
The container image additionally bundles a small set of neuroimaging tools that are not handled by Python’s packaging system:
Connectome Workbench (version 1.5.0) — surface/CIFTI parcellation and label resampling.
AFNI (a minimal subset of programs, e.g.
3dresample,3dTshift).bids-validator (version 1.14.10, installed via
npm).
Note
The full atlas-transform toolchain described in the design (ANTs
ApplyTransforms for volumetric atlas resampling, and the Rust binaries
trxrs / giftirs / odx for streamline, surface, and diffusion-model
transforms) is not yet part of the container image. These will be added as
the corresponding workflows are implemented. If you run BDT outside the
container, install the tools required by the operations you use.
Not running on a local machine? - Data transfer
If you intend to run BDT on a remote system, you will need to make your data available within that system first.
For instance, here at the Poldrack Lab we use Stanford’s HPC system, called Sherlock. Sherlock enables the following data transfer options.
Alternatively, more comprehensive solutions such as Datalad will handle data transfers with the appropriate settings and commands. Datalad also performs version control over your data.