I am Till Kamppeter, leader of OpenPrinting and so responsible for the
printing infrastructure in Linux and other Posix-style operating systems.
https://openprinting.github.io/about-us/
The Chrome/Chromiun Browser (and probably other Chromium or Google
applications on the Linux Desktop and also under Chromium OS) are under
the few applications which have their own print dialog, and do not use
one of the desktop environment toolkit's (GTK/Qt) ones primarily (AFAIR
one can use the GTK one optionally, via a link/button in the
Chrome/Chromium print dialog). Here a change is needed to assure smooth
and easy printing in the future.
Now, after 22 years of CUPS with PPD files and print filter executables
as printer drivers we have a change in the print architecture. The use
of PPD files gets abolished in CUPS and CUPS will go all-IPP, due to the
fact that modern printers are driverless IPP printers, which tell
everything about their capabilities to the clients via IPP (so do not
need PPDs) and use standard file formats for print jobs (and so do not
need driver filters). This requires changes in print dialogs.
https://openprinting.github.io/current/#the-new-architecture-for-printing-and-scanning
Piotr already knows about this from several OpenPrinting Summits and
OpenPrinting micro-conferences.
As this is most probably not the last major change needed and also for
print dialogs to support other print technologies than CUPS, for example
cloud printing services, I have created already 5 years ago, the concept
of the Common Print Dialog Backends (CPDB):
https://openprinting.github.io/achievements/#common-print-dialog-backends
Here the print dialog does not talk directly with the print technology
(like CUPS) but there are GUI-toolkit-independent backends, usually
maintained by the maintainer/developer of the print technology
(OpenPrinting for CUPS and for print-to-file). This way the maintainer
of the print technology, when they change something, they also change
the backend appropriately and all print dialogs immediately work with
the change. And if someone introduces a cloud printing service, they
simply put the backend for it into the Snap Store and once installed the
user can use the service from any print dialog.
Now, with the upcoming New Architecture for printing and scanning there
was a need of change on all print dialogs and I decided to finally get
CPDB be used in all print dialogs, and found a great, enthusiastic GSoC
(2022) contributor for it. He implemented the support in both GTK and Qt
dialogs and succeeded to get the merge request on the GTK one accepted
upstream.
https://github.com/TinyTrebuchet/gsoc22/
https://openprinting.github.io/OpenPrinting-News-February-2023/#common-print-dialog-backends-support-accepted-into-gtk
For this he did not only work on GTK and Qt code but also on the
development of CPDB, creating a second generation with much more
functionality:
https://openprinting.github.io/Common-Print-Dialog-Backends-Second-Generation-First-Beta-Release/
My Feature Request now is to get CPDB support into the print dialog of
Chrome/Chromium, so that users of these applications will be able to
continue to easily print also after the transition to CUPS 3.x (or to
the CUPS Snap, which also does not support classic CUPS drivers/PPD
files) and also print with any upcoming cloud printing technology right
out of the print functionality of the Chromium applications.
For the implementation I have a GSoC contributor, Kushagra Sharma, who would do the coding, he only needs someone mentoring/guiding him
on the Chrome/Chromium side to do the code contribution to
Chrome/Chromium correctly.