diff --git a/Configuration-Namespace.md b/Configuration-Namespace.md new file mode 100644 index 0000000..33fbbe7 --- /dev/null +++ b/Configuration-Namespace.md @@ -0,0 +1,56 @@ +# Configuration Namespace + +All Innovation Factory specific configuration options are namespaced +under `athenix.*` to avoid collisions with standard NixOS options. + +## athenix.host + +Host-level hardware and platform configuration. + +Common options: +- `athenix.host.filesystem.device` +- `athenix.host.filesystem.swapSize` +- `athenix.host.buildMethods` +- `athenix.host.useHostPrefix` +- `athenix.host.wsl.user` + +These options define how the system boots, installs, and builds artifacts. + +## athenix.sw + +Defines the software profile for a system. + +Key options: +- `athenix.sw.type` +- `athenix.sw.kioskUrl` +- `athenix.sw.extraPackages` +- `athenix.sw.excludePackages` +- `athenix.sw.remoteBuild.*` +- `athenix.sw.python.enable` + +System type controls which software stack is applied. + +## athenix.users + +User account definitions and enablement. + +User options include: +- Shell and groups +- SSH keys +- Password hashes +- External user modules + +Users are enabled per-host via `inventory.nix`. + +## athenix.system + +System-wide behaviors such as garbage collection and maintenance. + +Typical configuration: +- Automatic GC +- Store optimization +- Retention policies + +## athenix.forUser + +Convenience option to enable a single user on a system in one line.