Menu

#188 fix(install): NVM node not on launchd PATH causes UI daemon to fail with 'node: command not found'

open
nobody
None
2026-06-06
2026-06-06
Anonymous
No

Originally created by: adityaharishch

Problem

install-ui-daemon.sh captures NPM_BIN=$(command -v npm) from the interactive session PATH and uses it in the plist's ProgramArguments. The plist's hardcoded PATH is /opt/homebrew/bin:/usr/local/bin:/usr/bin:/bin.

For users with Node installed via NVM (path like /Users/<user>/.nvm/versions/node/<ver>/bin/):

  • npm resolves correctly via the captured path
  • But npm run startnext start → shebang #!/usr/bin/env node fails because the launchd PATH doesn't contain the NVM node directory
  • Dashboard silently crash-loops

Fix

Capture the node binary path at install time (same as NPM_BIN) and inject it into the plist PATH or as a NODE env var. The ui-start.sh script already has this pattern (MERIDIAN_NODE_BIN) — install-ui-daemon.sh should follow the same approach for the dev plist.

Discussion


Log in to post a comment.