Giter Site home page Giter Site logo

apaciuk / ruby-install Goto Github PK

View Code? Open in Web Editor NEW

This project forked from postmodern/ruby-install

0.0 0.0 0.0 1.17 MB

Installs Ruby, JRuby, Rubinius, TruffleRuby or MRuby

License: MIT License

Shell 87.99% Ruby 1.45% Makefile 2.67% Roff 7.90%

ruby-install's Introduction

ruby-install

Installs Ruby, JRuby, TruffleRuby (native / GraalVM), or mruby.

Features

  • Supports installing arbitrary versions.
  • Supports downloading the latest versions and checksums from ruby-versions.
  • Supports installing into /opt/rubies/ for root and ~/.rubies/ for users by default.
  • Supports installing into arbitrary directories.
  • Supports downloading from arbitrary URLs.
  • Supports downloading from mirrors.
  • Supports downloading/applying patches.
  • Supports specifying arbitrary ./configure options.
  • Supports downloading archives using wget or curl.
  • Supports verifying downloaded archives via MD5, SHA1, SHA256 or SHA512 checksums.
  • Supports installing build dependencies via the package manager:
  • Has tests.

Anti-Features

  • Does not require updating every time a new Ruby version comes out.
  • Does not require recipes for each individual Ruby version or configuration.
  • Does not support installing trunk/HEAD or nightly rolling releases.
  • Does not support installing unsupported/unmaintained versions of Ruby.

Requirements

  • bash >= 3.x
  • grep
  • wget > 1.12 or curl
  • md5sum or md5
  • sha1sum or sha1
  • sha256sum or sha256
  • sha512sum or sha512
  • tar
  • bzip2
  • xz
  • patch (if --patch is specified)
  • gcc >= 4.2 or clang

Synopsis

List supported Rubies and their current stable versions:

$ ruby-install

Updates then list the supported Rubies and their current stable versions:

$ ruby-install --update

Install the current stable version of Ruby:

$ ruby-install ruby

Install the latest version of Ruby:

$ ruby-install --update ruby

Install a stable version of Ruby:

$ ruby-install ruby 3.1

Install a specific version of Ruby:

$ ruby-install ruby 3.1.2

Install a Ruby into a specific directory:

$ ruby-install --install-dir /path/to/dir ruby

Install a Ruby into a specific rubies directory:

$ ruby-install --rubies-dir /path/to/rubies/ ruby

Install a Ruby into /usr/local:

$ ruby-install --system ruby 3.1.2

Install a Ruby from an official site with directly download:

$ ruby-install -M https://ftp.ruby-lang.org/pub/ruby ruby 3.1.2

Install a Ruby from a mirror:

$ ruby-install -M http://www.mirrorservice.org/sites/ftp.ruby-lang.org/pub/ruby ruby 3.1.2

Install a Ruby with a specific patch:

$ ruby-install -p https://raw.github.com/gist/4136373/falcon-gc.diff ruby 1.9.3-p551

Install a Ruby with a specific C compiler:

$ ruby-install ruby 3.1.2 -- CC=clang

Install a Ruby with specific configuration:

$ ruby-install ruby 3.1.2 -- --enable-shared --enable-dtrace CFLAGS="-O3"

Install a Ruby without installing dependencies first:

$ ruby-install --no-install-deps ruby 3.1.2

Uninstall a Ruby version:

$ rm -rf ~/.rubies/ruby-3.1.2

Integration

Using ruby-install with RVM:

$ ruby-install --rubies-dir ~/.rvm/rubies ruby-3.2.0-preview3

Using ruby-install with rbenv:

$ ruby-install --install-dir ~/.rbenv/versions/3.2.0-preview3 ruby-3.2.0-preview3

ruby-install can even be used with Chef.

Install

wget -O ruby-install-0.9.0.tar.gz https://github.com/postmodern/ruby-install/archive/v0.9.0.tar.gz
tar -xzvf ruby-install-0.9.0.tar.gz
cd ruby-install-0.9.0/
sudo make install

PGP

All releases are PGP signed for security. Instructions on how to import my PGP key can be found on my blog. To verify that a release was not tampered with:

wget https://raw.github.com/postmodern/ruby-install/master/pkg/ruby-install-0.9.0.tar.gz.asc
gpg --verify ruby-install-0.9.0.tar.gz.asc ruby-install-0.9.0.tar.gz

Homebrew

ruby-install can also be installed with homebrew:

brew install ruby-install

Or the absolute latest ruby-install can be installed from source:

brew install ruby-install --HEAD

Arch Linux

ruby-install is already included in the AUR:

yaourt -S ruby-install

Fedora Linux

ruby-install is available on Fedora Copr.

FreeBSD

ruby-install is included in the official FreeBSD ports collection:

cd /usr/ports/devel/ruby-install/ && make install clean

Known Issues

Please see the wiki.

Alternatives

Endorsements

I like the approach you're taking. Curious to see how it plays out.

-- Sam Stephenson of rbenv

ruby-install's People

Contributors

postmodern avatar havenwood avatar stefanozanella avatar eregon avatar wilmoore avatar jacknagel avatar pbrisbin avatar fesplugas avatar freedomben avatar hone avatar samrees avatar nicklamuro avatar nirvdrum avatar voxxit avatar gevans avatar yous avatar jrafanie avatar jmettraux avatar emptyflask avatar juanitofatas avatar justincampbell avatar michaelrkn avatar paul avatar parndt avatar missingcharacter avatar hsbt avatar spastorino avatar msnexploder avatar trek avatar donv avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.