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

Add linux-aarch64 build #10867

Closed
wants to merge 7 commits into from
Closed

Add linux-aarch64 build #10867

wants to merge 7 commits into from

Conversation

koppor
Copy link
Member

@koppor koppor commented Feb 9, 2024

Fixes #10842

It follows the recommendation of actions/runner-images#5631 (comment) to use BuildJet. Pricing: https://buildjet.com/for-github-actions/docs/about/pricing. Currently $0.004 / min $0.008 / min. Let's see how it goes and if it's really working.

Mandatory checks

  • Change in CHANGELOG.md described in a way that is understandable for the average user (if applicable)
  • Tests created for changes (if applicable)
  • Manually tested changed features in running JabRef (always required)
  • Screenshots added in PR description (for UI changes)
  • Checked developer's documentation: Is the information available and up to date? If not, I outlined it in this pull request.
  • Checked documentation: Is the information available and up to date? If not, I created an issue at https://github.com/JabRef/user-documentation/issues or, even better, I submitted a pull request to the documentation repository.

@koppor
Copy link
Member Author

koppor commented Feb 9, 2024

Blocked externally:

> Could not resolve all files for configuration ':compileClasspath'.
   > Could not find javafx-fxml-21.0.2-linux-aarch64.jar (org.openjfx:javafx-fxml:21.0.2).
     Searched in the following locations:
         https://repo.maven.apache.org/maven2/org/openjfx/javafx-fxml/21.0.2/javafx-fxml-21.0.2-linux-aarch64.jar
   > Could not find javafx-web-21.0.2-linux-aarch64.jar (org.openjfx:javafx-web:21.0.2).
     Searched in the following locations:
         https://repo.maven.apache.org/maven2/org/openjfx/javafx-web/21.0.2/javafx-web-21.0.2-linux-aarch64.jar
   > Could not find javafx-controls-21.0.2-linux-aarch64.jar (org.openjfx:javafx-controls:21.0.2).
     Searched in the following locations:
         https://repo.maven.apache.org/maven2/org/openjfx/javafx-controls/21.0.2/javafx-controls-21.0.2-linux-aarch64.jar
   > Could not find javafx-swing-21.0.2-linux-aarch64.jar (org.openjfx:javafx-swing:21.0.2).
     Searched in the following locations:
         https://repo.maven.apache.org/maven2/org/openjfx/javafx-swing/21.0.2/javafx-swing-21.0.2-linux-aarch64.jar
   > Could not find javafx-media-21.0.2-linux-aarch64.jar (org.openjfx:javafx-media:21.0.2).
     Searched in the following locations:
         https://repo.maven.apache.org/maven2/org/openjfx/javafx-media/21.0.2/javafx-media-21.0.2-linux-aarch64.jar
   > Could not find javafx-graphics-21.0.2-linux-aarch64.jar (org.openjfx:javafx-graphics:21.0.2).
     Searched in the following locations:
         https://repo.maven.apache.org/maven2/org/openjfx/javafx-graphics/21.0.2/javafx-graphics-21.0.2-linux-aarch64.jar
   > Could not find javafx-base-21.0.2-linux-aarch64.jar (org.openjfx:javafx-base:21.0.2).
     Searched in the following locations:
         https://repo.maven.apache.org/maven2/org/openjfx/javafx-base/21.0.2/javafx-base-21.0.2-linux-aarch64.jar

Refs: https://twitter.com/siedlerchr/status/1752828581737005170

@koppor
Copy link
Member Author

koppor commented Feb 9, 2024

With smallest resource (buildjet-2vcpu-ubuntu-2204-arm, 3 GB RAM), I get

FAILURE: Build failed with an exception.

* What went wrong:
Gradle build daemon disappeared unexpectedly (it may have been killed or may have crashed)

@koppor
Copy link
Member Author

koppor commented Feb 9, 2024

Adding the gradle daemon reduced the build times by 3 seconds:

Old:

image

New:

image

(Verying time for macOS is because of the code sign)

@Siedlerchr
Copy link
Member

In the future we should do aarch64 for linux only for release builds like we did for mac in the past. Or you setup a raspberry as self-hosted runner at home

@koppor koppor mentioned this pull request Feb 15, 2024
6 tasks
Copy link
Contributor

The build of this PR is available at https://builds.jabref.org/pull/10867/merge.

@Siedlerchr Siedlerchr closed this Feb 21, 2024
@koppor
Copy link
Member Author

koppor commented Feb 21, 2024

This is blocked by gradle/gradle#24875. Since this takes a long time, we closed this PR.

@koppor koppor deleted the add-aarch64 branch February 21, 2024 22:40
@koppor koppor added status: depends-on-external A bug or issue that depends on an update of an external library status: freeze Issues posponed to a (much) later future labels Feb 27, 2024
@koppor
Copy link
Member Author

koppor commented Feb 27, 2024

Gradle 8.8:

-Dorg.gradle.native=false argument or org.gradle.native=false entry in gradle.properties

Source: gradle/gradle#24875 (comment)

@koppor koppor mentioned this pull request Feb 27, 2024
6 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
status: depends-on-external A bug or issue that depends on an update of an external library status: freeze Issues posponed to a (much) later future
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Package for Linux aarch64
2 participants