![Thiago Kenji Okada](/assets/img/avatar_default.png)
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 ]; } ```
80 lines
1.8 KiB
Nix
80 lines
1.8 KiB
Nix
{ callPackage, Foundation }:
|
|
/*
|
|
Add new graal versions and products here and then see update.nix on how to
|
|
generate the sources.
|
|
*/
|
|
|
|
let
|
|
mkGraal = opts: callPackage (import ./mkGraal.nix opts) {
|
|
inherit Foundation;
|
|
};
|
|
|
|
/*
|
|
Looks a bit ugly but makes version update in the update script using sed
|
|
much easier
|
|
*/
|
|
graalvm11-ce-release-version = "22.0.0.2";
|
|
graalvm17-ce-release-version = "22.0.0.2";
|
|
graalvm11-ce-dev-version = "22.2.0-dev-20220415_1945";
|
|
graalvm17-ce-dev-version = "22.2.0-dev-20220415_1945";
|
|
|
|
products = [
|
|
"graalvm-ce"
|
|
"native-image-installable-svm"
|
|
];
|
|
|
|
in
|
|
{
|
|
inherit mkGraal;
|
|
|
|
graalvm11-ce = mkGraal rec {
|
|
config = {
|
|
x86_64-darwin = {
|
|
inherit products;
|
|
arch = "darwin-amd64";
|
|
};
|
|
x86_64-linux = {
|
|
inherit products;
|
|
arch = "linux-amd64";
|
|
};
|
|
aarch64-darwin = {
|
|
inherit products;
|
|
arch = "darwin-aarch64";
|
|
version = graalvm11-ce-dev-version;
|
|
};
|
|
aarch64-linux = {
|
|
inherit products;
|
|
arch = "linux-aarch64";
|
|
};
|
|
};
|
|
defaultVersion = graalvm11-ce-release-version;
|
|
javaVersion = "11";
|
|
platforms = builtins.attrNames config;
|
|
};
|
|
|
|
graalvm17-ce = mkGraal rec {
|
|
config = {
|
|
x86_64-darwin = {
|
|
inherit products;
|
|
arch = "darwin-amd64";
|
|
};
|
|
x86_64-linux = {
|
|
inherit products;
|
|
arch = "linux-amd64";
|
|
};
|
|
aarch64-darwin = {
|
|
inherit products;
|
|
arch = "darwin-aarch64";
|
|
version = graalvm17-ce-dev-version;
|
|
};
|
|
aarch64-linux = {
|
|
inherit products;
|
|
arch = "linux-aarch64";
|
|
};
|
|
};
|
|
defaultVersion = graalvm17-ce-release-version;
|
|
javaVersion = "17";
|
|
platforms = builtins.attrNames config;
|
|
};
|
|
}
|