Menu

Home

hplip aalbright

The Hewlett-Packard Linux Imaging and Printing Project provides a unified single and multi-function connectivity solution for Linux. For more information access HPLIP knowledgebase https://developers.hp.com/hp-linux-imaging-and-printing


Project Members:


Discussion

  • Josep Antoni

    Josep Antoni - 2013-06-29

    This version oh HPLIP-3.33.6 is possible to install on Debian 7.1?
    Thanke-you

     
  • Thomas Sisson

    Thomas Sisson - 2013-12-14

    It would be great if there were an option to save the printer configuration so that one does not have to set up a printer every time there is a new version. This would be especially helpful for users with laptops and wireless printers.

    I have to take the laptop to the printer, find a USB cord, hook up the printer to the laptop, and follow the setup instructions.

    Until the setup is able to find my printer on the wireless network, it would be better if the installation could check my previous printer configuration instead of deleting it.

     
  • matt hocker

    matt hocker - 2014-02-04

    Hi I am looking for the HP 1780L printer driver. The printer is a HP 1780L, and I have it in Panama. It has marks on it from Venezuela.

    (Spanish)

    Hola estoy buscando para el controlador de la impresora HP 1780L. La impresora es una HP 1780L, y lo tengo en Panamá. Tiene marcas en él desde Venezuela.

     
  • Balwinder S Dheeman

    I think, you forget to update (sym)links to latest version for download, which is still pointing to 3.16.7 whereas the latest version is 3.17.9, hah.

     
  • Austin Copper

    Austin Copper - 2018-08-10
    Post awaiting moderation.
  • JROC

    JROC - 2025-02-03

    Any chance you guys could add a PPD file for:
    HP Color LaserJet Pro MFP 3301-3304/3388 series ?

     
  • Jiaheng Ma

    Jiaheng Ma - 2025-03-13

    I find a bug of hplip 3.24.4, how can I push a PR or like that for hplip?

     
  • FeRD

    FeRD - 2025-04-01

    @aiden256 A PR? Nowhere.

    The officially supported method for reporting bugs is supposedly Ubuntu Launchpad (https://launchpad.net/hplip), however I and others have posted patches there that reliably never get any response from HP.

    The best you can hope for is that the distros pick up your patches for their own packaging -- most distros are carrying 50+ patches on the package distributed by HP.

    (You should check that the bug you've found isn't already fixed by distro patches; Fedora's can be found at https://src.fedoraproject.org/rpms/hplip/tree/rawhide, Debian's at https://sources.debian.org/patches/hplip/.)

     
  • Jan Sauer

    Jan Sauer - 2025-05-03

    The script of hplip-3.25.2.run contains 2 lines where the terminal is called with the option -title (single hyphen). The execution is aborted on this. I think the option should be --title (double hyphen).

     
    • FeRD

      FeRD - 2025-05-03

      That's a tricky one. The code there is written to be compatible with xterm, where the correct syntax is -title — calling xterm --title "Something" will result in an abort with this error message:

      xterm: bad command line option "--title"

      But you're correct that most other terminal software won't take-title. The second choice after xterm, gnome-terminal, will abort with:

      # Failed to parse arguments: Unknown option -title

      ...I'm guessing most of the rest will be in the same boat.

      But, the code in that path is ONLY run when the hplip script is not already running in a terminal, but is executed on a system with an Xorg $DISPLAY output available. So it seems to me there are several choices to work around this:

      1. Run the hplip-3.25.2.run script from a command-line prompt, not by double-clicking it in a file manager (presumably).
      2. Install xterm, the first-choice terminal application the script will use, so that it can be selected and called with the -title argument it supports.
      3. Rewrite the terminal-launching logic to be much more complex about how it calls the selected terminal application, so that xterm can be called with -title, gnome-terminal can be called with --title=, and the others on the list can get the arguments that apply to them, as well.
        (In addition to -title, gnome-terminal -- and presumably most of the others -- will also abort on the --xwin argument that the script wants to supply to it. But at least it does support the -e argument!)
        Then, post a patch in a comment here or in a Launchpad bug, and hope someone at HP notices it someday.

      Personally, I'd go with option 1.

       
  • Jan Sauer

    Jan Sauer - 2025-05-04

    Thanks @FeRD. I'm using Manjaro 6.12 with xfce4-terminal version 1.1.5 in which I run sh hplip-3.25.2.run. This results in the error message Unknown option -title. Above option 1 is not applicable. Will try installing xterm and report back later.

     
    • FeRD

      FeRD - 2025-05-04

      Thanks @FeRD. I'm using Manjaro 6.12 with xfce4-terminal version 1.1.5 in which I run sh hplip-3.25.2.run. This results in the error message

      That's very strange. I'm not disbelieving you, I'm just confused. The code ahead of those terminal calls is:

      if test x"$nox11" = xn; then
          if tty -s; then                 # Do we have a terminal?
              :
          else
              if test x"$DISPLAY" != x -a x"$xterm_loop" = x; then  # No, but do we have X?
                  if xset q > /dev/null 2>&1; then # Check for valid DISPLAY variable
                      GUESS_XTERMS="xterm gnome-terminal rxvt dtterm eterm Eterm xfce4-terminal lxterminal kvt konsole aterm terminology"
                      for a in $GUESS_XTERMS; do
                          if type $a >/dev/null 2>&1; then
                              XTERM=$a
                              break
                          fi
                      done
      

      If you're in a virtual terminal, tty -s should succeed, and ensure that none of the rest of the code is even run.

      What happens if you run ttyby itself in an xfce4-terminal window? (tty -s is just the silent version of the command, it turns off the stdout message and only returns an exit code.) But running tty should indicate whether the command succeeds — in my gnome-terminal sessions, it does, and prints something like /dev/pts/13.

       
  • Jan Sauer

    Jan Sauer - 2025-05-08

    Running tty in xfce4-terminal prints /dev/pts/0
    Nevertheless, the script trips over -title.

    In xterm the installation is successful but then I receive the complaint that this hplip and my version of Manjaro are incompatible. But that is a whole different issue.

    I was trying to install hplip from SourceForge because it contains hplip-plugin.

    In Manjaro I used the gui Add/Remove Software to install HP Device Manager (hplip) 1:3.25.2-1. That succeeds fine and printing via wifi to the local network printer works Ok.

    But scanning would not work, although I have installed sane, sane-airscan, xsane, and gscan2pdf. Apparently, hplip-plugin is also required.

    Trying to install hplip-plugin via Manjaro Add/Remove Software resulted in an error message from PKGBUILD. After editing the build script, the plugin was installed. But now hp-check results in error messages about python3-pyqt4 not being installed and incompatibility with Manjaro 25.0.
    I was unable to convince Manjaro to install python3-pyqt4; it only accepts python3-pyqt5.

    I use Manjaro just for fun on a very old MacBook Pro. It is from 2009. Manjaro is the only Linux OS that will run on this notebook. I'll probably have to wait for an improved version of Manjaro to get the scanner working. I' ll take this up on the Manjaro forum.

     
    • FeRD

      FeRD - 2025-05-12

      @sqcjs

      hp-check is broken crap, it always checks for python3-pyqt4 (or equivalent), and claims it's required which it is NOT if you're using the Qt5 GUI. Which of course you are, since the last Qt4 release was in 2015.

      For scanning to work, what you likely need is the hpaio scanning backend. I don't think the HP binary printer plugin is scanning-related (though I could be wrong).

      Here's what hp-check shows on a Fedora 42 system with working scanning from an ENVY Pro 6400 Series all-in-one:

      ----------------------
      | Scan Configuration |
      ----------------------
      
       hpaio                HPLIP-SANE-Backend                                           REQUIRED        -               3.25.2          OK         'hpaio found in /etc/sane.d/dll.conf'
       scanext              Scan-SANE-Extension                                          REQUIRED        -               3.25.2          OK         -
      
      ------------------------------
      | DISCOVERED SCANNER DEVICES |
      ------------------------------
      
      device `hpaio:/net/ENVY_Pro_6400_series?ip=REDACTED' is a Hewlett-Packard ENVY_Pro_6400_series all-in-one
      device `airscan:e0:HP ENVY Pro 6400 series [REDACTED]' is a eSCL HP ENVY Pro 6400 series [REDACTED] ip=REDACTED
      device `hpaio:/net/ENVY_Pro_6400_series?ip=REDACTED' is a Hewlett-Packard ENVY_Pro_6400_series all-in-one
      device `airscan:e0:HP ENVY Pro 6400 series [REDACTED]' is a eSCL HP ENVY Pro 6400 series [REDACTED] ip=REDACTED
      
       
    • FeRD

      FeRD - 2025-05-12

      hpaio is actually double-configured in Fedora 42.

      • The sane-backends package installs /etc/sane.d/dll.conf which lists it on the last line of the file.
      • libsane-hpaio installs /etc/sane.d/dll.d/hpaio which also lists it.

      Since the actual /usr/lib64/libsane-hpaio.so.1.0.0 library is installed by libsane-hpaio, that's really the crucial package on Fedora. The fact that sane-backends already lists it is probably an indication that libsane-hpaio is a required dependency of our sane-backends.

       
    • FeRD

      FeRD - 2025-05-12

      Running tty in xfce4-terminal prints /dev/pts/0
      Nevertheless, the script trips over -title.

      That's very strange, and inexplicable to me. If you want to find out how it's getting to that point, one thing you can do is run the .run file with sh -x, which will trace script commands as they're being executed.

      On my F42 system in a gnome-terminal window, that goes like this:

      $ sh -x ./hplip-3.25.2.run
      ++ umask
      + ORIG_UMASK=0022
      + test n = n
      + umask 077
      + CRCsum=3855771365
      + MD5=080e82174e90441a77cd8f53061d3776
      + SHA=0000000000000000000000000000000000000000000000000000000000000000
      + TMPROOT=/tmp
      + USER_PWD=/home/ferd/Downloads
      + export USER_PWD
      + label='HPLIP 3.25.2 Self Extracting Archive'
      + script=./hplip-install
      + scriptargs=
      + licensetxt=
      + helpheader=
      + targetdir=hplip-3.25.2
      + filesizes=30371973
      + keep=y
      + nooverwrite=n
      + quiet=n
      + accept=n
      + nodiskspace=n
      + export_conf=n
      + print_cmd_arg=
      + type printf
      + print_cmd=printf
      + test -d /usr/xpg4/bin
      + test -d /usr/sfw/bin
      + unset CDPATH
      + finish=true
      + xterm_loop=
      + noprogress=n
      + nox11=n
      + copy=none
      + ownership=y
      + verbose=n
      + initargs=
      + true
      + case "$1" in
      + break
      + test xn = xy -a xn = xy
      ++ id -u
      + test xn = xy -a 1000 -ne 0
      + test xnone '!=' xphase2
      + MS_PrintLicense
      + test x '!=' x
      + case "$copy" in
      + test xn = xn
      + tty -s
      + :
      + test xhplip-3.25.2 = x.
      + test xy = xy
      + test xn = xy
      + test xn = xn
      + echo 'Creating directory hplip-3.25.2'
      Creating directory hplip-3.25.2
      

      The : on its own line after tty -s is the branch where it gets a useful result from tty -s, so it knows it's already running in a terminal and doesn't try to do anything clever with launching a new terminal application.

      (Edit: Oh, and you can always run the .run file with the argument --nox11, which tells it not to start a terminal even if it for some reason thinks it should.)

      sh hplip-3.25.2.run --nox11 --noexec is also useful, it'll extract the installer into a directory named for the .run file (so, hplip-3.25.2 in this case), but not execute it. Then, you can execute it yourself with more control:

      $ sh ./hplip-3.25.2.run --nox11 --noexec
      Creating directory hplip-3.25.2
      Verifying archive integrity...  100%   All good.
      Uncompressing HPLIP 3.25.2 Self Extracting Archive  100%  
      
      $ ls hplip-3.25.2
      aclocal.m4             faxsetup.py               makeuri.py
      align.py               FindPPD.cpp               missing
      apparmor               FindPPD.h                 Normalize.cpp
      base                   firmware.py               Normalize.h
      check-plugin.py        foomatic_drv.inc          pcard
      check.py               hpdio.py                  pkservice.py
      class_cups_drv.inc     hpijs-drv                 plugin.py
      class_rpm_build.sh     hplipclassdriver.spec     plugins
      clean.py               hplip_clean.sh            ppd
      colorcal.py            hplip.conf.in             pqdiag.py
      common                 hplip.desktop.in          print.py
      Common.h               hplip-install             printsettings.py
      config.guess           hplip.list.in             prnt
      config.sub             hplip-systray.desktop.in  probe.py
      configure              hpssd.py                  protocol
      configure.in           hp-uiscan.desktop.in      query.py
      config_usb_printer.py  info.py                   scan
      copier                 init-iptables-firewall    scan.py
      COPYING                __init__.py               selinux
      copyright              init-suse-firewall        sendfax.py
      createPPD.sh           installer                 setup.py
      cups_drv.inc           install.py                systray.py
      Dat2drv.cpp            install-sh                testpage.py
      Dat2drv.h              io                        timedate.py
      dat2drv.py             ip                        toolbox.py
      data                   levels.py                 ui
      depcomp                linefeedcal.py            ui4
      devicesettings.py      locatedriver              ui5
      diagnose_plugin.py     logcapture.py             uiscan.py
      diagnose_queues.py     ltmain.sh                 uninstall.py
      doc                    makecopies.py             unload.py
      doctor.py              Makefile.am               unreleased.inc
      fab.py                 Makefile_dat2drv          upgrade.py
      fax                    Makefile.in               wificonfig.py
      

      cd hplip-3.25.2 followed by ./hplip-install would start the installer, or you can run ./configure --help and ./hplip-install --help to review all of the possible options for building/installing the various bits of the system.

      Note, though, that you almost certainly don't want to pass any options to hplip-install, they're almost exclusively just different ways to break it.

       

      Last edit: FeRD 2025-05-12
  • Jan Sauer

    Jan Sauer - 2025-05-25

    @FeRD

    I tried all your suggestions, but no luck. But something must have been broken in my Manjaro OS because after a current system update and a new download of hplip-3.25.2-plugin.run, the plugin install went nice with as result:

    [xyz ~]$ cd Downloads
    [xyz Downloads]$ sh hplip-3.25.2-plugin.run
    Verifying archive integrity...  100%   All good.
    Uncompressing HPLIP 3.25.2 Plugin Self Extracting Archive  100%  
    
    HP Linux Imaging and Printing System (ver. 3.25.2)
    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.25.2
    Installed HPLIP version: 3.25.2
    Number of files to install: 64
    
    note: Using PyQt5
    
    Done.
    [xyz Downloads]$ 
    

    Now scanning from flatbed and ADF works Ok in sane and in gscan4pdf. Apparently, the plugin is needed.
    Thanks for all your help.

     

Log in to post a comment.

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.