Repository navigation
2.5.1: native Windows install - #11
Merged
Merged
Conversation
…cmd shims, USERPROFILE The first Windows user saw "Failed to install" for all seven tools with nothing streamed: every install spawned /bin/bash, which Windows does not have. Behind it: `which` (absent) made every tool look missing, npm's .cmd shims cannot be spawned without a shell, HOME is unset so ~/Data became the relative path "Data", winget stopped on agreement prompts, and a tool it installed stayed off PATH for the rest of the run. All spawning now goes through src/lib/exec.ts; a guard test fails if /bin/bash, `which`, or `process.env.HOME ||` reappear elsewhere. A windows-latest workflow runs the real paths, since nothing here ever executed on Windows before. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01GSzwHUALnUZdoW7v21dDtr
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01GSzwHUALnUZdoW7v21dDtr
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01GSzwHUALnUZdoW7v21dDtr
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.
The first Windows user got
✗ Failed to installfor all seven tools, with nothing streamed. Every install spawned/bin/bash, which doesn't exist on Windows.Fixed in the same pass, because each one alone would still have broken the install:
which→where. Without it every tool looked missing, so init tried to install node from inside a running node..cmdshims are spawned through a shell. Node refuses them otherwise (CVE-2024-27980).<prefix>\x.cmd, not<prefix>/bin/x.HOMEis unset on Windows, so~/Dataresolved to the relative pathData. It now falls back toUSERPROFILE..claudeis created as a junction (no admin needed), the venv interpreter isScripts\python.exe, andpythonis added as an interpreter candidate.All spawning now goes through
src/lib/exec.ts. On macOS and Linux it's a passthrough. A guard test fails if/bin/bash,whichorprocess.env.HOME ||show up anywhere else.Verified on
windows-latest(new workflow). The run removesHOMEto match a real user's machine, then checks:whereresolutionnpm.cmdshim runscmd.exehandles&&npm install -g @plur-ai/mcpthroughrunShell, and the binary is found afterwardsdoctordetects git, node and pythonNot verified: a winget install itself, and a full
datacore initend to end on Windows.🤖 Generated with Claude Code
https://claude.ai/code/session_01GSzwHUALnUZdoW7v21dDtr