Have you ever wondered if you could print from your Windows 10 machine to a CUPS printer on your local network? It might be actually quite easy. See this documentation about how I did it with my black & white Samsung SCX-3205 printer.
Checking CUPS configuration and access
Lets say you have somehow configured CUPS. In order for it to serve external computers, at least these settings should be present in /etc/cups/cupsd.conf:
Listen 0.0.0.0:631 # A bit more down... # Old setting, comment out: #<Location /> # Order allow,deny #</Location> # New setting: <Location /> Allow all </Location>
So here we made the CUPS root accessible externally. Restart cups for settings to take effect. Next, on your Windows 10 machine navigate to your cups host, for example http://172.16.8.164:631/printers . Click on the printer you have installed earlier:
Next you get the printer page, for for example like this:
NOW ENSURE THAT THE URL IS HTTP! NOT HTTPS! And save the URL. My URL was http://172.16.8.164:631/printers/Samsung_SCX-3200_Series .
Adding the CUPS printer in Windows 10 with generic(ish) drivers
Next open the Printers setting:
Click to add new printer…
…and select that printer is not listed:
Allow UAC prompt:
Now select the “Select a shared printer by name” option and write the URL you had earlier. For me it was http://172.16.8.164:631/printers/Samsung_SCX-3200_Series . Then select Next:
Now Windows asks about what driver to use. For my black & white printer the driver named “HP LaserJet 9000 PS Class Driver” seems to work with CUPS:
(For color printers, maybe something else is needed? Maybe “HP Color Laserjet 5500 PS Class Driver” ? But I have not tested this.)
Next you can print test page:
Observe how it comes out. Looks good!
Next you can close the wizard:
Observe also the printer listed with other printers:
Finally close the settings and you are done. Not so difficult, eh?