Translate 8 documentation files from German to English: - docs/index.md (complete) - docs/getting-started/first-install.md (complete) - docs/getting-started/new-client.md (complete) - docs/getting-started/reinstall.md (complete) - docs/getting-started/sd-image.md (complete) - docs/deployment/dns.md (PTR, Hetzner, checklist sections) - docs/services/tailscale.md (code comments) - docs/services/forgejo.md (placeholder names)
3.4 KiB
3.4 KiB
Cryodev NixOS Configuration Documentation
Welcome to the documentation for the cryodev NixOS infrastructure.
Quick Links
Getting Started
- Prerequisites - Required tools
- Adding a New Raspberry Pi - Complete workflow for new clients
- SD Image Reference - Details on image building
- First Installation (Server) - Bootstrap for x86_64 hosts
- Reinstallation - Reinstall with hardware changes
Services
- SOPS Secrets - Secret management with sops-nix
- Headscale - Self-hosted Tailscale server
- Headplane - Web UI for Headscale
- Tailscale - Mesh VPN client
- Mailserver - Email stack (Postfix/Dovecot)
- Forgejo - Git hosting with CI/CD
- Netdata - Monitoring and alerting
Deployment
- Continuous Deployment - Push- and pull-based deployment
- DNS Configuration - Required DNS records
Architecture
Internet
|
cryodev.xyz
|
+-------------------+
| cryodev-main |
| (x86_64 Server) |
+-------------------+
| - Headscale |
| - Headplane |
| - Forgejo |
| - Mailserver |
| - Netdata Parent |
+-------------------+
|
Tailscale Mesh VPN
|
+-------------------+
| cryodev-pi |
| (Raspberry Pi 4) |
+-------------------+
| - Tailscale |
| - Netdata Child |
| - Comin (GitOps) |
+-------------------+
Installation Scenarios
| Scenario | Description | Guide |
|---|---|---|
| New Raspberry Pi | Create config, build image, flash | new-client.md |
| First Installation (Server) | x86_64 host, manual installation | first-install.md |
| Reinstallation | Existing host, new hardware | reinstall.md |
For Raspberry Pi: SD Image Reference
Directory Structure
.
├── flake.nix # Entry point, inputs and outputs
├── constants.nix # Central configuration (domains, IPs, ports)
├── hosts/ # Host-specific configurations
│ ├── cryodev-main/
│ └── cryodev-pi/
├── modules/ # Reusable NixOS modules
│ └── nixos/
├── pkgs/ # Custom packages
├── overlays/ # Nixpkgs overlays
├── templates/ # Templates for new hosts
├── scripts/ # Helper scripts (install.sh)
├── apps/ # Nix apps (rebuild)
└── lib/ # Helper functions (utils.nix)
Deployment Strategies
| Host | Strategy | Tool | Description |
|---|---|---|---|
cryodev-main |
Pull-based | Comin | Polls the repository for changes |
cryodev-pi |
Pull-based | Comin | Polls the repository for changes |