Michael Sweet, the author of the CUPS printing system, has introduced the release of PAPPL 1.1, a framework for developing IPP Everywhere-based printing applications that are recommended as a replacement for traditional printer drivers. The framework's code is written in C and is released under the Apache 2.0 license with an exception allowing linking with code under GPLv2 and LGPLv2 licenses.
In the new version:
- Wi-Fi configuration capabilities have been added.
- Support for printer access via IPP-over-USB (IPP-USB) protocol has been introduced.
- Functionality to automatically find suitable printer drivers and enhance functionality has been implemented.
- Added the PAPPL_SOPTIONS_NO_TLS mode to disable TLS encryption.
- Buttons and commands for pausing and resuming printer operation have been added.
- The papplSystemSetAuthCallback API has been added to support alternative authentication mechanisms.
- An option to enable compression has been implemented.
- Improved simultaneous management of multiple printers has been achieved.
- Support for Windows 10 and 11 platforms has been added.
It should be noted that the PAPPL framework was originally developed to support the LPrint printing system and Gutenprint drivers but can be used to implement support for any printers and drivers when printing on desktop, server, and embedded systems. It is expected that PAPPL will help accelerate the adoption of IPP Everywhere technology over classic drivers and simplify the support for other IPP-based programs like AirPrint and Mopria.
PAPPL includes a built-in implementation of the IPP Everywhere protocol, providing means to access printers locally or over a network and handle print requests. IPP Everywhere operates in a driverless mode and, unlike PPD drivers, does not require static configuration files to be created. It supports interaction with printers both directly via local USB printer connections and over the network using AppSocket and JetDirect protocols. Data can be sent to the printer in JPEG, PNG, PWG Raster, Apple Raster, and raw formats.
PAPPL can be built for POSIX-compatible operating systems, including Linux, macOS, QNX, and VxWorks. Dependencies include Avahi (for mDNS/DNS-SD support), CUPS, GNU TLS, JPEGLIB, LIBPNG, LIBPAM (for authentication), and ZLIB. Based on PAPPL, the OpenPrinting project develops a universal PostScript Printer Application that can work with both modern IPP-compatible printers (which use PAPPL) that support PostScript and Ghostscript, as well as older printers that have PPD drivers (using cups-filters and libppd).
Source: opennet.ru
