Digital Unix IRAF Installation Guide

Digital Unix IRAF Installation Guide

2.1. Prepare the root IRAF directory

2.1.1. If updating an existing IRAF installation...

If you are updating an existing IRAF installation then you will be replacing IRAF by the new version, and IRAF should already have an account and root directory on the desired host system. You should save any locally modified files and delete the old system, e.g., login as IRAF and enter something like the following.

% cd $iraf*
% tar -cf /scr0/oiraf.tar local dev unix/hlib
% /bin/rm -rf *
There are many possible variations on this, e.g., you could use mv to move the above directories to someplace outside the main IRAF directory tree. Although it is probably simplest and safest to save entire directories as in the example, in practice only a few files are likely to have been modified. These are the following.

dev/graphcap
dev/hosts
dev/tapecap
dev/termcap
hlib/extern.pkg
hlib/login.cl
hlib/zzsetenv.def
local/.login
Once the old system has been deleted you are ready to install the new one, as described in
§2.2. It is important to delete the old system first to avoid creating junk files or directories when the new system is installed (due to file or directory name changes or deletions). Once the new system has been restored to disk, do not merely restore the files saved above, as you will need to carefully merge local changes into the versions of the files supplied with the new IRAF release (more on this later).

*$iraf symbolizes the UNIX pathname of the root IRAF directory. If no "iraf" environment variable is defined just supply the actual pathname.

2.1.2. If installing IRAF for the first time...

If you are installing IRAF for the first time then the first step is to set up a new account for the user `iraf'. This is necessary for IRAF system management, which should always be done from the IRAF account. The IRAF account has special login files which set up a custom UNIX environment for IRAF system management. Having an IRAF account provides a convenient place (the IRAF system manager's login directory) to keep scratch files created during system configuration.

The location of the IRAF root directory is arbitrary. Our practice here is to locate the software in a system file storage area separate from the operating system files (to simplify Digital Unix upgrades), and then use a symbolic link such as /iraf to point to the actual root directory. This makes life simpler if IRAF is NFS mounted on several machines and it is later necessary to move the IRAF files. Try to keep the path to the physical IRAF root directory short to avoid filename truncation problems when IRAF is run.

In whichever directory you choose to install IRAF you will need to create several directories into which you will unpack the IRAF distribution files. For simplicity we will assume that you use /iraf (or use /iraf as a symbolic link to some other directory), if so you need to create an iraf directory for the source tree (the as.dunx.gen files discussed below), and an irafbin directory for the core system and NOAO package binaries. Within irafbin create a bin.alpha directory for the core binaries (the ib.dunx.alp distribution file) and a noao.bin.alpha directory for the NOAO package binaries (the nb.dunx.alp distribution file). Using this suggested directory structure the IRAF directory tree should look something like:

                    /iraf
                     /  \\
                    /    \\
                /iraf   /irafbin
                          /   \\
                         /     \\
                   bin.alpha  noao.bin.alpha
Note that with this setup, the iraf root directory, i.e. $iraf, is then /iraf/iraf.

The login directory for the iraf account should be $iraf/local (e.g., /iraf/iraf/local, which will be created when unpacking the sources), rather than the IRAF root directory $iraf as one might expect. This is done to provide a work area for local files separate from the main IRAF directory tree, to simplify updates and make it easier to keep track of what has been locally added and what is standard IRAF. In any case, make sure that when the IRAF account is set up the login directory is set correctly, or the IRAF environment will not be set up properly, and later problems are sure to result.

A typical IRAF installation consists of the main IRAF release, a number of BIN directories (the IRAF binaries), and additional directories for layered software such as STSDAS, PROS, and so on. If sufficient disk space is available to keep everything in one area the following directory structure is recommended.

/iraf/iraf                   # iraf root directory ($iraf)
/iraf/iraf/local             # iraf login directory (~iraf)
/iraf/irafbin                # iraf BIN directories
/iraf/irafbin/bin.alpha      # DEC Alpha binaries - core system
/iraf/irafbin/noao.bin.alpha # DEC Alpha binaries - NOAO packages
/iraf/extern/stsdas          # layered package
/iraf/extern/tables          # layered package
/iraf/extern/xray            # layered package
/iraf/extern/ftools          # layered package
    (etc.)
For the purpose of this example we assume that the IRAF files are stored in /iraf; as we say this might be a link and the actual directory is arbitrary. Given this directory the IRAF root $iraf would be "/iraf/iraf/" and the login directory for the IRAF account would be /iraf/iraf/local. The alpha (Digital Unix) binaries for the core IRAF system would be in /iraf/irafbin/bin.alpha, with a link $iraf/bin.alpha pointing to this directory (more on this later).

Given the above directory structure the passwd file entry for the IRAF account would be something like the following.

iraf:abcdef:312:112:IRAF system login:/iraf/iraf/local:/bin/csh
Do not worry about configuring the environment files for the new account as these will be created when the iraf system is later restored to disk.