Standard Alfi 6 Download/Installation Notes

Alfi is a graphical front end of the e2e simulation package to create boxfiles to define and setup configurations to be simulated.

In order to run Alfi on a Unix variant OS (e.g., Solaris, Linux), follow these steps:

1. Find the E2E Modeler installation on your system if it exists already, or install it yourself.
The only part of the E2E Modeler which is required for the use of Alfi is the directory which contains the primitive node files (.prm files.)  (Alfi can actually be started without access to the primitives' files, but it cannot do anything useful without them.)  You can download the E2E package here.  The directory containing the .prm files (amongst other files) will be e2e-x.x.x/AdlibMM/.

Note the full path to the primitives directory (e.g., /home/georges/e2e/e2e-2.1.1/AdlibMM/.)

2. Find perl on your system.
Perl is a standard tool which will almost certainly already exist on your machine already.  Use the command

% which perl

to find the path to perl.  If this command does not find perl, look in the usual locations for standard binaries, like /usr/bin, /usr/local/bin, /bin, etc.  Or ask your system administrator where it is.

Note the full path to the perl binary (e.g., /usr/bin/perl.)

3. Find java (or install it) on your system to check that the version is recent enough.
There is a good chance that java has already been installed on your system.  Try

% which java

to see if it is already in your command path.  If it is, determine the version using the command

% java -version

If the version is 1.4.0 or higher for Solaris users, or 1.5.0_04 or higher for linux users, then proceed to the next step.

If you cannot find java, or if the installed version is too old, ask your system administrator to install the most current version or install it yourself in your home directory tree.  (For example, I have installed a local version for myself at /home/bsears/jdk1.5.0_04/bin/java.)  It is not difficult to install.  You can get the latest java packages here.  You should install J2SE 5.x (Sun renamed version 1.5 as 5.0.  They are the same thing.)  Version 5.0 has fewer problems regarding the Java Web Start tool bundled with it (see next step) than earlier versions.

4. Find Java Web Start (or install it) on your system.
Java Web Start (javaws) comes bundled with the latest versions of java.  Look in the same directory for javaws as java itself.  If you do not find javaws there, you can also download an earlier stand-alone version.  In this case get the Java Web Start 1.0.1 package and install it locally.

Note the full path to javaws (e.g., /usr/local/jdk1.5.0_04/bin/javaws.)

5. Get and configure the alfi_ws perl script which is used to launch Alfi.
First, download the alfi_ws script. Place it in either the directory you wish to perform Alfi sessions, or place it where you normally place your executable scripts (somewhere in your executables path of course.)

The first few lines of the script are all you will need to edit:

#!/usr/bin/perl -w
    # edit the above line to point to perl

    # edit this to point toward your installation of javaws
my $WEBSTART = "/usr/local/jdk1.5.0_04/bin/javaws";

############### do not edit below this line ###############

use Cwd ();
.
.
.

As directed in the script, edit the very first line so that the path to perl is correct for your system.  This path should have been determined in step #2 above.

Then edit the path of javaws to agree with what you found in step #4 above.

Now save your changes, quit the editor, and change the script to be an executable:

% chmod +x alfi_ws

6. Set environment variables.
The E2E_PATH environment variable is used by both the E2E Modeler and by Alfi.  If you already use the modeler, most likely you will not need to change the setting.  In general, the E2E_PATH tells Alfi and the modeler where to look for the primitives' files and libraries of commonly used box files.  For example, my E2E_PATH is set to

.:/home/e2e/LinuxHOME/lib:/home/bsears/alfi/AdvLIGO/lib:/home/bsears/alfi/AdvLIGO/Boxes

where /home/e2e/LinuxHOME/lib is the directory containing all the primitives, and /home/bsears/alfi/AdvLIGO/lib:/home/bsears/alfi/AdvLIGO/Boxes lists a couple of directories containing commonly used boxes.

As with many other environment variables, E2E_PATH is usually set in your shell resources file, like your .cshrc file.  Otherwise you will have to set it by hand every time you run Alfi in a new window (shell):

setenv E2E_PATH .:/home/e2e/LinuxHOME/lib:/home/bsears/alfi/AdvLIGO/lib:/home/bsears/alfi/AdvLIGO/Boxes

If (and only if) you are running Alfi under the fvwm window manager, you may want to set another environment variable to mitigate some strange window placement behavior:

setenv ALFI__WINDOW_MANAGER fvwm  (that's 2 underscores after "ALFI")

7. Run alfi_ws.
alfi_ws will automatically pass the Alfi related environment variables to Alfi, as well as setting the working directory to your current directory, and will start Java Web Start to download and start up the most recent release of Alfi.  By using alfi_ws, you will always be using the most recent version of Alfi automatically, with no need to ever download and install new versions by hand.

alfi_ws can take box files as arguments, and will open them on startup.  E.g.,

% alfi_ws COC/COC.box SUS/sensETM.box


This file was updated Sept. 27, 2005.  Please send questions and comments to Bruce.