{ config, pkgs, lib, ... }: let cfg = config.local.window-manager.xmonad; in { options.local.window-manager.xmonad.enable = lib.mkEnableOption "xmonad"; config = lib.mkIf cfg.enable { services.dbus = { enable = true; packages = [ pkgs.dconf ]; }; services.displayManager.defaultSession = "none+xmonad"; services.xserver = { enable = true; displayManager.lightdm = { enable = true; # greeters.tiny.enable = true; }; windowManager.xmonad.enable = true; }; programs.gnupg.agent.pinentryPackage = pkgs.pinentry-gtk2; local.lockscreen.i3lock.enable = lib.mkDefault true; }; }