Gnome Music: org.mpris.MediaPlayer2.ExtensionSetRatings interface not implemented

Hi all!

I just now realised I can’t launch Gnome Music on my machine. If I do so, I get the following error message:


> gnome-music 
Traceback (most recent call last):
  File "/usr/lib/python3.6/site-packages/gnomemusic/mpris.py", line 72, in on_method_call
    result = getattr(self, method_name)(*args)
  File "/usr/lib/python3.6/site-packages/gnomemusic/mpris.py", line 707, in GetAll
    % interface_name)
Exception: ('org.mpris.MediaPlayer2.GnomeMusic', 'This object does not implement the org.mpris.MediaPlayer2.ExtensionSetRatings interface')

Does any one know how to understand this? Is this a bug? Can someone confirm this behaviour?
Is there any fix I can apply?

Best regards!
pbiel

Hi
So you have done a media packages switch? If you create a test user and login as that user and try running gnome-music, does it duplicate?

I tried here (20170808) and works fine showing/playing mp3 tracks.

It works on an other account … And I realised it also works as long as I do not use the Media for Gnome, which interacts with MPRIS. Makes some sense, so there’s probably a bug in Media Player Indicator.
It’s in their bug tracker: https://github.com/JasonLG1979/gnome-shell-extensions-mediaplayer/issues/409 – however, the dev blames Gnome Music (or openSUSE?) for its behaviour, even though I don’t really understand what he refers to.

Dev here.

To illiterate:

I’m blaming Gnome Music for throwing an Exception(error) when they are asked for properties of an interface which they do not implement and thus self destructing themselves. As I said in the original bug report, according to the lead author of the MPRIS spec extending the MPRIS interface with custom extensions is perfectly fine as per [MPRIS] program specific interface . So instead of self destructing when they are asked for properties of an interface which they do not implement they should just return an empty array.

From https://github.com/GNOME/gnome-music/blob/master/gnomemusic/mpris.py#L699-L707

    elif interface_name == 'org.freedesktop.DBus.Properties':
return {}
    elif interface_name == 'org.freedesktop.DBus.Introspectable':
return {}
    else:
raise Exception(
    'org.mpris.MediaPlayer2.GnomeMusic',
    'This object does not implement the %s interface'
    % interface_name)

Should simply be:

    else:
return {}

Why gnome-music has ever worked well?
Better to use lollypop