GraalVM plugin for asdf version manager
asdf plugin-add graalvm https://github.com/asdf-community/asdf-graalvm.git
Check asdf readme for instructions on how to install & manage versions of Graal.
GraalVM plugin for the asdf version manager
Home Page: https://github.com/asdf-vm/asdf
License: Apache License 2.0
I just tried to install a graalvm with this plugin and issued:
asdf install graalvm latest
I got:
No compatible versions available (graalvm [0-9])
graalvm is already installed
After some digging I found that I was missing the jq program. I installed it (Ubuntu: sudo apt install jq
). After that it worked.
To avoid this for future users I would add some hint to the readme listing jq as a dependency.
It took me a while to find the right command to install GraalVM. Maybe it would help other people if this was documented through an example.
The newer specfication for asdf requires a download
script. This should be refactored to include a download script.
$ asdf install graalvm 19.0.0
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 9 0 9 0 0 23 0 --:--:-- --:--:-- --:--:-- 23
gzip: stdin: not in gzip format
tar: Child returned status 1
tar: Error is not recoverable: exiting now
asdf-graalvm error: failed to extract archive
Hello
With the 19.3.0 version, oracle seem to change his url strategy. we can download graalvm with java 8 or java 11 compatibility.
example :
before:
https://github.com/oracle/graal/releases/download/vm-19.2.1/graalvm-ce-linux-amd64-19.2.1.tar.gz
Is it possible do adapt your (wonderful) plugin ?
Thx
If I install GraalVM and then try to install any npm
module globally, it's getting installed under ${HOME}/.asdf/installs/graalvm/${graal-version}/jre/languages/js
, rather than ${HOME}/.asdf/installs/nodejs/${node-version}/.npm/lib/node_modules/
:
[gorre@uplink no_backup]$ npm install -g now
/home/gorre/.asdf/installs/graalvm/1.0.0-rc14/jre/languages/js/bin/now -> /home/gorre/.asdf/installs/graalvm/1.0.0-rc14/jre/languages/js/lib/node_modules/now/download/dist/now
> [email protected] postinstall /home/gorre/.asdf/installs/graalvm/1.0.0-rc14/jre/languages/js/lib/node_modules/now
> node download/install.js
> For the source code, check out: https://github.com/zeit/now-cli
> Downloading Now CLI 15.0.6 [====================] 100%
+ [email protected]
updated 1 package in 3.781s
As soon as I uninstall GraalVM and repeat the process, everything works as expected:
[gorre@uplink no_backup]$ asdf uninstall graalvm
[gorre@uplink no_backup]$ npm install -g now
/home/gorre/.asdf/installs/nodejs/10.15.3/.npm/bin/now -> /home/gorre/.asdf/installs/nodejs/10.15.3/.npm/lib/node_modules/now/download/dist/now
> [email protected] postinstall /home/gorre/.asdf/installs/nodejs/10.15.3/.npm/lib/node_modules/now
> node download/install.js
> For the source code, check out: https://github.com/zeit/now-cli
> Downloading Now CLI 15.0.6 [====================] 100%
> [email protected] postinstall /home/gorre/.asdf/installs/nodejs/10.15.3/.npm/lib/node_modules/now
> /home/gorre/.asdf/installs/nodejs/10.15.3/.npm/lib/node_modules/.hooks/postinstall
+ [email protected]
added 1 package in 1.636s
[gorre@uplink no_backup]$ now -v
15.0.6
I was checking the Node.js plugin and this one, but I couldn't spot anything ๐
Currently this plugin is not really usable alongside asdf-java, since both want to install shims for java
, javac
etc. Edit: To be precise, when I have both a jdk (through the java plugin) and graalvm 19.0.0 installed, java
etc. still point to the versions from the jdk while graalvm-specific binaries like gu
point to graalvm. And I don't really know how I would solve this.
I couldn't find any general asdf "policy" for different plugins that use the same binary names, don't know if this ever came up?
One idea for compatibility might be to e.g. deprecate this plugin and add support for graalvm-x.y.z "versions" to the java plugin instead?
But it's passing on latest merged PR. https://github.com/vic/asdf-graalvm/runs/462827090
It appears that the logic dealing with the new release URLs is not quite correct:
> asdf list all graalvm
19.0.0
19.0.2
19.1.0
19.1.1
19.2.0
19.2.0.1
19.2.1
19.3.0-java8
19.3.0-java11
19.3.0.2-java8
19.3.0.2-java11
20.0.0-java8
20.0.0-java11
19.3.1-java8
19.3.1-java11
> asdf install graalvm 20.0.0-java11
Could not find archive at URL https://github.com/oracle/graal/releases/download/vm-20.0.0-java11/graalvm-ce-linux-amd64-20.0.0-java11.tar.gz
The working URL for this release and arch is:
https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-20.0.0/graalvm-ce-java11-linux-amd64-20.0.0.tar.gz
This makes it hard to just install the latest. It seems like it is currently sorted by created_at
time, but I'm not sure this is the most intuitive order.
โฏ asdf list-all graalvm
19.0.0
19.0.2
19.1.0
19.1.1
19.2.0
19.2.0.1
19.2.1
19.3.0-java8
19.3.0-java11
19.3.0.2-java8
19.3.0.2-java11
20.0.0-java8
20.0.0-java11
19.3.1-java8
19.3.1-java11
19.3.6-java8
19.3.6-java11
20.3.2-java8
20.3.2-java11
21.1.0-java8
21.1.0-java11
21.0.0.2-java8
21.0.0.2-java11
20.3.1.2-java8
20.3.1.2-java11
21.0.0-java8
21.0.0-java11
20.3.1-java8
20.3.1-java11
19.3.5-java8
19.3.5-java11
20.3.0-java8
20.3.0-java11
19.3.4-java8
19.3.4-java11
20.2.0-java8
20.2.0-java11
19.3.3-java8
19.3.3-java11
20.1.0-java8
20.1.0-java11
19.3.2-java8
19.3.2-java11
The sort
command does a nice job though:
asdf list-all graalvm | sort
19.0.0
19.0.2
19.1.0
19.1.1
19.2.0
19.2.0.1
19.2.1
19.3.0-java11
19.3.0-java8
19.3.0.2-java11
19.3.0.2-java8
19.3.1-java11
19.3.1-java8
19.3.2-java11
19.3.2-java8
19.3.3-java11
19.3.3-java8
19.3.4-java11
19.3.4-java8
19.3.5-java11
19.3.5-java8
19.3.6-java11
19.3.6-java8
20.0.0-java11
20.0.0-java8
20.1.0-java11
20.1.0-java8
20.2.0-java11
20.2.0-java8
20.3.0-java11
20.3.0-java8
20.3.1-java11
20.3.1-java8
20.3.1.2-java11
20.3.1.2-java8
20.3.2-java11
20.3.2-java8
21.0.0-java11
21.0.0-java8
21.0.0.2-java11
21.0.0.2-java8
21.1.0-java11
21.1.0-java8
The releases for graalvm have moved
https://github.com/oracle/graal/releases/tag/vm-19.3.1
This issue lists Renovate updates and detected dependencies. Read the Dependency Dashboard docs to learn more.
This repository currently has no open or pending branches.
.github/workflows/workflow.yml
asdf-vm/actions v3
Please add support for GraalVM JDK17, it's officially available on their repository.
Starting with version 21.1.0, GraalVM offers experimental Java 16 support. Can support for these builds be added?
Edit: It looks like these builds are supported when installing, but not when listing all available versions
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.