difftreelog
chore update sjsonnet for benchmarks
in: master
1 file changed
nix/sjsonnet.nixdiffbeforeafterboth1# This derivation uses released sjsonnet binary, which most users will use2# However, recommended way of using sjsonnet - is using a client-server model,3# for which there is no released binaries: https://github.com/databricks/sjsonnet/issues/514# TODO: Somehow build client-server version of sjsonnet, and use it in benchmarks5{6 stdenv,7 lib,8 fetchurl,9 jdk25_headless,10 makeWrapper,11 autoPatchelfHook,12 zlib,13 openssl,14 java ? jdk25_headless,15}:16let17 version = "0.6.2";18 baseUrl = "https://github.com/databricks/sjsonnet/releases/download/${version}";1920 nativePlatform =21 {22 x86_64-linux = "linux-x86_64";23 aarch64-linux = "linux-arm64";24 aarch64-darwin = "darwin-arm64";25 # Nobody cares about darwin on intel26 }27 .${stdenv.hostPlatform.system} or (throw "unsupported system: ${stdenv.hostPlatform.system}");2829 nativeSrc = fetchurl {30 url = "${baseUrl}/sjsonnet-${version}-${nativePlatform}";31 hash =32 {33 x86_64-linux = "sha256-r79Q6SovcPIomDDUYTGIP35/y5t9Xo5Z3ohP7pxsF8I=";34 aarch64-linux = "sha256-LxWR94u1Oncau57Kmtzj2UFEofWGT4+laDTbRDkwv08=";35 aarch64-darwin = "sha256-gNZ6XekMm+ebeD7UFeRfoapXw/90gHk8MoeGD86dzKk=";36 }37 .${stdenv.hostPlatform.system};38 };3940 graalvmSrc = fetchurl {41 url = "${baseUrl}/sjsonnet-graalvm-${version}-${nativePlatform}";42 hash =43 {44 x86_64-linux = "sha256-XNJCnQlwVFySrUevn1nLN/DY8UBGgvCFAitkedLB+yM=";45 aarch64-linux = "sha256-J+C3pmiBEmo8M00IDHp9jznonibXmHVRlhsvQ4apVWw=";46 aarch64-darwin = "sha256-TXNL52sS4NE3GjbOFtgf6aCP268qGKMFaoTwAfJfgGc=";47 }48 .${stdenv.hostPlatform.system};49 };50in51stdenv.mkDerivation {52 pname = "sjsonnet";53 inherit version;5455 src = fetchurl {56 url = "${baseUrl}/sjsonnet-${version}.jar";57 hash = "sha256-jvkrxY48d/UdMGRoB9SxCJU2JJirfhZNyNMSkMrrQ7w=";58 };5960 unpackPhase = "true";61 nativeBuildInputs = [62 makeWrapper63 ]64 ++ lib.optionals stdenv.hostPlatform.isLinux [ autoPatchelfHook ];65 buildInputs = [66 java67 ]68 ++ lib.optionals stdenv.hostPlatform.isLinux [69 zlib70 openssl71 stdenv.cc.cc.lib72 ];7374 installPhase = ''75 mkdir -p $out/bin $out/lib76 cp $src $out/lib/sjsonnet.jar77 makeWrapper ${java}/bin/java $out/bin/sjsonnet --add-flags "-Xss100m -XX:+UseStringDeduplication -jar $out/lib/sjsonnet.jar --max-stack 200000"7879 cp ${nativeSrc} $out/bin/sjsonnet-native80 chmod +x $out/bin/sjsonnet-native81 wrapProgram $out/bin/sjsonnet-native --add-flags "--max-stack 200000"8283 cp ${graalvmSrc} $out/bin/sjsonnet-graalvm84 chmod +x $out/bin/sjsonnet-graalvm85 wrapProgram $out/bin/sjsonnet-graalvm --add-flags "--max-stack 200000"86 '';87 separateDebugInfo = false;88}1# This derivation uses released sjsonnet binary, which most users will use2# However, recommended way of using sjsonnet - is using a client-server model,3# for which there is no released binaries: https://github.com/databricks/sjsonnet/issues/514# TODO: Somehow build client-server version of sjsonnet, and use it in benchmarks5{6 stdenv,7 lib,8 fetchurl,9 jdk25_headless,10 makeWrapper,11 autoPatchelfHook,12 zlib,13 openssl,14 java ? jdk25_headless,15}:16let17 version = "0.6.3";18 baseUrl = "https://github.com/databricks/sjsonnet/releases/download/${version}";1920 nativePlatform =21 {22 x86_64-linux = "linux-x86_64";23 aarch64-linux = "linux-arm64";24 aarch64-darwin = "darwin-arm64";25 # Nobody cares about darwin on intel26 }27 .${stdenv.hostPlatform.system} or (throw "unsupported system: ${stdenv.hostPlatform.system}");2829 nativeSrc = fetchurl {30 url = "${baseUrl}/sjsonnet-${version}-${nativePlatform}";31 hash =32 {33 x86_64-linux = "sha256-QCV8OjFuhMI/RqcmPjWZHihFpQC4IWcY2WXqSWsdFNs=";34 aarch64-linux = lib.fakeHash;35 aarch64-darwin = lib.fakeHash;36 }37 .${stdenv.hostPlatform.system};38 };3940 graalvmSrc = fetchurl {41 url = "${baseUrl}/sjsonnet-graalvm-${version}-${nativePlatform}";42 hash =43 {44 x86_64-linux = "sha256-JsMsjFAwOJIMPln8OnB1rxJnH93yDUPBVlqeUS4cfPQ=";45 aarch64-linux = lib.fakeHash;46 aarch64-darwin = lib.fakeHash;47 }48 .${stdenv.hostPlatform.system};49 };50in51stdenv.mkDerivation {52 pname = "sjsonnet";53 inherit version;5455 src = fetchurl {56 url = "${baseUrl}/sjsonnet-${version}.jar";57 hash = "sha256-NxAVdF42JtojDlGipelDb8wIi8VSdZsuef2beIwGWnc=";58 };5960 unpackPhase = "true";61 nativeBuildInputs = [62 makeWrapper63 ]64 ++ lib.optionals stdenv.hostPlatform.isLinux [ autoPatchelfHook ];65 buildInputs = [66 java67 ]68 ++ lib.optionals stdenv.hostPlatform.isLinux [69 zlib70 openssl71 stdenv.cc.cc.lib72 ];7374 installPhase = ''75 mkdir -p $out/bin $out/lib76 cp $src $out/lib/sjsonnet.jar77 makeWrapper ${java}/bin/java $out/bin/sjsonnet --add-flags "-Xss100m -XX:+UseStringDeduplication -jar $out/lib/sjsonnet.jar --max-stack 200000"7879 cp ${nativeSrc} $out/bin/sjsonnet-native80 chmod +x $out/bin/sjsonnet-native81 wrapProgram $out/bin/sjsonnet-native --add-flags "--max-stack 200000"8283 cp ${graalvmSrc} $out/bin/sjsonnet-graalvm84 chmod +x $out/bin/sjsonnet-graalvm85 wrapProgram $out/bin/sjsonnet-graalvm --add-flags "--max-stack 200000"86 '';87 separateDebugInfo = false;88}