mirror of
https://github.com/ewanc26/nix-starter.git
synced 2026-07-21 15:33:20 +00:00
Mirror of github.com/ewanc26/nix-starter
- Nix 100%
| hosts | ||
| .pre-commit-config.yaml | ||
| AGENTS.md | ||
| flake.lock | ||
| flake.nix | ||
| LICENSE | ||
| README.md | ||
nix-starter
https://github.com/ewanc26/nix-starter
Beginner-friendly, self-contained NixOS configurations.
No personal infrastructure, no shared abstractions — just plain NixOS.
🧶 Also available on Tangled
Hosts
| Host | Description |
|---|---|
as-the-gods-intended |
Minimal TUI laptop, optional KDE Plasma desktop |
server |
Hardened server — AT Protocol PDS + Mastodon via Cloudflare Tunnel |
Structure
flake.nix — top-level flake, wires up all hosts
hosts/
├── as-the-gods-intended/
│ ├── default.nix — system config (boot, networking, packages)
│ ├── home.nix — user config (shell, editor, tools)
│ ├── hardware-configuration.nix — generated per-machine, replace before install
│ └── README.md — full setup guide for that host
└── server/
├── default.nix — host skeleton (boot, networking, SSH, nginx, nix)
├── hardware-configuration.nix — generated per-machine, replace before install
├── README.md — full setup, secrets, and tunnel guide
└── modules/
├── cloudflare-tunnel.nix — outbound tunnel, ingress rules for both services
├── pds.nix — bluesky-pds + nginx vhost
└── mastodon.nix — Mastodon + nginx vhost overrides
Adding a new host
- Copy an existing host directory as a starting point:
cp -r hosts/as-the-gods-intended hosts/my-new-host - Update
networking.hostName, the username, and the hardware config. - Add an entry to
flake.nixundernixosConfigurations. - Follow the setup guide in the new host's
README.md.
Resources
- NixOS manual: https://nixos.org/manual/nixos/stable
- Package search: https://search.nixos.org/packages
- Home Manager options: https://nix-community.github.io/home-manager/options.xhtml
- NixOS Discourse: https://discourse.nixos.org