Saludos a los lectores de GUTL. Hace algunos días presentaba por acá una curiosa aplicación para gestionar los fondos de pantalla en nuestro escritorio, me refiero a Variety Wallpaper Changer, aplicación que además de wallpapers (con múltiples efectos incluidos) también nos brinda un reloj y frases para nuestro escritorio. Como en todo sitio comunitario, siempre comienzan a fluir ideas múltiples que hacen que el cúmulo de conocimiento final aumente de manera exponencial en cada usuario interesado, y en este caso ocurrió. BishopWolf, nuestro físico, el lobo obispo, comenzó a buscar la posibilidad de usar las frases de fortunes en Variety, y no se calló su idea, la dejó plasmada en un comentario permitiendo que otros usuarios intentaran hacer la tarea a la par de su búsqueda personal.
El objetivo central de este artículo es cambiar las frases rotativas de Variety por las mismas que usamos en fortunes. Sobre fortunes no nos vamos a detener mucho acá porque de esta aplicación hemos hablado en artículos anteriores en GUTL. Si quieres refrescar el tema, utiliza nuestro nuevo widget de búsqueda (aprovecha que ahora es más fácil buscar contenido antiguo en GUTL 😉 )
Ahora bien, trazando una estrategia para lograr nuestro objetivo, lo primero es localizar de donde lee Variety Wallpaper Changer las frases predeterminadas del archivo local. Evidentemente debe ser un archivo de texto plano, algún .conf o .txt o sin extensión, pero texto plano. Por suerte buscarlo no fue difícil ya que se me ocurrió que el archivo tuviera un nombre relacionado con quote (pensando en un plugin similar que uso en WordPress). En fin, el objetivo se encuentra en: /opt/extras.ubuntu.com/variety/share/variety/plugins/quotes/quotes.txt
Ahora nos toca ubicar de donde lee fortunes las frases bellas que nos pone por consola o por donde la llamemos. Esto depende de que frases de fortunes utilices, en mi caso uso fortunes-ubuntu-server. El archivo que guarda las frases es: /usr/share/games/fortunes/es/ubuntu-server-tips-es
Ya más de la mitad del camino está recorrida. Lo primero que se me ocurrió fue variar un paquetico Python de Variety Wallpaper Changer para que me leyera directamente el archivo de fortune en vez del propio de la aplicación, pero ojo, acá hay una diferencia: Fortunes declara el fin de cada frase con un signo porcentual (%) mientras que Variety lo declara con el signo punto (.)
Mi solución fue pasar todo el contenido de /usr/share/games/fortunes/es/ubuntu-server-tips-es para /opt/extras.ubuntu.com/variety/share/variety/plugins/quotes/quotes.txt cambiando todos los signos porcentuales (%) por puntos (.) y resuelto. Si no quieres hacer el cambio global, sino únicamente para tu usuario, entonces pasa el cambio a este fichero: ~/.config/variety/plugins/quotes/quotes.txt
Evidentemente, hay maneras más Nerds de hacer esto, pasando parámetros desde fortunes a Variety, cambiando cosas en el código Python de la aplicación para no tener que cambiar el porcentual por puntos o traspasar el contenido de un lugar a otro haciendo uso de entretenidas líneas de comandos, pero quise dejar una manera que no incluya grandes comandos en consola y que cualquiera pudiera utilizar sin avanzados conocimientos de GNU/Linux. Al menos yo creo que, mientras más fáciles sean las soluciones, más usuarios se sienten atraidos a probar nuestras alternativas. Ya estos se decidirán por si mismos a probar, o incluso crear vías más Nerds 😉
Obviamente este método es válido para usar cualquier secuencia de frases que quieras utilizar con Variety Wallpaper changer.
Fuente:
La curiosidad de nuestro físico: Monseñor Lobo
Bien, veo que encontraste una forma, ya le metí mano a un plugin que tiene llamado QuotesDaddy que está en python, lo cloné, lo llamé fortunesSource.py y le cambié el método get_random para que en vez de leer desde internet leyera directamente desde fortunes, eso se agrega automáticamente a la lista de sources, la seleccionas y ya tienes a variety corriendo con fortunes B{
Si, estuve revisando todos los plugins, lo que queria hoy presentar una via al alcance de todos. Pero la idea buena es la de meterle mano a Python como tu hiciste
Maikel
te mandé el plugin para hacer esto, junto con la explicación y las capturas, dime si te llegó todo.
y a que email lo enviaste???? Porque yo con el trauma de la suplantacion de identidad estoy peor que R. stallman, ni correos ni redes sociales ni nada
Lo mandé como una captura de escritorio
ahhhh, jajaja, entonces se lo mandaste a @ilid@an, el es el encargado de la seccion de escritorios y el formulario apunta a su correo…
Igual, @ilid@an se puede hacer cargo de publicar eso, al final el tambien es el encargado del curso de Python
Bueno, entonces @ilid@an por favor pudieras actualizar el artículo con lo que mandé
En todo caso, que publique uno nuevo, porque no me queda claro si el tiene privilegios para modificar este articulo
No tengo permisos para esto… pero email resuelve… se lo mando a Maikel pa que actualice
Esta bueno eso. Me acabo de enterar que Variety existe. Si llegan a hacer el plugin, por favor, publiquenlo.
te voy a dar un norte
from subprocess import Popen
r = Popen(‘fortunes’, shell=True, stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE, universal_newlines=True)
print r
también puedes controlar la salida
while True:
line = r.stdout.readline()
if not line: break
print line
Maikel
Al final en que quedó el plugin que mandé??
Ni idea, como te dije hace unos dias, el formulario no redirecciona hacia mi sino hacia @ilid@an. Preguntale a el si le llego y en caso de haberle llegado si va a publicar algo al respecto. Yo estoy soltando un poco de lastre aca en GUTL 😉
Como lo contacto??
Igual, todo lo que se envie por el formulario de screenshots va directo a su email. Tambien si dejas un comentario aca el debe leerlo… No te doy personalmente su correo porque considero que cada cual es el responsable de compartir su info personal… Pero igual, si el lee este comentario que nos diga si le llego el plugin que enviaste…