A Django site.
October 13, 2008

Diego Escalante
dieguito
hack my cow
» Tour GNOME Latinoamérica 2008

Las dos semanas que vienen estaré ausente, ¿por qué?, pues porque me voy de Tour cual estrella de rock junto con el resto de la banda de garage.
Iré en Chile al Encuentro Linux y a Brasil a Latinoware :). La razón está explicada en mi arenguero release mediático del tema, extrañenme:

La invasión ha comenzado, este fin de Octubre los gnomos de toda la región recorreremos la misma para conquistar mentes y ciudades para la horda.



¡Es el primer Tour GNOME Latinoamérica! A partir del 22 de Octubre hasta el 1 de Noviembre, gnomos de Chile, Brasil y Perú recorrerán el continente esparciendo fanatismo sobre el mejor escritorio libre.

Todo comenzará en Concepción, Chile donde el 9no Encuentro Linux alojará a todos los gnomos chilenos conocidos por estas tierras (Germán Poó, Fernando San Martín, Pedro Villavicencio) y a uno peruano que nadie conoce (Diego Escalante).
Por si no fuese poco tener 3 días de presencia GNOME, luego del Encuentro Linux el equipo de GNOME Chile está organizando una nueva edición del Día GNOME, ¡un día completo dedicado a GNOME!.

Luego de toda la diversión en tierras mapochas, los mismos sospechosos presentes en Chile tomarán aviones, jeeps, barcos y alas delta hacia Foz de Iguaçu, Brasil.

Latinoware, una de las conferencias más masivas de nuestra región, alojará el 5to Fórum GNOME organizado por GNOME Brasil.
Ahí estará presente la HORDA (porque son muchísimos) de colaboradores cariocas de GNOME, entre ellos su heroína nacional Izabel Valverde. Bruno Boaventura y John Wendell también estarán ahí aportando su cuota gnomera.

¿Estás cerca a Concepción o Iguaçu? ¡Entonces no seas tonto y revisa las webs de ambos eventos para enterarte de cómo puedes estar ahí!

El próximo año seguramente se hará una llamada a sedes, así que si quieres ser parte de la fiesta, ¡más vale que vayas convenciendo a tu LUG o que comiences a colaborar con el proyecto!

Más información en la web del Tour.

August 31, 2008

Diego Escalante
dieguito
hack my cow
» Tarde productiva

Hoy estuvimos virtualmente reunidos algunos en el IRC y se hicieron algunas cosas buenas, ojalá haya otra reunión pronto, ya van dos. Wii.

Hecho:


Conclusiones:
  • Es básico tener una computadora al lado, laptop o desktop
  • Es difícil sacar de la cabeza algunos conceptos asimilados en la práctica para explicarlos
  • Tengo q escribir un post de cómo hacer parches (para complementar el de cómo traducir)
  • El proyecto necesita comenzar ASAP, ¡hay demanda!
  • C es genial, la gente no sabe lo q se pierde

Referencias:

August 20, 2008

Diego Escalante
dieguito
hack my cow
» Sobre mockups

Titlebars, según Manuel:

August 17, 2008

Diego Escalante
dieguito
hack my cow
» La lluvia y mi kernel roto

Rain in Birmingham
Rainy day in Birmingham


En Lima ha estado lloviendo bastante, y hace mucho frío, he estado ingeniándome maneras poco usuales de abrigarme, omitiré los detalles.

Estaba yo haciendo un downgrade forzado al kernel 2.6.24 pues suspender la laptop se rompió en 2.6.26 (y como siempre nadie hará caso al bug pues todos los hackers usan X60s que funcionan perfecto).
Entonces la situación es que tengo un módulo (r8180) que depende de su propia variante de ieee80211 (ieee80211-rtl), este módulo funciona perfecto con mi kernel 2.6.26 y funcionaba perfecto con el 2.6.24 antes de actualizar a 2.6.26. Ahora me decía que las versiones de los símbolos ieee80211_wake_queue y ieee80211_stop_queue no coincidian con las que [r8180] esperaba.

Oh misterio... lo primero, investigar con grep si es que en el código fuente de r8180 estaba alguna mención a una versión específica de ambos símbolos, el primer sospechoso fue un .h importado de ieee80211-rtl, pero no era eso...
Varios grep después me di cuenta de que quizá ieee80211-rtl podría ser el culpable, entonces salté a ese directorio a revisar si existía alguna mención a versiones y símbolos.
Ahí sí tuve suerte, el archivo Module.symvers generado al construir el módulo contenía una mención a los símbolos q buscaba:

0x7879cbbc ieee80211_stop_queue /home/diego/hack/rtl/eee/ieee80211/ieee80211-rtl EXPORT_SYMBOL
0x7eb7b0a4 ieee80211_wake_queue /home/diego/hack/rtl/eee/ieee80211/ieee80211-rtl EXPORT_SYMBOL


Entonces, la gran interrogante era de dónde es que r8180 estaba leyendo la versión del símbolo conflictivo... ajá, los kernel headers del sistema!.
Resulta que en /usr/src/linux se encuentra un Module.symvers con versiones para todos los símbolos de los módulos del kernel (igual al Module.symvers del código q yo estaba analizando), pues, como el kernel trae su propia versión de ambos símbolos, r8180 estaba leyendo desde ese archivo la versión del símbolo que necesitaba. Esto obvio estaba mal :). r8180 debía esperar la versión de esos dos símbolos que ieee80211-rtl iba a proporcionar.

Solución: editar /usr/src/linux/Module.symvers para que pongamos ahí la versión de los símbolos que ieee80211-rtl va a ofrecer al instalarse.

Nota obvia: hice la modificación porque sé que no voy a instalar nada más que use ieee80211 y porque sé lo que hago (o al menos creo saberlo). Esta no es una solución mágica para que tu módulo favorito vuelva a funcionar, es solo anécdota.

Queja anexa: ¿por qué no des-arreglan lo q sea que creyeron arreglar en 2.6.25+ y que rompió mi suspend/resume :(?.

August 13, 2008

Diego Escalante
dieguito
hack my cow
» Evolution plugins hacking

Hace como dos meses, Yannick[0] me contactó para preguntarme si podía implementar para él un plugin de Evolution. Concretamente quería el plugin que se pedía en este bug de eons de antiguedad. Por cierto Beeznest (la empresa de Yannick) tiene un post sobre el tema.

El reto entonces era implementar un plugin de Evolution que permitiese responder a los correos recibidos con respuestas prefabricadas, templates.
El plugin debía permitir reemplazar ciertos "tokens" por información del usuario, por ejemplo reemplazar "%from%" por el nombre del remitente a quien se le estaba respondiendo. Además, debía ser posible tener una carpeta de templates con infinitas subcarpetas.


Resultado final

Lo más simple, y por lo que hay q empezar, es habilitar nuestro plugin en la infraestructura de compilación, osea en los Makefiles. Esto es trivial y solo hay que decirle al configure.in que construya nuestro Makefile:
plugins/templates/Makefile

Luego, hay que crear la infra para el plugin mismo:

INCLUDES = \
-I$(top_srcdir) \
$(EVOLUTION_MAIL_CFLAGS)

@EVO_PLUGIN_RULE@

plugin_DATA = org-gnome-templates.eplug org-gnome-templates-ui.xml
plugin_LTLIBRARIES = liborg-gnome-templates.la

liborg_gnome_templates_la_SOURCES = templates.c
liborg_gnome_templates_la_LDFLAGS = -module -avoid-version

EXTRA_DIST = org-gnome-templates.eplug.xml org-gnome-templates-ui.xml

BUILT_SOURCES = org-gnome-templates.eplug
CLEANFILES = $(BUILT_SOURCES)


Este es el Makefile de mi versión original, la incluida en trunk de Evolution es distinta y tiene algunas cosas extra.

Basicamente hay que decirle a autofoo que queremos que nos construya un shared object que se llame liborg-gnome-templates, osea una librería que pueda cargarse en tiempo de ejecución (si mi mumbo jumbo técnico está mal, corríjanme).

Luego toca crear un archivo definiendo el UI de nuestro plugin, esto es parte del framework de evo, pero recuerda a como GTK+ hace las cosas:

<Root>
<commands>
<cmd name="FileSaveAsTemplate" _label="Save As _Template"/>
</commands>
<menu>
<submenu name="File">
<placeholder name="Print">
<menuitem name="FileSaveAsTemplate" verb="" />
</placeholder>
</submenu>
</menu>
</Root>


Luego toca crear un .eplug que defina nuestro plugin, lo importante es saber el nombre de los hooks que hay q usar y asignarles la propiedad factory que es como quién dice el callback, eso y otras cosas están en la muy incompleta y arcana documentación de los eplugins (cookie para quien los encuentre en el svn, no me acuerdo!).

Luego, solamente programas y lo mandas a la lista y algún buen dude como Bharath Acharya lo integra a Evolution trunk.

En cuanto al código, todo es magia negra de Evolution y C, pueden ver el original en launchpad o el parche final con los cambios de Bharath. Se reciben preguntas y pedidos de plugins, cotización previa :P.

Kudos a Yannick que vía Beeznest que financió el trabajo inicial.

August 1, 2008

Diego Escalante
dieguito
hack my cow
» Heavy Metal Lady

Heavy Metal Lady

» Abi iki GUADEC?

Hoy empezó GUADEC, harta anécdota y cojudez que pasaron. Llegó el hijoeputísima de Manuel, nos movieron a un hotel 10 estrellas, los turcos de la GUADEC nos tratan como a reyes. Hay vistas espectaculares en toda la ciudad. Pero el tráfico es mierda y todos los turcos siempre tratan de estafarte.

Fotos:
Turkish lessons with Germán
Aprendiendo Turco con Ádám y Germán

Canal del Bósforo
Malecón de la Universidad (sí, tienen su propio malecón dentro de la universidad)

Click
Tomando fotos

Gil: porque es gratis
Stickers Imendio (es gratis)

10K stars hotel
Nuestro hotel 10 estrellas, con Manuel

Asia
Istanbul, parte asiática, desde la Universidad.

» Abi bir GUADEC?

Lo que traduce a CANIHASGUADEC.

Algunas fotos:

Barajas, 4S
Barajas, Madrid

Hola Europa
Hola Europa

View from the Golden Horn hotel
Mosque

No idea
Ni idea, por el camino a la universidad

Turkish coffee
Café Turco

Más en el álbum GUADEC2008.

July 30, 2008

Diego Escalante
dieguito
hack my cow
» El informe Involucrate+GNOME

De la web de involucrate.org:

Luego de varios pares de semanas, tenemos el agrado de anunciar la disponibilidad de los videos, fotos, presentaciones e informe de Involucrate+GNOME. (...)

(...)

Y agrego:
Gracias a la Fundación GNOME por su apoyo, a nuestros auspiciadores locales, a la Universidad Inca Garcilaso de la Vega, a COSOLIG y Ubuntu-pe por su ayuda.

Gracias a todos los voluntarios: Martín Araya, Antonio Cantos, Michael Garrido, GNUUPC, Diana Katherine Horqque, Enrique Huaman, Liliana Ponce, Lily Poves, Percy Triveño, Clotilde Urrelo Pezo, Nicolás Valcárcel, Carlos Wertheman.

Y gracias al equipo de Involucrate.org que ésta semana aumentará en 1 ;).

July 29, 2008

Diego Escalante
dieguito
hack my cow
» Internet is teh awesome



¡Hasta la victoria sin querer queriendo!

July 21, 2008

Diego Escalante
dieguito
hack my cow
» GUADEC2008

GUADEC ya acabó hace 1 semana, como siempre fue espectacular y revitalizante.
He subido las fotos (o las mejores) que tomé a mi set GUADEC2008 en flickr (son muchas más de las que pongo en este post).

Gracias a los que nuevamente pusieron su granito de arena o playa completa para ayudarme a ir y a los que simplemente se tomaron la molestia de despedirse de mí, ¡gracias!.

¡Hasta el próximo año!

The crew

Asia shore The GNOME Conference Bósforo, desde el Beylerbeyi Azulejos
Turkeado Andre socks Turkish coffee 2.5€ Fanta
The crew Manuel Diego
The diego and The arda Rocking south-americans Red red Paparazzi


Set completo GUADEC2008 en flickr

July 3, 2008

Diego Escalante
dieguito
hack my cow
» Fly me out of here, please


Saquenme de aquí.

June 24, 2008

Diego Escalante
dieguito
hack my cow
» Muchas cosas chéveres

Estos días han sido positivos.

El gnomo viajero
Me dieron mi visa para Turquía y ya tengo mi pasaje, ¡veré a los otros gnomos del 5 al 16 de Julio!, me voy el viernes 4 de Julio a eso de las 6~7. Regreso el 16 a eso de las 5 de la tarde.



Este año, la conferencia anual de los gnomos es en Istanbul, Turquía (bueno es Estambul en español, pero ya me acostumbré a decir Istanbul).
Todos los años los gnomos nos juntamos a complotar la dominación mundial. Es como la reunión anual de las brujas en esa película de los 90, pero sin las brujas y sin los 90.

Un video promocional de Istanbul:

(click para ver)

El año pasado estuve en Birmingham, Inglaterra, donde conocí gente sencillamente maravillosa. Este año podré verlos a todos de nuevo felizmente :). Oh y vale decir que lo que más espero conocer allí es la famosa Hagia Sophia, algo bueno tiene que haber ahí ¿no creen?.

El blaos sigue hablando
Luego, me enteré de que el blaos ya está en el proceso de NM. No es la primera vez que honra lo que dijo. ¡Y qué orgulloso estoy de eso (de una forma bieeeeeeeen heterosexual)!

(22:42:36) Nicolas Valcárcel: ya puedes hacer nuevo update
(22:42:38) Nicolas Valcárcel: http://diegoe.blogspot.com/2007/10/en-el-jabber-hace-un-rato.html
(22:42:54) diego: lo voy a hacer
(22:42:57) diego: hehe
(22:42:58) diego: :)
(22:43:02) diego: bien hecho kid
(22:43:02) Nicolas Valcárcel: jajaja
(22:43:09) diego: ahora llevame a debconf
(22:43:11) Nicolas Valcárcel: siempre te hago content para tu blog

Compremos un pony
También renovamos el dominio de involucrate.org, donde pronto publicaremos el informe que ha quedado muy muy bueno. Y como que renovamos el dominio también hemos estado refrescando las ideas. Pronto noticias.

Y para terminar, uhm, pues, uhm, nada... una frase críptica para mantener el estilo: te espero a la salida.

June 16, 2008

Diego Escalante
dieguito
hack my cow
» Las normas sociales y el espejismo de las apariencias

Estos días también he estado pensando sobre algo inevitable en nuestra naturaleza: las normas sociales.

Lo primero que hay que aclarar a todos los emos leyendo esto es que no soy un monce conservador y robotizado, no me han convertido ni nada por el estilo.
Entremos al asunto.

Sucede que nuestra sociedad se rige por normas, normas sociales que todos debemos acatar nos guste o no, o al menos tolerar hasta cierto punto. Es como el HTML, no a todos nos gusta por sus limitaciones, pero sin embargo es la lengua franca que debemos hablar para poder entendernos con la sociedad. O en inglés, para los menos informáticos. Si no hablas inglés entonces el mundo (fuera de Perú) difícilmente te entiende, por lo que terminas aislado.

No apestoso hippie, no se trata de que te bañes más seguido (sería buena idea) y tampoco se trata de que te conviertas en un borg y pierdas tu identidad. Es tan solo que en nuestra raza las apariencias son muy importantes, tanto que muchas veces pueden ser más importantes que la verdad. Por supuesto, la verdad es lo único que debería importar, pero nadie ha dicho q esto de las apariencias esté bien.

Bien, ahora a algo más práctico. Si algo he aprendido en mi exploración del género humano en estos años ha sido que las apariencias reinan. Basta un poco de manipulación visual y uno puede hacer creer y pensar a otros lo que a uno le plazca.

La sabiduría materna el otro día esbozó una gran frase, "no es que tengas q cambiar, lamentablemente vivimos en una sociedad y tenemos q adaptarnos a ella". Caramba, qué cierto.

Digamos algo útil y más práctico entonces: broder, no es que tengas que volverte un aburrido, es que tienes que adaptarte a la norma de la sociedad o te vas a quedar hecho un paria.
Para brutos y carentes de comprensión lectora: no se trata de que tengas q vestirte como un borg de oficina, se trata de que te adaptes a la norma del entorno, luego ya haz lo que quieras.

Idealmente estaremos siempre rodeados de quienes comparten nuestra manera de pensar y sentir para poder sacarnos de encima dichas normas, pero a veces hay que dejar de pensar en uno mismo y pensar en el entorno, y pues hacer algunas concesiones.
Pero una cosa, no hay que olvidar que no nacimos siendo genios adaptados y entendedores de la sociedad y sus engranajes, a veces se necesita un recordatorio o una aclaración, porque no podemos intentar arreglar algo que no sabemos está roto.

Entonces el mensaje es este, pokémon de cuarta: si quieres disfrutar de los bienes de la sociedad como la amistad, el amor, la intelectualidad, el intercambio cultural, etc. Entonces tienes que hacer algunas concesiones.

Para los que son re re re re re tabas y todavía no la ven: si te vas a Turquía, habrán cosas que no podrás hacer por las costumbres del lugar, y estoy seguro que las respetarías y no las harías. ¿Te has puesto a pensar que es lo mismo con tu propia cultura? Tan solo que no hay un viaje de por medio. Incluso de familia a familia hay grandes diferencias, solamente q no estamos entrenados a pensar tan profundamente en las necesidades y costumbres de los demás. Se nos entrena para pensar que todos son iguales a nosotros, en todo sentido, lo cual es un error pues somos diferentes en cosas irrelevantes para la esencia pero relevantes para la apariencia (mira, qué poético soy).

Nuestra cultura limeña-peruana-fufu tiene sus normas, desde las reglas de un partido de fulbito hasta la forma en la que se jilea. Y hay que aceptarlas si queremos vivir aquí, ya una vez dentro de la sociedad la podemos intentar cambiar, pero hasta poder hacerlo es mejor integrarnos y sabotear al enemigo, desde adentro.

Osea: estate a la exigencia de la circunstancia, cuando estés en roma haz como los romanos, cuando estés en la casa de tu tía, haz como tus primos y cuando estés en tu casa haz como tus hermanos. Una cosa así, la idea es mantenerse individual pero no atorrantemente disonante.

No siempre actuar diferente es la acción más sabia, se puede ser sabio aparentando ser del montón. Recuerda, mutante transgénico, que el sabio calla y el ignorante habla y alardea.

Espero hayas entendido. Marrano.

Para los que aún así no la paran, aquí un gráfico al estilo animaniacs:
Buena idea:

Mala idea:

June 13, 2008

Diego Escalante
dieguito
hack my cow
» Hazlo y ya

Hace ya un par de semanas, varias más que un solo par, he venido rumiando y procesando ciertas ideas para finalmente cosecharlas de maduras.

Durante los últimos 2 años me he dedicado a entender mi propio laberinto mental, desde saber qué quiero hacer con mi existencia de morondanga, hasta exigirme en campos desconocidos para mí. He tenido buenos y malos resultados.
Sin embargo inconscientemente cometí un error, cometí el error de dejar que un poco de meta-sapiencia nuble mi pensamiento.

Al dedicarme a estudiar y pensar las decisiones sobre mi inminente futuro, omití una parte importante en cualquier proyecto: delimitar alcances y variables relevantes.
Esto basicamente puede leerse como que pensé demasiado en demasiadas cosas. ¡No se puede controlar todo!, alguien debería poner eso en un gran cartel colgando del cuello de una rubia despampanante, o en su defecto, de Tongo.

Oh amable lector que me honras con tu atención, he encontrado un pequeño ápice de sabiduría para compartirte: haz las cosas y olvídate de lo que no puedes controlar. Siempre habrán cosas que no puedas controlar, que no puedas analizar. El grave error que cometí y que quizá tú desperpento humano estés cometiendo es el de querer tomar la decisión perfecta, obteniendo toda la información y control posible sobre las variables. ¡No se puede, no vives en un laboratorio!.
En un intento por emular la exactitud y belleza en la ciencia, uno puede olvidar que la ciencia misma parte de la experimentación: no puedes saber los resultados de algo hasta hacerlo. Y es así de simple.

Tú jóven intelectualoide, tómate tu tiempo para decidir, tómate tu tiempo para pensar y conocerte un poco más, pero no seas idiota, no podrás tomar nunca una decisión perfecta con respecto a algo volátil como el futuro. Solo decide ahora por algo, salta al bote y vé a dónde te lleva. Todo tiene solución hablando y pensando, el temor a equivocarnos nos imposibilita vivir, así como el prejuicio a lo que vemos.

La vida es más simple de lo que parece, y siempre podemos sacarle la vuelta. Tú, remedo de ser humano, deja de torturarte con ideas y elucubraciones de tu cacúmen (es que faltaba una línea intelectualoide en esto), simplemente toma una decisión. Si te has torturado pensando y analizando, alguito de cerebro tienes, lo cual quiere decir que podrá corregir la marcha si no te satisface lo que decidiste.

Atrévete pedazo de carne sapiente, simplemente actúa.

Cerrada la reflexión y consejo hacia el universo mismo (me debes un dólar si he cambiado tu vida con esto, no cheating).
Ahora tan solo quería hacer presente a mis estimados lectores (osea mi mamá y el indexador de google) que ya estoy de vuelta en el mundo académico, sus días de manos abajo acabaron, estoy de vuelta y con más neuronas que nunca. A hinchar tizas.

¡Me hubiese gustado avisar de esto antes! Pero lamentablemente no quería adelantarme, lo que pasa es que tuve que postergar por casi 3 semanas esta decisión (la tomé hace 3 semanas efectivamente, pero no pude sino hasta ésta ponerla en ejecución, la historia sigue).
Como nota al márgen a esta historia-aviso-catarsis, sucede que por más simple que suene ya más de 3 semanas (quién sabe cuantas) los cables se enchufaron y me dí cuenta de pequeños detalles que me llevaron a esta conclusión larguísima y pseudofilosófica. Como decía, la ejecución de la obra se seteó para hace al menos 3 semanas, pero el dólar cayó y hubo que esperar unos días más.

Así que plumíferos y porcinos varios, nuevamente soy un estudihambre con intereses capitalistas (más de esto en un par de semanas).
Sientanse libres de mandarme fruta, pastillas para la memoria y demás cosas.

Para los que no hayan entendido bien lo que traté de decir con la reflexión, aquí un gráfico:



Ahora, con permiso del respetable, tengo q expandir mi cacúmen con 800 palabras.

June 8, 2008

Diego Escalante
dieguito
hack my cow
» Romántico II

Hace un par de días, en Planeta DebianPerú (ponlo en tu feed: rss), El hombre de Dropertal publicó un comentario sobre una de las múltiples y geniales ediciones del xkcd por el brillante Randall Munroe.

Para responderle a Droper, yo tengo este como uno de mis favoritos si se trata de los románticos (y es difícil elegir uno entre todos):



Pero el último también me gustó mucho, más q nada por las últimas líneas:

May 25, 2008

Diego Escalante
dieguito
hack my cow
» Traducir para GNOME

Estuve hablando con el buen Jorge Gonzáles sobre cómo es que uno debe entrar a colaborar con la traducción en GNOME, me lo describió en estos pasos:

  1. Leer los capítulos del libro de traducción referidos al español neutro
  2. Suscribirse a la lista de traductores
  3. Pedir un módulo (es decir una aplicación) para traducir o revisar.
  4. Instalar kbabel (o gtranslator, kbabel preferido) - disponible en Debian y Ubuntu
  5. Revisar y/o traducir el módulo recibido, y estar pendiente de cambios en él si les es posible
  6. Enviar traducciones en partes pequeñas (es más fácil revisar 5 cadenas que 200 cadenas traducidas)
  7. Fama

Ahora mismo la mayoría de aplicaciones están traducidas, y el trabajo es más de mantenimiento, pero precisamente ese trabajo de mantenimiento necesita ayuda, si quieres adoptar un módulo para estar pendiente de su traducción, puedes seguir estos pasos, si solo quieres hacer una ayuda esporádica, pues los pasos son los mismos.

Pueden hacer sus preguntas y comentarios en la lista de traductores.

May 16, 2008

Diego Escalante
dieguito
hack my cow
» Crecieron los engendros

Este sujeto de dudosa moralidad (del cual -debo confesar- estoy orgulloso de una forma recontra heterosexual):



Se está dando la buena vida en el UDS (Ubuntu Developer Summit) de Praga. Y está ahí porque simplemente quiso e hizo lo necesario para estarlo.

Tú eres la (¿por qué no una chica?) siguiente, si quieres.

May 13, 2008

Diego Escalante
dieguito
hack my cow
» bzr-builddeb para mantener paquetes Debian

Tal como se ve en la web de DebianPerú, he publicado un tutorial sobre cómo usar bzr-builddeb para mantener paquetes Debian/Ubuntu:

May 11, 2008

Diego Escalante
dieguito
hack my cow
» Siempre nos quedará Paris