Michael R Sweet, original author of the CUPS printing system, who, after leaving Apple, switched to developing a fork CUPS from the OpenPrinting project, presented the first stable release PAPPL , a new framework for developing CUPS Printer Applications based on IPP Everywhere, which is recommended as a replacement for traditional printer drivers … The framework code is written in C and is distributed under the Apache 2.0 license with the exception that allows linking with code under the GPLv2 and LGPLv2 licenses.
The framework was originally designed to support the LPrint printing system and Gutenprint , but can be used to support any printer and driver for printing on desktop, server, and embedded systems. PAPPL is expected to help accelerate the advancement of IPP Everywhere technology instead of classic drivers and simplify support for other IPP-based programs such as AirPrint a> and Mopria .
PAPPL includes a built-in implementation of the protocol IPP Everywhere , which provides the means to access printers locally or over the network and process print requests. IPP Everywhere operates in “driverless” mode and, unlike PPD drivers, does not require static configuration files. Interaction with printers is supported both directly through a local printer connection via USB, and access over the network using the protocols AppSocket and JetDirect . Data can be sent to the printer in JPEG, PNG, PWG Raster, Apple Raster and “raw” formats.
PAPPL can be compiled for POSIX-compatible operating systems, including Linux, macOS, QNX, and VxWorks. Of the dependencies Avahi 0.8 (for mDNS / DNS-SD support), CUPS 2.2, GNU TLS 3.0, JPEGLIB 9, LIBPNG 1.6, LIBPAM (for authentication) and ZLIB 1.1 are noted. On the basis of PAPPL, the OpenPrinting project is developing a universal application PostScript Printer Application , capable of working as with modern IPP-compatible printers (used by PAPPL ) that support PostScript and Ghostscript, or older printers that have PPD drivers ( cups-filters and libppd ).