----------------------
Installation
----------------------

 1	Overview
  1.1	Spat vs Other 0
 2	Unpacking/Installing
  2.1	Redhat Package Management (Binaries) RPM
  2.2	Redhat Package Management (Sources) SRPM
  2.3   Binary General Package Format (i386.tar.gz)
  2.4	Binary General Package Format (src.tar.gz)
  2.5   Post Installation
 3	Configuration
  3.1	Gnome Configuration (Mandatory)
  3.2	General Configuration (Optional)
 4	Authentication and Spat	

----------------------
1	Overview
----------------------

 First let us say thank you for downloading Spat.

 Spat was designed out of pure necessity.
 Until Spat, there has been no easy way to send a
 simple message to a users X terminal.
 Spat is NOT AN INTERNET BASED INSTANT MESSENGER. 
 Think of it as an Inter Office Communications Client.
 
 Before X we all relished in a couple of utilities
 called write(1) and wall(1). Until now, unfortunaly there
 has not yet been an easy to use - easy to configure 
 way to send simple messages to a users terminal, or
 a broadcast to all of them.

----------------------
1.1	Spat vs Other Messangers
----------------------

 Many "Instant Messengers" do exist however.
 Thanks to companies like Yahoo and AOL, we
 can all send instant messages over the internet.
 This has one major downfalls for business intranets:
 If you are not connected to the internet, it doesnt 
 work. They all require authenication to a
 propriatary "Instant Messaging Server"

 Spat solves this. With Spat we can easily get a list
 of users and send them messages. Spat does not require
 central authentication, or a central server. Spat
 does not rely on sending messages to an internet based
 messaging server before relaying the message back to 
 the user sitting in the next room.
 
 We tried to make this as configurless as possible, this
 way the Systems Administrator will not have to spend
 anytime changing preferences in an "rc" file somewhere.

 
----------------------
2	Unpacking/Installing
----------------------

 Installation varies from distribution to distribution, but
 we are only covering two ways. Redhat RPMS's and the standard
 TAR.GZ format.
 We plan to support more Package Management systems later, and
 hopefully with contributions this can become a reality sooner
 rather than later.

----------------------
2.1	Redhat Package Management (Binaries) RPM
----------------------

 This should be fairly easy. In my opinion Redhat has
 devised probably the best propriatary Package Management System.

 To install the binary RPM (probably named spat-X.X.X-X.i386.rpm) 
 one would simply type the following at a command prompt:
 
 rpm -Uvh spat-0.9.8-1.i386.rpm

 Obviously you would replace the spat-0.9.8-1.i386.rpm filename
 with the one you downloaded.

----------------------
2.2	Redhat Package Management (Sources) SRPM
----------------------

 ** This is for experienced programmers only, 
 ** please use the method above to install
 ** Spat on a Redhat system.

 If you are choosing this option I assume you know what
 to, but here is a brief rundown anyways.

 To install this package, type:

 rpm -v spat-0.9.8-1.src.rpm --rebuild

 this will compile and install the the source RPM onto
 your system. This will require that you have the proper
 libraries to compile the application.

----------------------
2.3	Binary General Package Format (i386.tar.gz)
----------------------

 This is the general Unix/Linux way of doing things.
 To unpack Spat, at a terminal simply type:

 tar zvxf spat-0.9.8-1.i386.tar.gz

 this will create a directory called "spat-0.9.8-1"
 in the directory in which you executed the "tar" command.
 Next type:
 
 cd spat-0.9.8-1
 make install

 This will change your current working directory into
 "spat-0.9.8-1" and then install the binaries onto your
 system.

----------------------
2.4	Source General Package Format (src.tar.gz)
----------------------
 
 This is for a more advanced user. If you are
 doing this, I assume you understand how to compile
 an application. But here is an overview of 
 the command you will execute:

 tar zvxf spat-0.9.8-1.src.tar.gz
 cd spat-0.9.8-1
 ./configure
 make
 make install

----------------------
2.5	Post Installation
----------------------
 
 This should do it. Spat installs the following items.

 /usr/doc/spat-0.9.8-1/FAQ	(Frequently Asked Questions)
 /usr/doc/spat-0.9.8-1/INSTALL	(the file you are reading now)
 /usr/local/bin/spat		(the Spat client executable)
 /usr/local/bin/spatd		(the Spat server)

 (The following items add the "Intranet" menu option to the Gnome Panel Menu)

 /usr/share/gnome/apps/Intranet/.directory
 /usr/share/gnome/apps/Intranet/spat.desktop
 /usr/share/pixmaps/gnome-intranet.png
 /usr/share/pixmaps/spat.png

----------------------
3	Configuration
----------------------

 Spat was designed to be easy to configure.

 If you need help with installing Spat, please
 e-mail me jess@codehost.com. I would be more
 than happy to help you to get Spat up and 
 running.

----------------------
3.1	Gnome Configuration (Mandatory)
----------------------

 If you are running Gnome (which spat relies upon),
 then simply right click on the Gnome Panel, click
 "Applets", then click on "Intranet", then "spatd".

 All done, Spat is working. To verify this, you will
 notice a small box on the Gnome Panel with a "s!"
 on it. If you see this, everything is OK.

----------------------
4	Authentication and Spat
----------------------

 This is optional reading, probably for the Systems Administrator,
 or indivdual curious as to how Spat authenticates itself to other
 Spat's on the network, and how Spat obtains the user list.

 Spat relies on the strength of the Linux/GDM-XDM Authentication Process.
 When a user logs into Gnome via GDM or into a general X session with XDM
 the are authenticated to the underlying Linux system via PAM or whatever
 core authentication scheme the OS is using.
 Once the user is authed (authenticated) the programs
 they run, such as /usr/local/bin/spatd are run with thier UID. 
 When Spat runs, it askes the OS for the currently authenticated user.
 Spat will then identify itself to other Spat's as the user that is running
 the program. We do it this way for a few reasons.
 First and foremost. If a user is logged into the system, there is a virtual 
 conricopia of authentication information we can get from the OS. This in
 my opinion is a very trusted way. However, if root su's to a user name,
 Spat will report itself as the user that root is su'ed to. Although if
 someone is root, there is not much we can do. Hopefully though, your
 systems admin is not allowing everyone to login as root on thier 
 workstations, becuase if they are, you have bigger problems on your
 hands than Spat missrepresenting its identity.

 As far as the user list, Spat does not rely on a central server.
 When an authed user runs /usr/local/bin/spat, a broadcast is sent on that 
 machines broadcast address requesting a user list. /usr/local/bin/spatd 
 will answer this request with its authed identity.
 So for example, we have 25 machines running spat, and user "bob" opens
 his copy of /usr/local/bin/spat, he will obtain a list of all machines
 with a version of Spat currently running.

 Once again, if there are any questions or comments, please direct them
 to jess@codehost.com, but please look at the FAQ located at spat.codehost.com 
 first. 

    
