Para seguir el tutorial voy a usar mi viejo buen portátil (tiene ya 6 años), con una Ubuntu 10.04 y el siguiente stack de desarrollo (siguiendo lo recomendado en el tutorial):
- Editor: gVim (y las extensiones de ruby de vim)
- Control de versiones: git (apt-get install git-core)
- Ruby versión 1.8.7
Y hasta aquí todo bien, no deja de ser todo apt-get install, ahora el tutorial recomienda instalar RVM (Ruby Version Management), un gestor de versiones de Ruby. El tema me suena, haciendo un símil con Java, yo puedo estar desarrollando con Java 1.6 pero querer compilar con Java 1.5 (por cuestión de compatibilidad o cualquier motivo), al parecer Ruby tiene una herramienta que gestiona este tipo de cosas… la verdad, tiene buena pinta, vamos a ver.
La instalación es con git (primera toma de contacto):
bash < <( curl http://rvm.beginrescueend.com/releases/rvm-install-head )
se ejecuta sin problemas y sale un bonito texto dando información varia. Básicamente y según la sección “Postinstall” de la misma página de rvm, hay que añadir una línea al final del .bashrc:
[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm" # This loads RVM into a shell session
Se comprueba si esta funcionando con:
type rvm | head -n1
Salida, correcta, así que seguimos y nos volvemos al tutorial donde dicen como usar RVM una vez instalado.
Básicamente, según estoy entendiendo, Ruby se distribuye en Gems, que son programas autosuficientes con sus librerías, etc… y con RVM vamos a instalar varios perfiles de ejecución incluyendo sus Gems y vamos a definir uno por defecto.
Asi que nada:
rvm install 1.8.7 #instala Ruby 1.8.7
rvm install 1.9.2 #instala Ruby 1.9.2
#etiquetamos lo perfiles
rvm --create 1.8.7@rails2
rvm --create 1.9.2@rails3
#usamos rails3 por defecto
rvm --default use 1.9.2@rails3
Por cierto, la compilación de la versiones de Ruby… tarda. O será que mi portátil esta ya bien viejuno.
Una vez hechas todas estas operaciones, me llevo la grata sorpresa de que de propina tenemos instalado RubyGems, un gestor de paquetes de Ruby, para probarlo:
which gem
Trato de actualizar tal y como dice el manual:
gem update --system
Y… ¡ZAS!¡En toda la boca!
no such file to load -- zlib
Y por fín se pone interesante la cosa, veo un post específico para la configuración: How to install Rails 3.0 and Ruby 1.9.2 on Ubuntu, aunque me salto los dos primeros pasos, ya tengo instalado RVM y Ruby 1.8.7… sigo intentando pero nada de nada, sigue diciendo que no hay zlib… vaya. En Stackoverflow leo esto:
rvm package install zlib rvm remove 1.9.1 rvm install 1.9.1 -C --with-zlib-dir=$rvm_path/usr
Y en la referencia de RVM esto:
$ rvm package install zlib
$ rvm remove 1.9.2
$ rvm install 1.9.2
Esto parece más razonable… buf, otra vez a compilar… vamos a por un café que siempre viene bien.