Hacker News new | ask | show | jobs
by nextos 618 days ago
Usually, drivers for similar printers might work. There are also generic driver sets like Gutenprint. Nonetheless, note that CUPS now discourages the use of any drivers, and support will be removed in the future.

They claim that modern printers implement IPP and that should be the preferred protocol for printing. In IPP, printers advertise capabilities and are able to handle different high-level printing requests.

1 comments

That is wrong. CUPS recommends using the IPP protocol, but the IPP driver (called “IPP Everywhere”) is only available on relatively modern printers. Everything else still has to use drivers, mostly PPD.
Any CUPS daemon will raise the following warning on startup. I just copied this from my Systemd log:

  cupsd[873]: Printer drivers are deprecated and will stop working in a future version of CUPS. See https://github.com/OpenPrinting/cups/issues/103
Not saying this is the correct decision, but IPP Everywhere is available on most printers that are < 10 years old. Obviously, that rules out older printers, which are fairly common.
From the mentioned issue:

> As for printer drivers, those few printers that "need" them can migrate to standalone applications/services using the CUPS API to provide an IPP Everywhere-compatible Printer instance. PAPPL provides a convenient framework for easily creating these applications and porting existing CUPS raster drivers, and the following printer applications are already available or (in the case of Gutenprint) under development:

[...]

> ps-printer-app: PAPPL-based PostScript printer application that supports all CUPS/PostScript printers via PPDs and includes all of the Foomatic and HPLIP drivers.

So drivers will still be supported in a sense, just not directly by the CUPS daemon.

I have a Brother printer from 2019 (HL 2340) that does not support IPP Everywhere. A lot of other printers from before ~2020 don’t either.

You are (like so many other people) confusing IPP the protocol with IPP the driver, which is honestly not your fault and a terrible naming mistake.

And like you mentioned, people have way older printers because if all you do is print monochrome and mostly text, a printer from 2004 doesn’t lack much aside from AirPrint / Mopria. Which is why I suspect CUPS will not deprecate at least PPD drivers.

If you read the linked issue you will see that the plan for legacy printers is to move the printer drivers under a separate application that CUPS can then talk IPP to.

So yes, CUPS itself will only support IPP without any printer-specific driver. Since mobile phones also only directly support IPP this sounds like a reasonable decision.

> If you read the linked issue you will see that the plan for legacy printers is to move the printer drivers under a separate application that CUPS can then talk IPP to.

Ah, yes. Thanks for pointing that out! I wonder how much more secure that will make things for those who have to use legacy printers.

> Since mobile phones also only directly support IPP

Technically AirPrint is not IPP Everywhere, they use a different raster format and some different glue. For example my Brother printer supports AirPrint but fails ~50% of the IPP Everywhere self-certification tests. But that’s splitting hairs.