Conversation
- release.yml: build matrix expands to four targets (darwin x2 plus x86_64/aarch64-unknown-linux-gnu) on native runners; release notes add a Linux requirements section. - npm: add @openkeyring/ok-linux-x64 and -arm64 subpackages, open the main wrapper os to linux, and wire linux platform dispatch in ok.js plus target mapping in stage-binaries.sh. - docs: declare Linux (glibc 2.35+) support across README and INSTALL (bilingual), SECURITY, THREAT_MODEL, SUPPORT, CONTRIBUTING, CHANGELOG, and RELEASE; add mlock/RLIMIT_MEMLOCK install guidance to INSTALL. Co-Authored-By: GLM-5.2 <service@bigmodel.cn>
Extend the stage-binaries fixture (archives, fake tar handler, and assertions) to the two new linux targets (x86_64/aarch64-unknown-linux-gnu), matching the npm ok-linux-* subpackages wired in the previous commit. Without this the new stage_binary calls would fail to find a fixture archive and exit non-zero. Co-Authored-By: GLM-5.2 <service@bigmodel.cn>
checkout@v4 runs on Node.js 20, which GitHub now forces to Node 24 and flags with a deprecation warning. v5 runs on Node 24 natively. Drop-in replacement across ci.yml and release.yml (4 occurrences). Co-Authored-By: GLM-5.2 <service@bigmodel.cn>
Drop-in replacement (Node 24 runtime). Two occurrences in release.yml (build job artifact upload + checksums upload). Co-Authored-By: GLM-5.2 <service@bigmodel.cn>
Completes the GitHub Actions v5 migration in release.yml: download-artifact (4 uses) and setup-node (1 use). All first-party actions now run on Node 24; no Node 20 deprecation remains. Co-Authored-By: GLM-5.2 <service@bigmodel.cn>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Adds Linux x86_64/ARM64 (glibc 2.35+) release support across the release pipeline, distribution channels, and documentation. Source code is already Linux-ready (CI has compiled/tested on ubuntu-latest all along); this closes the distribution gap.
Changes
Release pipeline (
.github/workflows/release.yml)x86_64-unknown-linux-gnu+aarch64-unknown-linux-gnu, each on a native runner (ubuntu-22.04 / ubuntu-22.04-arm) — no cross-compilationDistribution (
npm/)@openkeyring/ok-linux-x64,@openkeyring/ok-linux-arm64osopened tolinux; platform dispatch inbin/ok.js; target mapping instage-binaries.shDocs (bilingual README/INSTALL + SECURITY/THREAT_MODEL/SUPPORT/CONTRIBUTING/CHANGELOG/RELEASE)
## Linux Memory Lockingsection (ulimit / limits.conf / systemd LimitMEMLOCK / setcap)Cross-repo (already pushed to
homebrew-oak-keyring, commitab1ad37)on_linuxblock added for Linuxbrew (sha256 are all-zero placeholders until the first Linux release ships)CI housekeeping
actions/checkoutbumped v4 → v5 (drops the Node.js 20 deprecation warning)stage_binaries_test.shextended to cover the two linux targetsVerification
v0.8.0-preview.2-rc.1(since cleaned up): all 4 build jobs succeeded, including aarch64-unknown-linux-gnu first-ever compile;ubuntu-22.04-armrunner works; OAuth secrets reach ubuntu runners;checksums.txthas 4 entries; GitHub Release created as pre-release with 4 tar.gzalphaqiu); publish-npm correctly held for approval — no npm package published during the testBefore merge / first release
on_linuxblock fromchecksums.txtKnown issue (unrelated, tracked separately)
tests/e2e/sync_lifecycle_test.rs:671sync_download_restores_encrypted_private_cloud_metadatais a pre-existing flaky timing-race test (pending vs synced). Same-code rerun passes. Not introduced by this PR; to be fixed independently.Generated with ZHIPU AI