macOS 11 (via command line)¶
What to do?¶
These setup instructions are for macOS 11.
Each step involves either copy+pasting a command, or clicking on a download link.
The user must have admin privileges (can run
sudo ...). Some steps require an internet connection.Do the system check in the “Evaluate” stage. Try any recommendations in its “Please Fix” section.
If you run into any problems, please just ask a clear question on the Message Board.
Install Xcode and XQuartz (admin priviledges required)¶
Copy+paste:
xcode-select --install
Note
You may want to check “Software Update” in “System Preferences” for an xcode update after this finishes installing.
- For XQuartz, click on this link:
-
Then click on the “Quick Download” DMG, and follow the instructions to install.
Note
The XQuartz installer may log you out after the installation completes.
Purpose: These install Xcode command line tools (needed for the
gcc compiler et al.) and XQuartz (the desktop manager needed to run
X11 programs, such as afni!).
All in One Block¶
Copy+paste the following:
touch ~/.cshrc echo 'if ( $?DYLD_LIBRARY_PATH ) then' >> ~/.cshrc echo ' setenv DYLD_LIBRARY_PATH ${DYLD_LIBRARY_PATH}:/opt/X11/lib/flat_namespace' >> ~/.cshrc echo 'else' >> ~/.cshrc echo ' setenv DYLD_LIBRARY_PATH /opt/X11/lib/flat_namespace' >> ~/.cshrc echo 'endif' >> ~/.cshrc touch ~/.bashrc echo 'export DYLD_LIBRARY_PATH=${DYLD_LIBRARY_PATH}:/opt/X11/lib/flat_namespace' >> ~/.bashrc echo 'export PATH=$PATH:/Library/Frameworks/R.framework' >> ~/.bashrc cd curl -O https://afni.nimh.nih.gov/pub/dist/bin/misc/@update.afni.binaries tcsh @update.afni.binaries -package macos_10.12_local -do_extras source ~/.bashrc cp $HOME/abin/AFNI.afnirc $HOME/.afnirc suma -update_env
Note
Upon first afni or suma launch, the terminal will pop up messages to ask for permissions to access various data on your system. Possibly including: Photos, Desktop, Contacts, Calendar, Reminders, Documents, Downloads. I would recommend NOT allowing Photos, Contacts, Calendars, and Reminders. But the others will be useful.
Note
And if you launch afni from your home folder, you will get a lot of “Operation not permitted” errors from afni trying to find datasets in restricted folders under your home directory. Like “~/Library” etc. You can safely ignore those errors.
Reboot¶
Please logout and log back into your system.
Purpose: This deals with system updates, any change in login shell, and path updates.
Install R (admin priviledges required)¶
- Click on this link: https://cran-archive.r-project.org/bin/macosx/el-capitan/base/R-3.6.3.nn.pkgPurpose: Get R-3.6.3 (a recent, but not the most recent, version of R).
Note
You will get an error that prevents you from launching the installer when you double click it. You will have to go to your “Downloads” folder, right click the R-3.6.3.nn.pkg file and select “Open”. Then you will get the same warning, but you can click “Open” to launch the installer.
Copy+paste:
sudo rPkgsInstall -pkgs ALL
Purpose: Get specific R packages needed for AFNI programs.
Note
Note for afni staff.
Need path update in .zshrc etc to include /Library/Frameworks/R.framework/Resources
also may need gfortran https://cloud.r-project.org/bin/macosx/tools/gfortran-6.1.pkg
Install Netpbm (admin priviledges required)¶
Copy+paste:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
Copy+paste:
brew install netpbm
Extras¶
Copy+paste the following:
defaults write org.macosforge.xquartz.X11 wm_ffm -bool true defaults write org.x.X11 wm_ffm -bool true defaults write com.apple.Terminal FocusFollowsMouse -string YES
Setup Python (opt)¶
AFNI has very minimal Python requirements—at present, matplotlib and numpy. For example, for the recommended automatic QC output from afni_proc.py, matplotlib is necessary.
You can use any method to install+manage Python and its dependencies. In fact, your OS might have all the Python+modules needed to run AFNI already. Check this by running:
afni_system_check.py -check_all
... and seeing there are no notes in the “Please fix” section at the end—if there are none about Python, then you are all set!
But if you do still need to setup Python with appropriate modules, or you want to manage different environments with different package needs (Python or otherwise), then we note that we have found Miniconda to be convenient. It is cross-platform (with occasional OS-specific quirks). If you are interested in either using it or reading more about it, you can check out this tutorial, which has both verbose and quick instructions.
But Miniconda is not required.
Prepare for Bootcamp¶
The AFNI Bootcamp involves hands-on learning with processing and looking at data. The packages installed here include the data, handouts and useful “cheat sheets” of commands. The full download size is several GB, and you should leave at least 10 GB free on your computer after downloading+unpacking the data, to be able to run various examples.
Copy+paste (to download+upack Bootcamp data to your home directory):
cd curl -O https://afni.nimh.nih.gov/pub/dist/edu/data/CD.tgz tar xvzf CD.tgz cd CD tcsh s2.cp.files . ~ cd ..
Copy+paste (to download+upack data for investigating QC in FMRI):
cd curl -O https://afni.nimh.nih.gov/pub/dist/edu/data/boot_qc/bootcamp_qc_sub_rest_A.tgz curl -O https://afni.nimh.nih.gov/pub/dist/edu/data/boot_qc/bootcamp_qc_sub_rest_B.tgz curl -O https://afni.nimh.nih.gov/pub/dist/edu/data/boot_qc/bootcamp_qc_sub_task_A.tgz tar -xf bootcamp_qc_sub_task_A.tgz tar -xf bootcamp_qc_sub_rest_A.tgz tar -xf bootcamp_qc_sub_rest_B.tgz
If no errors occur in the above, and your
afni_system_check.pysays things are OK, you can delete/remove the tarred/zipped package, using:cd rm CD.tgz rm bootcamp_qc_sub_task_A.tgz rm bootcamp_qc_sub_rest_A.tgz rm bootcamp_qc_sub_rest_B.tgz
If you are confident in the downloads+unpacking, you can also deleted theCD/directory in the present location.- !Pro tip!: Bring a computer mouse to use at the Bootcamp. It is muuuuch easier to follow the demos that way.
Read+practice the handy Unix documentation/tutorial. This will give you a quick lesson/refresher on using basic Linux shell commands (e.g., ls, cd, less, etc.). It will greatly enhance your bootcamp experience– we promise!
Evaluate setup/system (important!)¶
Open a new terminal, and then copy+paste:
afni_system_check.py -check_all
- Read the “Please Fix” section at the end. If there are no suggestions, then rejoice! Otherwise, try the suggestion(s) there.
Open up the AFNI and SUMA GUIs, juuuust to make sure all is well:
afni suma
Report any crashes or problems!
If stuck, then …
try searching online with the error message, and/or ask on the Message Board
send the system check to an AFNI guru for advice—copy+paste:
afni_system_check.py -check_all > out.ASC.txt
... and email the file “out.ASC.txt”.
Niceify terminal (optional, but goood)¶
To improve your life when using the terminal, copy+paste these:
echo 'set filec' >> ~/.cshrc
echo 'set autolist' >> ~/.cshrc
echo 'set nobeep' >> ~/.cshrc
echo 'alias ls ls -G' >> ~/.cshrc
echo 'alias ll ls -lG' >> ~/.cshrc
echo 'alias ltr ls -lGtr' >> ~/.cshrc
echo 'alias ls="ls -G"' >> ~/.bashrc
echo 'alias ll="ls -lG"' >> ~/.bashrc
echo 'alias ltr="ls -lGtr"' >> ~/.bashrc
echo 'alias ls="ls -G"' >> ~/.zshrc
echo 'alias ll="ls -lG"' >> ~/.zshrc
echo 'alias ltr="ls -lGtr"' >> ~/.zshrc
Purpose: The first command block sets up tab autocompletion
for tcsh (which should already be enabled for bash users by
default). The second set of commands make aliases for the main shells
so that different types of files (“normal” files, zipped files,
executables, et al.) and directories are shown using different colors
and boldness. It makes it much easier to navigate on a terminal,
IMHO.
Install extras (optional, but recommended for Bootcamp prep)¶
If you plan to use the FATCAT_matplot functionality in AFNI, then copy+paste the following:
@afni_R_package_install -shiny -circos
Purpose: This script will install the R packages for FATCAT_matplot and other ‘shiny’ tools (via bioconductor). And it might take a little while to complete…
Keep up-to-date (remember!)¶
To update your AFNI sometime, copy+paste:
@update.afni.binaries -d
That’s it!!
Purpose: This will automatically download the correct, latest AFNI version to your computer, replacing your old binaries. It will also update the
apearchhelp information. Update often!To check your AFNI version, copy+paste:
afni -ver
Purpose: Report this useful info whenever asking a question on the Message Board!
Note
The record of all changes (new options, new programs, bug fixes, et al.) in AFNI programs is maintained for all to see in the online AFNI History.
Enable more SUMA keypresses (recommended)¶
Symbol |
Abbrev |
Name |
|---|---|---|
|
cmd |
command |
|
opt (or alt) |
option (or alt) |
|
shift |
shift |
|
ctrl |
control |
|
left, up, down, right |
left arrow, up arrow, down arrow, right arrow |
Some of Mac’s default keyboard shortcuts hijack basic SUMA GUI keypresses. You can unset those from the Mac list, and therefore use them in SUMA.
Click your way to “System Preferences” -> “Keyboard” -> “Shortcuts”.
In the “Mission Control” tab, change or deselect:
ctrl+up,ctrl+down,ctrl+left,ctrl+rightF10
Other key combinations to leave free include:
shiftplus any arrowsctrl+shiftplus any arrowsctrl+r,ctrl+s,ctrl+h,ctrl+n




