nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{ pkgs }:
2let
3 inherit (pkgs)
4 stdenv
5 callPackage
6 config
7 lib
8 ;
9in
10{
11 inherit (pkgs) openjfx17 openjfx21 openjfx25;
12 compiler = lib.recurseIntoAttrs (
13 let
14 # merge meta.platforms of both packages so that dependent packages and hydra build them
15 mergeMetaPlatforms =
16 jdk: other:
17 jdk
18 // {
19 meta = jdk.meta // {
20 platforms = lib.unique (jdk.meta.platforms ++ other.meta.platforms);
21 };
22 };
23
24 mkLinuxDarwin =
25 linux: darwin:
26 if stdenv.hostPlatform.isLinux then
27 mergeMetaPlatforms linux darwin
28 else
29 mergeMetaPlatforms darwin linux;
30
31 mkOpenjdk =
32 featureVersion:
33 let
34 openjdkLinux =
35 (callPackage ../development/compilers/openjdk/generic.nix { inherit featureVersion; })
36 // {
37 headless = mergeMetaPlatforms openjdkLinuxHeadless openjdkDarwin;
38 };
39 openjdkLinuxHeadless = openjdkLinux.override { headless = true; };
40 openjdkDarwin = (callPackage (../development/compilers/zulu + "/${featureVersion}.nix") { }) // {
41 headless = mergeMetaPlatforms openjdkDarwin openjdkLinuxHeadless;
42 };
43 in
44 mkLinuxDarwin openjdkLinux openjdkDarwin;
45 in
46 rec {
47 corretto11 = callPackage ../development/compilers/corretto/11.nix { };
48 corretto17 = callPackage ../development/compilers/corretto/17.nix { };
49 corretto21 = callPackage ../development/compilers/corretto/21.nix { };
50 corretto25 = callPackage ../development/compilers/corretto/25.nix { };
51
52 openjdk8 = mkOpenjdk "8";
53 openjdk11 = mkOpenjdk "11";
54 openjdk17 = mkOpenjdk "17";
55 openjdk21 = mkOpenjdk "21";
56 openjdk25 = mkOpenjdk "25";
57
58 # Legacy aliases
59 openjdk8-bootstrap = temurin-bin.jdk-8;
60 openjdk11-bootstrap = temurin-bin.jdk-11;
61 openjdk17-bootstrap = temurin-bin.jdk-17;
62
63 temurin-bin = lib.recurseIntoAttrs (
64 let
65 temurinLinux = import ../development/compilers/temurin-bin/jdk-linux.nix {
66 inherit (pkgs) lib callPackage stdenv;
67 };
68 temurinDarwin = import ../development/compilers/temurin-bin/jdk-darwin.nix {
69 inherit (pkgs) lib callPackage;
70 };
71 in
72 lib.mapAttrs (name: drv: mkLinuxDarwin drv temurinDarwin.${name}) temurinLinux
73 );
74
75 semeru-bin = lib.recurseIntoAttrs (
76 let
77 semeruLinux = import ../development/compilers/semeru-bin/jdk-linux.nix {
78 inherit (pkgs) lib callPackage;
79 };
80 semeruDarwin = import ../development/compilers/semeru-bin/jdk-darwin.nix {
81 inherit (pkgs) lib callPackage;
82 };
83 in
84 lib.mapAttrs (name: drv: mkLinuxDarwin drv semeruDarwin.${name}) semeruLinux
85 );
86 }
87 );
88}
89// lib.optionalAttrs config.allowAliases {
90 jogl_2_4_0 = throw "'jogl_2_4_0' is renamed to/replaced by 'jogl'";
91 mavenfod = throw "'mavenfod' is renamed to/replaced by 'maven.buildMavenPackage'";
92}