{ 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)"; }; }