
                SmIRC - an X11R6/Motif 2.0 IRC client for Linux
                                       
   Current version is 0.70
   
   Copyright 1997-1999, Double Precision, Inc.
   
   This program is distributed under the terms of the GNU General Public
   License. See COPYING for additional information.
   
   SmIRC is an X11R6 IRC client, based on the Motif widget set. This
   release has most of the functionality expected from an IRC client.
   Only DCC is missing. Everything else usually expected from an IRC
   client is included. The interface is designed to be simple, short, and
   sweet. SmIRC's look and feel is highly customizable, via its resource
   file. All output can be customized with your favorite fonts and
   colors.
   
   Runtime help pages are provided in an HTML format. You will need an
   HTML browser (lynx is fine) to read them.
   
   You will need Motif 2.0 or Motif 2.1 to compile the source code. If
   you do not have Motif 2.0 libraries, you can try running the provided
   ELF binary which is statically-linked with the Xm and Xpm libraries. I
   do not know if SmIRC compiles with Lesstif.
   
   In addition to the above, SmIRC needs at least 27MB of disk space, and
   a machine with plenty of RAM in order to compile the source code. Some
   modules take as much as 22-23MB of RAM to compile. Your machine should
   have at least 16MB of physical RAM, and 16MB of swap in order to be
   able to compile the source code.
   
New features in version 0.70

     * Switched from imake to automake. This results in a different
       configuration and installation process. Please take a moment to
       read the installation section.
     * Allow specification of multiple available port ranges, in order to
       randomly select a port to connect to. Default resource file
       changed to allow larger nicknames on IRC networks which support
       them.
     * Configuration directories are changed to make them more compliant
       with GNU standards. Previous versions of SmIRC used /usr/lib/smirc
       and /usr/local/lib/smirc to store default configuration and help
       files. SmIRC 0.70 will use /usr/local/etc/smirc and
       /usr/local/share/smirc, which can be changed by options to
       configure. Also, the short manual page blurb is now installed in
       /usr/local/man, instead of /usr/X11R6/man.
     * New command - /CLEAR, clears the window of previous text.
     * New command - /WINDOW, iconifies or deiconifies the window.
     * Your response to CTCP VERSION can now be set in the resource file.
     * New command - /PLAY, plays a sound file via your sound card.
       Tested on a 2.[02].xx Linux kernel, should work on most other UNIX
       platforms that support the Open Sound System. Also will compile
       support for the ESound daemon, if available. /PLAY handles most
       .wav, .aiff, and .au sound files, 8 or 16 bit sampling, mono or
       stereo.
     * The /AUTOPLAY command is used to program SmIRC to play sounds
       automatically for certain events. This feature is rather crude,
       and you'll have to write a bot for anything that's more
       complicated.
     * From the "User Friendly" department: if both your first and second
       choices for a nickname are already taken, a little dialog box pops
       up asking you to choose another nickname.
       
   Miscellaneous note: I would like to add DCC SEND and CHAT support
   next, but I am unable to locate suitable specifications for DCC
   anywhere. The short memo dating back to August 1994 from Troy Rollo
   and Ben Mesander is very scant on details, and is not sufficient to
   code from. I prefer not to attempt to reverse-engineer DCC from some
   other IRC client. If anyone has a reference to RFC-level DCC
   specifications, please forward me a pointer to it. Thanks.
   
Upgrading from a previous version

   Make sure to read the change log below, to find out what's changed!!
   
   To upgrade, just follow installation instructions. Before doing the
   upgrade, you may wish to make a backup copy of your current
   /usr/lib/smirc/config or the /usr/local/lib/smirc/config file, if you
   have made any additions/deletions there that you want to keep. Also,
   if you heavily customized the resource file, you may also wish to back
   up /usr/lib/X11/app-defaults/Smirc. The installation procedure will
   overwrite these files. Please note that the configuration directory
   location has changed, see "New features", above.
   
   NOTE: Some resource settings have been changed, be careful.
   
Installation

   The latest version of SmIRC is available from the following archives:
   
   
   Undernet IRC archive (ftp.undernet.org):    
   ftp://ftp.undernet.org/irc/clients/xwindows/smirc/
   Metalab (metalab.unc.edu):    
   ftp://metalab.unc.edu/pub/Linux/system/network/chat/irc/
   North Shore Technologies FTP archive (ftp.nstc.com):    
   ftp://ftp.nstc.com/pub/software/unix/
   
   The distribution files are as follows:
   
   
   smirc-0.70.tar.gz - source code.
   
   smirc-0.70.bin.static.tgz - i386 ELF glibc binary, statically linked
   with Motif.
   
   smirc-0.70.lsm - LSM file.
   
   smirc-0.70-1.src.rpm - Source RPM for Red Hat 6.0
   
   smirc-common-0.70-1.i386.rpm
   smirc-0.70-1.i386.rpm
   smirc-static-0.70-1.i386.rpm - Binary RPMs for Intel i386 glibc.
   Install smirc-common first, then install EITHER smirc or smirc-static.
   Install smirc, if you have Motif 2.1. Install smirc-static if you do
   not have Motif 2.1. See below for more information.
   
   All RPMs are signed by my PGP key. (PGPKEY.txt).
   
SmIRC web page

   http://www.wildstar.net/irc/clients/xwindows/smirc/ - SmIRC web page.
   
Automatic installation using RPM.

   For rpm-based Linux systems, rebuilding from the source RPM is
   recommended. Please note that Motif 2.0 or 2.1 development libraries
   must be installed, whether or not you are using the source RPM or
   compiling from the original tarball.

    rpm --rebuild smirc-0.70-1.src.rpm

   This will create the following packages in your default binary RPM
   directory, which will usually be /usr/src/redhat/RPMS/i386. To install
   them from that directory, type:
   
   
   rpm -i smirc-common-0.70-1.i386.rpm - This package contains
   configuration files which are common to the dynamic and static
   packages. smirc-common must be installed BEFORE either the dynamic or
   the static RPM is installed.
   
   rpm -i smirc-0.70-1.i386.rpm - This package contains the SmIRC binary
   dynamically linked with Motif libraries. Install this package
   afterinstalling smirc-common.
   
   rpm -i smirc-static-0.70-1.i386.rpm - This package contains the SmIRC
   binary statically linked with libXm. After rebuilding the source RPM
   on a machine with Motif libraries, you may install smirc-common and
   smirc-static packages on other machines that do not have libraries.
   There is no need to install both the dynamic, and the static
   packages.
   
  Upgrade note
  
   If you upgrade from 0.62b using either the prebuilt RPMs, or by
   rebuilding the RPMs yourself, please note that the configuration
   directories have changed from /usr/lib/smirc and /usr/local/lib/smirc
   to /usr/local/share/smirc and /usr/local/etc/smirc. If you have made
   custom changes to your config file, you will need to reapply the
   changes to the new config file that will be installed in
   /usr/local/share/smirc. You may also need to copy any bots you
   installed in /usr/lib/smirc. Please back up the old directory before
   upgrading, and remove it after the upgrade.
   
Installation on other Linux distributions.

   Extract smirc-0.70.tar.gz.
   
   Here are a typical set of commands to configure, compile, and install
   SmIRC:
    ./configure [options]
    make
    make install-smirc-strip

   configure is a script that is used to set various options at compile
   time. The next make command compiles SmIRC. The last make command
   strips debug data from the SmIRC executable, and installs it. If your
   make has problems with the Makefile, try using the gmake command
   instead.
   
   configure recognizes the following options:
     * --with-debug - compile some debugging code.
     * --with-static - compile and SmIRC statically linked with Motif.
       Statically-linked SmIRC can be installed on machines that do not
       have Motif libraries available. Please note that the
       dynamically-linked version of SmIRC will still be compiled.
     * --without-dynamic - do not compile SmIRC dynamically-linked with
       Motif. You will need to specify both --with-static and
       --without-dynamic in order to compile a statically-linked version
       of SmIRC only. Specifying --with-static by itself compiles both
       static and the dynamic Motif binary (this is used by the source
       RPM to create both static and dynamic binary RPMs).
     * --without-gzipman - do not compress manual pages with gzip.
     * --with-fixedwidth - install an alternate resource file that uses
       only a fixed-width font. SmIRC will look rather bland, but if you
       have problems with the default resource file, try this option as a
       last resort.
     * --without-smoothrender - disable smooth screen updates. By
       default, SmIRC uses bufferring in order to minimize screen flicker
       when there's a lot of output. Buffering requires additional
       memory, and additional CPU resources. If you're running a small
       machine, or a slow CPU, you can specify --without-smoothrender in
       order to improve SmIRC's performance, at expense of screen
       clarity.
     * --without-uoption - disable the -u option to the smirc program.
       The -u option allows the user to override the userid SmIRC uses to
       log on to an IRC server. In most cases, identd is used to obtain
       the userid anyway, so the -u option is ineffective.
     * --with-localconfigdir directory - specify the local configuration
       directory. Configuration files in directory override the
       configuration files in the directory specified with
       --with-configdir. If not specified, directory will default to
       /usr/local/etc/smirc.
     * --with-configdir directory - specify a directory where make
       install will install the default configuration file. SmIRC will
       also look in this directory for any configuration files not found
       in localconfigdir. If not specified, directory will default to
       /usr/local/share/smirc.
     * --without-sound - do not compile sound support. SmIRC compiles
       sound support by default, if it detects apparent support for the
       Open Sound System, with optional support for the Enlightenment
       Sound Daemon. If sound support does not compile, or does not work,
       specify --without-sound in order to exclude all sound support from
       the program.
       
   NOTE: Previous versions of SmIRC installed in /usr/X11/bin, and used
   /usr/lib/smirc and /usr/local/lib/smirc. You will need to manually
   remove any files installed by the previous version of SmIRC.
   
   make install-smirc or make install-smirc-strip installs the following
   files in /usr/local/bin:
     * smirc - a shell script to automatically load either smirc-dynamic,
       or smirc-static, whichever one is found.
     * smirc-dynamic - SmIRC dynamically linked with Motif 2.1.
     * smirc-static - SmIRC statically linked with Motif 2.1.
       
   Do NOT run make install, as it installs additional files from the
   libsndfile package which are NOT needed.
   
Troubleshooting

  Garbled window
  
   If when starting SmIRC all you get is a gray, or a garbled window, it
   means that its resource file was not installed properly. Check to make
   sure that the resource file, /usr/lib/X11/app-defaults/Smirc has been
   installed and has the correct permissions.
   
  Windows or fonts are too big, or too small
  
   Again, this is a resource issue. Your X11 server may have non-standard
   font metrics. If fonts look too large, or too small, you'll have to go
   in and edit the resource file. Since window sizes are based, somewhat,
   on font metrics, this may also be a reason if a window is unreasonably
   large, or small.
   
   If all else fails, use the --with-fixedwidth option to install a
   resource files that uses a bland, generic, fixed width font. It'll
   look ugly, but usable, and you can add back the fonts, one at a time.
   
Change log

   7/23/99 - V0.70: replace Imake with automake. Change default
   configuration directories according to GNU's guidelines. Added /CLEAR,
   /WINDOW commands. Reply to CTCP VERSION can now be set from the
   resource file. Automatically open connect dialog window after
   starting. Updated list of default IRC servers. Allow definition of
   multiple port ranges. Larger nicknames. Static smirc binary now
   includes libXm only. libXpm is no longer statically linked. /PLAY and
   /AUTOPLAY commands, Open Sound System support. Enlightenment Sound
   Daemon support.
   
   7/26/98 - V0.62b: Bug fix - smirc dumps core if the channel topic is
   blank in channel info window.
   
   7/21/98 - V0.62a: Bug fix - nicknames not removed from list of channel
   members when kicked.
   
   7/8/98 - V0.62: SmIRC has been ported to Red Hat 5.1/Motif 2.1.
   Adopted GPL. Adopted GNU autoconfig. Experimental source RPM for Red
   Hat 5.1. Miscellaneous bug fixes. Somehow managed to get the code to
   compile with the -O2 flag without neither g++ nor egcs barfing all
   over the place (a very impressive achievement, I might add). Added the
   "Channel Info" dialog. This new dialog box, accessed from the Channel
   menu, allows a very easy way to change channel topic, modes, and bans.
   Added /RUN command. Added /FLOOD command.
   
   V0.60: added bot support. See online documentation for information.
   Changed the way that some messages are dispatched to windows, in order
   to make life easier for bots. Highly doubtfull that anyone would
   notice. Amongst the changes: the output of a /names command is now
   shown in the channel window, if it is for a channel you're on (in
   addition to still being displayed in the server window). This means
   some additional junk on the screen every time you join the channel, oh
   well... (At least you can suppress these message now, see below).
   
   Also the following replies are now shown in every channel window: 305,
   306.
   
   Changed some menu titles, to make them consistent with corresponding
   commands.
   
   /LOGOPEN & /LOGCLOSE commands, correspond to equivalent menu options.
   
   Added -u and -v command line options.
   
   Well, to handle the additional clutter, I added the /MESSAGE command
   which will suppress certain messages from being shown. The initial
   list of suppressed messages can be defined using the
   stringTable.SUPPRESSCHANNEL or .SUPPRESSSERVER resource.
   
   08/25/97 - V0.51: bug fix in nick change code. Enhancement: when
   someone on the same channel with you changes nicknames, and you have a
   private message window open to that user, the private message window
   will be updated with the new nick being used by the person. Before,
   you'd have to manually send a /msg to the new nick, or wait for a
   private message from the new nick to arrive, which would open a new
   private message window. NOTE: the IRC server will not send you a nick
   change notification unless both of you are on the same channel. If you
   have a private message window open, and the other person changes
   his/her nickname, and you have not joined any channels in common, no
   nick change message will be sent, so you will not be aware of the nick
   change.
   
   07/06/97 - V0.50 - released.
     _________________________________________________________________
   
   
    mrsam@geocities.com
