Hi,

I attended PWG meetup this week - due COVID-19 the meetup was completely
virtual.

The notes from the first day are attached, new PWG standards were
discussed during next days - proposals can be found here
https://ftp.pwg.org/pub/pwg/ipp/wd/?C=M;O=D .

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

OpenPrinting plenary
---------------------

- cups-filters - moving to printer application - no remote PPDs, reliability 
enhancements,
  moves to stable API of poppler
- future - printing in SNAP/flatpack
- new PAPPL project - framework for printer apps
- ippusbxd vs ipp-go for ipp-over-usb printers
- avahi patch - for advertising local services on local machine only - finally 
megred,
  no longer blocks printer applications and ipp-over-usb
- GSoC prolonged by two weeks later due COVID-19
- OP will try to participate in Google Season of Docs 2020 - starts in 
September to November,
  can go to March for longer projects

GSoC 2019-2020
--------------
- GSoC 2020 selected projects:
  - linux GUI app for IPP system service
  - common print dialog backend with Qt
  - IPP scan server
  - General printapp SDK
  - speed/scaling optimization of cups-browsed - needs specific HW, delayed due 
COVID
  - extract raster data from PDF to direct printing - needs specific HW, 
delayed due COVID
  - configurable printapps
- OP community bridge - funding openprinting projects

Printer Applications
--------------------
- two printapps - ippeveprinter (ippserver), LPrint
- framework PAPPL

- printapps = replacement for PPD, ppd options are now ipp attributes + driver 
specific UI by printapp
- printapp is ipp everywhere printer - requires only PWG raster/PDF and JPEG 
(for color printers)
- CUPS libs and ippsample are good means how to create printerapp
- compatible with old CUPS 1.4 and older

ippeveprinter
------------
- started as ippserver, has 3 modes - ppd-based postscript printer mode, basic 
legacy postscript/pcl printer, attribute file mode
- good for testing, not for production

- enhancements - in ippsample and ippeveselfcert, Mike will provide pull 
requests to Apple to incorporate the changes in Apple CUPS
  - support resource files
  - clone-printer script - collects attrs, icons and strings from a printer

LPrint
------
- in snap or github
- for common network or USB label printers
- based on ippeveprinter - multiple printer support via subset of IPP system 
service, daemon is run on demand, it doesnt use CUPS backend
- is standalone spooling without CUPS and runs as ipp everywhere printer
- support raw, apple/pwg raster and PNG files

PAPPL
-----
- C framework for writing printer apps
- should support any kind of printer or driver in all environments
- base for gutenprint and LPrint
- supports JPEG, PNG, PWG, Apple Raster and "raw" printing to USB/network 
printer
- license the same as CUPS
- framework supports adding others filters
- it generates specific printerapp and web pages based on your provided options

Openprinting projects
---------------------
- cups-filters
  - now supports clustering
  - no longer downloads remote PPD and creates PPD based on IPP  request
  - works with chunks of print queues
  - filters supports zero-page input files -> zero-page output without error
  - fallback during get_printer_attributes - for IPP-1.1 and then without 
media-col-database
  Future:
  - change of license to the same as CUPS
  - move more functions into libcupsfilters
  - filters should be PPD-less, except for foomatic-rip
  - take PPD functions from CUPS and create libppd library to allow converting
    legacy drivers into printerapps
  - cups-browsed as printerapp
  - cups-browsed may be forked from cups-filters

- driverless scanning
  - 3 standards - IPP scan(open PWG standard), eSCL(from HP, used by Apple 
AirScan), WSD(from Windows and W3C)
  - 2 projects - escl and airscan - will be merged into one, supporting all 3 
standards and added into sane-backends
  - sane-backends currently has escl backend, but since it will be merged into 
airscan the escl backend was removed
    in Fedora
  - works via ipp-over-usb (ippusbxd, ipp-usb)
  - goal is to rework scanning model due sandboxed packaging -> introducing IPP 
Scan:
    - scanning drivers will be scanning application, emulates IPP scanner
    - IPP scan client is scanning app
    - app uses IPP scan SANE backend, old SANE drivers in legacy Scanner 
Application

- ipp-over-usb:
  - ipp-usb
    - written in Go, better http handling library, high memory footprint - main 
disapproval from ChromeOS
  - ippusbxd
    - written in C, has several problems which are fixed in ipp-usb (due better 
HTTP library in Go)
    - ChromeOS person wanted to implement the features which works in ipp-usb, 
but no activity since then

- CUPS Snap:
  - has CUPS, cups-filters, cups-browsed, gs, qpdf, no classic drivers (cannot 
get dropped into Snap
    filesystem)

Attachment: signature.asc
Description: OpenPGP digital signature

_______________________________________________
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@lists.fedoraproject.org
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@lists.fedoraproject.org

Reply via email to