Installing a printer in linux
Install dependencies
Instructions can be found on archlinux wiki (cups)
Drivers for specific printers can be found here
For my printer (Canon PIXMA TS3151) I needed the cnijfilter2 package.
sudo pacman -S cups cnijfilter2
If thats not available, install with yay:
yay cnijfilter2
Start and enable cups service:
sudo systemctl enable cups.service
sudo systemctl start cups.service
Use the lpadmin tool to add your printer through airprint everywhere. Use your specific ip address for your printer.
lpadmin -p AirPrint -E -v "ipp://192.168.0.21/ipp/print" -m everywhere
Or you can add a printer connected over usb:
sudo lpadmin -p CanonPrinter \
-v 'cnijbe2://Canon/?port=usb&serial=426FDE' \
-P /usr/share/cups/model/canone3100.ppd \
-E
the -P argument is the ppd file that matches the model of your printer.
Scanner Support
My printer also has a scanner built in, to make use of it, follow below guide.
Install SANE (Scanner Access Now Easy) packages:
sudo pacman -S sane sane-airscan
KDE Plasma has a good GUI Application for scanning:
sudo pacman -S skanpage
To make sure the scanner is accessable, run the following command:
scanimage -L
It should tell you the model of the scanner.