{ lib, config, pkgs, ...}: with lib; let cfg = config.wm.xmonad; in { options.wm.xmonad = { enable = mkOption { type = types.bool; default = false; description = "Enable xsessions and xmonad window manager"; }; }; config = mkIf cfg.enable { home.packages = with pkgs; [ xclip # access x clipboard from a console dmenu # menu for x window system flameshot # powerful yet simple to use screenshot software ]; xsession = { enable = true; windowManager.xmonad = { enable = true; enableContribAndExtras = true; config = ./config.hs; }; }; }; }