-
Notifications
You must be signed in to change notification settings - Fork 205
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
Arduino IDE 2.x (for ARM64) #2585
Comments
A zipfile was found in the body of your issue. Click to show contents preview
#!/bin/bash
#Allow packages required by this app to be uninstalled
purge_packages || exit 1
#!/bin/bash
version=2.3.3
install_packages "https://ximitekcloud.com/downloads/arduino-ide_${version%-*}_arm64.deb" || exit 1
|
Hello there 👋 Please respond as soon as possible if a Pi-Apps maintainer requests more information from you. Stale issues will be closed after a lengthy period of time with no response. |
Who owns this domain? https://ximitekcloud.com/downloads |
I own it, as its a unofficial build i will also make updates for it as its kinda odd for Arduino to make a ARM64 version for Mac while ignoring Linux. |
OK, so why not then host the build scripts and release assets on a github repo? |
I couldn't host the release assets on GitHub as when i tried a git pushing the repo with the main release assets, it just refused to do it (i was doing it on a private repo, will try on a public one and will reply to see if it does something) |
If builds will only be periodic, consider the option to simply upload them manually. |
As my Pi 5 (the Pi i used for compiling the IDE) isn't used heavy duty by another project, i could do like minor release versions when they come out (for example 2.3.3 > 2.3.4) |
What are the chances of it going down? Is it self hosted? |
It is just a Linux based web server hosted on Linode with Caddy installed as the web server. |
And still nope, i cannot host the release assets on GitHub even when the repo is public. |
I am going to close this. Not interested in another porting project and still waiting on Arduino to show that they care to maintain their IDE project. There has not been a commit since February and they are running an old version of electron with security issues. This has already been requested of upstream by many many users. It is trivial for them to implement. Please add your request to the others there. If you are able to help make any modifications to their build CI to build arm64 linux releases then by all means help them out with a PR. |
I just recently moved the package to a GitHub repo and provided some instructions to build it so no more need for a external web server anymore. Also as @theofficialgman does not like the current state of the Arduino IDE 2.x (due to using a outdated Electron 27 build) then i do not think it will be ever published until Arduino updates Electron to the latest version and to contribute to the issues (as well as also responding to backlash on why they didn't ship a Linux ARM64 version of their IDE officially). |
This should be revisited, now with more regular updates and their current dependence on |
The build from @matu6968 seems to be offline. |
This issue still exists... There are so many critical bugs that have been resolved since 27 in August 2023, not to mention all the security vulnerabilities that come with such an out of date and unmaintained version of chromium. I simply will not accept new applications that use electron and don't do the basic maintenance to keep up to date with one of the stable electron releases (major version releases are supported for 8 months, they don't even need update frequently). In any case, our current stance on such porting projects is for them to not exist when an effort could be contributed upstream. This seems like a prime candidate and would resolve an issue for many many users who have requested such a feature arduino/arduino-ide#107 . Consider using your time to create CI for upstream to build for arm64/armhf linux. |
Regarding about the hosting before it got migrated my github repo, the server for that is long gone.
Since Arduino released their official 2.3.3 version of their 2.x based IDE, i will possibly today make a CI and/or a bash script to automate the build process and not to worry about updates if I made a CI (as long as Arduino themselves don't make breaking changes to their code especially with changing Electron versions to a newer version) |
The script is ready it essentially builds the ide from source and has disclaimers for building for other arches and everything is there, except for checking if golang is installed (i will add the golang installed check later and put it on my repo) build-ide.txt |
Did you ever encounter this error @matu6968?
|
Found a solution here: arduino/arduino-ide#2499 (comment) |
Fixed and working script for arm64 debian/ubuntu only @matu6968 Would you be willing to try adding the arm64 arch to Arduino's official CI build? I think the only file with needed changes is this one: https://github.com/arduino/arduino-ide/blob/main/.github/workflows/build.yml#L389 |
These changes seem to add checking environment variables for getting armhf and arm64 support, however I believe this should not be needed because you can specify electron-builder configs in package.json inside of the electron-app folder to add other arches like armhf without needing to modify the workflow. |
@matu6968, clearly you understand electron more than I do. Are you willing to open a pull request to arduino-ide to get arm build artifacts released alongside their x86 appimage and zip? If so, I will wait for you. If not, then I will see about doing something hacky here that theofficialgman would probably not be too fond of... ;) |
I will see how it turns out and make a pull request if cross compiling works, also imma see if I can update Electron 27 dependency to the latest version (which is version 27.3.11) without breaking changes. |
I would suggest one change at a time. Try only doing a PR for arm builds, then if they merge that, try another PR for newer electron. |
This is cause the script didn't check if go was installed and hence the error because go wasn't installed to build the language-server. |
Yeah I know, I fixed it in the script I sent back to you here. Please check it. It is simplified and only for debian arm64, but it fixed several issues you had in your script with how arduino-ide was being compiled and packaged. I think if you run your original script on the master branch of arduino-ide, you will see that much of it fails. I had to redo major parts of it based on their buildscripts. |
To extend that, when building native libraries with yarn are involved you also need to manually specify and install the cross compilers when building on x86_64 for armhf/arm64 (eg: https://github.com/shiftkey/desktop/pull/897/files which was later refactored into a dockerfile for some other reasons https://github.com/shiftkey/desktop-ubuntu-arm64-packaging/blob/shiftkey-patch-1/Dockerfile) |
This idea came from Botspot/pi-apps#2585 (comment) to attempt to regain ARM64 and ARM building
What is the name of the app?
Arduino IDE 2.x
Where is the app hosted?
https://github.com/arduino/arduino-ide
About the app
The newer and redefined Arduino IDE which allows you to code for embedded platforms (like the older 1.8.x based IDE, such as for Arduino Uno), supports many extensions just like the 1.8.x based one.
Upload file or Add PR Link
arduino-ide-2.x.zip
Confirmations
The text was updated successfully, but these errors were encountered: