Commit graph

39 commits

Author SHA1 Message Date
Thiago Kenji Okada 755864aba0 graalvm*-ce: add meta.mainProgram 2023-01-07 14:46:25 +00:00
Thiago Kenji Okada 3085ef40d9 graalvm*-ce: add meta.sourceProvenance 2023-01-07 14:45:08 +00:00
figsoda ec8cb34358 treewide: fix typos 2022-12-17 19:39:44 -05:00
Daniel Albert 7e3759d18e
graalvm-ce: 22.2.0 -> 22.3.0
Release notes: https://www.graalvm.org/release-notes/22_3/
2022-10-27 11:06:12 +02:00
José Luis Lafuente dae7b421f7
graalvm-ce: 22.1.0 -> 22.2.0 2022-07-27 12:57:41 +02:00
ajs124 a0718341e6 maintainers: remove volth
github account deleted
2022-06-29 00:52:12 +02:00
Vladimír Čunát 2f002a9667
Revert "graalvmXX-ce: use a patched version of zlib" 2022-06-19 08:54:21 +02:00
Thiago Kenji Okada b2f19ab3b5 graalvmXX-ce: use a patched version of zlib
The previous releases of zlib were not sensitive to incorrect CRC
inputs with bits set above the low 32. Some programs were depended on
this behavior, including GraalVM. So this commit backports a patch from
`zlib` develop that brings back the old behavior. This will probably
be included in the next release of zlib.

Before:

```
$ rm -rf ~/.babashka
$ bb -e "(babashka.pods/load-pod 'clj-kondo/clj-kondo \"2022.05.31\")"
Downloading pod clj-kondo/clj-kondo (2022.05.31)
----- Error --------------------------------------------------------------------
Type:     java.util.zip.ZipException
Message:  invalid entry CRC (expected 0x269cdf2c but got 0x13b86fd8)
Location: <expr>:1:1

----- Context ------------------------------------------------------------------
1: (babashka.pods/load-pod 'clj-kondo/clj-kondo "2022.05.31")
   ^--- invalid entry CRC (expected 0x269cdf2c but got 0x13b86fd8)

----- Stack trace --------------------------------------------------------------
babashka.pods.impl.resolver/unzip             - <built-in>
babashka.pods.impl.resolver/resolve/fn--30674 - <built-in>
clojure.core/mapv/fn--8535                    - <built-in>
clojure.core.protocols/fn--8244               - <built-in>
clojure.core.protocols/fn--8204/G--8199--8213 - <built-in>
... (run with --debug to see elided elements)
babashka.pods.sci/load-pod/fn--30887          - <built-in>
babashka.pods.sci/load-pod                    - <built-in>
clojure.core/apply                            - <built-in>
babashka.impl.pods/load-pod                   - <built-in>
user                                          - <expr>:1:1
```

After:

```
$ rm -rf ~/.babashka
$ ./result/bin/bb -e "(babashka.pods/load-pod 'clj-kondo/clj-kondo \"2022.05.31\")"
Downloading pod clj-kondo/clj-kondo (2022.05.31)
Successfully installed pod clj-kondo/clj-kondo (2022.05.31)
```

The issue should affect other programs using GraalVM, but this was the
test that I had at hand.
2022-06-16 11:27:34 +01:00
Jakub Kozłowski 8fa669acb4 graalvm17-ce, graalvm11-ce: 22.0.0.2 -> 22.1.0 2022-04-28 00:21:08 +02:00
Thiago Kenji Okada 2a5a6cfbb1 graalvmXX-ce: fix in darwin by ensuring $lib/lib always exist 2022-04-21 09:28:30 +01:00
Thiago Kenji Okada aa2a396048 graalvmXX-ce: refactor
- Simplify `preFixup` phase
- Update documentation
- Quote some variables
2022-04-19 20:33:03 +01:00
Thiago Kenji Okada 6b2691d7ce graalvmXX-ce: add documentation to mkGraal function 2022-04-16 13:38:25 +01:00
Thiago Kenji Okada 5c9a866551 graalvmXX-ce: add sourcesPath parameter
In #168816, we removed support for Python/Ruby/WASM to reduce the
support burden of GraalVM languages that, arguably, are not really being
used.

However, the way that `pkgs.graalvmCEPackages.mkGraal` function works
right now doesn't allow passing a custom sources file, that would allow
someone to compile GraalVM with the additional products (e.g.: Python).
This PR adds this possibility.

So if someone wants to create a custom graalvm11-ce derivation with
Python support, for example, they can do something like this:

```nix
let
   graalvm11-ce-custom = pkgs.graalvmCEPackages.mkGraal {
      config = {
         x86_64-linux = {
            products = [ "graalvm-ce" "python-installable-svm" ];
            arch = "linux-amd64";
         };
      };
      defaultVersion = "22.0.0.2";
      javaVersion = "11";
      platforms = "x86_64-linux";
      sourcesPath = /home/someone/graalvm11-ce-sources.json;
   };
in
{
   environment.systemPackages = [ graalvm11-ce-custom ];
}
```
2022-04-16 12:59:54 +01:00
Thiago Kenji Okada bc73bc21ce graalvm17-ce: enable Native Image in aarch64-linux
Co-authored-by: tricktron <tgagnaux@gmail.com>
2022-04-16 11:08:15 +01:00
Thiago Kenji Okada 44a4401945 buildGraalvmNativeImage: mark as broken if Native Image is not available 2022-04-15 23:20:52 +01:00
Thiago Kenji Okada 158b0e037f graalvm17-ce: re-enable it on aarch64-linux
However without support for Native Image, since it is failing to build.
2022-04-15 20:52:18 +01:00
Thiago Kenji Okada 399ed1f1bd graalvmXX-ce: remove Ruby/Python/WASM support
Those additional languages does not seem to really have much usage
(e.g.: none in nixpkgs). For example, Ruby is pretty much broken for all
environments for quite sometime already, however nobody seemed to border
enough to fix it. They also add a good amount of size to the derivation.

So let's remove them. It should be really easy if someone still cares
for them and want to add them back on their own system: just use the
`mkGraal` function (that we export) to generate their own version of
GraalVM with all extra features they want.
2022-04-15 20:32:23 +01:00
Thibault Gagnaux be1232ea2f
graalvmXX-ce: fix relative paths 2022-04-02 13:23:52 +02:00
Thibault Gagnaux 2d7d3692c1
graalvmXX-ce: use the release version as defaultVersion 2022-04-02 11:33:07 +02:00
Thibault Gagnaux bfc501493f
graalvmXX-ce: add review suggestions
Co-authored-by: Thiago Kenji Okada <thiagokokada@gmail.com>
2022-04-02 10:54:44 +02:00
Thibault Gagnaux 440d4f9ff7
graalvmXX-ce: extract common config 2022-04-01 18:38:26 +02:00
Thibault Gagnaux 4b4d3759e9
graalvmXX-ce: remove graalvmXX-ce-dev and use dev version in graalvmXX-ce on aarch64-darwin 2022-04-01 14:30:18 +02:00
Thibault Gagnaux 50f6c0dfa7
graalvmXX-ce: refactor and clean up of update.nix
The update script fetches the latest versions and only
computes/downloads the sha256 if there is a new version to improve runtime.
2022-03-31 08:42:55 +02:00
Thibault Gagnaux c6203291c8
graalvm17-ce-dev: init with aarch64-darwin 2022-03-31 08:42:55 +02:00
Thibault Gagnaux fa5712c0b7
graalvmXX-ce: new update script 2022-03-31 08:42:54 +02:00
Eric Dallo a362925794
graalvm11-ce: 21.3.0 -> 22.0.0.2
graalvm17-ce: 21.3.0 -> 22.0.0.2
2022-01-26 22:59:44 -03:00
Thiago Kenji Okada 4d65523c6a graalvm-ce: multiple fixes and improvements
- Remove some unnecessary macOS dependencies (e.g.: GTK3 support)
- Patch openssl.so's Ruby libraries so autoPatchelfIgnoreMissingDeps is
  not needed anymore on Linux
- Add support for musl
- Add binutils/stdenv.cc to runtime, making this derivation pure
  (it used to depend on GCC installed in system)
- Format file with nixpkgs-fmt
2021-12-27 19:30:50 -03:00
Thiago Kenji Okada 60e6107391 graalvm-ce: fix nix-shell incantation order on update.sh 2021-10-22 12:32:34 -03:00
Thiago Kenji Okada 81df00fb45 graalvm-ce: add hashes parameter to mkGraal 2021-10-21 16:20:11 -03:00
Thiago Kenji Okada 19e8890e5f graalvm-ce: add missing gnused to update.sh 2021-10-21 16:14:41 -03:00
Thiago Kenji Okada 58a7dfacb8 graalvm-ce: add graalvm17-ce 2021-10-20 12:51:27 -03:00
Thiago Kenji Okada eb16b065f8 graalvm-ce: remove nativePRNGWorkaround
Seems that native-image works fine nowadays without it.
2021-10-20 12:07:21 -03:00
Thiago Kenji Okada cffe19bdbe graalvm-ce: remove version file, use nix itself 2021-10-20 11:51:39 -03:00
Thiago Kenji Okada b5560cfc5e graalvm-ce: check if version is latest on update.sh 2021-10-20 09:56:47 +02:00
Thiago Kenji Okada 8abb6e72c9 graalvm-ce: 21.2.0 -> 21.3.0
- Drop graalvm8 since it was removed by upstream
- Add update.sh script to make it easier to generate hashes for all
  platforms
- Fix GraalPython, broken since #141825 (sorry)
- Small refactorings and fixes
2021-10-20 09:56:47 +02:00
Thiago Kenji Okada d3ea0893dd graalvm11-ce: add support for aarch64-linux
Only adding support for graalvm11-ce. While there is a graalvm8 release
for aarch64-linux, it is missing some support (like wasm).

Also, it is not used anywhere on the nixpkgs, while graalvm11 is used by
multiple other packages (babashka, clj-kondo, clojure-lsp, etc.).
2021-10-15 21:40:25 -03:00
Thiago Kenji Okada 07be670cf9 graalvm-ce: create empty lib directory on macOS 2021-10-02 12:08:27 -03:00
Thiago Kenji Okada d909c0c1f1 graalvm-ce: add lib output
Add dynamic libraries (for now only glibc) to $lib output, so we can use
them with e.g.:

```
native-image -H:CLibraryPath=${graalvm11-ce.lib}/lib ...
```

Reducing the finaly closure size of a GraalVM package since it will not
pull the whole GraalVM as a direct dependency.
2021-10-02 11:38:49 -03:00
Eric Dallo 5cdbd94cf9
graalvmce: 21.0.0 -> 21.2.0 2021-08-04 10:42:42 -03:00