Ubuntu version for BOLD processing

neuroimaging

#1

Any recommendation for an OS most compatible with:
Fmriprep and its dependences (including possible development of these open source tools)?

The machine will be used for running+development of these+ some ML.

@ChrisGorgolewski?

Thanks!


#2

Anything that runs docker will get you all set in a blink - https://fmriprep.readthedocs.io/en/latest/installation.html and https://fmriprep.readthedocs.io/en/latest/usage.html#the-docker-wrapper-cli


#3

Thanks!
Is the development done over docker too?
It’s not always that convenient…
Wondering if I would want it to run without docker, too (manual installation).

What about the installation of other neuro tools- should I better install a Linux distribution coming with these (would you recommend neurodebian?)

Thanks!


#4

It is of course possible to install it without docker: https://fmriprep.readthedocs.io/en/latest/installation.html#manually-prepared-environment-python-3-5 However, you’ll need to get all dependencies installed and functional on your own, which can be nontrivial (EDIT: yes, neurodebian is a pretty safe option).

It is also possible to use a docker image as base and “patch in” an updated (development?) version of fmriprep: https://github.com/poldracklab/fmriprep/wiki/Mounting-niworkflows-for-development


#5

Many thanks!
(I’ve updated the question with another question)

I’m aware to these options- just was wondering which distribution would make the manual env creation easier (haven’t tried till now, because only now got a Linux machine)


#6

neurodebian is probably the most straightforward option


#7

I would recommend Neurodebian for the non-python packages, and go straight to conda for managing the Python environment.


#8

Thanks!
Which version of Debian is the best choice- 18?
(Will be working also with pytorch and tensorflow in this env)
Anyone with such a configuration?
(Ubuntu 18+neurodebian)


#9

I would generally recommend the LTS Ubuntu releases, but that’s mostly just because I’ve gotten tired of fiddling with my OS any more than I absolutely must. I develop on an Ubuntu 16 + Neurodebian + anaconda box and an OSX + anaconda box, but I run all preprocessing and tests through the Docker container, mounting directories as needed with the fmriprep-docker wrapper. This ensures the runtime environment is as consistent as possible with others’, which is necessary from a reproducibility perspective, which saves us development time (reproducing bugs is easier when the main source of variation is data) and aids in the replicability of results.


#10

Many thanks!
Best answers my question!