17 años en Internet

19 enero 2012

Google Calendar incrustado en tu fondo de escritorio

Fuente: webupd8.org

He configurado mis escritorios para que muestren todos mis calendarios de Google incrustados en mi fondo de escritorio. Realmente lo que hago es coger el reslulado del "gcalcli" y mandárselo a "conky". "gcalcli" es la abreviación de Google Calendar Client y se trata de una aplicación que nos permite consultar nuestros calendarios por consola. Una vez configurado a nuestro gusto, podemos imprimir el resultado de su ejecución a través de conky, una aplicación pensada (en un principio) para monitorizar sistemas Unix a través de las X. Esto significa que la visualización de nuestro Google Calendar debería de funcionar independiente del entorno que utilicemos, ya sea Unity, GNome, KDE, LXDE o XFCE.

El resultado queda así de curioso:


Al ser software libre, ambas aplicaciones deberían de ser fáciles de instalar en cualquier sistema, ya sea a través de apt-get, yast o yum. Por ejemplo, desde una distribución Ubuntu o Debian bastaría con teclear "sudo apt-get install gcalcli conky".

Para configurar "gcalcli" debermos de crear el fichero ".gcalclirc" dentro de nuestro directorio personal. En él insertaremos únicamente la configuración referente a tu nombre de usuario de Google y su respectiva contraseña, la cual (por desgracia) se almacenará en claro.

Contenido del ${HOME}/.gcalclirc

[gcalcli]
user: usuario@gmail.com
pw: contraseña
Acto seguido realiza una prueba para verificar su correcto funcionamiento:
~$ gcalcli --nc --cals=owner --width=15 calw 4
Verás que te imprimirá toda la información en inglés, e incluso puede que se te descentre si utilizas acentos. No obstante, a base de jugar con tuberías y "sed" puedes obtener un resultado tan bonito como el de mi captura de pantalla.

Para configurar el conky nos va a hacer falta más de lo mismo, vamos a crear el archivo ".conkyrc" dentro de tu directorio personal y le añadiremos el siguiente contenido:

alignment top_right
background no
border_width 0
cpu_avg_samples 2
default_color white
default_outline_color white
default_shade_color white
draw_borders no
draw_graph_borders yes
draw_outline no
draw_shades no
use_xft yes
xftfont DejaVu Sans Mono:size=12
gap_x 5
gap_y 60
minimum_size 5 5
net_avg_samples 2
double_buffer yes
out_to_console no
out_to_stderr no
extra_newline no
own_window yes
own_window_class Conky
own_window_type override
own_window_transparent yes
own_window_hints undecorated,below,sticky,skip_taskbar,skip_pager
stippled_borders 0
update_interval 1.0
uppercase no
use_spacer none
show_graph_scale no
show_graph_range no
text_buffer_size 8096
TEXT
${execi 300 gcalcli --nc --cals=owner --width=15 calw 4}
Para verificar, abre una shell y teclea el comando "conky". En menos de un minuto debería de refescarse tu escritorio, mostrando el resultado de gcalcli en segundo plano. Si usas LXDE y no te funciona, prueba a añadir la línea "own_window_class normal" entre "text_buffer_size 8096" y "TEXT".

Si vas a querer arrancar conky de inicio, te recomiendo que hagas antes una shell donde se invoque tras detectar que tu equipo está conectado a internet. Si no lo haces, siempre que estés offline tendrás un molesto "Error de sincronización". Este ejemplo podría servirte:

#!/bin/bash
conexion=2
while [ $conexion -ne 0 ]
 do
 ping -c 1 google.com >/dev/null 2> /dev/null
 conexion=$?
done
conky

3 comentarios:

  1. Una vez mas, gran aporte Sebas, en verdad se ve curioso el escrotorio =)

    ResponderEliminar
  2. Ya ves, ¿y lo bien organizado que estoy ahora? =)

    ResponderEliminar
  3. :o No entendí cómo hacerlo :(

    ResponderEliminar

Si te ha gustado la entrada o consideras que algún dato es erróneo o símplemente deseas dar algún consejo, no dudes en dejar un comentario. Todo feedback es bienvenido siempre que sea respetuoso. También puedes contactarme vía Twitter @Hamster_ruso si lo consideras necesario.