Skip to content

Commit 10102be

Browse files
committed
docs(desktop): scope the feed fallback to self-updating builds
1 parent adf354b commit 10102be

2 files changed

Lines changed: 3 additions & 3 deletions

File tree

apps/docs/content/docs/desktop/index.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -141,7 +141,7 @@ Sim checks the deployment it is pointed at rather than a global feed. How it app
141141

142142
**Anywhere else** — outside `/Applications`, or a build not signed with a Developer ID. The app cannot replace itself, so it offers you the installer to download and swap in by hand.
143143

144-
Updates come from the deployment you are connected to, so a self-hosted install controls which build its own users are offered. That control depends on the feed staying reachable: if it is not, a stable build falls back to Sim's public GitHub releases rather than stalling. See [Desktop App on Your Deployment](/platform/self-hosting/desktop).
144+
Updates come from the deployment you are connected to, so a self-hosted install controls which build its own users are offered. That control depends on the feed staying reachable: if it is not, a self-updating stable build falls back to Sim's public GitHub releases rather than stalling. See [Desktop App on Your Deployment](/platform/self-hosting/desktop).
145145

146146
## Requirements
147147

apps/docs/content/docs/platform/self-hosting/desktop.mdx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ Every Sim deployment exposes two public endpoints:
2525
| `/api/desktop/update/download` | Redirects (302) to the newest installer for this deployment's release channel |
2626
| `/api/desktop/update/latest-mac.yml` | The update manifest installed apps poll |
2727

28-
Both resolve against Sim's public GitHub releases, and the installers themselves are downloaded from GitHub. Nothing is built, signed, or hosted by you: your deployment decides *which* release its clients are offered and serves the manifest, so installed apps poll your server instead of sim.ai — but they cannot be served artifacts of your own from this path, and they fall back to Sim's own feed if yours stops answering. To ship your own build, see [Building your own shell](#building-your-own-shell).
28+
Both resolve against Sim's public GitHub releases, and the installers themselves are downloaded from GitHub. Nothing is built, signed, or hosted by you: your deployment decides *which* release its clients are offered and serves the manifest, so installed apps poll your server instead of sim.ai — but they cannot be served artifacts of your own from this path, and a self-updating stable build falls back to Sim's own feed if yours stops answering. To ship your own build, see [Building your own shell](#building-your-own-shell).
2929

3030
Both endpoints cache their GitHub lookups for **5 minutes**, and both respond the same way when they cannot answer:
3131

@@ -39,7 +39,7 @@ The Sim server needs outbound access to `api.github.com` and `github.com` for th
3939

4040
### What an installed app does when the feed fails
4141

42-
A `404` carries a header the shell reads as *no update available*, so the app reports it is up to date. Anything else — `502`, a timeout, a connection failure — means the feed is unavailable: a **stable** build falls back to Sim's packaged GitHub feed and keeps updating from the stable channel, while a **dev or staging** build skips the check, since that fallback only carries stable artifacts their bundle identity cannot install.
42+
A `404` carries a header the shell reads as *no update available*, so the app reports it is up to date. Anything else — `502`, a timeout, a connection failure — means the feed is unavailable, and only a self-updating build (Developer ID, installed in `/Applications`) has anywhere else to go: on the stable channel it falls back to Sim's packaged GitHub feed, and on `dev` or `staging` it skips the check, since that fallback carries only stable artifacts their bundle identity cannot install. Any other build reports an update error until the feed answers again.
4343

4444
Release selection is therefore yours only while the feed answers. With `APPCONFIG_ENVIRONMENT` unset both paths resolve the same release, so the fallback is invisible; it matters when your deployment serves a channel that disagrees with stable.
4545

0 commit comments

Comments
 (0)