feat(nixos): deploy Gitea guest on Pikachu #212

Merged
alexion merged 1 commits from feat/gitea-pikachu into main 2026-10-22 19:51:51 -04:00
alexion commented 2026-10-22 16:50:17 -04:00 (Migrated from git.alexion.dev)

Summary

  • add a persistent Gitea guest on Pikachu at temporary address 10.23.20.127
  • route Git HTTP and SSH through the reverse proxy on public port 22
  • configure Gitea SSH clone URLs, trusted forwarding headers, and local SSH clients

Validation

  • nix run .#fix
  • nix build .#nixosConfigurations.pikachu.config.system.build.toplevel
  • nix build .#nixosConfigurations.zeus.config.system.build.toplevel
  • nix build .#nixosConfigurations.neogaia.config.system.build.toplevel
## Summary - add a persistent Gitea guest on Pikachu at temporary address `10.23.20.127` - route Git HTTP and SSH through the reverse proxy on public port 22 - configure Gitea SSH clone URLs, trusted forwarding headers, and local SSH clients ## Validation - `nix run .#fix` - `nix build .#nixosConfigurations.pikachu.config.system.build.toplevel` - `nix build .#nixosConfigurations.zeus.config.system.build.toplevel` - `nix build .#nixosConfigurations.neogaia.config.system.build.toplevel`
alexion commented 2026-10-22 16:51:21 -04:00 (Migrated from git.alexion.dev)

Follow-up: this PR now retains the existing Gitea LXC HTTP and SSH routes. The new Pikachu guest is declared but receives no public git.alexion.dev traffic yet.

Follow-up: this PR now retains the existing Gitea LXC HTTP and SSH routes. The new Pikachu guest is declared but receives no public `git.alexion.dev` traffic yet.
alexion commented 2026-10-22 17:01:44 -04:00 (Migrated from git.alexion.dev)

Follow-up: permit HTTP session cookies while Gitea remains off the public HTTPS route, so the initial administrator can sign in. The next follow-up restores secure cookies and disables registration.

Follow-up: permit HTTP session cookies while Gitea remains off the public HTTPS route, so the initial administrator can sign in. The next follow-up restores secure cookies and disables registration.
alexion commented 2026-10-22 17:05:38 -04:00 (Migrated from git.alexion.dev)

Follow-up: disable Gitea self-registration after initial administrator setup. HTTP bootstrap access remains enabled until the public HTTPS cutover.

Follow-up: disable Gitea self-registration after initial administrator setup. HTTP bootstrap access remains enabled until the public HTTPS cutover.
alexion commented 2026-10-22 18:54:52 -04:00 (Migrated from git.alexion.dev)

Follow-up: allow the Gitea guest to import only from the old LXC at 10.23.20.45:3000 during repository migration.

Follow-up: allow the Gitea guest to import only from the old LXC at `10.23.20.45:3000` during repository migration.
alexion commented 2026-10-22 18:56:51 -04:00 (Migrated from git.alexion.dev)

Follow-up: permit the old Gitea canonical HTTPS URL during repository migration; the source advertises git.alexion.dev even when its private address begins the migration.

Follow-up: permit the old Gitea canonical HTTPS URL during repository migration; the source advertises `git.alexion.dev` even when its private address begins the migration.
alexion commented 2026-10-22 18:59:24 -04:00 (Migrated from git.alexion.dev)

Follow-up: permit only the canonical old Gitea URL and its internal reverse-proxy address for migration. Use https://git.alexion.dev/alexion/dev.git as the source URL.

Follow-up: permit only the canonical old Gitea URL and its internal reverse-proxy address for migration. Use `https://git.alexion.dev/alexion/dev.git` as the source URL.
alexion commented 2026-10-22 19:01:40 -04:00 (Migrated from git.alexion.dev)

Follow-up: allow both HTTP and HTTPS for the old canonical Gitea host and its internal reverse-proxy address. The old API advertises http://git.alexion.dev/... as the clone URL, which redirects to HTTPS.

Follow-up: allow both HTTP and HTTPS for the old canonical Gitea host and its internal reverse-proxy address. The old API advertises `http://git.alexion.dev/...` as the clone URL, which redirects to HTTPS.

Follow-up: pin the verified Gitea RSA, ECDSA, and Ed25519 SSH host keys for managed clients.

Follow-up: pin the verified Gitea RSA, ECDSA, and Ed25519 SSH host keys for managed clients.

Follow-up: declare the Gitea HTTPS route with the Gitea guest, removing its legacy manual reverse-proxy virtual host.

Follow-up: declare the Gitea HTTPS route with the Gitea guest, removing its legacy manual reverse-proxy virtual host.

Follow-up: inline the Gitea SSH backend address because the reverse-proxy stream is its sole consumer.

Follow-up: inline the Gitea SSH backend address because the reverse-proxy stream is its sole consumer.

Follow-up: make the Gitea trusted-proxy address optional so the service module also supports direct local deployments.

Follow-up: make the Gitea trusted-proxy address optional so the service module also supports direct local deployments.

Follow-up: add Gitea to the Homepage dashboard.

Follow-up: add Gitea to the Homepage dashboard.

Squashed the pull request to one commit.

Squashed the pull request to one commit.
alexion added 1 commit 2026-10-22 19:51:33 -04:00
alexion force-pushed feat/gitea-pikachu from aa3ddf78b6 to d342370b89 2026-10-22 19:51:33 -04:00 Compare
alexion merged commit d342370b89 into main 2026-10-22 19:51:51 -04:00
alexion deleted branch feat/gitea-pikachu 2026-10-22 19:51:52 -04:00
Sign in to join this conversation.
No Reviewers
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: alexion/dev#212