Como no, si con amarok lo hacía, al usar gmusicbrowser también deseaba añadir información sobre la canción actual para que conky la mostrara.
Para ello uso un script que devuelve la información, gmusicbrowser.sh
#!/bin/bash
# gmusicbrowser info display script by jjgomera
#
# requirements: gmusicbrowser with NowPlaying plugin on (!)
file=~/.config/gmusicbrowser/nowplaying
#must be configure in plugin, for example, i use the command "tee ~/.config/gmusicbrowser/nowplaying"
tiempo=`cat $file | grep "Length" | cut -d"=" -f2`
puntuacion=`cat $file | grep "Rating: " | cut -d" " -f2`
estado=`dbus-send --print-reply --dest=org.gmusicbrowser /org/gmusicbrowser org.gmusicbrowser.GetPosition | grep "double" | cut -d" " -f5`
case "$1" in
minutostotales)
expr $tiempo / 60
;;
segundostotales)
minutos=`~/configuracion/gmusicbrowser.sh minutostotales`
expr $tiempo - $minutos \* 60
;;
minutosestado)
expr $estado / 60
;;
segundosestado)
minutos=`~/configuracion/gmusicbrowser.sh minutosestado`
expr $estado - $minutos \* 60
;;
progreso)
expr $estado \* 100 / $tiempo
;;
esac
y en el conkyrc añado las lineas:
>
${if_existing /home/jjgomera/.config/gmusicbrowser/gmusicbrowser.fifo}${voffset 10}${font Musicelements:regular:size=21}${color #5da5d3}s${voffset -7}${font Anklepants:regular:size=11}${color #5da5d3} gmusicbrowser$font$color$alignr${color #888888}Last.fm: ${color}${execi 3600 sh ~/configuracion/last.fm uno}${execi 3600 sh ~/configuracion/last.fm dos}${execi 600 sh ~/configuracion/last.fm tres}${execi 600 sh ~/configuracion/last.fm cuatro}${execi 600 sh ~/configuracion/last.fm cinco}
${voffset -7}${color #ffd700}${hr 1}$color
$alignc${color #CC6600}${execi 10 cat /home/jjgomera/.config/gmusicbrowser/nowplaying | grep "Artist" | cut -d"=" -f2}
$alignc${execi 10 cat /home/jjgomera/.config/gmusicbrowser/nowplaying | grep "Title" | cut -d"=" -f2}
${execi 2 ~/configuracion/gmusicbrowser.sh minutosestado}:${execi 2 ~/configuracion/gmusicbrowser.sh segundosestado}/${execi 10 ~/configuracion/gmusicbrowser.sh minutostotales}:${execi 10 ~/configuracion/gmusicbrowser.sh segundostotales} ${execibar 2 ~/configuracion/gmusicbrowser.sh progreso}
${color #CC6600}${execi 10 cat /home/jjgomera/.config/gmusicbrowser/nowplaying | grep "Album" | cut -d"=" -f2}$alignr${execi 10 cat /home/jjgomera/.config/gmusicbrowser/nowplaying | grep "Year" | cut -d"=" -f2}$color
${voffset -5}${color #ffd700}${hr 1}$color$else${voffset -10}$endif
De esta manera, conky solo monstrará está información cuando sea útil, gmusicbrowser esté ejecutandose. Como veis el script de arrriba lo tengo guardado en el directorio ~/configuracion/, esto queda a gusto del usuario, no olvidando de cambiarlo también en todas las entradas del conkyrc.
Para embellecer el título uso un símbolo musical usando la fuente Music Elements
Para rematar la faena uso otro script para mostrar en pantalla la caratula, si la hay, del disco actualmente en escucha, caratula.sh
#!/bin/bash
#
# script para mostrar por pantalla la caratula del disco actualmente en escucha por gmusicbrowser
# dependencias: tener instalado el paquete feh de manipulación de imagenes
sleep 10
feh -x -R 20 -g "150x150+250+850" /tmp/caratula.jpg &
while [ -e "/home/jjgomera/.config/gmusicbrowser/gmusicbrowser.fifo" ]
do
longitud=`cat /home/jjgomera/.config/gmusicbrowser/nowplaying | grep "Length" | cut -d"=" -f2`
estado=`dbus-send --print-reply --dest=org.gmusicbrowser /org/gmusicbrowser org.gmusicbrowser.GetPosition | grep "double" | cut -d" " -f5`
time=$(($longitud-$estado))
album=`cat /home/jjgomera/.config/gmusicbrowser/nowplaying | grep "Album" | cut -d"=" -f2`
caratula=`dbus-send --print-reply --dest=org.gmusicbrowser /org/gmusicbrowser org.gmusicbrowser.GetAlbumCover string:"$album" | grep "string" | cut -d" " -f5- | cut --delimiter='"' -f2`
cp "$caratula" /tmp/caratula.jpg
sleep $time
done
Y este es el resultado:

