nixos/greetd: add an option to avoid systemd boot messages interrupt greetd

This commit is contained in:
wrvsrx 2025-08-15 19:01:24 +08:00
parent 4f64160ae1
commit 1ee66ce836
No known key found for this signature in database

View File

@ -59,6 +59,16 @@ in
because every greetd restart will trigger the autologin again.
'';
};
useTextGreeter = lib.mkOption {
type = lib.types.bool;
default = false;
description = ''
Whether the greeter uses text-based user interfaces (For example, tuigreet).
When set to true, some systemd service configuration will be adjusted to avoid systemd boot messages interrupt TUI.
'';
};
};
config = lib.mkIf cfg.enable {
@ -108,7 +118,19 @@ in
KeyringMode = "shared";
Type = "idle";
};
}
// (lib.optionalAttrs cfg.useTextGreeter {
StandardInput = "tty";
StandardOutput = "tty";
# Without this errors will spam on screen
StandardError = "journal";
# Without these bootlogs will spam on screen
TTYPath = "/dev/tty1";
TTYReset = true;
TTYVHangup = true;
TTYVTDisallocate = true;
});
# Don't kill a user session when using nixos-rebuild
restartIfChanged = false;