Age | Commit message (Collapse) | Author | Files | Lines |
|
OpenJDK: init 19.0.1
|
|
as usual this is mostly copy-pasted from 18, so this commit is best
reviewed with '--find-copies-harder'
stop exposing openjdk 18 since it was not a long-term support release
change the default openjdk from 17 to 19 since nixpkgs is a
rolling-release repository
drop the ceremony around bootstrapping via adoptopenjdk for 64-bit
builds vs. via earlier openjdk builds for 32-bit, because, to be
frank, since we're using temurin now, it's not a simple copy-paste
job. :-/ if someone needs a 32-bit openjdk, that work can be done
separately.
JavaFX revs from 17 to 19; it looks like 18 was never packaged along
with JDK 18.
* the gradle invocation used to build JavaFX must still be done with
Java 18, as gradle does not yet support running itself on Java 19.
* a couple of patches need to be applied, since a new State enum was
introduced in the JDK that collides with one in JavaFX.
* the hash of the gradle dependencies has not changed, which is
surprising, but as far as I can tell correct.
One application (libreoffice) doesn't work with 19 yet, so pin it to
jdk 17 for now.
Co-authored-by: Mario Rodas <marsam@users.noreply.github.com>
|
|
`java-packages.nix` attempts to automatically decide which java to use
for bootstrapping. When this works, it works well. However when it
fails due to the user setting `config.allowNonSource=false` on a
non-x86 platform, the reported failure is extremely confusing and does
not mention the `NIXPKGS_ALLOW_NONSOURCE=1` option to proceed, or
that `allowNonSource` had anything to do with the eval failure.
Here's why this is happening:
Currently, `java-packages.nix` makes its detection choice based on
`adoptopenjdk.jdk-hotspot.meta.available`. If the user has set
`config.allowNonSource=false` then the `adoptopenjdk-bin` packages
will all report `_.meta.available==false`. If
`adoptopenjdk.jdk-hotspot.meta.available==false` then the detection
code will proceed to use `callPackage path args`, *even if that
package is **also** `meta.unavailable`* for end-user-unfixable
reasons.
In the case of `openjdk8`, the `path` passed is a `nix` expression
that only works on x86. The user has two options for continuing the
build: buy an x86 machine or add an `allowNonSource` exception for the
bootstrap jdk. The second option is generally preferred, but the user
is only offered the first option.
The following comment appears above the line in `java-packages.nix`
which does the automatic selection:
```
/* adoptopenjdk not available for i686, so fall back to our old builds for bootstrapping */
```
Since the intent here was to decide based on "i686-ness", let's query
the authoritative source for i686ness in nixpkgs: `stdenv.hostPlatform`.
|
|
|
|
only ./pkgs/development/compilers/adoptopenjdk-bin/jdk-linux-base.nix
has the gtkSupport option
|
|
openjdk*: Make bootstrap headless
|
|
This reduces the build closure size.
Reducing the build closure size reduces the number of rebuilds
across time and it helps with such tasks as bisecting the staging
branch.
|
|
|
|
The java conflicts weren't trivial. Hopefully OK.
|
|
|
|
AdoptOpenJDK Hotspot is now Eclipse Temurin and AdoptOpenJDK OpenJ9 is
now IBM Semeru Runtime.
Adds `temurin-bin` and `semeru-bin` packages.
AdoptOpenJDK 13, 14, and 15 is no longer supported. AdoptOpenJDK 13 and
14 are removed. AdoptOpenJDK 15 is left only for some packages
depending it.
|
|
|
|
|
|
|
|
|
|
|
|
Provide a way to access all JDK versions.
|
|
These are packages required to build Sourcetrail Java support
- maven-compiler-plugin 3.2
- plexus-compiler-api 2.4
- plexus-compiler-javac 2.4
- plexus-compiler-manager 2.4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|