From Fedora Project Wiki

Line 10: Line 10:
*The Administration Page provides more Advanced Operations like choice of Protocols (CUPS, LDAP) for sharing, Maximum number of
*The Administration Page provides more Advanced Operations like choice of Protocols (CUPS, LDAP) for sharing, Maximum number of<br>
simultaneous clients , Shows Job Completed jobs
simultaneous clients , Shows Job Completed jobs

Revision as of 05:39, 30 June 2009


This wiki contains information related to the Cups and System-config-printing provided with Fedora.


The version of cups provided with Fedora is cups-1.4 and following are the features in general, Though there are about number of changes

Below document provides most used , and most noticeable changes


  • The Administration Page provides more Advanced Operations like choice of Protocols (CUPS, LDAP) for sharing, Maximum number of

simultaneous clients , Shows Job Completed jobs

IPP Support

  • CUPS now conforms to the draft IPP/2.0 and IPP/2.1 specifications
  • CUPS supports the operation of downloading of files from print job using the "CUPS-Get-Document Operation"
  • The scheduler and backend discovery interface support a device-location attribute where we can specify the location of the printer
  • Support of hold jobs and releasing of jobs on hold


  • CUPS now uses "Bonjour (DNS-SD)" providing mDNS(multicast DNS) which supports Bonjour-based printer discovery


  • Scheduler now adds "authenticated" policy, So that certain IPP operations can be authenticated.On Fedora-11 the default policy is "default"

The scheduler provides "OpPolicy" directive which can be used to modify the policy. lpadmin command can also be used to set the policy to
a particular printer using -o printer-op-policy

  • the default LogLevel is now "warn" instead of "info"
  • The scheduler now supports a DefaultPaperSize directive to override the default paper size defined by the locale or libpaper configuration
  • New ErrorPolicy "retry-current-job" is added, that retries the current job immediately
  • Scheduler supports SSLOptions Directive in cupsd.conf which specifies the network address and port to Listen for secure connections
  • Scheduler now supports new "FatalErrors" Directive to determine which kind of errors are fatal, The following kind of errors are currently recognized

none, all, browse, config (configuration syntax errors), log (log file creation errors), permissions (file permission errors ex: certifcate files and keys)

  • Scheduler now passes hostname from the job was submitted as "job-originating-host-name" to filters and backends
  • Scheduler now includes CUPS_FILETYPE, PRINTER_INFO, and PRINTER_LOCATION environment variables that is passed to filter or backend
  • The scheduler now supports a test mode via the "-t" option, which can be used to test the syntax of cupsd.conf.

Printer Drivers

  • USB printer support; the usb backend now uses libusb when available to allow it to better work with third-party scanning and printing solutions.
  • the cupsPJLDisplay PPD attribute controls the PJL commands used to display the current user and job on the printer.
  • new generic PostScript and PCL drivers provide improved support for laser printers, the CUPS DDK drivers offer support for many HP DesignJet printers

and new label drivers offer support for Seiko and Tharo label printers.

  • A new CUPS command file filter for PostScript printers provides auto-configuration, self-test page, and status and supply level reporting functions.
  • The CUPS DDK is now a standard part of CUPS.


  • the standard image filters now support image files larger than 2GB.
  • the bundled banner ("job-sheets") pages are now generated using a new banner filter provides easier customization and better support for UTF-8 text.
  • the pdftops filter has been replaced with a wrapper program that runs the Xpdf, poppler, or Ghostscript PDF to PostScript utilities.


In this release, system-config-printer uses PolicyKit to control access to restricted CUPS functionality. The following functions are controlled via PolicyKit policies currently:

  • add/remove/edit local printers
  • add/remove/edit remote printers
  • add/remove/edit classes
  • enable/disable printer
  • set printer as default printer
  • get/set server settings
  • restart/cancel/edit a job owned by another user
  • restart/cancel/edit a job