This repository has been archived on 2026-09-17. You can view files and clone it, but you cannot make any changes to its state, such as pushing and creating new issues, pull requests or comments.
nixos-config/hosts/pinix/localServices/README.md
pijukka 823af825f4 host(pinix): add personal git server on pinix's own tailnet
pinix's Headscale now allocates its own range (100.96.0.0/24,
fd7a:115c:a1e0:96::/64). The pinix-dns namespace node forwards exactly
TCP 443 to a new Traefik web-internal entrypoint on the veth host side
(:8443, websecure untouched) and TCP 22 to sshd. unbound-pinix answers
git.lukasrosier.com (AAAA only), distributed via split DNS for that name
only.

gitserver/: cgit via services.cgit, reduced to reading and snapshot
downloads, built without its Python filters; git@ with git-shell and a
from= restricted key. Verified from tnix's pinixnet namespace (DNS,
HTTPS, snapshot, ls-remote, push) and refused from the public IPv6,
the blunix tailnet and the LAN.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JGodmgtRqahbT52gApsM8N
2026-09-14 12:55:11 +02:00

28 lines
1.7 KiB
Markdown

# pinix services
Imported from `default.nix`; each file/subfolder documents its own service
in more depth where that's non-obvious (`calendar/README.md`,
`prosody/README.md`).
| File/dir | Service |
| --- | --- |
| `forgejo.nix` | Git hosting (`git.${domain}`) |
| `calendar/` | Radicale (CalDAV) + read-only frontend, see its own README |
| `phanpy.nix` | Mastodon web client for GoToSocial |
| `gotosocial.nix` | ActivityPub/Fediverse server |
| `prosody/` | XMPP server, see its own README |
| `xmpp-web.nix` | Web-based XMPP client |
| `webdav.nix` | WebDAV (port 8012) + SMB (port 445, tailnet-only, for the iOS/iPadOS Files app) file share |
| `fileserver-internal.nix` | Internal-only file serving |
| `dashboard.nix` | Backend for the `dashboard` service dashboard |
| `website.nix` | Static site preview server |
| `webhook.nix` | Forgejo push webhook receiver (chat notifications, auto-pull for the frontend repos) |
| `tailscale.nix`, `restic.nix`, `secrets.nix`, `packages.nix` | Host plumbing, not user-facing services |
| `gitserver/` | Personal git server: cgit (read + snapshot download) and SSH for `git@`, reachable only inside pinix's own tailnet; see `docs/intent/gitserver-pinix.md` |
| `tailnet-dns.nix` | Namespace node of pinix's own tailnet: `unbound-pinix`, split DNS, forwarding of 443/22 to the host |
| `dex.nix`, `headscale.nix` | Parallel pinix identity/control-plane stack under `domain2`; bootstrap notes in `docs/pinix-identity-stack.md` |
`vikunja.nix` exists but is commented out of `default.nix` (disabled
29.07.2026, superseded by the `agent@` XMPP inbox; data untouched on disk).
`mazanoke.nix` also exists but was never added to `default.nix` at all —
dead config, not currently deployed anywhere.