[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: gradle reboot



Hi Julien,

Le 04/11/2024 à 14:43, Julien Plissonneau Duquène a écrit :

This is to let you know that I am currently working on overhauling and upgrading the gradle package to the upcoming 8.11 release. This is indeed quite challenging and I am not yet to the point where I could share a repo and let others experiment and contribute, but I hope to get there in a few days or maybe next week, I will then post an update with a link.

Thank you for tackling this issue, this challenge requires a lot of time, skills and patience. It's long, thankless, but definitely fun if you are a bit masochistic.


My current plan is to make it at least a 2-stage build as there is no point in trying to make its complicated buildscript work with the currently packaged version 4.4.1. I don't know yet if the versions of Groovy and Kotlin currently in Debian will work with these builds but I will try.

No they won't work. Getting Kotlin 1.3.31 to build with Java 17 was an epic achievement but unfortunately it didn't even allow us to package an incremental update of Gradle.

Kotlin and Gradle are tightly coupled, and unless you are ready to rewrite their build systems with something else and replace the Kotlin code in Gradle, I don't think it's possible to bootstrap them separately.

That was the motivation behind the gradle-bootstrap package currently in sid: start with a binary only package containing Gradle, Koltin and their dependencies, and use it to gradually rebuild these components from source until the bootstrap package is no longer needed. I haven't pushed further in this direction by lack of time but I still think that's the best strategy to build a recent version of Gradle and Kotlin.

Note that there is also an issue with the Gradle enterprise plugin that isn't open sourced and has to be removed. I don't know if Gradle 8 is still affected.


I am also factoring in the gradle-debian-helper in the build of Gradle itself to use its logic to resolve artifact versions, even though the plugin can no longer be used as is because it depends on a core 'maven' plugin that disappeared with Gradle 7.

About myself, I haven't contributed much to the project yet but I am a long time FLOSS advocate and Debian user, with some background in large scale deployments, SRE and DevOps things. I didn't have much prior experience with Gradle until the past few days, so I am learning while doing it.

If you succeed I predict that you'll be able to add "Kotlin Guru" to your CV:)

Good luck!

Emmanuel Bourg


Reply to: