system-config-printer and hal_lpadmin recommend different driver

Bug #306301 reported by Pascal De Vuyst
10
Affects Status Importance Assigned to Milestone
hal-cups-utils (Ubuntu)
Invalid
Undecided
Unassigned
system-config-printer (Ubuntu)
Fix Released
Undecided
Unassigned

Bug Description

I'm using Ubuntu 8.04.1 LTS.

A different printer driver is recommended when manually setting up a printer queue for my HP LaserJet 1200 printer with system-config-printer (see screenshot in attachment) compared to plug and print configuration with hal_lpadmin.
s-c-p recommends the hpijs driver while hal_lpadmin automatically sets up the printer queue with the pxlmono driver (first recommended driver known to CUPS).
Both s-c-p and hal_lpadmin should recommend the same driver!
Furthermore there are 2 recommended drivers for this printer known to CUPS as shown in the output of the command below, while there should be only one recommended driver:

$ lpinfo -m | grep -i 'laserjet 1200'
gutenprint.5.0://hp-lj_1200/expert/C HP LaserJet 1200 - CUPS+Gutenprint v5.0.2
gutenprint.5.0://hp-lj_1200/simple/C HP LaserJet 1200 - CUPS+Gutenprint v5.0.2 Simplified
drv:///hpijs.drv/hp-laserjet_1200-hpijs.ppd HP LaserJet 1200 Foomatic/hpijs
foomatic:HP-LaserJet_1200-lj4dith.ppd HP LaserJet 1200 Foomatic/lj4dith
foomatic:HP-LaserJet_1200-lj5gray.ppd HP LaserJet 1200 Foomatic/lj5gray
foomatic:HP-LaserJet_1200-ljet4.ppd HP LaserJet 1200 Foomatic/ljet4
foomatic:HP-LaserJet_1200-pxlmono.ppd HP LaserJet 1200 Foomatic/pxlmono (recommended)
lsb/usr/openprinting/HP/HP_LaserJet_1200.ppd.gz HP LaserJet 1200 Postscript (recommended)

Revision history for this message
Pascal De Vuyst (pascal-devuyst) wrote :
Revision history for this message
Till Kamppeter (till-kamppeter) wrote :

hal-cups-utils did not read the device IDs of the printers correctly. I have fixed this now.

Please replace your file

/usr/lib/hal/scripts/hal_lpadmin

by the attached file and make it executable with

sudo chmod 755 /usr/lib/hal/scripts/hal_lpadmin

Then unplug and replug your printer. Does it get re-enabled now?

Changed in system-config-printer:
status: New → Invalid
Changed in hal-cups-utils:
status: New → Triaged
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package hal-cups-utils - 0.6.19+git20090217-0ubuntu3

---------------
hal-cups-utils (0.6.19+git20090217-0ubuntu3) jaunty; urgency=low

  * debian/patches/15_hal-lpadmin-fix-device-id-reading-find-configured-queues-by-same-method-for-plug-and-unplug.patch:
    Fixed reading of the printer device ID (LP: #306301) and let hal_lpadmin
    use the same method for finding already configured CUPS queues on plugging
    and unplugging the printer (LP: #341646, LP: #139317).

 -- Till Kamppeter <email address hidden> Sat, 14 Mar 2009 00:00:32 +0100

Changed in hal-cups-utils:
status: Triaged → Fix Released
Revision history for this message
Fred (frederic-lespez) wrote :

I'm the reporter of bug #298701 which has been marked as a duplicate of this one.
In Jaunty with all the available updates (and in particular with hal-cups-utils 0.6.19+git20090217-0ubuntu3 installed), the auto-configured driver for my HP Deskjet 895Cxi is HP DeskJet 895C Foomatic/pcl3.
This is not correct : The good driver for this printer is the HPIJS one.
If you need more information, do not hesitate to ask.

Revision history for this message
Till Kamppeter (till-kamppeter) wrote :

Anyone who gets different default driver selections by Plug'n'Print and by system-config-printer, please do the following:

1. Remove all print queues for your printer, then unplug and plug your printer again. As soon as the printer with the magnifier in the system tray disappears (and a notification bubble about a new printer appears) attach your /var/log/syslog file to this bug report. Do not compress the file.

2. Start system-config-printer by entering "system-config-printer" in a terminal window. Click the "New" button, select your printer from the auto-detected local printers and click "Forward". If you are not on the last screen of the wizard now (entering of queue name, "Apply" button), click "Forward" until you reach that screen. Click "Cancel" and copy-and-paste all text which was written into your terminal window after the "system-config-printer" call into this bug report.

3. Configure your print queue again to use the driver which you use for your daily printing (with system-config-printer).

Changed in hal-cups-utils:
status: Fix Released → Incomplete
Revision history for this message
Fred (frederic-lespez) wrote :

My printer : HP Deskjet 895Cxi.
Here is the information you asked:
1/ syslog output attached
Driver selected: DeskJet 895C Foomatic/pcl3

2/ output of "system-config-printer --debug" (without --debug there is no output):
$ system-config-printer --debug
Connected as user fred
refresh
Created subscription 18
<monitor.Monitor instance at 0x21b0e18>: printers and jobs lists provided
update_jobs
Authentication pass: 1
Authentication: password callback set
Authentication pass: 1
Authentication: password callback set
Authentication pass: 1
Authentication: password callback set
get_notifications
update_jobs
fetchDevices
Fetching devices
Authentication pass: 1
Authentication: password callback set
Got devices
queryPPDs
Lock acquired for PPDs thread
Connecting (PPDs)
Fetching PPDs
PPDs thread started
hp:/usb/DeskJet_895C?serial=ES9771C0R0FB: LC_ALL=C DISPLAY= hp-info -d"${URI}"
Closing connection (PPDs)
Releasing PPDs lock
fetchPPDs
queryPPDs
Lock acquired for PPDs thread
PPDs thread started
Connecting (PPDs)
Fetching PPDs
Closing connection (PPDs)
Releasing PPDs lock
Got PPDs
Will fetch ppd? 1
ppd: u'gutenprint.5.2://pcl-895/expert'
Authentication pass: 1
Authentication: password callback set
Examining installable options
Canceled subscription 18
<monitor.Monitor instance at 0x21b0e18> exited
Driver selected: HP DeskJet 895C - CUPS+Gutenprint v5.2.3

3/ For my daily usage, I use the following driver : HP Deskjet 895c hpijs, hpijs 3.9.2

If you need anything else, do not hesitate to ask.
Thanks for your help.

Revision history for this message
Till Kamppeter (till-kamppeter) wrote :

Can you update system-config-printer to the current state of Jaunty and try again? HPLIP 3.9.2 introduced several problems with model names which are worked around in the newest system-config-printer.

Revision history for this message
Fred (frederic-lespez) wrote :

Hi Till,

Thanks for all your work.

Here is the result with all available updates:
1/ syslog output attached
Driver selected: DeskJet 895C Foomatic/pcl3
No improvement.

2/ output of "system-config-printer --debug" (without --debug there is no output):
$ system-config-printer --debug
Connected as user fred
refresh
Created subscription 29
<monitor.Monitor instance at 0x187e7a0>: printers and jobs lists provided
update_jobs
Authentication pass: 1
Authentication: password callback set
Authentication pass: 1
Authentication: password callback set
Authentication pass: 1
Authentication: password callback set
get_notifications
update_jobs
fetchDevices
Fetching devices
Authentication pass: 1
Authentication: password callback set
Got devices
queryPPDs
Lock acquired for PPDs thread
Connecting (PPDs)
Fetching PPDs
PPDs thread started
hp:/usb/DeskJet_895C?serial=ES9771C0R0FB: LC_ALL=C DISPLAY= hp-info -d"${URI}"
Closing connection (PPDs)
Releasing PPDs lock
fetchPPDs
queryPPDs
Lock acquired for PPDs thread
PPDs thread started
Connecting (PPDs)
Fetching PPDs
Closing connection (PPDs)
Releasing PPDs lock
Got PPDs
Will fetch ppd? 1
ppd: u'drv:///hpijs.drv/hp-910-hpijs.ppd'
Authentication pass: 1
Authentication: password callback set
Examining installable options
Canceled subscription 29
<monitor.Monitor instance at 0x187e7a0> exited
Driver selected: HP 910 hpijs, hpijs 3.9.2
Good driver but bad printer model.

3/ Good driver and model is still: HP Deskjet 895c hpijs, hpijs 3.9.2

Revision history for this message
Till Kamppeter (till-kamppeter) wrote :

Fixed upstream in system-config-printer 1.1.x, commit f28fe3e. Affects binary package python-cupshelpers.

Changed in system-config-printer (Ubuntu):
status: Invalid → In Progress
Changed in hal-cups-utils (Ubuntu):
status: Incomplete → Invalid
Revision history for this message
Till Kamppeter (till-kamppeter) wrote :

Pascal, Fred, please replace the file

/usr/share/python-support/python-cupshelpers/cupshelpers/ppds.py

on your system by the attached file and try again. Now you should get the same default driver choice.

Revision history for this message
Fred (frederic-lespez) wrote :

Till,

It is fixed indeed !
Driver selections by Plug'n'Print and by system-config-printer now gives the correct driver and printer model !
Thanks a lot !

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package system-config-printer - 1.1.3+git20090218-0ubuntu14

---------------
system-config-printer (1.1.3+git20090218-0ubuntu14) jaunty; urgency=low

  * debian/patches/50_work-around-broken-device-ids-in-hplip-ppds-match-model-case-insensitive.patch:
    The device IDs in the PPDs of HPLIP 3.9.2 are completely broken and it
    happens also that some printers report an all-uppercase device ID. Made
    system-config-printer find the correct PPD/driver also in these cases.
    Upstream fix (LP: #298701, LP: #306301).

  * debian/patches/53_plugin-autoinstall-with-hplip-3.9.2.patch: Upstream
    fix to update check whether proprietary HPLIP plugin is already installed
    so that it also works with HPLIP 3.9.2 (LP: #347839, LP: #289410).

 -- Till Kamppeter <email address hidden> Wed, 25 Mar 2009 23:59:59 +0100

Changed in system-config-printer:
status: In Progress → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

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