fix: ARM64 build uses native target instead of cross-compile
Some checks failed
Auto Tag / auto-tag (push) Successful in 5s
Test / rust-fmt-check (push) Successful in 2m11s
Release / build-macos-arm64 (push) Successful in 7m50s
Test / rust-clippy (push) Failing after 18m3s
Release / build-linux-arm64 (push) Successful in 29m2s
Test / rust-tests (push) Successful in 13m47s
Test / frontend-typecheck (push) Successful in 1m32s
Test / frontend-tests (push) Successful in 1m29s
Test / wiki-sync (push) Successful in 41s
Release / build-linux-amd64 (push) Successful in 21m36s
Release / build-windows-amd64 (push) Successful in 14m24s

The ARM64 build was failing because explicitly specifying
--target aarch64-unknown-linux-gnu on an ARM64 runner was
triggering cross-compilation logic.

Changes:
- Remove rustup target add (not needed for native build)
- Remove --target flag from cargo tauri build
- Update artifact path: target/aarch64-unknown-linux-gnu/release/bundle
  → target/release/bundle

This allows the native ARM64 toolchain to build without
attempting cross-compilation and avoids the pkg-config
cross-compilation configuration requirement.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
Shaun Arman 2026-04-04 09:59:56 -05:00
parent 5fae3c79a7
commit 717a6e0c6a

View File

@ -191,9 +191,9 @@ jobs:
- name: Build
run: |
npm ci --legacy-peer-deps
rustup target add aarch64-unknown-linux-gnu
cargo install tauri-cli --version "^2" --locked
CI=true cargo tauri build --target aarch64-unknown-linux-gnu
# Native ARM64 build - no explicit target needed
CI=true cargo tauri build
- name: Upload artifacts
env:
RELEASE_TOKEN: ${{ secrets.RELEASE_TOKEN }}
@ -212,7 +212,7 @@ jobs:
exit 1
fi
echo "Release ID: $RELEASE_ID"
find src-tauri/target/aarch64-unknown-linux-gnu/release/bundle \
find src-tauri/target/release/bundle \
\( -name "*.deb" -o -name "*.rpm" -o -name "*.AppImage" \) | while read f; do
echo "Uploading $(basename $f)..."
curl -sf -X POST "$API/releases/$RELEASE_ID/assets" \