diff options
author | Tim Keller <tjkeller.xyz> | 2024-10-31 18:58:47 -0500 |
---|---|---|
committer | Tim Keller <tjkeller.xyz> | 2024-10-31 18:58:47 -0500 |
commit | 5cd716012f0a75a9f740b90d4afe7a205dee1b3b (patch) | |
tree | 0be57e514dedf8eee06b601522e918c9381dd6cb /modules/root/printing.nix | |
parent | 9675b81889f3e5b9a6b839eb91a4d0dafa528b43 (diff) | |
download | nixos-5cd716012f0a75a9f740b90d4afe7a205dee1b3b.tar.xz nixos-5cd716012f0a75a9f740b90d4afe7a205dee1b3b.zip |
printers scanner setup and few other minor things
Diffstat (limited to 'modules/root/printing.nix')
-rw-r--r-- | modules/root/printing.nix | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/modules/root/printing.nix b/modules/root/printing.nix new file mode 100644 index 0000000..69ff573 --- /dev/null +++ b/modules/root/printing.nix @@ -0,0 +1,49 @@ +{ lib, config, pkgs, ... }: { + options = { + printing.enable = lib.mkEnableOption "enables printing"; + avahi.enable = lib.mkEnableOption "enables avahi"; + scanning.enable = lib.mkEnableOption "enables scanning"; + }; + + config = lib.mkIf config.printing.enable { + services.printing = { + enable = true; + drivers = [ + pkgs.epson-escpr2 + ]; + }; + + services.avahi = { + enable = true; + nssmdns4 = true; + openFirewall = true; + }; + + environment.systemPackages = with pkgs; pkgs.lib.optionals config.scanning.enable [ + epsonscan2 + ]; + + networking.hosts = { + "192.168.1.35" = [ "Epson_ET-8500" ]; + "192.168.77.40" = [ "Xerox_WorkCentre_7855" ]; + }; + + hardware.printers.ensurePrinters = [ + { + name = "Epson_ET-8500"; + description = "Epson ET-8500"; + location = "Home"; + deviceUri = "ipp://Epson_ET-8500:631/ipp/print"; + model = "epson-inkjet-printer-escpr2/Epson-ET-8500_Series-epson-escpr2-en.ppd"; + } + #{ + # name = "Xerox_WorkCentre_7855"; + # description = "Xerox WorkCentre 7855"; + # location = "Office"; + # deviceUri = "ipp://Xerox_WorkCentre_7855:631/ipp/print"; + # model = "everywhere IPP Everywhere"; + #} + ]; + hardware.printers.ensureDefaultPrinter = "Epson_ET-8500"; + }; +} |