On 5/22/21 12:17 AM, Kevin Kofler via devel wrote: > Zdenek Dohnal wrote: >> It is a library for printer applications [1], not a substitute for CUPS. >> CUPS is still present and is going to be. >> >> There will be more printer applications coming into Fedora >> (ps-printer-app f.e.) and one already is (lprint). >> >> >> The purpose of the library is have a way how to implement a support for >> devices which don't support IPP Everywhere [2] or its derivations >> (Airprint, Mopria, Google cloud print) or IPP over USB[3], so they can >> be seen by CUPS once we remove printer driver support. Hi Kevin, > I really don't see how the switch from drivers to printer applications is an > improvement. Printer applications started as a transition technology - a way how to support older printers once CUPS removes printer driver support - so for now they are here for backward compatibility. Except for Gutenprint, I'm not aware of any printer driver provider which plans to provide more specific options with a printer application. They seem to be okay with AirPrint. So printer application will be needed only for older (<2010) printer models in most cases. > All the existing drivers have to be ported to the new interface > to essentially emulate the IPP protocol. And now, instead of being able to > configure printer options through the existing graphical CUPS frontends (or > just set them temporarily in the individual application, which most > applications support nowadays), you end up with a CLI as in the old lpr > days, e.g.: > https://www.msweet.org/lprint/lprint.html#printing-options > https://www.msweet.org/lprint/lprint.html#setting-default-options > or at best, a GUI provided by the printer application in some arbitrary > toolkit, which will likely be GTK for Gutenprint (forcing KDE Plasma users > to use a GTK application to configure their printer) and Qt for HPLIP > (forcing GNOME users to use a Qt application to configure their printer). > Instead of a standardized interface to configure printer options, every > printer application now has to reinvent its own one. AFAIK PAPPL (and even the old lprint which I packaged into Fedora last year, but his web interface is going to substituted by PAPPL web ui in the next release) provides a default web interface which you can use for configuring printer options. > > From the end user perspective, the new approach brings only disadvantages. Since PAPPL provides web ui and CLI, which you can use for configuring your device, IMHO it is not much different from what CUPS provides right now. > From the driver developer perspective, it means a lot of porting work. It depends on which devices he creates drivers for - if the device supports Airprint, he can choose to let Airprint to support the printer and no printer application is needed. >From my daily work, I see people often use drivers because they are used to using it and don't know they don't need to use it. For older devices, yes, there needs to be a printer application to be able to use the device with CUPS in the future, but OpenPrinting plans to implement printer applications for widely known printer driver packages during GSoC [1] and provides a documentation for driver developers who wants to implement their printer application faster[2][3]. > The > only ones who will benefit are the CUPS developers, who will have > successfully outsourced their work to other projects that now have to do > their work for them. CUPS developers (PWG+Openprinting) decided to remove deprecated functionality (which has big issues regarding security and distribution) in the future in favor of standardized, less hardware dependent solution, which is supported by 98% of printers released since 2010. The functionality has been deprecated for 11 years and still be only deprecated (not removed) until there is a coverage for older devices by printer applications and have some tools for installing older printers via printer applications. CUPS developers came up with printer application design for older device users, so they don't have to buy a new device, created first three printer applications - ippeveprinter (shipped in CUPS itself, under cups-printerapp subpackage in Fedora), lprint (support for label printers) and ps-printer-app (which covers postscript printers) -, plans to implement printer applications for other widely packaged printer drivers and publicly provides a documentation how to create printer applications for corner use cases. [1] https://wiki.linuxfoundation.org/gsoc/google-summer-code-2021-openprinting-projects [2] https://openprinting.github.io/documentation/01-printer-application/ [3] https://openprinting.github.io/documentation/02-designing-printer-drivers/ > > Kevin Kofler > _______________________________________________ > devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx > To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx > Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ > List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines > List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx > Do not reply to spam on the list, report it: https://pagure.io/fedora-infrastructure -- Zdenek Dohnal Software Engineer Red Hat Czech - Brno TPB-C
Attachment:
OpenPGP_signature
Description: OpenPGP digital signature
_______________________________________________ devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx Do not reply to spam on the list, report it: https://pagure.io/fedora-infrastructure