Hplip

From wikinotes

The actual printer drivers depend on the type of printer that you have. Consult https://wiki.archlinux.org/index.php/CUPS#Installing_the_server_packages to see what driver is required for your printer. In this case I am using a HP PSC 1350, so I installed the HP driver:

sudo pacman -S hplip

## Note that if hplip does not work properly, you may want 
## to try compiling from source. It is the driver required 
## for the HP PSC 1350. There is a QT frontend for installing hp drivers.

sudo su
hp-setup -u

# When prompted choose the hp-psc 1300 series printer (the longer filename.)
# Occasionally the printer is not detected automatically by hp-setup. Try running cups first or rebooting. Worked for me!
sudo systemctl enable cups
sudo usermod -a -G lp will   //Add user will to group lp


# In order for the scanner to work, install xsane.
# reboot!
# At this point scanning should work, and the printer will be detected but nothing will print.
# You need to modify the printer in the Browser based ad min panel. Enter:
http://localhost:631/ 

# choose 'Printers' tab, modify printers. Keep all of the settings generated by hp-setup
# the same, except for the connection (initial page) choose the following connection.

hp:/usb/psc_1300_series?serial=MY3BLBG2299F

# Print a test page to make sure it all worked.
export LPDEST=psc_1300					## Set default printer:
lp file.txt									## Print file


## Useful Notes:
lp /home/will/file.txt -d psc_1300   //print file from command line
hp-check -r    //Troubleshoot printer, check dependencies etc.