repeated printer drivers on HPLIP

Bug #24999 reported by Manuel López-Ibáñez
16
Affects Status Importance Assigned to Milestone
Ubuntu
Fix Released
High
Matthias Klose
foomatic-filters-ppds (Ubuntu)
Fix Released
High
Matthias Klose

Bug Description

The driver selection dialog shows two drivers with the same name. This occurs
for several printer models in HPLIP manufacturer.

Revision history for this message
Manuel López-Ibáñez (manuellopezibanez) wrote :

Created an attachment (id=4871)
Two hpijs indistinguishable drivers in the printer driver selection dialog

Revision history for this message
Manuel López-Ibáñez (manuellopezibanez) wrote :

Created an attachment (id=4872)
Two CUPS indistinguishable drivers in the printer driver selection dialog

Revision history for this message
Pascal De Vuyst (pascal-devuyst) wrote :

gnome-cups-manager looks for PPDs in /usr/share/cups/model.
Both the foomatic-filters-ppds and hplip package (installed by default on
ubuntu) provide a symlink in this directory.
foomatic-ppds symlink points to /usr/share/ppd and hplip symlink points to
/usr/share/ppd/hplip.
These symlinks overlap causing duplicate driver entries.

A simple workaround is to remove the hplip symlink in /usr/share/cups/model.

Revision history for this message
Mantas Kriaučiūnas (mantas) wrote : repeated printer drivers on HPLIP - good solution for this would be patching gnome-cups-manager to use foomatic-db

repeated printer drivers on HPLIP - good solution for this would be patching gnome-cups-manager to use *original* linux printer drivers database - foomatic-db instead of PPD files, generated from foomatic-db. Some printer configuration utilities, like Foomatic-GUI, already uses foomatic-db.

Revision history for this message
Daniel Holbach (dholbach) wrote :

Martin, do you think any of those solutions are feasible?

Revision history for this message
Martin Pool (mbp) wrote :

Also, if you run gnome-cups-manager from a terminal, you see many messages complaining about this:

** (gnome-cups-manager:19854): WARNING **: Two ppds have driver == 'hpijs (recom mended)'
        ->hplip/HP-PSC_2210-hpijs.ppd (HP PSC 2210 Foomatic/hpijs[1]) and
        ->foomatic-ppds/hplip/HP-PSC_2210-hpijs.ppd (HP PSC 2210 Foomatic/hpijs) [1]

** (gnome-cups-manager:19854): WARNING **: Two ppds have driver == 'hpijs (recom mended)'
        ->hplip/HP-PSC_2300-hpijs.ppd (HP PSC 2300 Foomatic/hpijs[1]) and
        ->foomatic-ppds/hplip/HP-PSC_2300-hpijs.ppd (HP PSC 2300 Foomatic/hpijs) [1]

** (gnome-cups-manager:19854): WARNING **: Two ppds have driver == 'hpijs (recom mended)'
        ->hplip/HP-PSC_2350-hpijs.ppd (HP PSC 2350 Foomatic/hpijs[1]) and
        ->foomatic-ppds/hplip/HP-PSC_2350-hpijs.ppd (HP PSC 2350 Foomatic/hpijs) [1]

Revision history for this message
Martin Pool (mbp) wrote :

What's even worse is that some printers, such as the photosmart 7660, show up under "HP (HPLIP)" but *not* under "HP". This is extremely confusing if you happen to have the Manufacturer field already set to "HP" and therefore don't search there for other alternatives.

This is with hplip 0.9.6-1ubuntu4 and foomatic-filters-ppds 20060113-1

Revision history for this message
Martin Pitt (pitti) wrote :

Sorry guys, I don't have an hplip printer and can't test this at all. If merely removing the symlink from the hplip package works as expected, then we can do this easily, of course.

Revision history for this message
Martin Pool (mbp) wrote : Re: [Bug 24999] repeated printer drivers on HPLIP

On 27 Feb 2006, Martin Pitt <email address hidden> wrote:

Hi Martin,

> Sorry guys, I don't have an hplip printer and can't test this at all. If
> merely removing the symlink from the hplip package works as expected,
> then we can do this easily, of course.

I can investigate more when I get home. But you don't need an hp
printer to see that there are nearly-duplicate files between the two
packages, which is the root of the problem.

I don't know if there are any substantive differences, or if people
would ever want to use one version rather than the other. (If they do,
then there's still a bug because it's not easy for them to work out
which one they do want.) I'd like to suggest we either

 1- remove the ppds from one package or the other

 2- put the colliding drivers into conflicting packages (if some users
    will want one and some other other)

 3- change the names so that they say for example "hp 7660 (cups)"
    and "hp 7660 (foomatic)"

--
Martin

Changed in hplip-ppds:
status: Unconfirmed → Confirmed
Changed in foomatic-filters-ppds:
status: Unconfirmed → Confirmed
Revision history for this message
Rocco Stanzione (trappist) wrote :

I'd prefer to see the ppds consolidated into a single package. Having recently installed an HP driver that required hplip drivers, it's not a very straightforward process to figure out which package I need, and the CUPS web interface also suffers from the problem of separate HP/HP (HPLIP) "makes", which confuses administration as well. I recall a similar issue in Windows where the add printer dialog had both HP and Hewlett Packard listed as manufacturers.

Revision history for this message
Pascal De Vuyst (pascal-devuyst) wrote :

gnome-cups-manager should indeed move to foomatic-db as suggested by Mantas to avoid duplication. But this should be handled by GNOME upstream and is not a Ubuntu issue.

Revision history for this message
Pascal De Vuyst (pascal-devuyst) wrote :

Martin Pool wrote:
> What's even worse is that some printers, such as the photosmart 7660, show up under "HP (HPLIP)" but *not* under "HP". This is extremely confusing if you happen to have the Manufacturer field already set to "HP" and therefore don't search there for other alternatives.

This is a seperate bug. You can use the same simple fix as https://launchpad.net/distros/ubuntu/+source/hplip-ppds/+bug/34987 to solve this.

Revision history for this message
Pascal De Vuyst (pascal-devuyst) wrote :

Martin Pool wrote:
> I'd like to suggest we either:
> 1- remove the ppds from one package or the other
> 2- put the colliding drivers into conflicting packages (if some users will want one and some other other).
> 3- change the names so that they say for example "hp 7660 (cups)" and "hp 7660 (foomatic)"

In Dapper there are no duplicate drivers between foomatic-filters-ppds and hplip-ppds anymore
They were removed in Debian, see this bug report:
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=347668
This makes your suggestions 2 and 3 unnecessary.

As mentioned before the only problem is that both packages: foomatic-filters-ppds and hplip-ppds provide a symlink in /usr/share/cups/model.
foomatic-ppds symlink points to /usr/share/ppd and hplip-ppds symlink points to /usr/share/ppd/hplip.
These symlinks overlap each other causing gnome-cups-manager to think there are duplicate driver entries while they are exactly the same files.

That's why there are a lot WARNINGs when you look at the terminal after running gnome-cups-add.

** (gnome-cups-add:6657): WARNING **: Two ppds have driver == 'hpijs (recommended)'
 ->hplip/HP-Business_Inkjet_1100-hpijs.ppd (HP Business Inkjet 1100 Foomatic/hpijs[1]) and
 ->foomatic-ppds/hplip/HP-Business_Inkjet_1100-hpijs.ppd (HP Business Inkjet 1100 Foomatic/hpijs)[1]

You can check in this example that /usr/share/cups/model/hplip/HP-Business_Inkjet_1100-hpijs.ppd and /usr/share/cups/model/foomatic-ppds/hplip/HP-Business_Inkjet_1100-hpijs.ppd are the same file (using dapper).

Revision history for this message
Pascal De Vuyst (pascal-devuyst) wrote :

Rocco Stanzione wrote:
> I'd prefer to see the ppds consolidated into a single package. Having recently installed an HP driver that required hplip drivers, it's not a very straightforward process to figure out which package I need.

I don't see any reason for this since both packages foomatic-filters-ppds and hplip-ppds are installed by default in Ubuntu. You don't need to figure it out.
These are separate packages because they come from different upstream projects and are maintained by different Debian maintainers.

Rocco Stanzione wrote:
> The CUPS web interface also suffers from the problem of separate HP/HP (HPLIP) "makes", which confuses administration as well. I recall a similar issue in Windows where the add printer dialog had both HP and Hewlett Packard listed as manufacturers.

As mentioned to Martin Pool this is a seperate bug. You can use the same simple fix as https://launchpad.net/distros/ubuntu/+source/hplip-ppds/+bug/34987 to solve this.

Revision history for this message
Pascal De Vuyst (pascal-devuyst) wrote :

I'm using Dapper 20060319
foomatic-filters-ppds 20060113-1
hplip-ppds 0.9.6-1ubuntu6

This is because gnome-cups-manager and CUPS Add Printer webinterface look for PPDs in /usr/share/cups/model.
Both the foomatic-filters-ppds and hplip package (installed by default on Ubuntu) provide a symlink in this directory.
foomatic-ppds symlink points to /usr/share/ppd and hplip symlink points to /usr/share/ppd/hplip.
These symlinks overlap each other causing gnome-cups-add and CUPS add printer webinterface to list duplicate driver entries that are actually the same files.

A long term solution to avoid this would be achieved if all PPD providing packages followed this specification: http://wiki.debian.org/PpdFileStructureSpecification.
I'm trying to persuade the Debain maintainers involved but this will take a long time.

A simple workaround is to remove the hplip symlink in /usr/share/cups/model provide by hplip-ppds package. The Ubuntu devs should include this simple fix before the release of Dapper.

The printer drivers known to CUPS can be listed with the following command in a terminal:
$ lpinfo -m

I have run this command first (see cupsdriversbefore attachment) and again after removing the /usr/share/cups/model/hplip symlink (see cupdriversafter attachment).

When counting the lines in these files we see that 443 duplicate drivers have been removed:

$ wc -l cupsdriversbefore
3749 cupsdriversbefore

$ wc -l cupsdriversafter
3306 cupsdriversafter

Revision history for this message
Pascal De Vuyst (pascal-devuyst) wrote : Printer drivers known to CUPS in Dapper 20060309

Using Dapper 20060319
hplip-ppds 0.9.6-1ubuntu6

Revision history for this message
Pascal De Vuyst (pascal-devuyst) wrote : Printer drivers known to CUPS after removing hplip symlink

Using Dapper 20060319
hplip-ppds 0.9.6-1ubuntu6

Martin Pitt (pitti)
Changed in foomatic-filters-ppds:
assignee: debzilla → pitti
Changed in hplip-ppds:
assignee: nobody → pitti
Matthias Klose (doko)
Changed in hplip-ppds:
assignee: pitti → doko
Changed in foomatic-filters-ppds:
assignee: pitti → doko
Revision history for this message
Matthias Klose (doko) wrote :

fixed in foomatic-filters-ppds 20060406-0ubuntu1 and hplip-ppds 0.9.6-1ubuntu8

Changed in hplip-ppds:
status: Confirmed → Fix Released
Changed in foomatic-filters-ppds:
status: Confirmed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.