
    TkSETI version 3.06 by Rick Macdonald <rickm@vsl.com>

You are running /usr/local/bin/wish patchlevel 8.3.2+.

Usage: tkseti [--help] [user_setiathome_directory]
       user_setiathome_directory defaults to ~/setiathome

    
    ========================
    TkSETI@Home Installation
    ========================

    Untar the distribution file:

    gunzip -qc tkseti-X.XX.tar.gz | tar xvf -
    
    and just place the tkseti file anywhere in your path.

    There is a "contrib" directory where various scripts and
    information has been contributed by TkSETI users.
    
    TkSETI requires Tcl/Tk 8.0 or newer.
    See http://www.scriptics.com/download
    
    ===================
    TkSETI@Home Startup
    ===================

    You must run the setiathome client once manually from the command line
    to get registered. Just answer all the prompts. Once the client is
    running properly, you can run tkseti.

    TkSETI can be started if the client is already running, or it can start
    the client manually or automatically for you. This is explained in the
    Setup section that follows.
    
    TkSETI will look for the client files in the directory ~/setiathome. If
    you've run the client elsewhere, or run more than one client, just
    specify the setiathome client directory on the tkseti command line. For
    example:

    tkseti ~/setiathome

    If your xserver is short on colors, you might try giving TkSETI its own
    colormap:

    tkseti ~/setiathome -colormap new
    
    Multiple Clients
    ================

    If you run multiple setiathome clients, you must run an instance of
    tkseti for each one. TkSETI needs to find just one client, and the way
    to do this is to give the clients unique names or execute them from
    unique paths. Specify this unique string in the "Client Name" setup
    field described next. Examples:

    client1
    cpu0/setiathome

    Here's one way to run more than one setiathome client:
    
    - create another setiathome directory: mkdir ~/setiathome2.
    - cd into the new directory: cd ~/setiathome2
    - make a copy of the client anywhere in your path with a unique name.
      - or -
      make a symlink with a unique name to your client (in this working
      directory or anywhere in your path):
             ln -s /usr/local/bin/setiathome seti2
    - execute the client manually, and select option 2:
    
    We use your email address to identify you.
    Please type:
    1 to set up a new account (first-time users);
    2 to log into an existing account (returning users).
    Your choice (1 or 2): 2
    Email address: you@your.address

    The client will verify your email address and then download another
    work unit and start processing it.

    Execute tkseti with the new directory as an argument:
       tkseti ~/setiathome2
    With the defaults, it may find the wrong client to monitor. Go to the
    Setup window and fill in the proper "Client Name" and "How to Run"
    values.
    
    =================
    TkSETI@Home Setup 
    =================

    The TkSETI Setup window has sections divided up with notebook tabs:
    General Setup, Helper Applications, and Auto Modes.
    
    =====================
    *** General Setup ***
    =====================
    
    The first section of the Setup window offers various options for
    starting or continuing the client when TkSETI starts, and killing or
    pausing the client when TkSETI exits. There is also an option to restart
    the client if it "disappears" after it has been running. This can occur
    if somebody kills it externally, or if it unexpectedly dies on its own.

    The "Master Directory" is where files are kept containing your
    personal best Spike, Gaussian, Pulse and Triplet and the
    coordinates of all the work units that you process so TkSETI can
    plot them all on the Star Map. If you run multiple TkSETIs, point
    them all to the same Master Directory. The Master Directory can be
    the same as one of your setiathome client directories. If you ever
    change the Master Directory, TkSETI will carry over these values
    and merge them with any master files found in the new Master
    Directory.
    
    ===========================
    *** Helper Applications ***
    ===========================
    
    Client Name
    ===========

    The client name is used to find the setiathome client in the output of
    the "How to Stat" command described below. It is usually "setiathome",
    but you may need to enter all or part of the path here, especially if
    you run more than one client at a time. Or, perhaps you've renamed the
    client itself. Note that this is the client executable name, _not_ a
    script that you might use to start the client.

    How to Run (setiathome client)
    ==========
    
    Typical examples:
    
    setiathome
    /usr/local/seti/cpu0/setiathome -nice 19
    /usr/local/bin/setiathome -nice 19
    setiathome -email -nice 19 >& /dev/null

    Higher "nice" values (19 is the highest) give it a low run priority so
    you don't notice the cpu activity so much while you're interacting with
    other programs.
    
    With the "-email" option, the client will send network error messages to
    you via email.
    
    Use ">& /dev/null" to discard the output from the client. Piping the
    output through grep should work, but due to internal buffering you might
    not get anything output for a long time.

    There are two setiathome client command line options that may be of use
    to some people:
    
        -stop_after_process     stop after current WU - do NOT send result
        -stop_after_xfer        stop after current WU - DO send result
    
    How to Kill, Pause, Continue
    ============================

    The Kill, Pause and Continue commands must contain the string "$pid",
    which gets replaced with the process ID of the setiathome client.
    
    Kill:     kill -KILL $pid
    Pause:    kill -STOP $pid
    Continue: kill -CONT $pid
    
    How to Stat
    ===========
    
    Stat:     ps ax
    
    The Stat command is expected to return zero or more lines from
    ps. TkSETI searches these lines for the "setiathome" client program.
    The ps output must contain the "pid", the "status" and at least the
    command name from the command line. The status flag meaning that a
    process is paused is "T", but this can be configured in the Setup window
    ("Paused Flags") with a list of blank-separated values. All other flags
    are considered as running. Zombies (Z or z) are ignored.  For example:
    
    % ps ax
    ... other processes not shown ...
    5809  p0 R N444:18 setiathome -email -nice 19 
    ... other processes not shown ...
    
    The stat string is split into fields by blanks, and the field numbers
    (starting from zero) are configurable for the PID and Status. In the
    example above, the PID index is 0 (5809) and the Status index is 2
    ("R").

    Web Browser
    ===========
    
    This command must contain the string "$url" which gets replaced by
    the SETI@Home web page URL, or a statistics page URL.

    Some systems, such as Debian GNU/Linux, supply "netscape" as a
    wrapper that first tries to open a new window in an
    already-running netscape. If that fails because netscape isn't
    running, it launches a new netscape. If your system doesn't have
    such a wrapper, use the command form shown below for "no wrapper"
    to achieve the same results. The command shown also works with the
    Debian wrapper.
    
    Examples:

    netscape (smart wrapper): netscape $url
    netscape (no wrapper): /bin/csh -c "netscape -remote openURL\\\\($url,new-window\\\\) || exec netscape $url"
    KDE's kfm:  kfmclient openURL $url
    lynx:       xterm -e lynx $url
    
    Proxy Host
    ==========

    If you need to access the web through a proxy server, TkSETI can be
    configured to use the proxy for its own accesses to the web and for
    running the setiathome client.

    At startup, TkSETI checks if you have previously set the HTTP_PROXY
    environment variable, and uses this to set or override any previous
    value stored by TkSETI in the Setup.  Or, in the
    Setup/HelperApplications menu, give the proxy host (eg:
    my.proxy.host) and proxy port number (eg: 8080). In either case, you
    can click "Text Proxy" to actually test the proxy server while
    on-line. Please note that the environment variable, if set, will
    always override any proxy stored in TkSETI's Setup every time TkSETI
    is started.

    TkSETI can't add the proxy to the setiathome command line for you
    because for some people "How to Run" is actually a script, and these
    scripts would not expect this extra parameter. However, TkSETI sets
    the environment variable HTTP_PROXY (in the format "hostname:port")
    as documented in the README file that comes with the setiathome
    client.
    
    ==================
    *** Auto Modes ***
    ==================
    
    The setiathome client can already be running before tkseti is started,
    or tkseti can start it for you. While it's running, tkseti checks the
    client status and progress every 10 seconds and updates the CPU usage,
    progress bar and stats.
    
    You can select manual or automatic starting and stopping of the
    setiathome client from within tkseti. Dial-up users may supply network
    start/stop scripts for TkSETI to run when the client needs to contact
    the server.

    Note that it's up to you to make sure that the interaction between
    these auto modes and any use of these setiathome client command
    line options doesn't conflict:
    
        -stop_after_process     stop after current WU - do NOT send result
        -stop_after_xfer        stop after current WU - DO send result
    
    o   "Do Not Run during..." mode
    
        This automatic mode is controlled simply by specifying a time window
        and days of the week _NOT_ to allow the client to run. In this mode,
        TkSETI will always stop the client during this time. Outside of this
        time window, the other automatic mode ("Monitor System Devices...")
        is also functional.

    o   "Monitor System Devices..." mode
    
        This automatic mode is currently only available for Linux. If you
        know how to do this for your platform, please let me know
        (rickm@vsl.com).

        Automatic starting and stopping is controlled by watching for
        various system activity, typically of the keyboard and mouse. Select
        up to 6 devices to monitor. Choose the correct serial device if you
        have a serial mouse.

        For auto start, set "After" to the number of seconds of idleness to
        wait before (re)starting the client. For auto-stop, set "Auto Mode
        Uses" to instruct tkseti to stop by pausing or killing.

        A threshold may be specified for each device. The device is
        considered "idle" if the number of interrupts during the main
        10 second loop is less than or equal to this threshold.  Note that
        one keystroke is two interrupts. For other devices such as the
        mouse and network interfaces, you'll have to experiment to set
        a threshold value that works for you.
    
        The setiathome client keeps progress checkpoints, so killing it does
        not loose any work. I recommend pausing over killing anyway, unless
        you can't afford to have the memory tied up by the inactive
        setiathome process.

    o   "Run Network Start / Stop scripts"

        This mode is intended for dial-up users. I actually recommend using
        the "diald" daemon instead, but this TkSETI feature may be of some
        use for some people.

        I'm actually unable to test this properly, so please let me know how
        it works for you.
    
        When the client finishes a work unit and needs to contact the
        SETI@Home server, the script "How to Start Net" will be run after
        waiting for the specified number of seconds (the first "after"
        entry). When a new work unit is received, the script "How to Stop
        Net" will be run after waiting for the specified number of seconds
        (the second "after" entry).

        Note that the Start script will not be run during the optional
        "Do Not Dial" period.
    
        Note the the Stop script will _only_ be run if TkSETI ran the Start
        script. Hopefully this makes sense. For example, if your network is
        already up when you start TkSETI, you don't want it to the take the
        network down after the time specified for the Stop script!
    
        TkSETI will kill the client before running the Start script, and
        restart the client after. This is because the client waits for one
        hour between attempts to contact the server. TkSETI makes no attempt
        to determine if the Start script succeeded. If the client still
        requires a work unit after the "after" seconds has elapsed again, it
        goes through the sequence again: kill client; run Start script; run
        client.

        The "Test" buttons on the Setup screen run your scripts immediately.
        The client is not killed in this case.
    
    *** Please note that the "after" time for the Start script must be long
        enough to contact the server and download a new work unit. Don't be
        too impatient! We'll be running this thing for two years.

    *** Currently there is no check to guard against repeated failed attempts
        to start the network and retrieve an new work unit. Please let me
        know if this is a problem.

    *** Also note that your Start script should be able to handle being
        executed when the network is already up. Likewise, the Stop script
        should be able to handle being executed when the network is already
        down. In both cases, just return and do nothing. 

    *** Don't put "&" in your Start and Stop scripts to run them in the
        background. If you do, you need to make the "after" time longer to
        include the time required start your dialup connection. Also, you
        must have a space before the ampersand:  start_net &
        It still may not work; please let me know if you try this.

    ====================
    Window Manager Icons
    ====================

    Check the "contrib" directory for bitmap (xbm) and pixmap (xpm)
    files to use as TkSETI icons.
    
    fvwm
    ====

    Put your pixmap or bitmap file into a directory in the PixmapPath
    or IconPath path where you know fvwm is already looking, or use a
    full pathname in the Style statement below. Then just add one of
    the following to your .fvwm2rc or .fvwmrc file:

        fvwm version 2.x:    Style "Tk-SETI*" Icon seti.xpm
        fvwm version 1.x:    Icon  "Tk-SETI*" seti.xpm

    Then restart fvwm and you've got it.
    
    =======
    Support
    =======

    Contact Rick Macdonald <rickm@vsl.com> with any problems or enhancement
    ideas.

    TkSETI optionally checks after every work unit for updates and
    notifies you when a new version is available. A window is popped
    up and also a message is placed in the TkSETI window manager title
    bar.
    
    The latest version is available from
        http://www.cuug.ab.ca/~macdonal/tkseti

    =======
    Licence
    =======

    TkSETI - interactive automated control of the setiathome UNIX client
    program.

    Copyright (C) 1999-2000 by Rick Macdonald <rickm@vsl.com>.

    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation; either version 2 of the License, or
    (at your option) any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
    Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.


    TkSETI version 3.06 by Rick Macdonald <rickm@vsl.com>

You are running /usr/local/bin/wish patchlevel 8.3.2+.

Usage: tkseti [--help] [user_setiathome_directory]
       user_setiathome_directory defaults to ~/setiathome
