Fmri prep ICA-AROMA can not be found

I am running fmriprep on my Ubuntu system with the following command:
for i in {500..1000}; do docker run --rm -e DOCKER_VERSION_8395080871=20.10.8 -it -v “/media/neurolab2/Extreme Pro/GSP/GSP_new/”:/data:ro -v “/media/neurolab2/Extreme Pro/GSP/GSP_new/derivatives/participant/”:/out -v /home/neurolab2/Schreibtisch/Stephan/Programmes/freesurfer/license.txt:/license -v “/media/neurolab2/Extreme Pro/GSP/GSP_new/derivatives/freesurfer”:/fssubjectsdir -v "/media/neurolab2/Extreme Pro/GSP/GSP_new/GSP_fmri_workdir/ nipreps/fmriprep:20.2.2 /data /out participant --use-aroma --fs-license-file /license /workdir --fs-subjects-dir /fssubjectsdir --use-aroma --participant-label $i ; done

But it tells me that ICA-AROMA the method is not implemented

Otherwise I would use fmriprep-docker but I dont know how to use fmriprep version 20.2.2. then?

Errors

Node Name: fmriprep_wf.single_subject_507_wf.func_preproc_ses_1_task_rest_run_3_wf.ica_aroma_wf.ica_aroma

File: /out/fmriprep/sub-507/log/20211214-034851_97a3438a-f426-470a-aa61-03ada03140c6/crash-20211214-061022-root-ica_aroma-defce9bd-7b0e-44a7-a275-570149a46cb5.txt
Working Directory: /workdir/fmriprep_wf/single_subject_507_wf/func_preproc_ses_1_task_rest_run_3_wf/ica_aroma_wf/ica_aroma
Inputs:

  • TR: 3.0
  • args: -np
  • compress_report: auto
  • denoise_type: nonaggr
  • dim:``
  • environ: {}
  • feat_dir:``
  • fnirt_warp_file:``
  • in_file:``
  • mask:``
  • mat_file:``
  • melodic_dir:``
  • motion_parameters:``
  • out_dir: out
  • out_report: ica_aroma_reportlet.svg
  • report_mask:``

Traceback (most recent call last): File “/usr/local/miniconda/lib/python3.7/site-packages/nipype/pipeline/plugins/multiproc.py”, line 67, in run_node result[“result”] = node.run(updatehash=updatehash) File “/usr/local/miniconda/lib/python3.7/site-packages/nipype/pipeline/engine/nodes.py”, line 516, in run result = self._run_interface(execute=True) File “/usr/local/miniconda/lib/python3.7/site-packages/nipype/pipeline/engine/nodes.py”, line 635, in _run_interface return self._run_command(execute) File “/usr/local/miniconda/lib/python3.7/site-packages/nipype/pipeline/engine/nodes.py”, line 741, in _run_command result = self._interface.run(cwd=outdir) File “/usr/local/miniconda/lib/python3.7/site-packages/nipype/interfaces/base/core.py”, line 428, in run runtime = self._run_interface(runtime) File “/usr/local/miniconda/lib/python3.7/site-packages/nipype/interfaces/base/core.py”, line 822, in _run_interface self.raise_exception(runtime) File “/usr/local/miniconda/lib/python3.7/site-packages/nipype/interfaces/base/core.py”, line 753, in raise_exception ).format(**runtime.dictcopy()) RuntimeError: Command: ICA_AROMA.py -tr 3.000 -np -den nonaggr -i /workdir/fmriprep_wf/single_subject_507_wf/func_preproc_ses_1_task_rest_run_3_wf/ica_aroma_wf/smooth/vol0000_xform-00000_merged_cut_smooth.nii.gz -m /workdir/fmriprep_wf/single_subject_507_wf/func_preproc_ses_1_task_rest_run_3_wf/bold_std_trans_wf/_std_target_MNI152NLin6Asym.res2/mask_std_tfm/ref_bold_corrected_brain_mask_maths_trans.nii.gz -meldir /workdir/fmriprep_wf/single_subject_507_wf/func_preproc_ses_1_task_rest_run_3_wf/ica_aroma_wf/melodic -mc /workdir/fmriprep_wf/single_subject_507_wf/func_preproc_ses_1_task_rest_run_3_wf/bold_hmc_wf/normalize_motion/motion_params.txt -o /workdir/fmriprep_wf/single_subject_507_wf/func_preproc_ses_1_task_rest_run_3_wf/ica_aroma_wf/ica_aroma/out Standard output: ------------------------------- RUNNING ICA-AROMA ------------------------------- --------------- ‘ICA-based Automatic Removal Of Motion Artifacts’ --------------- Step 1) MELODIC - The existing/specified MELODIC directory will be used. Standard error: Traceback (most recent call last): File “/opt/ICA-AROMA/ICA_AROMA.py”, line 204, in aromafunc.runICA(fslDir, inFile, outDir, melDir, mask, dim, TR) File “/opt/ICA-AROMA/ICA_AROMA_functions.py”, line 55, in runICA os.symlink(melDirIn, melDir) OSError: [Errno 38] Function not implemented: ‘/workdir/fmriprep_wf/single_subject_507_wf/func_preproc_ses_1_task_rest_run_3_wf/ica_aroma_wf/melodic’ → ‘/workdir/fmriprep_wf/single_subject_507_wf/func_preproc_ses_1_task_rest_run_3_wf/ica_aroma_wf/ica_aroma/out/melodic.ica’ Return code: 1

Try using the new 21.0.0 fMRIPrep release.

os.symlink(melDirIn, melDir) OSError: [Errno 38] Function not implemented:

So the issue seems to be that ICA-AROMA uses symlinks, and the system call is failing, presumably due to a non-POSIX filesystem. What filesystem is your working directory on?

I am using an external Harddrive where the data is saved. How do I find out about the filesystem?
Best

If you’re on Linux, you can use mount | grep <path> (where <path> is where the hard drive is mounted). I’m not sure on other OS’s. Probably right-click on the drive and look at “Properties”. My guess is that’s it’s probably FAT and that’s why you don’t have symlinks. It’s probably not worth putting the working directory on an external drive, anyway, if you have local space.

The filesystem is called fuse.

When I copy all the data to the internal hard drive it works.
It used to work on the external harddrive before. It might a mounting problem?

Best,
Stephan