|
|
|
|
6.1. CUPS
6.1. CUPS
CUPS has become the standard printing system in most distributions today. What makes CUPS different from the rest ? CUPS is an implementation of the Internet Printing Protocol (IPP), a new standard intended to solve some of the deficiencies of the old LPD protocol. CUPS also supports LPD, SMB and AppSocket (JetDirect) with reduced functionality. The implementation of CUPS has been driven by Michael Sweet of
Easy Software Products; CUPS is distributed under the GPL. Being a new protocol, the IPP has a number of advantages on the ancient LPD protocol:
-
the scheduler is a HTTP 1.1 web server and also delivers a web interface
-
printer options, you can even ask the IPP device what options and document formats it supports.
-
access control which restricts print jobs, job controls, and system administration commands coming from and to specified computers and printers. Like Apache, you can control access to CUPS using Allow and Deny directives.
-
proxy support (since IPP uses HTTP)
-
encryption support
-
Today, all major operating system vendors actively support IPP, as well as the major printer vendors. IPP is a standard printing protocol in Windows 2000 (IIS needs to be installed) which may be a better option for free software users than the proprietary SMB protocol. However, on Windows 2000 automatic printer driver downloading only works with SMB and not with IPP, this may be a reason for administrators with a lot of Windows clients to choose for SMB printer sharing using Samba and CUPS.
There are a number of very good features in
it, including sensible option handling; web, GUI, and command-line
interfaces; and a mime-based filtering system with strong support
for Postscript.
There are several sets of PPDs which you can use with CUPS:
- Built-in
-
The default CUPS installation contains generic PPDs for 9-pin and 24-pin Epson matrix printers, Epson Stylus Color, Stylus Photo printers, HP LaserJet, DeskJet printers and Dymo Label printers. These will enable you to print to a lot of printer models, but will not give you access to specific capacities of the models
-
Foomatic
-
Foomatic can generate a suitable
PPD for use with any printer driver that has full details
entered in the linuxprinting.org database. The PPD gets used
together with a backend script named foomatic-rip. foomatic-rip uses free
software drivers. At the moment there is support for a rather
large number of printers in this system. Foomatic forms a basis for non-Postscript printer
support in most GNU/Linux distributions. CUPS and Foomatic are becoming quite popular and this is currently the recommended printing system for most situations.
- Postscript PPDs
-
CUPS can use vendor-supplied PPD files for Postscript
printers directly. Often these come with the Windows drivers
for a printer, or can be found on the printer vendor's
website. If you have a choice between a driver for Windows 9x and Windows NT/W2K, than select the driver for Windows NT. Adobe also distributes PPD files for many Postscript
printers.
- ESP Print Pro
-
Easy Software
Products, Inc. sells CUPS bundled with a collection of
proprietary drivers. Although they are not free software,
they do drive many common printers. The bundle is somewhat
expensive measured against the price of a single supported
printer, but it certainly has a place. The package
includes graphical front-end tools.
- Gimp-Print
-
The Gimp-Print drivers are high quality drivers for Canon, Epson, Lexmark, and PCL printers for use with Ghostscript, CUPS, Foomatic, and the Gimp.
-
OMNI
-
Omni is a package made by IBM, now containing support for more than 450 printers. The OMNI printer driver model is distributed by IBM under LGPL License.
-
HPIJS
-
HPIJS supports around 150 of HP's own printers at excellent print quality now (currently only via the Foomatic path). As of Version 1.0.1 , the "hp Product Only" clause has been removed from the license and the drivers are distributed with a BSD license.
The third-party program
XPP
(see Figure 4) offers a
very nice graphical interface to the user functionality of CUPS,
including an marvelous interface to print-time options (shown in Figure 5). For information on using
XPP, see Section 3.4.2.
|
|
|