Documentation Index documentation

Setting up CUPS
CUPS is the Common Unix Printing System. This is the recommended spooler for all Linux distributions, and the one we prefer to support. It is intended to be a simple, integrated method of setting up both local and network printers.
Setting up LPD
LPD is ancient, and the foomatic-rip system for it has some quirks. But it does cover all the basics: option specification, network and local printing, easy use of most drivers, etc. You will observe that this 'quick' start has many more steps as either CUPS or PDQ...
Setting up PDQ
PDQ computes the entire job before sending it to the printer. This means that large and/or computationally intensive jobs may involve a long delay before printing. This will mostly be of concern to color inkjet owners. For large format printers (A3/13x18inch and bigger) PDQ is not recommended.
Setting up PPR
We support PPR through the PPD-O-Matic PPD generator and companion foomatic-rip filter script. This filter script can be used as a PPR RIP filter or as a PPR interface. What follows is quick-start information on setting up your printer with this pair, followed by some details on how it all works.
Direct Printing, Without a Spooler
Spooler-less printing has its advantages and disadvantages. It is a simple solution for machines without a local network where only one user is working at. One has no hassle with the requirements of most spoolers to have a correct network installation or with the many configuration options of the spoolers.
How to Contribute
How to contribute to Printer/driver data, code, and other stuff ...

HOWTO's and Hints

CUPS Printing Tutorial
Tutorial written by Till Kamppeter showing the most important steps of setting up printers with CUPS and Foomatic and sharing them on networks with Linux/Unix and Windows clients.
Printing with Samba 3.0 (Traditional Printing Systems & CUPS)
This is a chapter from Kurt's new printing book. This chapter covers printing with CUPS and SAMBA version 3.0. It explains configuration, explanations of the configuration options, how to install drivers, common erros, network logins, PostScript diver download, and much more. Most SAMBA/CUPS related questions can be answered there.
Troubleshooting-CUPS-and-Asking-for-Help HOWTO (A Guide For The Desperate)
Your chances to get a precise and helpful answer depend on asking a precise question and supplying helpful facts.
Foomatic from the User's Point of View - Installing a Printer
This graphical tutorial gives step-by-step instructions on how to setup a printer with CUPS and foomatic-db (partially outdated, but most applies also to the current Foomatic).
Using PPD Files
There are many applications which use PPD files to know about the capabilities of printers, so that their printing dialogs can make available all options which the printer/its driver provide and also show additional information about the printer. In addition to applications as Star Office/, GIMP (for printers not supported by Gimp-Print), GPR, ... PPD files can also be used on Windows, Mac, or LPD clients to get access to the printer's capabilities and options. foomatic-rip makes the full capabilities of PPDs available for all supported spoolers (CUPS, LPRng, LPD, GNUlpr, PPR, PDQ, CPS, spooler-less printiung).
Installing a complete printing system with HP DeskJet 640C under Linux: A tutorial on LPRng, Ghostscript, a2ps, and HPIJS
Learn how to install a full featured printing system based on LPRng, Ghostscript, a2ps and hpijs on your machine and also learn how printing works under Linux. The case subject is a HP DeskJet 640C printer, but the tutorial should be extensible to more HP printers and perhaps other brands as well. No remote printer solution, just some brief pointers for that.
Make a Windows-Connected Printer look like a Network-Shareable PostScript Printer
This tutorial covers the HP Laserjet 3100, but also serves as a tutorial on how to turn a printer attached to a Windows box into a networked PostScript printer.
The LPRng print spooler is an enhanced, extended, and portable implementation of the Berkeley lpr print spooler functionality. The LPRng; Printing Software consists of the LPRng print spooler, the ifhp print filter, and the LPRngTool graphical user interface.

Developer Documentation

Undocumented Printing
This site (Undocumented Printing Wiki) presents documentation of most available page description languages: PostScript, PCL, ESC/P, and even less common languages. Very valuable resource for driver programmers.