Instalar y Actualizar Ruby en Debian + Montando Página Web en RubyonRails

Me a dado por probar un sitio con ruby y para eso tenemos que instalar ruby y luego montar el CMS hecho en ruby.

Primero es instalar ruby:

apt-get install ruby  rubygems-integration

Así por defecto tendremos ruby 1.8 si usamos wheezy, podemos cambiar ruby por ruby1.9.3 para tener la última versión:

apt-get install ruby1.9.3

En caso de que necesitemos el 1.8 en vez del 1.9 podemos instalar el paquete ruby-switch

apt-get install ruby-switch

Este paquete permite hacer «switch» cambio en las versiones de ruby:

Podemos usar el comando list para ver las versiones instaladas:

ruby-switch --list
ruby1.8
ruby1.9.1

Es una cosa curiosa ya que a pesar de instalar ruby 1.9.3 aparece ruby 1.9.1, pero viendo la lista de paquetes es por el formato de paquetes de debian:

ruby -v
ruby 1.9.3p194 (2012-04-20 revision 35410) [x86_64-linux]

En fin, que la versión que tenemos es 1.9.1.

Para cambiar entre versiones usamos:

Cambiar versión de ruby

ruby-switch --set rubyVERSION

De esto pueden ver más info en la documentación de debian, tanto así como usar versiones diferentes de ruby con cada usuario: Documentación ruby de debian

Con eso tenemos ruby instalado, en mi caso como no soy programador pues no usaré ningún script propio para la muestra, pero he encontrado rifenerycms

Lo podemos instalar con gem tal cual lo pone en la documentación de refinerycms:

Aunque antes podemos instalar sqlite que es una dependencia:

apt-get install libsqlite3-dev && gem install sqlite3 -v '1.3.9

Y luego comenzar con el resto

gem install refinerycms

refinerycms /home/skamasle
 cd /home/skamasle
rails server

Con eso y resueltos los problemas mencionados abajo tenemos corriendo refinerycms, por ahora no tengo nada montado, tengo que aprender a personalizarlo pero cuando tenga tiempo seguramente haré otra guía:

ruby

Problemas que se presentaron

:

Hay que instalar execjs:

gem install execjs

Luego este otro error:

/var/lib/gems/1.9.1/gems/execjs-2.2.1/lib/execjs/runtimes.rb:51:in `autodetect’: Could not find a JavaScript runtime. See https://github.com/sstephenson/execjs for a list of available runtimes. (ExecJS::RuntimeUnavailable)

La forma fácil de solucionarlo es instalando nodejs :/

apt-get install nodejs

Si no tenemos el paquete podemos usar estos repos para instalarlo:

deb https://deb.nodesource.com/node wheezy main
deb-src https://deb.nodesource.com/node wheezy main