-
Notifications
You must be signed in to change notification settings - Fork 2.4k
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
Bootstrappable build with modern Gradle #3287
Comments
See PR #3264 and PR #3283 for some of our latest efforts in this saga. To share a little bit of good news along with these frustrations: we now have a documented reproducible build process using Debian Bookworm in a Docker/Podman container:
|
This looks like the correct link for tracking commits to Debian Gradle: https://salsa.debian.org/java-team/gradle/-/commits/master?ref_type=heads |
@emorrp1 on the
@schildbach I have been hinting that we might want to consider, at least for Here is the mailing list message with the recommendation:
|
We are currently using Gradle 4.4.x on Debian Bookworm for our official builds. Supporting this old version of Gradle while simultaneously supporting building with the latest JDK (currently 21), latest Protobuf plugin, latest JavaFX, etc. is very difficult to maintain. (We are using the Gradle buildscript equivalent of browser feature-testing in JavaScript: lots of Groovy conditionals.)
The reason (I don't links handy, but we can add them to this issue later) that Bookworm (and currently Trixie and Sid) are still on Gradle 4.4.x is the Debian maintainers cannot get a from-source build that is compliant with Debian Free Software Guidelines working. If I recall correctly, part of this issue is with Kotlin which is required to build newer Gradle. (Kotlin on Trixie/Sid is still at 1.3.x as I write this.) I believe there is a now a bootstrappable/reproducible build of Kotlin available but it looks like it has not made it to Debian, yet.
I'm opening this as a tracking issue, so we can keep tabs on developments in the Gradle, Kotlin, and Debian projects. We can also possibly discuss alternatives like Guix or Nix but last I checked they didn't have recent Gradle support, either. Another option might be to switch to Maven. There are more recent builds of Maven on Debian, last I checked.
For a 4-year-old discussion of the problem see the "Java" section of Reproducible Builds Summit, 5th edition Which begins:
Sadly, I don't think much has changed in 4 years.
I couldn't find an issue specifically about this problem on the Gradle GitHub so I created gradle/gradle#26516.
The text was updated successfully, but these errors were encountered: