-
Notifications
You must be signed in to change notification settings - Fork 557
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Added ARM architectures to the Linux build #2456
Conversation
It is possible to package the app using the `electron-builder` app on the ARM architectures (tested on ARM64: Raspberry Pi 4B, Manjaro ARM 20.10).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
All the builds function, I tested here: #2462
I did not test the artifacts as I do not have a machine to test.
Thank you for your contribution!! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I haven't added this to the other file formats with a reason: building AppImages, DEB files, pacman packages etc. is broken now with the electron-builder
while building the app on ARM host – or at least I couldn't make it working with my Raspberry Pi 4. The error while building on ARM is produced when the electron-builder
tries to run an X86 application with foreign arch (and of course it fails because X86 binaries won't run on ARM machines without an emulation) that is downloaded and then used to produce these packages. That's why tar.gz
(or any tar*
file format) is now the only working option!
If you've tested it on X86 machine, consider emulating ARM machines with the QEMU and trying to do the test. |
Interesting. I can put in a PR to remove it from all but the tar.gz build. Do you run your own build of Simplenote on your ARM device? Is that when the AppImage, Deb, and rpm build fails? |
@belcherj I've actually built many electron apps using the I'm also myself a dev of Discord Web App that uses the Electron and is currently focused at support for the ARM devices. I haven't also succeed building it any distro-specific packages yet and I believe that's fault with the Right now I'm myself working on the Raspberry Pi 4 SBC under the ARM64 distro, but many people had also an issue building the electron apps on the ARMv7 arch and I believe that there's the same reason that is with ARM64. I hope this comment will brighten a little a building process on the ARM hosts and helps you to set a proper configuration for the BTW I'm not myself using this app, but someone pointed me to it by this issue that were made in my own GitHub repository and I've decided to check this out... |
mad props @SpacingBat3 - really appreciate you sharing your knowledge here. |
@SpacingBat3 Thank you so much. Following the post I successfully built all on Raspberry Pi 4 8GB Ubuntu MATE 20.10 and am now using "Simplenote-linux-2.1.0-beta2-arm64.AppImage" with all of the new feature the Simplenote team have been adding. Along with your electron-discord-webapp https://github.com/SpacingBat3/electron-discord-webapp the Pi 4 is almost a desktop replacement. @dmsnell @belcherj Thanks too for keeping this going and making the changes to support ARM again. |
Oh, I've earlier tried to built an AppImage on ARM64 and I've failed, but now it seems to work as well! |
... but this is an error when building the distro-specific packages (like /home/spacingbat3/.cache/electron-builder/fpm/fpm-1.9.3-2.3.1-linux-x86/lib/ruby/bin/ruby: line 6: /home/spacingbat3/.cache/electron-builder/fpm/fpm-1.9.3-2.3.1-linux-x86/lib/ruby/bin.real/ruby: cannot execute the binary file: Wrong format of the executable file. This means that Conclusion: |
@belcherj 2.2.0-beta1AppImage works as designed. No issues. Thanks. Going to post info about Simplente again in Raspberry Pi forum. |
Please open an issue if there are remaining issues with the ARM builds. Want to make sure we get everyone full sorted. |
Hello! The main problem was with fpm package that require electron during build I am very thankful to this topics: The main repo of aarm64 build, my hero! Main longread explanation how it works: So, the solution is to build fpm by yourself and build any electron apps for aarm64 after.
|
It is possible to package the app using the
electron-builder
app on the ARM architectures (tested on ARM64: Raspberry Pi 4B, Manjaro ARM 20.10).Fix
Allows to build the app as an
tar.gz
archive with theelectron-builder
tool.Test
cd
to it.npm install
to get it's all dependencies.electron-builder
globally on your machine and package this repo with it for ARM64 and ARMv7 architectures:Release
In my opinion this change could be included in
RELEASE-NOTES.md
– however I haven't done this yet, as I would wait with that for the next release.