feat(install): install.sh installs the Rust lksr binary (P10) - #93
Draft
qdang46 wants to merge 1 commit into
Draft
feat(install): install.sh installs the Rust lksr binary (P10)#93qdang46 wants to merge 1 commit into
qdang46 wants to merge 1 commit into
Conversation
The latest GitHub release (v0.1.0-rust) is now Rust-only — install.sh still
downloaded the legacy Python zip (lks-${os}-${arch}.zip) and failed against it
("Release v0.1.0-rust missing asset lks-linux-x64.zip"). Rewrite install.sh to
install the SHA256-verified Rust lksr binary:
- asset_name() maps macos/linux + x86_64/aarch64 -> lksr-${os}-${arch}.tar.gz
- install_binary() downloads the tarball + SHA256SUMS.txt, verifies the
checksum (sha256sum -> shasum fallback, fails loud on mismatch), extracts the
flat tarball, installs to $DEST/lksr (or $INSTALL_ROOT/current/lksr with a
$DEST symlink when INSTALL_ROOT is set)
- drops the Python portable-pack dance (unzip, repair_nested_portable_layout,
python encodings check, lks-mcp shim symlinks)
- preserves every flag: DEST, INSTALL_ROOT, LK_SIM_REF, --version/--ref,
--from-git, --no-mcp, --easy-mode, --verify (now --version + guide), --quiet,
--uninstall, lock/trap, and the 5-target MCP provider JSON merge
- MCP entry points at $DEST/lksr with args ["mcp"] (MCP lives in the binary)
Folds in install-rust.sh (redundant, undocumented, lacked sha256/MCP/easy-mode)
and deletes it per AGENTS.md no-legacy-paths. Windows stays on the Python
install.ps1 (no Rust Windows binary shipped yet). Updates README.md and
docs/guide/installation.md to the lksr install path and adds a post-release
install-smoke job to release.yml.
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.
What
The latest GitHub release (
v0.1.0-rust) is now Rust-only (shipslksr-linux-x86_64.tar.gz,lksr-macos-aarch64.tar.gz,SHA256SUMS.txt). The primary documented installerinstall.shstill downloaded the legacy Python zip and failed against it (Release v0.1.0-rust missing asset lks-linux-x64.zip). This rewritesinstall.shto install the SHA256-verified Rustlksrbinary.Changes
install.sh(rewrite) — installs the Rustlksrbinary:asset_name()→lksr-${os}-${arch}.tar.gz(macos/linux + x86_64/aarch64)install_binary()→ download tarball +SHA256SUMS.txt, verify checksum (sha256sum→shasumfallback, fails loud on mismatch), extract flat tarball, install to$DEST/lksr(or$INSTALL_ROOT/current/lksr+ symlink when set)lks-mcpshims)DEST,INSTALL_ROOT,LK_SIM_REF,--version/--ref,--from-git,--no-mcp,--easy-mode,--verify(now--version+guide),--quiet,--uninstall, lock/trap, 5-target MCP JSON merge$DEST/lksrargs: ["mcp"](MCP lives inside the binary)install-rust.shdeleted — folded intoinstall.sh(was redundant, undocumented, lacked sha256/MCP/easy-mode). AGENTS.md no-legacy-paths.install.ps1unchanged — Windows stays on the Python build (no Rust Windows binary shipped yet; documented).lksrinstall path,lksr mcp, flags, and Windows note. All curl URLs unchanged.install-smokejob to release.yml (runsinstall.sh --ref <tag> --verify --no-mcpon ubuntu, assertslksr --version+lksr guide).Verification
bash -n install.sh— syntax OKv0.1.0-rustrelease: asset URL resolution, tarball+SHA256SUMS download, SHA256 match (7c98aadf...), flat-tarball extraction →lksrbinary, tampered-hash fail-loudasset_name()correctly dies on Windows/MINGW pointing to install.ps1Beads
Closes
livekit-agent-simulator-rust-full-port-f8k.12(P10 — Packaging: install.sh adaptation). Windows Rust binary remains deferred per plan research §1.6.Honest limitation
Full end-to-end install could not be run on this Windows host (install.sh is macOS/Linux-only by design). The download/checksum/extract path was validated against the live release; the CI install-smoke job will exercise the real binary on ubuntu.