{ ... }: { config.dendritic.features.wm-niri = { homeModules = [ ( { pkgs, inputs, ... }: { imports = [ inputs.niri.homeModules.niri ../../home/programs/niri/settings.nix ../../home/programs/niri/keybinds.nix ../../home/programs/niri/rules.nix ../../home/programs/niri/autostart.nix ../../home/programs/niri/noctaliashell.nix ]; services.gnome-keyring.enable = true; } ) ]; nixosModules = [ ( { pkgs, lib, ... }: { imports = [ ../../nixos/gui/xdg.nix ]; services.greetd = let niri-config = pkgs.writeText "niri-config" '' hotkey-overlay { skip-at-startup } environment { GTK_USE_PORTAL "0" GDK_DEBUG "no-portals" } // other settings spawn-at-startup "sh" "-c" "${pkgs.greetd.regreet}/bin/regreet; pkill -f niri" ''; in { enable = true; settings = { default_session = { command = "niri -c ${niri-config}"; user = "greeter"; }; }; }; programs.regreet.enable = true; # services.displayManager.enable = false; # services.displayManager = { # sddm = { # package = pkgs.kdePackages.sddm; # enable = true; # wayland.enable = true; # }; # }; # services.displayManager.gdm = { # enable = false; # wayland = true; # }; services.displayManager.enable = lib.mkForce false; services.xserver = { enable = true; xkb = { variant = ""; layout = "us"; }; }; environment = { variables = { TERMINAL = "ghostty"; EDITOR = "nvim"; VISUAL = "nvim"; PAGER = "moar"; PASSWORD_STORE_DIR = "$HOME/.local/share/password-store"; }; }; } ) ]; }; }