March 15, 2009

Using any Windows Printer on Mac OS X by way of VMWare Fusion

Short Version: If your Windows printer is not a postscript printer, use this trick to make a virtual postscript printer from your Windows printer. Then make sure your VM'ed Windows has printer sharing allowed on the firewall, and set up the printer as a network printer on Mac. You might need this guide to do that.

VMWare Fusion just saved me the money to buy a new printer. I was already very happy with VMWare Fusion, since my switch from XP to Mac. Using Fusion I was able to convert my XP machine to a virtual machine on the Mac, so I have lost no functionality at all - now I just have all the convenience of both operating systems. And I get to keep my C# and Visual Studio skills alive even though I'm on a Mac.
One problem, though, was printing.
A while back I bought an HP Laserjet 1018 from Morten, he couldn't use it because it's a Windows printer and he had switched to Mac. I had forgotten all about that, when I switched, so now his problem was mine.
There are some tricks around the net requiring firmware uploads to the printer - and if you turn it off you need to do it again (I think, the instructions were too complicated for my liking). Simply sharing it from my VM seemed better. The only problem, of course, was that it still had no Mac-happy drivers.
Ghostscript thankfully comes with a complete recipe for using any system printer as a Postscript printer (see above). Using this, and circumventing some broken printer discovery in Leopards Windows printer setup (also above) I now have a Postscript printer on Mac OS X which is really a Windows only HP.

The amount of indirection involved here is quite staggering: The physical printer, connects physically by USB to my Mac. The USB interface is virtualized inside my VM, inside which the printer is virtualized once more as a postscript printer. This virtual, virtual printer I can then connect to from the Mac and the deed is done.

Don't have a Windows license? I think this trick could be made to work with Linux as well - there are Linux drivers for this printer, and the rest of the toolchain also runs on Linux. VMWare Player + some hackery could be a Windowless way out (for this particular printer).

Posted by Claus at March 15, 2009 12:40 AM
Post a comment