Installation
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
Container Technologies
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 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.
Docker Installation
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 Installation
Singularity version >= 2.5: If the version of Singularity installed on your HPC 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.
Manually Prepared Environment (Python 3.8+)
Warning
This method is not recommended! Please use container alternatives in Running xcp_d via Docker containers, and Running xcp_d via Singularity containers.
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
External Dependencies
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)