printer drivers required if CUPS is installed ?

CUPS server and Client is on same device.

so do i need to install drivers for the different printers or installed CUPS is enough ?

2 Answers 2


For the CUPS client the driver is not needed, since the client talks to printer through the CUPS server. For the CUPS server you do need to install a driver for each printer. Usually CUPS server comes equipped with a bunch of Gutenprint drivers and when you add a printer, you can choose the maker and then the model of your driver in the menu. But for some models Gutenprint drivers do not work well, so you may face a situation, when you need to download and install driver yourself.

Installing driver always boils down to a simple action: you need to find a .pdd file for your printer model and tell CUPS where it is located (even for drivers, which come in the form of installation scripts -- all they do is unpack .pdd files into some directory). Good sources of drivers are

  1. Native drivers from the maker of your printer (a lot of companies do provide CUPS drivers for their printers)
  2. Gutenprint drivers (CUPS comes with them, but if the CUPS version is outdated, check the Gutenprint drivers web site)
  3. Drivers from http://www.openprinting.org/printers

Just as an example of the whole procedure: the installation of the native driver for my Samsung SCX-3405 printer.

First I went to Samsung support web-page, found my driver model. In the "Manual download" section found the "Printing & Scan Driver ver V1.00.36_00.91, Linux" and downloaded it (gzipped tar file uld_v1.00.36_00.91.tar.gz). After unpacking this archive

$ tar -pvxf uld_v1.00.36_00.91.tar.gz

I discovered that the directory uld was created:

$ cd uld
$ ls
arm/  i386/  install-printer.sh  install-scanner.sh  install.sh  noarch/  uninstall-printer.sh uninstall-scanner.sh uninstall.sh x86_64/

Samsung assumes that you will run install-printer.sh as root, but there is no need in that, since all the drivers are located in noarch/share/ppd/ and during printer installation you can manually choose the driver from this directory (it is funny that after making us to choose the printer model, Samsung sends us drivers for all the models).

If you are willing to store all the Samsung drivers for future use, just copy them into the CUPS "drivers vault".

$ su
# mkdir /usr/share/cups/model/samsung
# cp noarch/share/ppd/*  /usr/share/cups/model/samsung

For my Samsung SCX-3405W I was having troubles installing this driver.

Even with latest drivers uld_V1.00.39_01.17 (https://ftp.hp.com/pub/softlib/software13/printers/SS/SL-M4580FX/uld_V1.00.39_01.17.tar.gz) I was having problems; always receiving:

Unable to open raster stream - : Broken pipe

Only after I turned to http://splix.sourceforge.net/ or https://sourceforge.net/projects/splix/ and used it's rastertoqpdl it was working.

Here's my PPD file: https://gist.github.com/ChaosEngine/65532a1bb837e5adaa067af7670ff2c2

  • 1
    *cupsFilter: "application/vnd.cups-raster 0 rastertoqpdl" is the key ingredient here Commented Sep 2, 2018 at 11:17

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .