HPLIP no longer installs on KDE Neon 5.19 due to python3-pyqt4 no longer being available

Asked by Paul Hands on 2020-10-09

I upgraded to the latest version of KDE Neon recently, and now installing HPLIP fails due to python3-pyqt4 being unavailable. Trying to install it revels that it is no longer available - perhaps deprecated.

I ran hp-check, and the output agrees....

------------------------
| General Dependencies |
------------------------

 libjpeg libjpeg - JPEG library REQUIRED - - OK -
 cups-devel CUPS devel- Common Unix Printing System development files REQUIRED - - OK -
 cups-image CUPS image - CUPS image development files REQUIRED - - OK -
 libpthread libpthread - POSIX threads library REQUIRED - b'2.31' OK -
 libusb libusb - USB library REQUIRED - 1.0 OK -
 sane SANE - Scanning library REQUIRED - - OK -
 sane-devel SANE - Scanning library development files REQUIRED - - OK -
 libnetsnmp-devel libnetsnmp-devel - SNMP networking library development files REQUIRED 5.0.9 5.8 OK -
 libcrypto libcrypto - OpenSSL cryptographic library REQUIRED - 1.1.1 OK -
 python3X Python 2.2 or greater - Python programming language REQUIRED 2.2 3.8.5 OK -
 python3-notify2 Python libnotify - Python bindings for the libnotify Desktop notifications OPTIONAL - - OK -
 error: python3-pyqt4-dbus PyQt 4 DBus - DBus Support for PyQt4 OPTIONAL 4.0 - MISSING 'python3-pyqt4-dbus needs to be installed'
 error: python3-pyqt4 PyQt 4- Qt interface for Python (for Qt version 4.x) REQUIRED 4.0 - MISSING 'python3-pyqt4 needs to be installed'
 python3-dbus Python DBus - Python bindings for DBus REQUIRED 0.80.0 1.2.16 OK -
 python3-xml Python XML libraries REQUIRED - 2.2.9 OK -
 python3-devel Python devel - Python development files REQUIRED 2.2 3.8.5 OK -
 python3-pil PIL - Python Imaging Library (required for commandline scanning with hp-scan) OPTIONAL - 7.0.0 OK -
 python3-reportlab Reportlab - PDF library for Python OPTIONAL 2.0 3.5.34 OK -

When I try to install python3-pyqt4, and the package is no longer available. Discussions on various support forums for Ubuntu and other distros suggest that the package is no longer supported.

Can the HPLIP package be rebuilt for more recent distros? Right now I have a HP Color Laserjet Pro M82fdw that I can't print to using HPLIP any more.

Thanks,

Paul

Question information

Language:
English Edit question
Status:
Open
For:
HPLIP Edit question
Assignee:
No assignee Edit question
Last query:
2020-10-12
Last reply:
2020-10-12
brian_p (claremont102) said : #1

> Right now I have a HP Color Laserjet Pro M82fdw that I can't
> print to using HPLIP any more.

We can get you printing with another technique, if you wish.

Provide the outputs of

  avahi-browse -rt _ipp._tcp
  avahi-browse -rt _uscan._tcp
  driverless

when the device is connected to the network.

Paul Hands (phands) said : #2

Thanks, Brian.

The first command returns....
:~$ avahi-browse -rt _ipp._tcp
+ lo IPv4 Unknown @ Excession Internet Printer local
= lo IPv4 Unknown @ Excession Internet Printer local
   hostname = [Excession.local]
   address = [127.0.0.1]
   port = [631]
   txt = ["printer-type=0x80900E" "printer-state=3" "Color=T" "TLS=1.2" "UUID=6811a049-3431-3d6f-7ff0-58b0debdf86a" "URF=DM3" "pdl=application/octet-stream,application/pdf,application/postscript,image/jpeg,image/png,image/pwg-raster,image/urf" "product=(HP Color LaserJet MFP M277c10)" "priority=0" "note=" "adminurl=https://Excession.local.:631/printers/HPM271" "ty=HP Color LaserJet Pro MFP M277 Postscript (recommended)" "rp=printers/HPM271" "qtotal=1" "txtvers=1"]

The second and third give no response - just a return to the command prompt.

I'm aware of the options to set iy up otherwise, but I've used and liked HPLIP for years now. My question is: will HPLIP be updated to use more recent python libs, or are we looking at it being discontinued?

Paul

brian_p (claremont102) said : #3

> My question is: will HPLIP be updated to use more recent python
> libs, or are we looking at it being discontinued?

Only an HPLIP developer could answer that. My guess is that it will
not be discontinued.

Some plugin problems can be solved by downloading a plugin from

  https://developers.hp.com/hp-linux-imaging-and-printing/plugins

and running

  sh DOWNLOADED_FILE

(Incidentally: thanks for the avahi-browse output but it is from a CUPS
server, not from the printer).

Paul Hands (phands) said : #4

Thanks again, Brian.

How would i get the attention of one of the developers?

In the meantime, how do I take you up getting printing going another way?

Paul

brian_p (claremont102) said : #5

> How would i get the attention of one of the developers?

Submitting an issue at

  https://bugs.launchpad.net/hplip

is the only way. Whether there is any response is a different matter.

> In the meantime, how do I take you up getting printing going another way?

I hope you tried my plugin install suugestion? I gave it in response to your
saying

> ...and liked HPLIP for years now.

To take me up on my other way forward you need to put the printer on the
network with wireless or ethernet and give what I asked for in my first post.

Paul Hands (phands) said : #6

Hi Brian,

The printer is on the network already, and working fine with other (non Linux) devices such as Macbooks. It was working just fine on this Linux box until recently. I can ping it from my Linix box, and i can see it's native web page by pointing a browser at its IP address....I just can't get it running with HPLIP any more.

I tried the plugins run file you suggested, in this case hplip-3.20.3-plugin.run. It fails with ....

:~/Downloads$ sh hplip-3.20.3-plugin.run
Verifying archive integrity... All good.
Uncompressing HPLIP 3.20.3 Plugin Self Extracting Archive..............................................................

HP Linux Imaging and Printing System (ver. 3.20.3)
Plugin Installer ver. 3.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.

Plug-in version: 3.20.3
Installed HPLIP version: 3.20.3
Number of files to install: 64

error: Unable to load Qt4 support. Is it installed? Try running with -i or --qt3 instead.

Running with the -i argument just gives info about what options are available, and --qt3 isn't one of them. Running it with the --qt3 option gives an unrecognized flag error.

I tried installing version 3.20.9, but that fails with the original missing dependency on the python3-pyqt4 package. I'm not sure what to do about the avahi-browse -rt _uscan._tcp and driverless commands...they just don't return anything.

P

brian_p (claremont102) said : #7

Are you sure your printer is a Color Laserjet Pro M82fdw? I
cannot locate that model.

brian_p (claremont102) said : #8

Is it anHP Color LaserJet Pro MFP M277?

brian_p (claremont102) said : #9

Typo alert!

M2777 ---> M277

Paul Hands (phands) said : #10

Sorry - PEBKAC!

It's a M281fdw.

P

brian_p (claremont102) said : #11

The ColorLaserJet MFP M278-M281 (note there isn't a space before "Laser")
is an AirPrint device. Therefore, it does DNS-SD (Bonjour) to adverise what it
capable of. Bonjour is usually on by default. Check its status (Often found
under a Network menu) from the printer's web page.

Paul Hands (phands) said : #12

Hi Brian,

Yes, Airprint is on, and it has a Bonjour Service Name of "HP Color
LaserJet MFP M281fdw (E29A95)"

On Mon, Oct 12, 2020 at 12:35 PM brian_p <
<email address hidden>> wrote:

> Your question #693379 on HPLIP changed:
> https://answers.launchpad.net/hplip/+question/693379
>
> brian_p posted a new comment:
> The ColorLaserJet MFP M278-M281 (note there isn't a space before "Laser")
> is an AirPrint device. Therefore, it does DNS-SD (Bonjour) to adverise
> what it
> capable of. Bonjour is usually on by default. Check its status (Often found
> under a Network menu) from the printer's web page.
>
> --
> You received this question notification because you asked the question.
>

brian_p (claremont102) said : #13

> Yes, Airprint is on, and it has a Bonjour Service Name of "HP Color
> LaserJet MFP M281fdw (E29A95)"

Then try

  avahi-browse -art > log

log should show the printer. (Your previous output is a print queue on
Excession, not the printer).

Paul Hands (phands) said : #14

Yeah....Excession is the host name (after one of the best science fiction books ever).

avahi-browse -art

doesn't give much output, so I didn't bother with the stdout redirect. It gives....

:~$ avahi-browse -art
+ lo IPv4 EXCESSION _device-info._tcp local
+ lo IPv4 Unknown @ Excession UNIX Printer local
+ lo IPv4 Unknown @ Excession Secure Internet Printer local
+ lo IPv4 Unknown @ Excession Internet Printer local
+ lo IPv4 EXCESSION Microsoft Windows Network local
= lo IPv4 EXCESSION _device-info._tcp local
   hostname = [Excession.local]
   address = [127.0.0.1]
   port = [0]
   txt = ["model=MacSamba"]
= lo IPv4 EXCESSION Microsoft Windows Network local
   hostname = [Excession.local]
   address = [127.0.0.1]
   port = [445]
   txt = []
= lo IPv4 Unknown @ Excession Internet Printer local
   hostname = [Excession.local]
   address = [127.0.0.1]
   port = [631]
   txt = ["printer-type=0x80900E" "printer-state=3" "Color=T" "TLS=1.2" "UUID=6811a049-3431-3d6f-7ff0-58b0debdf86a" "URF=DM3" "pdl=application/octet-stream,application/pdf,application/postscript,image/jpeg,image/png,image/pwg-raster,image/urf" "product=(HP Color LaserJet MFP M277c10)" "priority=0" "note=" "adminurl=https://Excession.local.:631/printers/HPM271" "ty=HP Color LaserJet Pro MFP M277 Postscript (recommended)" "rp=printers/HPM271" "qtotal=1" "txtvers=1"]
= lo IPv4 Unknown @ Excession Secure Internet Printer local
   hostname = [Excession.local]
   address = [127.0.0.1]
   port = [631]
   txt = ["printer-type=0x80900E" "printer-state=3" "Color=T" "TLS=1.2" "UUID=6811a049-3431-3d6f-7ff0-58b0debdf86a" "URF=DM3" "pdl=application/octet-stream,application/pdf,application/postscript,image/jpeg,image/png,image/pwg-raster,image/urf" "product=(HP Color LaserJet MFP M277c10)" "priority=0" "note=" "adminurl=https://Excession.local.:631/printers/HPM271" "ty=HP Color LaserJet Pro MFP M277 Postscript (recommended)" "rp=printers/HPM271" "qtotal=1" "txtvers=1"]
= lo IPv4 Unknown @ Excession UNIX Printer local
   hostname = [Excession.local]
   address = [127.0.0.1]
   port = [0]
   txt = []

I can see that the printer is mentioned in that output, twice, both at the loopback address, but on 2 different ports.

P

brian_p (claremont102) said : #15

> I can see that the printer is mentioned in that output, twice, both
> at the loopback address, but on 2 different ports.

It is not a printer that is shown but a print queue. A printer entry would have
its IP shown, one not for localhost. Paul, I am lost. Maybe rebooting printer
and router would help.

Paul Hands (phands) said : #16

Brian,

Thanks for all the help and ideas so far.....I know you're just being helpful!

I'm lost too, to be honest, and I'm a Linux geek and programmer for the last 20 years. It looks like the only way to clear this up is to ask the HPLIP developers to fix the python dependency, because at some point, I suspect a lot of distros will see the same problem. Neon is a rolling release, so I may just have seen it earlier than some.

To that end, I've submitted a bug report against this issue.

Thanks again,

Paul

Can you help with this problem?

Provide an answer of your own, or ask Paul Hands for more information if necessary.

To post a message you must log in.