fix: support UWF_HERMES_BIN env var for hermes binary path
CI / check (pull_request) Successful in 3m28s
CI / check (pull_request) Successful in 3m28s
Replace hardcoded HERMES_COMMAND constant with resolveHermesCommand() that checks UWF_HERMES_BIN first, falling back to 'hermes' via PATH. This fixes environments where hermes is installed in a venv or non-standard location that isn't in the non-login shell PATH (e.g. ~/.local/bin symlink only available in login shell). Refs #134
This commit is contained in:
@@ -12,7 +12,11 @@ const OWN_VERSION = (
|
||||
}
|
||||
).version;
|
||||
|
||||
const HERMES_COMMAND = "hermes";
|
||||
/** Resolve hermes binary: `UWF_HERMES_BIN` override → default `"hermes"` via PATH. */
|
||||
function resolveHermesCommand(): string {
|
||||
const override = process.env.UWF_HERMES_BIN;
|
||||
return override !== undefined && override !== "" ? override : "hermes";
|
||||
}
|
||||
const PROTOCOL_VERSION = 1;
|
||||
|
||||
type JsonRpcResponse = {
|
||||
@@ -271,7 +275,8 @@ export class HermesAcpClient {
|
||||
return;
|
||||
}
|
||||
|
||||
const child = spawn(HERMES_COMMAND, ["acp"], {
|
||||
const hermesCommand = resolveHermesCommand();
|
||||
const child = spawn(hermesCommand, ["acp"], {
|
||||
env: process.env,
|
||||
shell: false,
|
||||
stdio: ["pipe", "pipe", "pipe"],
|
||||
|
||||
Reference in New Issue
Block a user