Seti@home On Unix and Linux

Lots of tools for Seti@home exist for Unix and Linux. Here are some tips:

  1. Using xsetiathome as a screensaver
  2. Watching local and remote boxes' progress.



Using Xsetiathome as a Screensaver

Part of the standard setiathome distribution is a program called xsetiathome. This is a graphical program designed to be used with the setiathome commandline program. Using xsetiathome as a screensaver requires that you use a program called xautolock. When you lock your console, instead of calling a normal screenlocker, you call xsetiathome instead. I use a small shell script to do it:


############## SNIP #############

#!/bin/sh


#command=xscreensaver
#command=xlock
command=xautolock
setidir=$HOME/setiathome

if ! ( `xset q | grep 'DPMS is Enabled'` ); then
   xset dpms 1600 1900
   xset s on
   xset s blank
   xset s 1300
fi

case $command in

  xscreensaver ) if [ `pidof xscreensaver` ]; then
		  xscreensaver-command -lock
		else
		  xscreensaver&
		  xscreensaver-command -lock
		fi
		;;
  xlock )	killall xscreensaver 2>/dev/null
		xlock -mode random
		;;
  xautolock )	killall xscreensaver 2>/dev/null
  		killall xautolock    
		if (ps ax|grep setiathome |grep -v grep); then
		  xautolock -locker "~$setidir/xsetiathome -fullscreen"&
		  xautolock -locknow
		else
		  $setidir/setiathome -graphics&
		  xautolock -locker "$setidir/xsetiathome -fullscreen"&
		  xautolock -locknow
		fi  
		 ;;
  * )		echo "You need to choose xscreensaver or xlock or xautolock\n"
  		exit 1
esac		

###################  SNIP  #####################3

This is just one way to do it. There are others, I'm sure.


Watching SETI Progress on Local and Remote Boxes

There are text clients as well as web solutions for doing this. Since I deploy some boxes without web servers or X, the text clients seem to be a preferrable solution for keeping track.

  1. Setiview is a nifty curses-based program that I like to use. I normally keep an xterm running screen, and each of its screens is ssh'ed into a remote box, which I can cycle through and keep up with where the progress is.
  2. Another possibility is SetiStats4Linux. It will run basically anywhere you have bash, not just on Linux.
  3. If you like to use your webserver, here's a possibility called HTMLPerlSeti. I haven't tried this yet, but it looks pretty interesting.