🚧

macOS Sequoia 15.5上のruby3.4でgem installが失敗する問題

に公開

久々の Zenn 投稿です。
Ruby を勉強し始めたら問題に遭遇したため、共有します。

実際に発生した環境

  • 端末: MacBook Air 13inch M3 2024
  • OS: macOS Sequoia 15.5(表題の通り)
  • Ruby: 3.4.5
  • Ruby バージョンマネージャ: mise 2025.6.8 macos-arm64 (2025-06-26)

問題

Ruby on Rails をインストールしようとしたところ、下記のエラーが発生しました。

> gem install rails
ERROR:  Could not find a valid gem 'rails' (>= 0), here is why:
          Unable to download data from https://rubygems.org/ - Errno::ECONNRESET: Connection reset by peer - SSL_connect (https://rubygems.org/specs.4.8.gz)

解決策

環境変数RUBY_TCP_NO_FAST_FALLBACK=1を設定することで解決しました。

> export RUBY_TCP_NO_FAST_FALLBACK=1
> gem install rails
Fetching zeitwerk-2.7.3.gem
Fetching thor-1.4.0.gem
# 中略
Successfully installed nio4r-2.7.4
Successfully installed actioncable-8.0.2
Successfully installed rails-8.0.2
38 gems installed

A new release of RubyGems is available: 3.6.9 → 3.7.1!
Run `gem update --system 3.7.1` to update your installation.

原因

issueを見る限りでは以下のようです。

  • Apple Silicon 上の macOS 15.3 で発生
    • ただし、類似した環境でも再現しない場合がある
  • Ruby3.4 で実装された、Happy Eyeballs Version 2 による接続が原因
    • RUBY_TCP_NO_FAST_FALLBACK=1で Happy Eyeballs Version 2 を無効化できる
    • 未だ(2025-08-05 時点)根本的原因は判明していない

今後の対応案

この問題に遭遇した場合、根本解決までRUBY_TCP_NO_FAST_FALLBACK=1を設定したままにすると良さそうです。
↓zshrc に書き込む場合

echo 'export RUBY_TCP_NO_FAST_FALLBACK=1' >> ~/.zshrc

参考文献

https://github.com/rubygems/rubygems/issues/8390
https://www.kirishikistudios.com/2025/04/08/ruby34.html
https://bugs.ruby-lang.org/issues/21104
https://www.ruby-lang.org/en/news/2024/12/25/ruby-3-4-0-released/

Discussion