From 8cafc7ed9afacbb02b6ad66a2b75c810943fb45d Mon Sep 17 00:00:00 2001 From: Pierre <65797646+pierre-nedelec@users.noreply.github.com> Date: Mon, 23 Dec 2024 14:59:02 -0800 Subject: [PATCH] Add note for nodes without internet access for templateflow --- docs/installation.rst | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/docs/installation.rst b/docs/installation.rst index 8aa21ddf..422359ff 100644 --- a/docs/installation.rst +++ b/docs/installation.rst @@ -97,6 +97,29 @@ As with Docker, you will need to bind the Freesurfer license.txt when running Ap $HOME/fullds005 $HOME/dockerout participant \ --fs-license-file /opt/freesurfer/license.txt +.. note:: + **Running QSIPrep on Non-Internet Nodes:** + QSIPrep relies on TemplateFlow to provide standard anatomical templates. By default, it downloads + necessary files into the ``$TEMPLATEFLOW_HOME`` directory (default: ``$HOME/.cache/templateflow``). + However, on nodes without internet access, this will cause job failure unless the required templates + are pre-fetched and available. + + 1. Run QSIPrep once on an internet-enabled node. This will automatically download the required + templates into the ``$TEMPLATEFLOW_HOME`` directory (or ``$HOME/.cache/templateflow`` if the variable + is unset). + 2. If the directory is not accessible on the target HPC node, copy it manually to the target system. + 3. Bind and pass the ``TEMPLATEFLOW_HOME`` variable to the container: + ```sh + export TEMPLATEFLOW_HOME=/path/to/copied/templateflow + apptainer run --cleanenv --containall \ + -B ${TEMPLATEFLOW_HOME}:${TEMPLATEFLOW_HOME} \ + --env "TEMPLATEFLOW_HOME=$TEMPLATEFLOW_HOME" \ + /path/to/qsiprep_.sif + ``` + + For additional troubleshooting, see [fmriprep docs](https://fmriprep.org/en/stable/faq.html#how-do-you-use-templateflow-in-the-absence-of-access-to-the-internet) + or [this thread on Neurostars](https://neurostars.org/t/issue-with-qsiprep-templateflow-on-hpc-host-with-no-internet-access/31259/10?u=pierre-nedelec). + ********************* External Dependencies