Ruby
Para nuestros desarrollos en Ruby utilizamos el manejador de versiones rbenv y algunos plugins. La versión que usa cada proyecto está indicada en el .ruby-version
OSX
Previo a la instalación
Antes de empezar con esta instalación tienes que revisar si tienes rvm
instalado y quitarlo de tu computador.
Para esto ejecuta:
y si dice que no existe, tu computador está listo para la instalación, y si aparece algo tienes que desinstalarlo con
Finalmente, revisa tus archivos .bash_profile
o .zshrc
y comprueba que no quedan lineas relacionadas con rvm
.
Instalación
Luego debes cargar rbenv en tu shell para que puedas acceder a las diferentes versiones. Para esto debes agregar la siguiente linea en tu .bash_profile
o .zshrc
dependiendo del shell que uses. Hay dos formas de hacerlo:
Ejecutar el siguiente, que agrega automáticamente la línea necesaria:
Si usas
.bash_profile
Si usas
.zshrc
Abrir
.bash_profile
o.zshrc
y agregar la linea en el archivo usando el editor de preferencia:Te sugerimos, reiniciar la shell para que se apliquen los cambios. Para comprobar que tenemos
rbenv
instalado correctamente, escribe en tu consola la siguiente linea:Debiera aparecer la versión de rbenv instalada y los comandos que hay para ejecutar.
Abrir
.bash_profile
o.zshrc
y agregar la linea en el archivo usando el editor de preferencia:Te sugerimos, reiniciar la shell para que se apliquen los cambios. Para comprobar que tenemos
rbenv
instalado correctamente, escribe en tu consola la siguiente linea:Debiera aparecer la versión de rbenv instalada y los comandos que hay para ejecutar.
Posibles errores
Un posible error al instalar rbenv
es no tener bien configurado el PATH de la shell.
Windows
Para instalar rbenv
con WSL2, sigue las instrucciones de Linux.
Linux (Ubuntu)
Luego debes cargar rbenv en tu shell para que puedas acceder a las diferentes versiones. Para esto debes agregar la siguiente linea en tu .bashrc
o .zshrc
(este archivo está normalmente en el directorio $HOME
) dependiendo del shell que uses.
Puedes agregarlo con cualquier editor o hacerlo así (reemplaza ~/.bashrc
por ~/.zshrc
si usas zsh en lugar de bash):
Cierra la ventana del terminal y abre una nueva para que los cambios surjan efecto.
rbenv tiene varios plugins. Para instalarlos basta con dejarlos en ~/.rbenv/plugins/
. Recomendamos instalar los siguientes plugins: ruby-build
, rbenv-vars
, rbenv-aliases
, rbenv-default-gems
:
Posibles errores
Para configurar los aliases automáticos del plugin rbenv-aliases
, primero debemos instalar una versión de ruby utilizando rbenv
. Si al ejecutar el comando rbenv alias --auto
recibes un error relacionado a que la carpeta versions
no existe, sigue con el último paso y luego ejecuta de nuevo el comando.
Instalando versiones de ruby
Para instalar nuevas versiones de ruby, el plugin ruby-build
nos permite usar el comando rbenv install
:
Recomendación: Define alguna version de ruby que quieras para tener como global haciendo rbenv global 2.7.4 De esta manera no estarás usando la version de ruby que trae el sistema operativo. Esto hace que sea más seguro ya que no necesitas usar sudo para instalar gemas.
Warning: Si no puedes usar rbenv o instalar gemas sin sudo, es muy probable que hayas dado los permisos equivocados en algún paso de la instalación. Esto no es seguro, por lo tanto te recomendamos eliminar todo y volver a hacer los pasos sin dar permisos de super usuario.
TIP: Las versiones de ruby quedan instaladas en ~/.rbenv/versions.
TIP: El plugin rbenv-default-gems tiene como objetivo instalar gemas automáticamente cuando instalas una nueva version de ruby. Para esto crea un archivo de texto ~/.rbenv/default-gems y agrega línea por línea el nombre de las gemas que quieres que se instalen. Buenos candidatos son bundler y rails.
Ruby Aliases
Como estandar en Platanus usamos aliases para definir las versiones de ruby que utilizan los proyectos. De esta manera nos evitamos tener que actualizar los proyectos cada vez que instalas una nueva version de ruby. Esto nos ayuda en menos manteción y en menos uso de espacio en disco.
Los aliases son simplemente symbolic links de una version de ruby con un nombre en particular. Estos aliases podrían ser nombre arbitrarios, pero nosotros usamos la version de ruby sin el patch
Para manejar estos aliases, puedes usar el plugin de rbenv-aliases que crea los alias automáticamente al instalar nuevas versiones de ruby.
Última actualización