feat(updates): make the in-app updater GitHub/upstream-aware for self-hosters
The Updates page checked a hardcoded bare repo (KLONKT_GIT_DIR) that only exists on
Robin's VPS fleet, so a GitHub-clone install logged 'fatal: not a git repository' and
couldn't show its version. Now it auto-detects topology: a git CHECKOUT (app dir has
.git, origin=GitHub) checks origin/<branch> (fetched on view); the BARE-repo fleet is
unchanged. git stderr is ignored so a foreign/missing repo never spams the console.
External installs can't self-update in-app (klonkt-update needs root for systemd), so
the page shows the 'sudo klonkt-update' command instead of a button. Fleet keeps the
detached-script button.
Co-Authored-By: Claude <noreply@…>