This page is about the printer administration tool system-config-printer, which first appeared in Fedora (as part of my work at Red Hat), and later Ubuntu and other operating systems.

The purpose of the tool is to configure a CUPS server (often the local machine) using the CUPS API. The tool is written in Python, using pygtk for the graphical parts and with some Python bindings (pycups) for the CUPS API.

It is largely the same as using the CUPS web interface for configuring printers, but has the advantage of being a native application rather than a web page. It appears in the Fedora menu under System ▸ Administration ▸ Printing.

As a result of using the CUPS API the tool is able to configure remote CUPS instances and is not limited to configuring CUPS on the local machine. The CUPS library providing the API uses HTTP and IPP to communicate with the CUPS server.

I work on this application as part of my job at Red Hat.


Download tarball releases from:

You will also require pycups from:

Source Code

The git repository is available at GitHub.


Language translations should be submitted through Zanata.

Reporting bugs

If you have found a bug in system-config-printer, please report it. If system-config-printer came with your operating system, report the bug to the operating system vendor:

  • Packagers, or people who have installed system-config-printer from source themselves, should report the bug at GitHubThis is the “upstream” bug tracker.
  • Red Hat Enterprise Linux and Fedora users should use Red Hat Bugzilla
  • Ubuntu users should use launchpad
  • Mandriva users should use Mandriva Bugzilla

324 Responses to “system-config-printer”

  1. Kyle Richards says:

    Yea, sorry. I did have lowercase c as well. It just continues to print and print far more than 2 copies. Is there a better way to go about this to prevent it from printing so many times?

    • Tim says:

      If you print from the command line, using ‘lp’, do you get the same output? All pycups does is send the request to CUPS. FWIW, {‘copies’: ‘2’} works fine for me here with Fedora 21.

  2. Philip says:

    printer deskjet HP 1560 how install.

  3. John says:

    Hi Tim, i am surprised, this nice tool for linux printing actually works ! wohaa :-) Thank you.

    (Hp-deskjet_1050_j410_series.ppd, Automatically configured by hplib)

  4. Bart says:


    We’re a happy user of the system-config-printer. We run it flawless on 300 machines in production. And it sure beats windows in the ease of use.

    We use canon inktjet printers(MG 2400 series), which aren’t support very well by the vendor. There are open source drivers available on their website, but not sure who and if they are actually maintained.

    At the moment we have no method of ‘receiving’ printer error codes/feedback.

    The question i actually have is, how are printer errors handled? For example: paper jam, low inkt error, no ink, no paper, …. We’ve been dumping usb data and can pick out the error messages quite easily. Could you please point out where in the software chain between clicking the button to print page and actual data being sent to the printer, these errors are handled?

    Ultimate we’d want some kind of gnome system message with the printer error.

    Thank you in advance!

    • Tim says:

      This is meant to be handled by the backend and by the various drivers. The details of getting status from the device vary between manufacturers.

      It’s easiest to talk about “no paper”, because that’s standardized for the USB Printer class. This should be handled by the CUPS usb backend, but unfortunately it isn’t right now. This feature got lost in the switch from usblp to libusb.

      For ink levels, and supplies generally, this is up to the driver. For Canon printers it’s usually Gutenprint that does the best job, but unfortunately it doesn’t report ink levels. It’s been discussed on the mailing list — more than once — but so far there has been no progress.

      It’s doable, but no-one’s done it.

      As far as GNOME reporting goes, that’s all in place and working (it works for network printers, for example). It’s just the USB and driver parts that are missing.

  5. Beth says:

    “Rendering Complete” The message I keep getting when trying to print. What does this mean

  6. John says:

    I have system-config-printer installed on two Linux systems. It came pre-installed on an Ubuntu system and I installed it on a Manjaro (Arch Linux variant) system. On the Ubuntu system, when I right click on a printer icon, I can select anything from the pop-up menu. On the Manjaro system, when right-clicking I can only select “View Print Queue” – everything else is grayed out.

    I can make the Manjaro version work like the Ubuntu version by using sudo system-config-printer from the command line, so it’s probably a permissions issue. I don’t see any obvious choices of groups to add myself to that I don’t already belong to. Any ideas?

  7. I was getting system-config-printer terminating unexpectedly when handling UTF-8 characters in certain fields. Now it has been sorted by updating system-config-printer.

  8. Chad Sheridan says:

    I have an interesting question for you, where does system-config-printer store it’s URI info for the printers listed? We’ve just changed our print server to another machine and would prefer a search/replace to change the URI for our 100+ printers rather than editing them all 1 by 1.

    • Tim says:

      CUPS stores this information in /etc/cups/printers.conf. You could stop cupsd, edit printers.conf, then start cupsd.

      • Chad Sheridan says:

        I have done this, yet every time the admin I’m doing the contract for uses system-config-printer the utility loads the old values, and if any changes are made, overwrites the edited printer.conf

        • Tim says:

          system-config-printer only talks to CUPS to get the URIs for existing queues. They don’t come from anywhere else. You can talk to CUPS yourself to see what it thinks they are: lpstat -s.

  9. catherine says:

    cannot scan off my Brother MFC-J410w now that my system is on Linux…. only print… what gives? Help!

  10. Riku says:

    I can not find driver Canon MX 450 printer

    Would your send me link to dowload and how to install

    I using Ubuntu 10.04

    Thank you

  11. Stephan says:

    I just installed linux mint 14. I have a xerox colour cube 8570.

    I can not use the MPT1 for my heavy papers and Ettiketts . I chose the MPT1 but it getś the paper from the main2.

    What can I do ???

    Big Thanks for a good advice.

Leave a reply

Comments are moderated. Comments that are inappropriate, offensive, vulgar, badly written or insulting will be deleted or edited to make the author look silly.