Printer Configuration

The Plan 9 print spooler lp does not take the same arguments as the BSD lpr, nor as the lp that ships with some Unixes. It is worth reading the manual page lp(8) to get up to speed on useful options. The file /sys/lib/lp/devices contains example devices for printing to printers on parallel ports or BSD lpr-based queues.


In the most recent releases, lp can send to any printer whose format is output by Ghostscript (in addition to the usual Postscript printers). If you have a Ghostscript-supported printer, use ``gs!devicename'' instead of ``post'' or ``post2''. Follow the example for canonbjc240l in the devices file.


To print to printers that speak BSD lpr (such as those using HP JetDirect cards) follow the example for vogon in /sys/lib/lp/devices.

Charles Forsyth has a small program and additions to lp to print to Microsoft SMB print servers. For the distribution, see

Set your default printer destination using the enviroment variable:



Postscript printers may not have the correct fonts to print the Plan9 manual pages and documents. These can be downloaded automatically by the printer driver, you just need change the line:

@{bind -b $LPLIB/process /bin; $LPPROC} < $j | /$cputype/bin/aux/lpdsend ...

in /sys/lib/lp/spooler/lpdspool by:

@{bind -b $LPLIB/process /bin; $LPPROC} < $j | aux/download -f -H/sys/lib/postscript/font -mfontmap -plw+ | /$cputype/bin/aux/lpdsend ...