jetbrains.jdk: 21.0.9-1163.86 -> 25.0.2-329.72

Changelog: https://github.com/JetBrains/JetBrainsRuntime/releases/tag/jbr-release-25.0.2b329.72
This commit is contained in:
LunaFox
2026-03-29 18:48:29 -03:00
parent d23fbaef09
commit a10e03093f
2 changed files with 34 additions and 8 deletions
@@ -1,6 +1,7 @@
{
lib,
stdenv,
fetchurl,
fetchFromGitHub,
jetbrains,
jdk,
@@ -26,6 +27,8 @@
libdrm,
libgbm,
wayland,
wayland-scanner,
wayland-protocols,
udev,
fontconfig,
shaderc,
@@ -45,27 +48,38 @@ let
in
jdk.overrideAttrs (oldAttrs: rec {
pname = "jetbrains-jdk" + lib.optionalString withJcef "-jcef";
javaVersion = "21.0.9";
build = "1163.86";
javaVersion = "25.0.2";
build = "329.72";
# To get the new tag:
# git clone https://github.com/jetbrains/jetbrainsruntime
# cd jetbrainsruntime
# git tag --points-at [revision]
# Look for the line that starts with jbr-
openjdkTag = "jbr-release-21.0.9b1163.86";
version = "${javaVersion}-b${build}";
openjdkTag = "jbr-release-${javaVersion}b${build}";
src = fetchFromGitHub {
owner = "JetBrains";
repo = "JetBrainsRuntime";
rev = "jb${version}";
hash = "sha256-P2boCbGB66X8LB4sZHGFO8lqHbv6F4kqGVMGBd9yKu0=";
hash = "sha256-K4Izbij+1YO4UERHS0mwGKZX/VtIaxyNPZD068Vf99Q=";
};
gtk-protocols =
let
rev = "refs/tags/4.22.1";
hash = "sha256-zCcXuiEYL2N4Q+WT96ouVDwdZVSohgU/QA2BkGlnZZ0=";
in
fetchurl {
# We only need the wayland protocols file
url = "https://raw.githubusercontent.com/GNOME/gtk/${rev}/gdk/wayland/protocol/gtk-shell.xml";
hash = hash;
};
env = (oldAttrs.env or { }) // {
BOOT_JDK = jdk.home;
# run `git log -1 --pretty=%ct` in jdk repo for new value on update
SOURCE_DATE_EPOCH = 1765114563;
SOURCE_DATE_EPOCH = 1769205294;
};
patches = [ ];
@@ -76,25 +90,35 @@ jdk.overrideAttrs (oldAttrs: rec {
runHook preBuild
${lib.optionalString withJcef "cp -r ${jetbrains.jcef} jcef_linux_${arch}"}
cp -r ${gtk-protocols.out} gtk-shell.xml
sed \
-e "s/OPENJDK_TAG=.*/OPENJDK_TAG=${openjdkTag}/" \
-e "s/SOURCE_DATE_EPOCH=.*//" \
-e "s/export SOURCE_DATE_EPOCH//" \
-i jb/project/tools/common/scripts/common.sh
declare -a realConfigureFlags
for configureFlag in "''${configureFlags[@]}"; do
case "$configureFlag" in
--host=*)
# intentionally omit flag
;;
--with-vendor-version-string=*)
# Replace the flag from the JDK to include that it is JBR and the package version, so it passes the installation tests
realConfigureFlags+=('--with-vendor-version-string="nix/JBR-${version}${lib.optionalString withJcef "-jcef"}"')
;;
*)
realConfigureFlags+=("$configureFlag")
;;
esac
done
realConfigureFlags+=("--with-wayland-protocols=${wayland-protocols.out}/share/wayland-protocols")
echo "computed configure flags: ''${realConfigureFlags[*]}"
substituteInPlace jb/project/tools/linux/scripts/mkimages_${arch}.sh --replace-fail "STATIC_CONF_ARGS" "STATIC_CONF_ARGS ''${realConfigureFlags[*]}"
sed \
-e "s/create_image_bundle \"jb/#/" \
-e "s/echo Creating /exit 0 #/" \
@@ -175,6 +199,8 @@ jdk.overrideAttrs (oldAttrs: rec {
unzip
rsync
shaderc # glslc
wayland-scanner
libxkbcommon
]
++ oldAttrs.nativeBuildInputs;
+3 -3
View File
@@ -9620,14 +9620,14 @@ with pkgs;
)
// {
jdk-no-jcef = callPackage ../development/compilers/jetbrains-jdk {
jdk = jdk21;
jdk = jdk25;
withJcef = false;
};
jdk = callPackage ../development/compilers/jetbrains-jdk {
jdk = jdk21;
jdk = jdk25;
};
jcef = callPackage ../development/compilers/jetbrains-jdk/jcef.nix {
jdk = jdk21;
jdk = jdk25;
};
}
// lib.optionalAttrs config.allowAliases {