I have tried all the suggestions given here but the printer still does not install. I have used the same printer for several years without an issue. I stopped using it for about 5 weeks and after this period the problem has appeared.
I tried with the tool "HP Print and Scan Doctor", version 5.6.6, it finds my printer but it claims it's not installed, and it requests me to download and install the drivers found at -en/drivers/selfservice/hp-laserjet-pro-p1102-printer-series/4110394/model/..., which I already tried several times with no success as described above.
So, I've installed every possible thing for printer, started cups in browser, added my printer etc.
But under administration tab, where I need to enter a connection with provided examples, I get lost completely:
OK, I got it running by providing socket://myhostname in connection field.
But now when I try to print a page it simply says "printer is busy" and that's it, nothing more.
(I connect my laserjet via usb cable by the way)
Finally got it working.
First you need to run "hp-setup" or "hp-plugin" utility from hplip package. This utility ("hp-setup") downloads the needed proprietary driver for Laserjet Pro p1102, extracts it and installs, then it installs printer and does all the other necessary stuff ("hp-plugin" just downloads, extracts and installs the driver). Then you can finally add a printer via CUPS.
That is it. Now you're ready to print.
The common error that may occur while downloading the proprietary driver with "hp-setup" or "hp-plugin" is extraction stage. It is all due to python3, python 2.7 bindings in the system. "hp-setup""hp-plugin" use python 2.7 while all modern arch systems are binded to use python3. To fix this simply "ln -s /usr/bin/python2.7 /usr/bin/python".
Don't forget to put "cupsd" into your daemons array and "lp" to your modules in rc.conf.
I also didn't blacklist "usblp", just in case.
And final note, don't forget to add "yourself" to sys group with: