Skip to content

feat(integration-builds): add Linux x64 installation packages - #61

Merged
Fartown merged 6 commits into
fork/integrationfrom
feat/integration-linux-builds
Oct 22, 2026
Merged

Fartown merged 6 commits into
fork/integrationfrom
feat/integration-linux-builds

Conversation

@Fartown

@Fartown Fartown commented Oct 22, 2026 •

Copy link
Copy Markdown
Owner
Files Added Deleted Net
Test 6 $\color{#1a7f37}{\Huge{\mathbf{+}}}$​141 $\color{#cf222e}{\Huge{\mathbf{−}}}$​14 $\color{#1a7f37}{\Huge{\mathbf{+}}}$​127
Prod 11 $\color{#1a7f37}{\Huge{\mathbf{+}}}$​167 $\color{#cf222e}{\Huge{\mathbf{−}}}$​19 $\color{#1a7f37}{\Huge{\mathbf{+}}}$​148

ELI5

Fork releases currently provide macOS and Android packages, so Linux users install upstream Orca and miss the fork's changes. This adds a Linux x64 AppImage from the same commit and version as the other packages.

What Changed

  • Add a Linux build job using the existing native helper and packaging hooks, with the existing glibc 2.31 verification. Publishing waits for Linux as well as macOS and Android.
  • Publish the AppImage, latest-linux.yml and checksums. Keep Linux metadata in optional linuxAssets because older clients reject unfamiliar names in assets.
  • Route marked Linux x64 builds to the fork update feed. Existing Mac/Android manifests remain readable; unsupported Linux architectures do not receive an x64 update.
  • Use GitHub-hosted PR and cache runners in Fartown/orca while preserving upstream Blacksmith choices and every required check.

Why

This extends the existing integration release process and upstream Linux packager. It avoids a separate build pipeline and preserves older clients.

Linked Issue

REQ-413 and TC-414 in docs/issue/集成分支自动出包.

Visual Proof

N/A — packaging and update-source selection; no layout change.

Testing

  • Combined Linux integration and CI contracts after merging the latest integration branch: 370 passed, 1 platform probe skipped.
  • Mobile integration checks: 21 passed.
  • Full pnpm tc, three localization gates, repository-wide formatting, 17 architecture policies, and fork registry/docs passed. The CI quality/type-aware/React Doctor checks against the full fork diff passed.
  • Merged-release build 39786857586: Linux x64, macOS arm64, Android and publication all passed. Linux CLI/native/ELF/glibc checks passed. Android passed after retrying a corrupted NDK download.
  • Downloaded orca-linux.AppImage from the published 1.4.214-preview.54 Release. Verified GitHub asset digests, SHA256SUMS, package version and merged commit 0adbdab8c17582a665a0c943f566e87f94b48494. AppImage SHA256: 175c40dc1f2dadaf22ec0e605e2ead034e5c28f8a55d0610c510ec5872d7eb84.
  • Actual Linux feed resolution returns that published version and commit.
  • Actual package validated through SSH into an isolated container with root-run sshd: version/help, headless service, /web-index.html HTTP 200, CLI status and worktree listing passed.
  • Overwrote the original installation at .local/opt/orca with the published preview.54 package and restarted the existing 6768 service. Runtime and CLI report preview.54; all 3 workspaces, 5 terminal tabs and the existing terminal daemon were retained. No new backup was created.
  • Headless Chromium against the running installed web frontend: workspace selection, terminal rendering, settings opening, and the current Codex session's keyboard toggle to Chat View with rendered history passed; no browser page errors.
  • Existing-session functional gaps remain: terminal context menu lacks the Chat View entry; the restored historical tab has no provider-session binding and shows an empty chat, although an explicit transcript read succeeds.

AI Disclosure

Implemented with Codex.

Review

Self-reviewed the manifest compatibility boundary, package completeness, architecture selection and URL adaptation for Electron fetch.

Agent skill upstream boundary

  • Not applicable; no skill-installer code or data copied.

Notes

Linux arm64 and Windows packages are outside this change. Extracted Linux headless installations require manual replacement; publishing a feed alone does not add a Linux service-update supervisor.

The running installation uses the published preview.54 Release package from this PR's merge commit. This PR is merged into fork/integration at 0adbdab8c17582a665a0c943f566e87f94b48494. Local validation on the resolved merge passed as listed above. All latest remote PR workflows now pass, including the full unit workflow, Mobile Checks, Headless Node server, fork packaging, platform caches, and WSL E2E after retrying an infrastructure timeout. No checks were disabled or marked successful manually.

The integration release build and publication are complete. Post-install web checks were repeated on the published package. The remote update dialog correctly shows preview.54 and Manual update; automatic service replacement is not supported by this Linux headless install.

Checklist

  • Small and focused; before/after behavior and mechanism explained.
  • Cross-platform, SSH/remote and older-client effects considered.
  • Actual package startup and original-location replacement verified.
  • Complete functional acceptance, including restored-session Chat View.
  • Full remote PR workflow and aggregate complete successfully.
  • Merge into fork/integration.
  • Publish all platform packages from the merged integration commit.

@Fartown
Fartown merged commit 0adbdab into fork/integration Oct 22, 2026
31 checks passed
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