Page MenuHomeSolus

Update HPLIP to 3.21.4
ClosedPublic

Authored by stalebrim on May 31 2021, 4:20 PM.

Details

Summary

Support for various new printers. Full release notes here
Included various patches to fix bugs and issues with the binary plugin.

Test Plan
  • Install HP printer
  • Install plugin
  • Print

Diff Detail

Repository
R1409 hplip
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

stalebrim created this revision.May 31 2021, 4:20 PM
stalebrim requested review of this revision.May 31 2021, 4:20 PM
stalebrim updated this revision to Diff 27218.Jun 14 2021, 7:45 PM

Use correct icon path in hp-uiscan desktop file

be1 added a subscriber: be1.Jun 15 2021, 12:00 AM

Testing summary

Result: Pass ✅

Preconditions

Updated system, updated solbuild
Installed patch, verified it built correctly - ok ✅
Installed built eopkgs - ok ✅

System - Testing VM

Operating System: Solus 4.2
KDE Plasma Version: 5.22.1
KDE Frameworks Version: 5.83.0
Qt Version: 5.15.3
Kernel Version: 5.12.11-183.current (64-bit)
Graphics Platform: X11
Processors: 4 × Intel Core Processor (Skylake, IBRS)
Memory: 3.8 GiB of RAM
Graphics Processor: llvmpipe

Testing

  • Verified installed networked HP printer HP MFP M479fdn is still listed in Settings - Printers - ok ✅
  • Launched HP Printer Manager, verified printer properties and other UI functions were OK - ok ✅
  • In hplip verified that if I enter the printer IP it is detected & can be re-added
  • Printed a file using duplex - ok ✅

Note: Had to use the newly added printer instance to print, and delete the old one.

  • Scanned a document - ok ✅

    Note: Process was a bit fiddly. When first launching Document Scanner, it detected the HP. However, after clicking the scan button I saw “Unable to connect to scanner” Tried HPuiscan “No device connected”
    • After re-adding the printer, I was correctly prompted for the Driver Plug-in Installation. Proceeded with “download and install” “Unable to receive key from keyserver Without this, it is not possible to authenticate and validate the plug-in prior to installation. Do you still want to install the plug-in?” Chose yes Plugin installation was successful
    • Closed & re-opened document scanner, scanning now successful despite getting an error “unable to start scan”
stalebrim updated this revision to Diff 27835.Jul 21 2021, 10:27 PM

Fix keyserver to working one

stalebrim updated this revision to Diff 27991.Aug 2 2021, 12:06 PM

Update to 3.21.6

stalebrim updated this revision to Diff 28003.Aug 3 2021, 6:42 AM

Remove the patch that breaks plugin installation

stalebrim updated this revision to Diff 28005.Aug 3 2021, 6:52 AM

fix perms(sigh)

stalebrim updated this revision to Diff 28155.Aug 12 2021, 9:08 PM

Fix packager info

JoshStrobl accepted this revision.Aug 25 2021, 6:22 PM
JoshStrobl added a subscriber: JoshStrobl.

LGTM. @TClark77 any chance you could pull this down and test it as well? I don't have an HP printer. Not doubting the existing testing, just want a slightly broader coverage especially given this is a new release.

This revision is now accepted and ready to land.Aug 25 2021, 6:22 PM
TClark77 added a comment.EditedSep 6 2021, 6:44 PM

I just saw this is waiting on me, I'll test it out tomorrow.

Testing summary

Result: Fail ❌

Preconditions

Updated system, updated solbuild
Installed patch, verified it built correctly - ok ✅
Installed built eopkgs - ok ✅

System - Testing VM

Operating System: Solus 4.3
KDE Plasma Version: 5.22.5
KDE Frameworks Version: 5.85.0
Qt Version: 5.15.3
Kernel Version: 5.13.11-193.current (64-bit)
Graphics Platform: X11

Version of HPLIP tested: 3.21.6

Testing

  • Verified installed networked HP printer HP MFP M479fdn was still listed in Settings - Printers - ok ✅
  • Launched HP Device Manager - not ok ❌

When launched from the menu, nothing happens.
Received the following error when lauching hp-toolbox from command line:

 ❯ hp-toolbox                                                                [19:08:56]

HP Linux Imaging and Printing System (ver. 3.21.6)
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 "":
Traceback (most recent call last):
  File "/usr/share/hplip/base/password.py", line 86, in get_distro_name
    os_name = platform.dist()[0]
AttributeError: module 'platform' has no attribute 'dist'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/bin/hp-toolbox", line 280, in <module>
    toolbox = ui.DevMgr5(__version__, device_uri,  None)
  File "/usr/share/hplip/ui5/devmgr5.py", line 233, in __init__
    core =  CoreInstall(MODE_CHECK)
  File "/usr/share/hplip/installer/core_install.py", line 241, in __init__
    self.passwordObj = password.Password(ui_mode)
  File "/usr/share/hplip/base/password.py", line 119, in __init__
    self.__readAuthType()  # self.__authType
  File "/usr/share/hplip/base/password.py", line 142, in __readAuthType
    distro_name = get_distro_name().lower().replace(" ","")
  File "/usr/share/hplip/base/password.py", line 88, in get_distro_name
    import distro
ModuleNotFoundError: No module named 'distro'
  • Printed a test page - ok ✅

While HP Device Manager is not loading, the HP driver is still working.

  • Attempted to scan a document using Document Scanner - not ok ❌

    When first launching Document Scanner, it detected the HP. However, after clicking the scan button I saw “Unable to connect to scanner” Tried HPuiscan “No device connected”

Workaround attempted:
Removed all printers / faxes from System Settings - Printers
Attempted to add a new one using hp:/net/HP_Color_LaserJet_Pro_M478f-9f?ip=10.x.x.x
On "Pick a Driver" I saw an error
(I saw this error attempting to add the printer using other protocols in the dialog as well)

Failed to search for a recommended driver: 'Traceback (most recent call last):
  File "/usr/share/system-config-printer/scp-dbus-service.py", line 166, in _ppds_ready
    ppdname = ppdnamelist[0]
TypeError: 'dict_keys' object is not subscriptable
'
  • Used driver "Color LaserJet Pro M479 Postscript (recommended), clicked Next

In the "Please describe your printer" dialog name and description were "unknown". Previously these showed the correct model. Entered values & completed the dialog.
Configured with "hp jetdirect"

  • After re-adding the printer, I was *not* prompted for the Driver Plug-in Installation. I expect this is due to the error previously seen running the software on command line. The plug-in is necessary for scanning to work
  • I was able to print after re-adding the printer by setting it up as "AppSocket/HP Direct" and the printer IP.

The python error causing hp-toolbox to fail to launch is due to a missing dependency. I saw in this thread that the .py errors were resolved by installing 'python-distro'. Adding that as a dependency should solve the issues I saw in testing.

Re-testing:
I installed python-distro on my test VM and now can launch hp-toolbox aka HP Device Manager. It is not able to detect my printer on the network, however. IIRC this has happened before.

HPLIP cannot detect printers in your network.
This may be due to existing firewall settings blocking the required ports. When you are in a trusted network environment, you may open the ports for network services like mdns and slp in the firewall. For detailed steps follow the link. http://hplipopensource.com/node/374

I tried adding my printer manually by IP, and this was successful. The correct model was detected and configured.
Printing: I was able to print a test page
Scanning: Scan Document was able to detect the HP
It correctly prompted to install the plug-in and installation was successful
It was NOT able to scan a page on the first try. I got "Unable to connect to scanner". It worked on the second try after plugin install, which is what happened before as well.

@TClark77 So in summary excluding the fact that the extra dependency will need to be after, once the patch lands, was there any regressions in your experience compared to previous releases?

@TClark77 So in summary excluding the fact that the extra dependency will need to be after, once the patch lands, was there any regressions in your experience compared to previous releases?

That sums it up. All is well after the dependency is resolved, no regressions.

@stalebrim - I just checked and 3.21.8 has been released recently. Would you be able to update this? I saw in another diff that you're rather busy these days & switching to Fedora. If you don't have time, I can update the package. I'm keen on having this updated in the repos, having an HP printer :)

As he isn't using Solus, I won't hold this up for another update. Will land it as is but welcome any supplemental patches to bring it up to date. Thanks for the patch @stalebrim and thanks @TClark77 for the testing.

This revision was automatically updated to reflect the committed changes.