Installing The Mac OS X Command Line Version Of SETI@home

SETI@home, Old School Style

Are you running Mac OS X and wish you could get the very best performance possible from SETI@home? In response to the recent revival of support for The Mac Observeris SETI@home team, weive put together a guide to running SETI@home on Mac OS X.

First off, you have two software options in Mac OS X. One is the standard graphical version, and the other is a command-line version. If you go the graphical route, you can simply go to http://setiathome.berkeley.edu/macosx.html, download the software, and install it like any other app. The Classic version of SETI@home for Mac OS 8 and 9 users can also be found at http://setiathome.berkeley.edu/mac.html.

SETI@home, Older School Style

If you are more adventurous, however, you may want to consider installing a command line version of the application. Intended for Darwin, Appleis open source base of Mac OS X, the command line software can also be run from Mac OS Xis Terminal. Some people prefer running SETI@home this way because it allows alternate methods of controlling the software. Many also say that it takes less time to complete a work unit when running SETI@home in the Terminal.

If you want to take the plunge, youill first need to point your web browser to http://setiathome.berkeley.edu/unix.html and download the software for "powerpc-apple-darwin1.2." Just scroll down the list until you find it. The file that will be downloaded to your hard drive is in the "TAR" format, which in the UNIX world is roughly the equivalent of a compressed StuffIt (.sit) file. StuffIt Expander should be able to decompress the file just fine, and may even do so automatically depending on which web browser youire using. If StuffIt Expander does not open when you double-click on the file you downloaded, it is possible that part of the file name was cut off. If this is the case, try changing the name to ensure that it ends with a ".tar" suffix.

Now you should have a folder titled something along the lines of "setiathome-3.03.powerpc-apple-d," which I renamed to simply "SETI@home" to make it more friendly. I recommend that you do this as well to make the rest of this tutorial easier to follow because from here on I will refer to this folder as the "SETI@home" folder. You should move the folder to someplace convenient such as your Mac OS X Applications folder.

You probably want to try out your newly-downloaded SETI@home software now. You can do this by opening the Terminal and navigating to its folder. The command prompt typically is a string of text -- the current directory and user name, followed by a % sign. When I am showing you something to type in the Terminal, I will begin the command with the percent sign to indicate that it is to be typed in the Terminal, but you do not need to actually type the % when you enter the command.

With that in mind, type the following in your Terminal:

% cd /Applications/SETI@home/

Now you are in the SETI@home folder and can launch the application. The application is called "setiathome." To run this program, type:

% ./setiathome

Follow the instructions on screen and enter the e-mail address from your SETI@home account when prompted to do so or sign up for a new account if you do not have one.

You now have SETI@home installed and running, but you might want to do more with it. As the software runs, it does not give any feedback. If you prefer to get some indication of its status, it is quite easy. When you invoke SETI@home, type

% ./setiathome -verbose

Note the addition of the "-verbose" flag. (A flag is a UNIX term for some information you give to a program regarding how it should run.) You should also note that when you wake SETI@home to quit, you must press the Control and C keys together, which tells the program to quit.

Making It Easier

Itis nice to be able to run SETI@home in the Terminal now, but it would be nice to have an easier way to launch it. You see, if you move out of the SETI@home directory, or if you have restarted Mac OS X (including logging out and logging in), your terminal will start you off back in the Home directory. This means you will have to re-navigate back to the SETI@home directory to run the app under those circumstances. Fortunately, there is a way to set up a command that allows you to navigate to the right folder and launch the app with one simple command. To accomplish this, weill have to make a shell script. First, you will want to make sure your root account is enabled.

Warning: Enabling the root account can result in reduced security and can also open up the opportunity to make a silly mistake and remove or alter files that you normally couldnit. Use with caution.

To enable root user, open NetInfo Manager, which is in the Utilities folder of the Applications folder. Go to the Domain pulldown menu, then the Security sub-menu, and select Authenticate. Enter your administrator password (most likely the same one you use for your normal user account.) Go to the Domain menu and then Security again, select "Enable root user" and enter a password for the root user to use if necessary. Be sure you pick a password that others will not guess because if they know what it is, they can potentially gain full control over your computer. When youire done, quit NetInfo Manager.

Now open the Terminal again. Navigate to the /usr/bin folder by typing this in the Terminal:

% cd /usr/bin

We will now create the shell script, but must do it as the root user so that changes can be saved, as /usr/bin is normally an area where you are not allowed to create or alter files. Weill call the script "seti" and create it by typing:

% sudo pico seti

Enter your root password, and the screen for a text editor called "pico" will appear. In this window, paste the following text:

#!/bin/sh
cd /Applications/SETI@home/
./setiathome

Go ahead and press the Control key along with X, to exit. Then press "y" to confirm that you wish to save your changes, then hit Return to confirm the file name.

Next, youill probably need to type "rehash" in the Terminal to make your Mac note the added file in its /usr/bin directory. However, you most likely still do not have permission to run the script under your normal user account. To ensure that you can run the script, type this at the Terminal (in the same window, still in the /usr/bin folder.)

% sudo chmod 755 seti

This gives users other than root the ability to run the script. To confirm that your change of permissions was effective, open a new Terminal window and simply type "seti." If it works, you should now be able to run SETI@home with ease, no matter what your current location in the file system.

To have your script run SETI@home in verbose mode, just follow the directions above but replace the line:

./setiathome

with...

./setiathome -verbose

Now that you are a SETI@home guru, you are probably asking how you can add your support to the Mac and Team Mac Observer. Join up! Itis easy and all it costs is your excess CPU time. If you are a company that joins up, weill put your logo on the Team Mac Observer home page! We track the Top 20 Most Completed Units as well as the Top 20 Fastest Members on the Team Home Page as well.

Our friends at Low End Mac have joined forces with us, and they even have a special sub-team of 6100 owners. Applelinks is also a part of our team, and you should be too. Itis fun, itis part of a great scientific experiment, and it really shows off the power of the Mac!

Check out our SETI@home forum for performance tips, configuration help, and other SETI@home discussion.