28 octubre 2006

Comandos DCOP

Dándole vueltas al asunto de la integración de Perlbox-voice con KDE, a cuenta del ilocalizable plugin que anuncia la web del proyecto, me he dado cuenta de que ni siquiera hace falta: sólo hay que tirar de los comandos DCOP.

En el envío sobre reconocimiento de voz decía que el plugin de Perlbox para KDE permitía (copipego de la web del proyecto) switch virtual desktops, invoke the desktop menu, switch wallpaper or lock the screen. Pues bien, el Desktop Communication Protocol nos permite hacer todo esto mediante comandos, que son interpretados por el ejecutable dcop. Comandos que se pueden asociar en Perlbox a una orden concreta. Aquí va una pequeña lista:
  • Cambiar de un escritorio a otro: dcop kwin KWinInterface setCurrentDesktop <número de escritorio>

  • Saltar al siguiente escritorio: dcop kwin KWinInterface nextDesktop

  • Saltar al escritorio anterior: dcop kwin KWinInterface previousDesktop

  • Abrir el Menú K: dcop kicker kicker popupKMenu 100

  • Lanzar el cuadro de diálogo "Ejecutar comando": dcop kdesktop KDesktopIface popupExecuteCommand

  • Alinear los iconos: dcop kdesktop KDesktopIface lineupIcons

  • Refrescar: dcop kdesktop KDesktopIface refresh

  • Cambiar el fondo de escritorio: dcop kdesktop KBackgroundIface changeWallpaper

  • Bloquear la sesión: dcop kdesktop KScreensaverIface lock

  • Cerrar la sesión: dcop kdesktop KDesktopIface logout

Entre la documentación de desarrollo de KDE podéis encontrar un magnífico tutorial (en inglés) sobre cómo crear y usar una interfaz DCOP para una aplicación KDE sencilla.

26 octubre 2006

Voces en Linux (y II): Reconocimiento

Lo prometido es deuda, y yo prometí hablar sobre el reconocimiento de voz en Linux, así que aquí estoy.

Si en la síntesis de voz Festival es el rey indiscutible, en el reconocimiento tenemos una pareja de ases: Sphinx2 y Perlbox-voice.

Sphinx2 es el conjunto de librerías (motor) de reconocimiento de voz. Es capaz de reconocer voces con independencia del locutor (no necesita entrenamiento) y una de sus características más importantes es el reconocimiento continuo (no por palabras). En Debian testing podeis instalarlo con sólo hacer

apt-get install sphinx2-bin

Perlbox-voice es el wrapper perfecto para Sphinx2. Está escrito en Perl/Tk y no sólo hace uso de Sphix2 sino también, como no, de Festival. Es decir, también soporta síntesis. La única pega es que, de momento, sólo soporta el inglés.

En resumen, Perlbox-voice queda a la espera de las órdenes acústicas que tengais configuradas para responder con el comando (o la frase) correspondiente. Es decir, podemos decirle "web" para que él ejecute Opera, o "mail" para que ejecute KMail... En fin, ya os podeis hacer una idea. Yo ya casi ni uso el ratón... mi herramienta principal a la hora de manejar soft es el micro :)

Por ejemplo, un comienzo de sesión típico en mi Debian viene a ser algo así:

→YO: Hello (hay que ser educado)
→Perlbox: Hola akira (sí, con say como comando responde hablando y, esta vez sí, en español, ya que para eso usa Festival).
→Y: Music
→Perlbox ejecuta amarok --play-pause, y comienza la música.
→Y: Next (no me gusta esta canción)
→Perlbox ejecuta amarok -f, y pasa a la siguente canción :)
→Y: Mail
→Perlbox ejecuta kmail
→Y: Feed
→Perlbox ejecuta akregator
→Y: Music
→La música se pausa
→Y: Odiss
→Perlbox ejecuta opera http://www.odiss.org/, a ver qué se cuece en el foro
→Y: Donkey
→La mulita a rular...

Y en fin, ya os podeis hacer una idea bastante aproximada de lo que se puede hacer con un poco de imaginación :)

La instalación es bastante sencilla, ya que en la página de descarga podemos obtener el paquete DEB (noarch), o incluso el RPM o un instalador genérico. Lo único a tener en cuenta es que, para funcionar, necesita del paquete perl-tk:

apt-get install perl-tk

La configuración es sumamente sencilla. Prácticamente meterle los comandos y a rular. En la web dice que hay disponible un plugin para KDE pero yo no lo he encontrado por ningún sitio :( Y mirad que estaría interesante, porque, según dice la web, you can switch virtual desktops, invoke the desktop menu, switch wallpaper or lock the screen, osea, ya la locura total... En fin, si alguien da con él, que avise ;)

ACTUALIZADO: Estoy tonto o estoy tonto. Resulta que el plugin de KDE ya viene instalado y listo para usar. Se puede cargar desde la configuración :$

24 octubre 2006

Voces en Linux (I): Sintetizando

Empiezo con este post una serie de dos envíos sobre la síntesis y el reconocimiento de voz en Linux. Qué software existe y qué utilidades darle. Espero que lo encontreis interesante y/o entretenido :)

Este primer envío trata sobre la síntesis de voz. En esto hay un rey indiscutible en Linux: Festival. Prácticamente cualquier utilidad que queramos usar en Linux para síntesis de voz hace uso de este motor: Kmouth, KTTS (el administrador de texto a voz de KDE), Konqueror, Kate, Kismet... Todas estas aplicaciones usan Festival como motor para la síntesis de voz.

Instalarlo en nuestro sistema Debian es tan sencillo como hacer

apt-get install festival festvox-ellpc11k

Con esto instalamos el motor y la voz en castellano (festvox-ellpc11k). Este último paquete está en non-free, por lo que hay que tener estos repositorios en nuestro sources.list para poder instalarlo. Lo primero que debemos hacer tras instalarlo es editar el archivo /usr/share/festival/voices.scm e ir a la parte donde dice defvar default-voice-priority-list, y poner el_diphone el primero de la lista. Así la voz por defecto será el castellano. Y ya lo tenemos listo para usar.

Pero ¿para qué lo usamos? Como he dicho antes, hay un montón de aplicaciones que hacen uso de este motor, así que entretenimiento hay para rato. Voy a hacer un repaso rápido de algunas de ellas, para que vosotros decubráis el resto.

Kismet. Esto va de coña para las sesiones de wardriving. Este sniffer wireless podrá alertarnos de viva voz de las redes que vaya localizando, incluyendo información sobre su encriptación, SSID, canal, etc.

Para ello basta con editar el archivo de configuración de Kismet (/etc/kismet.conf o /usr/local/etc/kismet.conf, dependiendo de si lo habéis instalado con apt o desde código fuente) y buscamos donde dice # Does the server use speech?. Cambiamos speech=false por speech=true, y speech_type=nato por speech_type=speech. Por último sólo queda decirle qué queremos que nos diga cuando encuentre una red encriptada (speech_encrypted) y una red abierta (speech_unencrypted). Recordad que sustituirá %b por el BSSID, %s por el SSID y %c por el canal. Ya podemos perder la pantalla de vista mientras conducimos tranquilamente, que Kismet se ocupará de informarnos de lo que va encontrando ;)

KTTS. KTTS (kttsmgr) es el administrador de KDE de texto a voz. Su configuración es muy sencilla e intuitiva. Con él podemos hacer que KDE nos avise por voz cuando recibimos un correo nuevo, cuando se hayan descargado los feeds, cuando se conecte/desconecte un adaptador de Bluetooth al equipo, cuando K3b haya terminado de grabar un disco y mil cosas más.

Konqueror. Usando el motor de Festival, Konqueror será capaz de leernos las webs (completas o la parte seleccionada). En Debian Sarge es necesario instalar el paquete konq-speaker. Con Etch no es necesario.

Kate. Al igual que Konqueror, Kate podrá leer los archivos de texto. Es necesario el paquete kate-plugins.

KMouth. Esta pequeña utilidad es simplemente un front-end para Festival: simplemente leerá el texto que le escribamos.

En fin, esto es todo lo que doy de sí, aunque el tema da aún para mucho. Os invito a que investiguéis por vuestra cuenta, ya que hay muuuucho más. Como siempre, los comentarios están abiertos para correcciones, puntualizaciones y para comentar lo que os dé la gana :)

Mañana (o quizá pasado mañana, que ando con mucho trabajo) hablaré sobre el reconocimiento de voz en Linux. Esta vez seremos nosotros los que hablemos, y nuestro sistema el que escuche ;)

22 octubre 2006

Bug en kdesu

Hace unos días Debian Etch ofreció una actualización con el recién salido del horno KDE 3.5.5. Desde entonces, kdesu devuelve inexorablemente un "Contraseña incorrecta, inténtelo de nuevo" cuando se introduce la password de root.

Podeis ver la descripción completa del bug en Bug#393041: kdesu no longer accepts correct password.

Pues nada, a esperar la corrección. Recordad mientras tanto que existen alternativas, como gksu.

ACTUALIZADO: El bug ya está corregido. Ya podéis seguir haciendo kdesu nmapfe ;)

19 octubre 2006

Disponible la beta de Flash 9 para Linux

¡Ya está aquí!¡Ya llegó! Por fin tenemos una beta de Flash Player 9 para Linux. Y qué ganas. Muchas de las webs ya usaban la versión 8 y no se podían visualizar con Linux, ya que la última versión para nuestro sistema era la 7. Pero eso se terminó.

Podemos descargar el plugin para el navegador de aquí. Tan fácil como descomprimir y copiar el archivo libflashplayer.so en el directorio de plugins de tu navegador.

Ya podemos ponernos moraos a ver PornoTube :P

15 octubre 2006

V838 Monocerotis

V838 Mon es una estrella situada a unos 32.000 años-luz del Sistema Solar, en la constelación del Unicornio (Monoceros). En el año 2002 se observó un estallido en la estrella que ha dado origen a una nebulosa planetaria, recientemente fotografiada por el HST. Dicha foto podéis verla pinchando aquí.

¿Y a qué viene este pedazo de off topic? Pues a que dicha foto confirma nuestras sospechas. Y si no mirad...


Firefox y V838 Monocerotis


IE jamás podría soñar con llegar tan lejos...

14 octubre 2006

Arreglando los errores GPG en apt-get

Hace un tiempo que el gestor de paquetes apt de Debian incluye un sistema de verificación de firmas, para que los muy paranoicos podamos estar tranquilos con el software y las actualizaciones que instalamos mediante apt-get.

Sin embargo, la firma de los repositorios Marillat no está disponible por defecto, y al hacer un apt-get update se nos muestra el error

W: GPG error: http://debian-multimedia.org etch Release: Las firmas siguientes no se pudieron verificar porque su llave pública no está disponible: NO_PUBKEY 07DC563D1F41B907
W: Tal vez quiera ejecutar 'apt-get update' para corregir estos problemas


La solución es importar nosotros mismos la clave PGP de Christian Marillat desde el servidor de claves:

akira@takashi:~$ gpg --keyserver wwwkeys.eu.pgp.net --recv-keys 07DC563D1F41B907

gpg: solicitando clave 1F41B907 de hkp servidor wwwkeys.eu.pgp.net
gpg: clave 1F41B907: clave pública "Christian Marillat " importada.
gpg: Cantidad total procesada: 1
gpg: importadas: 1


akira@takashi:~$ gpg --armor --export 07DC563D1F41B907 | sudo apt-key add -

OK


Otros repositorios no tienen la clave pública en un servidor de claves, pero igualmente está disponible. Por ejemplo los repositorios para tor:

deb http://www.northernsecurity.net/debian ./

En este caso echamos mano directamente de apt-key. Lo primero es encontrar su clave pública, que está publicada en su propia web, aquí. La guardamos en un archivo en local (recordad que la extensión debe ser .asc), y hacemos

akira@takashi:~$ sudo apt-key add archivo_de_clave.asc

Así los errores de este tipo desaparecen, y, lo más importante, los paquetes que descarguemos de estos repositorios podrán ser verificados mediante su clave PGP.

BSOD Top 10


Miguel Carrasco ha reunido, para regocijo de linuxeros, el Top 10 de las Blue Screen of Death, más un bonus.

Algunas son ya todo unos clásicos, como la que le salió a Bill Gates durante la presentación del Win98, y otras bastante más recientes, como la llegada de las BSOD a MacIntosh gracias a la introducción de los chips x86 en Mac. Algunas incluso acojonan: imaginad estar esperando tomar un vuelo en un aeropuerto y ver la BSOD en una de las pantallas. Da que pensar...

13 octubre 2006

aptitude moo

Esta entrada en La secta del ñu me ha recordado un huevo de pascua de Debian, no tan conocido como el celebérrimo apt-get moo (have you mooed today? xD)

akira@takashi:~$ aptitude moo
No hay ningún huevo de pascua en este programa.
akira@takashi:~$ aptitude -v moo
Realmente no hay ningún huevo de pascua en este programa.
akira@takashi:~$ aptitude -vv moo
¿No le he dicho ya que no hay ningún huevo de pascua en este programa?
akira@takashi:~$ aptitude -vvv moo
¡Deje de hacer eso!
akira@takashi:~$ aptitude -vvvv moo
Vale, vale, si le doy un huevo de pascua, ¿se irá?
akira@takashi:~$ aptitude -vvvvv moo
De acuerdo, usted gana.

/----\
-------/ \
/ \
/ |
-----------------/ --------\
----------------------------------------------

akira@takashi:~$ aptitude -vvvvvv moo
¿Qué es? Un elefante siendo devorado por una serpiente, evidentemente.


Me encanta :)

10 octubre 2006

IceWeasel


Así es como se han solucionado las desavenencias entre Debian y la Mozilla Fundation. Para el que no viva en este mundo, os diré que debido al Contrato Social de Debian, la distro instalaba el paquete Firefox con otro logo, ya que el suyo (conocido y usado en buena parte de la galaxia) tiene copyright.

Como usar el nombre Firefox y cambiarle el logo no está permitido por la Mozilla Fundation, y sin embargo renombrarlo sí lo está, la solución es obvia: nuevo nombre y otro logo. Y muerto el perro se acabó la rabia.

Además los cambios incluirán algunas mejoras de seguridad. Tanto mejor.

Fuente: esDebian

09 octubre 2006

La mano que mece la cuna

[...] un ejecutivo de un fondo de capital riesgo llamado BayStar, que asegura bajo juramento que invirtió $50 millones después de que Microsoft le garantizase su inversión en SCO. El directivo asegura que fue contactado en 2003 por un ejecutivo de Microsoft, Richard Emerson, que le propuso la posibilidad de invertir en SCO. La intención era apoyar a SCO y a su demanda contra Linux, pero evitando que Microsoft se viese asociada con un ataque hacia IBM o Linux. Tras las correspondientes negociaciones, que implicaron a otros dos directivos de Microsoft, se llegó al acuerdo de que Microsoft garantizaría "de alguna manera" la inversión de BayStar en SCO, aunque Microsoft rechazó poner nada por escrito. Tras la inversión, las preocupaciones del ejecutivo de la compañía de capital riesgo crecieron tras comprobar que la práctica totalidad de la inversión se dedicaba a pagar los honorarios del bufete de David Boies, encargado de llevar la demanda. Al comprobar el progresivo deterioro del precio por acción de SCO y la imposibilidad de contactar tanto con SCO como con Microsoft, la empresa acabó retirando con pérdidas sus posiciones en SCO. Tras la demanda, Microsoft llegó además a un "sospechoso" acuerdo de $16 millones para licenciar tecnología de SCO, algo que se especula correspondió también a un supuesto "pago de favores" que la compañía de Redmond, por supuesto, niega categóricamente.

El tema ya apesta :@

Fuente: Enrique Dans