{ pkgs, config, lib, ... }: let cfg = config.ptw.services.sddm; in { options.ptw.services.sddm = { enable = lib.mkEnableOption "Enable SDDM as a display manager"; monitors = lib.mkOption { description = "The file to use as a monitors.xml"; }; }; config = lib.mkIf cfg.enable { assertions = [ { assertion = config.ptw.services.gdm.enable == false; message = "Having two display managers is a bad idea"; } ]; services.xserver.displayManager.sddm = { enable = true; autoNumlock = true; }; }; }