gradle: expose gradle-packages.mkGradle and gradle-packages.wrapGradle
Users may want to use a completely custom version of Gradle. Add mkGradle and wrapGradle as non-toplevel APIs for this.
This commit is contained in:
@@ -87,7 +87,8 @@ let
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
gen =
|
# Creates a Gradle without calling the package.
|
||||||
|
mkGradle' =
|
||||||
{
|
{
|
||||||
version,
|
version,
|
||||||
hash,
|
hash,
|
||||||
@@ -275,7 +276,7 @@ let
|
|||||||
};
|
};
|
||||||
passthru.jdk = defaultJava;
|
passthru.jdk = defaultJava;
|
||||||
passthru.wrapped = callPackage wrapGradle {
|
passthru.wrapped = callPackage wrapGradle {
|
||||||
gradle-unwrapped = gen' genArgs;
|
gradle-unwrapped = mkGradle genArgs;
|
||||||
};
|
};
|
||||||
passthru.updateScript =
|
passthru.updateScript =
|
||||||
if enableUpdateScript then
|
if enableUpdateScript then
|
||||||
@@ -324,26 +325,31 @@ let
|
|||||||
});
|
});
|
||||||
|
|
||||||
# Calls the generated Gradle package with default arguments.
|
# Calls the generated Gradle package with default arguments.
|
||||||
gen' = args: callPackage (gen args) { };
|
mkGradle = args: callPackage (mkGradle' args) { };
|
||||||
in
|
in
|
||||||
rec {
|
rec {
|
||||||
|
# Keep these exposed (but not at toplevel) so users can call
|
||||||
|
# `gradle-packages.mkGradle` as we do below,
|
||||||
|
# and still have wrapGradle available if necessary.
|
||||||
|
inherit mkGradle wrapGradle;
|
||||||
|
|
||||||
# NOTE: Default JDKs that are hardcoded below must be LTS versions
|
# NOTE: Default JDKs that are hardcoded below must be LTS versions
|
||||||
# and respect the compatibility matrix at
|
# and respect the compatibility matrix at
|
||||||
# https://docs.gradle.org/current/userguide/compatibility.html
|
# https://docs.gradle.org/current/userguide/compatibility.html
|
||||||
|
|
||||||
gradle_9 = gen' {
|
gradle_9 = mkGradle {
|
||||||
version = "9.1.0";
|
version = "9.1.0";
|
||||||
hash = "sha256-oX3dhaJran9d23H/iwX8UQTAICxuZHgkKXkMkzaGyAY=";
|
hash = "sha256-oX3dhaJran9d23H/iwX8UQTAICxuZHgkKXkMkzaGyAY=";
|
||||||
defaultJava = jdk21;
|
defaultJava = jdk21;
|
||||||
};
|
};
|
||||||
gradle_8 = gen' {
|
gradle_8 = mkGradle {
|
||||||
version = "8.14.3";
|
version = "8.14.3";
|
||||||
hash = "sha256-vXEQIhNJMGCVbsIp2Ua+7lcVjb2J0OYrkbyg+ixfNTE=";
|
hash = "sha256-vXEQIhNJMGCVbsIp2Ua+7lcVjb2J0OYrkbyg+ixfNTE=";
|
||||||
defaultJava = jdk21;
|
defaultJava = jdk21;
|
||||||
# Only enable this on *one* version to avoid duplicate PRs.
|
# Only enable this on *one* version to avoid duplicate PRs.
|
||||||
enableUpdateScript = true;
|
enableUpdateScript = true;
|
||||||
};
|
};
|
||||||
gradle_7 = gen' {
|
gradle_7 = mkGradle {
|
||||||
version = "7.6.6";
|
version = "7.6.6";
|
||||||
hash = "sha256-Zz2XdvMDvHBI/DMp0jLW6/EFGweJO9nRFhb62ahnO+A=";
|
hash = "sha256-Zz2XdvMDvHBI/DMp0jLW6/EFGweJO9nRFhb62ahnO+A=";
|
||||||
defaultJava = jdk17;
|
defaultJava = jdk17;
|
||||||
|
|||||||
Reference in New Issue
Block a user