Vala, Gtk, Pino y Twitter

Últimamente en mis ratos de ocio he estado aprendiendo un lenguaje nuevo llamado Vala.

Mi desafío para aprender a hacer algo en vala + gtk fue agregar una funcionalidad al cliente de twitter Pino, que dicho sea de paso esta bastante bueno. La funcionalidad es bastante simple, agregar un nuevo proveedor para acortar URLs bit.ly

Complejidades, bondades y rarezas que me encontré:

  1. Facilidad para enganchar las señales.
  2. Lo parecido a Java del lenguaje, lo que me ayudo mucho, aquí una ayuda para los Java Developers
  3. Aún le falta mucho a los IDEs (valide esta muy verde).
  4. El compilador tiene poca ayuda, sólo dice que fallo pero no en donde ni por qué, rara vez te dice te falta un “;”
  5. Aun son enredado los script de compilación, al más puro estilo de macros m4, automake y vainas por el estilo, aquí hay mucho por mejorar.
  6. La API si bien es cierto esta bien documentada en valadoc aún prefiero la facilidad para encontrar las cosas del javadoc

Les dejo aquí mis mejoras de pino-twitter-2.0.5.tar y a ver si lo van mejorando un poco más, por lo pronto voy a subir los cambios al tracker para que los incluyan en la release.

Para compilar es simple, obviamente deben tener todas las herramientas para compilar:

1
2
3
4
$ ./waf configure --prefix=/home/tu_user/directorio_destino
$ ./waf clean buid install
$ cd /home/tu_user/directorio_destino/bin
$ ./pino &

Espero sus comentarios

Crash de Glipper al iniciar Gnome

Desde hace tiempo (2 o 3 releases de Ubuntu hacia atrás) que Glipper viene haciendo clank al iniciar la sesión de Gnome, no he encontrado alguna razón del por qué. Buscando en los reportes alguien dijo que había que darle tiempo para que partes del escritorio estuvieran cargadas y luego pudiera correr Glipper.

Para corregir el crash de Glipper al inicio de sesión haz lo siguiente, edita el siguiente archivo /usr/lib/glipper/glipper con tu editor de texto favorito.

1
$ sudo vim /usr/lib/glipper/glipper

Y justo antes de que empiece la ejecución agrega un par de líneas, es un timer que hace un pequeño delay al inicio (justo bajo los comentarios línea 21 y 22):

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#!/usr/bin/env python

# Glipper - Clipboardmanager for GNOME
# Copyright (C) 2007 Glipper Team
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2 of the License, or (at your option) any later version.
#
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this library; if not, write to the
# Free Software Foundation, Inc., 59 Temple Place - Suite 330,
# Boston, MA 02111-1307, USA.
#
import time
time.sleep(10)

import gobject
gobject.threads_init()

Con eso debería bastar, si aun sigues con el problema juega con el numerito (10) hasta que encuentres el tiempo apropiado para tu inicio de sesión.

Nótese que esto es un parche y que no arregla el problema de fondo, seguiré investigando a ver que puede hacer, pero con esto ya queda funcionando.

WTF: Apagar el equipo

Los síntomas de cuando esto pasa es que el proceso x-session-manager esta al 100% de CPU, no deja abrir mas ventanas/aplicaciones y todo se vuelve muy lento (excepto los efectos de compiz ¿curioso no?). Entonces quiero reiniciar usando el applet o Sistema->Apagar y levanta esta “ventana”. WTF???

Escuchando: “Queen - Too Much Love Will Kill You

gnome-do y pastebin

He activado el plugin de pastebin para gnome-do y es maravilloso. ¿qué es? simple… es una forma fácil de compartir trozos de textos/codigo fuente a través de un sitio web.

Cuantas veces te ha pasado que tienes un código fuente y quieres compartirlo rápidamente para revisión con otra persona que esta a unos cuantos kilómetros de distancia y no quieres usar el email por diversas razones. Esta aplicación te permite usar un recurso llamado pastebin en donde puedes pegar (como su nombre lo indica) cualquier texto. Tiene como chiche adicional, el que puedas decirle si es código fuente y el lenguaje en el que esta escrito, de esta forma lo formatea y/o colorea, notable no?? Bueno… luego de que pegas tu texto pastebin te retorna una URL corta que puedes compartir fácilmente con otros usuarios.

Ahora con gnome-do es mas facil, solo debes seleccionar un trozo de código fuente y aplicar el Shortcut de gnome-do (por lo general es Super+ Space)… veamos un ejemplo:

  1. Seleccionas el código/text que quieras enviar a pastebin.
  2. Presionas el shortcut para gnome-do (Super+space)
  3. Escribes pastebin (ahí buscara el plugin)
  4. Presionas Tab para pasar al siguiente cuadro, donde pones: “Selected Text
  5. Luego otra vez Tab y te saldra otro cuadro con los tipos de lenguajes, seleccionas el adecuado.
  6. Presionas Enter para confirmar

Luego el plugin de pastebin te retornara la URL de donde quedara tu contenido seleccionado, ahí podrás abrirlo con el navegador que tengas por defecto en tu escritorio (Firefox por supuesto ;) )

Si confirmas la URL (presionando Enter) se abrirá la URL en tu navegador… y listo!! así quedaría un envió a pastebin usando como lenguaje a Java5.

Listo el mini tutorial de gnome-do, otro día publicaré alguna que otra bondad.

Glosario:

  • URL: Uniform Resource Locator
  • Shortcut: atajo de teclado

Escuchando: “Randy Crawford - Fallen

Facilitando todo con Gnome-do

Desde un tiempo a esta parte, he estado utilizando gnome-do para lanzar aplicaciones, buscar contactos y otras cosillas.

Hace un par de semanas instalé la versión de desarrollo de Gnome-do y esta notable. Le agregaron un packs de plugins que hacen que sea cada vez más potente.

Por ejemplo, podemos enviar un tweet desde gnome-do utilizando el plugin de twitter (obviamente hay que registrar user/passwd en la configuración del plugin):

También podemos integrarlo con pidgin y escribir un mensaje a algún contacto que este disponible (saludos a @ceral_bars):

Les dejo los repositorios para que puedan probarlo.

Nota: No es la versión final, es una versión de desarrollo por lo que pueden encontrar algunos bugs, la idea es reportarlos :D

1
2
deb http://ppa.launchpad.net/do-core/ubuntu hardy main
deb-src http://ppa.launchpad.net/do-core/ubuntu hardy main

Luego lo clásico:

1
2
$ sudo apt-get update
$ sudo apt-ger install gnome-do gnome-do-plugins

Escuchando: “Andy Timmons - Lydia

Tercera reunión de formación de Hacker Gnome Chile

La cita seria en el DUOC Sede Antonio Varas, Providencia Stgo. el día sábado 9 de Octubre a partir de las 10 de la mañana.
Charlas confirmadas:

  • GNOME HIG, un mejor escritorio - Fabián Arias
  • Un paseo por GLib - Claudio Saavedra
  • TextView Tutorial - Fernando San Martín
  • GConf Library - Pedro Villavicencio
  • Taller de Desarrollo GNOME - Felipe Barros
  • Programación de Applets en GNOME - Juan Carlos Inostroza
  • El Proyecto Mono - Pedro Villavicencio

Los interesados en participar vean la pagina de gnome chile

18 de Sept... comiendo harto y configurando el notebook

Holas…

Después de comer harto… harto!!, unos wenos anticuchos y unos vasitos de vino me vine a jugar un rato con el notebook, tranquilito después que todos estaban durmiendo la siesta me dedique a bajar algunos themes e iconos para Gnome. Quedó groso!!!

Además de dejarlo lindo baje algunos Applets de Gnome, específicamente el NetSpeed Applet, para ver las tasas de transferencia de la interfaz de red.

Aquí les dejo un Pantallazo de como quedó y las url para que jueguen con el arte de Gnome.

Otra cosa entrete que logre hacer es echar a correr los sensores de la batería en el notebook, me metí al grupo de irc #fedora-es y me ayudaron un poco, aquí les dejo lo que aprendí:

En el archivo grub.con deben activar el acpi para el manejo de energía.

title Fedora Core (2.6.8-1.521)
root (hd0,5)
kernel /vmlinuz-2.6.8-1.521 ro root=LABEL=/ rhgb quiet <strong>acpi=on</strong>
initrd /initrd-2.6.8-1.521.img

Desastre en el PC... porrazo tras porrazo

Hoy fue un día desastroso dentro de mi PC, se me murió el entorno gráfico de Fedora Core 2 :( RIP, se me queda pegado en el inicio de sesión, justo cuando carga el Gnome Panels… en fin… me dio la tontera e instale Debian Sarge para probar esa distro.

Al principio todo Ok, logre levantar el X11 y ver un poco el Gnome pero GRANDE!!! no supe como cambiar la resolución por mas que modifique el XFree86… bueno algo de experiencia gane… como les contaba estuve metido todo el día jugando con la configuración de mi compu, luego instale los drivers de mi nVidia y se murió todo… hice algunos cambios en las configuraciones y me tiro rico Kernel Panic!! :(

Para leer un poco mas sobre Debian, reinicie mi PC y entre con WinXp y resulta que no partió :( por mas que intente no partía, modifique a mano el grub para ver las opciones y nada… en ese momento se me paso por la mente la perdida por completo de mis datos… era lo peor… así que en un acto desesperado volví atrás… quise bootear con el CD de WinXp para poder recuperar la partida y sorpresa… no partía :( así que inicie con FC2 nuevamente y por fin!!! inicio FC2 y me configuro el grub.conf para que iniciara wintendo :p.

Luego que tenia instalado FC2 me entretuve bajando los nuevos fuentes de Gnome2.8 y se me fue de las manos la instalación, compilé una que otra cosa pero al final se pudrió todo… luego les contare como me fue con Gnome2.8 que espero tenerlo andando luego. Luego publicaré algunas cosillas para tener documentado algunos tips y howto’s rápidos.

Escuchando… Sarah McLachlan… “Ben’s Song”

Links de interés: