feat: add Linux arm64 AppImage support for SBC users (Pi, Orange Pi, etc.)#3441
feat: add Linux arm64 AppImage support for SBC users (Pi, Orange Pi, etc.)#3441toastmanAu wants to merge 1 commit intonervosnetwork:developfrom
Conversation
Testing Results — Tested on arm64 hardwareOrange Pi 5 (RK3588, aarch64) — Ubuntu 22.04✅ AppImage launches and renders correctly Screenshot of welcome screen (running on Pi 5):
Log output confirms:
Known Issues / Notes1. Auto-updater 404 (expected) The updater looks for 2. sudo apt install zlib1g-devOr: 3. GPU / SwiftShader fallback Tested build: |
Add Linux arm64 (aarch64) AppImage support
Summary
This PR adds support for building Neuron as a Linux arm64 AppImage, targeting Raspberry Pi 4/5, Orange Pi, ROCK series boards and other aarch64 single-board computers running Linux — which are popular in the CKB node-running community.
A working
Neuron-v0.204.0-arm64.AppImage(192 MB, verified ELF aarch64) was built successfully on an Orange Pi 5 (aarch64, Ubuntu 22.04) using the changes in this PR.Changes
1.
scripts/download-ckb.sh— adddownload_linux_aarch64()Added a new function that downloads the
aarch64-unknown-linux-gnuCKB binary (which already exists in every CKB release) and saves it asbin/linux/ckb-arm64:Also added a
linux-arm64case to the switch:2.
packages/neuron-wallet/electron-builder.yml— add arm64 target + extraFile3.
package.yml(GitHub Actions) — add arm64 Linux runnerTo build the arm64 AppImage in CI, add an
ubuntu-24.04-armrunner to the matrix:And add a conditional upload step:
Build instructions (manual, on arm64 Linux)
Output:
release/Neuron-v{version}-arm64.AppImageFlags explained:
--linux --arm64: target platform and architecture--config.npmRebuild=false: skip native module rebuild (avoids cross-compilation issues when building arm64 on an arm64 host where modules are already built for the right arch)Tested on
Neuron-v0.204.0-arm64.AppImagebuilt, 192 MBThe resulting AppImage is a valid ELF aarch64 executable:
Why this matters
Single-board computers (Raspberry Pi 4/5, Orange Pi, Rock Pi, etc.) are widely used to run CKB full nodes — they're low-power, always-on, and affordable. Many CKB community members running nodes on these devices also want to use Neuron as their wallet but currently have no official binary. An arm64 AppImage closes that gap with a single self-contained download.