Linux Mint 19.3 and HP Laser Jet 1018 printer

This is a really nice success story! I own the HP Laser Jet 1018 printer for more than 10 years now. It used to be a nightmare to make it running under Linux. But this time the setup worked like a charm!

Assuming you have a recent Linux Mint, like 19.3 and having the printer connected to your computer via USB cable, all you need to do to setup this printer is to follow instructions on the official HP web page: What is the HPLIP Binary Plug-In and How Do I Install It?. In short you just execute this command:

hp-setup

This will run a very nice GUI wizard which will guide you and will complete the configuration with couple of simple steps! Nothing needs to be installed manually by you. In my case the command hp-setup was just available in Linux Mint 19.3 after installation.

Well done Linux & HP!

Update

Ok, I was too much enthusiastic. On another computer with a really fresh installation of Linux Mint 19.3 it turned out that the command hp-setup shows an error message like this:

HP Linux Imaging and Printing System (ver. 3.17.10)
Printer/Fax Setup Utility ver. 9.0

Copyright (c) 2001-15 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.

warning: GUI Modules PyQt4 and PyQt5 are not installed
error: hp-setup requires GUI support (try running with --qt3). Also, try using interactive (-i) mode.

Moreover it turned out running with –qt3 doesn’t work at all (how to report this?). And unfortunately using interactive (-i) mode didn’t give positive results.

Solution

In this case we need to install one thing:

sudo apt-get install python3-pyqt5

After this is successfully done execute the command hp-setup again. In my case GUI showed up:

Update: Linux Mint 20.1

On a fresh installation of Linux Mint 20.1 after plugging the printer (USB cable) one can see following system logs (using dmesg -w command):

[ 3665.125528] usb 1-2: new high-speed USB device number 2 using xhci_hcd
[ 3665.294232] usb 1-2: New USB device found, idVendor=03f0, idProduct=4117, bcdDevice= 1.00
[ 3665.294236] usb 1-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 3665.294239] usb 1-2: Product: HP LaserJet 1018
[ 3665.294241] usb 1-2: Manufacturer: Hewlett-Packard
[ 3665.294242] usb 1-2: SerialNumber: ...
[ 3674.709450] usblp 1-2:1.0: usblp0: USB Bidirectional printer dev 2 if 0 alt 0 proto 2 vid 0x03F0 pid 0x4117
[ 3674.709493] usbcore: registered new interface driver usblp
[ 3679.790584] usblp0: removed
[ 3679.808428] usblp 1-2:1.0: usblp0: USB Bidirectional printer dev 2 if 0 alt 0 proto 2 vid 0x03F0 pid 0x4117
[ 3780.692860] usblp0: removed

And then the desktop layer, Cinnamon in my case, shows a nice tooltip saying that the printer “HP-LaserJet-1018” was added. A printer icon appears in the system tray. However this is misleading – the printer is not yet ready. Trying to print something does nothing. I tried to follow the same procedure as for Linux Mint 19 but it failed on the phase “Driver Plug-in Installation” when using recommended mode (Download and install the plug-in from an HP authorized server). The error message printed on the console was:

error: /home/krzysiek/.hplip/hplip-3.20.11-plugin.run file does not match its checksum. File may have been corrupted or altered

Solution for Linux Mint 20.1

  1. First, install one missing dependency:
    sudo apt-get install python3-pyqt5
    
  2. Then make sure the printer is turned on and connected to your computer (USB). Then run the HP setup program:
    hp-setup
    

    On the console you should see output starting with:

    HP Linux Imaging and Printing System (ver. 3.20.11)
    Printer/Fax Setup Utility ver. 9.0
    
  3. It should detect the printer and show you “Driver Plug-in Installation” window. For the first time just click “Next” button to see how it goes. In my case on this step, after downloading the plugin, the hp-setup program claimed the file’s checksum is wrong. Take a look on the console (the terminal window where you executed “hp-setup” command) what is the exact name of the plugin file we need. In my case it was hplip-3.20.11-plugin.run. The file version matches the version of the hp-setup program.
  4. Open a web browser and go to https://www.openprinting.org/download/printdriver/auxfiles/HP/plugins/. On the page find and download 2 files: one file with exactly the same name, hplip-3.20.11-plugin.run, and another file with the name extended by “.asc” post-fix: hplip-3.20.11-plugin.run.asc. Save both files in the same directory.
  5. Go back to the HP setup wizard. Click “OK” button to close the dialog window saying “Please run ‘hp-plugin’ as normal user to install plug-ins”. And click “Next” button again on the window with text “Select From Discovered Devices”.
  6. You will again land on the window “Driver Plug-in Installation”. This time select second mode (Select and install an existing local copy of the plug-in file). Then click on a small folder icon on the right and select the plugin file (the one with “.run” extension, hplip-3.20.11-plugin.run in my case). Then click “Next” button.
  7. The program should show you “Driver Plug-in License Agreement” window. From now on the process is the same as in the procedure for the Linux Mint 19! 🙂

After this the printer should make its characteristic noise. This means it’s OK.

PS. Many thanks to the Open Printing organization for providing HP printer plugin files!

About krzysztoftomaszewski

I've got M.Sc. in software engineering. I graduated in 2005 at Institute of Computer Science, Warsaw University of Technology, Faculty of Electronics and Information Technology. I'm working on computer software design and engineering continuously since 2004.
This entry was posted in hardware, Linux and tagged , , , . Bookmark the permalink.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s