Solucionando el problema de Ruby y Rails en MacPorts

Ya antes había escrito en este mismo blog porqué MacPorts era la opción más conveniente disponible en OS X para instalar un entorno completo de desarrollo Ruby on Rails. Sin embargo, pronto descubriremos que los ports disponibles de los paquetes que usamos se actualizan frecuentemente mucho más rápido que nuestros propios proyectos. Esto es generalmente algo bueno, asegurándonos lo último y mejor del software de código abierto a sólo un comando o unos clicks de distancia.

Pero a veces, las versiones más recientes de paquetes importantes pueden "romper" la compatibilidad con el resto del stack de nuestra aplicación. Un triste caso es el conocido error de compatibilidad de Ruby 1.8.7, la versión actual de Ruby disponible en MacPorts, con versiones viejas de Rails (sobre todo las pre-2.0).

Con este problema me dí de bruces cuando al intentar actualizar el port de RubyGems para luego instalar la versión 2.2 de Rails con él, MacPorts también actualizó mi port de Ruby, una dependencia de RubyGems, inmediatamente dejando inusables a todas mis aplicaciones Rails 1.2.6 instaladas en mi MacBook.

¡RubyGems 1.1.0 disponible en MacPorts!

Este es sólo un post rápido para festejar la actualización del "port" de RubyGems en MacPorts a su última versión disponible (1.1.0). Esto hecho no es menor, pues como sabemos, Rails 2.0 tienen entre sus dependencias a RubyGems 1.0 como mínimo, lo que significa que la v0.9.x que vinimos usando hasta ahora no es compatible con esa actualización del framework.

Hasta este momento el "port" de rb-rubygems correspondía a su versión 0.9.4, pero desde ayer ese paquete se actualizó al ultimísimo RubyGems 1.1.0.

MacPorts ha sido mi gestor de paquetes libres de preferencia en el universo Mac desde mi primer día como switcher, y aunque siempre es posible instalar ese tipo de software desde sus fuentes también en OSX, mi larga experiencia en Linux me enseñó que un buen gestor de paquetes es la manera correcta para hacer ese tipo de trabajo si queremos tener un sistema coherente y actualizable en el tiempo.

Veamos entonces cómo nuestra paciencia redituó a la larga actualizando el port de RubyGems en nuestra instalación de MacPorts a su última versión.

Construyendo mi primera "Hackintosh"

En los meses siguientes a la compra de mi primer MacBook no me llevó mucho tiempo descubrir el enorme valor que le agregaba a ese hardware su exclusivo sistema operativo: Mac OS X 10.4 "Tiger". Sin duda uno como no había visto nunca antes: rápido, atractivo, intuitivo, productivo y, como no me cansaré de decirlo, con un verdadero BSD por dentro para hacer las delicias del linuxero más acérrimo. Efectivamente, OS X es la mitad de la magia de toda la "experiencia Mac", imitado incansablemente pero jamás igualado.

Pero por supuesto, si queremos tenerlo, tenemos que comprar una Mac, órdenes de magnitud más cara que cualquier configuración PC equiparable... ¿O no?

Usando MacPorts para instalar Ruby on Rails en Mac OS X

Luego del salto de fé a mi primera MacBook el paso lógico siguiente era recrear en ese precioso hardware el ambiente de desarrollo web de mi PC de desarrollo Linux. Particularmente me interesaba instalar el stack Ruby on Rails completo más todo el Software Libre adicional que había descubierto imprescindible para acompañarlo.

Para comenzar, y casi igual que como sucede en Linux, no hay una única forma de hacerlo en Mac OS X. En esta guía intentaré repasar mi exitosa experiencia haciéndolo con MacPorts y explicando el porqué de esa elección, de entre todas las posibles.

Veamos entonces qué tan fácil es tener un entorno de desarrollo web para Ruby on Rails que nada tendrá que envidiarle al que ya configuramos en Linux.

Tengo una confesión que hacer

Tengo una confesión que hacer. Mis convicciones sobre el Software Libre y el Open Source que tanto me han dado en lo personal y lo profesional siguen siendo tan fuertes como siempre, pero desde hace unos meses algo ha cambiado en mi vida de desarrollador web. Linux sigue siendo el sistema operativo en mi escritorio principal y en todos mis servidores, pero ya no es el único que uso para el trabajo y el placer.

 

RSS Blog