Das neue Printer Application Framework, CUPS und Apples treiberloses Drucken
Michael Sweet startet das PAPPL. Ein Hintergrundartikel erklärt, wofür es gedacht ist und wie es zu CUPS und Apples Drucken ohne Treiber passt.
![Das neue Printer Application Framework, CUPS und Apples Weg zum treiberlosen Drucken](https://heise.cloudimg.io/width/610/q85.png-lossy-85.webp-lossy-85.foil1/_www-heise-de_/imgs/18/2/8/6/6/1/7/9/Drucker_Farbe_Buero-4d1e9e487e863d86.jpeg)
(Bild: Heise)
- Kurt Pfeifle
- Moritz Förster
Der bisherige CUPS-Entwickler Michael Sweet hat mit der Arbeit an einem neuen Projekt PAPPL begonnen, dem Printer Application Framework. Dessen Ziel: Als frei verfügbare Bibliothek soll es Grundlage und Rahmenwerk zur Entwicklung von CUPS Printer Applications bilden, die das traditionelle Gespann Treiber plus PPD (PostScript Printer Description) ablösen sollen.
Erforderlich wird dies, da Apple seit CUPS 2.3 vom August 2019 das Verwenden von PPDs plus Treibern offiziell abgekündigt und für veraltet erklärt hat. Dies bedeutet zwar nicht, dass PPDs ab sofort nicht mehr funktionieren – dies wird für die komplette 2.3.x-Serie weiterhin der Fall sein. Aber Treiber-Entwicklern, die Legacy-Drucker auch in Zukunft unterstützen möchten, sollte jetzt genug Zeit verbleiben, sich unter minimalem Aufwand mit Hilfe von PAPPL auf die komplett PPD-losen Zeiten ab CUPS 2.4 umstellen zu können.
Drucken ohne Treiber
Apples Ziel ist bereits seit längerem die vollständige Etablierung des “treiberlosen” Druckens. Denn der neue Standard der PWG (Printer Working Group) namens IPP Everywhere, den Apple und Sweet maßgeblich mit vorangetrieben haben, befreit Anwender und Entwickler von den Zwängen, bei jedem Drucker ein anderes proprietäres Druckdatenformat wie PCL, PostScript, HPGL, ESC/P oder PCLXL benutzen zu müssen – außer eben bei sehr alten Modellen. Außerdem sind sie nicht mehr bei jedem Hersteller auf eine andere Benennung von Standard-Job-Optionen angewiesen (zum Beispiel für doppelseitige Ausgabe DuplexNoTumble, APDuplex oder KDKduplex).
Statt proprietärer befeuern unter IPP-Everywhere offene Seitenformate wie JPEG, PDF oder PWG-Raster den Drucker. Für alle Job-Optionen verwendet es einheitliche Bezeichnungen, zum Beispiel sides=two-sided-short-edge
.
Zwischenzeitlich können laut Schätzungen 98 Prozent aller aktuell verkauften Drucker die für den neuen Standard geforderten Formate ohne weitere Konvertierungen direkt verarbeiten und Job-Optionen im einheitlichen IPP-Jargon verstehen. Außerdem unterstützen diese zusätzlich das automatische Auffinden von Druckern per Bonjour – unter Linux implementiert durch Avahi. Damit seien mehr als 800 Millionen der in den letzten zehn Jahren verkauften Druckgeräte bereit für das treiberlose Zeitalter, das Apple schon mit AirPrint für iOS eingeleitet hatte.
Bereits seit mehreren Releases ist in CUPS auch für Linux die treiberlose Dokumentenausgabe auf vielen Druckern der letzten Baujahre implementiert und erfordert keinen proprietären Hersteller-Treiber mehr. Beim Einrichten der Queue genügt die Angabe der generischen Dummy-PPD everywhere, damit der Spooler das Zielgerät per IPP nach seinen entsprechenden Fähigkeiten befragt und sich aus dessen Antworten eine entsprechende PPD automatisch zusammenbaut.
ippeveprinter für Basisfunktionen
Erstmals in CUPS 2.3.0 enthalten ist das Hilfswerkzeug ippeveprinter, das eine generische Printer Application darstellt, allerdings nur die essentiellen Druckfunktionen bietet. Printer Applications sind dafür gedacht, selbst ältere Gerätschaften noch an das Drucksystem andocken zu können – und das auch dann, wenn die Kernfunktionen von CUPS keinerlei PPD- und Treiber-Altlasten mehr direkt unterstützen, sondern ausschließlich auf IPP-Everywhere-Funktionen setzen.
Jedoch umfasst ippeveprinter für viele Nutzer nicht genug Funktionen. Hier soll PAPPL helfen und sowohl übers Netzwerk als auch per USB angebundene Geräte bedienen können. Als Druckformate sind JPEG, PNG, PWG-Raster, Apple-Raster und raw-Druck (seit CUPS v2.3 nicht mehr erlaubt) vorgesehen, später kommt womöglich PDF hinzu. POSIX-konforme Betriebssysteme wie Linux, macOS, QNX oder VxWorks stellen Ziel-Platformen von PAPPL dar, das auf GitHub unter der Open-Source-Lizenz Apache v2.0 erscheint. Es existiert jedoch eine Ausnahme-Klausel, die auch das Linken gegen GPL2/LGPL2-Software (wie ältere Versionen von CUPS) zulässt.
Die Ankündigung von PAPPL schließt zugleich einen anderen Kreis: Viele Gutenprint-Anwender und Etikettendrucker-Besitzer hatten befürchtet, in naher Zukunft auf dem Trockenen sitzen zu müssen, wenn CUPS die PPDs abschafft – insbesondere nachdem Michael Sweet vor kurzem bei Apple ausgeschieden war. So scheint nun doch sichergestellt, dass die Entwicklung auch für sie noch eine gute Weile weitergeht. (fo)