Files
NixOS-Configs/modules/options.nix
Anish Govind 8010cea0bc home: centralize theme and make home-manager feature-aware
- add home/theme.nix as the single Silicon Volt palette and pass it to
  home modules via extraSpecialArgs
- drive foot, hyprland, hyprlock, mako, fzf, starship, rofi and the
  herdr picker from that palette; raw config files use @color@ tokens
  substituted at build time
- pass my = config.my into home-manager; add my.pi.enable, my.flakeDir
- gate home/pi.nix on my.pi.enable (enabled on hades)
- route zshconf/hyprconf aliases and FLAKE_CONFIG through my.flakeDir
- rename the hyprland monitor option volt.monitors -> hypr.monitors
- fix use_auto_tmux command-substitution bug in zsh/init.zsh
- track home/nvim/config/lazy-lock.json for reproducible plugins
- document theming and toggles in the README
2026-09-19 00:48:19 -07:00

30 lines
798 B
Nix

{
config,
lib,
...
}:
{
# Shared, machine-agnostic configuration surface. Hosts enable optional
# feature modules by setting these booleans instead of editing import lists.
options.my = {
username = lib.mkOption {
type = lib.types.str;
default = "anish";
description = "Primary interactive user account.";
};
flakeDir = lib.mkOption {
type = lib.types.str;
default = "/home/${config.my.username}/NixOS-Configs";
description = "Checkout location of this flake on the machine.";
};
gaming.enable = lib.mkEnableOption "Steam, Gamemode and gaming tooling";
ai.local.enable = lib.mkEnableOption "local AI services (Ollama, ComfyUI, Open WebUI)";
pi.enable = lib.mkEnableOption "the pi coding agent (home-manager)";
};
}