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