Skip to main content
Topic solved
This topic has been marked as solved and requires no further attention.
Topic: [SOLVED] Artix' hplip broken ("No module named 'cupsext'"), Arch' same ver works (Read 2530 times) previous topic - next topic
0 Members and 2 Guests are viewing this topic.

[SOLVED] Artix' hplip broken ("No module named 'cupsext'"), Arch' same ver works

Hey,

having installed cups, hplip and related packages from Artix' "world" repository makes hplip's hp-toolbox fail:

Code: [Select]
pacman -S world/cups world/cups-filters world/libcups world/python-pycups world/hplip
[...]
Package (5)          Old Version  New Version  Net Change

world/cups           1:2.4.0-4    1:2.4.0-4      0.00 MiB
world/cups-filters   1.28.10-2    1.28.10-2      0.00 MiB
world/hplip          1:3.21.10-2  1:3.21.10-2    0.00 MiB
world/libcups        1:2.4.0-4    1:2.4.0-4      0.00 MiB
world/python-pycups  2.0.1-5      2.0.1-5        0.00 MiB
[...]

then running hp-toolbox yields:

Code: [Select]
Traceback (most recent call last):
  File "/usr/bin/hp-toolbox", line 41, in <module>
    from base import status, tui, module
  File "/usr/share/hplip/base/status.py", line 33, in <module>
    import cupsext
ModuleNotFoundError: No module named 'cupsext'

Having it installed from the Arch's "extra" repository:

Code: [Select]
pacman -S extra/cups extra/cups-filters extra/libcups extra/python-pycups extra/hplip
[...]
Package (5)          Old Version  New Version  Net Change

extra/cups           1:2.4.0-4    1:2.4.0-4     -0.01 MiB
extra/cups-filters   1.28.10-2    1.28.10-2     -0.01 MiB
extra/hplip          1:3.21.10-2  1:3.21.10-2    0.01 MiB
extra/libcups        1:2.4.0-4    1:2.4.0-4      0.00 MiB
extra/python-pycups  2.0.1-5      2.0.1-5        0.00 MiB
[...]

makes hp-toolbox work at first. Since both are the same version, I assume some packaging issue with the Arch package.

When I then in hp-toolbox click "Clean Printheads" it crashes immediately with

Code: [Select]
Traceback (most recent call last):
  File "/usr/share/hplip/ui5/devmgr5.py", line 1272, in ActionsList_clicked
    if item.cmd and isinstance(item.cmd, collections.Callable):
AttributeError: module 'collections' has no attribute 'Callable'
Aborted

I don't know if that is an hplip issue or just because I have Arch packages on Artix.

Re: Artix' hplip broken ("No module named 'cupsext'"), Arch' same vers. works better

Reply #1
hplip in artix repo is not compiled with latest python, this is why you are getting errors
Create problems which don't have solution

Re: Artix' hplip broken ("No module named 'cupsext'"), Arch' same vers. works better

Reply #2
Thanks for the report. I have just created hplip-1:3.21.10-3 in gremlins, please install it when the changes are next propagated to mirrors and confirm if it works.

Edit: Scratch that, hplip-1:3.21.10-2.1 from world should work.

Re: Artix' hplip broken ("No module named 'cupsext'"), Arch' same vers. works better

Reply #3
Was able to reproduce the bug.
The rebuild fixed it

Re: Artix' hplip broken ("No module named 'cupsext'"), Arch' same vers. works better

Reply #4
> please install it when the changes are next propagated to mirrors and confirm if it works.

Yes, the Artix specific problem is resolved.

The other problem described in the original post of a crash when I press "Clean Printheads" still is there, and if it is run under gdb it crashes immediately:

Code: [Select]
gdb python
[...]
(gdb) run /usr/bin/hp-toolbox
Starting program: /usr/bin/python /usr/bin/hp-toolbox
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/usr/lib/libthread_db.so.1".

HP Linux Imaging and Printing System (ver. 3.21.10)
HP Device Manager ver. 15.0

Copyright (c) 2001-18 HP Development Company, LP
This software comes with ABSOLUTELY NO WARRANTY.
This is free software, and you are welcome to distribute it
under certain conditions. See COPYING file for more details.

/usr/share/hplip/ui5/devmgr_ext.py:15: SyntaxWarning: "is not" with a literal. Did you mean "!="?
  if self.latest_available_version is not "":
/usr/share/hplip/ui5/devmgr_ext.py:37: SyntaxWarning: "is not" with a literal. Did you mean "!="?
  if self.latest_available_version is not "":
[New Thread 0x7fffef485640 (LWP 19490)]
[New Thread 0x7fffd9124640 (LWP 19530)]
[Detaching after vfork from child process 19531]
[Thread 0x7fffd9124640 (LWP 19530) exited]
[Thread 0x7fffef485640 (LWP 19490) exited]

Program terminated with signal SIGTRAP, Trace/breakpoint trap.
The program no longer exists.
(gdb) bt
No stack.
(gdb)

Any idea what could be wrong here?

Re: Artix' hplip broken ("No module named 'cupsext'"), Arch' same vers. works better

Reply #5
I think you should report this upstream.

Web search gave a result about the warnings from your last post:
https://bugs.launchpad.net/ubuntu/+source/hplip/+bug/1870019
this should have been fixed by patches from Debian/Ubuntu which were since supposedly sent upstream.

The closest I could find for the error from your first post is this:
https://github.com/pyreadline/pyreadline/issues/73
https://bugs.python.org/issue45870
apparently it is related to an error in pyreadline on Windows?

Re: Artix' hplip broken ("No module named 'cupsext'"), Arch' same vers. works better

Reply #6
Me too.

I'd got a bit behind with my system updates so was on hplip-1:3.21.10-1 and hadn't got the slew of python updates yet.

hp-toolbox worked and 'Clean printheads' worked (not that I'd ever used it before the test)

I did a full system upgrade and first of all to get hp-toolbox running I had to add myself to the 'cups' group. I wasn't before.

I'm guessing the permissions of this file changed somehow
Code: [Select]
/etc/cups/ppd/
-rw-r----- 1 root cups 31211 Dec 13 23:48 DeskJet_3630.ppd

Then it complained about an already running hp-systray. Killed that (I hadn't started it, not in autostart)

Then the same error as above when I click 'View Printer and Device Information' in the hp-toolbox gui.
Code: [Select]
|Traceback (most recent call last):
  File "/usr/share/hplip/ui5/devmgr5.py", line 1272, in ActionsList_clicked
    if item.cmd and isinstance(item.cmd, collections.Callable):
AttributeError: module 'collections' has no attribute 'Callable'
fish: Job 1, 'hp-toolbox' terminated by signal SIGABRT (Abort)
I can still print and scan.
I can access the printers inbuilt web page to clean the printheads as a workaround but that's little help if your HP printer doesn't have the inbuilt web server.


 

Re: Artix' hplip broken ("No module named 'cupsext'"), Arch' same vers. works better

Reply #7
The other problem described in the original post of a crash when I press "Clean Printheads" still is there, and if it is run under gdb it crashes immediately:

This has been resolved as well with the new hlip version 1:3.21.12-1.