{ config, lib, pkgs, ... }: with lib; let cfg = config.local.hardware.epson; in { options.local.hardware.epson = { enable = mkEnableOption "Epson printers and scanners"; }; config = mkIf cfg.enable { assertions = [ { assertion = config.local.hardware.printing.enable; message = "epson requires printing"; } ]; hardware.sane = { enable = true; extraBackends = [ pkgs.epkowa ]; }; services.printing = { enable = true; drivers = [ pkgs.epson_201207w ]; }; }; }