Signed-off-by: Bloxx12 <charlie@charlieroot.dev> Change-Id: I6a6a69641c36f9763e104087a559c148d0449f00
61 lines
1.4 KiB
Nix
61 lines
1.4 KiB
Nix
{
|
|
config,
|
|
lib,
|
|
pkgs,
|
|
...
|
|
}:
|
|
let
|
|
inherit (lib.meta) getExe getExe';
|
|
inherit (lib.modules) mkIf;
|
|
inherit (lib.options) mkOption mkEnableOption;
|
|
inherit (lib.types) str listOf;
|
|
|
|
inherit (config.meta.mainUser) username;
|
|
cfg = config.modules.services.greetd;
|
|
uwsmEnabled = config.modules.services.uwsm.enable;
|
|
in
|
|
{
|
|
options.modules.services.greetd = {
|
|
enable = mkEnableOption "greetd";
|
|
greeter = mkOption {
|
|
description = "greetd frontend to use";
|
|
type = str;
|
|
};
|
|
launchOptions = mkOption {
|
|
description = "/etc/greetd/environments as list of strings";
|
|
type = listOf str;
|
|
};
|
|
session = mkOption {
|
|
description = "Which login session to start";
|
|
type = str;
|
|
default =
|
|
if uwsmEnabled then "${getExe config.programs.uwsm.package} start Hyprland" else "Hyprland";
|
|
};
|
|
};
|
|
|
|
config = mkIf cfg.enable {
|
|
services.greetd =
|
|
let
|
|
session = {
|
|
# command = ''
|
|
# ${pkgs.greetd.tuigreet}/bin/tuigreet \
|
|
# -c \"${cfg.session}\" \
|
|
# -r
|
|
# -t --time-format "DD.MM.YYYY"
|
|
# --asteriks'';
|
|
|
|
command = "${getExe config.programs.uwsm.package} start hyprland-uwsm.desktop";
|
|
user = username;
|
|
};
|
|
in
|
|
{
|
|
enable = true;
|
|
package = pkgs.greetd;
|
|
vt = 7;
|
|
settings = {
|
|
default_session = session;
|
|
initial_session = session;
|
|
};
|
|
};
|
|
};
|
|
}
|