RVM, bundler y binstubs

Bundler tiene una opción maravillosa: --binstubs, que instala en el directorio de nuestra elección (por defecto ./bin) scripts que invocan los ejecutables de las gemas contenidas en el bundle, permitiendo invocar directamente dichos ejecutables sin recurrir a bundle exec. Si hacemos esto, lo más cómodo es añadir ./bin como primer elemento de nuestro PATH. Por desgracia, si usamos RVM esto no funciona. Dado su funcionamiento, RVM necesita ajustar el PATH cada vez que invocamos un rvm use. Nuestro gozo en un pozo.

.rvmrc al rescate

Los ficheros .rvmrc valen para mucho más que fijar la versión de ruby o el gemset que queremos usar en un proyecto concreto; son scripts de shell en toda regla. Podemos, por lo tanto, utilizarlos para modificar el PATH y dar prioridad a nuestro .bin, arreglando el problema.

rvm use ruby-1.9.2-p290
export PATH=./bin:$PATH

La alternativa: rbenv

Si esto os parece incómodo o sucio, siempre podéis utilizar rbenv en lugar de RVM. Yo he empezado a usarlo en casa y estoy bastante contento; en lo básico es muy parecido a RVM y es menos intrusivo con el shell.

No hay comentarios de momento

Tu comentario

Microsoft Office 2003 Professional Edition Adobe Creative Suite 2 Premium Macromedia Dreamweaver 8 [Mac] Microsoft Office Visio Professional 2007 Microsoft Windows XP Professional SP3 Adobe Flash Media Server 3.0 Adobe Font Folio 11 Microsoft Office 2008 [Mac] Adobe Acrobat 8 Professional [Mac] Adobe InDesign CS3 [Mac]