session-installer crashed with ModifyInternalError in _install_printer_drivers() when triggered by system-config-printer

Bug #633913 reported by Till Kamppeter
18
This bug affects 3 people
Affects Status Importance Assigned to Milestone
sessioninstaller (Ubuntu)
Fix Released
High
Unassigned

Bug Description

Binary package hint: sessioninstaller

After having applied the patch of bug 612140, I have run the following command line:

system-config-printer --setup-printer='file:/tmp/printout' --devid='MFG:Epson;MDL:EP-702A;'

This also simulates that system-config-printer has detected a printer not supported by Maverick but supported by a manufacturer-supplied package on OpenPrinting. After some seconds of searching for locally installed printer drivers a message pos up, telling that

----------
Installing printer drivers on request isn't supported

Currently autodetection and installation of missing printer drivers is not supported.
----------

The pop-up has a "Close" button and when clicking it, session-installer crashes, and s-c-p continues the driver search using Jockey. Driver download (via Jockey) and printer setup works then.

So 2 things need to be fixed:

1. session-installer should simply exit and not crash, to avoid an ugly Apport pop-up.

2. session-installer should close silently when it gets the unsupported printer driver download request, as end users do not know about available printer driver package sources and which sources their printer setup tool use. If a source cannot deliver a driver, this source should exit slilently and non-interactively so that the printer setup tool can continue with the next source here.

Some important extra info: Red Hat has introduced a method to simplify the selection and installation of printer driver packages. For that they have added tags (like virtual packages or Provides:), based on the supported printer's device IDs, one patch for each printer. This they have implemented in a patch to RPM (AFAIK upstream RPM does not yet contain this feature). s-c-p sends a request to PackageKit with the device ID of the printer and package kit is supposed to request the installation of a package named by the tag based on this device ID. On Fedora or Red Hat then the desired printer driver gets installed. This idea is not implemented at all for Debian packages.

ProblemType: Crash
DistroRelease: Ubuntu 10.10
Package: sessioninstaller 0.20-1 [modified: usr/share/pyshared/sessioninstaller/core.py]
ProcVersionSignature: Ubuntu 2.6.35-15.21-generic 2.6.35.1
Uname: Linux 2.6.35-15-generic x86_64
NonfreeKernelModules: btrfs zlib_deflate crc32c libcrc32c ufs qnx4 hfsplus hfs minix ntfs vfat msdos fat jfs xfs exportfs reiserfs hidp hid binfmt_misc rfcomm parport_pc ppdev sco bnep l2cap sha256_generic cryptd aes_x86_64 aes_generic dm_crypt usblp snd_hda_codec_conexant arc4 snd_hda_intel snd_hda_codec iwlagn snd_hwdep btusb uvcvideo thinkpad_acpi snd_pcm snd_seq_midi pcmcia snd_rawmidi iwlcore mac80211 zaurus joydev lp parport snd_seq_midi_event snd_page_alloc cdc_acm cdc_ether cdc_wdm bluetooth videodev usbnet i2400m_usb snd_seq snd_timer tpm_tis i2400m cfg80211 v4l1_compat yenta_socket pcmcia_rsrc pcmcia_core mii tpm tpm_bios snd_seq_device wimax v4l2_compat_ioctl32 snd psmouse soundcore serio_raw led_class nvram usb_storage i915 drm_kms_helper drm firewire_ohci ahci firewire_core crc_itu_t libahci i2c_algo_bit e1000e video intel_agp output
Architecture: amd64
Date: Thu Sep 9 10:00:39 2010
EcryptfsInUse: Yes
ExecutablePath: /usr/bin/session-installer
InterpreterPath: /usr/bin/python2.6
PackageArchitecture: all
ProcCmdline: /usr/bin/python /usr/bin/session-installer
ProcEnviron:
 SHELL=/bin/bash
 PATH=(custom, user)
 LANG=en_US.utf8
PythonArgs: ['/usr/bin/session-installer']
SourcePackage: sessioninstaller
Title: session-installer crashed with ModifyInternalError in _install_printer_drivers()
UserGroups: adm admin cdrom dialout lpadmin plugdev sambashare

Revision history for this message
Till Kamppeter (till-kamppeter) wrote :
visibility: private → public
Changed in sessioninstaller (Ubuntu):
importance: Undecided → High
milestone: none → ubuntu-10.10
summary: session-installer crashed with ModifyInternalError in
- _install_printer_drivers()
+ _install_printer_drivers() when triggered by system-config-printer
tags: removed: need-duplicate-check
Michael Vogt (mvo)
Changed in sessioninstaller (Ubuntu):
status: New → In Progress
Revision history for this message
Till Kamppeter (till-kamppeter) wrote :

Closing manually as LP's auto-closing is broken.

I have reviewed and tested the new release (0.20+bzr112-0ubuntu1) and it fixes the reported problem. Michael, thank you for the quick fix.

Changed in sessioninstaller (Ubuntu):
status: In Progress → 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.