printing (Pete's notes)

To print duplex from a Mac, do File->Print, then set the third pull-down to Layout, then select Two-sided:->Long-edged binding.

Forget names like lj22 and clj24a, environment variables like PRINTER or MOZILLA_POSTSCRIPT_PRINTER_LIST, or job queueing machines named GRAND-NT or QUEEN-NT. As of 2006-04-13, SCD has replaced all that with CUPS, the Common Unix Printing System. It's used by default by Red Hat Fedora Core 4 and Mac OS X. A cupsd daemon runs on each host to manage jobs emanating from the host. The print queues are on cups-server.scd.ucar.edu. The daemon listens on port 631, and you can web to http://localhost:631 to interact with the daemon to show a list of printers, see if jobs have printed, etc.

To print from the command line under Mac OS X (and perhaps Linux?), use a command like

lpr -P ML-26D_B-W@cups-server.scd.ucar.edu
To tell the printers known to the Mac, use
lpstat -a
To tell XEmacs how to print, set the printer-name variable and a few others in the ~/.xemacs/init.el file.

Mozilla will just work - it asks CUPS for the list of printers and offers it to you in Print dialog boxes.

To tell acroread how to print, see my acroread page.

To tell Star Office how to print, see my staroffice page.

To tell Abiword to print, see my abiword page.

To set up printers and print queues, do Start->System Settings->Printing. Click on New. Click Forward. Name the printer like "lj22" and click Forward... Set the queue type to "Networked UNIX (LPD)". Set the server to lp.scd.ucar.edu. Set the queue to the printer's name: "lj22". Click Forward. Then setup the printer type - I used "Postscript printer". Try printing a test page. Worked for me.

To control printers in Red Hat Fedora Core 1, click on the panel button. It'll run tryprint.pl, which will display window a "GNOME PRINT MANAGER" window that shows your printers. To print from the laptop to printers on the NCAR LAN, you need to put descriptions of the NCAR printers into the /etc/printcap file. I got my definitions from Greg Woods. Instead of this, you could use the lprsetup program to edit the file. Read the man page for printcap for more info. After defining entries, create a spool directory for each printer:

cd /var/spool/lpd
mkdir lj39c lj22 clj24a phaser clj24arear
IMPORTANT: when printing with the linux lpr command, there must be no space between the -P option and the value of the option. If there's a space, it'll "work" by printing to the default printer! Also, you have to use the "-c" option. As of 2002-10-12, our best guess as to why this is needed is that, despite the man page for "lpr", the -c option is unrecognized by lpr and is passed through to fileserver, where it is recognized by fileserver's "lp" daemon as meaning "copy the file", which is somehow necessary. Sigh.

To tell Unix what printer to use, set the PRINTER environment variable in the ~/.bashrc file. Don't forget to set the pp and ppd environment variables while you're at it.


Pete Siemsen
Last modified: Mon Jul 24 11:20:41 MDT 2006