Skip to content
Common UNIX Printing System
EntityQ868171· pop 26· linked from 197 articles

Common UNIX Printing System

Sign in to save

Also known as CUPS

CUPS (formerly an acronym for Common UNIX Printing System) is a modular printing system for Unix-like computer operating systems which allows a computer to act as a print server. A computer running CUPS is a host that can accept print jobs from client computers, process them, and send them to the appropriate printer.

Key facts

Software.name
OpenPrinting CUPS
Software.logo
frameless|class=skin-invert
Software.author
Michael Sweet (Easy Software Products)
Software.developer
OpenPrinting and community
Software.latest release version
2.3.6
Software.latest release date
May 25, 2022
Software.repo
https://github.com/apple/cups
Software.programming language
C
Software.operating system
Unix-like and ArcaOS
Software.genre
Print server
Software.license
Apache License 2.0
Software.replaced_by
OpenPrinting CUPS (except macOS, iOS, and iPadOS)
Software.discontinued
no
Software.replaces
Apple CUPS (except macOS, iOS, and iPadOS)

via Wikipedia infobox

Source code

Note: This branch is tracking a future CUPS 2.5.x feature release. Check out the "2.4.x" branch for CUPS 2.4.x. OpenPrinting CUPS is the most current version of CUPS, a standards-based, open source printing system for Linux® and other Unix®-like operating systems. CUPS supports printing to: [AirPrint™][1] and [IPP Everywhere™][2] printers, Network and local (USB) printers with Printer Applications, and Network and local (USB) printers with (legacy) PPD-based printer drivers. CUPS provides the System V ("lp") and Berkeley ("lpr") command-line interfaces, a configurable web interface, a C API, and common print filters, drivers, and backends for printing. The [cups-filters][3] project provides additional filters and drivers. CUPS is licensed under the Apache License Version 2.0 with an exception to allow linking against GNU GPL2-only software. See the files LICENSE and NOTICE for more information. Note: Apple maintains a separate repository for the CUPS that ships with macOS and iOS at . Once you have installed the software you can access the documentation (and a bunch of other stuff) online at and using the man command, for example man cups . If you're having trouble getting that far, the documentation is located under the doc/help and man directories. The lpadmin command is used to manage printers from the command-line. For example, the following command creates a print queue called "myprinter" for an IPP Everywhere printer at address "11.22.33.44": The -p option specifies the printer name. The -E option enables the printer and accepts new print jobs immediately. The -v option specifies the device URI for the printer, which tells CUPS how to communicate with the printer. And the -m option specifies the model (driver) to use, in this case the IPP Everywhere ("everywhere") driver that is used for AirPrint and IPP Everywhere printers as well as shared printers and printers supported through Printer Applications. Legacy printers are supported using PPD (PostScript Printer Description) files that describe printer capabilities and driver programs needed for each printer. CUPS includes several sample PPD files for common legacy printers: The sample drivers provide basic printing capabilities, but generally do not exercise the full potential of the printers or CUPS. Other drivers provide greater printing capabilities. CUPS recognizes many types of images files as well as PDF, PostScript, and text files, so you can print those files directly rather than through an application. CUPS uses [Weblate][WL] to manage the localization of the web interface, command-line programs, and common IPP attributes and values, and those likewise end up as pull requests on Github.

Excerpt from the source-code README · 7,670 chars · not written by Vinony

Wikidata facts

Instance of
free software
Image
OpenPrinting CUPS screenshot.webp
Show 9 more facts
source code repository URL
github.com/apple/cups
inception
1999-06-09
Commons category
Common Unix Printing System
programmed in
C
software version identifier
2.4.18
operating system
Microsoft Windows
GUI toolkit or framework
web user interface
Stack Exchange tag
stackoverflow.com/tags/cups
Sources (9)

via Wikidata · CC0

~19 min read

Encyclopedic overview

20 sections
Contents
  • History
  • Overview
  • Scheduler
  • Filter system
  • MIME databases
  • Filtering process
  • Backends
  • Compatibility
  • User interface tools
  • CUPS web-based administration interface
  • GNOME
  • KDE
  • Mac OS X
  • PrinterSetup
  • Red Hat Linux/Fedora
  • ESP Print Pro
  • See also
  • References
  • Further reading
  • External links

CUPS (formerly an acronym for Common UNIX Printing System) is a modular printing system for Unix-like computer operating systems which allows a computer to act as a print server. A computer running CUPS is a host that can accept print jobs from client computers, process them, and send them to the appropriate printer.

CUPS consists of a print spooler and scheduler, a filter system that converts the print data to a format that the printer will understand, and a backend system that sends this data to the print device. CUPS uses the Internet Printing Protocol (IPP) as the basis for managing print jobs and queues. It also provides the traditional command line interfaces for the System V and Berkeley print systems, and provides support for the Berkeley print system's Line Printer Daemon protocol and limited support for the Server Message Block (SMB) protocol. System administrators can configure the device drivers which CUPS supplies by editing text files in Adobe's PostScript Printer Description (PPD) format. There are a number of user interfaces for different platforms that can configure CUPS, and it has a built-in web-based interface. CUPS is free software, provided under the Apache License.

Excerpted from Wikipedia’s “Common UNIX Printing System” article, available under the CC BY-SA 4.0 licence.

Gallery (18)