From cc31b858f7bdacf3f099c1c33693d33fe1880954 Mon Sep 17 00:00:00 2001 From: unexplrd Date: Fri, 13 Jun 2025 00:15:32 +0300 Subject: [PATCH] desktop/niri: use autoLogin module for greetd Signed-off-by: unexplrd --- modules/nixos/desktop/niri.nix | 41 +++++++++++++++++++--------------- 1 file changed, 23 insertions(+), 18 deletions(-) diff --git a/modules/nixos/desktop/niri.nix b/modules/nixos/desktop/niri.nix index 0820def..ec62f17 100644 --- a/modules/nixos/desktop/niri.nix +++ b/modules/nixos/desktop/niri.nix @@ -11,23 +11,28 @@ in { desktop.niri.enable = mkEnableOption "enable niri desktop"; }; - config = mkIf cfg.enable { - module.desktop.displayManager = "greetd"; - module.desktop.gnome-keyring.enable = true; - sound.pipewire.enable = true; + config = lib.mkMerge [ + (mkIf cfg.enable { + module.desktop.displayManager = "greetd"; + module.desktop.gnome-keyring.enable = true; + sound.pipewire.enable = true; - security = { - soteria.enable = true; # polkit agent in rust - pam.services.gtklock = {}; - }; - programs.niri.enable = true; # wayland compositor in rust - xdg.portal = { - enable = true; - extraPortals = with pkgs; [ - xdg-desktop-portal-gnome - xdg-desktop-portal-gtk - ]; - config.niri.default = ["gnome" "gtk"]; - }; - }; + security = { + soteria.enable = true; # polkit agent in rust + pam.services.gtklock = {}; + }; + programs.niri.enable = true; # wayland compositor in rust + xdg.portal = { + enable = true; + extraPortals = with pkgs; [xdg-desktop-portal-gnome xdg-desktop-portal-gtk]; + config.niri.default = ["gnome" "gtk"]; + }; + }) + (mkIf config.services.displayManager.autoLogin.enable { + services.greetd.settings.initial_session = { + command = "niri-session"; + user = config.services.displayManager.autoLogin.user; + }; + }) + ]; }