The official ruby snap is available

Posted by Hiroshi SHIBATA on 8 Nov 2018

Ruby の公式 snap パッケージをリリースしました。

https://snapcraft.io/ruby

snap は canonical が開発している新しいパッケージシステムです。独自のファイルシステムを利用して、バイナリの動作に必要なライブラリを全てパッケージングして配布することができます。snap を利用することで、 yum や apt のような Linux ディストリビューションのパッケージシステムを利用した時に、任意のバージョンをユーザーが自由に使うことができない問題を解決しました。

Ubuntu 16.04 以降のディストリビューションなら以下のコマンドで snap ruby を使うことができます。

sudo snap install ruby --classic

Ubuntu 以外のディストリビューションで snap を利用する場合の準備については https://docs.snapcraft.io/installing-snapd/6735 を参照してください。

Ruby の snap パッケージは channel と呼ばれる機能を用いて、現在メンテナンスしているバージョンを配信しています。例えば、2018/11 現在 channel を指定しない場合は 2.5.3 がインストールされますが、2.4 を利用したい場合は以下のように指定します。

sudo snap install ruby --classic --channel=2.4/stable

snap の機能を使うと複数の Ruby のバージョンを利用することができます。例えば、Ruby 2.3 に切り替えるには以下のコマンドを実行します。

sudo snap switch ruby --channel=2.3/stable
sudo snap refresh

また、snap の制限事項として、RubyGems は $HOME/.gem にインストールされるように GEM_HOME と GEM_PATH を設定しています。そのため、rails や rspec などのコマンドを bundle exec を用いずに実行したい場合は以下の行を .bashrc などに設定する必要があります。

eval `ruby.env`

$HOME/.gem は複数のバージョンで共有されるため、バージョンを切り替えて利用した場合、C 拡張などは gem pristine --extensions コマンドを用いて再コンパイルする必要があります。

この ruby snap は 11/6-8 にロンドンの canonical オフィスで開催された snapcraft summit で初めて公式バージョンをリリースしました。不具合やフィードバックは https://github.com/ruby/snap.ruby で受け付けています。お楽しみください。

最近のニュース

Ruby 4.0.0 リリース

Ruby 4.0.0 が公開されました。 Ruby 4.0 には “Ruby Box”、”ZJIT” ほか多数の改善が含まれています。

Posted by naruse on 25 Dec 2025

サイトのアイデンティティの再設計

サイトの包括的なデザインのアップデートを発表できることを嬉しく思います。今回の更新ではTaeko Akatsukaさんにデザインを担当していただきました。

Posted by Hiroshi SHIBATA on 22 Dec 2025

Ruby 4.0.0 preview2 リリース

Ruby 4.0.0-preview2 が公開されました。Ruby 4.0では、Unicodeバージョンの17.0.0へのアップデートなど様々な改善が行われています。

Posted by naruse on 17 Nov 2025

もっと読む...