diff options
| author | Luke Parker <[email protected]> | 2025-12-04 03:21:13 +1000 |
|---|---|---|
| committer | GitHub <[email protected]> | 2025-12-03 11:21:13 -0600 |
| commit | c5b4cc80cc4ad07dfe68847fec518779f2cce65c (patch) | |
| tree | 01a70d9f6ae0df46ebb3dfadb2733db876a474ff /packages | |
| parent | 0bccd1d5788d607f761cabf4d2d1a58980c60fe4 (diff) | |
| download | opencode-c5b4cc80cc4ad07dfe68847fec518779f2cce65c.tar.gz opencode-c5b4cc80cc4ad07dfe68847fec518779f2cce65c.zip | |
fix: bunfs path on windows (#5011)
Diffstat (limited to 'packages')
| -rwxr-xr-x | packages/opencode/script/build.ts | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/packages/opencode/script/build.ts b/packages/opencode/script/build.ts index 98c332e32..64f43b748 100755 --- a/packages/opencode/script/build.ts +++ b/packages/opencode/script/build.ts @@ -16,6 +16,7 @@ import pkg from "../package.json" import { Script } from "@opencode-ai/script" const singleFlag = process.argv.includes("--single") +const skipInstall = process.argv.includes("--skip-install") const allTargets: { os: string @@ -83,8 +84,10 @@ const targets = singleFlag await $`rm -rf dist` const binaries: Record<string, string> = {} -await $`bun install --os="*" --cpu="*" @opentui/core@${pkg.dependencies["@opentui/core"]}` -await $`bun install --os="*" --cpu="*" @parcel/watcher@${pkg.dependencies["@parcel/watcher"]}` +if (!skipInstall) { + await $`bun install --os="*" --cpu="*" @opentui/core@${pkg.dependencies["@opentui/core"]}` + await $`bun install --os="*" --cpu="*" @parcel/watcher@${pkg.dependencies["@parcel/watcher"]}` +} for (const item of targets) { const name = [ pkg.name, @@ -102,6 +105,10 @@ for (const item of targets) { const parserWorker = fs.realpathSync(path.resolve(dir, "./node_modules/@opentui/core/parser.worker.js")) const workerPath = "./src/cli/cmd/tui/worker.ts" + // Use platform-specific bunfs root path based on target OS + const bunfsRoot = item.os === "win32" ? "B:/~BUN/root/" : "/$bunfs/root/" + const workerRelativePath = path.relative(dir, parserWorker).replaceAll("\\", "/") + await Bun.build({ conditions: ["browser"], tsconfig: "./tsconfig.json", @@ -118,7 +125,7 @@ for (const item of targets) { entrypoints: ["./src/index.ts", parserWorker, workerPath], define: { OPENCODE_VERSION: `'${Script.version}'`, - OTUI_TREE_SITTER_WORKER_PATH: "/$bunfs/root/" + path.relative(dir, parserWorker).replaceAll("\\", "/"), + OTUI_TREE_SITTER_WORKER_PATH: bunfsRoot + workerRelativePath, OPENCODE_WORKER_PATH: workerPath, OPENCODE_CHANNEL: `'${Script.channel}'`, }, |
