{ pkgs, lib, ... }: { imports = [ ./avahi.nix ]; services.printing = { enable = true; drivers = [ pkgs.canon-cups-ufr2 pkgs.cups-filters pkgs.gutenprint pkgs.hplip ]; }; hardware.sane.enable = true; hardware.sane.extraBackends = [ pkgs.hplipWithPlugin pkgs.sane-airscan ]; # ExplanationNote: cups-browsed only supports avahi, not systemd-resolved services.avahi.enable = lib.mkDefault true; services.resolved.extraConfig = '' MulticastDNS=false ''; networking.nftables.ruleset = '' table inet filter { chain output-lan { meta l4proto { udp, tcp } th dport { ipp, ipps } counter accept comment "IPP" } chain output-net { meta l4proto { udp, tcp } th dport { ipp, ipps } counter accept comment "IPP" } } ''; }