Hi all,

after 2 years or so of solving licensing issue, I would like to announce CUPS-2.3.0 is going into Fedora rawhide next week.

The 2.3.0 version brings several changes:

Change of license:

It is Apache software license 2.0 with exceptions for LGPLv2 only and GPLv2 only now. ASL 2.0 is compatible with licenses GPLv2+ and LGPLv2+ and exceptions cover projects which are version 2 only, so no dependent package is affected.

The main license is to be found in LICENSE file, exceptions in NOTICE.

Deprecation of printer drivers and raw queues:

Because most printers produced since approx. 2012 support IPP everywhere (or AirPrint) standard [1],  CUPS upstream decided to deprecate printer drivers and raw queues support. That means printer drivers and raw queues are STILL AVAILABLE, BUT YOU GET DEPRECATION WARNING when you create them. They will be removed in the future, substituted by printer applications or 'everywhere' model.

There are small tutorial [2] and FAQ [3] about IPP everywhere.

Introduction of printer application:

CUPS 2.3.0 now provides ippeveprinter binary, which is now shipped in cups-printerapp subpackage. This is the printer application provided by CUPS upstream, which acts as IPP everywhere print queue above NOT-IPP everywhere enabled printer. ippeveprinter now works for printers who accepts postscript and PCL languages.

More info about printer applications can be seen at CUPS plenary from PWG 2018[4] or my report from PWG 2019[5], small usage cases will be in man pages ippeveprinter(1) and ippeveps/ippevepcl(7).

OpenPrinting and PWG group are working hard on providing printer applications for the biggest printer driver packages e.g. foomatic, gutenprint and hplip. There will be several projects for those issues during Google Summer of Code 2020 to create those printer applications and ensure that there is a way how to make postscript and PCL printers works after printer driver removal. News from the group can be see at [6].

How to find out that my printer is 'IPP everywhere':

- prerequisites:

    - opened port 631 on the printer

    - [for cups temporary queues feature[7]] - running avahi-daemon.service, nss-mdns package installed,    printer in local network

- how to do the deed:


[1] http://www.pwg.org/ipp/everywhere.html

[2] https://github.com/apple/cups/wiki/IPP-(Everywhere)-Mini-Tutorial

[3] https://beta.pwg.org/ipp/evefaq.html

[4] https://ftp.pwg.org/pub/pwg/liaison/openprinting/presentations/cups-plenary-may-18.pdf , page 28

[5] https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/message/FJR462QFSTSNNCHFA5GVDKV6D2SXELL6/

[6] https://openprinting.github.io/

[7] Feature introduced in cups-2.2.4 - CUPS catches avahi messages about printers in local network and make them available only when you need - during print dialog of applications - and they disappear after minute since successful print job.

[8] https://github.com/istopwg/ippeveselfcert

[9] Daemon which makes USB printers available on the local network through avahi https://github.com/OpenPrinting/ippusbxd

-- 
Zdenek Dohnal
Software Engineer
Red Hat Czech - Brno TPB-C