feat(natives): fixed binary installs with embedded native addon extraction
- Added automatic extraction of embedded native addon payload to ~/.omp/natives/<version> on first run of compiled binaries. - Added embed:native build script for generating platform-specific native addon payloads embedded in compiled binaries. - Enhanced native addon loading to prioritize extracted embedded addon over downloaded versions. - Improved error messages with platform-specific guidance for compiled vs npm-installed binaries. - Refactored CI workflow to use reusable build_binary() function for cross-platform binary compilation.
This commit is contained in:
@@ -167,11 +167,20 @@ jobs:
|
||||
mkdir -p packages/coding-agent/binaries
|
||||
ENTRYPOINT="./packages/coding-agent/src/cli.ts"
|
||||
DEFINES="--define OMP_COMPILED=true --root ."
|
||||
bun build --compile $DEFINES --target=bun-darwin-arm64 $ENTRYPOINT --outfile packages/coding-agent/binaries/omp-darwin-arm64
|
||||
bun build --compile $DEFINES --target=bun-darwin-x64 $ENTRYPOINT --outfile packages/coding-agent/binaries/omp-darwin-x64
|
||||
bun build --compile $DEFINES --target=bun-linux-x64 $ENTRYPOINT --outfile packages/coding-agent/binaries/omp-linux-x64
|
||||
bun build --compile $DEFINES --target=bun-linux-arm64 $ENTRYPOINT --outfile packages/coding-agent/binaries/omp-linux-arm64
|
||||
bun build --compile $DEFINES --target=bun-windows-x64 $ENTRYPOINT --outfile packages/coding-agent/binaries/omp-windows-x64.exe
|
||||
build_binary() {
|
||||
PLATFORM="$1"
|
||||
ARCH="$2"
|
||||
TARGET="$3"
|
||||
OUTFILE="$4"
|
||||
TARGET_PLATFORM="$PLATFORM" TARGET_ARCH="$ARCH" bun --cwd=packages/natives run embed:native
|
||||
bun build --compile $DEFINES --target="$TARGET" "$ENTRYPOINT" --outfile "$OUTFILE"
|
||||
}
|
||||
build_binary darwin arm64 bun-darwin-arm64 packages/coding-agent/binaries/omp-darwin-arm64
|
||||
build_binary darwin x64 bun-darwin-x64 packages/coding-agent/binaries/omp-darwin-x64
|
||||
build_binary linux x64 bun-linux-x64 packages/coding-agent/binaries/omp-linux-x64
|
||||
build_binary linux arm64 bun-linux-arm64 packages/coding-agent/binaries/omp-linux-arm64
|
||||
build_binary win32 x64 bun-windows-x64 packages/coding-agent/binaries/omp-windows-x64.exe
|
||||
bun --cwd=packages/natives run embed:native --reset
|
||||
- name: Stage native addons for release
|
||||
run: cp packages/natives/native/*.node packages/coding-agent/binaries/
|
||||
- name: Create GitHub Release
|
||||
|
||||
Reference in New Issue
Block a user