nice-node
nice-node copied to clipboard
linux arm builds
Feature details
We could modify our github action to produce arm64 builds for linux to support raspberry pis, Rockchip boards like nanopc-t6 and Radxa. The challenge is to make it work seamlessly with the build tools that currently work out-of-the-box within a single github action workflow. Additionally, these boards typically have a flavor of linux that uses the 5.10 kernel. There is a lot of work to get Rockchip boards onto the mainline linux kernel (6.6), but I'm not sure of the eta on that. I do not think NiceNode works well on kernal 5.10 (uname -r
to check)
To build a dev file in ubuntu arm:
sudo apt install ruby ruby-dev binutils
sudo gem install fpm
export USE_SYSTEM_FPM=true
# build
npm run package -- --linux deb --arm64
# install (check version)
sudo dpkg -i ./release/build/nice-node_4.7.2-alpha_arm64.deb
# users may have to install this
sudo apt install libxss1
(mac) asahi fedora39 arm:
sudo dnf install ruby glibc qemu fedora-packager rpmdevtools
sudo gem install fpm
export USE_SYSTEM_FPM=true
# build
npm run package -- --linux deb --arm64
sudo dnf install ./release/build/nice-node-4.7.2-alpha.aarch64.rpm
# error
Error: Transaction test error:
file /usr/lib/.build-id/b6/4138acadfa57e4e7682b5591ebe4081878438c from install of nice-node-4.7.2~alpha-1.aarch64 conflicts with file from package python3-3.12.1-1.fc39.aarch64
# works but probably not the best solution
sudo rpm -i --replacefiles ./release/build/nice-node-4.7.2-alpha.aarch64.rpm
# run in foreground
nice-node
I have been working on the underlying repos to fix this:
https://github.com/electron-userland/electron-builder-binaries/issues/49#issuecomment-2008211462 https://github.com/electron-userland/electron-builder/issues/5154
v6+ will have linux, mac, and windows arm builds. bring on the arm chips :)