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
graalvm{8,11}-ce: init at 20.2.0 #99631
Conversation
I'm relieved that this works. The top-level binaries work at first glance and seem to runs just fine from what I've tested. I don't know how the 3rd party plugin development story is with this. But knowing that we should be able the override the truffle paths. I wonder how we should handle the llvm toolchain as is documented here https://www.graalvm.org/reference-manual/llvm/Compiling/
with the printed toolchain path I try to compile the hello.c
I doubt we are able to use the graal updater with nixos. Could you have a look if you are able to compile to llvm bytecode with the bundled llvm toolchain? Getting this to work would be the easiest solution by far. And since it's broken on hydra atm, just merge it for now until we have better, or we can improve this and forget about compiling graalvm from sources. |
I'm not sure how to do this really - I'm only using this for native-image compilation of clojure jars, which is working perfectly off of this branch. |
I will try to see if I can find a solution. Not having the llvm toolchain working would break the sulong support of graalvm. |
I was able to fix one error but I need to find out why the -fuse-ld flag is always paassed
But it seems this could be a graalvm thing and not nix https://github.com/oracle/graal/blob/3cd4bda0868432f72cc33203db598ff88eedc558/sulong/projects/com.oracle.truffle.llvm.toolchain.launchers/src/com/oracle/truffle/llvm/toolchain/launchers/common/ClangLikeBase.java#L174-L180 (help possibly needed): |
@hlolli I'm currently depending on this in my project, and am aware of some other people who are using my fork - is there any reason we couldn't just get this merged as is and use it as a launching-off point for future work? |
No fine for me, I'm not using graalvm these days. So I'd not block this at this stage. Approving. |
/marvin opt-in |
Hi! I'm an experimental bot. My goal is to guide this PR through its stages, hopefully ending with a merge. You can read up on the usage here. |
/status needs_reviewer |
I tried to do this at first but I reached my limits of Nix programming abilities. I wanted to parametrize them and then dispatch based on but I couldn't get the scoping and/or casing to work as I wanted them to. I'm also in favor of this getting merged. I would love to update babashka and clj-kondo again for everyone using Nix and not continue using my private -bin packages. |
I'll give it a shot |
Reminder: Please review! This Pull Request is awaiting review. If you are the assigned reviewer, please have a look. Try to find another reviewer if necessary. If you can't, please say so. If the status is not accurate, please change it. If nothing happens, this PR will be put back in the |
/status awaiting_changes |
Keen to see this happen! |
So it doesn't look like there's a CE of 20.2.1 yet - given that, can we hold off on deduping this and graalvm-ce? I have a WIP of that up at glittershark@59d76a1 if people wanna take a look, but until CE 20.2.1 is out I vote we just merge this and then do the deduping later. |
Reminder: Please review! This Pull Request is awaiting review. If you are the assigned reviewer, please have a look. Try to find another reviewer if necessary. If you can't, please say so. If the status is not accurate, please change it. If nothing happens, this PR will be put back in the |
/status needs_merger |
Now that we have community builds of graalvm landed in NixOS#99631, both clj-kondo and babashka can depend on those versions of graalvm rather than the one that requires building from source - this can be built in hydra, and generally is much easier to build and test.
Now that we have community builds of graalvm landed in #99631, both clj-kondo and babashka can depend on those versions of graalvm rather than the one that requires building from source - this can be built in hydra, and generally is much easier to build and test.
with NixOS#99631 and NixOS#102693 merged, it's possible to bump the babashka version again. However recent versions of babashka depend on java11 features and I spoke in Slack with the project lead and this java11 dependency will exist going forward.
Now that we have community builds of graalvm landed in NixOS#99631, both clj-kondo and babashka can depend on those versions of graalvm rather than the one that requires building from source - this can be built in hydra, and generally is much easier to build and test.
with NixOS#99631 and NixOS#102693 merged, it's possible to bump the babashka version again. However recent versions of babashka depend on java11 features and I spoke in Slack with the project lead and this java11 dependency will exist going forward.
Now that we have community builds of graalvm landed in NixOS#99631, both clj-kondo and babashka can depend on those versions of graalvm rather than the one that requires building from source - this can be built in hydra, and generally is much easier to build and test.
with NixOS#99631 and NixOS#102693 merged, it's possible to bump the babashka version again. However recent versions of babashka depend on java11 features and I spoke in Slack with the project lead and this java11 dependency will exist going forward.
Now that we have community builds of graalvm landed in NixOS#99631, both clj-kondo and babashka can depend on those versions of graalvm rather than the one that requires building from source - this can be built in hydra, and generally is much easier to build and test. (cherry picked from commit 3341f6c)
with NixOS#99631 and NixOS#102693 merged, it's possible to bump the babashka version again. However recent versions of babashka depend on java11 features and I spoke in Slack with the project lead and this java11 dependency will exist going forward. (cherry picked from commit 172cbb8)
Motivation for this change
See #93139 - multiple packages require graalvm, but it requires significant system resources to build so it's disabled in Hydra - unfortunately as a result it is both unavailable in a pre-built form to users and it keeps breaking (see eg #98256). This packages the pre-built community edition of graalvm.
Supersedes #93139, as the original author wanted to hand it off.
Things done
sandbox
innix.conf
on non-NixOS linux)nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
./result/bin/
)nix path-info -S
before and after)