S h o r t S t o r i e s

// Tales from software development

Troubleshooting SqueezeBox Server Power Control plugin

leave a comment »

Logitech have been messing around with the name of the SqueezeBox music server software again.

It used to be SlimServer but this was changed to SqueezeCenter after Logitech bought Slim Devices. Now, for no obvious reason, they’ve changed it again to SqueezeBoxServer. I can only assume that Logitech doesn’t realise the problems that this causes, or perhaps it just doesn’t care.

The first problem is that the Ubuntu Package Manager won’t flag the fact that a new version is available because there isn’t a newer version of the SqueezeCenter package. I manually checked, using the package manager, and there definitely wasn’t a new version of SqueezeCenter so I downloaded the installer from the Logitech web site.

I unstalled SqueezeCenter 7.3.2 and then started the installer for version 7.5.2 but  a message was displayed indicating that the same package was available via an official channel in the package manager. I noticed that the package name wasn’t SqueezeCenter but SqueezeBoxServer, So, I cancelled the installation and used the package manager to search for ‘squeezeboxserver’. This time I found it, downloaded it, and installed it. Thankfully this was all straightforward enough.

I then downloaded the latest version of Gordon Harris’s Server Power Control plugin which I use to hibernate the machine that SqueezeCenter, sorry, SqueezeBoxServer, is running on. The installation succeeded and the post-installation steps appeared to run successfully but there were some problems.

The server wouldn’t shutdown or restart although the hibernate function worked. As hibernate is the only function that I regularly use I could live without shutdown and restart but I was curious to know what the problem was.

The problem is the name change. The post installation script,

/var/lib/squeezeboxserver/cache/InstalledPlugins/Plugins/SrvrPowerCtrl\scripts\Debian\srvrpowerctrl-setup.sh

expects the username associated with the SqueezeBox sever to be SqueezeCenter rather than squeezeboxserver and so the changes it makes to the /etc/shutdown.allow and /etc/sudoers files won’t give the squeezeboxserver userid the permissions it needs. This is why shutdown and restart won’t work. The hibernate function works because this calls pm-hibernate rather than the shutdown command.

The simple solution is to make a copy of the script file and rename every occurence of SqueezeCenter to squeezeboxserver and then execute it. You might also want to edit the shutdown.allow and sudoers files to remove the redundant entries for SqueezeCenter.

Update 08/01/2011

I’ve since realised that the current release of the  Server Power Control is not compatible with SqueezeBox Server 7.5.2 at a more fundamental level. However, there is a beta version available that appears to fix all the issues that I’ve experienced. This beta version can be downloaded by entering the following URL into the Additional Repositories textbox at the bottom of the SqueezeBox Server Settings Plugins page:

http://srvrpowerctrl.googlecode.com/svn/beta.xml

and then selecting Server Power Control from the list of plugins listed under ‘Gordon Harris’ plugins’.

Advertisements

Written by Sea Monkey

January 4, 2011 at 8:00 pm

Posted in Debugging

Tagged with

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: