Skip to content
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

Add support for TruffleRuby #4297

Closed
ylluminate opened this issue Feb 3, 2018 · 7 comments
Closed

Add support for TruffleRuby #4297

ylluminate opened this issue Feb 3, 2018 · 7 comments

Comments

@ylluminate
Copy link

There's some need to integrate interactivity to allow users to accept or decline a license as per this.

What's the preferred method for integrating such a license acceptance gate into an RVM Ruby formula?

@pkuczynski
Copy link
Member

Lookup the source code or RVM and create a PR :)

@pkuczynski pkuczynski added this to the rvm-1.29.4 milestone Feb 5, 2018
@pkuczynski pkuczynski changed the title Building interactivity for license acceptance into the download / installation process of a Ruby? Add support for TruffleRuby Feb 5, 2018
@ylluminate
Copy link
Author

ylluminate commented Feb 5, 2018

It seems to me that a lot of other projects that need Java and other such Oracle components via a traditional click-through gate (eg OTN) implement shell based acceptance Y/N gates at download. Obviously no one is getting prosecuted or running into legal problems over there, so I would hope that the same thing can be done here. I guess some of the project members are in a quandary due to their positions and need to remain aloof, but such things really do hinder the project on a large scale moving forward.

So yeah, we definitely need to get a nice independent PR going for Truffle here in this regard to help everyone out until folks can get their hands around the ability to remove license acceptance...

Not sure if we have to get this fancy, but it would be even possible to actually trigger a click through via the OTN, acting as a graphical browser, but being a simple one-page browser dedicated to dealing with this OTN issue I suppose.

@havenwood
Copy link
Member

Direct downloads of GraalVM Community Edition (CE) without a click-through are now available for Linux. Once direct downloads of GraalVM CE are available for macOS, TruffleRuby support should be straightforward to add for macOS and Linux.

Here's a little script showing installation for Linux and a work-in-progress commit adding installation support for ruby-install.

@eregon
Copy link
Contributor

eregon commented Jun 15, 2018

Should support for TruffleRuby be added to RVM(1) aka this repo or RVM2?
I'm not very familiar with the development of RVM2.

@havenwood
Copy link
Member

@eregon Here, RVM(1), is the right place. :-)

@eregon
Copy link
Contributor

eregon commented Jun 16, 2018

I started looking at this and I have a one general question.

TruffleRuby is distributed as binary archives per platform/architecture:

Those contain everything we need.
Additionally we also want to trigger a "post-install" hook after extracting the tarball and copying to the target directory. This hook currently rebuilds the openssl C extension, to adapt to the target system libssl version and configuration.

So the question is: is that a "binary ruby" from the point of view of RVM?
It seems that JRuby is considered as binary with rvm_remote_server_url1=https://s3.amazonaws.com/jruby.org.
It looks like the current logic for binary rubies expects all tarballs to be under the same URL path, which is not true with GitHub releases (where the version is a component of the URL, see the URLs above).
Also, it'd seem weird to me to try https://github.com/oracle/truffleruby/releases/download when looking for binary rubies of other implementations.

So I'm thinking we'd rather behave like a source install, except almost everything is already built.
RVM devs: Does that make sense?

@eregon
Copy link
Contributor

eregon commented Jun 17, 2018

Fixed by #4406 and 70ff3d0 on master.

You can now install TruffleRuby with:

rvm get master
rvm install truffleruby

(for Linux & macOS x86_64)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants