Rails 3 en Ubuntu Lucid con RVM
Hace unos días salió la versión RC de Rails3. Para instalarla en una Ubuntu Lucid recien instalada (sin ruby ni nada) lo mejor es hacerlo a través de RVM.
Instalamos sofware básico:
sudo apt-get install build-essential git-core curl libsqlite3-dev
Instalamos RVM:
bash < <( curl http://rvm.beginrescueend.com/releases/rvm-install-head )
Añadimos a nuestro $HOME/.bashrc la linea:
[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm"
Abrimos una nueva shell (o hacemos source .bashrc).
Instamos Ruby 1.9.2 (en estos momentos la versión instalada es la RC):
rvm install 1.9.2
Usamos esa versión de ruby:
rvm use ruby-1.9.2
Instalamos sqlite3 y rails con gem:
gem install sqlite3-ruby
gem install rails --pre
Publicado en Rails, Ubuntu | no comentarios |
Instalando Rails 3 beta en Ubuntu
La semana pasada salió la versión beta de la esperada versión 3 de Rails. La estoy probando en una Ubuntu Karmic 9.10 virtualizada con KVM. Para instalar esta versión hay que instalar ruby1.9 (aunque es compatible con ruby 1.8) y unas cuantas gemas:
apt-get install ruby1.9 ruby1.9-dev irb1.9 rdoc1.9
wget http://rubyforge.org/frs/download.php/60718/rubygems-1.3.5.tgz
tar -xvf rubygems-1.3.5.tgz
cd rubygems-1.3.5
sudo ruby1.9 setup.rb
sudo ln -s /usr/bin/ruby1.9 /usr/bin/ruby
sudo ln -s /usr/bin/gem1.9 /usr/bin/gem
gem install tzinfo builder memcache-client rack rack-test rake erubis mail text-format thor bundler i18n
gem install rack-mount --version 0.4.1
gem install rails --pre
Una vez instalado y al hacer un proyecto de pruebas con: rails prueba; cd prueba; rails server pega unos cuantos petes:
Hay que poner la variable de entorno GEM_HOME correctamente:
export GEM_HOME=/usr/lib/ruby1.9/gems/1.9.0
Mejor ponerla en algún script de inicio como $HOME/.bashrc
undefined method `default_external=' for Encoding:Class (NoMethodError)
Con este fallo lo único que he encontrado es comentar la línea de la que se queja.
require': no such file to load -- ftools (LoadError)
sudo apt-get install rpl
cd /usr/lib/ruby1.9/gems/1.9.0/gems/
sudo rpl -R "require 'ftools'" "" * Ah! y no se os ocurra poner como nombre de proyecto alguna palabra reservada como test, porque sino dará otro bonito error: (uninitialized constant Rack::Test::Application (NameError) if
application is named 'Test'. Stack trace:
Publicado en Rails | no comentarios |
Vijockey 0.1
En la pasada fiesta de fin de año tuvimos un proyector de vídeo. Como siempre el tiempo se nos hechó encima para preparar como iba a poner los vídeos. Lo ideal sería tener un solo ordenador que pusiera la música y los videos (el año pasado lo hicimos con 2 ordenadores y fue un lio). Así que me acordé de una aplicación que hice en C y gtk para este mismo menester. La aplicación estaba desactualizada y no arrancaba... y estabos a 28 de diciembre.
Me acordé de un proyecto de Ubuntu para hacer aplicaciones rápidas con pygtk, el binding en python de gtk+. El proyecto se llama Quickly (un alarde de originalidad en el nombre). Así que me puse manos a la obra y en tan solo 3 días pude tener una aplicación medianamente usable que realiza lo que quería: Añadir videos a la aplicación, elegir si lanzarlo con sonido o sin sonido, al lanzarlo que lo hiciera en la pantalla del proyector y si tenía sonido que parara el player de múscia (rhythmbox) y cuando acabara el vídeo arrancara de nuevo la música. El programa de video utilizado es mplayer.
Aprovechando que Quickly tiene comandos para crear paquetes deb y publicarlos en un ppa de launchpad pues me he animado a publicar el programilla en Launchpad que tal vez le sirva a alguien. El programa se llama Vijockey (un alarde de originalidad, esta vez, por mi parte). Hay paquetes .deb para Ubuntu en mi ppa de launchpad
Publicado en Gnome, Ubuntu | no comentarios |
Efecto 2010 en Spamassassin
Uno de los servidores estaba marcando como spam correo legitimo. Investigando el problema, hay una regla que marca cuando el correo tiene fecha muy en el futuro (fichero 72_active.cf, regla FH_DATE_PAST_20XX).
El problema está en que la fecha que chequea es cuando es mayor de 2010, con lo que muchos correos añadía nada menos que 3 y pico puntos. Existe un parche en la web de Spamassassin.
Publicado en sysadmin | no comentarios |
Gmate
Después de instalar Ubuntu Karmic en una de mis máquinas me puse a instalar y configurar mis aplicaciones típicas.
Para programar uso Gedit con una serie de plugins. Buscando por ahí me topé con el proyecto Gmate que consiste en poner los plugins y configuraciones necesarias para emular al famoso TextMate de Mac, muy usado por los programadores Rails.
La verdad que mola mucho como deja Gedit.
Publicado en Gnome, Rails | no comentarios |
Bonito bug en Rails 2.3.3
El otro día me topé con un "bonito" bug de la última versión de Rails, la 2.3.3
El fallo en custión es del sistema de envíos de correos, ActionMailer, que no funciona cuando le pones un "From" con un nombre:
From "Fulano <noreply@fulano.com>"
El error que suelta:
Net::SMTPSyntaxError (501 <Fulano <noreply@fulano.com>>: "@" or "." expected after "Fulano"
Hay que aplicar este parche para hacerlo funcionar.
Un error bastante grave para una versión estable.
Publicado en Rails | no comentarios |
Thais
Cucumber
Mi punto flojo dentro del mundo de la programación Rails siempre ha sido el Testing. Siempre que me ponía a estudiarlo, los comienzos eran prometedores pero después resultaba bastante complejo y, por qué no decirlo, aburrido.
Hace poco quise ponerme al día en este campo y utilizar nuevas herramientas, como Cucumber. Más que para testing de aplicaciones, es una herramienta para realizar BDD (Behaviour Driven Development o Desarrollo orientado al comportamiento) y lo que es mejor, es divertida :)
Se utilizar lenguaje natural, por defecto inglés pero se pueden utilizar en otros idiomas como el español (aunque yo la uso en inglés) para describir características de nuestra aplicación. Por poner un ejemplo:
Given I'm logged in
And I there are products "ordenador", "teclado"
When I go to the list of products
Then I should see "ordenador"
And I should see "teclado"
Con esto, cucumber intenta parsear estas acciones o pasos con definiciones en ruby. La estructura está fijada en Given/When/Then. Given para poner la aplicación en un estado conocido, When para definir la acción realizada y Then para describir el resultado deseado.
En definitiva, una herramienta que me ha descubierto un campo nuevo en la forma de desarrollar aplicaciones web.
Para más información sobre cucumber, recomiento este railscasts sobre el tema.
Publicado en Rails | no comentarios |
Gwget 1.00
Después de demasiado tiempo (la última versión fué en mayo del 2007 !!), hoy he lanzado la versión 1.00 de Gwget.
Aunque no haya muchas colaboraciones de vez en cuando me envían parches interesantes, como el último incluido en esta versión que permite detectar ficheros m3u y descargar el resto de archivos.
Como siempre al sacar una nueva versión, espero que se anime la gente a enviarme correcciones y parches.
Publicado en Gnome | no comentarios |
Un día en Fort William
La noche anterior decidimos quedarnos una noche más en Fort William y así se lo dijimos al casero de nuestro "bed&breadfast", sin embargo, las habitaciones que teníamos estaban reservadas así que teníamos que dejarlas a la fuerza. Recogimos todo a toda prisa. Menos mal que nos dijo que miraramos justo enfrente que había otro B&B, y por suerte este sí tenía sitio.
Dejamos las maletas y nos fuimos a la estación de tren para coger el tren Jacobite. Al llegar a la taquilla vemos un gran letrero de "No hay tickets". Leyendo la letra pequeña dice que se puede ir al vagón 18 para ver si quedan. Vamos hacía allí y sí que hay (menos mal). Vaya comienzo de día, y van dos rozando el largero.

El viaje en tren desde Fort William hasta el pueblecito costero de Mallaig es espectacular: pasando por medio de las montañas vemos muchos lagos. El tren hace una parada de unos 20minutos en mitad del viaje y sobre 1:30h. después de salir llegamos a Mallaig. Es un pueblecito costero, desde el cual se puede coger Ferries hasta la isla de Skye.

En el viaje de vuelta planificamos la tarde. En la guía leemos que hay cerca de Fort William un sendero que termina en una cascada de 100m. Con este incentivo estaba claro lo que tocaba :)
El sendero en cuestión es Glen Nevis (un Glen es como llaman los escoceses a los valles estrechos de las tierras altas). Después de ascender por el cañón de un rio, llegamos al Glen propiamente dicho. Llueve a ratos y hay un montón de mosquitos pero las vistas son preciosas. El Glen se extiende hasta donde llega la vista y la cascada es espectacular.

Nos quedamos bastante rato haciendo fotos en este sitio increible. Ahora llueve un poco más fuerte pero aún así tenemos que hacernos una autofoto (allí no hay absolutamente nadie):

Regresamos muy a nuestro pesar, si tuvieramos más tiempo podríamos seguir avanzando por el Glen.
Y así acaba nuestro día en FortWilliam.
Este post está dedicado a los montañeros que este fin de semana perdieron la vida cerca de FortWilliam.
Publicado en Viajes | no comentarios |
