{ 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"; } ]; services.printing.enable = true; hardware.sane.enable = true; hardware.sane.extraBackends = [ pkgs.epkowa ]; services.printing.drivers = [ pkgs.epson_201207w ]; }; }