FreeSurfer Python Development

To facilitate straightforward and reproducible python development in the lab, a custom conda distribution for internal developers is installed at /space/freesurfer/python/linux. To use this version, make sure all calls to python or python3 point to this install by adding the following to your PATH:

export PATH=/space/freesurfer/python/linux/bin:$PATH

Keep in mind there's also a python3 link in /usr/pubsw/bin, so it's important that /space/freesurfer/python/linux/bin comes before that in your PATH.

Developing and Using the FreeSurfer Python Library

The freesurfer python library source, which contains general utilities and various submodules like deepsurfer, gems, and samseg, is developed in the repository under repo/python/freesurfer. In order to utilize this library for your own local development, you must point your PYTHONPATH at it:

export PYTHONPATH=/path/to/your/freesurfer-repository/python:$PYTHONPATH

This allows you to import your working version of the freesurfer library in any script or python interpreter. Alternatively, there is a nightly build of the freesurfer module, enabling import of the package without cloning or installing the full freesurfer repository. To access this, add the following to your PYTHONPATH. Currently, we build for python 3.5-3.8.

export PYTHONPATH=/autofs/cluster/freesurfer/python/fsmodule:$PYTHONPATH