Sometimes in the Linux world, things aren’t as straightforward and easy as they should be. When it comes to properly adding a network printer, this is almost always the case. From getting it connected, to getting the right driver installed, it can be a quiet frustrating experience. However, I’ve broken this down into a very simple step by step approach to get you exactly where you want to be.
Have Yay At The Ready
First let’s make sure we have YAY (Yet Another Yogurt) installed. If you’re unfamiliar with yay, it’s a very elegant and simple way to handle package management from the AUR (Arch User Repository) as well as standard packages. If you don’t have yay installed, here’s the blog entry for doing that quick and easily.
How To Install Yay On Arch Linux
Printer Driver And Dependencies
Determine the type of printer you have, specifically the name brand and the model number. This will be very helpful in terms of getting the correct driver installed. For example, let’s say you have the Brother HL L2380DW, you’re going to want to find a driver that best matches that model using yay. So let’s first install the basic dependencies, then find the correct model specific driver.
sudo pacman -S cups cups-pdf
And now let’s find the correct manufacturer and model driver. Do a yay lookup using your info.
yay brother hll2380dw
1 aur/brother-hll2380dw 3.2.0_1-1 (+3 0.00) (Installed)
Brother LPR and CUPS driver for HL-L2380DW
==> Packages to install (eg: 1 2 3, 1-3 or ^4)
==>
Once you’ve found your correct driver, go ahead and install it.
Setup The Service
We want to enable cups and cups socket to work with our network printer.
sudo systemctl enable cups
sudo systemctl enable cups.socket
Adding The Network Printer
One of the easiest ways I’ve found to get a network printer to work reliable is to use IPP. If you don’t know it already, lookup the IP or host address of your printer. We’ll need that for this last step. Let’s add the printer using lpadmin.
lpadmin -p {your-printer-name} -E -v “ipp://{your-printer}/ipp/print” -m everywhere
Execute the above replacing {your-printer-name}
with the actual name you would like to refer to your printer as (e.g. brother-laser
), and {your-printer}
with either the IP address or Linux reachable hostname.
Test It Out
You should now be able to send print jobs over to your printer. Try sending something from a graphical text editor or web page and ensure it works. If for some reason it doesn’t, make sure your printer supports IPP or that the IP address/hostname you are using is correct.
Conclusion
That’s all there is to it. It’s not too bad once you get used to this process, but it’s a huge pain when you don’t know what you’re doing. Like always, thanks for swinging by and please feel free to reach out if you have any questions or get stuck.
0 Comments