v1.3.2
2026-07-23
latest
● stable
What changed
Fixed
- **HTTPS installs now set `[server] LOCAL_ROOT_URL`, fixing ssh pushes on Gitea 1.27+.** `gitea serv` (spawned per SSH request) calls Gitea's internal API through `LOCAL_ROOT_URL`; left unset it defaults to `https://localhost:<port>/`, and an https-acme or https-manual certificate is bound to the real domain, not `localhost` — that internal TLS handshake then fails and `git push`/`pull` over SSH die with "Internal Server Connection Error" (Gitea 1.26 tolerated the mismatch; 1.27 tightened the internal TLS path). Found live in production after a 1.26.4 → 1.27.0 upgrade on an https-direct/ACME host. `gitea install --serving https-acme|https-manual` and `gitea enable-https` now write `LOCAL_ROOT_URL` equal to `ROOT_URL` automatically; `behind-proxy` installs are untouched (Gitea's own `http://localhost:3000` default there is already correct). `gtcnsl doctor` gained a WARN-level probe (never FAIL) for existing https installs it did not touch, naming the fix: `gtcnsl config set server.LOCAL_ROOT_URL <ROOT_URL> --yes`.
- **`gtcnsl backup` no longer fails outright on a runner-only host.** A host that only carries `gitea-runner` (no Gitea installed at all — a real, common shape for a dedicated runner box) used to fail with "core: /usr/local/bin/gitea is required for a backup but is missing". The Gitea binary and `app.ini` are now required only when a live Gitea install is actually detected on this host; if it is not, they are skipped with a warning, the same way runner items already were when Gitea was present but the runner was not. A host where neither Gitea nor a runner is detected still fails, with a clear "nothing to back up on this host" message, instead of writing an empty backup. `gtcnsl restore` gained the symmetric fix: restoring a runner-only backup no longer stops, starts, or health-checks `gitea.service` — on a runner-only host that unit is typically not even installed.
Download
Pick your architecture. Direct links point at the release assets.
$ curl -fsSL https://dl.gtcnsl.com/v1.3.2/gtcnsl-v1.3.2-linux-amd64 -o /usr/local/bin/gtcnsl && chmod +x /usr/local/bin/gtcnsl
i
Verify
Compare against the checksum manifest before you run anything.
checksums.txt