[lsb-discuss] Driver package repositories and distributions
till.kamppeter at gmail.com
Fri Jun 13 00:39:01 PDT 2008
I have now driver package repositories with working apt-get and
yum/zypper indices (not yet signed). See
for usage instructions.
Now there is the following problem: If you have several printers
connected to one machine, for example a Samsung laser using SpliX and an
Epson inkjet using Gutenprint. The Samsung works happily with the driver
coming with your distro and the Epson is a rather new model which needs
the new Gutenprint 5.2 which is still in beta state and therefore not
shipped with the distros. So you install the new Gutenprint from
Now you want to have automatic updates for Gutenprint, the next beta,
the RCs, the final, following bug fixes, ... If you add the whole
OpenPrinting package repository to your system's package sources you
would not only get your Gutenprint 5.2.x but also your SpliX package
updated by us (at least in the case that your distro has it in a package
named "splix" as we have it). Not every user wants that, especially if
he gets commercial support from his distribution vendor.
There are two solutions for this:
1. Put each driver into its own component of the repository. So one can
add each driver as a separate package source. In the example from above
one adds only the "gutenprint52" component and so only Gutenprint 5.2.x
gets auto-updated from OpenPrinting, not SpliX. SpliX will continue to
only get updated by the repositories of the distro. A printer setup tool
would add the package sources for each driver which it installs.
2. Rename all packages on OpenPrinting to have names which are never
used by the distributions. For example we rename our "splix" package to
"lsb-driver-splix". Renaming also links which point into system
directories (like for CUPS backends) and adding somethig like "LSB
Driver" into the Nickname of the PPD, we can make the driver perfectly
co-existing with the distro's driver on the same system.
This way our packages will never auto-update packages from the distro,
and even better, one will not run into problems if the distro splits a
driver package in another way into several binary packages than we do.
In addition, a user can easily switch between the distro's version of a
driver and our version without installing and uninstalling packages.
We also do not need separate package sources for each driver any more.
One adds one package source and so one can also get an overview of all
available drivers with an arbitrary package management tool.
For testing, I have implemented (1) now with the sample packages on the
OpenPrinting web site. But in general, I think (2) is the better solution.
More information about the lsb-discuss