SqueezeCenter

From SME Server
Revision as of 22:50, 18 October 2008 by Christian (talk | contribs)
Jump to navigation Jump to search

SqueezeCenter

  Skill level: Medium
The instructions on this page require a basic knowledge of linux.


Description

SqueezeCenter is the media server component of Slim Devices's (now a Logitech company) media playing devices such as Squeezebox™. Not only will it power any Squeezebox™ or Transporter®, but also any software MP3 player on your network. SqueezeCenter 7.0 runs on Windows, Mac, Linux, BSD and Solaris.

This How-to describes the installation and updating of SqueezeCenter only on SME Server. Please refer to SqueezeCenter's product and help pages for operation.

Links

Slim Devices home page

http://www.slimdevices.com

Originating discussion leading to this wiki entry

http://forums.contribs.org/index.php?topic=40815.0

Credits

Originator: bricknell - documented his struggles and successes for others

Procedure: william_syd - initially documenting a succinct procedure

Documenter: Christian - verified procedure and initiated wiki entry

Configure necessary repositories

First you need to update yum of the SqueezeCenter repository. SqueezeCenter maintains three respositories: Release, Testing, and Unstable. For most purposes you should only use the Release stream. All of these entries will be disabled by default.

Setup the Repository

Release

You should use this and only this for most installations. The other repositories are for experimentation or bleeding edge.

db yum_repositories set squeezecenter-release repository \
BaseURL http://repos.slimdevices.com/yum/squeezecenter/release/ \
EnableGroups no \
GPGCheck no \
GPGKey http://repos.slimdevices.com/yum/squeezecenter/RPM-GPG-KEY-SqueezeCenter \
Name 'SqueezeCenter Release Repository' \
Visible no \
status disabled
Testing

Normally you should not bother with this unless you want bleeding edge. You can safely omit this. It is provided for reference.

db yum_repositories set squeezecenter-testing repository \
BaseURL http://repos.slimdevices.com/yum/squeezecenter/testing/ \
EnableGroups no \
GPGCheck no \
GPGKey http://repos.slimdevices.com/yum/squeezecenter/RPM-GPG-KEY-SqueezeCenter \
Name 'SqueezeCenter Branch Repository' \
Visible no \
status disabled
Unstable

Normally you should not bother with this unless you want bleeding edge. You can safely omit this. It is provided for reference.

db yum_repositories set squeezecenter-unstable repository \
BaseURL http://repos.slimdevices.com/yum/squeezecenter/unstable/ \
EnableGroups no \
GPGCheck no \
GPGKey http://repos.slimdevices.com/yum/squeezecenter/RPM-GPG-KEY-SqueezeCenter \
Name 'SqueezeCenter Trunk Repository' \
Visible no \
status disabled

Inform Yum

Now ensure that yum's database is updated. This is needed after any db addition/change to the yum_repositories.

expand-template /etc/yum.conf

Installation

Lets install the star attraction.

yum --enablerepo=squeezecenter-release install squeezecenter

Lets make sure it starts if and when we reboot.

ln -s /etc/rc.d/init.d/e-smith-service /etc/rc.d/rc7.d/S99squeezecenter 

Better give ourselves some control and open the music to the world. You will need both TCP and UDP ports at least initially. If you are concerned about security there is info in the SqueezeCenter forums that tell you precisely when each port is required.

db configuration set squeezecenter service \
status enabled \
TCPPorts 9000,3483 \
UDPPorts 9000,3483 \
access private
  Note:
By default the above enables the service, opens the ports, and sets the access to private (ie. your LAN. If you wish to open this to the internet you change private to public.


to change your install to public, either change private to public above or enter

db configuration setprop squeezecenter access public
  Warning:
If you choose to make SqueezeCenter public then it is highly recommened that you configure SqueezeCenter to require a username and password. This can be done from SqueezeCenter's Settings->Advanced tab.



Tell SME what we have done.

signal-event remoteaccess-update

Create a File Structure

The following is a suggestion on how to create a file structure. You can alternatively create an ibay or user for these. In christian's config for example, he has an ibay with all of his media which points SqueezeCenter and Jinzora to. However he maintains SqueezeCenter's playlists per william_syd's suggestion below.

Lets make somewhere for music and playlists.

mkdir -p /opt/squeezecenter/playlists
mkdir -p /opt/squeezecenter/music

And give squeezey ownership of the above.

chown squeezecenter:squeezecenter /opt/squeezecenter/playlists
chown squeezecenter:squeezecenter /opt/squeezecenter/music
  Note:
If you use an alternate directory entry, you will need to ensure squeezecenter has permissions for that directory. For example by including it in the appropriate group assigned to an ibay.


Initial Launch

Now let the music begin...

Start squeezecenter

/etc/rc.d/rc7.d/S99squeezecenter start

Access the administration page:

http://<SMEserver>:9000

Updating

If the administration page informs you that there is an update available then you can update from the console using the following:

yum --enablerepo=squeezecenter-release update squeezecenter

Other

When installed, a java soft player can be downloaded from the administration.

User experience

Users who have implemented this how-to should add their experiences as data points of success for others. Please sign your experience using four tildes (~).

  • Tested with SME Server 7.3 - Works (Christian 20:54, 13 October 2008 (UTC))