Ir al contenido
Brayan Diaz C
Volver

Cómo instalar y configurar Ruby en macOS con rbenv

Ruby en macOS, la versión de esta guía para Mac. Vas a aprender exactamente cómo instalar Ruby con rbenv y Homebrew: varias versiones conviviendo, la de cada proyecto fijada con .ruby-version y Bundler listo para trabajar.

Ruby con Rails es mi stack principal desde hace años, y este es exactamente el setup que repito en cada Mac nuevo que configuro. No es teoría: es la receta que uso.

macOS tiene una trampa conocida con Ruby: el sistema trae uno viejo (está ahí por compatibilidad, no para ti) y muchos tutoriales te hacen instalarle gemas con sudo. Ese camino termina siempre igual: errores de permisos, gemas nativas que no compilan y un entorno que nadie sabe reproducir.

El problema de fondo es usar un Ruby que no controlas. La solución es la misma de toda esta etapa de la serie: un gestor de versiones que vive en tu usuario.

Vamos a ver:

  1. Instalar rbenv y ruby-build con Homebrew.
  2. Configurar ~/.zprofile y ~/.zshrc correctamente.
  3. Instalar versiones de Ruby, elegir la global y fijarla por proyecto.
  4. Dejar Bundler listo para trabajar.

Al final tendrás un entorno Ruby limpio, sin sudo y a prueba de Gemfiles.

Nota

Esta guía asume que ya tienes Homebrew instalado. Si no, empieza por Setup macOS para desarrollo profesional.

Tabla de contenidos

Tabla de contenidos

Paso 1: Instala rbenv y ruby-build

Actualiza las fórmulas e instala ambos de una vez:

brew update
brew install rbenv ruby-build

ruby-build es el plugin que aporta el comando rbenv install; con Homebrew llegan juntos y se actualizan juntos.

Paso 2: Configura tu shell

El reparto de siempre en la serie: PATH en ~/.zprofile, inicialización interactiva en ~/.zshrc.

echo '' >> ~/.zprofile
echo '# PATH de rbenv' >> ~/.zprofile
echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.zprofile
echo 'export PATH="$HOME/.rbenv/plugins/ruby-build/bin:$PATH"' >> ~/.zprofile
Nota

Con Homebrew, rbenv ya está en tu PATH y estas líneas no son estrictamente necesarias: cubren el caso de instalarlo por git (como en la versión de Ubuntu) y no estorban. Así el mismo .zprofile te sirve en cualquier máquina.

echo '' >> ~/.zshrc
echo '# Inicialización de rbenv' >> ~/.zshrc
echo 'eval "$(rbenv init - zsh)"' >> ~/.zshrc

Recarga la configuración (o cierra y abre la terminal):

source ~/.zprofile
source ~/.zshrc

Verifica:

rbenv -v

Paso 3: Instala Ruby y define la versión global

Consulta las versiones estables recientes:

rbenv install -l

Instala la que necesites (usa la más reciente de la lista) y déjala como predeterminada:

rbenv install 3.4.4
rbenv global 3.4.4
Nota

La instalación tarda varios minutos: rbenv compila Ruby desde la fuente usando las herramientas que ya dejamos listas en el setup de la serie.

Verifica:

ruby -v
rbenv versions
rbenv which ruby

Fíjate en la ruta de rbenv which ruby: debe salir de ~/.rbenv, no de /usr/bin. Ese es tu Ruby, no el del sistema.

Paso 4: Fija la versión por proyecto

Dentro de la carpeta de un proyecto:

cd mi-proyecto
rbenv local 3.4.4

Esto crea un archivo .ruby-version, que además Rails y Bundler saben leer: quien clone el repo trabaja con el mismo Ruby que tú, automáticamente.

Paso 5: Deja Bundler listo

El gestor de dependencias de Ruby, sin sudo porque todo vive en tu usuario:

gem install bundler
rbenv rehash
bundle -v

Aprovecha para actualizar RubyGems:

gem update --system
Consejo

rbenv rehash regenera los shims: los atajos que hacen que ruby, gem o bundle apunten a la versión correcta. Si instalas una gema con ejecutable (como rails) y el comando no aparece, ese es el remedio.

Solución de problemas comunes

rbenv: command not found

Revisa que las líneas del Paso 2 quedaron en los archivos correctos y reinicia la terminal.

ruby-build: definition not found

Tu ruby-build no conoce esa versión todavía:

brew upgrade ruby-build

ruby -v sigue mostrando el Ruby del sistema

rbenv version
which ruby

Si la ruta no sale de ~/.rbenv/shims, falta la inicialización del Paso 2 en tu ~/.zshrc.

Líneas duplicadas en ~/.zprofile o ~/.zshrc

Pasa si ejecutas los echo >> más de una vez. Abre el archivo y deja una sola copia de cada bloque.

Mantenimiento

Actualizar rbenv y ruby-build (instalados con Homebrew):

brew upgrade rbenv ruby-build

Y para eliminar una versión que ya no uses:

rbenv uninstall 3.4.4

Conclusión

Ruby compilado en tu usuario, .ruby-version por proyecto, Bundler sin sudo y el Ruby del sistema intacto donde Apple lo dejó: ese es el entorno sobre el que Rails se instala sin pelear.

Si esto te fue útil, el artículo relacionado es el paso lógico: Cómo instalar y configurar Ruby en Ubuntu con rbenv, la versión de esta guía para Ubuntu y WSL.

La próxima semana sigo con la serie: Java con SDKMAN, el gestor de todo su ecosistema. Si no te lo quieres perder, suscríbete al newsletter en la portada del blog.

Recursos adicionales


Comparte este post:

Post siguiente
Cómo instalar y configurar Ruby en Ubuntu con rbenv