HylaFAX 4.0pl1 Binary distribution for Solaris 2.5 (sparc). Compiled with gcc-2.7.2 December 10, 1996 Tom Szybist szybist@boxhill.com Before You Begin ---------------- This binary distribution should work on any vanilla installation of Solaris 2.5. Unfortunately, static binaries on Solaris 2.X are very painful, so these binaries are dynamically linked against libc and others in /usr/lib/. If you find a library missing, it may be that you have not installed the complete Solaris distribution. The HylaFAX binaries are *statically* linked with the tiff library. This is so the tiff package is not needed for a client side installation. The tiff binaries themselves are *dynamically* linked with the tiff library. Libtiff.so is included in the tiff package. Ghostscript is dynamically linked with X libraries in /usr/openwin/lib which you should have. Hardware flow control works for me under Solaris 2.5. I have seen reports to the contrary however. As with any installation of new software, do a complete backup of your system. Please read this entire note before proceeding with the installation. The checksum for the gzipped package file is: 48910 13356 hylafax-sparc-sunos5.5-v4.0pl1-pkg.gz (/bin/sum) MD5 (hylafax-sparc-sunos5.5-v4.0pl1-pkg.gz) = e6ab976507fc7ff7c26e1e376af7d68e The package is quite large, over 6.5 MB for the compressed image and over 17MB for the uncompressed image. Plan accordingly Please look at the on-line documentation at http://www.vix.com/hylafax/. It is quite good. Please direct any comments/complaints about this distribution to me at: szybist@boxhill.com Upgrading from an old binary. ------------------------- If you are currently running faxq and faxgetty, shut them down. You can use: # /etc/init.d/hylafax stop To kill the faxq process. Then change the "respawn" field in /etc/inittab to "once", and kill faxgetty. Faxsetup (see below) will have an easier time running. Set this back to respawn after the installation is complete. Backup, Backup, Backup! Especially in /var/spool/fax, preferably your entire system. You should save old things like modified scripts, dailrules and anything else you can think of. As root run: # pkgrm HYLAclnt (for a server) # pkgrm HYLAserv (for a client) If you had the beta015 binary you need to removed both these on the server. This will remove files installed from and old distribution, as long the name has not changed. If you modified a file it will still be gone. Please back it up. Plan on spending some time, don't do this on a production system and expect to have running in a few minutes. Also, look in /opt/local/fax and /var/spool/fax remove any files in there may have been created from the last distribution. I recommend starting from "clean" directories. This will avoid any incompatibilities. This distribution starts hfaxd from the rc script. If you have an inetd.conf entry for faxd.recv (from version 3), remove it and restart inetd. If you had the beta015 binary: You should also remove the GNUgs package: # pkgrm GNUgs You will need to reinstall gs. However, you will not need to reinstall the tiff package. If you had the beta018, beta020, or pl0 binary: You will *not* need reinstall the tiff or the gs package, (nothing changed.) Organization ------------ The following is from my config.site file showing where things are installed: DIR_AFM="/opt/local/fax/afm" # directory for AFM files DIR_BIN="/opt/local/fax/bin" # directory for client apps DIR_LIBDATA="/opt/local/fax/lib" # directory for client data DIR_LIBEXEC="/opt/local/fax/lib" # directory for libraries&hidden apps DIR_MAN="/opt/local/fax/man" # directory for manual pages DIR_SPOOL="/var/spool/fax" # directory for spooling area DIR_SBIN="/var/spool/fax/bin" # directory for system apps DIR_LOCKS="/var/spool/locks" # directory for UUCP lock files LIBTIFF="/opt/local/tiff/lib/libtiff.a" # linkage convention for libtiff TIFFINC="/opt/local/tiff/include" # place to find tiffio.h TIFFBIN="/opt/local/tiff/bin" # where TIFF tools live PATH_GSRIP="/opt/local/gs/bin/gs" # pathname of Ghostscript-based RIP You should plan to have a lot of space in your spool directory, on the order of megabytes, if you plan on keeping incoming faxes for any length of time. Pkgadd will only check for space required for the distribution. I did not include any additional space checks. In addition, you may find your spool directory fills up when printing a fax, since the resulting postscript can be very large. I recommend a separate disk partition for /var/spool/fax. Installation ------------ You will need gzip to "gunzip" the package file. It can be obtained from prep.ai.mit.edu, in /pub/gnu. Do the following as root. Be certain your umask is something reasonable since directories will be made. 1. # gunzip hylafax-sparc-sunos5.5-v4.0pl1-pkg.gz 2. # pkgadd -d hylafax-sparc-sunos5.5-v4.0pl1-pkg You will see the following selections: The following packages are available: 1 HYLAclnt HylaFAX Client Software (sparc) 4.0pl1 binary 1.0 2 HYLAhtml HylaFAX HTML Documentation (sparc) 4.0pl1 binary 1.0 3 HYLAserv HylaFAX Server Software (sparc) 4.0pl1 binary 1.0 4 gs Aladdin Ghostscript (sparc) 4.0 binary 1.0 5 tiff Tiff Library (sparc) 3.4 binary 1.0 Select package(s) you wish to process (or 'all' to process all packages). (default: all) [?,??,q]: If you are installing a server, select 3,4,5. Ghostscript is needed to convert postscript to fax format. The tiff stuff is used for various scripts to converts formats to and fro. If you are just installing a client, select 1, HYLAclnt. Select 2, if you wish to install the html documentation, (highly recommended.) Server Installation. Read and understand the Server Setup and Basic Configuration in the HTML materials. This section only touches on the basic steps. Read the faxsetup man page, then run the faxsetup. command. Faxsetup is located in /var/spool/fax/bin. The script may complain about /bin/vgetty and /bin/egetty. These are not provided by this package at this time. I recommend using the /dev/cua/* devices (see below). Faxsetup will verify that your system files are configured for Hylafax. If instructed to do so, faxsetup will edit your system files accordingly. You will need a "fax" user in your passwd file, and a "hylafax" service in your /etc/services You may wish to have an NIS entry for the fax service. See the on-line documentation and man pages for details. A startup file for faxq and hfaxd, /etc/init.d/hylafax, is installed by pkgadd. There are sym links in /etc/rc0.d and /etc/rc2.d to start and stop hfaxd and faxq boot up and shutdown. For a send and receive operation, you must start a "faxgetty" for each of your modems. To have faxgetty run at boot time, add something like this to your /etc/inittab file: fx:23:respawn:/opt/local/fax/lib/faxgetty cua/a See the Hylafax man pages and the inittab(4) man page for details. For a send only operation you must run faxmodem(1m) for each outbound only modem. No facility for this is provided by this package. Please read the faxmodem(1m) man page and the HTML Server Configuration page. To allow other machines you use the server, you need to add entries in the /var/spool/fax/etc/hosts file. See the Hylafax hosts(4) manpage for details. You should probably reboot your server to be certain that everything starts properly. Again, please, please read the HTML and man pages. The documentation is so complete there that is doesn't make sense to reproduce it here. After installing the server, you can install the client package on machines that will send to the server. Ghostscript ----------- The ghostscript included in this package, is Aladdin ghostscript 4.0. As indicated, it will be installed in /opt/local/gs. It is compiled to look for X libraries in /usr/openwin/lib. You may want to run ldd(1) on the gs binary as the "fax" user to be certain that all library references are resolved. Yes I know this may be a bizarre place, but for me it's easier to maintain this way. (Keeping all of gs and only gs under one directory.) You can run your own Ghostscript by editing the /var/spool/fax/bin/ps2fax file. Be certain that the "fax" user can resolve all library references, and that the tiffg3 driver is installed. This version of ghostscript is available from ftp.cs.wisc.edu in /ghost/aladdin HTML documentation ------------------ The html documentation is installed in /var/httpd. The directory httpd and its subdirectories are created for you if they do not exist. If they do exist, pkgadd may ask to confirm an attribute change on these directories. If this directory is not where you have a http server installed, you can set up symbolic links to the files in /var/httpd/cgi-bin, and /var/httpd/htdocs/hylafax. This information is about a megabyte, plan accordingly! ttymon ------ Hylafax can spawn a "getty" for data calls if your modem can distinguish them from fax calls. The getty used in this binary distribution is /usr/lib/saf/ttymon. See the Hylafax config(4) man page and the ttymon(1m) man for details. I use the following for GettyArgs: "-g -h -d /dev/cua/a -l 38400 -m ldterm,ttcompat" There are escape sequences for the tty name and port speed that I don't use. See the man page for details. Be certain you are not running a ttymon with sac when using Hylafax. Disable the port with admintool or pmadm(1m). /dev/term/a vs. /dev/cua/a -------------------------- I use the "cua" devices for everything. You may find programs like probemodem and faxaddmodem will hang when trying to probe the modem if you use the "term" devices. The "term" devices are basically for running a getty with sac. The open will block until Carrier Detect is asserted. Hylafax does not use this mechanism. Hylafax has its own interlocking mechanism and will cooperate with outbound calls that obey uucp locking conventions. See the on-line documentation under "Choosing a TTY Device" and the zs(7) man page for details. Fax - email gateway ------------------- I have included a mailfax delivery agent script for sendmail as described in the documentation. It will be installed as /opt/local/fax/lib/mailfax for both the client and server packages. The changes to sendmail.cf are described in the script. Disclaimer ---------- This work is my own, not my employer's. My employer has no responsibility for this. Please contact me at szybist@boxhill.com if you have trouble with this installation. Criticisms are also welcome. Lastly, Hylafax compiles out-of-the-box for me under Solaris 2.5. I have to imagine that the location of these binaries are not suitable for all sites. So, if you can, get gcc and go for it. You can then tailor Hylafax to your needs.