This chapter contains spooling printer management systems and ghostscript applications to render PostScript for display on terminals or paper.
The Common Unix Printing System (CUPS) is a print spooler and associated utilities. It is based on the "Internet Printing Protocol" and provides printing services to most PostScript and raster printers.
Download (HTTP): http://multivac.cwru.edu/mirror/packages/cups-1.1.20-source.tar.bz2
Download (FTP): ftp://ftp.easysw.com/pub/cups/1.1.20/cups-1.1.20-source.tar.bz2
Download size: 3.7 MB
Estimated Disk space required: 24 MB
Estimated build time: 0.67 SBU
libjpeg-6b, libpng-1.2.5, libtiff-3.6.1, OpenSSL-0.9.7d or GnuTLS (which needs libgpg-error, libgcrypt and opencdk, in that order.), Linux-PAM-0.77, PHP-4.3.6 and Python-2.3.3
Install CUPS by running the following commands:
./configure &&
make &&
make install
The basic default behavior of the installation is appropriate for LFS systems. CUPS files are placed in /usr/bin, /usr/sbin, /var and /etc/cups.
Configuration of CUPS is dependent on the type of printer and can be complex. Generally, PostScript printers are easier. For detailed instructions on configuration and use of CUPS, see http://www.cups.org/documentation.php. The Software Administrators Manual and Software Users Manual are particularly useful.
For non-PostScript printers to print with CUPS you need to install ESP Ghostscript-7.07.1 to convert PostScript to raster images and a driver (e.g. from Gimp-Print-4.2.6) to convert the resulting raster images to a form that the printer understands. Foomatic drivers use Ghostscript to convert PostScript to a printable form directly, but this is considered to be a hack by CUPS developers.
During the install, CUPS created the startup file /etc/rc.d/init.d/cups. The file works, but you may want to change it to a more conventional LFS startup file by installing the script included in the blfs-bootscripts-5.1 package:
make install-cups
CUPS provides accept, cupsaddsmb, cupsd, cupstestppd, lpadmin, lpc, lpinfo, lpmove, reject, cancel, cups-config, disable, enable, lp, lpoptions, lppasswd, lpq, lpr, lprm, lpstat, libcups, libcupsimage and various scripts and filters.
reject reject instructs the printing system to reject print jobs to the specified destinations.