javoaxian cambió a: javoaxian.me
Este blog se mantendrá como histórico del nuevo javoaxian.me. Por tal motivo, sólo serán creados post que harán referencia a los del nuevo blog. Si hay dudas y comentarios, favor de hacerlos en javoaxian.me.

lunes, 31 de marzo de 2008

Abrir archivos en Gnome/Nautilus con un clic en lugar de dos

Éste es un tip para todos los que desean abrir un archivo dando un sólo clic en lugar de dos sobre el archivo que se desea abrir.

Para poder realizar ésto, deberemos tener instalado el programa gconf-editor.

Para instalarlo en Debian o Ubuntu, deberán realizar lo siguiente:

Abrir una terminal y convertirse en root.

javoaxian@darthmaul:~$ su -

Instalar el programa:

root@darthmaul:~# apt-get install gconf-editor

Una vez instalado, podemos ir al panel principal de Gnome a las opciones: Aplicaciones -> Herramientas del sistema -> Editar de configuración.

Si no se encuentra la opción, abriremos una consola con nuestra cuenta de usuario y ejecutamos el comando gconf-editor:

javoaxian@darthmaul:~$ gconf-editor

Se abrirá una pantalla similar a la siguiente:


Ahora iremos a: app -> nautilus -> preferences y nos aparecerá algo similar a ésto:


En la opción click_policy cambiaremos el valor de double por single, ésto se hace presionando sobre el valor double.


Ahora cerramos la ventana y ya podremos abrir los archivos o carpetas del escritorio o del navegador de archivos, con un sólo clic. El cursor del ratón cambiará a una mano que apunta al ícono del archivo semejante a la mano que aparece cuando ponemos el cursor encima de una liga en nuestro navegador web.

domingo, 30 de marzo de 2008

Cambiar el encoding o charset de Debian de UTF-8 a ISO-8859-1

Hace unos días puse un artículo semejante a éste pero referente a Ubuntu, ahora con el cambio de distribución, explicaré como hacerlo con Debian.

Para usar el comando sudo en Debian, deberán ver este artículo donde menciono como configurarlo para que funcione como en Ubuntu.
En esta distribución es mucho más fácil de hacer. Deberemos ejecutar el siguiente comando:

$ sudo dpkg-reconfigure locales

Aparecerá una lista de los charset manejados (en algunos casos aparece una ventana antes, donde deberemos presionar "Aceptar"), deberemos buscar y marcar la opción es_MX ISO-8859-1. Para marcar la opción, deberán situarse encima de ella y presionar la barra espaciadora (tecla de espaciado). Y posteriormente presionaremos "Enter".


Se presentará una pantalla similar a la siguiente, donde deberemos situarnos en la opción es_MX y presionar "Enter" sobre ella para que sea el charset por default.


Se iniciará la creación del encoding es_MX.iso-8859-1. Recomiendo reiniciar la máquina para que surge completamente el cambio.

Instalar DBDesigner 4 en Debian y Ubuntu

DBDesigner es un software que nos permite conectarnos a una base de datos y poder crear nuestros diagramas entidad relación.

Esta guía es para las personas que desean usar esta herramienta para crear diagramas entidad relación dentro de Debian lenny o en Ubuntu.

No creo que tenga problemas en que pueda instalarse en cualquier versión de Debian, quizas lo que se deberá de cambiar es el paquete libstdc++ a la versión que se encuentre vigente en la distribución que estemos usando.

En el caso de Ubuntu, existen ya muchos sitios que explican como realizar la instalación. Dejo estos dos enlaces en los que me basé para instalar DBDesigner en Ubuntu. Enlace 1, Enlace 2. O si lo desean, pueden continuar leyendo este artículo, ya que también funciona para Ubuntu.

Para comenzar la instalación en Debian, nos convertiremos en root para realizar la instalación.

$ su -

Instalaremos la versión de libstdc++ habilitada en nuestro Debian. En mi caso instalé estos 3 paquetes:

$ apt-get install libstdc++5 libstdc++6 libstdc++6-4.2-dev

Instalados estos paquetes, iniciaré la instalación de la biblioteca de kylix .En mi caso, voy a hacer la instalación de DBDesigner en el directorio /opt.

Descargaremos el archivo kylixlibs3-borqt-3.0-2.tar.gz desde aquí.
Moveremos el archivo al directorio /opt.

$ mv /ruta/donde/se/descargo/kylixlibs3-borqt-3.0-2.tar.gz /opt

En mi caso es en mi HOME:

$ mv /home/javoaxian/kylixlibs3-borqt-3.0-2.tar.gz /opt

Instalaremos la bibliotea:

$ cd /opt
$ tar -xzvf kylixlibs3-borqt-3.0-2.tar.gz
$ rm kylixlibs3-borqt-3.0-2.tar.gz
$ chown -R root.root kylixlibs3-borqt
$ cd kylixlibs3-borqt
$ ./install.sh
$ cp -d /usr/lib/kylix3/* /usr/lib/

Ahora descargaremos el archivo DBDesigner4.0.5.4.tar.gz de aquí.
Moveremos el archivo al directorio /opt.

$ mv /ruta/donde/se/descargo/ DBDesigner4.0.5.4.tar.gz /opt

En mi caso es en mi HOME:

$ mv /home/javoaxian/ DBDesigner4.0.5.4.tar.gz /opt

Instalaremos DBDesigner:

$ cd /opt
$ tar -xzvf DBDesigner4.0.5.4.tar.gz
$ rm DBDesigner4.0.5.4.tar.gz
$ chown -R root.root DBDesigner4/
$ cd DBDesigner4/
$ ./startdbd

Listo, ahora podremos usar DBDesigner con nuestra cuenta de usuario, ejecutando el siguiente comando:

$ /opt/DBDesigner4/DBDesigner4 &

sábado, 29 de marzo de 2008

Configurar Compiz Fusion en Debian lenny sobre laptop Sony Vaio SZ240F con tarjeta Intel

Ahora con la migración de mi máquina a Debian, procederé a explicar como configuré Compiz Fusion en mi laptop con la tarjeta intel. Cabe mencionar que no usé los paquetes oficiales, sino la versión inestable de Compiz Fusion.

Por default, cuando instalé Debian, no tuve que instalar ningún software extra para mi tarjeta intel 945GM, por si acaso, necesitarán estos archivos: xserver-xorg-video-intel, libgl1-mesa-dri, libgl1-mesa-glx, libglu1-mesa y mesa-utils.

En una consola deberemos abrir una sesión de usuario root, por ejemplo:

$ su -

Una vez que iniciamos la sesión de usuario root, instalaremos los paquetes antes mencionados:

$ apt-get install xserver-xorg-video-intel libgl1-mesa-dri libgl1-mesa-glx libglu1-mesa mesa-utils

Se pedirá la confirmación para instalar los paquetes, donde deberemos aceptar presionando "S" y "Enter".

Una vez instalados estos paquetes deberemos verificar que tengamos la aceleración gráfica.

$ glxinfo |grep render

Nos deberá aparecer la siguiente opción con yes.

direct rendering: Yes

Si no aparece correctamente esta opción, prueben reiniciando la máquina y vuelvan a verificar que se activó la aceleración gráfica.

Ahora procederemos a configurar el archivo /etc/X11/xorg.conf. Recomiendo hacer una copia de seguridad de éste antes de modificarlo.

Editamos el archivo xorg.conf, en este caso usaré gedit.

$ gedit /etc/X11/xorg.conf

En la sección "Module" agregaremos las siguientes líneas en caso de que no existan.
Deberán ajustar los espacios de tabulaciones de acuerdo a su archivo.
Load         "dri"
Load "glx"
Load "dbe"

En la sección "Device" agregar:
Option      "XAANoOffscreenPixmaps" "true"
Option "DRI" "true"

En la sección "ServerLayout" agregar:
Option      "AIGLX" "true"

En la sección "DRI" verificar que exista algo así:
Group      "video"
Mode 0660

Y en la sección "Extensions" agregar:
Option "Composite" "Enable"

Si no existe, deberá crearse al final del archivo y colocandolo de la siguiente manera:
Section "Extensions"
Option "Composite" "Enable"
EndSection

Ahora guardaremos y cerraremos el archivo.

Pongo aquí la configuración que por el momento tengo de mi archivo.
# /etc/X11/xorg.conf (xorg X Window System server configuration file)
#
# This file was generated by dexconf, the Debian X Configuration tool, using
# values from the debconf database.
#
# Edit this file with caution, and see the /etc/X11/xorg.conf manual page.
# (Type "man /etc/X11/xorg.conf" at the shell prompt.)
#
# This file is automatically updated on xserver-xorg package upgrades *only*
# if it has not been modified since the last upgrade of the xserver-xorg
# package.
#
# If you have edited this file but would like it to be automatically updated
# again, run the following command:
# sudo dpkg-reconfigure -phigh xserver-xorg

Section "Files"
FontPath "/usr/share/fonts/X11/misc"
FontPath "/usr/X11R6/lib/X11/fonts/misc"
FontPath "/usr/share/fonts/X11/cyrillic"
FontPath "/usr/X11R6/lib/X11/fonts/cyrillic"
FontPath "/usr/share/fonts/X11/100dpi/:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/100dpi/:unscaled"
FontPath "/usr/share/fonts/X11/75dpi/:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/75dpi/:unscaled"
FontPath "/usr/share/fonts/X11/Type1"
FontPath "/usr/X11R6/lib/X11/fonts/Type1"
FontPath "/usr/share/fonts/X11/100dpi"
FontPath "/usr/X11R6/lib/X11/fonts/100dpi"
FontPath "/usr/share/fonts/X11/75dpi"
FontPath "/usr/X11R6/lib/X11/fonts/75dpi"
# path to defoma fonts
FontPath "/var/lib/defoma/x-ttcidfont-conf.d/dirs/TrueType"
EndSection

Section "Module"
Load "i2c"
Load "bitmap"
Load "ddc"
Load "dri"
Load "extmod"
Load "freetype"
Load "glx"
Load "int10"
Load "vbe"
Load "dbe"
EndSection

Section "InputDevice"
Identifier "Generic Keyboard"
Driver "kbd"
Option "CoreKeyboard"
Option "XkbRules" "xorg"
Option "XkbModel" "pc105"
Option "XkbLayout" "es"
EndSection

Section "InputDevice"
Identifier "Configured Mouse"
Driver "mouse"
Option "CorePointer"
Option "Device" "/dev/input/mice"
Option "Protocol" "ImPS/2"
Option "Emulate3Buttons" "true"
EndSection

Section "InputDevice"
Identifier "Synaptics Touchpad"
Driver "synaptics"
Option "SendCoreEvents" "true"
Option "Device" "/dev/psaux"
Option "Protocol" "auto-dev"
Option "HorizScrollDelta" "1"
Option "VertScrollDelta" "1"
EndSection

Section "Device"
Identifier "Intel Corporation Mobile 945GM/GMS/940GML Express Integrated Graphics Controller"
Driver "i810"
BusID "PCI:0:2:0"
Option "XAANoOffscreenPixmaps" "true"
Option "DRI" "true"
EndSection

Section "Monitor"
Identifier "Monitor genérico"
Option "DPMS"
EndSection

Section "Screen"
Identifier "Default Screen"
Device "Intel Corporation Mobile 945GM/GMS/940GML Express Integrated Graphics Controller"
Monitor "Monitor genérico"
DefaultDepth 24
SubSection "Display"
Depth 1
Modes "1280x800"
EndSubSection
SubSection "Display"
Depth 4
Modes "1280x800"
EndSubSection
SubSection "Display"
Depth 8
Modes "1280x800"
EndSubSection
SubSection "Display"
Depth 15
Modes "1280x800"
EndSubSection
SubSection "Display"
Depth 16
Modes "1280x800"
EndSubSection
SubSection "Display"
Depth 24
Modes "1280x800"
EndSubSection
EndSection

Section "ServerLayout"
Identifier "Default Layout"
Screen "Default Screen"
InputDevice "Generic Keyboard"
InputDevice "Configured Mouse"
InputDevice "Synaptics Touchpad"
EndSection

Section "DRI"
Group "video"
Mode 0666
EndSection

Section "Extensions"
Option "Composite" "Enable"
EndSection

Hecho ésto, agregaremos al archivo /etc/apt/sources.list el repositorio donde descargaremos Compiz Fusion.

$ gedit /etc/apt/sources.list

y agregamos la línea:

deb http://download.tuxfamily.org/shames/debian-lenny/desktopfx/unstable/ ./

Guardaremos el archivo y saldremos de él.

Ahora agregaremos la GPG Key y actualizaremos el catálogo de paquetes.

$ wget http://download.tuxfamily.org/shames/A42A6CF5.gpg -O- | apt-key add -
$ apt-get update

Con ésto estamos listos para instalar compiz. Para hacerlo, vamos a ejecutar lo siguiente:

Para Gnome:
$ apt-get install compiz-fusion-gnome fusion-icon

Para Kde:
$ apt-get install compiz-fusion-kde fusion-icon

y si quieres instalar todos los paquetes de compiz y para los dos ambientes gráficos anteriores:
$ apt-get install compiz-fusion-all fusion-icon

Se pedirá la confirmación para instalar los paquetes, donde deberemos aceptar presionando "S" y "Enter".

Con esto quederán instalados los paquetes necesarios para correr Compiz Fusion.
Ahora deberán reiniciar el ambiente gráfico cerrando su sesión de usuario o si gustan puede presionar Ctrl+Alt+2 veces Backspace (ya que en ocasiones es necesario). Otra alternativa es ejecutando:

$ /etc/init.d/gdm restart

Una vez que reiniciaron su ambiente gráfico, podrán ejecutar algunos de los siguientes comandos: compiz-manager o fusion-icon.

Para no ejecutar alguno de estos dos comandos cada vez que abro una sesión de mi usuario, agregué el comando de la siguiente manera:

Deberán ir en el panel principal de Gnome a: Sistema -> Preferencias -> Sesiones.

Se abrirá una ventana y en la pestaña "Programas al inicio" presionamos el botón "Añadir".

Se abrirá otra ventana donde ingresaremos en "Nombre": Fusion Icon y en "Comando": fusion-icon, si gustan puede agregar un comentario y presionarán "Aceptar".

En la lista de "Programas al inicio" deberá aparecer Fusion Icon y presionaremos "Cerrar".

Con esto termino la explicación de como configuré mi máquina con Compiz Fusion en Debian Lenny y tarjeta gráfica Intel 945GM.

Aquí dejo dos referencias en las que me basé:
Espero que les sea de utilidad esta entrada.

viernes, 28 de marzo de 2008

Software multimedia en Debian

Para todos aquellos que desean reproducir videos o audios con formato restringido y usar software enfocado para video y audio en Debian. Existe un repositorio para hacer uso de todo ésto. Por ejemplo, podemos bajar los codec's win32codec, mandvd, devede, dvdrip, lame, liblame0, mythtv, entre muchos otros.

Lo primero que deberemos hacer, es agregar la dirección del repositorio a nuestro archivo /etc/apt/sources.list, dependiendo de nuestra versión de Debian, deberemos agregar la ruta correcta.

Por ejemplo, si estás usuando Debian etch o la versión (stable) deberás agregar alguna de las dos siguientes líneas:

deb http://www.debian-multimedia.org etch main
o
deb http://www.debian-multimedia.org stable main

Para Debian lenny o (testing):

deb http://www.debian-multimedia.org lenny main
o
deb http://www.debian-multimedia.org testing main

Para Debian sid o (unstable):

deb http://www.debian-multimedia.org sid main

Para Debian experimental:

deb http://www.debian-multimedia.org experimental main

Y si quieres los fuentes de ésta última:

deb-src http://www.debian-multimedia.org sid main

Puedes editar el archivo con el editor que te agrade. Recuerda que deberá ser como usuario root para realizar todas las operaciones siguiente. Por ejemplo:

La siguiente línea es para convertirnos en root.

$ su -

Después ejecutamos:

$ gedit /etc/apt/source.list

Guardaremos los cambios y saldremos del archivo.

Ahora descargaremos este archivo y lo instalaremos.

$ dpkg -i /ruta/donde/se/descargo/el/archivo/debian-multimedia-keyring_2007.02.14_all.deb

Ejecutamos el siguiente comando:

$ apt-get update

Listo, ahora ya podremos instalar el software multimedia que se encuentra en este repositorio.

GNU/Linux en mi Laptop Sony Vaio SZ240F

Este post es únicamente para hacer mención que he podido instalar las distribuciones Debian Lenny y Ubuntu 6.06 y 7.10 en la laptop Sony Vaio VGN-SZ240F y seguramente funcionarán bien en todas las laptop's de la serie SZ.

Prácticamente casi todo el hardware está configurado y lo que no, no ha sido mucho problema configurarlo, claro con algunas excepciones.

Características del equipo:

  • Procesador: Intel Core Duo T2400 (1.83GHz). Detectados los 2 núcleos y probados (el kernel debe tener la opción SMP para detectar el doble núcleo).
  • LCD: Pantalla TFT de 13.3" (1280x800) con tecnología XBRITE. Detectada y probada.
  • Tarjetas de Video: NVIDIA GeForce Go7400 128MB (externa) e Intel 950GMA de 128MB. Detectadas y probadas.
  • Memoria RAM: 1GB expandible a 2GB. Detectada y probadas.
  • Disco Duro: 100GB SATA. Detectado y probado.
  • Lector Óptico: DVD+-RW. Detectado y probado.
  • Ranura para Memory Stick: Compatibilidad para Memory Stick Duo y Pro Duo. No la he podido hacer funcionar.
  • Módem: Módem V.92/V.90. No detectado pero FUNCIONA CON LOS DRIVER's HSF de www.linuxant.com. Probado.
  • Ethernet: Ethernet 10BASE-T/100BASE-TX. Detectada y probada.
  • Micrófono integrado: Detectado y probado.
  • Cámara integrada: No detectada pero FUNCIONA COMO EXPLICO AQUí. Probada.
  • Fingerprint reader: Lector biométrico de huellas dactilares G-Sensor. No lo he podido hacer funcionar pero dejo este enlace.
  • Ranura ExpressCard: Detectada y probada.
  • Ranura PCMCIA: Detectada y probada.
  • Altavoces: Detectados y probados.
  • Salida de audífonos: Detectada y probada.
  • i.LINK (IEEE 1393): Detectada pero no probada.
  • Puertos USB (2): Detectados y probados.
  • Red Inalámbrica: Intel PRO Wireless 3945ABG. Detectada en Ubuntu, checa aquí para Debian. Probada.
  • Salida VGA: No probada pero hasta donde sé funciona bien con la tarjeta Intel y creo que hay que hacer unos ajustes para la NVIDIA.
  • Mouse Touchpad: Detectado y probado.
Si tienen alguna duda de como configurar algo en éste equipo, no duden en preguntar.

Configurar tarjeta wireless en laptop Sony Vaio serie SZ en Debian

Actualización 2008-05-01:
Este artículo funciona para el kernel linux-image-2.6.22-3-686 ya que después de que realicé este artículo se hizo una actualización del kernel a la versión linux-image-2.6.24-1-686 pero éste no cuenta con el módulo ipw3945. Por lo tanto les recomiendo que instalen la versión linux-image-2.6.22-3-686 así como sus headers linux-headers-2.6.22-3-686 y una vez de instalar estos paquetes deberán reiniciar su máquina y arrancar con el kernel que acaban de instalar


Como una de las primeras tareas que realizé después de instalarle Debian lenny a mi máquina, fue configurar los driver's para la tarjeta inalámbrica.

Esta serie de laptop's cuenta regularmente con la tarjeta Intel Corporation PRO/Wireless 3945ABG Network Connection, por lo tanto deberemos instalar el módulo del kernel ipw3945, pero éste no se encuentra en los repositorios por default, ya que no es software libre. Para lo cual, deberemos agregar a nuestro archivo /etc/apt/sources.list que busque en los paquetes non-free.

Aquí pongo un ejemplo de como estaba mi archivo antes de agregarle la opción non-free:
# deb cdrom:[Debian GNU/Linux 4.0 r3 _Etch_ - Official i386 NETINST Binary-1 20080218-14:15]/ etch contrib main

deb cdrom:[Debian GNU/Linux 4.0 r3 _Etch_ - Official i386 NETINST Binary-1 20080218-14:15]/ etch contrib main

#deb http://ftp.mx.debian.org/debian/ etch main
#deb-src http://ftp.mx.debian.org/debian/ etch main

#deb http://security.debian.org/ etch/updates main contrib
#deb-src http://security.debian.org/ etch/updates main contrib

# Actualizacion a lenny
deb http://mmc.igeofcu.unam.mx/debian/ lenny main
deb-src http://mmc.igeofcu.unam.mx/debian/ lenny main

deb http://ftp.mx.debian.org/debian/ lenny main
deb-src http://ftp.mx.debian.org/debian/ lenny main

deb http://security.debian.org/ lenny/updates main
deb-src http://security.debian.org/ lenny/updates main

Y ahora mi archivo con las opciones non-free (aproveché para poner la opción contrib):

# deb cdrom:[Debian GNU/Linux 4.0 r3 _Etch_ - Official i386 NETINST Binary-1 20080218-14:15]/ etch contrib main

deb cdrom:[Debian GNU/Linux 4.0 r3 _Etch_ - Official i386 NETINST Binary-1 20080218-14:15]/ etch contrib main

#deb http://ftp.mx.debian.org/debian/ etch main
#deb-src http://ftp.mx.debian.org/debian/ etch main

#deb http://security.debian.org/ etch/updates main contrib
#deb-src http://security.debian.org/ etch/updates main contrib

# Actualizacion a lenny
deb http://mmc.igeofcu.unam.mx/debian/ lenny main contrib non-free
deb-src http://mmc.igeofcu.unam.mx/debian/ lenny main contrib non-free

deb http://ftp.mx.debian.org/debian/ lenny main contrib non-free
deb-src http://ftp.mx.debian.org/debian/ lenny main contrib non-free

deb http://security.debian.org/ lenny/updates main contrib non-free
deb-src http://security.debian.org/ lenny/updates main contrib non-free

Una vez que hayan guardado los cambios de su archivo, deberán actualizar el catálogo de paquetes e instalaremos los archivos necesarios. Todo lo siguiente deberá ser ejecutado como el usuario root.

$ su -
Contraseña:
$ apt-get update
$ apt-get install ipw3945-modules-`uname -r` ipw3945d firmware-ipw3945

Se nos pedirá que confirmemos la instalación de los paquetes, donde presionaremos "S" y "Enter" e iniciará la instalación de los paquetes.

Una vez acaba la instalación, reiniciaremos la máquina y deberá estar cargado el módulo y habilitada la tarjeta wireless.

Para verificar que el módulo se encuentra cargado ejecutaremos lo siguiente:

$ lsmod |grep ipw3945

Y deberá aparecer algo similar a esto:

ipw3945 192740 1
ieee80211 31656 1 ipw3945
firmware_class 9504 2 pcmcia,ipw3945

Ahora podremos conectarnos a una red inalámbrica por medio de nm-applet y otra aplicación para conectarnos a redes inalámbricas.

jueves, 27 de marzo de 2008

Configurar comando sudo para usar en Debian como se usa en Ubuntu

Como su nombre lo indica, vamos a configurar el comando sudo para poderlo usar en Debian de la misma manera como lo usamos en Ubuntu.

Nos convertiremos en el usuario root para poder modificar el archivo /etc/sudoers. Yo acostumbro usar vi como editor pero como a muchos se les complica, usaré el comando gedit para editarlo.

$ su -
gedit /etc/sudoers

Ahora al final del archivo pondremos la siguiente línea (deberán cambiar javoaxian por su nombre de usuario):

javoaxian ALL=(ALL) ALL

Con ésto ya podremos usar el comando sudo con nuestra cuenta de usuario.

El regreso de Debian a mi vida

Pues si, he decidido volver a usar Debian como mi distribución principal, hace ya un tiempo que me pasé a Ubuntu y si me gustó bastante, sobre todo porque prácticamente me configuraba todo en mi laptop. Entonces decidí quedarme con Ubuntu como distribución, parte de que me haya quedado aquí fue porque estaba basada en Debian, pero nuevamente me ha surgido el gusanito de regresar a Debian y estoy empezando a instalarlo, se que me voy a encontrar con muchos problemitas de configuración, pero bueno, es lo que le da sabor también Debian.

La versión que pienso usar es la Testing que en éstos momentos es Lenny.

Dicho ésto, por ende voy a publicar artículos relacionados a configuraciones con Debian o problemas y posibles soluciones con que me encuentre.

Cabe mencionar también, que no me voy a deshacer completamente de Ubuntu, ya que he también decidido tener ésta distribución en la misma máquina.

Pues bueno, pronto iré posteando más artículos referentes a ésto y trataré de hacerlo para las dos distribuciones.

martes, 25 de marzo de 2008

Habilitar puertos USB de Ubuntu para que los reconozcan VirtualBox y VMware

A muchos de nosotros nos ha surgido la necesidad de que tenemos nuestra máquina con Ubuntu y quizas Windows en una máquina virtual, ya sea VirtualBox o VMware, y deseamos conectar algún dispositivo USB como puede ser un celular, una PDA, etc., pero cuando intentamos ésto nos manda un error. Por ejemplo, en el caso de VirtualBox nos manda un mensaje similar a éste:

Could not load the Host USB Proxy Service (VERR_FILE_NOT_FOUND). The service might be not installed on the host computer.

Por el momento no recuerdo el error de VMware, (en cuanto lo tenga lo pongo) pero bueno, el fin es el mismo, no nos reconoce nuestros dispositivos conectados por medio de un puerto USB.

La forma de resolver esta problematica es la siguiente. Deberemos editar el archivo /etc/fstab como usuario root.

$ sudo gedit /etc/fstab

Agregamos la siguiente línea al final del archivo:

usbfs /proc/bus/usb usbfs auto 0 0

Si se cuenta ya con una línea donde especifica algo sobre usbfs deberemos comentarla poniendo un # al principio de la línea. Por ejemplo:

# usbdevfs /proc/bus/usb usbfs noauto 0 0

Cabe notar que la línea anterior es muy parecida a la que debemos agregar pero con la diferencia de la opción de montarse está en NOAUTO.

Guardaremos los cambios, salimos del editor y reiniciamos nuestro equipo.

En el caso de que no funcione en VirtualBox podremos realizar los siguientes pasos. Yo uso tanto lo que explico arriba como lo de abajo para que me funcione en las dos máquinas virtuales.

Editar el siguiente archivo:

$ sudo gedit /etc/udev/rules.d/40-permissions.rules

Buscar la línea:

SUBSYSTEM=="usb_device", MODE="0664"

y cambiarla por:

SUBSYSTEM=="usb_device", MODE="0666"

Guardar los cambios.

Ahora editamos el archivo:

$ sudo gedit /etc/init.d/mountdevsubfs.sh

Buscamos las siguientes líneas:

# Magic to make /proc/bus/usb work
#
# mkdir -p /dev/bus/usb/.usbfs
# domount usbfs "" /dev/bus/usb/.usbfs -obusmode=0700,devmode=0600,listmode=0644
# ln -s .usbfs/devices /dev/bus/usb/devices
# mount --rbind /dev/bus/usb /proc/bus/usb

y las cambiamos por:

# Magic to make /proc/bus/usb work
#
mkdir -p /dev/bus/usb/.usbfs
domount usbfs "" /dev/bus/usb/.usbfs -obusmode=0700,devmode=0600,listmode=0644
ln -s .usbfs/devices /dev/bus/usb/devices
mount --rbind /dev/bus/usb /proc/bus/usb

Ahora ejecutamos el comando:

$ sudo /etc/init.d/mountdevsubfs.sh start

Reiniciamos nuestro equipo y quedará listo.

Cambiar el encoding o charset de Ubuntu de UTF-8 a ISO-8859-1

Cuando nosotros instalamos Ubuntu, la codificación de caracteres es hecha con UTF-8, en mi caso que es la codificación de México se configura con es_MX.UTF-8 pero aquí se suele trabajar más con la codificación ISO-8859-1 por lo cual, explicaré como podemos hacer para trabajar con la codificación ISO-8859-1 en Ubuntu.

En Ubuntu como en Debian la codificación se maneja por medio de las locales por lo cual como primer paso, nos encargaremos de crear las locales correspondientes a la codificación ISO-8859-1, lo cual se ejecuta de la siguiente manera:

$ sudo locale-gen es_MX

En el comando anterior estamos creando las locales ISO-8859-1 para México, deberán usar la abreviasión de su país, como por ejemplo es_ES para España, es_AR para Argentina, es_CL para Colombia, etc.

Hecho ésto, deberemos editar el archivo /etc/environment como usuario root con el editor de texto de su preferencia y cambiar las variables que tengan la codificación con UTF-8, en mi caso sólo tengo una variable llamada LANG="es_MX.UTF-8" la cual cambiaré a "es_MX" en otros casos viene también la variable LANGUAGE, donde deberemos verificar que se encuentre como primera opción es_MX. En caso de encontrar otra variable, deberán cambiarla a la codificación que deseen, en mi caso sería a es_MX.
También si desean, pueden agregar a este archivo la variable de ambiente LC_ALL="es_MX".

El archivo podría quedar con algo parecido a esto:

PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games"
#LANG="es_MX.UTF-8"
#LANGUAGE="es_ES:es:en_GB:en"
LANG="es_MX"
LANGUAGE="es_MX:es_ES:es:en_GB:en"
LC_ALL="es_MX"

Ahora editamos como root el archivo /etc/default/locale y cambiamos la variable LANG con el valor de es_MX o el que le corresponda a tu región.

#LANG="es_MX.UTF-8"
LANG="es_MX"

Ha quedado configurado nuestro Ubuntu con la nueva configuración pero en ocasiones el GDM no respeta la nueva configuración, a lo cual editaremos el archivo /etc/gdm/gdm.conf y agregaremos la línea source /etc/profile. Dicha línea deberemos ponerla debajo de ésta otra # Have fun!

# that begin with "#" are considered comments.
#
# Have fun!
source /etc/profile

Lo único que nos resta por hacer es reiniciar nuestra máquina para que funcione con la nueva codificación. Si cuando reiniciemos GDM nos manda un error, bastará con reiniciar nuevamente la máquina, aunque ésto sólo me a pasado una vez por lo cual no creo que sea necesario.

lunes, 24 de marzo de 2008

FloatingZoneMessage widget para MooTools

Hace algún tiempo estuve usando dojo y me encontré con un widget llamado Toaster, éste mostraba una zona emergente para poner mensajes. La idea del comportamiento de este widget es similar a cuando bajas un archivo en algunas versiones de firefox y te aparece una zona notificandote que la descarga ha sido completada.

Ahora me encuentro trabajando algunas cosas con MooTools y pensé en buscar un widget semejante a éste pero no lo encontré, entonces opté por crear FloatingZoneMessage.

Este widget es similar al Toaster de dojo en la idea de presentar una zona de mensajes, pero sólo en eso. Cuenta con la licencia The MIT License.

Basicamente FloatingZoneMessage se encarga de presentar una zona de mensajes en cualquier extremo de nuestro navegador. Dicha zona puede ser auto ocultable, donde se le especifica el tiempo que deseemos que esté visible la zona, también puedes decidir que no sea auto ocultable y usar los métodos definidos para mostrar y desaparecer la zona.

Puedes asignarle dos efectos para el momento en que aparece y desaparece la zona. Éstos son fade (el cual desvanece la zona) y slide (el cual muestra un deslizamiento de la zona dependiendo de la posición en donde estará situado en el navegador). También puedes optar no ponerle algún efecto.

Puedes asignarle texto plano o texto con etiquetas HTML, incluso hacer un formulario y usar las funciones para Ajax de MooTools para enviar su información.

Si deseas ver como se usa y funciona, visita esta página. Su documentación se encuentra aquí.

Si deseas modificar el código manten los créditos del autor.

Si tienes sugerencias, comentarios, dudas, etc., no dudes en realizarlas en los comentarios de éste artículo.

Natural Docs: Una herramienta para generar documentación a partir del código fuente

Hace algunos días publiqué una herramienta llamada JSDoc, la cual funcionaba muy parecido al javadoc de Java. Pues bien, ésta es otra herramienta similar a la mencionada anteriormente, la gran diferencia es que esta funciona con una gran cantidad de lenguajes, entre los que podemos encontrar:

  • C#
  • Perl
  • ActionScript
  • C/C++
  • Java
  • PHP
  • Python
  • PL/SQL
  • Visual Basic
  • Pascal/Delphi
  • Ada
  • JavaScript
  • Ruby
  • Tcl
  • ColdFusion
  • Assembly
  • Fortran (Formato free solamente)
  • R
  • Makefiles
  • Plain text (Archivos de texto plano)
Un inconveniente que tiene JSDoc es que no puedes documentar las clases generadas con mootools o cuando creas objetos con JavaScript, por lo cual puede que no resulte útil para algunos desarrolladores. Pero como una muy buena alternativa se puede Natural Docs.

El único requerimiento para que funcione, es tener Perl.

Como dato, esta herramienta fue usada por el autor de mootools para generar su documentación junto con GeSHi.

YUI Compressor

Siempre nos pasa a las personas que desarrollamos aplicaciones web que tenemos que cuidar mucho el peso de nuestras páginas, por ende, tenemos que cuidar que los archivos css y js que están relacionados con nuestras páginas no pesen mucho.

Esta útil herramienta, nos sirve para comprimir nuestros archivos ya sean hojas de estilo (css) o JavaScript (js). Se encarga de eliminar espacios y unir todo en una sola línea, entre otras cosas.

Si desean probarla, se encuentra en esta dirección.

El único requerimiento para que funcione es que se necesita tener instalado Java.
Para quienes usan mootools, recordarán que maneja este programa para comprimirlo cuando lo descargamos.

La forma de usarlo es muy sencilla, una vez descargado el archivo, deberás descomprimirlo. En este caso se bajo la versión 2.3.5.

$ unzip yuicompressor-2.3.5.zip

Se creará una carpeta llamada yuicompressor-2.3.5. Dentro de esta carpeta se encuentra otra carpeta llamda build, en la cual se encuentra el programa yuicompressor-2.3.5.jar. Este archivo es el que usaremos para comprimir los archivos. La forma de ejecutarlo es de la siguiente forma:

$ java -jar yuicompressor-2.3.5.jar --type js|css --charset -v -o archivo_de_salida.js | archivo_de_salida.css archivo_a_comprimir.js | archivo_a_comprimir.css

Por ejemplo:

$ java -jar yuicompressor-2.3.5.jar --type js --charset utf-8 -v -o archivo-min.js archivo.js

Creo que para varios puede ser una muy buena alternativa para reducir el tamaño de sus programas en javascript o de sus hojas de estilo.

jueves, 20 de marzo de 2008

JSDoc el javadoc para JavaScript

Actualmente estoy realizando un programa con JavaScript y quería generar su documentación, entonces me puse a buscar alguna herramienta que me lo permitiera hacer, tipo javadoc o phpDocumentor de PHP, y encontré la aplicación JSDoc.

Para muchos usuarios que están familiarizados con el programa javadoc de Java para generar la documentación de las clases desarrolladas a partir de sus comentarios, les resultará sencilla de usar esta herramienta.

Al igual que javadoc, jsdoc nos permite documentar nuestros programas en JavaScript y posteriormente generar su documentación a partir de sus comentarios.

Para poder instalarlo se necesita Perl y también funciona en Windows si se tiene Perl instalado. En el caso de Windows se recomienda usar ActivePerl.

Una vez que se cuenta con Perl instaldo, procederemos a descargar e instalar jsdoc.
Puede ser descargado desde aquí.
En este caso, la versión que se encuentra vigente es la 1.10.2.
Ya que se cuenta con el archivo, procederemos a descomprimirlo. En el caso de Windows se puede usar WinZip, Winrar o cualquier otro programa para descomprimir archivos.
En el caso de GNU/Linux podremos realizar los siguiente:

$ tar -xzvf JSDoc-1.10.2.tgz

Se creará el directorio JSDoc-1.10.2, al cual ingresaremos y ejecutaremos lo siguiente:

$ cd JSDoc-1.10.2
$ ./jsdoc.pl test.js
o también:
$ perl jsdoc.pl test.js

Si nos aparece algo semenjante a esto:

Can't locate HTML/Template.pm in @INC (@INC contains:...

Deberemos instalar el módulo de Perl HTML::Template. Para hacer ésto, deberas ser root. En mi caso usaré el comando sudo, para los que no tengan este programa, deberán convertirse en root y posteriomente ejecutar el siguiente comando quitando la palabra sudo.

En caso de usar sudo
$ sudo perl -MCPAN -e 'install HTML::Template'

En caso de no usar sudo
$ su -
$ perl -MCPAN -e 'install HTML::Template'

En caso de usar AcitvePerl para Windows
C:\> ppm
PPM> install HTML-Template
PPM>quit

Deberemos seguir las instrucciones que se nos van indicando.

Una vez que se encuentra instalado este módulo, ya tenemos listo jsdoc para poder usar.

Recuerden que para usar este comando se hará lo siguiente:

$ perl /directorio/de/instalación/de/jsdoc/jsdoc.pl archivo.js
o también
$ cd /directorio/de/instalación/de/jsdoc/
$ ./jsdoc.pl archivo.js

Cuando se ejecuta este comando, se crea el directorio js_docs_out el cual contiene la documentación generada a travez de los comentarios del archivo.js. Para poder ver esta documentación bastará con abrir el archivo index.html del directorio js_docs_out con nuestro navegador favorito.

Para saber como usar este programa, las etiquetas permitidas y más detalles acerca de esta herramienta, les recomiendo su sitio principal, donde en la sección Tag Reference encontraremos las etiquetas permitidas y en la sección Usage la manera de comentar nuestros programas.

Convertir imagen de Nero (nrg) a imagen ISO en GNU/Linux

Alguna vez, cuando hemos bajado de internet ya sea un software, video juego u otra cosa que nos haya interesado, se nos proporciona una imagen del disco, pero dicha imagen está en el formato de sofware Nero Burning Rom (nrg), y quizas el software que usamos en GNU/Linux no nos permita grabar directamente éste tipo de archivo, una alternativa para resolver ésto, es convertir la imagen de disco en formato de Nero a una imagen ISO. Ésta acción puede efectuarse por medio de un programa llamado nrg2iso.

Puedes descargarlo de esta página en el formato de tu distribución, y si no existe, puedes bajar e instalar los fuentes.
Para los que usan Ubuntu y Debian (configurar comando sudo para Debian) pueden instalarlo desde los repositorios.

$ sudo apt-get install nrg2iso

Una vez instalado, podras realizar la conversión de los formatos de la siguiente manera:

$ nrg2iso archivo.nrg nuevoarchivo.iso

Con ésto convertimos el archivo archivo.nrg al archivo nuevoarchivo.iso el cual ya se encuentra en formato ISO.
Recuerda que si instalaste los fuentes, deberas agregar el comando a la variable de ambiente PATH para poder usarlo desde cualquier parte de la linea de comandos sin necesidad de especificar toda la ruta donde se encuentra.

viernes, 14 de marzo de 2008

Calendario MooMonth con Mootools

Para todos aquellos que desean poner un calendario en su sitio, MooMonth puede ser una buena opción. Visiten su sitio, se ve muy interesante aunque está todavía en su fase alfa.

Aquí está el enlace con el demo que tienen en el sitio. Habrá que probarlo a fondo a ver que tan eficiente es, aunque a primera vista se ve con muy buena pinta y buen desempeño.

Inicio de la temporada 2008 de la F1

Pues para todos aquellos amantes de la Formula 1, el día de hoy a las 21:00 hrs. de México, por canal Fox sport de televisión de cable, iniciará la clasificación del Gran Premio de Australia.

Esperemos que sea una muy buena temporada y que le vaya bien a Ferrari ja ja ja.

Saludos!!!

jueves, 13 de marzo de 2008

Cómo leer correo electrónico con Eclipse

Para todos aquellos que desean usar a Eclipse, no sólo como una herramienta de programación sino también para poder leer su email. Existe el plugin Eclipsemail el cual es un cliente de correo electrónico para este entorno de desarrollo.

Si deseas instalarlo, sigue los pasos que se mencionan en el artículo Instalar plugins en Eclipse y cuando llegues a la sección "New Remote Site", ingresa en el campo "Name": Eclipsemail y en el campo "URL":

http://eclipsemail.org/update

Una vez que instalaste el plugin, aquí hay una guía para configurar tu cuenta de correo.

He detectado que no funciona la conexión por medio de POP3 y SSL. La versión que he probado de este plugin es la 1.0.54 y no respeta la conexión por SSL aún indicandole el protocolo y el puerto, por lo menos en Eclipse 3.3.1 de GNU/Linux.

Plugin EPIC de Eclipse para programar en Perl

Éste es un plugin que nos permitirá realizar nuestros programas de Perl dentro de Eclipse.

Para instalarlo deberá ser por medio de su Update Site. Dirigete a mi artículo Instalar plugins en Eclipse en su sección "Instalar por medio de Update site" para realizar la instalación. Recuerda que cuando llegues a la parte de "New Remote Site" ingresa en "Name": EPIC y en "URL":

http://e-p-i-c.sourceforge.net/updates/testing

Una vez instalado podrás entonces crear tus proyecto de Perl y tu programas.

Para crear tu proyecto, ve al menú de Eclipse en: File -> New -> Project -> Perl -> Perl Project.

En la pantalla "New project" ingresa el nombre de tu proyecto y presiona "Finish".

Para abrir la perspectiva de Perl, ve a : Window -> Open Perspective -> Other -> Perl y presiona "Ok".

Para crear un programa presiona con el botón derecho sobre el nombre de tu proyecto en Perl y ve a: New -> Other -> Perl -> Perl File y presiona "Next".

En la ventana "New File" ingresa el nombre de tu programa y presiona "Finish".

Con esto ya se tiene instalado el plugin de Perl y listo para usar.

Cómo montar imagen ISO en GNU/Linux

En muchas ocasiones a mi me ha pasado que deseo ver el contenido de un archivo ISO que baje de internet para ver el contenido corresponde a lo que bajé y así grabar la imagen en un archivo. Para ésto, podemos montar la imagen en sistema de archivos y así poder corroborar si el contenido está correcto.

No quiere decir que sea el único uso, pero sirve para ejemplificar.

Para poder montar la imagen ejecutaremos el siguiente comando: mount -t iso9660 -o loop archivo.iso /directorio/de/montaje.

Aquí pongo un ejemplo:

$ sudo mount -t iso9660 -o loop ubuntu-7.04-desktop-i386.iso /mnt/

NOTA: si no les funciona el comando sudo, primero conviertance en el usuario root y posteriormente ejecuten todos los comandos.

Donde nos mostrará algo como esto:

$ ls -l /mnt/
total 552
-r-xr-xr-x 1 root root 42 2006-05-28 09:36 autorun.inf
dr-xr-xr-x 10 root root 6144 2007-04-15 08:51 bin
dr-xr-xr-x 2 root root 2048 2007-04-15 08:52 casper
dr-xr-xr-x 6 root root 2048 2007-04-15 08:51 disctree
dr-xr-xr-x 3 root root 2048 2007-04-15 08:51 dists
dr-xr-xr-x 2 root root 2048 2007-04-15 08:52 install
dr-xr-xr-x 2 root root 14336 2007-04-15 08:52 isolinux
-r--r--r-- 1 root root 38394 2007-04-15 08:52 md5sum.txt
dr-xr-xr-x 2 root root 2048 2007-04-15 08:51 pics
dr-xr-xr-x 4 root root 2048 2007-04-15 08:51 pool
dr-xr-xr-x 2 root root 2048 2007-04-15 08:51 preseed
dr-xr-xr-x 7 root root 2048 2007-04-15 08:51 programs
-r--r--r-- 1 root root 221 2007-04-15 08:51 README.diskdefines
-r-xr-xr-x 1 root root 255358 2007-03-25 10:28 start.bmp
-r-xr-xr-x 1 root root 38912 2003-11-17 11:09 start.exe
-r-xr-xr-x 1 root root 95 2005-06-29 03:23 start.ini
lr-xr-xr-x 1 root root 1 2007-04-15 08:51 ubuntu -> .
-r-xr-xr-x 1 root root 193110 2006-05-28 09:36 ubuntu.ico

Ahora, para desmontar la imagen, basta con ejecutar el comando: sudo umount /directorio/de/montaje.

$ sudo umount /mnt/

Ojala que les sirva.

Enviar y recibir archivos con Bluetooth en Ubuntu

Actualización 2008-06-26:
Acabo de agregar un paso para hacer que nuestrá máquina se encuentre visible para los demás dispositivos. Esta explicación se encuentra en estos 2 párrafos previos al punto Enviar archivos.

Actualización 2008-03-28:
Funciona en Debian configurando el comando sudo como aquí se menciona o ejecutando todo lo referente a sudo como root. También deberás instalar el paquete nautilus-sendto y en algunos casos nautilus-sendto-bluetooth (cuando instales estos paquetes deberás reiniciar tu ambiente gráfico).

En esta entrada me encargaré de explicar como podemos enviar y recibir archivos por medio del protocolo Bluetooth en nuestra distribución de Ubuntu.

Como primer paso, comprobaremos que nuestro dispositivo sea detectado:
hciconfig

Donde se nos deberá presentar una salida similar a ésta:

hci0: Type: USB
BD Address: 00:02:C7:EC:79:15 ACL MTU: 384:8 SCO MTU: 64:8
UP RUNNING PSCAN ISCAN
RX bytes:940 acl:0 sco:0 events:23 errors:0
TX bytes:591 acl:0 sco:0 commands:23 errors:0

Una vez que sabemos que nuestro dispositivo está siendo detectado, deberemos instalar los paquetes bluez-gnome, bluez-utils y gnome-bluetooth.

$ sudo apt-get install bluez-gnome bluez-utils gnome-bluetooth

Ahora, arrancaremos el servidor que nos permitirá recibir archivos.

$ gnome-obex-server&

Donde se activará un ícono azul en el panel principal como si estuviera emitiendo una señal, al lado del ícono con el logo de Bluetooth.


Agregaremos éste comando a nuestro inicio de sesión para que cada vez que abramos una sesión de usuario arranque.
Para ésto iremos al panel principal de Gnome y elegiremos Sistema -> Preferencias -> Sesiones -> Programas de Inicio.
Presionaremos el botón "Añadir".
En la ventana "Nuevo programa de inicio" ingresamos como "Nombre": Gnome OBEX Server, en "Comando": gnome-obex-server y presionamos "Aceptar".


Actualización 2008-06-26: Habilitaremos nuestra máquina para que otros dispositivos puedan verlo. Ésto lo realizaremos presionando con el botón derecho de nuestro ratón sobre el ícono con el logo de Bluetooth, lo cual nos mostrará un menú y deberémos elegir la opción Preferencias.



Actualización 2008-06-26: Se nos mostrará una pantalla con varias pestañas, seleccionaremos la primera, la cual contiene regularmente el nombre de nuestro equipo seguido por "-0". En mi caso, como podrán observar en la siguiente imagen es: darthmaul-0. En esta pestaña seleccionaremos la opción: "Otros dispositivos lo pueden ver y conectarse".
Hecho lo anterior, quedará activada nuestra máquina para que pueda ser visible para otros dispositivos, nada más faltar presionar la opción "Cerrar" para cerrar la ventana.



Instalados estos paquetes, podremos enviar y recibir archivos.

Enviar archivos
La manera más sencilla para enviar archivos a un dispositivo, es mediante nautilus.

Abriremos nuestra carpeta personal, llendo a Lugares -> Carpeta personal.


Se abrirá la venta con los archivos que tenemos e nuestros HOME.


Seleccionaremos un archivo que deseemos enviar presionando con el botón derecho sobre el archivo y eligiendo la opción Enviar a... .



Ahora seleccionaremos el protocolo Bluetooth (OBEX Push) y el dispositivo al que deseamos enviar el archivo y presionaremos "Enviar".


Se iniciará el proceso de envio del archivo.


Recibir archivos
Desde el equipo, celular, etc., elegimos y mandamos el archivo que desemos pasar a nuestra máquina.

Hecho ésto, nos aparecerá una ventana solicitando si deseamos aceptar el archivo. Presionaremos "Aceptar" y comenzará la transferencia del archivo.


El ícono que activamos anteriormente se empezará a mover como si estuviera enviando señales.

Una vez que se terminó de transferir el archivo será colocado en el Escritorio o en el HOME del usuario y nos aparecerá una ventana indicando que se terminó de transferir el archivo.


Con esto finalizo este artículo, espero y sea de su agrado.

Instalar plugins en Eclipse

Existen dos maneras para instalar plugins en Eclipse, la forma depende del proveedor del plugin. En ocasiones el proveedor permite las dos formas, pero no sucede en todos los casos.

Vamos empezar con la explicación de estas dos formas.

Instalar por medio de archivos.
Esta manera de instalar los plugins es mediante la descarga de los archivos desde el sitio y después descomprimirlos y colocarlos en el directorio donde está instalado Eclipse.

Para ejemplificar esta forma de instalación, instalaré el plugin UMLet, el cual permite crear diagramas UML.

Deberemos descargar los archivos del plugin desde esta página. Yo usaré el comando wget para descargar la última versión (que en el momento de realizar este artículo es la 8.01).

$ wget http://www.umlet.com/umlet_8_01/umlet801.zip
$ unzip umlet801.zip
$ cd umlet801
$ cp -R com.umlet.plugin /home/javoaxian/eclipse/plugins/

Ahora si tienes ejecutandose eclipse, deberás reiniciarlo para que surtan efecto los cambios.

Cabe mencionar que no todos se instalan de ésta manera, lo importante a saber aquí, es que se deben de copiar los archivos del plugin en la carpeta /ruta/de/eclipse/plugins y /ruta/de/eclipse/features. En algunos casos como UMLet, no se nos provee de elementos para la carpeta features.

En otros casos cuando se descomprime el archivo suele crearse una carpeta llamda eclipse y dentro de ésta, otras dos llamadas plugins y features y, dentro de éstas, vienen los archivos que deberán instalarse en los directorios plugins y features de nuestro eclipse. Otro caso, es que cuando descomprimimos el archivo se creen las carpetas plugins y features o tal vez ninguna, solo se crean los directorios que deberán moverse.

Algunos plugins traen también un archivo de como instalarse cuando se descomprimen, tal es el caso de UMLet.

Resumiendo, deberán de instalarse los plugins dentro de las carpetas plugins y features de nuestro eclipse.

Instalar por medio de Update site.
Actualmente es la forma más usada para instalar los plugins. El proveedor del plugin nos indica el URL de descarga y en ocasiones la versión de eclipse con la que es compatible, o URL's alternos para las diferentes versiones de eclipse.

Este proceso de instalación ya lo he descrito en los artículos Instalación de Subclipse y Cómo instalar el plug-in de PHP en Eclipse, por lo cual no entraré en muchos detalles. Realmente la diferencia radica cuando presionas la opción "New Remote Site", ya que aquí deberas ingresar el "Name" y "URL" que te proporcionan el proveedor del plugin para poderlo instalar. Para ubicarnos en donde se realiza el cambio de la instalación, nos referiremos a los puntos 4, 5 y 6 del artículo Instalación de Subclipse. En estas secciones del artículo mencionado, podemos observar que se van a instalar dos plugins, el Buckminster y Subclipse, lo siguiente cambiará muy poco. Sigue los pasos de cualquiera de los artículos y sólo cambia el Name y URL del sitio de donde deberá bajar el plugin en la sección "New Remote Site".

Si se comparán los dos artículos, podremos ver que no varian mucho. Con ésto, concluyo la explicación y si algo no quedó claro, no duden en comentarlo y con gusto lo aclararé.

Instalar Eclipse sin complicaciones. Yoxos Ondemand

Curiosando en la red me he encontrado con el sitio Yoxos Ondemand el cual está muy bien, ya que puedes descargar Eclipse pero mostrandote una interfaz semejante al ambiente de trabajo de Eclipse, y puedes seleccionar los paquetes que deseas instalar, como por ejemplo: PHPEclipse, Subclipse, Suversive, Aptana, entro otros muchisismos más plugins.

Puedes olvidarte de estar buscando dependencias de los plugins que te interesan, prueba esta herramienta.

Si deseas evaluar ésta estupenda herramienta para bajar Eclipse y los plugins que necesitas, el enlace se encuentra AQUÍ.

Has tus comentarios de esta herramienta para ver que te pareció.

miércoles, 12 de marzo de 2008

Activar y Desactivar Bluetooth de laptop's Sony Vaio en GNU/Linux

Para poder usar el programa spicctrl que es el que nos permitirá encender o apagar el bluetooth de nuestra máquina, deberemos verificar que tengamos cargados los módulos del kernel sonypi y sony-laptop.

$ lsmod |grep sony

Deberá aparecer algo similar a esto:

sony_laptop 32088 0
sonypi 23960 0

Si no aparece nada, quiere decir que no están cargados los módulos y deberemos cargarlos. Ésto se hará de la siguiente manera:

$ sudo modprobe sonypi sony-laptop

Si el sistema manda un error indicando que no puede cargar los módulos porque no existen, entonces deberemos tratar de instalarlos de acuerdo a este sitio.

En caso de que el módulo esté cargado, deberemos únicamente instalar el archivo spicctrl.

En el caso de Debian (ejecutalo como root y omite el comando sudo o configura el comando como explico aquí) y Ubuntu puedes ejecutar lo siguiente:

$ sudo apt-get install spicctrl

En el caso que quieras instalarlo en otra distribución o desde los fuentes, deberás ejecutar lo siguiente:

$ cd /usr/local/src
$ su -
$ wget http://popies.net/sonypi/spicctrl-1.9.tar.bz2
$ tar -jxvf spicctrl-1.9.tar.bz2
$ cd spicctrl-1.9
$ make
$ make install

Ésto instalará el comando spicctrl en el directorio /usr/local/bin.

Ahora nada más nos resta ejecutar el comando para encender o apagar el dispositivo bluetooth.

Para encender/activar haremos lo siguiente:

$ spicctrl --setbluetoothpower=1

Y para apagar/desactivar:

$ spicctrl --setbluetoothpower=0

Asistente para escoger una distribución GNU/Linux

Para todos aquellos que desean instalar alguna distribución de GNU/Linux pero no saben cuál, o simplemente para curiosos como yo que desean ver que distribución se adecua más según tu perfil de conocimiento de GNU/Linux; les dejo un test realizado por zegenie Studios bastante bueno que te dice que distribución se te adecua más.

Pulsa aquí para visitar el test.

Solución al problema entre Ubuntu 7.10 (Gutsy Gibbon) y VMware Workstation 6.0.0-45731

Hace algún tiempo, cuando recien me pasé a la versión 7.10 de Ubuntu, quise intalar VMware en su versión Workstation 6.0.0-45731 pero tuve el siguiente problema:

Using 2.6.x kernel build system.
make: se ingresa al directorio `/tmp/vmware-config0/vmnet-only'
make -C /lib/modules/2.6.22-14-generic/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. modules
make[1]: se ingresa al directorio `/usr/src/linux-headers-2.6.22-14-generic'
CC [M] /tmp/vmware-config0/vmnet-only/driver.o
CC [M] /tmp/vmware-config0/vmnet-only/hub.o
CC [M] /tmp/vmware-config0/vmnet-only/userif.o
/tmp/vmware-config0/vmnet-only/userif.c: En la función ‘VNetCopyDatagramToUser’:
/tmp/vmware-config0/vmnet-only/userif.c:630: error: ‘const struct sk_buff’ no tiene un miembro llamado ‘h’
/tmp/vmware-config0/vmnet-only/userif.c:630: error: ‘const struct sk_buff’ no tiene un miembro llamado ‘nh’
/tmp/vmware-config0/vmnet-only/userif.c:636: error: ‘const struct sk_buff’ no tiene un miembro llamado ‘h’
make[2]: *** [/tmp/vmware-config0/vmnet-only/userif.o] Error 1
make[1]: *** [_module_/tmp/vmware-config0/vmnet-only] Error 2
make[1]: se sale del directorio `/usr/src/linux-headers-2.6.22-14-generic'
make: *** [vmnet.ko] Error 2
make: se sale del directorio `/tmp/vmware-config0/vmnet-only'
Unable to build the vmnet module.

For more information on how to troubleshoot module-related problems, please
visit our Web site at "http://www.vmware.com/download/modules/modules.html" and
"http://www.vmware.com/support/reference/linux/prebuilt_modules_linux.html".

Execution aborted.

Consulté algunos sitios y decian que se necesitaba instalar unos parches los cuales nunca me funcionaron, entonces entré al sitio de VMware y encontré una versión más reciente (VMware workstation 6.0.2-59824). Esta versión la instalé y ya corrige el error.

Saludos y espero que les funcione este tip.

martes, 11 de marzo de 2008

Borrar un archivo o directorio recursivamente en GNU/Linux

Existen ocasiones en las cuales deseamos borrar un archivo o un directorio que se encuentra en otro directorio y también dentro de sus subdirectorios. Un ejemplo de ésto, son los archivo .svn que usa Subversion.

Para ejemplificar lo antes mencionado pondré el siguiente ejemplo:

$ rm -rf /home/javoaxian/proyecto/.svn /home/javoaxian/proyecto/modulo1/.svn /home/javoaxian/proyecto/modulo2/.svn

Esto es muy tedioso y tardado, para lo cual, realizé este script en perl, donde le puedes indicar el archivo o directorio que deseas eliminar y en que directorio lo va a buscar.

Aquí les dejo el código del script:
#!/usr/bin/perl
# Creado por: JavoAxian
# Año: 2007

$elementoABorrar = $ARGV[0];
$directorio = $ARGV[1];

if($elementoABorrar eq "")
{
print "Ingresa el Archivo/Directorio a borrar\n";
exit(0);
}
elsif($directorio eq "")
{
print "Ingresa el Directorio donde se encuentra el Archivo/Directorio a " .
"borrar\n";
exit(0);
}

$buscar = `find $directorio -name $elementoABorrar -print`;

@directorios = split(/\n/,$buscar);

print "Iniciando la eliminación del archivo/directorio: $elementoABorrar en " .
"el directorio: $directorio\n";

for($contador=0;$contador<@directorios;$contador++)
{
$dir = $directorios[$contador];
`rm -rf "$dir"`;
print "Archivo/Directorio eliminado: $dir\n";
}

print "Finalizando la eliminación del Archivo/Directorio: $elementoABorrar\n";

Copien el código anterior y peguenlo en un archivo. Para ejemplificar le pondré al programa el nombre de borrarArchivosRecursivamente.pl.
Para usarlo, deberemos darle permisos de ejecusión y posteriormente correr el comando recibiendo como argumentos el archivo o directorio para borrar y el directorio donde se encuentra el archivo a borrar:

$ chmod 755 borrarArchivosRecursivamente.pl
$ ./borrarArchivosRecursivamente.pl .svn /home/javoaxian/proyecto

La salida sería algo como ésto:

Iniciando la eliminación del archivo/directorio: .svn en el directorio: proyecto
Archivo/Directorio eliminado: proyecto/.svn
Archivo/Directorio eliminado: proyecto/modulo2/.svn
Archivo/Directorio eliminado: proyecto/modulo1/.svn
Finalizando la eliminación del Archivo/Directorio: .svn

Espero que les pueda servir.

Configurar Webcam de Laptop's Sony Vaio serie SZ en GNU/Linux

Actualización 2010-08-13
Para Ubuntu 10.04 funcionan los pasos mencionados por Nosinmiubuntu en este post

Actualización 2008-03-28
Funciona en Debian configurando el comando sudo como aquí se menciona o ejecutando todo lo referente a sudo como root y haciendo la instalación desde los fuentes

El día de ayer, pensando en algo para escribir, recordé que no había podido configurar la de mi laptop, la cual es una Sony Vaio Webcam VGN-SZ240F, entonces me dí a la tarea de investigar si ya existian driver's para las camaras que incluyen los modelos SZ de Sony y para mi sorpresa, ya existían desde octubre del año pasado aproximadamente. Entonces decidí probarlos y realizar este artículo.

Primero que nada, descargaremos los driver's, cabe mencionar que el sitio donde inicialmente se colocaron éstos no está habilitado. En esta dirección podrán encontrar tanto los archivos .deb para el kernel que usen en Ubuntu, así como los fuentes para compilar.

Las cámaras compatibles con estos driver's son:
05ca:1810 HP Pavilion Webcam - UVC
05ca:1830 Sony Visual Communication Camera VGP-VCC2 (for VAIO SZ)
05ca:1832 Sony Visual Communication Camera VGP-VCC3 (for VAIO UX)
05ca:1833 Sony Visual Communication Camera VGP-VCC2 (for VAIO AR1)
05ca:1834 Sony Visual Communication Camera VGP-VCC2 (for VAIO AR2)
05ca:1835 Sony Visual Communication Camera VGP-VCC5 (for VAIO SZ)
05ca:1836 Sony Visual Communication Camera VGP-VCC4 (for VAIO FE)
05ca:1870 HP Pavilion Webcam / HP Webcam 1000

Si quieren saber la versión del kernel que tienen instalado, ejecuten el siguiente comando.

$ uname -r

En mi caso la versión es 2.6.22-14-generic y se puede instalar de la siguiente manera.
Descarguen el archivo desde aquí y posteriormente nos situaremos donde colocaron el archivo y ejecuten lo siguiente.

$ sudo dpkg -i ricoh-webcam-r5u870-2.6.22-14-generic_0.10.0-4_i386.deb

Ahora ya quedó instalado el driver en Ubuntu con el kernel 2.6.22-14-generic pero si prefieren bajar los archivos fuente, está es la manera en que pueden instalarlo.

Instalar desde fuentes.
Instalar primero los paquetes build-essential y linux-header-versión-del-kernel.
Esta es la forma de instalarlos en debian o ubuntu, en otras distribuciones deberán encontrar los equivalentes.

$ sudo apt-get install linux-headers-`uname -r` build-essential

Pueden descargar el archivo desde aquí.
Nos moveremos al directorio /usr/src e instalaremos el archivo.

$ cd /usr/src
$ sudo wget http://download.tuxfamily.org/arakhne/pool/ricoh-webcam-r5u870/ricoh-webcam-r5u870_0.10.0-4.tar.gz
$ sudo tar -xzvf ricoh-webcam-r5u870_0.10.0-4.tar.gz
$ sudo mv ricoh-webcam-r5u870-0.10.0/upstream/r5u870-0.10.0.tgz .
$ sudo rm -rf ricoh-webcam-r5u870-0.10.0/
$ sudo tar -xzvf r5u870-0.10.0.tgz
$ cd r5u870-0.10.0/
$ sudo make
$ sudo make install

Ahora han sido instalados los driver's desde los fuente.
Cada vez que reinicien se deberá cargar el módulo r5u870, pero para que funcione en este momento, deberemos ejecutar lo siguiente.

$ sudo modprobe r5u870

Para finalizar, pueden probar con xawtv, amsn o algún otro programa para visualizar la imagen de tu Webcam.

NOTA: No es compatible si instalaste los driver's para la tarjeta sintonizadora de TV MSI VOX.

domingo, 9 de marzo de 2008

Grabar programas de TV en GNU/Linux

Actualización 2008-03-28:
Funciona en Debian configurando el comando sudo como aquí se menciona o ejecutando todo lo referente a sudo como root. También debes tener configurado el repositorio de archivos de multimedia para Debian.


Dada la variedad de tarjetas para sintonizar programas de TV, no será posible describir una instalación estandar para configurar dichas tarjetas y, por consiguiente, este artículo no describirá la configuración de una tarjeta sintonizadora de TV.

Si cuentan con una tarjeta de TV MSI TV VOX 8609 Video USB 2.0 pueden ver como configurarla en este artículo.

Si ya cuentan con su tarjeta de TV configurada en GNU/Linux, instalaremos los programas que vamos a usar para grabar los programas de TV que deseemos.

En este caso vamos a instalar los programas en Ubuntu, para lo cual vamos a usar los paquetes que se encuentran en los repositorios e instalar los paquetes mplayer, mencoder y audacity (este último lo instalo para configurar el audio para la tarjeta de TV mencionada arriba, además que es un excelente software para editar archivos de audio). Recomiendo instalar los gstreamer's, codec's y paquetes mencionados en los siguientes artículos antes de seguir con la instalación.
Activar la opción de extraer audio a formato MP3 en Sound Juicer de Ubuntu 7.10
Reproducir DVD's con Ubuntu 7.10 (Gutsy Gibbon)
Instalar codec's w32codecs para Ubuntu

Ahora instalaremos los paquetes.

$ sudo apt-get install mplayer mencoder audacity

Confirmaremos la instalación presionando "S" y "Enter" cuando se nos solicite.

Si no se tiene conectada la tarjeta de TV, será necesario conectarla para realizar una prueba de grabación.

En el caso de la tarjeta MSI VOX la forma de grabar el audio será conectando con un cable la televisión desde su salida de audiofonos y conectarla a la entrada del micrófono de la computadora.

Ahora deberán abrir el control de volumen, que es una opción si le dan con botón derecho a la bocina del panel principal de Ubuntu. Ahora deberán darle en Archivo -> Cambiar dispositivo y ver el dispositivo que tiene seleccionado, éste nos será de utilidad en audacity para asignar el mismo dispositivo. Ahora deberán abrir audacity e ir a Editar -> Preferencias -> Audio E/S y en la sección Reproducción en la opción Dispositivo elegiremos el dispositivo que vimos en el control de volumen y lo mismo deberemos hacer para la sección Grabando, presionaremos "Aceptar", deberemos seleccionar la opción Line, está opción aparece en la barra de herramienta en una lista desplegable donde también aparece la opción Mic y en algunos dispositivos pueden aparecer Capture y Digital (todas estas opciones puede estar seguidas de un número 0). Ahora presionaremos el botón con círculo rojo para grabar el audio que viene de la televisión. Deberemos ver como va haciendo la grabación y va cambiando la linea de la pista y podremos presionar el botón con el cuadro amarillo para detener la grabación, y si queremos escuchar lo que se grabó, deberemos presionar el botón con la flecha verde.

Si se complica mucho usar audacity, como otra alternativa, pueden usar la aplicación Grabador de sonido que se encuentra en Aplicaciones -> Sonido y vídeo -> Grabador de sonido y jugar con la opción "Grabar de la entrada" y presionando el botón "Grabar" hasta que nos grabe el audio. Con este programa fue con el que pude ajustar la grabación del audio para Debian.

Si todo ésto funcionó correctamente, ya podrá grabarse el video junto con el audio.

Ya que se encuentra todo listo, ejecutaremos el siguiente comando.

mencoder tv://3 -tv driver=v4l2:input=2:norm=NTSC:width=720:height=480:amode=1:device=/dev/video0 -ovc lavc -lavcopts vcodec=mpeg4:autoaspect=1:vrc_buf_size=1024:vrc_maxrate=9799:vbitrate=4000 -oac lavc -lavcopts acodec=mp2:abitrate=64 -rawaudio channels=2 -vf scale=720:480,pp=hb/vb/dr/al/lb -srate 48000 -o video.avi -af lavcresample=48000 -ofps 30

Iniciará la grabación, veremos como nos aparecen mensajes como éstos:

MEncoder 2:1.0~rc1-0ubuntu13.1 (C) 2000-2006 MPlayer Team
CPU: Genuine Intel(R) CPU T2400 @ 1.83GHz (Family: 6, Model: 14, Stepping: 8)
CPUflags: Type: 6 MMX: 1 MMX2: 1 3DNow: 0 3DNow2: 0 SSE: 1 SSE2: 1
Compiled with runtime CPU detection.
success: format: 9 data: 0x0 - 0x0
TV file format detected.
Selected driver: v4l2
name: Video 4 Linux 2 input
author: Martin Olschewski
comment: first try, more to come ;-)
Selected device: MSI VOX USB 2.0
Tuner cap:
Tuner rxs:
Capabilites: video capture tuner audio read/write streaming
supported norms: 0 = PAL-BG; 1 = PAL-DK; 2 = PAL-I; 3 = PAL-M; 4 = NTSC;
inputs: 0 = Television; 1 = Composite1; 2 = S-Video;
Current input: 2
Current format: YUYV
v4l2: current audio mode is : STEREO
Audio block size too low, setting to 16384!
v4l2: ioctl query control failed: Invalid argument
[V] filefmt:9 fourcc:0x32595559 size:720x480 fps:29.97 ftime:=0.0334
==========================================================================
Opening audio decoder: [pcm] Uncompressed PCM audio decoder
AUDIO: 44100 Hz, 2 ch, s16le, 1411.2 kbit/100.00% (ratio: 176400->176400)
Selected audio codec: [pcm] afm: pcm (Uncompressed PCM)
==========================================================================
Opening video filter: [expand osd=1]
Expand: -1 x -1, -1 ; -1, osd: 1, aspect: 0.000000, round: 1
Opening video filter: [pp=hb/vb/dr/al/lb]
Opening video filter: [scale w=720 h=480]
==========================================================================
Opening video decoder: [raw] RAW Uncompressed Video
VDec: vo config request - 720 x 480 (preferred colorspace: Packed YUY2)
[PP] Using external postprocessing filter, max q = 6.
VDec: using Packed YUY2 as output csp (no 0)
Movie-Aspect is undefined - no prescaling applied.
SwScaler: reducing / aligning filtersize 1 -> 4
SwScaler: reducing / aligning filtersize 1 -> 4
SwScaler: reducing / aligning filtersize 1 -> 1
SwScaler: reducing / aligning filtersize 9 -> 8

SwScaler: BICUBIC scaler, from yuyv422 to yuv420p using MMX2
SwScaler: using 4-tap MMX scaler for horizontal luminance scaling
SwScaler: using 4-tap MMX scaler for horizontal chrominance scaling
SwScaler: using 1-tap MMX "scaler" for vertical scaling (YV12 like)
SwScaler: 720x480 -> 720x480
videocodec: libavcodec (720x480 fourcc=34504d46 [FMP4])
Selected video codec: [rawyuy2] vfm: raw (RAW YUY2)
==========================================================================
Forcing audio preload to 0, max pts correction to 0.
Writing header...1f ( 0%) 0.00fps Trem: 0min 0mb A-V:0.000 [0:0]
ODML: vprp aspect is 16384:10922.
Writing header...
ODML: vprp aspect is 16384:10922.

1 duplicate frame(s)!
Pos: 0.1s 3f ( 0%) 0.00fps Trem: 0min 0mb A-V:0.000 [0:0]
1 duplicate frame(s)!
Pos: 0.2s 5f ( 0%) 0.00fps Trem: 0min 0mb A-V:0.000 [0:0]
1 duplicate frame(s)!
Pos: 0.3s 6f ( 0%) 0.00fps Trem: 0min 0mb A-V:0.000 [0:0]
1 duplicate frame(s)!
Pos: 0.4s 8f ( 0%) 0.00fps Trem: 0min 0mb A-V:0.000 [0:0]
1 duplicate frame(s)!

Para detener la grabación presionaremos las teclas Ctrl+C.

Ahora explicaré algunas opciones del comando anterior.
  • tv://3: le decimos que va a sintonizar el canal 3.
  • driver: el driver que usaremos dummy, v4l, v4l2, bsdbt848.
  • input: tipo de entrada tv (0), composite1(1) o S-Video(2) (yo uso la grabación por medio de una conexión de supervideo).
  • norm: en mi caso uso la norma NTSC que es la que se usa en méxico y en europa se usa más la PAL.
  • width: pixeles de largo (en el caso de aquí se usan 720, pero pueden ajustarse al tamaño que queramos el video).
  • height: pixeles de ancho (en el caso de aquí se usan 480, pero pueden ajustarse al tamaño que queramos el video).
  • amode: tipo de audio (1) que equivale a stereo.
  • device: dispositivo de la tarjeta de video, por default es el /dev/video0.
  • vcodec: codec de video a usar.
  • acode: codec de audio a usar (mp2, mp3, ac3, adpcm_ima_wav, sonic).
  • scale: tamaño de alto y ancho, igual a width y height juntos separados por : ejemplo 720:480.
  • -o archivo.avi: se indica después de la -o el nombre de archivo donde se grabará o la ruta con el nombre del archivo, por ejemplo: /tmp/archivo.avi.

Estas son algunas opciones, si deseas saber el significado completo de todas las opciones, puedes ejecutar el comando man mencoder y allí viene todo.

Con este comando seremos capaces de grabar videos desde la TV a nuestra computadora. Deberán ajustar los parametros según a lo que ustedes usen, también pueden crear un archivo de configuración mencoder.conf para poner las opciones de grabación y no tener que escribir todo siempre que queramos grabar. Este es un ejemplo del archivo.

# Make MEncoder output to a default filename.
o=encoded.avi
# The next 4 lines allow mencoder tv:// to start capturing immediately.
oac=pcm=yes
ovc=lavc=yes
lavcopts=vcodec=mjpeg
tv=driver=v4l2:input=1:width=768:height=576:device=/dev/video0:audiorate=48000
# more complex default encoding option set
lavcopts=vcodec=mpeg4:autoaspect=1
lameopts=aq=2:vbr=4
ovc=lavc=1
oac=lavc=1
passlogfile=pass1stats.log
noautoexpand=1
subfont-autoscale=3
subfont-osd-scale=6
subfont-text-scale=4
subalign=2
subpos=96
spuaa=20

Este es el ejemplo de mi archivo mencoder.conf en Ubuntu, el cual debe de ser colocado en ~/.mplayer/

tv=driver=v4l2:input=3:norm=NTSC:width=720:height=480:amode=1:device=/dev/video0
ovc=lavc=1
lavcopts=vcodec=mpeg4:autoaspect=1:vrc_buf_size=1024:vrc_maxrate=9799:vbitrate=4000
oac=lavc=1
lavcopts=acodec=mp2:abitrate=64
rawaudio=channels=2
vf=scale=720:480,pp=hb/vb/dr/al/lb
srate=48000
af=lavcresample=48000
ofps=30

Y ejecuto el comando de la siguiente manera.

mencoder tv://3 -o archivo.avi

Espero y les sea de utilidad.