Standalone Distribution

There are three ways to install TruffleRuby, see getting started. The recommended way is GraalVM as it provides the most flexibility. You can also use what we call the standalone distribution of TruffleRuby, either via your Ruby manager/installer or as a simple binary tarball.

Releases of the standalone distribution are available on GitHub. Nightly builds are also available.

The standalone distributions are the files:


Testing TruffleRuby in TravisCI #

TruffleRuby is now integrated in TravisCI. Just add truffleruby in the build matrix, such as:

language: ruby
  - 2.6.1
  - truffleruby
  - truffleruby-head

See the TravisCI documentation for details. Please report any issue you might find while testing with TruffleRuby.

Testing TruffleRuby in GitHub Actions #

In GitHub Actions, you can easily setup TruffleRuby with ruby/setup-ruby:

name: My workflow
on: [push]
      fail-fast: false
        ruby: [ 2.6, truffleruby, truffleruby-head ]
    runs-on: ubuntu-latest
    - uses: actions/checkout@v2
    - uses: ruby/setup-ruby@v1
        ruby-version: $
    - run: ruby -v

See the README of that action for more documentation.

Testing TruffleRuby in CI #

If you use another continuous integration system, you can follow these instructions to run TruffleRuby in CI.

In short, one only needs to download and extract the archive, add it to PATH and run the post-install script.

Latest Release #

Set TRUFFLERUBY_VERSION to the latest TruffleRuby version from GitHub releases.

export TRUFFLERUBY_VERSION=<desired_version>
curl -L$TRUFFLERUBY_VERSION/truffleruby-$TRUFFLERUBY_VERSION-linux-amd64.tar.gz | tar xz
export PATH="$PWD/truffleruby-$TRUFFLERUBY_VERSION-linux-amd64/bin:$PATH"
ruby -v # => truffleruby 20.0.0, like ruby x.y.z, GraalVM CE Native [x86_64-linux]

Latest Nightly Build #

Here are the instructions for installing the latest nightly build manually:

curl -L | tar xz
export PATH="$PWD/truffleruby-head/bin:$PATH"
ruby -v # => truffleruby 20.1.0-dev-e8ccba87, like ruby x.y.z, GraalVM CE Native [x86_64-linux]

RubyGems Configuration #

Note that you also need to ensure GEM_HOME and GEM_PATH are not set, so TruffleRuby uses the correct GEM_HOME and GEM_PATH. See Using TruffleRuby without a Ruby manager for details.

Dependencies #

TruffleRuby’s dependencies need to be installed for TruffleRuby to run correctly.