some hplip components failing after python migration changes in Debian Squeeze

Asked by Gilbert Sullivan

Two clean installations of daily build of Debian Squeeze are unable to run hp-setup.

I am using an Officejet 6310 connected to router on home network. All systems are Debian Squeeze. Two of them were installed a few months ago. At that time I was able to run "hp-setup -i xxx.xxx.xxx.xxx" to set up the MFP so that its scanner could be used by those systems. When I tried the same setup procedure on the two new systems I got the following output from hp-setup:

Traceback (most recent call last):
  File "/usr/bin/hp-setup", line 45, in <module>
    from base import device, utils, tui, models, module
  File "/usr/share/hplip/base/device.py", line 37, in <module>
    import status
  File "/usr/share/hplip/base/status.py", line 40, in <module>
    import hpmudext
ImportError: No module named hpmudext

When I checked the older systems, they also failed to run hp-setup interactively with the same error. Their access to the scanner was no affected -- until I fiddled around with them by removing cups and hplip and then re-installing them. Now all four systems are similar in that they can use the printing functions of the OfficeJet 6310 just fine, but there's no way that I can find to make the scanner work.

I ran hp-check -r and got about 23 errors and the suggestion in the summary to install python-qt4-dbus and python-reportlab. Their descriptions in the package manager didn't fill me with hope that installing them would be fruitful, but I did it anyway. The only improvement in hp-check after installing the packages is that hp-check isn't asking for them any more. But cupsext, pcardext, hpmudext, and scanext are not being found and are not loading.

I performed the following checks after reading a FAQ (http://hplipopensource.com/node/323) I found from a link in a Question posted at the hplip launchpad site.

python -V
Python 2.6.5+

I used locate to find the four modules that hp-check says aren't loading (cupsext, pcardext, hpmudext, and scanext) with the following results:
/usr/lib/python2.5/site-packages/cupsext.la
/usr/lib/python2.5/site-packages/cupsext.so
/usr/lib/python2.5/site-packages/pcardext.la
/usr/lib/python2.5/site-packages/pcardext.so
/usr/lib/python2.5/site-packages/hpmudext.la
/usr/lib/python2.5/site-packages/hpmudext.so
/usr/lib/python2.5/site-packages/scanext.la
/usr/lib/python2.5/site-packages/scanext.so

ls -l /usr/lib/ | grep python
lrwxrwxrwx 1 root root 32 Jun 18 06:12 libpyglib-2.0-python2.5.so.0 -> libpyglib-2.0-python2.5.so.0.0.0
-rw-r--r-- 1 root root 12332 Jun 7 14:43 libpyglib-2.0-python2.5.so.0.0.0
lrwxrwxrwx 1 root root 32 Jun 18 06:12 libpyglib-2.0-python2.6.so.0 -> libpyglib-2.0-python2.6.so.0.0.0
-rw-r--r-- 1 root root 12096 Jun 7 14:43 libpyglib-2.0-python2.6.so.0.0.0
lrwxrwxrwx 1 root root 19 Apr 27 06:24 libpython2.5.so.1 -> libpython2.5.so.1.0
-rw-r--r-- 1 root root 1232788 Apr 21 06:26 libpython2.5.so.1.0
lrwxrwxrwx 1 root root 19 Jul 3 06:59 libpython2.6.so.1 -> libpython2.6.so.1.0
-rw-r--r-- 1 root root 2394804 Jun 30 21:26 libpython2.6.so.1.0
drwxr-xr-x 3 root root 4096 Feb 5 14:51 python2.4
drwxr-xr-x 21 root root 20480 Apr 27 07:15 python2.5
drwxr-xr-x 23 root root 20480 Jul 3 15:05 python2.6
drwxr-xr-x 3 root root 4096 Mar 10 06:20 python3.1

I could see that the system is using Python 2.6.5 and that the missing modules are located at /usr/lib/python2.5/site-packages. I started to copy the modules to /usr/lib/python2.6/site-packages, but the site-packages subdirectory doesn't exist.

I'm guessing that this is an issue with Debian Squeeze / Testing and the ongoing Python version migration. Right now I'm not sure whether to try to fix the systems in their current state or wait for developments in the Python migration.

I also wasn't sure whether I should ask about this on the hplip launchpad site or on the Debian user list. (So I'm doing both.)

Question information

Language:
English Edit question
Status:
Solved
For:
HPLIP Edit question
Assignee:
No assignee Edit question
Solved by:
Mark Purcell
Solved:
Last query:
Last reply:
Revision history for this message
Best Mark Purcell (msp) said :
#1

You are correct this is related to the python2.6 migration in Debian.

Debian package hplip (3.5.10-4) should be the version used with python2.6.

Earlier versions of the Debian hplip packages only work with python2.5.

Mark

Revision history for this message
Mark Purcell (msp) said :
#2
Revision history for this message
Gilbert Sullivan (whirlygig) said :
#3

Oops. I testing repository (which is what I'm already using) when I
meant Sid. Duh.

Revision history for this message
Gilbert Sullivan (whirlygig) said :
#4

Thank you very much for confirmation, and for the pertinent Debian bug report.

However it looks as though at least some issues with hplip-gui / hp-systray reported in http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=587737 have still not been resolved by 3.10.5-4.

I'm mulling over the relative merits of using Sid repositories (I've never run a mixed system before.) and getting the package (3.10.5-4 or whatever it is) or just using symlinks as suggested in the OP of http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=587981. I tried created the symlinks as per the Debian bug report, and all seems well so far.

If it's a better idea to do the hplip package upgrade (either by adding the Sid repositories or by waiting for the upgrade to come to Squeeze) I'd appreciate your comments.

Revision history for this message
Gilbert Sullivan (whirlygig) said :
#5

Thanks Mark Purcell, that solved my question.

Revision history for this message
Gilbert Sullivan (whirlygig) said :
#6

Yup. I just got hplip 3.10.5-4 from the Debian repositories, and everything is working nicely.

At the link you (Mark Purcell) provided I learned a little bit more about my systems.

Many thanks!

Revision history for this message
Naga Samrat Chowdary, Narla (samrat-hplip) said :
#7

It looks like when hplip .deb package created, system has python 2.5 as default.
HPLIP .configure script finds python2.5 at configure time and uses it.

Once new version of python 2.6 is pushed in to repository, still hplip is pointing to python 2.5.
because hplip .deb package is not created with python 2.6.

I guess this is nothing to do with HPLIP.
If we configure from hplip-3.x.x.tar.gz or hpip-3.x.x.run file, HPLIP configure script detects default python and uses that.

Thanks for all in participating,
Naga Samrat Chowdary, Narla