!aRKdLCkUeIFjRPZuJT:nixos.org

NixOS JVM

122 Members
27 Servers

Load older messages


SenderMessageTime
16 Jul 2025
@msgilligan:matrix.orgmsgilliganVacation right? You're US-based I thought.06:19:32
@infinidoge:inx.moeInfinidoge 🏳️‍⚧️Last day on my family's Scotland trip, flying back today06:19:37
@msgilligan:matrix.orgmsgilliganNice!06:19:51
@msgilligan:matrix.orgmsgilligan

Here's my preliminary work on a Nix JDK Package Dashboard:

$ ./jdk-dashboard.sh  | jq
unpacking 'github:NixOS/nixpkgs/dab3a6e781554f965bde3def0aa2fda4eb8f1708' into the Git cache...
{
  "corretto11": "11.0.26.4.1",
  "corretto17": "17.0.14.7.1",
  "corretto21": "21.0.6.7.1",
  "openjdk11": "11.0.24",
  "openjdk17": "17.0.12",
  "openjdk21": "21.0.4",
  "openjdk24": "24.0.1",
  "semeru-bin-11": "11.0.23",
  "semeru-bin-17": "17.0.9",
  "semeru-bin-21": "21.0.3",
  "semeru-jre-bin-11": "11.0.23",
  "semeru-jre-bin-17": "17.0.9",
  "semeru-jre-bin-21": "21.0.3",
  "temurin-bin-23": "23.0.2",
  "temurin-bin-24": "24.0.1",
  "temurin-jre-bin-11": "11.0.27",
  "temurin-jre-bin-17": "17.0.15",
  "temurin-jre-bin-21": "21.0.7",
  "temurin-jre-bin-23": "23.0.2",
  "temurin-jre-bin-24": "24.0.1",
  "zulu11": "11.0.24",
  "zulu17": "17.0.12",
  "zulu21": "21.0.4",
  "zulu24": "24.0.1"
}
06:34:53
@msgilligan:matrix.orgmsgilligan graalvmPackages.graalvm-ce, graalvmPackages.graalvm-oracle, and jetbrains.jdk are currently commented out because I'm not handling sub-packages yet. 06:36:31
@infinidoge:inx.moeInfinidoge 🏳️‍⚧️Makes sense, looks good so far Could look for the recurse for derivations flag06:37:50
@infinidoge:inx.moeInfinidoge 🏳️‍⚧️(Unsure how much you're doing in Nix vs shell)06:38:33
@msgilligan:matrix.orgmsgilligan
#!/bin/sh
nix-instantiate --eval --strict --json "$(dirname "$0")"/jdk-dashboard.nix
06:38:54
@msgilligan:matrix.orgmsgilliganThis is totally uncharted territory for me.06:39:38
@msgilligan:matrix.orgmsgilliganWondering if I should create an issue and/or a draft PR. I think the issue might be a good place to discuss requirements and features in a way that can get people involved.06:41:55
@msgilligan:matrix.orgmsgilliganI was thinking it might make sense to define some kind of JDK specific metadata that could live in the root directory of each JDK package-set.06:42:47
@msgilligan:matrix.orgmsgilligan For example, I currently have definitions of which versions are supposed to be supported by each JDK and whether their is a default (e.g. corretto doesn't exist, but zulu defaults to zulu21. 06:45:41
@msgilligan:matrix.orgmsgilligan * For example, I currently have definitions of which versions are supposed to be supported by each JDK and whether there is a default (e.g. corretto doesn't exist, but zulu defaults to zulu21. 06:46:00
@msgilligan:matrix.orgmsgilligan * For example, I currently have definitions of which versions are supposed to be supported by each JDK and whether there is a default (e.g. corretto doesn't exist, but zulu defaults to zulu21.) 06:46:12
@msgilligan:matrix.orgmsgilliganI'd rather have a list of JDK root paths and query them for metadata (perhaps with defaults for package-sets that haven't implemented the metadata yet)06:48:05
@msgilligan:matrix.orgmsgilligan

Could look for the recurse for derivations flag

I don't know what this means.

06:48:31
@msgilligan:matrix.orgmsgilligan Currently jdk-dashboard.nix and jdk-dashboard.sh are in nixpkgs/maintainers/scripts but I'm not sure that is the right place. 06:49:59
@infinidoge:inx.moeInfinidoge 🏳️‍⚧️
In reply to @msgilligan:matrix.org

Could look for the recurse for derivations flag

I don't know what this means.

Generally on sets of packages, there is a specific attr (I forget which exactly) that is set to true to flag that functions should look through the attribute set for derivations
06:51:18
@msgilligan:matrix.orgmsgilligan

e.g.

    corretto = {
      hasDefault = false;
      versions = [ "11" "17" "21"];
    };

and

    zulu = {
      hasDefault = true;
      versions = [ "11" "17" "21" "24"];
    };
06:51:34
@infinidoge:inx.moeInfinidoge 🏳️‍⚧️I believe there should be more info attached to lib.recurseIntoAttrs06:51:37
@msgilligan:matrix.orgmsgilligan and I'm including - and _ as a prefix in some versions as there is currently no consistent mechanism for concatenating name to version. e.g. zulu21, but temurin-bin-21 and graalvmPackages.graalvm-oracle_17 06:54:17
@msgilligan:matrix.orgmsgilliganWe should probably look at what SDKMAN! does: https://sdkman.io/jdks07:18:07
@msgilligan:matrix.orgmsgilliganNote that they are using Temurin as their default JDK.07:18:27
@msgilligan:matrix.orgmsgilliganAnd of course, what I would like to be able to do is to view the versions of each Nixpkgs JDK and display it next to the latest version available for that JDK. We have updaters for some of the JDKs that will pull the latest versions from a server.07:42:33
@msgilligan:matrix.orgmsgilliganIt looks like there is an API that can give that info for many distributions: https://github.com/foojayio/discoapi07:43:14
@msgilligan:matrix.orgmsgilliganI opened an issue for the "JDK dashboard Utility": https://github.com/NixOS/nixpkgs/issues/42586018:10:28
@msgilligan:matrix.orgmsgilliganI also set some of the metadata tags on this issue, let me know if I did that wrong.18:27:11
17 Jul 2025
@emilazy:matrix.orgemilythey don't build their own JDKs, so this isn't really a comparable situation13:06:52
@emilazy:matrix.orgemilywe already use Temurin as the "vanilla" binary build to bootstrap our OpenJDK source build, e.g.13:07:08
@emilazy:matrix.orgemilyTemurin is "just" a vanilla-aiming OpenJDK build13:07:54

Show newer messages


Back to Room ListRoom Version: 6