Merge pull request #140364 from taku0/temurin-17

temurin-bin: init, semeru-bin: init, adoptopenjdk-bin: remove 13, 14, 17
This commit is contained in:
Franz Pletz 2022-09-12 23:29:18 +02:00 committed by GitHub
commit acf46b0569
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
16 changed files with 1036 additions and 101 deletions

View File

@ -6,6 +6,7 @@ import re
import requests
import sys
# openjdk15 is only for bootstrapping openjdk
releases = ("openjdk8", "openjdk11", "openjdk13", "openjdk14", "openjdk15", "openjdk16")
oses = ("mac", "linux")
types = ("jre", "jdk")
@ -21,7 +22,7 @@ arch_to_nixos = {
def get_sha256(url):
resp = requests.get(url)
if resp.status_code != 200:
print("error: could not fetch checksum from url {}: code {}".format(url, resp.code), file=sys.stderr)
print("error: could not fetch checksum from url {}: code {}".format(url, resp.status_code), file=sys.stderr)
sys.exit(1)
return resp.text.strip().split(" ")[0]

View File

@ -0,0 +1,85 @@
#!/usr/bin/env nix-shell
#!nix-shell --pure -i python3 -p "python3.withPackages (ps: with ps; [ requests ])"
import json
import re
import requests
import sys
feature_versions = (8, 11, 16, 17)
oses = ("mac", "linux")
types = ("jre", "jdk")
impls = ("openj9")
arch_to_nixos = {
"x64": ("x86_64",),
"aarch64": ("aarch64",),
"arm": ("armv6l", "armv7l"),
}
def get_sha256(url):
resp = requests.get(url)
if resp.status_code != 200:
print("error: could not fetch checksum from url {}: code {}".format(url, resp.status_code), file=sys.stderr)
sys.exit(1)
return resp.text.strip().split(" ")[0]
def generate_sources(releases, feature_version, out):
latest_version = None
for release in releases:
if release["prerelease"]: continue
if not re.search("_openj9-", release["name"]): continue
for asset in release["assets"]:
match = re.match("ibm-semeru-open-(?P<image_type>[a-z]*)_(?P<architecture>[a-z0-9]*)_(?P<os>[a-z]*)_(?:(?P<major1>[0-9]*)u(?P<security1>[0-9]*)b(?P<build1>[0-9]*)|(?P<major2>[0-9]*)\\.(?P<minor2>[0-9]*)\\.(?P<security2>[0-9]*)_(?P<build2>[0-9]*))_(?P<jvm_impl>[a-z0-9]*)-[0-9]*\\.[0-9]*\\.[0-9]\\.tar\\.gz$", asset["name"])
if not match: continue
if match["os"] not in oses: continue
if match["image_type"] not in types: continue
if match["jvm_impl"] not in impls: continue
if match["architecture"] not in arch_to_nixos: continue
version = ".".join([
match["major1"] or match["major2"],
match["minor2"] or "0",
match["security1"] or match["security2"]
])
build = match["build1"] or match["build2"]
if latest_version and latest_version != (version, build): continue
latest_version = (version, build)
arch_map = (
out
.setdefault(match["jvm_impl"], {})
.setdefault(match["os"], {})
.setdefault(match["image_type"], {})
.setdefault(feature_version, {
"packageType": match["image_type"],
"vmType": match["jvm_impl"],
})
)
for nixos_arch in arch_to_nixos[match["architecture"]]:
arch_map[nixos_arch] = {
"url": asset["browser_download_url"],
"sha256": get_sha256(asset["browser_download_url"] + ".sha256.txt"),
"version": version,
"build": build,
}
return out
out = {}
for feature_version in feature_versions:
resp = requests.get(f"https://api.github.com/repos/ibmruntimes/semeru{feature_version}-binaries/releases")
if resp.status_code != 200:
print("error: could not fetch data for release {} (code {}) {}".format(feature_version, resp.status_code, resp.content), file=sys.stderr)
sys.exit(1)
generate_sources(resp.json(), f"openjdk{feature_version}", out)
with open("sources.json", "w") as f:
json.dump(out, f, indent=2, sort_keys=True)
f.write('\n')

View File

@ -0,0 +1,5 @@
args:
import ../temurin-bin/jdk-darwin-base.nix ({
name-prefix = "semeru";
brand-name = "IBM Semeru Runtime";
} // args)

View File

@ -0,0 +1,16 @@
{ lib, callPackage }:
let
sources = (lib.importJSON ./sources.json).openj9.mac;
common = opts: callPackage (import ./jdk-darwin-base.nix opts) {};
in
{
jdk-8 = common { sourcePerArch = sources.jdk.openjdk8; };
jre-8 = common { sourcePerArch = sources.jre.openjdk8; };
jdk-11 = common { sourcePerArch = sources.jdk.openjdk11; };
jre-11 = common { sourcePerArch = sources.jre.openjdk11; };
jdk-16 = common { sourcePerArch = sources.jdk.openjdk16; };
jre-16 = common { sourcePerArch = sources.jre.openjdk16; };
jdk-17 = common { sourcePerArch = sources.jdk.openjdk17; };
jre-17 = common { sourcePerArch = sources.jre.openjdk17; };
}

View File

@ -0,0 +1,5 @@
args:
import ../temurin-bin/jdk-linux-base.nix ({
name-prefix = "semeru";
brand-name = "IBM Semeru Runtime";
} // args)

View File

@ -0,0 +1,16 @@
{ lib, callPackage }:
let
sources = (lib.importJSON ./sources.json).openj9.linux;
common = opts: callPackage (import ./jdk-linux-base.nix opts) {};
in
{
jdk-8 = common { sourcePerArch = sources.jdk.openjdk8; };
jre-8 = common { sourcePerArch = sources.jre.openjdk8; };
jdk-11 = common { sourcePerArch = sources.jdk.openjdk11; };
jre-11 = common { sourcePerArch = sources.jre.openjdk11; };
jdk-16 = common { sourcePerArch = sources.jdk.openjdk16; };
jre-16 = common { sourcePerArch = sources.jre.openjdk16; };
jdk-17 = common { sourcePerArch = sources.jdk.openjdk17; };
jre-17 = common { sourcePerArch = sources.jre.openjdk17; };
}

View File

@ -0,0 +1,248 @@
{
"openj9": {
"linux": {
"jdk": {
"openjdk11": {
"aarch64": {
"build": "8",
"sha256": "488739171f84e3949df6ccb1c40eaf1b73541748b123d88780329648d6b383d0",
"url": "https://github.com/ibmruntimes/semeru11-binaries/releases/download/jdk-11.0.16%2B8_openj9-0.33.0/ibm-semeru-open-jdk_aarch64_linux_11.0.16_8_openj9-0.33.0.tar.gz",
"version": "11.0.16"
},
"packageType": "jdk",
"vmType": "openj9",
"x86_64": {
"build": "8",
"sha256": "eeca01d4e245a001d01663c5c20a8d50ef3d572b47a9b3689a5154f2a37bf005",
"url": "https://github.com/ibmruntimes/semeru11-binaries/releases/download/jdk-11.0.16%2B8_openj9-0.33.0/ibm-semeru-open-jdk_x64_linux_11.0.16_8_openj9-0.33.0.tar.gz",
"version": "11.0.16"
}
},
"openjdk16": {
"aarch64": {
"build": "7",
"sha256": "022cda1210331488c3db3d0d1282ea74467397fdabc34cb482cdfe81c45f6a15",
"url": "https://github.com/ibmruntimes/semeru16-binaries/releases/download/jdk-16.0.2%2B7_openj9-0.27.0/ibm-semeru-open-jdk_aarch64_linux_16.0.2_7_openj9-0.27.0.tar.gz",
"version": "16.0.2"
},
"packageType": "jdk",
"vmType": "openj9",
"x86_64": {
"build": "7",
"sha256": "1349eb9a1d9af491a1984d66a80126730357c4a5c4fcbe7112a2c832f6c0886e",
"url": "https://github.com/ibmruntimes/semeru16-binaries/releases/download/jdk-16.0.2%2B7_openj9-0.27.0/ibm-semeru-open-jdk_x64_linux_16.0.2_7_openj9-0.27.0.tar.gz",
"version": "16.0.2"
}
},
"openjdk17": {
"aarch64": {
"build": "8",
"sha256": "18d291411ee4a956018b4dcefe436971e73694128782617f1b44beca991956c5",
"url": "https://github.com/ibmruntimes/semeru17-binaries/releases/download/jdk-17.0.4%2B8_openj9-0.33.0/ibm-semeru-open-jdk_aarch64_linux_17.0.4_8_openj9-0.33.0.tar.gz",
"version": "17.0.4"
},
"packageType": "jdk",
"vmType": "openj9",
"x86_64": {
"build": "8",
"sha256": "78ae15d9e01fce3a473f4d6a90c331fb766211b950931088c2a85590f178ad39",
"url": "https://github.com/ibmruntimes/semeru17-binaries/releases/download/jdk-17.0.4%2B8_openj9-0.33.0/ibm-semeru-open-jdk_x64_linux_17.0.4_8_openj9-0.33.0.tar.gz",
"version": "17.0.4"
}
},
"openjdk8": {
"aarch64": {
"build": "01",
"sha256": "6b89e648899709459b7c7dbe0a5b1ea480a88da84c6163f01255d638dbdd051b",
"url": "https://github.com/ibmruntimes/semeru8-binaries/releases/download/8u345-b01_openj9-0.33.0/ibm-semeru-open-jdk_aarch64_linux_8u345b01_openj9-0.33.0.tar.gz",
"version": "8.0.345"
},
"packageType": "jdk",
"vmType": "openj9",
"x86_64": {
"build": "01",
"sha256": "82c8232a5cb420246457d65a5014602feb8b288079cdae896e22a2eb6e390b58",
"url": "https://github.com/ibmruntimes/semeru8-binaries/releases/download/8u345-b01_openj9-0.33.0/ibm-semeru-open-jdk_x64_linux_8u345b01_openj9-0.33.0.tar.gz",
"version": "8.0.345"
}
}
},
"jre": {
"openjdk11": {
"aarch64": {
"build": "8",
"sha256": "49dc05a3e9f3f99c5f8fa466261aa3e33a753694c67cabfa7d3f682e5a2e3685",
"url": "https://github.com/ibmruntimes/semeru11-binaries/releases/download/jdk-11.0.16%2B8_openj9-0.33.0/ibm-semeru-open-jre_aarch64_linux_11.0.16_8_openj9-0.33.0.tar.gz",
"version": "11.0.16"
},
"packageType": "jre",
"vmType": "openj9",
"x86_64": {
"build": "8",
"sha256": "ba09711193b8b8664478f3f949b5320232f65c1bdf61f32a885d84de73c02767",
"url": "https://github.com/ibmruntimes/semeru11-binaries/releases/download/jdk-11.0.16%2B8_openj9-0.33.0/ibm-semeru-open-jre_x64_linux_11.0.16_8_openj9-0.33.0.tar.gz",
"version": "11.0.16"
}
},
"openjdk16": {
"aarch64": {
"build": "7",
"sha256": "575dc3827077fc661fd1103effaa13ccd0f1606d01a33643956ed2eb1ece9763",
"url": "https://github.com/ibmruntimes/semeru16-binaries/releases/download/jdk-16.0.2%2B7_openj9-0.27.0/ibm-semeru-open-jre_aarch64_linux_16.0.2_7_openj9-0.27.0.tar.gz",
"version": "16.0.2"
},
"packageType": "jre",
"vmType": "openj9",
"x86_64": {
"build": "7",
"sha256": "b077cd0b35d3ed1927c22e5b498264ecff67297992809056187b42662edfc536",
"url": "https://github.com/ibmruntimes/semeru16-binaries/releases/download/jdk-16.0.2%2B7_openj9-0.27.0/ibm-semeru-open-jre_x64_linux_16.0.2_7_openj9-0.27.0.tar.gz",
"version": "16.0.2"
}
},
"openjdk17": {
"aarch64": {
"build": "8",
"sha256": "6c40c1e0d7ee0509c44465e9f26dd970904137a95fd751e6447b1d6a9ef5092a",
"url": "https://github.com/ibmruntimes/semeru17-binaries/releases/download/jdk-17.0.4%2B8_openj9-0.33.0/ibm-semeru-open-jre_aarch64_linux_17.0.4_8_openj9-0.33.0.tar.gz",
"version": "17.0.4"
},
"packageType": "jre",
"vmType": "openj9",
"x86_64": {
"build": "8",
"sha256": "b2c176f8aa8cc7138d4c22ce9298d8f49597e1d8e3fdd33125898e5ee0182c93",
"url": "https://github.com/ibmruntimes/semeru17-binaries/releases/download/jdk-17.0.4%2B8_openj9-0.33.0/ibm-semeru-open-jre_x64_linux_17.0.4_8_openj9-0.33.0.tar.gz",
"version": "17.0.4"
}
},
"openjdk8": {
"aarch64": {
"build": "01",
"sha256": "03caff41622e84a6e7fa66a225414a9b6eefb38dd215f830cae0bc4bbfc55b5c",
"url": "https://github.com/ibmruntimes/semeru8-binaries/releases/download/8u345-b01_openj9-0.33.0/ibm-semeru-open-jre_aarch64_linux_8u345b01_openj9-0.33.0.tar.gz",
"version": "8.0.345"
},
"packageType": "jre",
"vmType": "openj9",
"x86_64": {
"build": "01",
"sha256": "0d4fe62716b9da2ccce324b5b46d57e8d47e5dfb5d128f87e16135ee9bc36cdc",
"url": "https://github.com/ibmruntimes/semeru8-binaries/releases/download/8u345-b01_openj9-0.33.0/ibm-semeru-open-jre_x64_linux_8u345b01_openj9-0.33.0.tar.gz",
"version": "8.0.345"
}
}
}
},
"mac": {
"jdk": {
"openjdk11": {
"aarch64": {
"build": "8",
"sha256": "9881b292142a129f6f5c6b21608b090f8f94625052b4f7d0ce5bd982c054ca2e",
"url": "https://github.com/ibmruntimes/semeru11-binaries/releases/download/jdk-11.0.16%2B8_openj9-0.33.0/ibm-semeru-open-jdk_aarch64_mac_11.0.16_8_openj9-0.33.0.tar.gz",
"version": "11.0.16"
},
"packageType": "jdk",
"vmType": "openj9",
"x86_64": {
"build": "8",
"sha256": "8638735d2cae3efff212f898728685380355bb0a298076e9e46244d0bf3d4a64",
"url": "https://github.com/ibmruntimes/semeru11-binaries/releases/download/jdk-11.0.16%2B8_openj9-0.33.0/ibm-semeru-open-jdk_x64_mac_11.0.16_8_openj9-0.33.0.tar.gz",
"version": "11.0.16"
}
},
"openjdk16": {
"packageType": "jdk",
"vmType": "openj9",
"x86_64": {
"build": "7",
"sha256": "89e807261145243a358a2a626f64340944c03622f34eaa35429053e2085d7aef",
"url": "https://github.com/ibmruntimes/semeru16-binaries/releases/download/jdk-16.0.2%2B7_openj9-0.27.0/ibm-semeru-open-jdk_x64_mac_16.0.2_7_openj9-0.27.0.tar.gz",
"version": "16.0.2"
}
},
"openjdk17": {
"aarch64": {
"build": "8",
"sha256": "bf22628b54115dff9939b94751531544ab735b7cbbc8d6ddfe83d1b04df3a532",
"url": "https://github.com/ibmruntimes/semeru17-binaries/releases/download/jdk-17.0.4%2B8_openj9-0.33.0/ibm-semeru-open-jdk_aarch64_mac_17.0.4_8_openj9-0.33.0.tar.gz",
"version": "17.0.4"
},
"packageType": "jdk",
"vmType": "openj9",
"x86_64": {
"build": "8",
"sha256": "a935f20564e347a9292955c04eb57e51efdb1853ae7f0b4fe759b22c9fe248be",
"url": "https://github.com/ibmruntimes/semeru17-binaries/releases/download/jdk-17.0.4%2B8_openj9-0.33.0/ibm-semeru-open-jdk_x64_mac_17.0.4_8_openj9-0.33.0.tar.gz",
"version": "17.0.4"
}
},
"openjdk8": {
"packageType": "jdk",
"vmType": "openj9",
"x86_64": {
"build": "01",
"sha256": "c69086950c006b17484a70ef7bc85e92d121be15e69e282e1446fd238d42b6b4",
"url": "https://github.com/ibmruntimes/semeru8-binaries/releases/download/8u345-b01_openj9-0.33.0/ibm-semeru-open-jdk_x64_mac_8u345b01_openj9-0.33.0.tar.gz",
"version": "8.0.345"
}
}
},
"jre": {
"openjdk11": {
"aarch64": {
"build": "8",
"sha256": "39802020896476342dc11486e3cbdf10f6311c172abeb4a1e2931b472da4417e",
"url": "https://github.com/ibmruntimes/semeru11-binaries/releases/download/jdk-11.0.16%2B8_openj9-0.33.0/ibm-semeru-open-jre_aarch64_mac_11.0.16_8_openj9-0.33.0.tar.gz",
"version": "11.0.16"
},
"packageType": "jre",
"vmType": "openj9",
"x86_64": {
"build": "8",
"sha256": "92f87a3c2fb5fe60d3d51020ff95b9c234b2ae2677b79aebbe749dda717c9cdd",
"url": "https://github.com/ibmruntimes/semeru11-binaries/releases/download/jdk-11.0.16%2B8_openj9-0.33.0/ibm-semeru-open-jre_x64_mac_11.0.16_8_openj9-0.33.0.tar.gz",
"version": "11.0.16"
}
},
"openjdk16": {
"packageType": "jre",
"vmType": "openj9",
"x86_64": {
"build": "7",
"sha256": "2cb8007de405d0c8f160549309bcfc1adc82e304eb372e86ce0e0a214239438f",
"url": "https://github.com/ibmruntimes/semeru16-binaries/releases/download/jdk-16.0.2%2B7_openj9-0.27.0/ibm-semeru-open-jre_x64_mac_16.0.2_7_openj9-0.27.0.tar.gz",
"version": "16.0.2"
}
},
"openjdk17": {
"aarch64": {
"build": "8",
"sha256": "4057c94cd46b814cc5a4d683d5f0b95dbd0b9e13e8c2e11155561ad0d8bec85b",
"url": "https://github.com/ibmruntimes/semeru17-binaries/releases/download/jdk-17.0.4%2B8_openj9-0.33.0/ibm-semeru-open-jre_aarch64_mac_17.0.4_8_openj9-0.33.0.tar.gz",
"version": "17.0.4"
},
"packageType": "jre",
"vmType": "openj9",
"x86_64": {
"build": "8",
"sha256": "8e957d2eb47eaca64516ac669272c6e5186155ed8ee4d6a77e0d4b7811cd7bb6",
"url": "https://github.com/ibmruntimes/semeru17-binaries/releases/download/jdk-17.0.4%2B8_openj9-0.33.0/ibm-semeru-open-jre_x64_mac_17.0.4_8_openj9-0.33.0.tar.gz",
"version": "17.0.4"
}
},
"openjdk8": {
"packageType": "jre",
"vmType": "openj9",
"x86_64": {
"build": "01",
"sha256": "019e08dea8fbd54517dacbeac791d85717902800dd8bba77fbca1dfc6b0abd9e",
"url": "https://github.com/ibmruntimes/semeru8-binaries/releases/download/8u345-b01_openj9-0.33.0/ibm-semeru-open-jre_x64_mac_8u345b01_openj9-0.33.0.tar.gz",
"version": "8.0.345"
}
}
}
}
}
}

View File

@ -0,0 +1,71 @@
#!/usr/bin/env nix-shell
#!nix-shell --pure -i python3 -p "python3.withPackages (ps: with ps; [ requests ])"
import json
import re
import requests
import sys
feature_versions = (8, 11, 16, 17)
oses = ("mac", "linux")
types = ("jre", "jdk")
impls = ("hotspot")
arch_to_nixos = {
"x64": ("x86_64",),
"aarch64": ("aarch64",),
"arm": ("armv6l", "armv7l"),
}
def generate_sources(assets, feature_version, out):
for asset in assets:
binary = asset["binary"]
if binary["os"] not in oses: continue
if binary["image_type"] not in types: continue
if binary["jvm_impl"] not in impls: continue
if binary["heap_size"] != "normal": continue
if binary["architecture"] not in arch_to_nixos: continue
version = ".".join(str(v) for v in [
asset["version"]["major"],
asset["version"]["minor"],
asset["version"]["security"]
])
build = str(asset["version"]["build"])
arch_map = (
out
.setdefault(binary["jvm_impl"], {})
.setdefault(binary["os"], {})
.setdefault(binary["image_type"], {})
.setdefault(feature_version, {
"packageType": binary["image_type"],
"vmType": binary["jvm_impl"],
})
)
for nixos_arch in arch_to_nixos[binary["architecture"]]:
arch_map[nixos_arch] = {
"url": binary["package"]["link"],
"sha256": binary["package"]["checksum"],
"version": version,
"build": build,
}
return out
out = {}
for feature_version in feature_versions:
# Default user-agenet is blocked by Azure WAF.
headers = {'user-agent': 'nixpkgs-temurin-generate-sources/1.0.0'}
resp = requests.get(f"https://api.adoptium.net/v3/assets/latest/{feature_version}/hotspot", headers=headers)
if resp.status_code != 200:
print("error: could not fetch data for release {} (code {}) {}".format(feature_version, resp.status_code, resp.content), file=sys.stderr)
sys.exit(1)
generate_sources(resp.json(), f"openjdk{feature_version}", out)
with open("sources.json", "w") as f:
json.dump(out, f, indent=2, sort_keys=True)
f.write('\n')

View File

@ -0,0 +1,74 @@
{ name-prefix ? "temurin"
, brand-name ? "Eclipse Temurin"
, sourcePerArch
, knownVulnerabilities ? []
}:
{ swingSupport ? true # not used for now
, lib, stdenv
, fetchurl
, setJavaClassPath
}:
let
cpuName = stdenv.hostPlatform.parsed.cpu.name;
validCpuTypes = builtins.attrNames lib.systems.parse.cpuTypes;
providedCpuTypes = builtins.filter
(arch: builtins.elem arch validCpuTypes)
(builtins.attrNames sourcePerArch);
result = stdenv.mkDerivation {
pname = if sourcePerArch.packageType == "jdk"
then "${name-prefix}-bin"
else "${name-prefix}-${sourcePerArch.packageType}-bin";
version =
sourcePerArch.${cpuName}.version or (throw "unsupported CPU ${cpuName}");
src = fetchurl {
inherit (sourcePerArch.${cpuName}) url sha256;
};
# See: https://github.com/NixOS/patchelf/issues/10
dontStrip = 1;
installPhase = ''
cd ..
mv $sourceRoot $out
# jni.h expects jni_md.h to be in the header search path.
ln -s $out/Contents/Home/include/darwin/*_md.h $out/Contents/Home/include/
# Remove some broken manpages.
# Only for 11 and earlier.
[ -e "$out/Contents/Home/man/ja" ] && rm -r $out/Contents/Home/man/ja
ln -s $out/Contents/Home/* $out/
# Propagate the setJavaClassPath setup hook from the JDK so that
# any package that depends on the JDK has $CLASSPATH set up
# properly.
mkdir -p $out/nix-support
printWords ${setJavaClassPath} > $out/nix-support/propagated-build-inputs
# Set JAVA_HOME automatically.
cat <<EOF >> $out/nix-support/setup-hook
if [ -z "\''${JAVA_HOME-}" ]; then export JAVA_HOME=$out; fi
EOF
'';
# FIXME: use multiple outputs or return actual JRE package
passthru = {
jre = result;
home = result;
};
meta = with lib; {
license = licenses.gpl2Classpath;
description = "${brand-name}, prebuilt OpenJDK binary";
platforms = builtins.map (arch: arch + "-darwin") providedCpuTypes; # some inherit jre.meta.platforms
maintainers = with maintainers; [ taku0 ];
inherit knownVulnerabilities;
mainProgram = "java";
};
};
in result

View File

@ -0,0 +1,15 @@
{ lib, callPackage }:
let
sources = (lib.importJSON ./sources.json).hotspot.mac;
common = opts: callPackage (import ./jdk-darwin-base.nix opts) {};
in
{
jdk-8 = common { sourcePerArch = sources.jdk.openjdk8; };
jre-8 = common { sourcePerArch = sources.jre.openjdk8; };
jdk-11 = common { sourcePerArch = sources.jdk.openjdk11; };
jre-11 = common { sourcePerArch = sources.jre.openjdk11; };
jdk-16 = common { sourcePerArch = sources.jdk.openjdk16; };
jdk-17 = common { sourcePerArch = sources.jdk.openjdk17; };
jre-17 = common { sourcePerArch = sources.jre.openjdk17; };
}

View File

@ -0,0 +1,129 @@
{ name-prefix ? "temurin"
, brand-name ? "Eclipse Temurin"
, sourcePerArch
, knownVulnerabilities ? []
}:
{ stdenv
, lib
, fetchurl
, autoPatchelfHook
, makeWrapper
, setJavaClassPath
# minimum dependencies
, alsa-lib
, fontconfig
, freetype
, libffi
, xorg
, zlib
# runtime dependencies
, cups
# runtime dependencies for GTK+ Look and Feel
, gtkSupport ? true
, cairo
, glib
, gtk3
}:
let
cpuName = stdenv.hostPlatform.parsed.cpu.name;
runtimeDependencies = [
cups
] ++ lib.optionals gtkSupport [
cairo glib gtk3
];
runtimeLibraryPath = lib.makeLibraryPath runtimeDependencies;
validCpuTypes = builtins.attrNames lib.systems.parse.cpuTypes;
providedCpuTypes = builtins.filter
(arch: builtins.elem arch validCpuTypes)
(builtins.attrNames sourcePerArch);
result = stdenv.mkDerivation rec {
pname = if sourcePerArch.packageType == "jdk"
then "${name-prefix}-bin"
else "${name-prefix}-${sourcePerArch.packageType}-bin";
version =
sourcePerArch.${cpuName}.version or (throw "unsupported CPU ${cpuName}");
src = fetchurl {
inherit (sourcePerArch.${cpuName}) url sha256;
};
buildInputs = [
alsa-lib # libasound.so wanted by lib/libjsound.so
fontconfig
freetype
stdenv.cc.cc.lib # libstdc++.so.6
xorg.libX11
xorg.libXext
xorg.libXi
xorg.libXrender
xorg.libXtst
zlib
] ++ lib.optional stdenv.isAarch32 libffi;
nativeBuildInputs = [ autoPatchelfHook makeWrapper ];
# See: https://github.com/NixOS/patchelf/issues/10
dontStrip = 1;
installPhase = ''
cd ..
mv $sourceRoot $out
# jni.h expects jni_md.h to be in the header search path.
ln -s $out/include/linux/*_md.h $out/include/
# Remove some broken manpages.
# Only for 11 and earlier.
[ -e "$out/man/ja" ] && rm -r $out/man/ja*
# Remove embedded freetype to avoid problems like
# https://github.com/NixOS/nixpkgs/issues/57733
find "$out" -name 'libfreetype.so*' -delete
# Propagate the setJavaClassPath setup hook from the JDK so that
# any package that depends on the JDK has $CLASSPATH set up
# properly.
mkdir -p $out/nix-support
printWords ${setJavaClassPath} > $out/nix-support/propagated-build-inputs
# Set JAVA_HOME automatically.
cat <<EOF >> "$out/nix-support/setup-hook"
if [ -z "\''${JAVA_HOME-}" ]; then export JAVA_HOME=$out; fi
EOF
# We cannot use -exec since wrapProgram is a function but not a command.
#
# jspawnhelper is executed from JVM, so it doesn't need to wrap it, and it
# breaks building OpenJDK (#114495).
for bin in $( find "$out" -executable -type f -not -name jspawnhelper ); do
if patchelf --print-interpreter "$bin" &> /dev/null; then
wrapProgram "$bin" --prefix LD_LIBRARY_PATH : "${runtimeLibraryPath}"
fi
done
'';
preFixup = ''
find "$out" -name libfontmanager.so -exec \
patchelf --add-needed libfontconfig.so {} \;
'';
# FIXME: use multiple outputs or return actual JRE package
passthru = {
jre = result;
home = result;
};
meta = with lib; {
license = licenses.gpl2Classpath;
description = "${brand-name}, prebuilt OpenJDK binary";
platforms = builtins.map (arch: arch + "-linux") providedCpuTypes; # some inherit jre.meta.platforms
maintainers = with maintainers; [ taku0 ];
inherit knownVulnerabilities;
mainProgram = "java";
};
};
in result

View File

@ -0,0 +1,15 @@
{ lib, callPackage }:
let
sources = (lib.importJSON ./sources.json).hotspot.linux;
common = opts: callPackage (import ./jdk-linux-base.nix opts) {};
in
{
jdk-8 = common { sourcePerArch = sources.jdk.openjdk8; };
jre-8 = common { sourcePerArch = sources.jre.openjdk8; };
jdk-11 = common { sourcePerArch = sources.jdk.openjdk11; };
jre-11 = common { sourcePerArch = sources.jre.openjdk11; };
jdk-16 = common { sourcePerArch = sources.jdk.openjdk16; };
jdk-17 = common { sourcePerArch = sources.jdk.openjdk17; };
jre-17 = common { sourcePerArch = sources.jre.openjdk17; };
}

View File

@ -0,0 +1,306 @@
{
"hotspot": {
"linux": {
"jdk": {
"openjdk11": {
"aarch64": {
"build": "1",
"sha256": "2b89cabf0ce1c2cedadd92b798d6e9056bc27c71a06f5ba24ede5dc9c316e3e8",
"url": "https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.16.1%2B1/OpenJDK11U-jdk_aarch64_linux_hotspot_11.0.16.1_1.tar.gz",
"version": "11.0.16"
},
"armv6l": {
"build": "1",
"sha256": "a703acfd04ece4a4aac4cb9bda26b7d225874008bba324237bd6f53792edb778",
"url": "https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.16.1%2B1/OpenJDK11U-jdk_arm_linux_hotspot_11.0.16.1_1.tar.gz",
"version": "11.0.16"
},
"armv7l": {
"build": "1",
"sha256": "a703acfd04ece4a4aac4cb9bda26b7d225874008bba324237bd6f53792edb778",
"url": "https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.16.1%2B1/OpenJDK11U-jdk_arm_linux_hotspot_11.0.16.1_1.tar.gz",
"version": "11.0.16"
},
"packageType": "jdk",
"vmType": "hotspot",
"x86_64": {
"build": "1",
"sha256": "5f6b513757d386352cf91514ed5859d1ab59364b4453e1f1c57152ba2039b8e2",
"url": "https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.16.1%2B1/OpenJDK11U-jdk_x64_linux_hotspot_11.0.16.1_1.tar.gz",
"version": "11.0.16"
}
},
"openjdk16": {
"aarch64": {
"build": "7",
"sha256": "cb77d9d126f97898dfdc8b5fb694d1e0e5d93d13a0a6cb2aeda76f8635384340",
"url": "https://github.com/adoptium/temurin16-binaries/releases/download/jdk-16.0.2%2B7/OpenJDK16U-jdk_aarch64_linux_hotspot_16.0.2_7.tar.gz",
"version": "16.0.2"
},
"armv6l": {
"build": "7",
"sha256": "7721ef81416af8122a28448f3d661eb4bda40a9f78d400e4ecc55b58e627a00c",
"url": "https://github.com/adoptium/temurin16-binaries/releases/download/jdk-16.0.2%2B7/OpenJDK16U-jdk_arm_linux_hotspot_16.0.2_7.tar.gz",
"version": "16.0.2"
},
"armv7l": {
"build": "7",
"sha256": "7721ef81416af8122a28448f3d661eb4bda40a9f78d400e4ecc55b58e627a00c",
"url": "https://github.com/adoptium/temurin16-binaries/releases/download/jdk-16.0.2%2B7/OpenJDK16U-jdk_arm_linux_hotspot_16.0.2_7.tar.gz",
"version": "16.0.2"
},
"packageType": "jdk",
"vmType": "hotspot",
"x86_64": {
"build": "7",
"sha256": "323d6d7474a359a28eff7ddd0df8e65bd61554a8ed12ef42fd9365349e573c2c",
"url": "https://github.com/adoptium/temurin16-binaries/releases/download/jdk-16.0.2%2B7/OpenJDK16U-jdk_x64_linux_hotspot_16.0.2_7.tar.gz",
"version": "16.0.2"
}
},
"openjdk17": {
"aarch64": {
"build": "1",
"sha256": "3c7460de77421284b38b4e57cb1bd584a6cef55c34fc51a12270620544de2b8a",
"url": "https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.4.1%2B1/OpenJDK17U-jdk_aarch64_linux_hotspot_17.0.4.1_1.tar.gz",
"version": "17.0.4"
},
"armv6l": {
"build": "1",
"sha256": "efba97cd38af8f43b61f09cb5041f81d92ecd005dcd51c81678fbcf4f24d8461",
"url": "https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.4.1%2B1/OpenJDK17U-jdk_arm_linux_hotspot_17.0.4.1_1.tar.gz",
"version": "17.0.4"
},
"armv7l": {
"build": "1",
"sha256": "efba97cd38af8f43b61f09cb5041f81d92ecd005dcd51c81678fbcf4f24d8461",
"url": "https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.4.1%2B1/OpenJDK17U-jdk_arm_linux_hotspot_17.0.4.1_1.tar.gz",
"version": "17.0.4"
},
"packageType": "jdk",
"vmType": "hotspot",
"x86_64": {
"build": "1",
"sha256": "5fbf8b62c44f10be2efab97c5f5dbf15b74fae31e451ec10abbc74e54a04ff44",
"url": "https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.4.1%2B1/OpenJDK17U-jdk_x64_linux_hotspot_17.0.4.1_1.tar.gz",
"version": "17.0.4"
}
},
"openjdk8": {
"aarch64": {
"build": "1",
"sha256": "c1965fb24dded7d7944e2da36cd902adf3b7b1d327aaa21ea507cff00a5a0090",
"url": "https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u345-b01/OpenJDK8U-jdk_aarch64_linux_hotspot_8u345b01.tar.gz",
"version": "8.0.345"
},
"armv6l": {
"build": "1",
"sha256": "af4ecd311df32b405142d5756f966418d0200fbf6cb9009c20a44dc691e8da6f",
"url": "https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u345-b01/OpenJDK8U-jdk_arm_linux_hotspot_8u345b01.tar.gz",
"version": "8.0.345"
},
"armv7l": {
"build": "1",
"sha256": "af4ecd311df32b405142d5756f966418d0200fbf6cb9009c20a44dc691e8da6f",
"url": "https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u345-b01/OpenJDK8U-jdk_arm_linux_hotspot_8u345b01.tar.gz",
"version": "8.0.345"
},
"packageType": "jdk",
"vmType": "hotspot",
"x86_64": {
"build": "1",
"sha256": "ed6c9db3719895584fb1fd69fc79c29240977675f26631911c5a1dbce07b7d58",
"url": "https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u345-b01/OpenJDK8U-jdk_x64_linux_hotspot_8u345b01.tar.gz",
"version": "8.0.345"
}
}
},
"jre": {
"openjdk11": {
"aarch64": {
"build": "1",
"sha256": "b6607f28fa2906d612d517f0babe4f0f895aa1c3f901edcddb493e33c1e27364",
"url": "https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.16.1%2B1/OpenJDK11U-jre_aarch64_linux_hotspot_11.0.16.1_1.tar.gz",
"version": "11.0.16"
},
"armv6l": {
"build": "1",
"sha256": "2ee7fe636a6a57e4718dfe597e8097b93ef8d976e4b05384433777c9f0526f5a",
"url": "https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.16.1%2B1/OpenJDK11U-jre_arm_linux_hotspot_11.0.16.1_1.tar.gz",
"version": "11.0.16"
},
"armv7l": {
"build": "1",
"sha256": "2ee7fe636a6a57e4718dfe597e8097b93ef8d976e4b05384433777c9f0526f5a",
"url": "https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.16.1%2B1/OpenJDK11U-jre_arm_linux_hotspot_11.0.16.1_1.tar.gz",
"version": "11.0.16"
},
"packageType": "jre",
"vmType": "hotspot",
"x86_64": {
"build": "1",
"sha256": "1ffe1a682e8179e35238bf3f93aba0cb185850e202c676f41d38cb0561883eda",
"url": "https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.16.1%2B1/OpenJDK11U-jre_x64_linux_hotspot_11.0.16.1_1.tar.gz",
"version": "11.0.16"
}
},
"openjdk17": {
"aarch64": {
"build": "1",
"sha256": "2e4137529319cd7935f74e1289025b7b4c794c0fb47a3d138adffbd1bbc0ea58",
"url": "https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.4.1%2B1/OpenJDK17U-jre_aarch64_linux_hotspot_17.0.4.1_1.tar.gz",
"version": "17.0.4"
},
"armv6l": {
"build": "1",
"sha256": "b63f532cb8b30e4d0bd18d52f08c1933e3cf66aeb373180d002274b6d94b4a25",
"url": "https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.4.1%2B1/OpenJDK17U-jre_arm_linux_hotspot_17.0.4.1_1.tar.gz",
"version": "17.0.4"
},
"armv7l": {
"build": "1",
"sha256": "b63f532cb8b30e4d0bd18d52f08c1933e3cf66aeb373180d002274b6d94b4a25",
"url": "https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.4.1%2B1/OpenJDK17U-jre_arm_linux_hotspot_17.0.4.1_1.tar.gz",
"version": "17.0.4"
},
"packageType": "jre",
"vmType": "hotspot",
"x86_64": {
"build": "1",
"sha256": "e96814ee145a599397d91e16831d2dddc3c6b8e8517a8527e28e727649aaa2d1",
"url": "https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.4.1%2B1/OpenJDK17U-jre_x64_linux_hotspot_17.0.4.1_1.tar.gz",
"version": "17.0.4"
}
},
"openjdk8": {
"aarch64": {
"build": "1",
"sha256": "65b8bd74382d6514d2458ff4375468651791a55a186a5bffe0803204801e9c94",
"url": "https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u345-b01/OpenJDK8U-jre_aarch64_linux_hotspot_8u345b01.tar.gz",
"version": "8.0.345"
},
"armv6l": {
"build": "1",
"sha256": "a9dd1ea4280a85158191101688bbf1920c4676a3849e22dc7783fb61f60d6199",
"url": "https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u345-b01/OpenJDK8U-jre_arm_linux_hotspot_8u345b01.tar.gz",
"version": "8.0.345"
},
"armv7l": {
"build": "1",
"sha256": "a9dd1ea4280a85158191101688bbf1920c4676a3849e22dc7783fb61f60d6199",
"url": "https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u345-b01/OpenJDK8U-jre_arm_linux_hotspot_8u345b01.tar.gz",
"version": "8.0.345"
},
"packageType": "jre",
"vmType": "hotspot",
"x86_64": {
"build": "1",
"sha256": "2422a8831fe414b9dba4c443ee3562431dfcde27577124f0db58ec903afc262a",
"url": "https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u345-b01/OpenJDK8U-jre_x64_linux_hotspot_8u345b01.tar.gz",
"version": "8.0.345"
}
}
}
},
"mac": {
"jdk": {
"openjdk11": {
"aarch64": {
"build": "1",
"sha256": "1953f06702d45eb54bae3ccf453b57c33de827015f5623a2dfc16e1c83e6b0a1",
"url": "https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.16.1%2B1/OpenJDK11U-jdk_aarch64_mac_hotspot_11.0.16.1_1.tar.gz",
"version": "11.0.16"
},
"packageType": "jdk",
"vmType": "hotspot",
"x86_64": {
"build": "1",
"sha256": "723548e36e0b3e0a5a2f36a38b22ea825d3004e26054a0e254854adc57045352",
"url": "https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.16.1%2B1/OpenJDK11U-jdk_x64_mac_hotspot_11.0.16.1_1.tar.gz",
"version": "11.0.16"
}
},
"openjdk16": {
"packageType": "jdk",
"vmType": "hotspot",
"x86_64": {
"build": "7",
"sha256": "27975d9e695cfbb93861540926f9f7bcac973a254ceecbee549706a99cbbdf95",
"url": "https://github.com/adoptium/temurin16-binaries/releases/download/jdk-16.0.2%2B7/OpenJDK16U-jdk_x64_mac_hotspot_16.0.2_7.tar.gz",
"version": "16.0.2"
}
},
"openjdk17": {
"aarch64": {
"build": "1",
"sha256": "3a976943a9e6a635e68e2b06bd093fc096aad9f5894acda673d3bea0cb3a6f38",
"url": "https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.4.1%2B1/OpenJDK17U-jdk_aarch64_mac_hotspot_17.0.4.1_1.tar.gz",
"version": "17.0.4"
},
"packageType": "jdk",
"vmType": "hotspot",
"x86_64": {
"build": "1",
"sha256": "ac21a5a87f7cfa00212ab7c41f7eb80ca33640d83b63ad850be811c24095d61a",
"url": "https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.4.1%2B1/OpenJDK17U-jdk_x64_mac_hotspot_17.0.4.1_1.tar.gz",
"version": "17.0.4"
}
},
"openjdk8": {
"packageType": "jdk",
"vmType": "hotspot",
"x86_64": {
"build": "1",
"sha256": "3eeba0e76101b9f5e8eb9eb14ad991293cf0cc064df35f6a89882b603630f0c8",
"url": "https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u345-b01/OpenJDK8U-jdk_x64_mac_hotspot_8u345b01.tar.gz",
"version": "8.0.345"
}
}
},
"jre": {
"openjdk11": {
"aarch64": {
"build": "1",
"sha256": "c84f38a7d87d50649ffc1f625facb4398fa54885371336a2cbf6ae2b435cbd10",
"url": "https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.16.1%2B1/OpenJDK11U-jre_aarch64_mac_hotspot_11.0.16.1_1.tar.gz",
"version": "11.0.16"
},
"packageType": "jre",
"vmType": "hotspot",
"x86_64": {
"build": "1",
"sha256": "10be61a8dd3766f7c12e2e823a6eca48cc6361d97e1b76310c752bd39770c7fe",
"url": "https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.16.1%2B1/OpenJDK11U-jre_x64_mac_hotspot_11.0.16.1_1.tar.gz",
"version": "11.0.16"
}
},
"openjdk17": {
"aarch64": {
"build": "1",
"sha256": "63a32fe611f2666856e84b79305eb80609de229bbce4f13991b961797aa88bf8",
"url": "https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.4.1%2B1/OpenJDK17U-jre_aarch64_mac_hotspot_17.0.4.1_1.tar.gz",
"version": "17.0.4"
},
"packageType": "jre",
"vmType": "hotspot",
"x86_64": {
"build": "1",
"sha256": "9c59e45a9a6cbc1b8d671c4a88bb8d9b8929fae067df0d0a73b1ca71781a0996",
"url": "https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.4.1%2B1/OpenJDK17U-jre_x64_mac_hotspot_17.0.4.1_1.tar.gz",
"version": "17.0.4"
}
},
"openjdk8": {
"packageType": "jre",
"vmType": "hotspot",
"x86_64": {
"build": "1",
"sha256": "6161240769bd784e5ad55105fab9782d787ad34b7b8efd1f730a05f2659455d2",
"url": "https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u345-b01/OpenJDK8U-jre_x64_mac_hotspot_8u345b01.tar.gz",
"version": "8.0.345"
}
}
}
}
}
}

View File

@ -56,6 +56,8 @@ mapAliases ({
accounts-qt = throw "'accounts-qt' has been renamed to/replaced by 'libsForQt5.accounts-qt'"; # Converted to throw 2022-02-22
adobeReader = throw "'adobeReader' has been renamed to/replaced by 'adobe-reader'"; # Converted to throw 2022-02-22
adobe_flex_sdk = throw "'adobe_flex_sdk' has been renamed to/replaced by 'apache-flex-sdk'"; # Converted to throw 2022-02-22
adoptopenjdk-hotspot-bin-17 = throw "AdoptOpenJDK is now Temurin. Use temurin-bin-17"; # added 2022-07-02
adoptopenjdk-jre-hotspot-bin-17 = throw "AdoptOpenJDK is now Temurin and JRE is no longer provided. Use temurin-bin-17"; # added 2022-07-02
aesop = throw "aesop has been removed from nixpkgs, as it was unmaintained"; # Added 2021-08-05
ag = throw "'ag' has been renamed to/replaced by 'silver-searcher'"; # Converted to throw 2022-02-22
aircrackng = throw "'aircrackng' has been renamed to/replaced by 'aircrack-ng'"; # Converted to throw 2022-02-22

View File

@ -12936,113 +12936,48 @@ with pkgs;
jdk = jdk8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731
};
adoptopenjdk-bin-16-packages-linux = import ../development/compilers/adoptopenjdk-bin/jdk16-linux.nix { inherit lib; };
adoptopenjdk-bin-16-packages-darwin = import ../development/compilers/adoptopenjdk-bin/jdk16-darwin.nix { inherit lib; };
temurin-bin-17 = javaPackages.compiler.temurin-bin.jdk-17;
temurin-jre-bin-17 = javaPackages.compiler.temurin-bin.jre-17;
temurin-bin-16 = javaPackages.compiler.temurin-bin.jdk-16;
temurin-bin-11 = javaPackages.compiler.temurin-bin.jdk-11;
temurin-jre-bin-11 = javaPackages.compiler.temurin-bin.jre-11;
temurin-bin-8 = javaPackages.compiler.temurin-bin.jdk-8;
temurin-jre-bin-8 = javaPackages.compiler.temurin-bin.jre-8;
adoptopenjdk-hotspot-bin-16 = if stdenv.isLinux
then callPackage adoptopenjdk-bin-16-packages-linux.jdk-hotspot {}
else callPackage adoptopenjdk-bin-16-packages-darwin.jdk-hotspot {};
adoptopenjdk-jre-hotspot-bin-16 = if stdenv.isLinux
then callPackage adoptopenjdk-bin-16-packages-linux.jre-hotspot {}
else callPackage adoptopenjdk-bin-16-packages-darwin.jre-hotspot {};
temurin-bin = temurin-bin-17;
temurin-jre-bin = temurin-jre-bin-17;
adoptopenjdk-openj9-bin-16 = if stdenv.isLinux
then callPackage adoptopenjdk-bin-16-packages-linux.jdk-openj9 {}
else callPackage adoptopenjdk-bin-16-packages-darwin.jdk-openj9 {};
semeru-bin-17 = javaPackages.compiler.semeru-bin.jdk-17;
semeru-jre-bin-17 = javaPackages.compiler.semeru-bin.jre-17;
semeru-bin-16 = javaPackages.compiler.semeru-bin.jdk-16;
semeru-jre-bin-16 = javaPackages.compiler.semeru-bin.jre-16;
semeru-bin-11 = javaPackages.compiler.semeru-bin.jdk-11;
semeru-jre-bin-11 = javaPackages.compiler.semeru-bin.jre-11;
semeru-bin-8 = javaPackages.compiler.semeru-bin.jdk-8;
semeru-jre-bin-8 = javaPackages.compiler.semeru-bin.jre-8;
adoptopenjdk-jre-openj9-bin-16 = if stdenv.isLinux
then callPackage adoptopenjdk-bin-16-packages-linux.jre-openj9 {}
else callPackage adoptopenjdk-bin-16-packages-darwin.jre-openj9 {};
semeru-bin = semeru-bin-17;
semeru-jre-bin = semeru-jre-bin-17;
adoptopenjdk-bin-15-packages-linux = import ../development/compilers/adoptopenjdk-bin/jdk15-linux.nix { inherit lib; };
adoptopenjdk-bin-15-packages-darwin = import ../development/compilers/adoptopenjdk-bin/jdk15-darwin.nix { inherit lib; };
adoptopenjdk-hotspot-bin-16 = javaPackages.compiler.adoptopenjdk-16.jdk-hotspot;
adoptopenjdk-jre-hotspot-bin-16 = javaPackages.compiler.adoptopenjdk-16.jre-hotspot;
adoptopenjdk-openj9-bin-16 = javaPackages.compiler.adoptopenjdk-16.jdk-openj9;
adoptopenjdk-jre-openj9-bin-16 = javaPackages.compiler.adoptopenjdk-16.jre-openj9;
adoptopenjdk-hotspot-bin-15 = if stdenv.isLinux
then callPackage adoptopenjdk-bin-15-packages-linux.jdk-hotspot {}
else callPackage adoptopenjdk-bin-15-packages-darwin.jdk-hotspot {};
adoptopenjdk-jre-hotspot-bin-15 = if stdenv.isLinux
then callPackage adoptopenjdk-bin-15-packages-linux.jre-hotspot {}
else callPackage adoptopenjdk-bin-15-packages-darwin.jre-hotspot {};
adoptopenjdk-hotspot-bin-15 = javaPackages.compiler.adoptopenjdk-15.jdk-hotspot;
adoptopenjdk-jre-hotspot-bin-15 = javaPackages.compiler.adoptopenjdk-15.jre-hotspot;
adoptopenjdk-openj9-bin-15 = javaPackages.compiler.adoptopenjdk-15.jdk-openj9;
adoptopenjdk-jre-openj9-bin-15 = javaPackages.compiler.adoptopenjdk-15.jre-openj9;
adoptopenjdk-openj9-bin-15 = if stdenv.isLinux
then callPackage adoptopenjdk-bin-15-packages-linux.jdk-openj9 {}
else callPackage adoptopenjdk-bin-15-packages-darwin.jdk-openj9 {};
adoptopenjdk-hotspot-bin-11 = javaPackages.compiler.adoptopenjdk-11.jdk-hotspot;
adoptopenjdk-jre-hotspot-bin-11 = javaPackages.compiler.adoptopenjdk-11.jre-hotspot;
adoptopenjdk-openj9-bin-11 = javaPackages.compiler.adoptopenjdk-11.jdk-openj9;
adoptopenjdk-jre-openj9-bin-11 = javaPackages.compiler.adoptopenjdk-11.jre-openj9;
adoptopenjdk-jre-openj9-bin-15 = if stdenv.isLinux
then callPackage adoptopenjdk-bin-15-packages-linux.jre-openj9 {}
else callPackage adoptopenjdk-bin-15-packages-darwin.jre-openj9 {};
adoptopenjdk-bin-14-packages-linux = import ../development/compilers/adoptopenjdk-bin/jdk14-linux.nix { inherit lib; };
adoptopenjdk-bin-14-packages-darwin = import ../development/compilers/adoptopenjdk-bin/jdk14-darwin.nix { inherit lib; };
adoptopenjdk-hotspot-bin-14 = if stdenv.isLinux
then callPackage adoptopenjdk-bin-14-packages-linux.jdk-hotspot {}
else callPackage adoptopenjdk-bin-14-packages-darwin.jdk-hotspot {};
adoptopenjdk-jre-hotspot-bin-14 = if stdenv.isLinux
then callPackage adoptopenjdk-bin-14-packages-linux.jre-hotspot {}
else callPackage adoptopenjdk-bin-14-packages-darwin.jre-hotspot {};
adoptopenjdk-openj9-bin-14 = if stdenv.isLinux
then callPackage adoptopenjdk-bin-14-packages-linux.jdk-openj9 {}
else callPackage adoptopenjdk-bin-14-packages-darwin.jdk-openj9 {};
adoptopenjdk-jre-openj9-bin-14 = if stdenv.isLinux
then callPackage adoptopenjdk-bin-14-packages-linux.jre-openj9 {}
else callPackage adoptopenjdk-bin-14-packages-darwin.jre-openj9 {};
adoptopenjdk-bin-13-packages-linux = import ../development/compilers/adoptopenjdk-bin/jdk13-linux.nix { inherit lib; };
adoptopenjdk-bin-13-packages-darwin = import ../development/compilers/adoptopenjdk-bin/jdk13-darwin.nix { inherit lib; };
adoptopenjdk-hotspot-bin-13 = if stdenv.isLinux
then callPackage adoptopenjdk-bin-13-packages-linux.jdk-hotspot {}
else callPackage adoptopenjdk-bin-13-packages-darwin.jdk-hotspot {};
adoptopenjdk-jre-hotspot-bin-13 = if stdenv.isLinux
then callPackage adoptopenjdk-bin-13-packages-linux.jre-hotspot {}
else callPackage adoptopenjdk-bin-13-packages-darwin.jre-hotspot {};
adoptopenjdk-openj9-bin-13 = if stdenv.isLinux
then callPackage adoptopenjdk-bin-13-packages-linux.jdk-openj9 {}
else callPackage adoptopenjdk-bin-13-packages-darwin.jdk-openj9 {};
adoptopenjdk-jre-openj9-bin-13 = if stdenv.isLinux
then callPackage adoptopenjdk-bin-13-packages-linux.jre-openj9 {}
else callPackage adoptopenjdk-bin-13-packages-darwin.jre-openj9 {};
adoptopenjdk-bin-11-packages-linux = import ../development/compilers/adoptopenjdk-bin/jdk11-linux.nix { inherit lib; };
adoptopenjdk-bin-11-packages-darwin = import ../development/compilers/adoptopenjdk-bin/jdk11-darwin.nix { inherit lib; };
adoptopenjdk-hotspot-bin-11 = if stdenv.isLinux
then callPackage adoptopenjdk-bin-11-packages-linux.jdk-hotspot {}
else callPackage adoptopenjdk-bin-11-packages-darwin.jdk-hotspot {};
adoptopenjdk-jre-hotspot-bin-11 = if stdenv.isLinux
then callPackage adoptopenjdk-bin-11-packages-linux.jre-hotspot {}
else callPackage adoptopenjdk-bin-11-packages-darwin.jre-hotspot {};
adoptopenjdk-openj9-bin-11 = if stdenv.isLinux
then callPackage adoptopenjdk-bin-11-packages-linux.jdk-openj9 {}
else callPackage adoptopenjdk-bin-11-packages-darwin.jdk-openj9 {};
adoptopenjdk-jre-openj9-bin-11 = if stdenv.isLinux
then callPackage adoptopenjdk-bin-11-packages-linux.jre-openj9 {}
else callPackage adoptopenjdk-bin-11-packages-darwin.jre-openj9 {};
adoptopenjdk-bin-8-packages-linux = import ../development/compilers/adoptopenjdk-bin/jdk8-linux.nix { inherit lib; };
adoptopenjdk-bin-8-packages-darwin = import ../development/compilers/adoptopenjdk-bin/jdk8-darwin.nix { inherit lib; };
adoptopenjdk-hotspot-bin-8 = if stdenv.isLinux
then callPackage adoptopenjdk-bin-8-packages-linux.jdk-hotspot {}
else callPackage adoptopenjdk-bin-8-packages-darwin.jdk-hotspot {};
adoptopenjdk-jre-hotspot-bin-8 = if stdenv.isLinux
then callPackage adoptopenjdk-bin-8-packages-linux.jre-hotspot {}
else callPackage adoptopenjdk-bin-8-packages-darwin.jre-hotspot {};
adoptopenjdk-openj9-bin-8 = if stdenv.isLinux
then callPackage adoptopenjdk-bin-8-packages-linux.jdk-openj9 {}
else callPackage adoptopenjdk-bin-8-packages-darwin.jdk-openj9 {};
adoptopenjdk-jre-openj9-bin-8 = if stdenv.isLinux
then callPackage adoptopenjdk-bin-8-packages-linux.jre-openj9 {}
else callPackage adoptopenjdk-bin-8-packages-darwin.jre-openj9 {};
adoptopenjdk-hotspot-bin-8 = javaPackages.compiler.adoptopenjdk-8.jdk-hotspot;
adoptopenjdk-jre-hotspot-bin-8 = javaPackages.compiler.adoptopenjdk-8.jre-hotspot;
adoptopenjdk-openj9-bin-8 = javaPackages.compiler.adoptopenjdk-8.jdk-openj9;
adoptopenjdk-jre-openj9-bin-8 = javaPackages.compiler.adoptopenjdk-8.jre-openj9;
adoptopenjdk-bin = adoptopenjdk-hotspot-bin-11;
adoptopenjdk-jre-bin = adoptopenjdk-jre-hotspot-bin-11;

View File

@ -175,6 +175,18 @@ in {
inherit openjdk17-bootstrap;
openjfx = openjfx17;
};
temurin-bin = recurseIntoAttrs (callPackage (
if stdenv.isLinux
then ../development/compilers/temurin-bin/jdk-linux.nix
else ../development/compilers/temurin-bin/jdk-darwin.nix
) {});
semeru-bin = recurseIntoAttrs (callPackage (
if stdenv.isLinux
then ../development/compilers/semeru-bin/jdk-linux.nix
else ../development/compilers/semeru-bin/jdk-darwin.nix
) {});
};
mavenPlugins = recurseIntoAttrs (callPackage ../development/java-modules/mavenPlugins.nix { });