39 lines
855 B
Nix
39 lines
855 B
Nix
{
|
|
pkgs,
|
|
lib,
|
|
config,
|
|
inputs,
|
|
...
|
|
}: let
|
|
tuigreet = "${pkgs.greetd.tuigreet}/bin/tuigreet";
|
|
in {
|
|
options.greeter = {
|
|
session = lib.mkOption {
|
|
type = lib.types.str;
|
|
description = "Path to the session binary";
|
|
};
|
|
};
|
|
config = {
|
|
environment.etc.session.text = toString config.greeter.session;
|
|
services.greetd = {
|
|
enable = true;
|
|
settings = {
|
|
default_session = {
|
|
command = "${tuigreet} --time --remember --remember-session --sessions ${config.greeter.session}/bin/niri-session";
|
|
user = "greeter";
|
|
};
|
|
};
|
|
};
|
|
systemd.services.greetd.serviceConfig = {
|
|
Type = "idle";
|
|
StandardInput = "tty";
|
|
StandardOutput = "tty";
|
|
StandardError = "journal";
|
|
|
|
TTYReset = true;
|
|
TTYVHangup = true;
|
|
TTYVDisallocate = true;
|
|
};
|
|
};
|
|
}
|