Linux printing: much done and more to do
In the last seven years, printing on Linux has undergone a metamorphosis. Barely adequate printing support, provided on a program by program basis, has been transmuted by a half dozen projects into a wealth of options comparable to those available on Windows or the Mac OS. Where printer manufacturers once ignored Linux, a growing number support it and the rest are watching closely. Standardization and support for multiple distributions remain major problems, but community and corporate interests have recently started working together to address these last remaining problems.
Around the turn of the millennium, printing on Linux was haphazard and basic. Depending on the distribution, It was controlled via the lpr or LPRng systems, which are not controls for printers so much as for print spoolers -- the queues for jobs sent to printers.
The printtool utility simplified setting up printers with these commands, but, aside from resolution, offered almost no access to printer or print job controls. Just as in the days of DOS, no standard interface existed, and each program provided its own tools for interacting with printers, such as spadmin in StarOffice.
Moreover, only the PostScript printing language was supported by Ghostscript, the software that controls printing, which meant that most printers that used the more common Printer Command Language (PCL) would not work with Linux. Nor, in the absence of manufacturer support, was there much prospect of getting more printer support, although brave efforts to reverse-engineer were underway.
Slowly, the situation began to change. Till Kamppeter and Grant Taylor founded LinuxPrinting.org, a database and community forum, and developed Foomatic, a database system for integrating printer drivers and spools. The Gutenprint project (formerly GIMP-Print), especially for the inkjet photo-printers that have become popular with digital camera users.