|
|
|
@ -1,5 +1,23 @@ |
|
|
|
|
{ lib, stdenv, fetchurl, unzip, setJavaClassPath, freetype }: |
|
|
|
|
{ lib, stdenv, fetchurl, unzip, setJavaClassPath }: |
|
|
|
|
let |
|
|
|
|
# Details from https://www.azul.com/downloads/?version=java-16-sts&os=macos&package=jdk |
|
|
|
|
# Note that the latest build may differ by platform |
|
|
|
|
dist = { |
|
|
|
|
x86_64-darwin = { |
|
|
|
|
arch = "x64"; |
|
|
|
|
zuluVersion = "16.30.15"; |
|
|
|
|
jdkVersion = "16.0.1"; |
|
|
|
|
sha256 = "1jihn125dmxr9y5h9jq89zywm3z6rbwv5q7msfzsf2wzrr13jh0z"; |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
aarch64-darwin = { |
|
|
|
|
arch = "aarch64"; |
|
|
|
|
zuluVersion = "16.30.19"; |
|
|
|
|
jdkVersion = "16.0.1"; |
|
|
|
|
sha256 = "1i0bcjx3acb5dhslf6cabdcnd6mrz9728vxw9hb4al5y3f5fll4w"; |
|
|
|
|
}; |
|
|
|
|
}."${stdenv.hostPlatform.system}"; |
|
|
|
|
|
|
|
|
|
jce-policies = fetchurl { |
|
|
|
|
# Ugh, unversioned URLs... I hope this doesn't change often enough to cause pain before we move to a Darwin source build of OpenJDK! |
|
|
|
|
url = "http://cdn.azul.com/zcek/bin/ZuluJCEPolicies.zip"; |
|
|
|
@ -7,17 +25,16 @@ let |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
jdk = stdenv.mkDerivation rec { |
|
|
|
|
pname = "zulu16.28.11-ca-jdk"; |
|
|
|
|
version = "16.0.0"; |
|
|
|
|
pname = "zulu${dist.zuluVersion}-ca-jdk"; |
|
|
|
|
version = dist.jdkVersion; |
|
|
|
|
|
|
|
|
|
src = fetchurl { |
|
|
|
|
url = "https://cdn.azul.com/zulu/bin/${pname}${version}-macosx_x64.tar.gz"; |
|
|
|
|
sha256 = "6d47ef22dc56ce1f5a102ed39e21d9a97320f0bb786818e2c686393109d79bc5"; |
|
|
|
|
url = "https://cdn.azul.com/zulu/bin/zulu${dist.zuluVersion}-ca-jdk${dist.jdkVersion}-macosx_${dist.arch}.tar.gz"; |
|
|
|
|
inherit (dist) sha256; |
|
|
|
|
curlOpts = "-H Referer:https://www.azul.com/downloads/zulu/"; |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
nativeBuildInputs = [ unzip ]; |
|
|
|
|
buildInputs = [ freetype ]; |
|
|
|
|
|
|
|
|
|
installPhase = '' |
|
|
|
|
mkdir -p $out |
|
|
|
@ -42,8 +59,6 @@ let |
|
|
|
|
mkdir -p $out/nix-support |
|
|
|
|
printWords ${setJavaClassPath} > $out/nix-support/propagated-build-inputs |
|
|
|
|
|
|
|
|
|
install_name_tool -change /usr/X11/lib/libfreetype.6.dylib ${freetype}/lib/libfreetype.6.dylib $out/lib/libfontmanager.dylib |
|
|
|
|
|
|
|
|
|
# Set JAVA_HOME automatically. |
|
|
|
|
cat <<EOF >> $out/nix-support/setup-hook |
|
|
|
|
if [ -z "\''${JAVA_HOME-}" ]; then export JAVA_HOME=$out; fi |
|
|
|
|