Picture of Jürgen Kreileder

Last.fm for Rhythmbox – New Style

Just like a lot of other users I like to scrobble my played tracks to last.fm. Unfortunately Rhythmbox provides no way to love a track. The last.fm plug-ins for Windows and OS X have been modified to scrobble through the last.fm client some time ago but the Rhythmbox plug-in still submits directly. That is until now…

Rhythmbox and lastfm

I have written a new last.fm plug-in for Rhythmbox today. Instead of scrobbling directly like the old one, it submits tracks via the lastfm client application. The client displays additional information about the currently playing song and you can love and tag the song with it.

The source code is available as a patch against Rhythmbox 2.90.1 (git snapshot 20120108): scrobbler-v3t.patch
You can apply this patch with:

patch -NEp1 < ~/scrobbler-v3t.patch

Ubuntu Oneiric Ocelot users can get precompiled packages from my APT repositories by running these commands in a terminal:

$ sudo add-apt-repository \
    'http://blackdown.de/static/debian/rhythmbox/ main'
$ wget https://blackdown.de/static/gpg.asc -O - | \
    sudo apt-key add -
$ sudo apt-get update
$ sudo apt-get install rhythmbox rhythmbox-plugins lastfm

To enable the new plug-in go to Edit » Plugins. Disable the “Last.fm” plug-in and enable the “New Style Last.fm Scrobbler”.
If you enable this scrobbler plug-in, you have to disable the old Last.fm plug-in! Otherwise you will have two plug-ins which will both submit to last.fm at the same time. Only use one at a time!

Note that this first version of the plug-in does not start the lastfm client automatically! It will scrobble only if you start the client manually. I will fix this in the next version.

Feedback, postive as well as negative, is very welcome. If you want to report a bug, please include the output of “rhythmbox -D rb-scrobbler-plugin” and the tags of the song you wanted to scrobble.
If you want to report a crash, providing a gdb backtrace would be nice.

You might also want to take a look at this thread on the last.fm development forum.

May 20th, 2007: v2 of the plug-in is available now. lastfm gets launched automatically now.
May 22nd, 2007: v3 is available. The patch and the Ubuntu package have been updated: Changes since v2
May 25th, 2007: v3a: Updated patch and deb for the new Ubuntu Gutsy version of Rhythmbox.
May 29th, 2007: v3b: Updated patch and deb for the new Rhythmbox release.
May 31st, 2007: Updated patch Ubuntu package.
June 1st, 2007: Added APT repositories for Ubuntu Feisty and Gutsy.
June 28th, 2007: v3c: Updated patch and debs for the new Rhythmbox release.
August 16th, 2007: v3d: Updated patch and debs for Rhythmbox 0.11.2.
November 14th, 2007: v3e: Updated patch and debs for Rhythmbox 0.11.3. Add Hardy repository.
November 30th, 2007:Updated gusty and hardy builds. Include fixed Croatian po file from Franko Burolo.
February 7th, 2008: v3f: Updated patch and debs for Rhythmbox 0.11.4. (Thanks to Iain Buchanan for notifying me of the missing patch!)
May 31st, 2008: v3g: Updated patch to apply cleanly to Rhythmbox 0.11.5. (The debs for hardy have been at 0.11.5 for quite a while).
October 15st, 2008: v3h: Updated patch to apply cleanly to Rhythmbox 0.11.6. Ubuntu packages are available for i386, amd64, and lpia now.
October 20st, 2008: v3i: Updated patch to apply cleanly to the real Rhythmbox 0.11.6 release. v3h was for a later version from SVN.
April 24th, 2009: v3j: Update patch to apply cleanly to Rhythmbox 0.12.0. Provide debs for Ubuntu Jaunty.
November 4th, 2009: v3k: Update patch to apply cleanly to Rhythmbox 0.12.5 and provide debs for Ubuntu Karmic.
November 29th, 2009: v3l: Update patch to apply cleanly to Rhythmbox 0.12.6 and provide debs for Ubuntu Lucid too.
April 25th, 2010: v3m: Update patch to apply cleanly to Rhythmbox 0.12.8. Provide debs for Ubuntu Lucid.
Jun 3rd, 2010: v3n: Update patch to apply cleanly to Rhythmbox 0.12.8git20100602. Provide debs for Ubuntu Maverick Meerkat 10.10.
Jun 13th, 2010: v3o: Update patch to apply cleanly to Rhythmbox 0.12.8git20100611. Updated debs for Ubuntu Maverick Meerkat 10.10.
October 10th, 2010: v3p: Update patch to apply cleanly to Rhythmbox 0.13.1. Provide updated debs for Ubuntu Maverick Meerkat 10.10.
April 4th, 2011: v3p: Update patch to apply cleanly to Rhythmbox 0.13.3. Provide debs for Ubuntu Natty Narwhal 11.04.
October 16th, 2011: v3r: Updated patch for new plug-in infrastructure in Rhythmbox 2.90.1. Provide debs for Ubuntu Oneiric Ocelot 11.10.
December 23rd, 2011: v3s: Updated patch. Provide debs for Ubuntu Precise Pangolin 12.04.
January 14th, 2012: v3t: Update patch and debs for Ubuntu Precise.

This article Jürgen Kreileder is licensed under a Creative Commons Attribution-NonCommercial-NoDerivs 3.0 Unported License.

189 Comments

Stay in touch with the conversation, subscribe to the RSS feed for comments on this post. Both comments and pings are currently closed.

Hadret said

I’m getting some errors when I’m trying to patch Rhythmbox source, here’s how it looks like:

patching file configure
Hunk #1 FAILED at 20560.
Hunk #2 succeeded at 22608 (offset 1190 lines).
1 out of 2 hunks FAILED — saving rejects to file configure.rej
patching file configure.ac
Hunk #1 succeeded at 1053 (offset 126 lines).
patching file plugins/Makefile.am
Hunk #1 succeeded at 9 (offset -1 lines).
patching file plugins/Makefile.in
Hunk #2 FAILED at 117.
1 out of 2 hunks FAILED — saving rejects to file plugins/Makefile.in.rej
patching file plugins/scrobbler/Makefile.am
patching file plugins/scrobbler/Makefile.in
patching file plugins/scrobbler/rb-scrobbler-plugin.c
patching file plugins/scrobbler/scrobbler.rb-plugin.desktop.in

ozhoo replied

I applied this to the latest rhythmbox (0.12.3) via git. Same chunks failed but if you check out where they fail in each .rej you see it’s easy to add manually. I didn’t create a new patch with my diffs because I expect any patch will break frequently if you want the latest rb from git.

ps!

I use ubuntu karmic, and I had to add “-Wno-format-security” to CFLAGS in plugins/scrobbler/Makefile so it would ignore the string warnings being treated as errors and bombing

Happy patching

Hadret, please try rhythmbox_0.11.6svn20081008.orig.tar.gz. There might have been some changes in SVN that break the patch for the original 0.6.11 release.

Hadret said

Obviously there were, that’s too bad this plugin is incompatible with standard Rhythmbox and support only Ubuntu SVN version :/

Good point, here’s an updated patch: scrobbler-v3i.patch

Hadret said

It’s alive! Thank You very much! (:

[…] …dla Rhythmboksa. Pojawiła się nowa wersja wspierająca Rhythmboksa 0.11.6. We wpisie, w którym ów wtyczkę opisywałem, wkrótce powinna pojawić się uaktualniona informacja oraz paczka z nową wersją dla Debiana Testing/Sid x86_64 (: « Debian Grass […]

Neomoha said

Hi Jürgen,
Thank you very much for this patch.
Today Ubuntu Desktop Team has just released

Rhythmbox 0.11.6svn20081008-0ubuntu4.2

Which, obviously, if you update, you loose the Lastfm for Rhythmbox – New Style configuration.
It will be great if you could patch this new version.
Thanks again.

Neomoha, I’ll release an update later today.
You can tell apt to only upgrade rhythmbox if there’s a new version in my repository. Add the following to /etc/apt/preferences:

Package: rhythmbox
Pin: release l=jkreileder
Pin-Priority: 999

A new version for Intrepid (and Hardy too) is available now.

Mark said

Thanks for this great plugin!

sp said

Awesome plugin, thanks a lot for this.

lao said

very helpful modification, thanks a lot! :)

but i’ve got a lil question concerning the ipod-support. may it be, that the binary .deb isn’t compiled with the –enable-ipod-writing and –enable-track-tansfer options?! cause my rb crashes, if i try to drag&drop music to my ipod nano 2g…

Actually both options are enabled just like in the standard Ubuntu package. And the plug-in doesn’t touch anything in that area, so the iPod problem you are seeing was most likely inherited from the Ubuntu package.

lee said

awesome! I had to make a few edits to configure/makefiles but after that it worked fine on a recent SVN checkout.

They should really include this with the main release.

Thanks!

Kathy said

In case anyone else starts having the same issue I’m having:

With this plugin installed, every time the last.fm client is open Rhythmbox won’t play songs. It appears to but stays at 0:00. If I close last.fm then it plays normally.

The problem is apparently pulseaudio running multiple instances, so restart it with

/etc/init.d/pulseaudio restart

Yes, this might be a problem when ALSA doesn’t support mixing. I’m not sure whether the last.fm client supports pulseaudio yet.

[…] Sapevatelo. […]

[…] …dla Rhythmboksa. Przepis na instalację w najnowszej wersji Rhythmboksa jak i paczka dla Debiana Testing/Sid x86_64 do znalezienia w zaktualizowanej wersji wpisu Rhythmbox + Last.fm + Debian (: […]

dodo said

awwwwww thanks a lot <3

I was searching for weeks for something like that

Thanks so much for this man. I love it!

Robin said

I love you man, you are the awesomest.

Amaury said

Awesome plugin! Now my friends can see me “playing now”.
However, my profile shows that I’m playing with Windows Media Player

“Ouvindo agora com Windows Media Player + Scrobbler da Last.fm”, that in English means:
“Listening now with Windows Media Player + Scrobbler from Last.fm”.

Any ideas why it’s happening?

Ps. Sorry for the very bad english

[…] la procedura è minuziosamente descritta nel suo blog che potete trovare qui. Il plugin si chiama New Style Last.FM Scrobbler. Quella che segue è una versione breve che ho […]

devl0r said

can’t find file to patch at input line 29
Perhaps you used the wrong -p or –strip option?

wut?

Hm, should work fine! You have to run the command from the top-level rhythmbox directory (or use p0 if you’re one level higher).

re404 said

awesome!
works!
//R

[…] As I found out today, trying to fix the „Now playing“ information of rhythmbox, there is a patch. It provides a new last.fm plugin that uses the official last.fm client including […]

derchmul said

Thanks a lot for the patch! I installed the precompiled version of your repository and it worked out of the box. (just half a minute without music :-) )

said

awesome plug-in.

Congratulations! Works the same.

steve said

Is there a .de packeage that can deal with all this, because i’m still a bit unsavvy and can’t understand what to do.

Alternatively, any links that would explain to me what’s going on?

steve replied

sorry I mean .deb

Sure, just follow the instructions about /etc/apt/sources.list and my GPG key above. Alternatively you can also add that stuff via Adminstration/Software Sources.

EvilJonny said

Hey,

Perfect install for Karmic. Thanks very much, the new style scrobbler using the official client is a significant improvement. Great work.

Thanks.

heuffel said

Hello,
just installed your package. As it seems, it works perfectly with Linux Mint Helena amd64-bit version, as well. Thank you very much!

[…] And you could get all the information on how to download and install it from this blog entry about Last.fm for Rhythmbox – New Style. Have […]

Hi, I’m using Lucid Lynx Beta 2. I’m not incredibly skilled with Linux, but I have successfully installed this to all previous versions of Ubuntu that I have used. I can’t get it to work on Lucid, though. I replaced “karmic” with “lucid” in the entries that need to be added to sources.list, was this the right thing to do?

The lucid version was a bit outdated. I’ve release a new build now.

Aaron Fournier said

This plugin is really awesome!! It’s much better than the one currently distributed with Rhythmbox and it was enough to be bring me back to using Rhythmbox, which I love :D

Jon said

Followed the instructions above to install on a Lucid 64bit. When I open the “Update Manager”, Rhythmbox is listed as available for update but is greyed out and can’t be selected or upgraded. When open Synaptic and try to mark Rhythmbox for upgrade, I get the following dialog box…

http://www.freeimagehosting.net/uploads/1d05907b9d.png

[…] the plugin? Found a bug? Be sure to let the developer know what you think over @ this link. © omgubuntu.co.uk 2010. | The ubuntu blog for the ubuntu user<img width="1" […]

Monica said

Great plugin! I’ve used this every time I go through a Rhythmbox-as-my-music-player phase, and it works wonders! :D

Btw, I translated your article into Spanish in my blog
http://monikgtr.posterous.com/lastfm-for-rhythmbox-ubuntu-new-style

thanks again for the plugin! :)

¡Gracias!
Glad you like it.

Slate8 said

Awesome plugin, just what I was looking for, thanks!

Dzvinka said

Hi, Jürgen! Thanks for the great plugin, but unfortunately when I was trying to run patch on my i386 Ubuntu 10.04 Rhythmbox 0.12.8 – I got the following error:

dzvinka@dzvinka-laptop:~$ sudo patch -NEp1 < scrobbler-v3m.patch
patching file configure
Hunk #1 FAILED at 18967.
Hunk #2 FAILED at 20116.
2 out of 2 hunks FAILED — saving rejects to file configure.rej
patching file configure.ac
Hunk #1 FAILED at 818.
1 out of 1 hunk FAILED — saving rejects to file configure.ac.rej
patching file plugins/Makefile.am
Hunk #1 FAILED at 1.
1 out of 1 hunk FAILED — saving rejects to file plugins/Makefile.am.rej
patching file plugins/Makefile.in
Hunk #1 FAILED at 96.
Hunk #2 FAILED at 354.
2 out of 2 hunks FAILED — saving rejects to file plugins/Makefile.in.rej
The next patch would create the file plugins/scrobbler/Makefile.am,
which already exists! Skipping patch.
1 out of 1 hunk ignored
The next patch would create the file plugins/scrobbler/Makefile.in,
which already exists! Skipping patch.
1 out of 1 hunk ignored
The next patch would create the file plugins/scrobbler/rb-scrobbler-plugin.c,
which already exists! Skipping patch.
1 out of 1 hunk ignored
The next patch would create the file plugins/scrobbler/scrobbler.rb-plugin.desktop.in,
which already exists! Skipping patch.
1 out of 1 hunk ignored

Since I'm not big on the development, can you please advise how can I fix this and be able use your really awesome plugin which I think is absolute "must have".

This looks like you’re trying to apply the patch to an already patched directory (“The next patch would create the file plugins/scrobbler/Makefile.am, which already exists!”, …).

Technically you don’t have to build the plugin yourself as there are pre-built packages for Ubuntu 10.04 (both i386 and amd64), just follow the instructions above.

Yunkwan said

Ubuntu repo just pushed an update, would you update this rhythmbox in your PPA?

Yep, later today.

Like mentioned above, you can tell apt to only upgrade rhythmbox if there’s a new version in my repository by adding the following to /etc/apt/preferences:

Package: rhythmbox
Pin: release l=jkreileder
Pin-Priority: 999

Updates are available now.

[…] que has agregado, etc. Solo la versión del cliente para Linux no tiene todas las funcionalidades. Jürgen Kreileder escribió un plugin para Rhythmbox que conecta el cliente oficial de last.fm con el reproductor, […]

Sean Southern said

What a great plugin! This was the only function I was really missing from Rhythmbox, thank you Jurgen!

[…] es un plugin que permite la conexión entre el cliente oficial de Last.fm y el […]

DrDamage said

Actually you CAN love a track from within Rhythmbox, using only the last.fm plugin that is shipped with Rhythmbox by default. All you need to do is to, while listening to the track you want to love of course, click the last.fm button in the left panel, and then click on the heart that appears in the toolbar…voila!

PS: Forgive me if this was already mentioned in any of the previous comments.

winnie said

Really nice work I love your plugin! Currently your package is replace by the rhythmbox from officicial Ubuntu Maverick repo though. Can you fix that?

I’ve updated it now.

Thanks!

Stu said

This is cool, any idea what needs to happen for this to go upstream ?

dmitry (rus) said

jurgen BIG THANKS FOR YOUR PLUGIN!!!!! RESPECT FROM RUSSIA!

Jasper said

Thanks!

mb78 said

Thnx for this, saved me. ;-)
Using Ubuntu 10.10 and Rhythmbox 0.13.1 nothing scrobbeld although the Lastfm plugin was active and proper configured.
Now there’s updates again on my Lastfm Profile. :-)

ilukrismx said

Works 100%!!!! thanks a lot

Hannes said

Thank you so much for this great plugin!
Keep up the good work.

Cameron said

Hi, this sounds great, I would love to try it out, I’ve followed the process through many times yet can never find the plugin when I’m finished. Don’t know what’s wrong.