Ubuntu version for BOLD processing



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.




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


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?)



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


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)


neurodebian is probably the most straightforward option


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


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)


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.


Many thanks!
Best answers my question!