There are two ways to install XCP-D:
- using Container Technologies (RECOMMENDED)
- within a Manually Prepared Environment (Python 3.8+), also known as bare-metal installation
XCP-D is ideally run via a Docker or Singularity container. If you are running XCP-D locally, we suggest Docker. However, for security reasons, many HPCs (High-Performance Computing)
do not allow Docker containers, but do allow Singularity containers. The improved security for multi-tenant systems comes at the price of some limitations and extra steps necessary for execution.
For every new version of xcp_d that is released, a corresponding Docker image is generated.
In order to run xcp_d via Docker images, the Docker Engine must be installed.
If you have used xcp_d via Docker in the past, you might need to pull down a more recent version of the image: :
$ docker pull pennlinc/xcp_d:<latest-version>
The image can also be found here: https://registry.hub.docker.com/r/pennlinc/xcp_d
xcp_d can be run interacting directly with the Docker Engine via the docker run command, or through a lightweight wrapper that was created for convenience.
Singularity version >= 2.5: If the version of Singularity installed on your HPC (High-Performance Computing)
system is modern enough, you can create a Singularity image directly on the system using the following command: :
$ singularity build xcp_d-<version>.simg docker://pennlinc/xcp_d:<version>
where <version>
should be replaced with the desired version of xcp-d that you want to download.
Warning
This method is not recommended! Please use container alternatives in run_docker
, and run_singularity
.
xcp_d
requires some External Dependencies. These tools must be installed and their binaries available in the system's $PATH
.
On a functional Python 3.8 (or above) environment with pip
installed, xcp_d
can be installed using the habitual command :
$ pip install git+https://github.com/pennlinc/xcp_d.git
Check your installation with the --version
argument :
$ xcp_d --version
XCP-D is written using Python 3.8 (or above), is based on nipype, and requires some other neuroimaging software tools that are not handled by the Python's packaging system (Pypi) used to deploy the xcp_d
package:
- ANTs (version 2.2.0 - or higher)
- AFNI (version Debian-16.2.07)
- bids-validator (version 1.6.0)
- connectome-workbench (version Debian-1.3.2)