System/modules/options.nix

43 lines
1.2 KiB
Nix
Raw Normal View History

2022-06-23 02:57:41 -04:00
{ config, lib, pkgs, ... }:
2022-09-04 01:59:56 -04:00
2022-06-23 02:57:41 -04:00
let
inherit (import ./lib.nix { inherit lib; inherit pkgs; }) nLib;
in
{
options = with lib; with nLib; {
nathan = {
2022-09-04 02:22:19 -04:00
# Programs, many of these will be generic
2022-06-23 02:57:41 -04:00
programs = {
# Utility modules
utils = {
# Core utililtes I want on every system
# Enabled by default
core = mkEnableOptionT "utils-core";
# Development utilities that can't be installed through home manager due to collisions
devel = mkDefaultOption "devel" config.nathan.config.isDesktop;
2022-06-23 02:57:41 -04:00
};
};
# General system configuration
2022-09-04 04:09:33 -04:00
config = {
# Name of the user to install
user = mkOption {
default = "nathan";
example = "nathan";
description = "Username to use for common configuration";
type = lib.types.str;
};
# Name of the user to install
email = mkOption {
default = "nathan@mccarty.io";
example = "nathan@mccarty.io";
description = "Email to use for common configuration";
type = lib.types.str;
};
# Is this system a desktop?
# Off by default
isDesktop = mkEnableOption "Desktop specific settings";
};
2022-06-23 02:57:41 -04:00
};
};
}