[Printing-architecture] IPP Everywhere: How to make CUPS queue so that applications can use these printers

Michael Sweet msweet at apple.com
Wed Jan 9 19:53:02 UTC 2013


Responses inline...

On Jan 9, 2013, at 1:49 PM, Till Kamppeter <till.kamppeter at gmail.com> wrote:
> ...
> 1. How to print from a Linux machine to an IPP Everywhere printer?
> ------------------------------------------------------------------
> ...

Currently the only way to do this is to query the printer and generate a PPD file from the data. Then add the queue.  All of the generated PPDs should contain:

    *cupsFilter2: "application/vnd.cups-raster image/pwg-raster 100 rastertopwg"

Printers with PDF support should list:

    *cupsFilter2: "application/vnd.cups-pdf application/pdf 0 -"

Printers with JPEG support should list:

    *cupsFilter2: "image/jpeg image/jpeg 0 -"

I have this on my to-do list for CUPS, but thus far haven't had the time to write it...

> 2. How to make a Linux CUPS server emulate IPP Everywhere?
> ----------------------------------------------------------
> Another use case for IPP Everywhere is having a Linux machine running CUPS and with a conventional (non-IPP Everywhere) printer connected via network or USB and a CUPS queue with driver and PPD (HPLIP, Gutenprint, PostScript, etc.). Now I have a mobile device or TV set (Android, Windows Phone, ...) which supports printing on IPP Everywhere printers. How do I make CUPS emulate IPP Everywhere, so that the shared CUPS queues appear like IPP Everywhere printers? Or does CUPS do this already?

CUPS already implements the required (and many of the optional) parts of IPP Everywhere, sans WS-Discovery (which really needs system-level support and I have 0 interest in implementing it...)  You just need to add the following to cupsd.conf to make the Bonjour registrations report the _print subtype:

    BrowseDNSSDSubTypes _cups,_print

Of course, without the WS-Discovery stuff your WinPhone won't be able to discover the printer, but AFAIK Microsoft has not yet implemented IPP Everywhere...

Michael Sweet, Senior Printing System Engineer, PWG Chair

More information about the Printing-architecture mailing list