Actualizar Empathy a la versión 2.32.1

Introducción.

Empathy es el software de mensajería que incluye por defecto GNU/Linux Ubuntu desde su versión 10.04.  Antes utilizaba Pidgin el cual es está mas maduro debido a su mayor trayectoria, sin embargo después de instalar esta última versión de Ubuntu -10.10- decidí darle una oportunidad a esta nueva aplicación.

Tal y como lo mencioné, a este software aún le faltan varias de las características que considero indispensables para su uso, entre ellas la posibilidad de permitir o negar la posibilidad de los contactos de ver nuestro estado o comunicarse con nosotros (privacidad).

Estado de la sesión en Empathy
Estado de la sesión en Empathy

Otra característica que extrañaba era la posibilidad de estar invisible, es decir, conectado a los diferentes servicios de mensajería pero sin aparecer conectado en las listas de mis contactos.  Esto era parcialmente factible, ya que con protocolos como el de Messenger era posible pero específicamente con el de GTalk (mensajería de Google) no lo era, cuando se tenían cuentas activas de este protocolo el estado era asignado automáticamente como ocupado lo que hacía a mi usuario evidentemente visible.

Pensé que era una limitación del protocolo de Google (basado en XMPP) sin embargo recientemente encontré que era realmente un bug de Telepathy -la librería que da soporte a las conversaciones en Empathy- y que este ya ha sido corregido.

Actualizar Empathy.

La nueva versión de las librerías que corrige este problema no puede ser instalada automáticamente desde el repositorio, al menos para la versión actual de Ubuntu, aparentemente por un problema de dependencias.  Por este motivo es necesario realizar una actualización manual de los paquetes.

En primera instancia es necesario descargar las nuevas versiones de los siguientes archivos.  Para la versión de 32 bits de Ubuntu:

  1. http://packages.ubuntu.com/natty/i386/telepathy-gabble/download
  2. http://packages.ubuntu.com/natty/i386/libsqlite3-0/download
  3. http://packages.ubuntu.com/natty/i386/libtelepathy-glib0/download

Para la versión de 64 bits de Ubuntu.

  1. http://packages.ubuntu.com/natty/amd64/telepathy-gabble/download
  2. http://packages.ubuntu.com/natty/amd64/libsqlite3-0/download
  3. http://packages.ubuntu.com/natty/amd64/libtelepathy-glib0/download

Posteriormente es necesario instalar los paquetes .deb descargados anteriormente.  Esto se puede hacer de varias maneras, desde haciendo doble clic sobre ellos y dejando que el Ubuntu Software Center se encargue de ellos hasta, como yo lo prefiero, instalarlos desde línea de comando de la siguiente manera.

$ sudo dpkg -i libsqlite3-*.deb telepathy-gabble_*.deb libtelepathy-*.deb

Finalmente es necesario reiniciar Empathy para utilizar la nueva versión recién instalada.

Enlaces.

Problemas para reproducir sonidos en Processing con Minim bajo Ubuntu 10.10

Introducción.

Minim parece ser una muy buena librería para la reproducción y manipulación de archivos de audio utilizando a Processing como lenguaje de desarrollo.

Experimentando con esta librería intentaba reproducir dos sonidos provenientes de dos archivos WAV diferentes, sin embargo siempre obtenía el siguiente mensaje de error a pesar de que cuando lo intentaba con uno sólo funcionaba correctamente.

JavaSound Minim error
==== Couldn’t open the line: line with format PCM_SIGNED 44100.0 Hz, 16 bit, mono, 2 bytes/frame, little-endian not supported. ====

Este problema me sucedía tanto al utilizar AudioSample como con AudioSnippet.

Solución.

Aparentemente el problema está relacionado con la plataforma Ubuntu ya que esta apuesta por OpenJDK como máquina virtual de Java por encima de la distribución oficial de Oracle (sun-java6) y por este motivo desafortunadamente olvidaron agregarle el soporte para el sistema PulseAudio que utiliza por defecto esta distribución.

La solución propuesta en los foros es copiar los archivos necesarios desde los directorios de OpenJDK a sus equivalentes de SunJava6.  En mi caso que utilizo exclusivamente la última versión fue necesario que instalara temporalmente el paquete openjdk-6-jre-lib, copiara los siguientes archivos y lo desinstalara nuevamente.

$ sudo cp /usr/lib/jvm/java-6-openjdk/jre/lib/[ARCH]/libpulse-java.so /usr/lib/jvm/java-6-sun/jre/lib/[ARCH]/

$ sudo cp /usr/lib/jvm/java-6-openjdk/jre/lib/ext/pulse-java.jar /usr/lib/jvm/java-6-sun/jre/lib/ext/

Se debe tener cuidado al reemplazar la subcadena [ARCH] contenida en la primera instrucción a ejecutar con la correspondiente plataforma instalada realmente, ya sea de 32 bits (será entonces i386) o de 64 bits (amd64).  La ejecución del comando uname -m debería brindar información suficiente al respecto.

Enlaces.

Construír e instalar Firesheep en GNU/Linux Ubuntu 10.10

Introducción.

Firesheep es un plugin de Firefox que permite fácilmente secuestrar sesiones HTTP en ciertas condiciones y de ciertas aplicaciones web gracias a que estas utilizan el protocolo seguro de transporte HTTPS únicamente durante la autenticación, transmitiendo el resto de la información plana permitiendo que otros usuarios se apoderen de la información de la sesión de usuario y puedan acceder a sitios como Facebook, Twitter y blogs de WordPress entre otros con las credenciales del usuario afectado.  Esto es notoriamente grave en las inalámbricas públicas que pueden ser accedidas sin autenticación alguna.

La solución a esta debilidad de las aplicaciones web será entonces utilizar el protocolo HTTPS durante toda la sesión del usuario, no sólamente durante la autenticación como estas aplicaciones afectadas hacen actualmente.  Como protección desde el lado del usuario es posible utilizar plugins como HTTPS Everywhere que obligan al navegador a utilizar el protocolo HTTPS todo el tiempo que se acceda a determinados sitios web.  De igual manera han aparecido aplicaciones que prometen detectar y combatir el uso de Firesheep en las redes y con las que estaré experimentando próximamente.

Actualmente este plugin puede descargarse para Firefox bajo Windows y OSX, la versión para Linux no se encuentra actualmente disponible, sin embargo como el proyecto es de código abierto es muy fácil obtener el código y compilarlo para esta plataforma tal y como se describe a continuación.

Construír el software.

Instalar git.

El cliente de git es necesario para acceder al código fuente del plugin que se encuentra almacenado en un repositorio de GitHub.

$ sudo aptitude install git-core

Obtener el código fuente.

$ mkdir /tmp/firesheep && cd /tmp/firesheep

$ git clone https://github.com/codebutler/firesheep.git

$ cd firesheep

$ git submodule update --init

Instalar las dependencias.

Estos paquetes son necesarios para la construcción del plugin a partir de su código fuente.

$ sudo apt-get install autoconf libtool libpcap-dev libboost-all-dev libhal-dev xulrunner-1.9.2-dev

Construír el plugin.

$ ./autogen.sh

$ make

Instalar el software.

Desde Firefox elija la opción de abrir un archivo (CTRL+O).

File > Open File…

Y seleccione el archivo /tmp/firesheep/firesheep/build/firesheep.xpi.

Usar el software.

Una vez activado el plugin este puede visualizarse como una barra lateral mediante View > Firesheep o la combinación de teclas CTRL+SHIFT+S.

Firesheep en Ubuntu 10.10
Firesheep en Ubuntu 10.10

Su uso es muy sencillo, simplemente presione el botón Start capturing y espere a que la aplicación capture la información de las sesiones en la red, las cuales aparecerán en la barra lateral situada al lado izquierdo.

Enlaces.

Degradar PHP 5.3 a 5.2 en GNU/Linux Ubuntu 10.10

Para degradar PHP 5.3 a la versión 5.2 en GNU/Linux Ubuntu 10.10 se debe realizar el mismo procedimiento que se mencionó antes con la versión 10.04 del sistema operativo pero con una modificación del script utilizado.

Es necesario reemplazar el nombre de la versión Lucid Lynx de Ubuntu por la actual Maverick Meerkat en la siguiente línea.

grep ‘main restricted’ /etc/apt/sources.list|grep -v “#”| sed s/lucid/karmic/g | sudo tee /etc/apt/sources.list.d/karmic.list > /dev/null

De esta manera.

grep ‘main restricted’ /etc/apt/sources.list|grep -v “#”| sed s/maverick/karmic/g | sudo tee /etc/apt/sources.list.d/karmic.list > /dev/null

Descargue el script modificado y continúe con las instrucciones mencionadas en el artículo anterior.

Si desea instalar el módulo de Apache correspondiente ejecute el siguiente comando y no acepte la versión 5.3 para que sea instalada la anterior.

$ sudo aptitude install libapache2-mod-php5

The following NEW packages will be installed:

libapache2-mod-php5{b}

0 packages upgraded, 1 newly installed, 0 to remove and 20 not upgraded.
Need to get 0B/3,105kB of archives. After unpacking 8,704kB will be used.

The following packages have unmet dependencies:
libapache2-mod-php5: Depends: php5-common (= 5.3.3-1ubuntu9.1) but 5.2.10.dfsg.1-2ubuntu6.5 is installed and it is kept back.

The following actions will resolve these dependencies:

Keep the following packages at their current version:
1)     libapache2-mod-php5 [Not Installed]

Accept this solution? [Y/n/q/?] n
The following actions will resolve these dependencies:

Install the following packages:
1)     libapache2-mod-php5 [5.2.10.dfsg.1-2ubuntu6.5 (karmic-security, karmic-updates)]

Accept this solution? [Y/n/q/?] y

The following NEW packages will be installed:
libapache2-mod-php5

0 packages upgraded, 1 newly installed, 0 to remove and 20 not upgraded.
Need to get 2,643kB of archives. After unpacking 6,189kB will be used.
Do you want to continue? [Y/n/?] y

Configurar una cuenta de mensajería con Google Apps for Domains en Empathy

Procedimiento.

Ingrese al diálogo de configuración de cuentas (Messaging and VoIP Accounts) a través del siguiente menú o presionando F4.

Edit > Accounts.

Presione el botón de agregar una cuenta (Add).

Seleccione Google Talk como protocolo de la cuenta.

Ingrese su dirección de correo (Login ID) y su correspondiente contraseña (Password).

Acceda a la configuración avanzada de la cuenta (Advanced).

Configuración de cuenta GTalk (Google Apps)
Configuración de cuenta GTalk (Google Apps)

Seleccione las siguientes casillas de verificación.

  • Encriptación requerida (Encryption required).
  • Use SSL antíguo (Use old SSL).

Especifique la siguiente información bajo la sección (Override server settings).

  • Servidor (server): talk.google.com.
  • Puerto (port): 5223.

Presione el botón Aceptar (Apply) para almacenar los cambios.

Enlaces.

Instalar GNU/Linux Ubuntu 10.10 desde una unidad USB

Introducción.

Desde que descubrí la creación de LiveUSB con GNU/Linux he utilizado este método para instalar el sistema operativo en computadores y servidores.  Mientras que Ubuntu incluye su propia herramienta para este fin, otras distribuciones pueden ser utilizadas fácilmente mediante el uso del paquete Unetbootin.

El procedimiento no generaba ningún inconveniente hasta que intenté utilizarlo para instalar la versión 10.10 de Ubuntu.

Escenario.

Para instalar la versión 10.10 de GNU/Linux Ubuntu se descargó su correspondiente imagen ISO.

En un equipo con Ubuntu 10.04 se creó el LiveUSB mediante el procedimiento habitual, utilizando la aplicación usb-creator-gtk.

Se inició el equipo al cual se le va a instalar el sistema operativo con la LiveUSB como unidad de inicio (boot).

Problema: Unknown keyword in configuration file.

Al iniciarse el equipo desde la LiveUSB preparada con Ubuntu 10.10 se obtiene el siguiente mensaje que impide su instalación.

SYSLINUX 3.63 Debian-2008-07-15 EBIOS Copyright (c) 1994-2008 H. Peter Anvin
Unknown keyword in configuration file
boot:

Aparententemente hay un problema con la versión de syslinux incluída en Ubuntu 10.04 que impide la correcta ejecución de la LiveUSB.

Solución: actualizar syslinux.

Obtener la versión de syslinux mas actualizada del repositorio de paquetes oficiales.

$ wget http://mirrors.kernel.org/ubuntu/pool/main/s/syslinux/syslinux_4.01+dfsg-3ubuntu1_amd64.deb

$ wget http://mirrors.kernel.org/ubuntu/pool/main/s/syslinux/syslinux-common_4.01+dfsg-3ubuntu1_all.deb

Remover la versión actual de syslinux.  Tenga en cuenta que este paso también remueve otro software asociado como el usb-creator y el unetbootin.

$ sudo aptitude remove syslinux

Instalar la nueva version de syslinux recién descargada.

$ sudo dpkg -i syslinux-common_4.01+dfsg-3ubuntu1_all.deb syslinux_4.01+dfsg-3ubuntu1_amd64.deb

Volver a instalar el paquete usb-creator.

$ sudo aptitude install usb-creator-common usb-creator-gtk

Volver a generar la LiveUSB como lo indica el procedimiento original.

Enlaces.