Blog de hermes.ojeda

03 Feb

Generando un dvd desde línea de comandos

Published by hermes.ojeda

Supongamos que acabamos de descargar un video y lo necesitamos meter en un DVD que podamos leerlo con nuestro reproductor casero. Para eso hay herramientas como Devede.

Desafortunadamente este no se encuentra en la distribución que uso actualmente (Chakra) y por cuestión de tiempo no me daré a la tarea de ver cómo compilarlo en mi distribución, entonces hay que hacerlo en comandos

30 Jan

Rails: Usar los helpers de aplicación dentro de los mailers

Published by hermes.ojeda

Algunas veces, mientras construimos nuestra aplicación Rails, utilizamos una serie de helpers para ayudarnos en la vista, desgraciadamente estos no se encuentran disponibles en nuestros mailers.

Una forma de lograrlo es lo siguiente:


class MiMailer helper :application
end

¡Listo!, así de simple, con ese pequeño cambio en nuestro mailer ya podremos usar nuestros helpers de aplicación.

¡Happy Rails Hacking!

12 Jan

Instalando Cucumber en Rails 3

Published by hermes.ojeda

Cucumber es una gran herramienta para hacer BDD (Behavior Driven Development - Desarrollo Orientado a Comportamiento). Y si lo combinamos con el framework Rails, podemos tener un entorno de desarrollo ágil muy interesante.

Para poder instalar Cucumber sólo hay que seguir estos pasos:

Agregamos a nuestro Gemfile lo siguiente:

06 Jan

Usando MongoDB en Rails con Mongo Mapper [Actualizado]

Published by hermes.ojeda

Las bases de datos SQL para ciertas aplicaciones pueden resultar un cuello de botella. Para solventar estos problemas han surgido las bases de datos NoSQL. Una base de datos de ese tipo es MongoDB.

Utilizar MongoDB en Rails con Mongo Mapper brinda ventajas parecidas al Active Record.

Paso 1:

Si es una aplicación nueva la forma de empezar es quitar el Active Record para sólo usar Mongo Mapper.

29 Dec

Usando QEMU con KVM en Chakra

Published by hermes.ojeda

En el post anterior, se instaló KVM en Chakra. Una vez finalizada la guía anterior continuaremos viendo cómo usar Qemu para virtualizar.

Primero creamos la imagen a utilizar, esto es, el disco duro virtual para la máquina a virtualizar. En el siguiente ejemplo crearemos una image llamada "debian.img" de tipo qcow2 y de tamaño de 2G.


qemu-img create -f qcow2 debian.img 2G

23 Dec

Usando KVM en Chakra

Published by hermes.ojeda

En cualquier distribución GNU/Linux existen múltiples maneras de usar virtualización pero la que prefiero es el uso de KVM.

Para poder usar KVM en Chakra primero necesitamos determinar qué extensiones de virtualización tenemos con el siguiente comando:


grep -E "(vmx|svm)" --color=always /proc/cpuinfo

16 Dec

Cambiar zona horaria de un servidor Debian (sin reiniciar)

Published by hermes.ojeda

Muchas veces, cuando tenemos un servidor no podemos darnos el lujo de reiniciarlo cada vez que hacemos un cambio. Una forma fácil para cambiar la zona horaria en Debian sería la siguiente:

# dpkg-reconfigure tzdata

Aparecerá un menú que nos permitirá hacer los cambios deseados.

Nota:En caso de tener servicios que tengan alguna relación con estampado de tiempo será necesario reiniciarlos.

15 Dec

Activar modo de recuperación (Recovery Mode) de Ubuntu

Published by hermes.ojeda

A finales del mes de Noviembre se realizaron una serie de actividades para brindar soporte a los laboratorios de la fundación Kids on Computers. Entre estas actividades se realizó la restauración de las contraseñas de algunas computadoras, para lo cuál se hizo lo siguiente:

08 Dec

Limpiar liberaciones anteriores de Capistrano

Published by hermes.ojeda

Cuando se realizan liberaciones de proyectos con Capistrano, normalmente quedan muchas versiones anteriores guardadas. Es conveniente para evitar que sigan ocupando espacio, limpiarlas con relativa frecuencia. Afortunadamente Capistrano hace que esto sea una tarea muy sencilla.

Podemos hacerlo de 2 formas, la primera es agregar la siguiente línea al archivo deploy.rb, el número 1 significa que sólo dejará la versión anterior, el default es 5, pero muchas veces no se necesita un número tan alto:

01 Dec

Acceder a servicios SOAP con Ruby

Published by hermes.ojeda

Una herramienta útil cuando accedemos queremos usar SOAP con Ruby es Savon.

Para instalarlo únicamente necesitamos hacer lo siguiente:

gem install savon

En nuestro código podemos utilizarlo de la siguiente forma:

require 'rubygems'
require 'savon'

24 Nov

Herramientas para despliegue de aplicaciones Rails en producción

Published by hermes.ojeda

A diferencia de la velocidad de desarrollo en Ruby on Rails, la puesta a punto del despliegue en producción es un poco más complicada, pero realizándolo con las herramientas adecuadas todo el tiempo invertido vale la pena para ahorrarse tiempo en futuros despliegues y en tiempo requerido para hacerlos.

Las herramientas que utilizamos para realizar un despliegue en producción son las siguientes:

11 Oct

Cambiar el nombre del host en OpenBSD sin reiniciar

Published by hermes.ojeda

Si nuestro host con OpenBSD tiene otro nombre que no corresponde a nuestro dominio, o como nosotros deseamos manejarlo dentro de la red. Se puede cambiar de manera sencilla.

Primero cambiamos el archivo /etc/myname.


# vi /etc/myname

También cambiamos el archivo /etc/hosts.


# vi /etc/hosts

Una vez modificados los datos necesarios, sólo tenemos que reiniciar el servicio de red.

11 Oct

Instalando MySQL en OpenBSD

Published by hermes.ojeda

La siguiente guía explica cómo instalar MySQL en OpenBSD, específicamente en esta guía se utilizó MySQL 5.1 y OpenBSD 4.9.

Para empezar tenemos que configurar el sistema de ports, asignando la ruta de los ports, y posteriormente instalamos con pkg_add.

10 Oct

urxvt como terminal para conectarse por SSH a OpenBSD

Published by hermes.ojeda

Un problema que se tiene con OpenBSD al conectarse por SSH es que no siempre reconoce la consola a través de la cuál se está conectando, y surgen problemas como el siguiente:


# vi
vi: rxvt-unicode: unknown terminal type

10 Oct

Mostrar los puertos abiertos en OpenBSD

Published by hermes.ojeda

Una tarea básica al administrar cualquier sistema *nix es la revisión de los puertos que han sido abiertos por los diferentes servicios que tenemos en el sistema.

En el caso de OpenBSD la forma de hacer esto es la siguiente:

Páginas