Scrobby est mort, vive mpdscribble !

Si vous avez suivi mes pérégrinations dans le monde des clients LastFM/Libre.FM pour MPD, j’étais passé avec bonheur à Scrobby, un mignon petit démon qui faisait bien son travail sans se faire remarquer.

“Faisait”, car depuis quelques temps je rencontrais un petit bug qui m’obligeait à le redémarrer afin qu’il veuille bien soumettre mes titres.
C’est comme ça que je me suis aperçu que la bête n’était plus maintenue, fini :(

Étant une quiche en prog, impensable pour moi de fouiner dans ses entrailles afin de tenter de résoudre le problème.

J’ai donc sans trop y croire repris mes recherches du nouveau client idéal, mon critère discriminant étant la capacité tourner comme un daemon, propre à Scrobby à l’époque.

Traînant sur la page de référence répertoriant les clients MPD, je me suis aperçu que seul mpdscribble était encore maintenu.
Or, à l’époque, la bête ne tournait pas comme un daemon.

Et en lisant la doc, je me suis aperçu avec bonheur que cette fonction avait été ajoutée depuis :D

Illico, j’installe la bête sur mon Arch, depuis la version à compiler dispo dans AUR.

Génial :D

Une conf claire, le support direct de Libre.FM (ça tombe bien je ne scrobble plus que vers ce site), un fonctionnement impeccable, le top.

Voilà, voilà.

## mpdscribble – an audioscrobbler for the Music Player Daemon.
## http://mpd.wikia.com/wiki/Client:mpdscribble

# HTTP proxy URL.
#proxy = http://the.proxy.server:3128

# The location of the pid file.  mpdscribble saves its process id there.
pidfile = /var/run/mpdscribble.pid

# Change to this system user after daemonization.
daemon_user = mpd

# The location of the mpdscribble log file.  The special value
# “syslog” makes mpdscribble use the local syslog daemon.  On most
# systems, log messages will appear in /var/log/daemon.log then.
# “-” means log to stderr (the current terminal).
log = syslog

# How verbose mpdscribble’s logging should be.  Default is 1.
verbose = 1

# How often should mpdscribble save the journal file? [seconds]
#journal_interval = 600

# The host running MPD, possibly protected by a password
# ([PASSWORD@]HOSTNAME).  Defaults to $MPD_HOST or localhost.
host = localhost

# The port that the MPD listens on and mpdscribble should try to
# connect to.  Defaults to $MPD_PORT or 6600.
#port = 6600

#[last.fm]
#url = http://89.16.177.55/
#username =deK
#password =
# The file where mpdscribble should store its Last.fm journal in case
# you do not have a connection to the Last.fm server.
#journal = /var/cache/mpdscribble/lastfm.journal

#[libre.fm]
url = http://turtle.libre.fm/
username = deK
password = rutabuli78
journal = /var/cache/mpdscribble/librefm.journal

#[jamendo]
#url = http://postaudioscrobbler.jamendo.com/
#username = my_username
#password = my_password
#journal = /var/cache/mpdscribble/jamendo.journal

Libre.fm : un Last.fm libre !

Et oui, un nouveau message ! :D

J’ai quelque peu délaissé le blog ces derniers temps, pas mal de choses à faire, mais aussi une grosse flemme de rédiger mes petites bafouilles, et le cercle vicieux s’est installé …

Mais à partir d’aujourd’hui c’est reparti !

Il y a quelques temps, j’appelais de mes voeux la création d’un équivalent libre à Last.fm ; et bien aujourd’hui, je suis heureux (merci ZorG ;) ) de vous présenter Libre.fm !

Si Libre.fm n’est pas exactement la solution à laquelle je pensais (je suis plutôt partisan d’une solution que l’on peut héberger chez soi, question d’indépendance), c’est déjà super intéressant par rapport à Last.fm.
Last.fm, malgré ses atours de monde communautaire, est un site mercantile par nature, ça se sent de plus en plus, avec l’évolution vers un modèle payant, la pub à outrance … une alternative plus saine se faisait cruellement désirer.

Le site n’en est qu’à ses débuts (il n’a même pas un mois), quelques bugs cosmétiques sont à déplorer, et relativement peu de fonctions sont disponibles.
Mais ça n’est pas un reproche, ils suivent leur roadmap, et force est de constater que la première étape est d’ors et déjà remplie : on scrobble, et ça marche :)

Le parti pris a été d’implémenter l’API Last.fm, afin de scrobbler avec les mêmes logiciels qu’avant (liste de compatibilité) et se placer en concurrence frontale.

Le site est imprégné de philosophie libre/communautaire, chacun peut participer au code, au wiki, et ça risque d’évoluer d’une fort jolie façon :)

Pour ma part, j’ai pu :

Ça fonctionne parfaitement, et j’ai donc dès à présent complètement switché vers Libre.fm.

J’attends avec impatience les nouveautés : il y a du boulot, entre les groupes, les stats détaillées, une BDD complète d’artistes, et des fonctions encore inédites, mais la base est là, et elle fonctionne diablement bien. ;)

Essayez ;)

Aujourd’hui : Scrobby, et mettre à jour son PATH

Scrobby : un client au poil pour Last.FM

Oui, j’utilise Last.FM.

Ça peut sembler paradoxal, sachant qu’habituellement je conchie cordialement tous ces soi-disant “réseaux sociaux”. (facebook en tête de liste)
En fait je n’utilise Last.FM que pour sa fonction de stats musicales centralisées, je trouve ça vraiment sympa.
À vrai dire, je n’ai jamais utilisé la partie “pseudo-sociale”.

Je suis d’ailleurs relativement intéressé par une solution libre reposant sur le même modèle : un client uploadant des infos sur la lecture en cours, exploitées par un serveur les compilant sous forme de stats.
Tout ça pouvant tourner sur un serveur perso, histoire de s’affranchir de la centralisation de ses données sur le serveur d’une société commerciale.

Si quelqu’un connaît quelque chose comme ça, qu’il n’hésite pas à m’en faire part, ça m’intéresse beaucoup.

En attendant cette libération, revenons à Last.FM.

Jusqu’à présent, et depuis que j’utilise MPD, je n’avais pas trouvé de client Last.FM pour MPD que j’ai pu faire fonctionner correctement ; utilisant Sonata comme client de lecture, je m’étais résigné à utiliser sa fonction de scrobbler.
Ça fonctionnait très bien, mais on perd un des avantages de MPD : pouvoir utiliser une myriade de clients différents sans perdre en fonctions. Imaginons que je bascule en console pour utiliser exclusivement NCMPC, je n’exporte plus mes titres en cours vers mes stats Last.FM, ce qui est bête.
Le plus logique est d’avoir un daemon qui joue l’interface entre MPD et Last.FM : c’est propre, pratique, et ça fonctionne avec tous les clients de lecture.

J’avais donc essayé un peu tous les clients de ce type, sans en trouver qui me satisfasse.

Jusqu’à Scrobby.
Disponible dans AUR sous Arch Linux, il est parfait : un fichier de config simple et clair dispo dans /usr/share/doc/scrobby/scrobby.conf.example, est à copier comme /etc/scrobby.conf puis à éditer.
Je ne détaille même pas la config, le fichier parle de lui-même.

On le lance classiquement, c’est un daemon :

# /etc/rc.d/scrobby start

(et on n’oublie pas de l’ajouter aux daemons dans /etc/rc.conf, afin qu’il se lance au démarrage – bien sûr, on l’y inscrit à la suite de MPD, pour qu’il puisse s’y connecter)

Et ça marche.
That’s all !

Mettre à jour son PATH

Petit truc bête qui m’a fait perdre pas mal de temps.

Sur mes Arch, j’ai installé K3B et Kaffeine (les deux seuls softs KDE que je trouve irremplaçables, bien que tournant sous XFCE), et bizarrement ils n’apparaissaient ni dans mon menu de programmes, ni en console dans les commandes disponibles.

Et je n’avais pas fait la relation avec leur attachement à KDE.
En effet, ces programmes ne s’installent pas dans /usr/bin ni /usr/sbin, mais dans /opt/kde/bin.

Une mise à jour de la variable $PATH s’impose donc :

# source /etc/profile

Une déco/reco, et c’est ok !

Ah oui, juste une dernière chose :

Ce soir je suis en vacances \o/