Gmusic extension gets disabled

The message is : INFO Disabled extension gmusic: Dependency appdirs>=1.1.0 not found.

I do see /usr/local/lib/python2.7/dist-packages/appdirs-1.4.0.dist-info and the module appdirs is available.

Any help?

Can you provide the output of mopidy deps?

I think I got past that issue, looks to me that the gmusic extension is now enabled. But how do I test? I tried running ncmpcpp locally, but I don’t see any of my Google Play lbrary.

root@elwoodpi:/usr/share/mopidy/conf.d# mopidy --config /usr/share/mopidy/conf.d/mopidy.conf
INFO Starting Mopidy 0.19.5
INFO Loading config from: builtin defaults, /usr/share/mopidy/conf.d/mopidy.conf, command line options
INFO Enabled extensions: mpd, http, stream, gmusic, softwaremixer, local
INFO Disabled extensions: none
INFO Starting Mopidy mixer: SoftwareMixer
INFO Mixing using GStreamer software mixing
INFO Starting Mopidy audio
INFO Starting Mopidy backends: GMusicBackend, LocalBackend, StreamBackend
INFO Mopidy uses Google Music
INFO Audio output set to "autoaudiosink"
INFO Loaded 0 local playlists from /var/lib/mopidy/playlists
INFO Loaded 0 local tracks using json
INFO Starting Mopidy core
INFO Starting Mopidy frontends: HttpFrontend, MpdFrontend
INFO MPD server running at [::ffff:127.0.0.1]:6600
INFO HTTP server running at [::ffff:127.0.0.1]:6680
INFO New MPD connection from [::ffff:127.0.0.1]:53067

I don’t know much about Mopidy-GMusic, so I’ll leave that part to someone else.

Though, I’d like to point out https://docs.mopidy.com/en/latest/debian/. It has some tips about how to manually run Mopidy with the same config as it use when run as a system service on Debian.

Thanks,
This however confuses me. The output from “mopidy config” provides this for my gmusic extension settings. Although all those are set in the --config file; and stdout indicates that the extension is enabled.

[gmusic]
enabled = false ; Extension disabled due to config errors.
username = ; Must be set.
password = ; Must be set.
deviceid =

Did you run mopidy --config /usr/share/mopidy/conf.d/mopidy.conf config ?

Quoting the page I just linked:

Mopidy extensions installed from Debian packages will sometimes install additional configuration files in /usr/share/mopidy/conf.d/. These files just provide different defaults for the extension when run as a system service. You can override anything from /usr/share/mopidy/conf.d/ in the /etc/mopidy/mopidy.conf configuration file.

You should not edit /usr/share/mopidy/conf.d/mopidy.conf. It will be overwritten when you upgrade Mopidy. It is only for Mopidy’s default. Not your own modifications to the config. Instead, use /etc/mopidy/mopidy.conf.

Again, quoting the page:

To run Mopidy subcommands with the same user and config files as the init script uses, you can use sudo mopidyctl <subcommand>. In other words, where you’ll usually run:

mopidy config

You should instead run the following to inspect the system service’s configuration:

sudo mopidyctl config

In short, use sudo mopidyctl config to inspect how Mopidy-as-a-system-service sees the config.

Lastly, make sure to remove “#” from the beginning of any lines you change in your config. “#” is the start of a comment, and makes Mopidy ignore the remainder of the line.

In other words, do it like this:

[gmusic]
username = foo

Not like this:

[gmusic]
#username = foo

Further progress. I saw that I had relax Google account access in order to allow extension to login. Now I can see my entire Google play music library in ncmpcpp locally and play music fine. This being hosted on a Rasberry Pi btw,

I’ve got mopidy setup to run as a service; but right now it’s running from the command line, as root : mopidy --config /usr/share/mopidy/conf.d/mopidy.conf.

Running mopidy config as root still gives me this though:

[gmusic]
enabled = false ; Extension disabled due to config errors.
username = ; Must be set.
password = ; Must be set.
deviceid =

Sorry, but if you expect me to help you, then you actually have to read what I write. Please read my previous post.

Thanks. Here’s my question: Does “mopidy config” report the configs of the currently running instance of mopidy process?

No, it doesn’t query the running server about the config, but reads it from disk based on the arguments passed to the command.

The mopidy command takes an --config argument with one or more config files to read. If you don’t add any subcommand, the mopidy command starts the server with the specified config. If you add the config subcommand, it prints the config, as read by the same logic the server uses when it starts.

mopidy config prints the config of the server started with mopidy.

mopidy --config /foo/bar.conf config prints the config of the server started with mopidy --config /foo/bar.conf.

The Debian package sets up init scripts which starts Mopidy with a custom --config argument so that Mopidy loads config from /etc, which is the proper place for a Debian package installed system service. The helper script mopidyctl runs mopidy with the same --config argument.

In summary:

  • Put your config in /etc/mopidy/mopidy.conf
  • Inspect the effect of the config with sudo mopidyctl config

Thanks. Much appreciated.