この記事について
Ruby記事投稿キャンペーンということで、ちょっとした記事を書こうと思います。
rbenvとruby-buildについて
この記事を読んでいる方の大部分はRubyのバージョン管理やインストールにrbenvとruby-buildを使っていることと思います。最初に明言しておくと、これらのツールから乗り換える必要は全くありません。
その上で、同じようなことをする別のツール、chrubyとruby-installを紹介しようと思います。なお、どちらも同じ方(postmodern氏)の作品です。
chruby
chrubyはRubyのバージョンを切り替えるためのツールです。特徴としては、ディレクトリを切り替えたときのRubyバージョンの自動切り替えがオプションの機能であることなどが挙げられます(https://github.com/postmodern/chruby#auto-switching)。
rbenv global
のような機能はないのですが、自動バージョン切り替えを有効にしておけば、~/.ruby-version
を置いておけばよいだけなので問題なく、結果としてシンプルな実装の良さを享受できるといったところです。
また、shims
の概念がなく、~/.gems
にインストール済みgemが配置されます。
ruby-install
ruby-installはRubyをインストールするためのツールです(ググラビリティが低い)。特徴としてはインストール可能なRubyのバージョンを別に管理しているため、Rubyの新しいバージョンがリリースされても本体の更新が不要なことが挙げられます。
今挙げた特徴は実際割と便利で、例えばruby-install ruby 3.2.2
を実行すると、「Ruby3.2.2があるはずの場所」にダウンロードしに行くのでメタデータの更新をしなくてもダウンロードからインストールまでできてしまいます(それがいいことなのかはさておき)。
インストール時にbrew install
系のコマンドが自動で走るのも、依存関係のことをあまり気にしなくて良くなるので便利です。
まとめ
というわけで、chrubyとruby-installのご紹介でした。この手のツールとしては他にrvmがありますが、それらの中でも軽量なものとなっていると思います。コードを読んでみるとRubyのインストールについて理解が深まるかもしれません。