Claude/fix local environment s ey3k#659
Conversation
Add detection for VMware SVGA virtual GPU via lspci on Linux so that NemoClaw reports the virtual GPU when running inside a VMware VM with 3D acceleration enabled, instead of falling through to "No GPU detected". Reports nimCapable: false and routes to cloud inference. https://claude.ai/code/session_01LVtjAnsaQcDuV9YaoGzoBR
Login shells (bash -lc) source /etc/profile and prepend system paths (e.g. /opt/node22/bin) before the inherited PATH, causing the real npm/node to be used instead of test stubs. This broke 5 tests in install-preflight. Switching to bash -c preserves the caller's PATH. The main script already calls ensure_nvm_loaded and exports PATH before any subshell is spawned, so nvm-installed Node.js remains discoverable in bash -c subshells. https://claude.ai/code/session_01LVtjAnsaQcDuV9YaoGzoBR
📝 WalkthroughWalkthroughThe changes add VMware SVGA virtual GPU detection for Linux environments and update related onboarding logic to handle this GPU type, while also modifying shell invocation flags in installation scripts from login mode to non-login mode execution. Changes
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~20 minutes Poem
🚥 Pre-merge checks | ✅ 1 | ❌ 2❌ Failed checks (1 warning, 1 inconclusive)
✅ Passed checks (1 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@bin/lib/nim.js`:
- Around line 80-87: The VMware GPU stub currently returns a non-null object
which makes downstream checks like gpuEnabled: !!gpu evaluate true; change the
behavior so non-NIM VMware/cloud setups don't produce a truthy gpu object—either
return null for the gpu value when nimCapable is false or update the gpuEnabled
computation to use gpu.nimCapable (e.g., compute gpuEnabled = !!gpu &&
!!gpu.nimCapable). Locate the return in bin/lib/nim.js that creates the VMware
object (the block returning type: "vmware", nimCapable: false) and implement one
of these fixes so gpuEnabled is derived from gpu.nimCapable rather than the
presence of the object.
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
Run ID: 4adb4ca1-7d6b-4ae1-afaa-250d04922bf9
📒 Files selected for processing (3)
bin/lib/nim.jsbin/lib/onboard.jsinstall.sh
|
Please reciprocate |
|
Please update this PR with a summary, thanks! |
Summary
Related Issue
Changes
Type of Change
Testing
make checkpasses.npm testpasses.make docsbuilds without warnings. (for doc-only changes)Checklist
General
Code Changes
make formatapplied (TypeScript and Python).Doc Changes
update-docsagent skill to draft changes while complying with the style guide. For example, prompt your agent with "/update-docscatch up the docs for the new changes I made in this PR."Summary by CodeRabbit
New Features
Bug Fixes