diff options
Diffstat (limited to 'modules/options.nix')
-rw-r--r-- | modules/options.nix | 393 |
1 files changed, 0 insertions, 393 deletions
diff --git a/modules/options.nix b/modules/options.nix deleted file mode 100644 index 2571b9c..0000000 --- a/modules/options.nix +++ /dev/null @@ -1,393 +0,0 @@ -{ - config, - lib, - pkgs, - ... -}: -with lib; let - # monitor options - monitorOpts = self: { - options = { - name = mkOption { - type = types.str; - description = "Name of the monitor."; - }; - - scale = mkOption { - type = types.float; - description = "Scaling factor of the monitor."; - default = 1.0; - }; - - bitdepth = mkOption { - type = types.int; - description = "Monitor color bitdepth"; - default = 8; - }; - }; - }; - - # theme color options - - colorOpts = self: { - options = { - name = mkOption { - type = types.str; - description = "Name of the theme"; - }; - - author = mkOption { - type = types.str; - description = "Author of the theme"; - }; - - text = mkOption { - type = types.str; - description = "Text color."; - }; - - subtext = mkOption { - type = types.str; - description = "Subtext color."; - }; - - base = mkOption { - type = types.str; - description = "Base background color."; - }; - - surface = mkOption { - type = types.str; - description = "Surface (lighter) background color."; - }; - - overlay = mkOption { - type = types.str; - description = "Overlay (light) background color."; - }; - - primary = mkOption { - type = types.str; - description = "Primary accent color"; - }; - - success = mkOption { - type = types.str; - description = "Success color"; - }; - - warning = mkOption { - type = types.str; - description = "Warning color"; - }; - - error = mkOption { - type = types.str; - description = "Error color"; - }; - - normal = { - black = mkOption { - type = types.str; - description = "Terminal black normal color"; - }; - - red = mkOption { - type = types.str; - description = "Terminal red normal color"; - }; - - green = mkOption { - type = types.str; - description = "Terminal green normal color"; - }; - - yellow = mkOption { - type = types.str; - description = "Terminal yellow normal color"; - }; - - blue = mkOption { - type = types.str; - description = "Terminal blue normal color"; - }; - - magenta = mkOption { - type = types.str; - description = "Terminal magenta normal color"; - }; - - cyan = mkOption { - type = types.str; - description = "Terminal cyan normal color"; - }; - - white = mkOption { - type = types.str; - description = "Terminal white normal color"; - }; - - pink = mkOption { - type = types.str; - description = "Terminal pink (extended) normal color."; - }; - - orange = mkOption { - type = types.str; - description = "Terminal orange (extended) normal color."; - }; - }; - - bright = { - black = mkOption { - type = types.str; - description = "Terminal black bright color"; - }; - - red = mkOption { - type = types.str; - description = "Terminal red bright color"; - }; - - green = mkOption { - type = types.str; - description = "Terminal green bright color"; - }; - - yellow = mkOption { - type = types.str; - description = "Terminal yellow bright color"; - }; - - blue = mkOption { - type = types.str; - description = "Terminal blue bright color"; - }; - - magenta = mkOption { - type = types.str; - description = "Terminal magenta bright color"; - }; - - cyan = mkOption { - type = types.str; - description = "Terminal cyan bright color"; - }; - - white = mkOption { - type = types.str; - description = "Terminal white bright color"; - }; - - pink = mkOption { - type = types.str; - description = "Terminal pink (extended) bright color."; - }; - - orange = mkOption { - type = types.str; - description = "Terminal orange (extended) bright color."; - }; - }; - }; - }; -in { - options = { - # - # System information - # - hostName = mkOption { - type = types.str; - description = "Hostname of the system."; - }; - timeZone = mkOption { - type = types.str; - description = "System time zone"; - default = "America/New_York"; - }; - stateVersion = mkOption { - type = types.str; - description = "NixOS State Version"; - }; - - # - # System modules - # - battery = mkEnableOption { - description = "Install battery and power system services and programs."; - }; - bluetooth = mkEnableOption { - description = "Install bluetooth system services and programs."; - }; - fingerprint = mkEnableOption { - description = "Install fingerprint system services and programs."; - }; - network = mkEnableOption { - description = "Install networking system services and programs."; - }; - tpm = mkEnableOption { - description = "Enable system TPM"; - }; - minimal = mkEnableOption { - description = "Install only required system services, drivers, and programs."; - }; - - # - # Primary user of the system - # - user = mkOption { - type = types.str; - description = "Primary user of the system"; - }; - fullName = mkOption { - type = types.str; - description = "Human readable name of the user"; - }; - email = mkOption { - type = types.str; - description = "Primary email of the user"; - }; - homePath = mkOption { - type = types.path; - description = "Home directory path of the user"; - default = builtins.toPath "/home/${config.user}"; - }; - dotfilesPath = mkOption { - type = types.path; - description = "Dotfiles path inside the users home dir"; - default = builtins.toPath "${config.homePath}/.config/nix"; - }; - - # - # Monitors of the system - # - monitors = mkOption { - default = []; - description = "Monitors of the system."; - type = with types; listOf (submodule monitorOpts); - }; - - # - # Theme of the system - # - theme = { - colors = mkOption { - type = with types; (submodule colorOpts); - description = "color scheme"; - }; - - opacity = mkOption { - type = types.float; - description = "Window opacity."; - }; - - # theme fonts - font = { - size = mkOption { - type = types.int; - description = "Theme primary font size."; - }; - - regular = mkOption { - type = types.str; - description = "Regular system font."; - }; - - monospace = mkOption { - type = types.str; - description = "Monospace system font."; - }; - - header = mkOption { - type = types.str; - description = "Header system font."; - }; - - icon = mkOption { - type = types.str; - description = "Icon system font."; - }; - }; - - borderWidth = mkOption { - type = types.int; - description = "Theme border width"; - }; - - outerRadius = mkOption { - type = types.int; - description = "Theme outer border radius."; - }; - - innerRadius = mkOption { - type = types.int; - description = "Theme inner border radius."; - }; - - outerGap = mkOption { - type = types.int; - description = "Theme outer gap/spacing."; - }; - - innerGap = mkOption { - type = types.int; - description = "Theme inner gap/spacing."; - }; - - blur = mkEnableOption { - description = "If to enable blur in some programs."; - }; - - wallpaper = mkOption { - type = types.str; - description = "Path to wallpaper image"; - }; - - lockscreen = mkOption { - type = types.str; - description = "Path to lockscreen image"; - }; - - avatar = mkOption { - type = types.str; - description = "Path to avatar image"; - }; - }; - - # - # Default programs - # - default = { - browser = mkOption { - type = types.str; - description = "Default browser launch command."; - }; - appLauncher = mkOption { - type = types.str; - description = "Default application launcher launch command."; - }; - lockScreen = mkOption { - type = types.str; - description = "Default lock screen launch command."; - }; - terminal = mkOption { - type = types.str; - description = "Default terminal launch command."; - }; - session = mkOption { - type = types.str; - description = "Default systemd graphical session target."; - default = "graphical-session.target"; - }; - }; - - # - # Programs to auto start on launch - # - autoRun = mkOption { - type = with types; listOf str; - description = "List of programs to auto run in a graphical environment."; - default = []; - }; - }; -} |