# Software Products

## Subversion Repository

SDSS software should be downloaded with subversion (a.k.a. svn). Generally speaking, the products below are organized into three subdirectories.

trunk
holds the very latest development version of the software. Stability is not guaranteed, but if you need to track developments in 'real time', you should check out trunk.
tags
holds labeled versions of the software that are intended for release.
branches
holds active development areas that are meant to be kept separate from trunk. Only experts should look here.

If you only want a copy of the software, a subversion export is the best option. For example to download version v5_5_17 of idlutils:

svn export https://svn.sdss.org/public/repo/sdss/idlutils/tags/v5_5_17 idlutils-v5_5_17


Checking out the trunk of a product (if you really need to do this) is somewhat different:

svn co https://svn.sdss.org/public/repo/sdss/idlutils/trunk idlutils-trunk


Your checkout of the trunk can be kept up-to-date by doing 'svn up'. Consult the subversion documentation for further details.

### Publicly Available Data and Software

SDSS data products:

• sdss
• sdss/catalogs
• eboss
• manga

SDSS software products:

• sdss
• apogee
• eboss
• manga
• sdss3 (archival)

### Requirements

Some SDSS software products require other products. Listed below are the products that require other products in order to function. In addition, there are optional software products that will enhance the functionality of some products, but will not prevent the software from operating if it is not installed.

Note that many of these products are written in and require IDL to function.

Summary of SDSS software requirements
Product Requires Optional
idlspec2d idlutils elodie, platelist, specflat, speclog
idlutils dust, first, rass, rc3, tycho2
photoop idlutils photolog, ptcoeff, secondary_patches, speclog, yannytools
platedesign photoop platelist, plate
pydl yannytools idlutils
xdqso idlutils

Read-write access is limited to members of the SDSS collaboration. If you are a member of the collaboration, you can set up read-write access by following the instructions on the SDSS wiki (and you will know how to find this).

## sdss4tools

If you use TCLSH modules or LUA modules (LMOD), then sdss4tools provides an automated way to install SDSS software and data products. The procedure below describes how to bootstrap sdss4tools, which will then allow you to sdss4install other products.

sdss4install downloads the software, builds it and adds a module file to setup the required environmental variables (including \$PATH, etc.)

1. Install TCLSH modules or LUA modules (LMOD)
2. Create a new directory under which all of your sdss4installed software will be built, for example:
mkdir ~/software/sdsscd ~/software/sdss
3. Set SDSS4_PRODUCT_ROOT to the directory you created in the previous step, following that example:
export SDSS4_PRODUCT_ROOT=~/software/sdss [bash]setenv SDSS4_PRODUCT_ROOT=/software/sdss [csh]
4. Add the sdss4 modulefiles directory to your module path, following the example from the previous 2 steps:
module use ~/software/sdss/modulefiles
svn export https://svn.sdss.org/public/repo/sdss/sdss4tools/trunk/bin/sdss4bootstrap
6. Run the bootstrap installer:
./sdss4bootstrap
7. path to

8. Get sdss4tools into you path:
module load sdss4tools
9. Steps 4 and 7 may be added to your ~/.module file, and that file sourced by your .bashrc or .tcshrc for convenience.

It will now be possible to install SDSS-IV data or software products by specifying the partial path to the product, e.g.:

sdss4install --public data/sdss/catalogs/dust v0_2

sdss4install --public sdss/idlutils v5_5_17


## sdss3tools (archival)

If you use EUPS at your institution, then sdss3tools is a more automated way to install SDSS-III archival software. The procedure below describes how to install sdss3tools, which will then allow you to install other products.

If you don't know what EUPS is, you should ignore this section.

1. Install EUPS
svn export https://svn.sdss.org/public/sdss3/repo/sdss3tools/trunk/bin/sdss3bootstrap
/bin/bash sdss3bootstrap
setup sdss3tools
sdss3install -c idlutils v5_5_14