summaryrefslogtreecommitdiff
path: root/astro/setiathome/files
diff options
context:
space:
mode:
authorKris Kennaway <kris@FreeBSD.org>2001-01-27 04:40:33 +0000
committerKris Kennaway <kris@FreeBSD.org>2001-01-27 04:40:33 +0000
commit4a208e0f030c7cdeed8b5be9c2558347f21b5d15 (patch)
tree911e9ced0a5363652c5229d18b901e177c14b963 /astro/setiathome/files
parentAdd xw 0.0.8, an X app to list current users logged into the system. (diff)
Update to setiathome 3.03 and replace inactive maintainer.
Submitted by: Cyrille Lefevre <clefevre@citeweb.net> PR: 24520
Notes
Notes: svn path=/head/; revision=37618
Diffstat (limited to 'astro/setiathome/files')
-rw-r--r--astro/setiathome/files/setiathome.1170
-rw-r--r--astro/setiathome/files/setiathome.sh35
-rw-r--r--astro/setiathome/files/xsetiathome.18
3 files changed, 136 insertions, 77 deletions
diff --git a/astro/setiathome/files/setiathome.1 b/astro/setiathome/files/setiathome.1
index b718c0d86601..4ac329052633 100644
--- a/astro/setiathome/files/setiathome.1
+++ b/astro/setiathome/files/setiathome.1
@@ -1,5 +1,5 @@
.\" $FreeBSD$
-.Dd May 19, 1999
+.Dd Dec 12, 2000
.Dt setiathome 1 LOCAL
.Os FreeBSD
.Sh NAME
@@ -37,14 +37,14 @@ and direct its output to
if you like.
.Pp
.Nm
-can be freely aborted and restarted.
+can be freely stopped and restarted.
It saves its state in files, and will pick up where it left off.
.Pp
If you want to run multiple instances of
.Nm
(on a multiprocessor machine, or on multiple machines
that share a filesystem) each one must be run in a different directory.
-.Pp
+.Sh IMPLEMENTATION NOTES
.Nm
requires about 0.5\ MBytes of disk space per working directory, and about
15\ MBytes of memory per instance.
@@ -56,6 +56,63 @@ requires a permanent or
Internet connection to upload results to and download new work units from the
.Tn SETI@home
server at any time.
+.Sh OPTIONS
+.Bl -tag -width countries
+.It Fl countries
+Show list of country codes.
+.It Fl email
+Send E-mail (to login E-mail address) on errors.
+Useful if you run in background directed to
+.Pa /dev/null .
+.It Fl graphics
+Generate a data stream for the
+.Xr xsetiathome 1
+graphical interface.
+.It Fl login
+Login or create new account.
+.It Fl nice Ar N
+Set
+.Xr nice 1
+priority to
+.Ar N
+(default 1).
+.It Fl nolock
+Omit the multiple-instance check, which uses file locking
+(not available on some NFS systems).
+.It Fl proxy Ar hostname : Ns Ar port
+Connect to
+.Tn SETI@home
+server via specified HTTP proxy server and port.
+.It Fl socks_passwd Ar password
+SOCKS
+.Ar password .
+.It Fl socks_server Ar hostname : Ns Ar port
+Connect to
+.Tn SETI@home
+server via specified SOCKS server and port.
+Overrides
+.Ev SOCKS_SERVER .
+SOCKS versions 4 and 5 are supported.
+.It Fl socks_user Ar name
+SOCKS user
+.Ar name .
+.It Fl stop_after_process
+Stop after processing current work unit.
+Do not send result.
+.It Fl stop_after_xfer
+Stop after current work unit has been sent to the SETI
+server and a new work unit has been obtained.
+(See also
+.Pa stop_after_send.txt
+mentioned in
+.Sx FILES
+below.)
+.It Fl verbose
+Print a running summary of the work being done.
+.It Fl version
+Show software version.
+.El
+.Sh USAGE
.Ss Starting setiathome
This
.Fx
@@ -95,9 +152,11 @@ If you change values in the configuration file, you need to stop and start
.Nm Ns ,
and possibly reconfigure the working directory for the changes to take
effect. Run
+.Pp
.Dl /usr/local/etc/rc.d/setiathome.sh stop
.Dl /usr/local/etc/rc.d/setiathome.sh register
.Dl /usr/local/etc/rc.d/setiathome.sh start
+.Pp
to do that.
.Ss Setting up setiathome
You can use the start-up script to set up a working directory
@@ -126,62 +185,6 @@ to
.Ed
.Pp
to the user's crontab.
-.Sh OPTIONS
-.Bl -tag -width countries
-.It Fl countries
-Show list of country codes.
-.It Fl email
-Send E-mail (to login E-mail address) on errors.
-Useful if you run in background directed to
-.Pa /dev/null .
-.It Fl graphics
-Generate a data stream for the
-.Xr xsetiathome 1
-graphical interface.
-.It Fl login
-Login or create new account.
-.It Fl nice Ar N
-Set
-.Xr nice 1
-priority to
-.Ar N
-(default 1).
-.It Fl nolock
-Omit the multiple-instance check, which uses file locking
-(not available on some NFS systems).
-.It Fl proxy Ar hostname : Ns Ar port
-Connect to
-.Tn SETI@home
-server via specified HTTP proxy server and port.
-.It Fl socks_passwd Ar password
-SOCKS
-.Ar password .
-.It Fl socks_server Ar hostname : Ns Ar port
-Connect to
-.Tn SETI@home
-server via specified SOCKS server and port.
-Overrides
-.Ev SOCKS_SERVER .
-SOCKS versions 4 and 5 are supported.
-.It Fl socks_user Ar name
-SOCKS user
-.Ar name .
-.It Fl stop_after_process
-Stop after processing current work unit.
-Do not send result.
-.It Fl stop_after_xfer
-Stop after current work unit has been sent to the SETI
-server and a new work unit has been obtained.
-(See also
-.Pa stop_after_send.sah
-mentioned in
-.Sx FILES
-below.)
-.It Fl verbose
-Print a running summary of the work being done.
-.It Fl version
-Show software version.
-.El
.Sh ENVIRONMENT
.Bl -tag -width SOCKS_SERVER
.It Ev HTTP_PROXY
@@ -207,45 +210,60 @@ will query you.
.El
.Sh FILES
.Bl -tag -width /var/db -compact
-.It Pa /usr/local/etc/setiathome.conf
-Optional configuration file for the start-up script.
.It Pa /usr/local/etc/rc.d/setiathome.sh
Start-up script.
+.Pp
+.It Pa /usr/local/etc/setiathome.conf
+Optional configuration file for the start-up script.
+.Pp
.It Pa /var/db/setiathome/
Primary working directory.
+.Pp
.It Pa /var/db/setiathome/user_info.sah
Registration data.
+.Pp
.It Pa /var/db/setiathome/ Ns Va n Ns Pa /
Working directories for additional process
.Va n
(when running more than one instance).
+.Pp
.It Pa /var/db/setiathome/ Ns Xo
.Op Ns Va n Ns Pa / Ns
.Pa lock.sah
.Xc
Lock file to prevent multiple instances to work on the same data.
+.Pp
.It Pa /var/db/setiathome/ Ns Xo
.Op Ns Va n Ns Pa / Ns
.Pa *.sah
.Xc
Working files.
These should not be modified.
+.Pp
.It Pa /var/db/setiathome/ Ns Xo
.Op Ns Va n Ns Pa / Ns
.Pa pid.sah
.Xc
The process ID of the current instance.
+.Pp
.It Pa /var/db/setiathome/ Ns Xo
.Op Ns Va n Ns Pa / Ns
-.Pa stop_after_send.sah
+.Pa stop_after_send.txt
.Xc
While the client is running, touch this file in the working directory
to finish up your current work unit, return your result, and not
download a new work unit.
When the processing is finished, and the result sent, the client will stop.
+Note this one file extension is
+.Pa .txt ,
+while all other files used by
+the client have extensions
+.Pa .sah .
.El
.Sh SEE ALSO
-.Xr xsetiathome 1
+.Xr xsetiathome 1 ,
+.Xr ipcs 1 ,
+.Xr ipcrm 1 .
.Sh AUTHORS
.Tn SETI@home
was developed by David Anderson, Jeff Cobb, Charles Congdon, Charlie Fenton,
@@ -256,3 +274,29 @@ Silen, Woody Sullivan, and Dan Werthimer.
amended the original manual page for this
.Fx
port.
+.Sh BUGS
+Outstanding shared memory segments and semaphores may be left
+active in case of an abnormal exit of the
+.Ic setiathome -graphics
+process. These can prevent any future invocation of
+.Ic setiathome -graphics .
+To resolve this problem, use
+.Xr ipcs 1
+and
+.Xr ipcrm 1
+to remove shared memory segments and semaphores that
+are not associated with a process. This behavior may vary
+depending upon how your
+.Ux
+system handles this situation.
+.Pp
+For version 3.* clients, the estimated progress as indicated
+by the
+.Pa prog=
+line in the
+.Pa state.sah
+file in not exactly linear
+in relationship to completion time. Using this value to
+predict completion time may not be completely accurate.
+The linear relationship will vary depending upon the characteristics
+of the work unit parameters.
diff --git a/astro/setiathome/files/setiathome.sh b/astro/setiathome/files/setiathome.sh
index 9d65ed660257..65b8ec941cf9 100644
--- a/astro/setiathome/files/setiathome.sh
+++ b/astro/setiathome/files/setiathome.sh
@@ -6,13 +6,18 @@
# override these variables in ${PREFIX}/etc/setiathome.conf
seti_wrkdir=/var/db/setiathome # primary working directory
-seti_user=nobody # user id to run as
-seti_nice=1 # nice level to run at
+seti_bindir=!!SUBDIR!! # exec directory relative to ${PREFIX}
+seti_command=setiathome # command name
+seti_std_args=-email # command arguments for standard mode
+seti_reg_args=-login # command arguments for register mode
+seti_user=nobody # user id to run as
+seti_nice=1 # nice level to run at
seti_maxprocs=`sysctl -n hw.ncpu` # max. number of processes to start
+seti_syslog=daemon.err # syslog facility.level
-PREFIX=/`expr $0 : '/\(.*\)/etc/rc.d/setiathome.sh'`
-if [ "x${PREFIX}" = "x/" ]; then
- printf "\n`basename $0`: Cannot determine PREFIX.\nPlease use the complete pathname." >&2
+if ! PREFIX=$(expr $0 : "\(/.*\)/etc/rc\.d/${0##*/}\$"); then
+ echo "${0##*/}: Cannot determine PREFIX." >&2
+ echo "Please use the complete pathname." >&2
exit 64
fi
@@ -31,25 +36,28 @@ case $1 in
start)
for i in ${seti_wrksuff}; do
if [ ! -d ${seti_wrkdir}/${i} ]; then
- logger -sp daemon.err -t setiathome \
+ logger -sp ${seti_syslog} -t ${seti_command} \
"unable to start: ${seti_wrkdir}/${i} is missing."
exit 72
fi
if [ ! -f ${seti_wrkdir}/${i}/user_info.sah ]; then
- logger -sp daemon.err -t setiathome \
+ logger -sp ${seti_syslog} -t ${seti_command} \
"unable to start: please log in to SETI@home first. (${seti_wrkdir}/${i}/user_info.sah is missing.)"
exit 72
fi
done
for i in ${seti_wrksuff}; do
- su -m ${seti_user} -c \
- "(cd ${seti_wrkdir}/${i} && exec ${PREFIX}/bin/setiathome -email -nice ${seti_nice} >/dev/null &)"
+ su -m ${seti_user} -c "\
+ (cd ${seti_wrkdir}/${i} && \
+ exec ${PREFIX}/${seti_bindir}/${seti_command} \
+ ${seti_std_args} \
+ ${seti_nice+-nice} ${seti_nice} >/dev/null &)"
echo -n " SETI@home"
done
;;
stop)
- killall setiathome
+ killall ${seti_command}
;;
register)
@@ -67,7 +75,10 @@ case $1 in
fi
# No need to register if we've already done so
if [ "X${seti_dontlogin}" != "Xyes" ]; then
- su -m ${seti_user} -c "cd ${seti_wrkdir} && ${PREFIX}/bin/setiathome -login"
+ su -m ${seti_user} -c "\
+ cd ${seti_wrkdir} && \
+ exec ${PREFIX}/${seti_bindir}/${seti_command} \
+ ${seti_reg_args}"
fi
if [ ${seti_maxprocs} -gt 1 ]; then
@@ -86,7 +97,7 @@ case $1 in
;;
*)
- echo "usage: `basename $0` {start|stop|register}" >&2
+ echo "usage: ${0##*/} {start|stop|register}" >&2
exit 64
;;
esac
diff --git a/astro/setiathome/files/xsetiathome.1 b/astro/setiathome/files/xsetiathome.1
index 2e4849407b57..0b0f224452d4 100644
--- a/astro/setiathome/files/xsetiathome.1
+++ b/astro/setiathome/files/xsetiathome.1
@@ -1,5 +1,6 @@
.\" $FreeBSD$
-.Dd Feb 13, 2000
+.\"
+.Dd Dec 12, 2000
.Dt xsetiathome 1 LOCAL
.Os FreeBSD
.Sh NAME
@@ -38,7 +39,10 @@ Take over the entire display.
When running in this mode, any mouse presses will exit the application.
.El
.Sh SEE ALSO
-.Xr setiathome 1
+.Xr setiathome 1 ,
+.Xr xautolock 1 ,
+.Xr ipcs 1 ,
+.Xr ipcrm 1 .
.Sh BUGS
Please note, this
.Nm