Reusable NixOS infrastructure framework — modules, lib, pkgs, overlays, scripts
  • Nix 56.6%
  • Shell 43.4%
Find a file
2026-05-20 19:42:03 +02:00
.clinerules Added spezcific cline rules to the framework repo. 2026-05-10 22:24:21 +02:00
.vscode Created a central place for all common options to all hosts. 2026-05-20 19:42:03 +02:00
environments/sample Created a central place for all common options to all hosts. 2026-05-20 19:42:03 +02:00
lib Initial framework: reusable modules, lib, pkgs, overlays, scripts, sample environment 2026-05-10 19:06:58 +02:00
modules Created a central place for all common options to all hosts. 2026-05-20 19:42:03 +02:00
overlays Initial framework: reusable modules, lib, pkgs, overlays, scripts, sample environment 2026-05-10 19:06:58 +02:00
pkgs Initial framework: reusable modules, lib, pkgs, overlays, scripts, sample environment 2026-05-10 19:06:58 +02:00
scripts Initial framework: reusable modules, lib, pkgs, overlays, scripts, sample environment 2026-05-10 19:06:58 +02:00
.gitignore Created a central place for all common options to all hosts. 2026-05-20 19:42:03 +02:00
default.nix Initial framework: reusable modules, lib, pkgs, overlays, scripts, sample environment 2026-05-10 19:06:58 +02:00
README.md Initial framework: reusable modules, lib, pkgs, overlays, scripts, sample environment 2026-05-10 19:06:58 +02:00

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.