core modules have options now

This commit is contained in:
2026-07-05 22:53:04 -05:00
parent 5a12201ce7
commit 9d150a377a
4 changed files with 155 additions and 94 deletions
+46
View File
@@ -0,0 +1,46 @@
{
lib,
shared,
...
}:
{
options.homelab.core = {
kernel = lib.mkOption {
type = with lib.types; enum (builtins.attrNames shared.kernelOptions);
default = "lts";
description = "The kernel of the machine";
};
user = {
name = lib.mkOption {
type = lib.types.str;
default = "river";
description = "The username of the primary user";
};
fullName = lib.mkOption {
type = lib.types.str;
default = "Maaz Khokhar";
description = "The full name of the user";
};
shell = lib.mkOption {
type = with lib.types; listOf str;
default = "fish";
description = "The shell the primary user uses";
};
};
allowUnfree = lib.mkEnableOption {
enable = true;
default = true;
};
ssh = {
permitRootLogin = lib.mkEnableOption {
enable = true;
default = false;
};
};
};
}