{ lib, config, pkgs, ... }: with lib; let cfg = config.roles.desktop; in { config = mkIf (cfg.enable && cfg.x11) { services.xserver = { enable = true; windowManager.i3 = { enable = true; extraPackages = with pkgs; [ dmenu i3status i3lock ]; }; }; }; }