hechtus / squeezebox-googlemusic

Squeezebox (Logitech Media Server) Plugin for Google Play Music
103 stars 24 forks source link

Simplify the Installation Process #6

Open hechtus opened 11 years ago

hechtus commented 11 years ago

The installation process is too complicated. Possible simplifications could be

The separate installation of the gmusicapi Python package is mandatory and reasonable.

hechtus commented 11 years ago

It's now possible to install the plugin through the repository http://hechtus.github.io/squeezebox-googlemusic/repository/repo.xml.

DannyKudos commented 11 years ago

Thanks ! I added the repository and tried to install the plug in, but it wouldn't install. Let me know if you need any logs etc etc

hechtus commented 11 years ago

@DannyKudos:Have you done steps 1 to 4 from the installation procedure? Are you able to download the repo.xml and the zip http://hechtus.github.io/squeezebox-googlemusic/repository/GoogleMusic-v0.1.zip by hand? And yes, a server log would be helpful. Normally, this is located under /var/log/squeezeboxserver/server.log.

DannyKudos commented 11 years ago

ahh... sorry. When I saw it was available through a repository I thought it would be a one step complete install (a la Triode's Spotify plugin). I should have paid more attention. Also your full instructions look like linux whereas my server is on a windows machine. I'll keep an eye out and wait until your plug in is ready for normal punters like me ;-). Very much looking forward to it.

hechtus commented 11 years ago

To really simplify the installation procedure, one could try to port the Google Music Mobileclient API to Perl. This way a one-step-complete-install would be possible. Any volunteers out there?

RyanMelena commented 10 years ago

Could this be useful in converting the Google Music API to perl? http://perthon.sourceforge.net/

hechtus commented 10 years ago

It would, indeed. But I don't expect to much from this tool. Apart from the fact, that it is not maintained, the Google Music API depends on several other Python packages, that would have been translated as well or being replaced by suitable Perl packages.

elfez commented 10 years ago

As an aside the docs could do with being updated to point to https://support.google.com/accounts/answer/185833?hl=en in case the google account is using 2 factor auth. That caught me out and took a little while to figure out.

hechtus commented 10 years ago

@elfez Are you doing/using two-factor authentication with the plugin? If so, could you please give a short discription on how you did it? You may also write some hints in issue #30.

ultraschuppi commented 10 years ago

i am using 2-factor-auth with google, all you need to do is generating a special password (app-specific) for the plugin

the link @elfez gave here is the best explanation how to do this: https://support.google.com/accounts/answer/185833?hl=en

ukslim commented 10 years ago

The link @elfez sent says it all really.

Generate an app-specific password -- which is 16 random chars. Copy/paste that into the gmusic plugin config.

Again, it would be cool if the plugin supported actual two-factor authentication (you supply your "normal" password, you're prompted for a token from Google Authenticator, the app gets a token which it can use from then on) -- but it's nothing that prevents anyone from using the plugin.

On 12 March 2014 12:52, Ronald Hecht notifications@github.com wrote:

@elfez https://github.com/elfez Are you doing/using two-factor authentication with the plugin? If so, could you please give a short discription on how you did it? You may also write some hints in issue #30https://github.com/hechtus/squeezebox-googlemusic/issues/30 .

Reply to this email directly or view it on GitHubhttps://github.com/hechtus/squeezebox-googlemusic/issues/6#issuecomment-37404477 .

"There is no way to peace; peace is the way"

hechtus commented 10 years ago

OK, thanks. I will have a look and maybe try it out by myself.

heapxor commented 10 years ago

Yes, this solution works properly. Log is full of:

[14-03-12 21:12:29.0888] Slim::Web::Pages::Playlist::playlist (166) Error: Couldn't retrieve objectForUrl: [] - skipping! [14-03-12 21:12:29.0916] Slim::Schema::objectForUrl (816) Error: Null track request! Returning undef. [14-03-12 21:12:29.0921] Slim::Schema::objectForUrl (816) Backtrace:

frame 0: Slim::Utils::Log::logBacktrace (/usr/share/perl5/Slim/Schema.pm line 816) frame 1: Slim::Schema::objectForUrl (/usr/share/perl5/Slim/Web/Pages/Playlist.pm line 164) frame 2: Slim::Web::Pages::Playlist::playlist (/usr/share/perl5/Slim/Web/HTTP.pm line 1101) frame 3: Slim::Web::HTTP::generateHTTPResponse (/usr/share/perl5/Slim/Web/HTTP.pm line 924) frame 4: Slim::Web::HTTP::processURL (/usr/share/perl5/Slim/Web/HTTP.pm line 734) frame 5: Slim::Web::HTTP::processHTTP (/usr/share/perl5/Slim/Networking/IO/Select.pm line 139) frame 6: (eval) (/usr/share/perl5/Slim/Networking/IO/Select.pm line 123) frame 7: Slim::Networking::IO::Select::ANON (/usr/share/perl5/Slim/Networking/IO/Select.pm line 184) frame 8: (eval) (/usr/share/perl5/Slim/Networking/IO/Select.pm line 184) frame 9: Slim::Networking::IO::Select::loop (/usr/sbin/squeezeboxserver line 695) frame 10: main::idle (/usr/sbin/squeezeboxserver line 645) frame 11: main::main (/usr/sbin/squeezeboxserver line 1158)

[14-03-12 21:12:29.0924] Slim::Web::Pages::Playlist::playlist (166) Error: Couldn't retrieve objectForUrl: [] - skipping! [14-03-12 21:12:34.4468] Plugins::GoogleMusic::ProtocolHandler::getNextTrack (103) Looking up stream url for url googlemusic:track:Tkywgcqxexfv2s7ahk756ub6xpq failed. [14-03-12 21:12:38.5143] Plugins::GoogleMusic::ProtocolHandler::getNextTrack (103) Looking up stream url for url googlemusic:track:Tkywgcqxexfv2s7ahk756ub6xpq failed.

hechtus commented 10 years ago

If you are getting the following errors

[14-03-12 21:12:34.4468] Plugins::GoogleMusic::ProtocolHandler::getNextTrack (103) Looking up stream url for url googlemusic:track:Tkywgcqxexfv2s7ahk756ub6xpq failed.

You will have to switch to the development version of gmusicapi. Unfortunately, Google did some changes on the API recently. Please have a look at issue #31.