From The Linux Foundation
Jump to: navigation, search

Distribution-Indpendent Printer Driver Packages on the OpenPrinting Site

To make installing printer drivers not provided by the Linux distributions easier for users, and to make providing printer drivers easier for the printer manufacturers, we have introduced a new concept of distribution-independent printer driver packages.

The packages are based on the LSB 3.2, so they will work on all Linux distributions which are LSB-3.2 compliant (current Red Hat/Fedora, Novell/SUSE, Ubuntu, Mandriva, ...).

Preparation of LSB-compliant distributions

Before installing the first driver package install the "lsb" package. This makes your installed system LSB-compliant.

Installing the driver package manually

  • Download the desired driver package. Take care of the system architecture (most normal PCs are "x86 32 bit", newer PCs are "x86 64 bit", older Macs are "Power PC 32 bit" or "Power PC 64 bit", newer Macs are "x86 32 bit" or "x86 64 bit", like PCs). You will find always RPM packages which you can directly use in Red Hat/Fedora, SUSE, Mandriva, ... In some cases there are also Debian packages available which are suitable for Debian, Ubuntu, ... If your browser opens a media player plug-in, click the "Back" button of the browser, right-click the link for the package, and choose "Save as...".
  • If you have a non-RPM-based distribution (Ubuntu, Debian, Slackware, ...) and no packages of your distribution's format are available, convert the downloaded RPM package(s) with alien. Do (On Ubuntu, preceed the command by "fakeroot" or "sudo", on other distributions, run it as root):
alien -ck <name of the downloaded RPM package>
  • Install the driver package with the package installation tool provided by your distribution. Use "rpm" for .rpm packages on distributions like Red Hat/Fedora, Novell/SuSE, Mandriva, ... Use "dpkg" for .deb packages on Ubuntu, Debian, ... The commands should look like this (execute the appropriate command as root, or on Ubuntu preceeded by "sudo"):
rpm -Uvh <name of the downloaded RPM package>
dpkg -i <name of the .deb package>
  • Set up a print queue with your distribution's printer setup tool.

Installation with the package tool of your distribution and automatic updates

We are currently working on support for package management tools of common Linux distributions. These tools allow an easy look-up of installable packages on servers and also automatic updates (for security fixes, general bug fixes, ...).

For this we plan to index our package repositories so that they can be looked up by yum (Red Hat, Fedora, SUSE, ...), zypper (SUSE), urpmi (Mandriva), apt-get (Debian, Ubuntu, ...).


Indexing for apt-get we have already working. Add the line

deb lsb3.2 main

to your /etc/apt/sources.list file and run

sudo apt-get update

From now on your package installation tools will also list our packages and if you have installed packages from us, they will be taken into account on the daily automatic updates.

Note also that packages of our distros can also get replaced by an update from our site, if their names are the same as of our packages and we provide a newer version. To avoid this you can restrict automatic updates to only the packages which you have downloaded. Use

deb lsb3.2 <driver1> <driver2> ...

in your /etc/apt/sources.list file to only get automatic updates for selected drivers. for "<driver1>" ... enter the names of the desired drivers, as they are used on the database pages, for example this line

deb lsb3.2 splix gutenprint52

enables automatic updates from our site for the SpliX driver and for the 5.2 series of GutenPrint.


We have also set up indices for yum, but they need testing. Please create a file with the following content in your /etc/yum/repos.d/ directory:

name=OpenPrinting LSB-based driver packages

If this does not work or these instructions are not complete, please report a bug on our bug tracker, for the product "OpenPrinting" and the component "OpenPrinting web site". If you get it to work with modifications, please tell what to chenge in your bug report.

Also with yum you can restrict auto-updates to selected drivers. For each driver add a file containing the following to your /etc/yum/repos.d/ directory:

name=OpenPrinting LSB-based driver packages of SpliX

Replace "splix" by the name of the desired driver.


zypper uses the same package repository indices as yum uses, so our support for this package manager is always as good as for yum.

To add our whole package repository, do

zypper sa OpenPrinting

To add only a selected driver for automatic updates do (example for Gutenprint 5.2.x series):

zypper sa Gutenprint52

Distributions which are only LSB-3.1 compliant

The LSB 3.1 does not have requirements on the printing infrastructure, you will have to do some additional simple preparation steps to be able to use these packages on LSB-3.1-compliant Linux distributions.

  • Add the LSB 3.2 requirements for printing by installing CUPS, foomatic-filters, ESP Ghostscript 8.15.3 or newer or GPL Ghostscript 8.60 or newer (on most distributions they are already installed)

On Ubuntu or Debian unstable you do not need to do the following step.

mkdir -p /usr/share/ppd
ln -s /usr/share/ppd /usr/share/cups/model/0-driverppds

Source packages

Do you want to rebuild the packages to be optimized for your system? Customize them? Learn how we built the packages?

The source RPM packages of all driver packages (at least of the ones which are free software) you will find here. And here you can have a quick look into the spec files for the RPMs. Note that we have no source files for the Debian packages, as they are all generated from the RPMs using the alien command shown above. So the sources for the Debian packages are also the source RPMs.

If not otherwise stated our packaging is licensed with the same license as the driver itself. Therefore we must provide source RPMs for packages of free software printer drivers.