Skip to content

fix(release): fork installs update from the fork's releases - #9

Closed
ScriptedAlchemy wants to merge 3 commits into
mainfrom
fix/fork-desktop-update-feed
Closed

ScriptedAlchemy wants to merge 3 commits into
mainfrom
fix/fork-desktop-update-feed

Conversation

@ScriptedAlchemy

@ScriptedAlchemy ScriptedAlchemy commented Oct 25, 2026 •

Copy link
Copy Markdown
Owner

Fork installs never updated from the fork. Desktop builds were versioned -preview, which ships no update feed. t3 update read upstream's releases. And no fork release has been published since 2026-10-20, because the Windows job fails every run.

Desktop updates (fork-release.yml)

  • Fork builds are now versioned -fork.YYYYMMDD.N on the stable channel. The build writes a provider: github feed for GITHUB_REPOSITORY, which is this fork, so installs check ScriptedAlchemy/t3code's latest release and never upstream's.
  • The release now includes latest-mac.yml, latest-linux.yml, latest.yml (renamed back from the per-arch latest-win-x64.yml) and the blockmaps.
  • The tag is now v<version> instead of fork-v<version>, so the app's "view release" link resolves.
  • secrets: inherit passes signing secrets through once they're configured.
  • A test in scripts/build-desktop-artifact.test.ts checks that a -fork version gets a stable GitHub feed for the repository that built it.

t3 update

  • packages/shared/src/cliRelease.ts now reads releases from the fork. This covers t3 update, the mobile app's server-update check, and pinned runtime downloads.
  • The fork release now publishes the SHA256SUMS file those downloads are verified against.

Release failures

  • Upstream ci(release): build Windows x64 on Linux like arm64 pingdotgg/t3code#22584 moved Windows packaging to Linux runners, with a separate Windows verify job. The fork matrix still packaged on windows-2025. There, tsdown extracts its Node zip with the first tar on PATH, which is Git Bash's GNU tar, and it fails with tar: Cannot connect to C: resolve failed.
  • The fork matrix now matches upstream: it packages on ubuntu-24.04 with verify_runner: windows-2025.

Caveats

  • macOS installs an update only when the app is signed (Squirrel.Mac checks the code signature). Unsigned fork builds will find and download updates, but the install step fails. To fix that, add the Apple secrets that release-desktop.yml reads. Windows and Linux AppImage install unsigned updates.
  • Existing -preview installs have no feed. Each one needs one manual install of a new -fork release.
  • The workflow changes only run on a push to main, so this PR's CI does not exercise them.

🤖 Generated with Claude Code (Claude Opus 5.5)

Fork builds used a -preview version, which ships no update feed, so installs
never updated. They now use a -fork version on the stable channel, so the
build writes a GitHub feed for GITHUB_REPOSITORY (this fork) and the release
carries latest*.yml manifests and blockmaps. Tags drop the fork- prefix so the
app's release links resolve, and signing secrets pass through when configured.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@changeset-bot

changeset-bot Bot commented Oct 25, 2026 •

Copy link
Copy Markdown

⚠️ No Changeset found

Latest commit: a1672b4

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

ScriptedAlchemy and others added 2 commits October 25, 2026 17:23
t3 update, remote server update checks, and pinned runtime downloads read
releases from upstream. They now read this fork's releases, and the fork
release publishes the SHA256SUMS file those downloads are verified against.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Upstream moved Windows packaging to Linux runners with a separate Windows
verify job. The fork still packaged on windows-2025, where tsdown's Node
extraction picks up Git Bash's GNU tar and fails, so every fork release
since 2026-10-20 failed before publishing.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@ScriptedAlchemy ScriptedAlchemy changed the title fix(release): fork desktop builds update from the fork's releases fix(release): fork installs update from the fork's releases Oct 26, 2026
@ScriptedAlchemy

Copy link
Copy Markdown
Owner Author

Closing: macOS update installs need a signed app (Squirrel.Mac checks the code signature), and the fork has no Apple signing set up.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant