[robg adds: I missed this hint in the queue when scanning for potentially time-sensitive Snow Leopard hints; if it's no longer applicable (i.e. there are new drivers out that fix the problem), please let me know.]
I finally got my Mac (Mac PowerPC G5 running OS X 10.4) to print via a Linksys print server PSUS4 to my HP OfficeJet 5510. I had to compile a number of different hints in order to do this, but wanted to make it easier for the next person.
First, find out the static IP address for your print server -- it's easy to find if you have a PC on your network (which I did; sorry I'm no help on how to figure it out with a Mac). Then do the following:
Download the open-source Linux drivers for HP printers. Make sure you download the hpijs, Foomatic-RIP, and ESP Ghostscript packages.
Install the Footmatic and Ghostscript packages, then restart. You will not be prompted to restart, but it is necessary before you can install the hpijs package.
Install the hpijs package and restart again.
Go to the Print & Fax System Preferences pane, and add a printer (click the '+' sign).
In the Add Printer window, select IP at the top of the window, and use the following settings:
PROTOCOL: HP JetDirect-Socket
ADDRESS: 192.168.2.107 -- this is the print server's IP address you figured out earlier
QUEUE: leave blank
NAME: Whatever you want
LOCATION: Whatever you want
PRINT USING: HP OfficeJet 5500 hpijs (the driver you downloaded)
Click Add to add the printer.
Essentially, you've tricked the HP printer into thinking the print server is an HP JetDirect Print Server by setting it up this way. I can print perfectly -- not sure about scanning, though, as I never use it.
My wife's Epson RX680 is used by everyone in the house via printer sharing, so she gets pretty annoyed when the Epson Print Monitor pops up suddenly on top of whatever she's working on. Today she made it annoy me enough so that I had to figure out a proper fix. The fix is to tell Launch Services to launch it in the background.
This requires editing a file within the application Epson Print Monitor, so be sure to back this application up first! The file to back up is /Library » Printers » EPSON » EPW » EPSON Printer Monitor.app.
Once that's backed up, Control-click on it and choose Show Package Contents from the contextual menu. In the Contents folder, you'll see the Info.plist file; we're going to add a new key, LSBackgroundOnly, specifying that this should be true (i.e. launch in the background).
You've probably discovered that your Dell 5100cn color laser doesn't play well with Snow Leopard. Before you list the 5100cn on Craigslist, try this:
Delete your old Dell printer in the Print & Fax System Preferences panel. Install a new printer, but select the Mac-installed Samsung CLP-770 Series PS, and presto! You are back in business, complete with duplex printing and toner supply levels. Sweet!
Because the Canon printer driver installation program will not recognize Mac OS X 10.6, you can't install your printer drivers even though Snow Leopard is a minor update.
To install your Canon printer drivers...
Download the driver disk image.
Mount the disk image and copy the installer package to your desktop.
Control-click on the package and choose Show Package Contents from the pop-up menu.
Navigate to Contents » Resources and delete the file InstallationCheck.
Now double-click the package and install the drivers normally.
[robg adds: I'm not sure if future Canon updates in 10.6 will be included in Software Update or not -- that is one of the supposed features of Snow Leopard, but I'm not sure exactly how it will all work.]
I came across this page, an archive of a mailing list post written by Kurt Pfeifle, that gives detailed instructions on how to print PostScript to a file by creating a CUPS backend using a shell script.
It took me ages to find, so I thought it should be more prominently featured. Here's what Kurt has to say about the process:
You can enable a very simple file:/ backend by putting FileDevice Yes into cupsd.conf. However it will not allow raw printing of application/octet-stream files. And the second job will overwrite the first one (because you need to give a filename to the backend, in the device URI, like file:/tmp/print.prn)
You could write your own CUPS backend. Here are the rules for that:
make sure it can read from SDIN and write to STDOUT
make sure if called with zero arguments it responds with a message similar to the other backends (see how they do it)
make sure it takes the 5 or 6 arguments all CUPS filters and backends take in the same order, i.e. backendname job-id user title copies options [job-file]
put it into /usr/lib/cups/backend/ and restart cupsd (check if it is recognized with lpinfo -v)
You can write it in Bash, Perl, C, Python or whatever you like. A very simple "filewrite" backend looks like this:
if [ $# -eq 0 ]; then
echo "direct filewrite "Unknown" "Print any job to file specified in device-URI""
cat $6 > $TARGETFILE
A more advanced one is here...
[robg adds: The code for the advanced backend is quite long, and I'm not certain of the copyrights, so I don't want to duplicate it in whole here. For those interested, please see the linked page for the more complex script. Note that I've formatted the quoted section above, for easier reading, but didn't change any of the content.]
Open System Preferences » Print & Fax, then highlight hp designjet 130nr. Select Open Print Queue, then Utility. On the left side under Maintenance, choose Advanced Functions » Update Firmware.
Do not click: "1. To see if a newer firmware version is available, click here." Despite the instructions from HP, and although you are connected to the internet, click this button instead: "If you do not have access to the Internet and would like to send a new firmware file to your printer, which you have received from HP, click here."
In the next window, do click the Update Firmware button. Do not click the Choose File button. This is mis-labelled, it should say Choose Destination, but don't click it anyway. It merely downloads a useless text file.
Do not interrrupt the firmware installation, or you will need a technician, parallel cable, and a PC. Wait until the HP 130nr printer shuts itself off.
Turn the printer back on.
Next, you need to install the printer (and driver) again; it's already in the standard installation of Mac OS X 10.5:
In System Preference » Print & Fax, delete the original 'hp designjet 130nr' printer.
Run Disk Utility and Repair Permissions.
Add a new 'hp designjet 130nr' printer in the Print & Fax System Preferences panel. You must use Bonjour, not AppleTalk or IP address.