Skip to content
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

Question: arm64 and armhf support #9

Closed
flixr opened this issue Sep 27, 2024 · 13 comments
Closed

Question: arm64 and armhf support #9

flixr opened this issue Sep 27, 2024 · 13 comments

Comments

@flixr
Copy link

flixr commented Sep 27, 2024

Would you also be willing to build arm64 and armhf packages and provide them in the https://ros.packages.techfak.net/ repo?

@rhaschke
Copy link
Member

I'm fine to host arm packages on ros.packages.techfak.net. However, I never dived into building them and don't have the resources to do so. So, if you come up with a solution to build those packages, I'm happy to release them.

@flixr
Copy link
Author

flixr commented Sep 27, 2024

I think it should be rather easy to add the arch and build with qemu as in https://github.com/jspricke/ros-deb-builder-action
Would be nice if we could coordinate a bit with @jspricke and also @v4hn on how to continue with something like that.

@rhaschke
Copy link
Member

I never got feedback on my integration proposal here.

@v4hn
Copy link
Contributor

v4hn commented Sep 30, 2024

I think it should be rather easy to add the arch and build with qemu as in https://github.com/jspricke/ros-deb-builder-action
Would be nice if we could coordinate a bit with @jspricke and also @v4hn on how to continue with something like that.

I would be happy to include the arch generalization from Jochen's project in the ros-o-builder CI, if you can provide a PR for the respective ros-deb-builder-action fork. I don't have any use for arm builds myself at the moment, so I wouldn't really be able to test it. 🤔

Edit: Please note I'm currently migrating to https://github.com/v4hn/ros-o-builder-experimental/ , which will be pushed to https://github.com/v4hn/ros-o-builder soon

@v4hn
Copy link
Contributor

v4hn commented Sep 30, 2024

I never got feedback on my integration proposal here.

Sadly very true! Do you have time for a call this late afternoon/evening?

@rhaschke
Copy link
Member

@v4hn, yes I can arrange for a call today. What time and format (phone vs. zoom) do you have in mind?

@v4hn
Copy link
Contributor

v4hn commented Sep 30, 2024

Sorry for hijacking the issue here for comments on a meeting in general.
FYI @flixr: Robert, Jochen and me discussed the general way forward for ROS-O builds based on the github CI, but no concrete next steps for other architectures were decided.
You are very much invited to contribute a patch for qemu based arm builds in a https://github.com/v4hn/ros-o-builder fork (which might be straight-forward) for testing on your end and this builder if it proofs feasible. @jspricke's main concern was that cross-architecture builds will likely fail with various ROS packages and native qemu builds might be very slow.

@flixr
Copy link
Author

flixr commented Oct 2, 2024

Sounds good!
Maybe we would also need a way to specify which packages we (don't) want to build for armhf/arm64.

@rhaschke
Copy link
Member

rhaschke commented Oct 2, 2024

You can just provide a separate .repos file.

@v4hn
Copy link
Contributor

v4hn commented Oct 2, 2024

Maybe we would also need a way to specify which packages we (don't) want to build for armhf/arm64.

Personally, I'm a big fan of attempting builds for all packages (with deps built) and provide public logs where anyone can inspect errors and attempt to fix them. Of course a minimum set of packages needs to build so that it makes sense to provide them in the repository.

@jspricke
Copy link

jspricke commented Oct 2, 2024

Maybe we would also need a way to specify which packages we (don't) want to build for armhf/arm64.

Personally, I'm a big fan of attempting builds for all packages (with deps built) and provide public logs where anyone can inspect errors and attempt to fix them. Of course a minimum set of packages needs to build so that it makes sense to provide them in the repository.

I recommend starting with a small set, building with Qemu will probably overload the VMs so no need to try everything. @flixr feel free to reach out if you bump into problems.

@rhaschke
Copy link
Member

github added ARM64 runners recently and will provide the to open source projects by the end of the year:

These runners are available to our customers on our GitHub Team and Enterprise Cloud plans. We expect to begin offering Arm runners for open source projects by the end of the year.

Alternatively, one could add a self-hosted runner already now. For these, ARM64 and ARM32 are supported.
However, we don't have ARM machines available.

@rhaschke rhaschke mentioned this issue Oct 14, 2024
@rhaschke
Copy link
Member

@ojura has setup a self-host ARM64 runner and built a Noble distro. See #15 for details. Closing here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants