====== Software Setup ======
We rely on a number of different software packages to analyze MRI and MEG data. Here is a growing tally of what we use and where to get it. Most of these tools reside on github and you should definitely use git to clone the repositories rather than download a snapshot of the code.
====I-LABS IT Ticket====
If you need to submit an IT ticket, do so at [[http://help.ilabs.uw.edu/otrs/customer.pl]]. For help getting an account on this site, contact [[dubinc@uw.edu|Cary Dubinksy]].
====Setting up a user account====
To add a new user with sudo privileges (userid should be maintained across all systems).
sudo useradd -m -G bde,sudo -s /bin/bash userid
To set user password.
sudo passwd userid
Have new user enter desired password.
====Git====
All git directories should be maintained together.
mkdir ~/git
====Yeatman Lab Tools====
cd ~/git
git clone https://github.com/yeatmanlab/BrainTools.git
====Vistasoft====
MATLAB based toolbox, from Brian Wandell's lab at Stanford, that contains many functions we rely on for analyzing diffusion MRI and functional MRI data
cd ~/git
git clone https://github.com/vistalab/vistasoft.git
====Automated Fiber Quantification====
cd ~/git
git clone https://github.com/yeatmanlab/AFQ.git
====Setting up Matlab for AFQ====
AFQ requires Matlab r2014a, SPM8, Vistasoft, and AFQ. If you wish to use a different version of Matlab for your core coding, you can set aliases in your ~/.bashrc file
alias matlabr2016="/usr/local/MATLAB/R2016a/bin/matlab"
For Matlab to see all of the necessary code create a file named startup.m and place it in your home directory. The startup file gets executed automatically when Matlab starts up. To add folders of code to your Matlab search path (making it visible to Matlab):
addpath(genpath('~/Documents/MATLAB/spm8/'))
addpath(genpath('~/git/AFQ/'))
addpath(genpath('~/git/BrainTools/'))
addpath(genpath('~/git/vistasoft/'))
====Anaconda====
Each user should have anaconda set up to manage their Python packages. **All code for REDCap was written using Python3.** Do this before installing nibabel and dipy. Anaconda will manage versions and dependencies for each user separately. Each install will be specific to the user that installs it. Do not install as root, as you will deny yourself privileges to your own directory. You must restart your terminal session after install before using Python or the conda command. See instructions here: https://www.continuum.io/downloads
====nibabel and DIPY====
Python based toolbox for dealing with nifti images. While nibabel is on github we suggest installing using pip:
pip install nibabel
pip install dipy
====pyAFQ====
While we are still in the processing of developing a full implementation of AFQ in Python, some of these files are required for running DKI.
cd ~/git
git clone https://github.com/yeatmanlab/pyAFQ
cd pyAFQ
python setup.py develop
pip install boto3
====Neurodebian repo====
The [[http://neuro.debian.net/|neurodebian project]] is an incredible resource making it easy to install most of the widely used nueroimaging software packages.
wget -O- http://neuro.debian.net/lists/trusty.us-nh.full | sudo tee /etc/apt/sources.list.d/neurodebian.sources.list
sudo apt-key adv --recv-keys --keyserver hkp://pgp.mit.edu:80 0xA5D32F012649A5A9
sudo apt-get update
====FSL, ANTS and other Neurodebian packages====
Once you have added the neurodebian repos you can easily install fsl and other packages
sudo apt-get install fsl-5.0-complete
sudo apt-get install fsl-5.0-eddy-nonfree
sudo apt-get install ants
FSL requires an edit to the .bashrc file
gedit ~/.bashrc
Copy the following into the file that open
# FSL setup
. /etc/fsl/5.0/fsl.sh
====Freesurfer====
The steps and download is [[https://surfer.nmr.mgh.harvard.edu/fswiki/DownloadAndInstall|here]], instructions are repeated below. Download the Linux CentOS 6 x86_64 install file.
cd ~/Downloads
sudo tar -C /usr/local -xzvf freesurfer-Linux-centos6_x86_64-stable-pub-v6.0.0.tar.gz
You'll need to register [[https://surfer.nmr.mgh.harvard.edu/registration.html|here]]. The registration e-mail will tell you which text to copy into a new file, which you can create/edit by
sudo gedit /usr/local/freesurfer/license.txt
We'll be creating a directory for processed subject files on the scratch drive.
mkdir -p /mnt/scratch/projects/freesurfer
We need to resolve an issue with a jpeg library by creating a symbolic link.
cd /usr/lib/x86_64-linux-gnu
sudo ln -s libjpeg.so.8 libjpeg.so.62
Finally, you'll need to edit your bashrc file.
gedit ~/.bashrc
Copy the following text
export FREESURFER_HOME=/usr/local/freesurfer
source $FREESURFER_HOME/SetUpFreeSurfer.sh > /dev/null
export SUBJECTS_DIR=/mnt/scratch/projects/freesurfer
====SPM8====
Fill out the form located [[http://www.fil.ion.ucl.ac.uk/spm/software/download/|here]] in order, making sure to select SPM8. Run this script from the terminal to install.
unzip ~/Downloads/spm8.zip -d ~/Documents/MATLAB/
====Psychtoolbox for Matlab====
Requires Neurodebian repo to install.
sudo apt-get install matlab-psychtoolbox-3
In order to launch Matlab with Psychtoolbox, use terminal command
ptb3-matlab