`asdf install ruby` on macOS
Installing ruby through asdf on Apple Silicon Macs1 will attempt to build a custom openssl for each install because it can’t find openssl from homebrew in
/usr/local, as that’s now installed in
/opt/homebrew. This means your
brew update no longer pulls in security fixes for your ruby runtimes, as well as wasting disk space.
Ruby 2.6.10 & 2.7.x need OpenSSL 1.1, and are unsupported at time of publishing so you should really upgrade to ruby 3! (Tested with ruby 2.6.10 and 2.7.8 at time of publishing.)
brew install email@example.com RUBY_CONFIGURE_OPTS="--with-openssl-dir=$(brew --prefix firstname.lastname@example.org)" \ asdf install ruby 2.7.8
Ruby 3.0 and higher need openssl@3 so we follow the same override but with a different brew name. (Tested with ruby 3.1.4 and 3.2.2 at time of publishing.)
brew install openssl@3 RUBY_CONFIGURE_OPTS="--with-openssl-dir=$(brew --prefix openssl@3)" \ asdf install ruby 3.2.2
Also if you’re trying to install a version of ruby that exists in rbenv/ruby-build
master branch, but not in the version of ruby-build asdf-ruby plugin uses you can override it with
ASDF_RUBY_BUILD_VERSION=master when running
asdf ruby install x.y.z. Pass as an extra envariable to the above commands.
M1/M2 processors ↩︎