A friend and I are trying to get a machine set up to work as my school’s library’s printing computer instead of Windows ones. It is running NixOS. We got it bound to active directory, applications installed, etc., but the issue is that we can’t get it to print. It’ll say that it’s printing but the print job never reaches the print server. To access the print server you’re supposed to authenticate, but it doesn’t ever give a prompt to. I tried turning off the firewall temporarily to see if that was the issue but it made no difference.
In configuration.nix, services.printing.enable=true and services.printing.drivers = [ pkgs.cups pkgs.hplip ]; (it is an HP printer that we’re currently testing on).
I’m thinking that either SAMBA is configured incorrectly and/or the syntax that I put into CUPS for the printer is incorrect.
Current SAMBA config:
services.samba = { enable = true; openfirewall = true; settings = { public = { path = “/srv/public”; browseable = true; writable = true; “guest ok” = true;
In CUPS it shows the syntax for a Windows printer via SAMBA as follows: smb://[workgroup/]server[:port}/printer
The issue is that I don’t know what it means by that. I know the print queue, domain, IP, and port (although I’m under the impression that I don’t need the port for this case), but I don’t know how it would fit into this. I tried looking around on the CUPS wiki but it was vague and confusing to me. Any help with this is much appreciated.
The printers require AD authentication to print but no prompt? Is Kerberos setup correctly for CUPS?
- Verify CUPS can actually print from that machine
- If that’s your samba config, it seems a bit light
- Enable guest_ok and see if it works then. If so, you need to delve deeper into your access permissions
https://documentation.ubuntu.com/server/how-to/samba/print-server/index.html
You also just share print targets via CUPS without Samba: https://www.cups.org/doc/sharing.html