diff --git a/hosts/goopnet-interface/default.nix b/hosts/goopnet-interface/default.nix index ff32451..0d5bb78 100755 --- a/hosts/goopnet-interface/default.nix +++ b/hosts/goopnet-interface/default.nix @@ -37,6 +37,7 @@ hardware = { bluetooth.enable = true; pipewire.enable = true; + print.enable = true; }; dev = { enable = true; diff --git a/modules/hardware/print.nix b/modules/hardware/print.nix new file mode 100644 index 0000000..78629ed --- /dev/null +++ b/modules/hardware/print.nix @@ -0,0 +1,30 @@ +{ pkgs, config, lib, ... }: + +with lib; +let + cfg = config.modules.hardware.print; +in { + options.modules.hardware.print = { + enable = mkEnableOption "Enable various print services"; + }; + + config = mkIf cfg.enable { + services.printing.enable = true; + services.printing.startWhenNeeded = true; # i am not the avid printer user + services.printing.browsed.enable = true; + services.printing.drivers = with pkgs; [ + # gutenprint is very generic and supports a lot of printers + gutenprint + gutenprintBin + # brother laser printers + brlaser + ]; + + # network discovery + services.avahi = { + enable = true; + openFirewall = true; + nssmdns4 = true; + }; + }; +}