diff --git a/hosts/m3-kratos/configuration.nix b/hosts/m3-kratos/configuration.nix index cded74e..3f66b30 100644 --- a/hosts/m3-kratos/configuration.nix +++ b/hosts/m3-kratos/configuration.nix @@ -14,7 +14,7 @@ boot.loader.systemd-boot.enable = true; boot.loader.efi.canTouchEfiVariables = true; boot.initrd.kernelModules = ["amdgpu"]; - boot.kernelPackages = pkgs.linuxPackages_6_18; + boot.kernelPackages = pkgs.linuxPackages_7_0; services.xserver.videoDrivers = ["amdgpu"]; security.polkit.enable = true; security.pam.services.gdm.enableGnomeKeyring = true; diff --git a/hosts/m3-kratos/services/default.nix b/hosts/m3-kratos/services/default.nix index 829bdc5..aa9ba74 100644 --- a/hosts/m3-kratos/services/default.nix +++ b/hosts/m3-kratos/services/default.nix @@ -1,6 +1,7 @@ {pkgs, ...}: { imports = [ ./containers + ./greetd.nix ./mem0.nix # ./n8n.nix ./netbird.nix @@ -29,6 +30,6 @@ userServices = true; }; }; - displayManager.gdm.enable = true; + # displayManager.gdm.enable = true; }; } diff --git a/hosts/m3-kratos/services/greetd.nix b/hosts/m3-kratos/services/greetd.nix new file mode 100644 index 0000000..f1b6bc3 --- /dev/null +++ b/hosts/m3-kratos/services/greetd.nix @@ -0,0 +1,39 @@ +# greetd login manager for m3-kratos (replaces broken GDM on nixos-unstable). +# Uses tuigreet as the greeter, launching Hyprland after authentication. +{ + pkgs, + config, + ... +}: let + inherit (config.programs.hyprland) package asHyprland; + tuigreet = "${pkgs.tuigreet}/bin/tuigreet"; + startHyprland = "${asHyprland.package}/bin/start-hyprland"; +in { + services.greetd = { + enable = true; + + settings = { + default_session = { + user = "greeter"; + command = builtins.concatStringsSep " " [ + tuigreet + "--time" + "--remember" + "--remember-session" + "--remember-user-session" + "--user-menu" + "--user-menu-min-uid 1000" + "--asterisks" + "--power-shutdown '${config.systemd.package}/bin/systemctl poweroff'" + "--power-reboot '${config.systemd.package}/bin/systemctl reboot'" + "--cmd ${startHyprland}" + ]; + }; + }; + }; + + # Required for --remember and --remember-user-session to persist session choices. + systemd.tmpfiles.rules = [ + "d /var/cache/tuigreet 0755 greeter greeter - -" + ]; +}