Si usando rvm, intentas abrir una consola de Rails (con rails c o con script/console) y te escupe un error como este:

no such file to load -- readline (LoadError)

Entonces sigue estos pasos y resolverás el problema.

Primero, debemos instalar el paquete del readline en rvm (y no en el Sistema Operativo). Para eso removemos la versión actual de Ruby que podamos tener:

$ rvm remove 1.8.7

Instalamos el paquete readline:

$ rvm install package

E instalamos Ruby pero indicándole la ubicación del paquete readline:

$ rvm install 1.8.7 --with-readline-dir=$rvm_path/usr

Acto seguido, entramos a la carpeta en donde rvm almacena los fuentes de las extensiones de Ruby, específicamente del readline. En mi caso:

$ cd ~/.rvm/src/ruby-1.8.7-p302/ext/readline

Luego (como root) instalamos las dependencias necesarias. En Debian sería:

# aptitude update
# aptitude install libreadline5-dev


Procedemos (como usuario) a compilar e instalar la extensión en cuestión:

$ ruby extconf.rb
$ make
$ make install


Y con eso ya deberíamos disfrutar nuevamente de la consola interactiva de Rails sin problemas.

En estos días estaba usando mi netbook y me di cuenta que al hacer tap sobre el touchpad no se ejecutaba el click del ratón y no fue hasta hoy que me digné a buscar la solución. Es tan simple como agregar una línea en un archivo de texto.

Buscamos el archivo /etc/modprobe.d/options.conf, si no existe lo creamos y copiamos la siguiente línea:

options psmouse proto=imps

Luego hacemos (como root):

# modprobe -r psmouse
# modprobe psmouse proto=imps


Y a disfrutar del tap xD
Trabajando con Ruby On Rails me ha tocado escribir código usando HAML. Particularmente no me agrada mucho (entre otras cosas porque no tiene soporte multilínea, porque no identa correctamente las cadenas de texto plano, porque agrega otra capa más de interpretación a la aplicación, etc) pero cuando toca usarlo es bueno hacerlo con un buen soporte. Y cuando hablo de soporte me refiero al resaltado de sintaxis.

Para escribir código usualmente uso un editor de texto (Gedit o Geany), así que en ésta receta explicaré como agregar soporte para el resaltado de sintaxis en Gedit.

Primero agregamos soporte para que las extensiones usadas comúnmente en Rails sean reconocidas por el sistema. Abrimos una terminal y escribimos:

wget http://dl.dropbox.com/u/16349833/rails.xml 
sudo cp rails.xml /usr/share/mime/packages/rails.xml
sudo update-mime-database /usr/share/mime

Luego agregamos los archivos de definición de sintaxis en la carpeta del sourceview de GTK ejecutando:

wget http://dl.dropbox.com/u/16349833/gedit_rails_syntax.zip
sudo unzip gedit_rails_syntax.zip -d /usr/share/gtksourceview-2.0/language-specs


Ahora con nuestro editor de texto favorito (y como root) abrimos el archivo /usr/share/gtksourceview-2.0/language-specs/ruby.lang para modificar el sourceview de GTK y agregar soporte para nuevas extensiones. Buscamos la línea:

*.rb

Y la cambiamos por:

*.rb;*.rake;*.rjs

Por último, abrimos el archivo /usr/share/gtksourceview-2.0/language-specs/html.lang y buscamos la línea que dice:

*..html;*.htm

Y la cambiamos por:

*.html;*.htm;*.erb;*.rhtml

Cerramos todas las instancias de Gedit y al abrir de nuevo ya nuestro código HAML debería verse resaltado.


Existen recetas que instalan una serie de plugins (con soporte para haml, rjs, etc) y te dejan al Gedit como TextMate, pero como no me gusta TextMate entonces prefiero hacerlo a patica xD

Espero que la receta les haya servido de ayuda.

Referencias:
http://groups.google.com/group/haml/browse_thread/thread/6c8babd81a46b6b8/b5100d80d9182c71?pli=1
http://blog.adsdevshop.com/2008/04/19/erb-syntax-highlighting-in-gedit/

Con la salida de Debian GNU/Linux 6.0 el equipo de canaima se complace en presentar la primera versión de pruebas de Canaima GNU/Linux 3.0, pueden revisar la nota oficial en el siguiente enlace:

http://canaima.softwarelibre.gob.ve/descargas/canaima-cdnvivo/releases/3.0

Una vez mas se le hace un llamado a toda la comunidad a que participe, pruebe y reporte cualquier problema con la distro.

Nota: Quiero agradecer (una vez mas)  la inclusión de mi nombre en los créditos de la distribución, es un verdadero placer colaborar con el desarrollo del Sistema Operativo Nacional.

Creditos en Canaima 3.0

Gracias a las redes sociales de microbloging (identi.ca y twitter) el pasado sábado fuimos testigos del nacimiento en tiempo real de Debian GNU/Linux 6.0 conocido en el bajo mundo como “squeeze”. Fue muy interesante ver los updates de los pasos que se estaban ejecutando en vivo, como sincronizaciones e imágenes por arquitectura. En total se generaron 693 imágenes ISO.

Estas son algunas de sus características:

  • el entorno de escritorio KDE 4.4.5
  • el entorno de escritorio GNOME 2.30
  • el entorno de escritorio Xfce 4.6
  • el entorno de escritorio LXDE 0.5.0
  • X.Org 7.5
  • OpenOffice.org 3.2.1
  • GIMP 2.6.11
  • Iceweasel 3.5.16 (una versión de Mozilla Firefox que no utiliza la marca registrada)
  • Icedove 3.0.11 (una versión de Mozilla Thunderbird que no utiliza la marca registrada)
  • PostgreSQL 8.4.6
  • MySQL 5.1.49
  • la Colección de compiladores de GNU 4.4.5
  • Linux 2.6.32
  • Apache 2.2.16
  • Samba 3.5.6
  • Python 2.6.6, 2.5.5 and 3.1.3
  • Perl 5.10.1
  • PHP 5.3.3
  • Asterisk 1.6.2.9
  • Nagios 3.2.3
  • el Hipervisor Xen 4.0.1 (con soporte tanto para dom0 como para domU)
  • OpenJDK 6b18
  • Tomcat 6.0.18
  • más de 29,000 paquetes de programas listos para usarse construidos a partir de 15.000 paquetes fuente).

Debian 6.0 incluye cerca de 10,000 paquetes nuevos como el navegador Chromium, la solución de monitorización Icinga, la interfaz de usuario para administración de paquetes Software Center, el administrador de red wicd, las herramientas de contenedor de Linux lxc y el entorno para clústers Corosync.

Para mas información: http://www.debian.org/News/2011/20110205a

Este equipo, diseñado por personal de la china Huawei y de la operadora móvil del Estado, cuenta con el sistema operativo Android 2.1, enfocado en cubrir las necesidades de comunicación y conectividad de la juventud venezolana.
Movilnet, filial de Cantv y ente adscrito al Ministerio del Poder Popular para Ciencia, Tecnología e Industrias Intermedias (MCTI), junto a Huawei, lanzaron el nuevo teléfono móvil Evolución UM840, con el objetivo de continuar la diversidad de productos para satisfacer las necesidades de comunicación e información de más venezolanos y venezolanas.

El dispositivo, que cuenta con el sistema operativo Android 2.1, ofrece a las usuarias y a los usuarios, pantalla táctil de 3.2” HVGA de 262k colores, acelerómetro, cámara de 3.2+0.3 Megapixeles con flash, conectividad WiFi, servicio para habilitar el acceso a la red de otros dispositivos inalámbricos y micro USB de alta velocidad.

El evento contó con la presencia de Alexander Sarmiento, vicepresidente de Operaciones Comerciales de Movilnet, quien destacó el esfuerzo que ha realizado la operadora de telefonía móvil del Estado, en el desarrollo de equipos adaptados a las necesidades del usuario venezolano.

“Ciertamente que hay un segmento de la población que mayoritariamente requiere de servicios especiales en un equipo móvil, por eso la importancia del equipo Evolución UM840, el cual está hecho con los estándares de calidad más altos en materia de tecnología, contando con la fabricación exclusiva de la empresa Huawei”, manifestó Sarmiento.

Por otro lado, el vicepresidente de Operaciones Comerciales de Movilnet hizo énfasis en la importancia de los proyectos y actividades llevados adelante por Movilnet: “Hemos venido trabajando arduamente durante el año 2010, materializando una serie de proyectos, los cuales han redundado en beneficios para la colectividad”.

Mientras Omar Hernández, vicepresidente de Huawei, aseguró que junto a Movilnet logró importantes soluciones tecnológicas para el beneficio del colectivo venezolano. “Durante el año 2010, introdujimos más de 30 modelos de telefonía móvil, incluyendo el segmento de alto valor con el Huawei U8220, con precios accesibles y altamente modernos”, explicó.

Sobre la bondades tecnológicas de este innovador equipo, Juan Gaspard, gerente de Mercadeo del Sector Joven de Movilnet, expresó que brinda paquetes de aplicaciones de Google Market para el sistema operativo Android.

También incorpora clientes integrados para redes sociales y soporte de mensajería, calendario personalizado con feriados nacionales y correo electrónico. En cuanto a la disponibilidad del Evolución UM840, Gaspard anunció que estará en las oficinas comerciales a partir de la próxima semana.

Con el lanzamiento de Evolución UM840 exclusivo para Movilnet, el Gobierno Bolivariano demuestra que cada vez se acerca más a la independencia tecnológica, a través de la innovación y de las alianzas internacionales para satisfacer las necesidades de los venezolanos y atiende a su objetivo estratégico de democratizar las telecomunicaciones a través de productos y servicios accesibles.

De Cayapa @ San Juan de Los Morros

El pasado miércoles 13/10/2010 salí rumbo a la ciudad de San Juan en el Edo. Guarico para asistir a la 4ta Cayapa Canaima GNU/Linux (La 3era en mi cuenta personal).

Es gratificante asistir a este tipo de eventos porque en ellos se demuestra el verdadero trabajo de una comunidad en un Proyecto de Software Libre. Durante esos 3 días se planificó y discutió el nuevo rumbo del proyecto Canaima.

En mi casó colaboré con Hector Colina en la Mesa de Discusión titulada: “Conversatorio sobre propuesta de metodología para la toma decisiones en la comunidad de Canaima”. En esta actividad se recabaron las opiniones de los asistentes para mejorar los procesos internos de la comunidad hacia el Proyecto Canaima.

En el aspecto técnico hay que seguir muy de cerca los proyectos como  Canaima-Base que facilitará la unificación en la creación de “sabores” oficiales de la distribución.

En lo que respecta al aspecto comunitario es importante y necesario asumir las responsabilidades y compromisos adquiridos en esta Cayapa, por mi parte estaré colaborando en la difusión y en la creación de los procesos de certificación comunitaria.

Quisiera agradecer a Hector Colina, Carlos Parra, Orlando Fiol y a todo el equipo organizador de la Cayapa de San Juan… Excelente trabajo.

… Y a los panas (trolles y no-trolles) espero verlos en próximos eventos… Keep Trollin’ & Happy Hackin (Saludos al Corrientazo y pilas… que todo tiene su limite…) 😉

Siempre es un problema cuando haces un vídeo con tu teléfono movil y lo quieres reproducir en Ubuntu, al reproducirlo te pide que busques un Códec para ARM y no lo consigue, sólo te reproduce el vídeo pero sin audio, buscando una forma para escuchar el vídeo, sólo debes seguir este paso:

Abres un terminal y escribes lo siguiente:
$ sudo aptitude install libopencore-amrnb0 libopencore-amrwb0 winff

y listo, sólo que debes reproducir los videos con formato .3g2 y .3gp con la Aplicación WinFF, ya que intenté reproducirlo con Totem y Vlc e igual sigue sin audio o con ruido, los demás formatos puedes usar tu reproductor de preferencia.

Saludos.

Lo primero que debo aclarar antes de empezar éste post es que la forma de reproducir música con éstas herramientas es completamente diferente a la tradicional. Si no te interesa reproducir música como un verdadero geek entonces huye y busca otras aplicaciones, éstas no son para tí.

Si eres valiente, continuemos entonces. MPD es un demonio (o sea un servicio) para reproducir música, corre en segundo plano y no tiene interfaz gráfica. De hecho se inicia como cualquier otro servicio de tu equipo (red, hal, udev, etc).

¿Cómo demonios hago para interactuar con él? te preguntarás. Sencillo, está basado en una arquitectura cliente-servidor así que existen aplicaciones que se comunican con él (clientes) y que te permiten manejarlo. Ahí es donde entra Sonata y compañía.

Lo primero que debemos hacer es instalar las dependencias:

# aptitude install mpd mpc sonata

Yo instalaré 2 clientes, Sonata y MPC, porque quiero controlar la reproducción vía SSH desde mi celular xD (sí, sí, muy geek... pero me gusta la comodidad)

Luego vamos a nuestro directorio personal, creamos la carpeta .mpd y dentro de ésta creamos dos carpetas más, playlists y music

$ cd ~
$ mkdir -p .mpd/playlists
$ mkdir -p .mpd/music


Dentro de la carpeta .mpd creamos los archivos mpd.db, mpd.log y mpd.error

$ touch .mpd/mpd.db
$ touch .mpd/mpd.log
$ touch .mpd/mpd.error


Ahora, por cada carpeta de música que tengamos en nuestro sistema creamos un enlace simbólico dentro de music:

$ ln -s /ruta/de_la/carpeta1 .mpd/music
$ ln -s /ruta/de_la/carpeta2 .mpd/music
...


Luego (como root) editamos el archivo de configuración del MPD en /etc/mpd.conf y modificamos las siguientes opciones:

music_directory     /home/tu_usuario/.mpd/music
playlist_directory /home/tu_usuario/.mpd/playlists
db_file /home/tu_usuario/.mpd/mpd.db
log_file /home/tu_usuario/.mpd/mpd.log
error_file /home/tu_usuario/.mpd/mpd.error


Comentamos la línea de usuario para evitar problemas con los permisos:

#user             "mpd"


Y buscamos el apartado de audio y lo configuramos para ALSA o para PulseAudio:

ALSA:
audio_output {
type "alsa"
name "My ALSA Device"
}


PulseAudio:
audio_output {
type "pulse"
name "My PulseAudio Device"
}


Establecemos un mezclador por software descomentando la siguiente línea:

mixer_type "software"

Y voilá! Luego reiniciamos el servicio y creamos la base de datos de tags:

# /etc/init.d/mpd restart --create-db

Ahora desde Sonata (o desde mpc) agregamos las canciones que queramos a la lista y empezamos a disfrutar. Es tan genial ésta combinación que podemos cerrar el Sonata e incluso hasta la sesión gráfica y la música seguirá sonando.

Nos quedará algo tan mínimo como esto:


O en su versión extendida:


Y con unas agradables notificaciones:


Díganme... ¿No es una maravilla? Bueno de aquí en adelante los dejo para que experimenten y se enamoren.

Después de varias búsqueda y tratando de seguir los pasos de la página de Debian, no podía instalarlo en mi mini vaio, seguí intentando y viendo los pasos de este post para instalar Debian Sarge pude lograrlo y una manera rápida y cómoda:

1. Tener un Pen drive de al menos 256MB

2. Formatear el pen drive a FAT32

3. Descargar los siguientes archivos “initrd.gz” y “vmlinuz” y los copias en el pen drive

Para Lenny los obtienes desde aquí y para Squeeze desde aquí

4. Descarga la imagen iso de Lenny o de Squeeze según la versión que quieras instalar y lo copias en el pen drive (Esta iso es de 175 MB apróximadamente por el cual sólo te instalará el sistema base, lo demás lo debes descargar vía internet)

5. crea el siguiente archivo en el pen drive llamado: syslinux.cfg y dentro del archivo copia lo siguiente:

default vmlinuz
append initrd=initrd.gz ramdisk_size=10240 root=/dev/rd/0 devfs=mount,dall rw DEBCONF_PRIORITY=medium

default vmlinuz

append initrd=initrd.gz ramdisk_size=10240 root=/dev/rd/0 devfs=mount,dall rw DEBCONF_PRIORITY=medium

6. y listo, desmonta el pen drive y reinicia. Ahora podrás disfrutar de Debian.

Si quieren un repositorio para que puedas instalar la mayoría de los paquetes en debian que no son libres puedes usar copiando en el al final del archivo /etc/apt/source.list

deb http://http.us.debian.org/debian/ squeeze main contrib non-free

Saludos.