Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Tracking: Remove old / unused JDK derivations #313208

Open
jlesquembre opened this issue May 20, 2024 · 7 comments
Open

Tracking: Remove old / unused JDK derivations #313208

jlesquembre opened this issue May 20, 2024 · 7 comments
Labels
5. scope: tracking Long-lived issue tracking long-term fixes or multiple sub-problems 6.topic: java Including JDK, tooling, other languages, other VMs 6.topic: old-versions Tickets pertaining to ongoing support of outdated versions of packages

Comments

@jlesquembre
Copy link
Member

jlesquembre commented May 20, 2024

Part of #313216

Issue description

Currently, we have multiple JDK flavors:

  • OpenJDK
  • AdoptOpenJDK
  • OracleJDK
  • Temurin
  • Zulu
  • GraalVM
  • JetBrains JDK
  • Corretto

There might be others as well. Please let me know if I missed anything.

With the goal of simplifying the JDK infrastructure on nixpkgs, I suggest:

  • Removing AdoptOpenJDK
  • Hiding all the openjdkXX-bootstrap packages from the top level

Can we also remove OracleJDK? I'm not sure if it's needed anymore.

I also believe we could remove Zulu if we are able to compile OpenJDK forDarwin.

@Qyriad Qyriad added the 6.topic: java Including JDK, tooling, other languages, other VMs label May 26, 2024
@willcohen
Copy link
Contributor

I think this sounds good. Re Oracle SDK, I personally do not use it, but is there a use case for people who would want to deploy that install via NixOS if they are purchasing support from Oracle? My initial thought is that that'd something which a user of paid software would handle on their own. For anyone using the software free of charge, OpenJDK seems like it should suffice just fine.

@tomodachi94
Copy link
Member

OracleJDK is gone as of #353043. I know that @emilazy had opinions about which JDKs to keep and which to drop into the abyss.

@tomodachi94 tomodachi94 moved this to In Progress in Java Nov 10, 2024
@emilazy
Copy link
Member

emilazy commented Nov 10, 2024

I believe AdoptOpenJDK is already gone, and the Oracle JDK definitely is. Zulu can indeed go once we have OpenJDK/OpenJFX on Darwin, although we’d lose JDK 8 on aarch64-darwin, which I think is acceptable. (Alternatively we could keep Zulu for bootstrap and ditch Temurin.) Graal is its whole own thing so I don’t have an opinion on it although IIRC @thiagokokada was planning on not maintaining it any more. I believe the JetBrains products require their JDK so it should probably be maintained by maintainers of JetBrains products in Nixpkgs. I don’t personally see the point of Corretto since AFAICT it’s just a vanilla OpenJDK build like ours and Temurin but apparently @rollf does :)

@emilazy
Copy link
Member

emilazy commented Nov 10, 2024

Oh and there’s also Semeru. I assume some people want OpenJ9 although presumably we could build our own instead.

@FliegendeWurst FliegendeWurst added the 6.topic: old-versions Tickets pertaining to ongoing support of outdated versions of packages label Nov 10, 2024
@tomodachi94
Copy link
Member

I believe AdoptOpenJDK is already gone

Yes, that appears to be the case. We have adoptopenjdk-icedtea-web, which I'm not sure about.

I don’t personally see the point of Corretto since AFAICT it’s just a vanilla OpenJDK build like ours and Temurin but apparently @\rollf does :)

I agree, though I'm curious about Rolf's opinion (I'm not familiar with Corretto).

@tomodachi94 tomodachi94 added the 5. scope: tracking Long-lived issue tracking long-term fixes or multiple sub-problems label Nov 10, 2024
@tomodachi94 tomodachi94 changed the title Remove old / unused JDK derivations Tracking: Remove old / unused JDK derivations Nov 10, 2024
@rollf
Copy link
Contributor

rollf commented Nov 11, 2024

I mentioned my reasoning here. The short version is: if the build infra structure locks down the jdk, you can't use an alternative. Whether/Why the build infra should lock that down is an entirely different topic 🤷 .

@emilazy
Copy link
Member

emilazy commented Nov 11, 2024

Yeah, I’d personally lean towards just patching such requirements out – it’s less invasive than some of the things we have to do to get software working with Nix – but I can understand if organizational conservatism prevents that.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
5. scope: tracking Long-lived issue tracking long-term fixes or multiple sub-problems 6.topic: java Including JDK, tooling, other languages, other VMs 6.topic: old-versions Tickets pertaining to ongoing support of outdated versions of packages
Projects
Status: Tracking
Development

No branches or pull requests

7 participants