Neurodesk subjects_dir error with fMRIPrep

Summary of what happened:

I have tried performing an initial preprocessing pipeline using fMRIPrep for data of a single subject, including structural T1- and T2-weighted volumes and rs-fMRI data. However, I get some errors.

Command used (and if a helper script was used, a link to the helper script or the command generated):

fmriprep /home/jovyan/Desktop/dataset/raw /home/jovyan/Desktop/dataset/derivatives participant \
  --n_cpus 150 \
  --mem_mb 64000 \
  --output-spaces fsnative MNI152NLin2009cAsym \
  --cifti-output 91k \
  --fs-license-file /home/jovyan/Desktop/fmriprep/license.txt \
  --skip-bids-validation

Version:

fmriprep 25.1.3

Environment (Docker, Singularity / Apptainer, custom installation):

Via NeuroDesktop.

Data formatted according to a validatable standard? Please provide the output of the validator:

PASTE VALIDATOR OUTPUT HERE

Relevant log outputs (up to 20 lines):

Traceback (most recent call last):
  File "/opt/conda/envs/fmriprep/lib/python3.12/multiprocessing/process.py", line 314, in _bootstrap
    self.run()
  File "/opt/conda/envs/fmriprep/lib/python3.12/multiprocessing/process.py", line 108, in run
    self._target(*self._args, **self._kwargs)
  File "/opt/conda/envs/fmriprep/lib/python3.12/site-packages/fmriprep/cli/workflow.py", line 126, in build_workflow
    retval['workflow'] = init_fmriprep_wf()
                         ^^^^^^^^^^^^^^^^^^
  File "/opt/conda/envs/fmriprep/lib/python3.12/site-packages/fmriprep/workflows/base.py", line 95, in init_fmriprep_wf
    single_subject_wf = init_single_subject_wf(subject_id)
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/conda/envs/fmriprep/lib/python3.12/site-packages/fmriprep/workflows/base.py", line 319, in init_single_subject_wf
    anat_fit_wf = init_anat_fit_wf(
                  ^^^^^^^^^^^^^^^^^
  File "/opt/conda/envs/fmriprep/lib/python3.12/site-packages/niworkflows/engine/splicer.py", line 21, in _tag
    node = func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^
  File "/opt/conda/envs/fmriprep/lib/python3.12/site-packages/smriprep/workflows/anatomical.py", line 783, in init_anat_fit_wf
    anat_template_wf = init_anat_template_wf(
                       ^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/conda/envs/fmriprep/lib/python3.12/site-packages/smriprep/workflows/anatomical.py", line 1518, in init_anat_template_wf
    StructuralReference(
  File "/opt/conda/envs/fmriprep/lib/python3.12/site-packages/nipype/interfaces/freesurfer/base.py", line 244, in __init__
    super().__init__(**inputs)
  File "/opt/conda/envs/fmriprep/lib/python3.12/site-packages/nipype/interfaces/freesurfer/base.py", line 134, in __init__
    self.inputs.subjects_dir = self._subjects_dir
    ^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/conda/envs/fmriprep/lib/python3.12/site-packages/nipype/interfaces/base/traits_extension.py", line 135, in validate
    self.error(objekt, name, str(value))
  File "/opt/conda/envs/fmriprep/lib/python3.12/site-packages/traits/base_trait_handler.py", line 74, in error
    raise TraitError(
traits.trait_errors.TraitError: The 'subjects_dir' trait of a RobustTemplateInputSpec instance must be a pathlike object or string representing an existing directory, but a value of '/home/jovyan/freesurfer-subjects-dir' <class 'str'> was specified.

Screenshots / relevant information:


Hi @Ibai_Azpeitia_Loiti,

Following advice in another thread (ASLprep error freesurfer subjects directory in NeurodeskApp - #11 by stebo85), please unset SUBJECTS_DIR first.

Best,
Steven

Problem solved, thanks @Steven.