{ config, lib, pkgs, ... }: let cfg = config.os.core.greet; in { options.os.core.greet.enable = lib.mkEnableOption "enables greetd daemon with tuigreet"; config = lib.mkIf cfg.enable { services.greetd = { enable = true; settings = { default_session = { user = "greeter"; command = lib.concatStringsSep " " [ "${pkgs.tuigreet}/bin/tuigreet" "--sessions ${config.services.displayManager.sessionData.desktops}/share/xsessions:${config.services.displayManager.sessionData.desktops}/share/wayland-sessions" "--remember" "--remember-user-session" "--asterisks" "--greeting 'Welcome to NixOS!'" "--time" ]; }; }; }; security.pam.services.greetd.enableGnomeKeyring = true; }; }