Add External Configuration Modules

2025-12-18 18:30:38 +00:00
parent 3c4fdca21c
commit 52d33e78f5

@@ -0,0 +1,33 @@
# External Configuration Modules
External modules allow system and user configuration to live in
separate Git repositories.
## System Modules
Used in `inventory.nix` to define complete host configurations.
```nix
devices."server" = builtins.fetchGit {
url = "https://git.example.edu/org/server-config";
rev = "abc123";
};
```
## User Modules
Defined in `users.nix` and typically include both account options and
home-manager configuration.
Each external user module may contain:
- `user.nix` (required)
- `nixos.nix` (optional)
## Evaluation Order
1. User NixOS modules
2. Host type modules
3. Inventory overrides
4. External system modules
Later modules override earlier ones.