Initial framework: reusable modules, lib, pkgs, overlays, scripts, sample environment

This commit is contained in:
2026-05-10 19:06:58 +02:00
commit c53d997d07
32 changed files with 1339 additions and 0 deletions
+41
View File
@@ -0,0 +1,41 @@
# NixOS Infrastructure Framework
Reusable, environment-agnostic components for building and managing
NixOS-based infrastructure.
## Contents
| Directory | Purpose |
|-----------------|-------------------------------------------------|
| `modules/` | NixOS modules (machine types, services, users) |
| `lib/` | Nix utility functions |
| `pkgs/` | Custom packages not in Nixpkgs |
| `overlays/` | Nixpkgs overlays |
| `scripts/` | Operational scripts (deploy, create LXC, etc.) |
| `environments/` | Example environments to get started |
## Getting Started
1. Clone this repository.
2. Create your own environment directory (see `environments/sample/`).
3. Reference framework modules via relative paths or `fetchGit`.
4. Add your host configurations, network layout, and secrets.
## Creating Your Own Environment
```
environments/your-env/
├── configuration.nix # Environment entry point
├── hosts/
│ ├── servers/
│ │ └── myhost/
│ │ └── configuration.nix
│ └── workstations/
├── network/ # Subnets, VLANs, host assignments
├── secrets/ # agenix-encrypted secrets
└── users/ # User configurations
```
## License
See [LICENSE](LICENSE).