dotfiles/nixos
DannyDannyDanny d0e9b3f907 phantom-ship + vps-relay: Forgejo on git.dannydannydanny.me
Phase 1 of the de-platform-from-GitHub roadmap (vimwiki/diary/2026-05-03.md).

- phantom-ship: services.forgejo bound to 0.0.0.0:3000, sqlite, lfs on,
  registration disabled, sign-in required.
- phantom-ship: add :3000 to the existing zt+ allowedTCPPorts list
  (joins shelfish/scuttle — never exposed on WAN/Wi-Fi).
- vps-relay: Caddy vhost git.dannydannydanny.me reverse-proxies over
  ZT to phantom-ship:3000.

Manual steps before reachable:
1. GoDaddy A record git.dannydannydanny.me -> 89.167.39.251
2. clan machines update phantom-ship && clan machines update vps-relay
3. On phantom-ship: bootstrap admin (registration is disabled)
2026-05-04 21:35:03 +02:00
..
home/danny chore(flake): bump clan-community fork (dm-send-deploy narHash skip) 🔖 2026-04-20 20:06:08 +02:00
hosts phantom-ship + vps-relay: Forgejo on git.dannydannydanny.me 2026-05-04 21:35:03 +02:00
pkgs/hara-gmail-mcp hara-gmail-mcp: add mark_read and archive tools (v0.2.0) 2026-05-03 07:14:42 +02:00
disko-cloud.nix fix(vps-relay): switch to GRUB/BIOS — Hetzner Cloud is not UEFI 🧷 2026-04-24 16:05:27 +02:00
disko-server.nix Add NixOS server installer USB (disko LUKS + WiFi, hostname prompt) 2026-03-08 16:16:25 +01:00
fish.nix refactor(nix): move flake to repo root 🚚 2026-04-19 15:19:59 +02:00
installer-iso.nix Add NixOS server installer USB (disko LUKS + WiFi, hostname prompt) 2026-03-08 16:16:25 +01:00
neovim.nix fix(neovim): set withRuby and withPython3 explicitly to false 🔇 2026-04-19 13:48:25 +02:00
ollama.nix feat: add ollama 💩 2025-10-26 19:48:17 +01:00
readme.md docs: update stale dotfiles/nixos flake paths 📝 2026-04-20 20:28:05 +02:00
server-configuration-with-flakes.nix Rename nixos-server to sunken-ship 2026-03-01 12:44:28 +01:00
server-install-configuration.nix Rename nixos-server to sunken-ship 2026-03-01 12:44:28 +01:00
wsl.conf chore: remove wsl.conf 2025-09-09 15:24:51 +02:00

NixOS modules

Host-specific NixOS and home-manager modules live under this dir:

  • hosts/<machine>.nix + hosts/<machine>-hardware.nix
  • home/danny/home.nix (home-manager)
  • fish.nix, neovim.nix, ollama.nix, installer-iso.nix, disko-server.nix

The flake itself (flake.nix, flake.lock, flake-modules/, lib/, modules/, sops/, vars/) lives at the repo root, not here. See CLAUDE.md at the repo root for rebuild commands, clan.lol operations, and the dotfiles-rebuild timer.

Quick rebuild reference

# macOS
cd ~/dotfiles && darwin-rebuild switch --flake .

# WSL
sudo nixos-rebuild switch --flake ~/dotfiles#wsl

# Servers (via clan from mac)
nix run git+https://git.clan.lol/clan/clan-core#clan-cli -- \
  machines update sunken-ship --flake ~/dotfiles

Server bootstrap (one-time)

nix run --extra-experimental-features "nix-command flakes" nixpkgs#git -- \
  clone https://github.com/DannyDannyDanny/dotfiles.git /tmp/dotfiles
sudo mv /tmp/dotfiles /etc/dotfiles
sudo nixos-rebuild switch --flake /etc/dotfiles#sunken-ship \
  --option accept-flake-config true

If the daemon doesn't have flakes: copy server-configuration-with-flakes.nix to /etc/nixos/configuration.nix, sudo nixos-rebuild switch, then build the flake.

SSH keys (not in repo): scp ~/.ssh/*.pub danny@server:/tmp/, then on server mkdir -p ~/.ssh; cat /tmp/*.pub >> ~/.ssh/authorized_keys. See docs/ssh-and-secrets.md.

No git in PATH: sudo nix run nixpkgs#git -- -C /etc/dotfiles pull origin main.