Add NixOS configuration for ringtail workstation #207

Merged
eblume merged 4 commits from feature/ringtail-nixos into main 2026-02-18 08:24:26 -08:00
Owner

Summary

  • NixOS flake for ringtail (gaming/compute workstation, RTX 4080) in nixos/ringtail/
  • Declarative disk partitioning via disko (GPT, 512M EFI + ext4 root on NVMe)
  • NVIDIA proprietary drivers, sway/Wayland desktop, greetd, PipeWire, Steam
  • Tailscale integration for tailnet connectivity
  • Ansible playbook + mise run provision-ringtail for ongoing management
  • Pulumi auth key (tag:homelab, tag:blumeops) for tailnet bootstrap

Deployment Order

  1. Merge PR
  2. pulumi up in tailscale stack → creates auth key
  3. Retrieve auth key: pulumi stack output ringtail_authkey --show-secrets
  4. On ringtail NixOS installer:
    • nix run github:nix-community/disko -- --mode disko /tmp/disk-config.nix (or from cloned repo)
    • nixos-install --flake github:eblume/blumeops?dir=nixos/ringtail#ringtail
  5. Reboot, tailscale up --auth-key=<key>
  6. Verify: tailscale status, SSH from gilbert

Test plan

  • Review NixOS configuration for completeness
  • Verify disko partition layout matches ringtail hardware
  • Run pulumi preview for tailscale stack
  • Install NixOS on ringtail
  • Confirm tailscale connectivity
  • Confirm sway desktop works
  • Test mise run provision-ringtail for ongoing management

🤖 Generated with Claude Code

## Summary - NixOS flake for ringtail (gaming/compute workstation, RTX 4080) in `nixos/ringtail/` - Declarative disk partitioning via disko (GPT, 512M EFI + ext4 root on NVMe) - NVIDIA proprietary drivers, sway/Wayland desktop, greetd, PipeWire, Steam - Tailscale integration for tailnet connectivity - Ansible playbook + `mise run provision-ringtail` for ongoing management - Pulumi auth key (`tag:homelab`, `tag:blumeops`) for tailnet bootstrap ## Deployment Order 1. **Merge PR** 2. `pulumi up` in tailscale stack → creates auth key 3. Retrieve auth key: `pulumi stack output ringtail_authkey --show-secrets` 4. On ringtail NixOS installer: - `nix run github:nix-community/disko -- --mode disko /tmp/disk-config.nix` (or from cloned repo) - `nixos-install --flake github:eblume/blumeops?dir=nixos/ringtail#ringtail` 5. Reboot, `tailscale up --auth-key=<key>` 6. Verify: `tailscale status`, SSH from gilbert ## Test plan - [ ] Review NixOS configuration for completeness - [ ] Verify disko partition layout matches ringtail hardware - [ ] Run `pulumi preview` for tailscale stack - [ ] Install NixOS on ringtail - [ ] Confirm tailscale connectivity - [ ] Confirm sway desktop works - [ ] Test `mise run provision-ringtail` for ongoing management 🤖 Generated with [Claude Code](https://claude.com/claude-code)
Scaffolds a NixOS flake for ringtail (gaming/compute workstation, RTX 4080):
- Declarative disk partitioning via disko (GPT, EFI + ext4 on NVMe)
- NVIDIA proprietary drivers with CUDA support
- Sway/Wayland desktop with greetd, PipeWire audio, Steam
- Tailscale for tailnet connectivity
- Ansible playbook + mise task for ongoing provisioning via nixos-rebuild
- Pulumi auth key for tailnet bootstrap (tag:homelab, tag:blumeops)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Temporary bootstrap password for console login. Change with passwd
after first boot, then remove initialPassword from config.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- /dev/nvme0n1 (954G): root + EFI (unchanged)
- /dev/sda (932G): /mnt/games (Steam library)
- /dev/sdb (466G): /mnt/storage1
- /dev/sdc (119G): /mnt/storage2

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
eblume merged commit b9d813cde1 into main 2026-02-18 08:24:26 -08:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
eblume/blumeops!207
No description provided.