From df1c5b25a6cf1d107723c6e4eac4cf81eeb39683 Mon Sep 17 00:00:00 2001 From: Andrea Ciceri Date: Fri, 5 Jan 2024 01:22:51 +0100 Subject: [PATCH] Use `greetd` as login manager --- hmModules/shell/default.nix | 3 --- hosts/picard/default.nix | 3 ++- modules/greetd/default.nix | 36 ++++++++++++++++++++++++++++++++++++ 3 files changed, 38 insertions(+), 4 deletions(-) create mode 100644 modules/greetd/default.nix diff --git a/hmModules/shell/default.nix b/hmModules/shell/default.nix index dfc85c2..eebafa7 100644 --- a/hmModules/shell/default.nix +++ b/hmModules/shell/default.nix @@ -111,9 +111,6 @@ programs.fish = { enable = true; shellInit = '' - if [ -z "$DISPLAY" ] && [ "$(tty)" = "/dev/tty1" ] - exec dbus-run-session Hyprland - end fish_config theme choose "dracula" export CACHIX_AUTH_TOKEN=$(cat ${age.secrets.cachix-personal-token.path}) ''; diff --git a/hosts/picard/default.nix b/hosts/picard/default.nix index f913196..9380c78 100644 --- a/hosts/picard/default.nix +++ b/hosts/picard/default.nix @@ -30,6 +30,7 @@ "wireguard-client" "restic" "binfmt" + "greetd" ] ++ [ ./disko.nix @@ -37,7 +38,7 @@ ccr = { enable = true; - autologin = true; + autologin = false; modules = [ "git" "git-workspace" diff --git a/modules/greetd/default.nix b/modules/greetd/default.nix new file mode 100644 index 0000000..47e5f2b --- /dev/null +++ b/modules/greetd/default.nix @@ -0,0 +1,36 @@ +{ + pkgs, + lib, + ... +}: let + sessions = builtins.concatStringsSep ":" [ + (pkgs.writeTextFile { + name = "xorg-session.desktop"; + destination = "/hyprland-session.desktop"; + text = '' + [Desktop Entry] + Name=Hyprland + Exec=Hyprland + ''; + }) + ]; +in { + services.greetd = { + enable = true; + vt = 2; + settings = { + default_session = { + command = lib.concatStringsSep " " [ + (lib.getExe pkgs.greetd.tuigreet) + "--time" + "--remember" + "--remember-user-session" + "--asterisks" + # "--power-shutdown '${pkgs.systemd}/bin/systemctl shutdown'" + "--sessions '${sessions}'" + ]; + user = "greeter"; + }; + }; + }; +}