Skip to content

Instantly share code, notes, and snippets.

@wtbarnes
Last active May 6, 2022 20:37
Show Gist options
  • Save wtbarnes/92afee000f46fd6841aa616f70f67f4a to your computer and use it in GitHub Desktop.
Save wtbarnes/92afee000f46fd6841aa616f70f67f4a to your computer and use it in GitHub Desktop.
Startup scripts for SSW and instructions for macOS install
IDL_LMGRD_LICENSE_FILE=<address>@<my_institution.edu>

Installing SSWIDL on macOS

Step-by-step instructions for a local install of SSW on macOS

  1. Install IDL. Odds are you can obtain a license through your home institution.
    • If installing with a site license (i.e. you need to authenticate over the network) set the following environment variable in your bash profile,
      export LM_LICENSE_FILE=<address>@<my_institution.edu>
    • For some unknown reason, you also need to create the file $HOME/.flexlmrc as above
    • If you are licensing through some other means, these steps may not apply.
  2. Install the latest version of XQuartz. As of macOS 10.12 (Sierra), XQuartz 2.7.11, and IDL 8.5, there is a bug that will cause IDL to crash when opening any widget windows. Follow the instructions here for a quick "hack" to fix this.
  3. Follow the instructions for creating your SSW install script. Once you've selected all of the needed packages, download SSW using the provided install script. It is best to just place the whole tree in $HOME/ssw.
  4. Copy sswidl.sh into $HOME/.local/bin/sswidl.
    • Create .local/bin if it does not exist already.
    • Adjust the instrument list according to the packages you checked in your SSW install.
    • You may also need to run $ chmod u+x $HOME/.local/bin/sswidl to make this script executable.
  5. Add the following line to your .bash_profile,
    export PATH="$PATH:$HOME/.local/bin"
    
  6. Copy startup_idl.pro to $HOME/.startup_idl.pro. Again adjusting the packages added to your path according to the list of instruments and packages you downloaded.
  7. Run $ source .bash_profile to update all of your environment variables. You should now be able to call sswidl to start up a command line SSW session or sswidl -g (or sswidl --gui) to start up the full IDL GUI.
#!/bin/tcsh
setenv SSW $HOME/ssw
setenv SSW_INSTR "sdo/aia sdo/hmi hinode/eis soho/eit chianti poa pfss"
source $SSW/gen/setup/setup.ssw /loud
setenv IDL_DIR /Applications/exelis/idl85
setenv IDL_STARTUP $HOME/.startup_idl.pro
if ($#argv == 0) then
sswidlb
exit 0
else if ("$argv[1]" == "-g" || "$argv[1]" == "--gui") then
sswidlde
else if ("$argv[1]" != "-g" & "$argv[1]" != "--gui") then
echo "Invalid option $argv[1]. Use -g or --gui to open IDL GUI window"
exit 1
endif
; Configure SSW IDL path
ssw_path,/aia
ssw_path,/hmi
ssw_path,/eis
ssw_path,/eit
ssw_path,/chianti
ssw_path,/pfss
ssw_path,/poa
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment