foo2xqx is an open source printer driver for printers that use the
HP/Software Imaging
"XQX"
stream wire protocol for their print data, such as the
HP LaserJet P1005,
HP LaserJet P1006,
HP LaserJet P1505, and the
HP LaserJet M1005 MFP,
These printers are often erroneously
referred to as winprinters or GDI printers. However, Microsoft GDI only
mandates the API between an application and the printer driver, not the
protocol
on the wire between the printer driver and the printer.
In fact, "XQX" printers
are raster printers which happen to use a very efficient wire protocol
which was developed by
HP/Software Imaging.
"XQX" is
just one of many wire protocols that are in use today, such as Postscript,
PCL, Epson, ZjStream, etc.

This driver uses Ghostscript
to perform all of the heavy lifting (image processing).
There are five major components to the foo2xqx printer driver.

foo2xqx - the page image to protocol conversion engine of the driver.

foo2xqx-wrapper - a shell script (compatible with foomatic)
which runs ghostscript and foo2xqx in a pipeline.

icc2ps - converts an ICM color profile to a Postscript CRD,
which is then fed into Ghostscript before the users Postscript program.

foomatic-db - foomatic
database entries which describe the supported printers and their options so that
printer spoolers know how to access the printer using foo2xqx-wrapper.

Now create printer entries for your spooler.
Create the queues first, then edit them
and set the device options as desired. See your
operating system documentation for further details on creating
a printer queue. Click any hyperlinks below for sample screenshots.

For low level testing, you can also create a "raw queue", which will accept
"XQX" stream files as-is and send them directly to the printer.

Questions and Support

If you installed as per the above instructions, then
click on our forums
for questions and support.

If you installed a THIRD PARTY (e.g. Ubuntu, Gentoo, etc.)
foo2zjs package,
then read the INSTALL file
and follow the directions. No third party support is given.
You MUST install using the above procedure.