# 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.