<?sphp $this->text('pagetitle') ?>
 
Home of the Squeezebox™ & Transporter® network music players.

Logitech Media Server RPM

From SqueezeboxWiki

Revision as of 05:26, 30 June 2015 by Mherger (Talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

This page needs editing. Probably a bit outdated, for instance, it's not Squeezecenter anymore, it's Squeezebox Server.

The RPM for Squeezebox Server 7.0 (and newer) has the following major changes from the SlimServer 6.x RPMs:

  • Rename to squeezecenter and obsolete slimserver
  • Compatible with FHS and Fedora Packaging Guidelines
  • Use system copy of mysqld
  • Add condrestart option to init and support for logrotate
  • Build from the public tarball, not the munged makerelease.pl one
  • Simplify and rewrite %pre and %post scriptlets
  • Support for SUSE, not just Red Hat/Fedora
  • Add support for SELinux on Fedora and CentOS 5
  • Various bug fixes

Contents

Supported platforms

Tested with CentOS 4, CentOS 5, Fedora 7, Fedora 8, Fedora 9, openSUSE 10.3 and openSUSE 11.0. Should also work with any distribution derived from one of those.

Installation without yum

You can browse the repos at http://downloads.slimdevices.com/. Install the latest release with (or similar):

rpm -Uvh http://downloads.slimdevices.com/nightly/.../logitechmediaserver-7.x.y.noarch.rpm.

If you see an error like "error: Failed dependencies: /usr/bin/mysqld_safe is needed by squeezecenter-7.0.1-1.noarch", it means that you do not already have the package containing mysqld installed. You must first install the appropriate package for your Linux distro (mysql-server for Red Hat, mysql for SUSE, possibly different for others).

Upgrading

  • Upgrading from any released 6.x rpm will preserve your settings. Since the database format has changed, you will need to rescan your library
  • Upgrading from the old RPM nightly (with a name starting with SlimServer_trunk_) will not preserve either your settings or database. However, once you update to a squeezecenter nightly RPM, updates to future squeezecenter nightlys will preserve both settings and the database.
  • If you are upgrading from a SlimServer 6.x RPM without yum, you must use
rpm -Uvh ...

and not

rpm -ivh ...

Otherwise, both versions will be installed and things will likely be broken.

SELinux

The SqueezeCenter RPM will work with SELinux enabled on CentOS 5 and all current versions of Fedora. SELinux must be disabled on CentOS 4 (and probably ClarkConnect)

Plugins

The location for third party plugins has changed to

/var/lib/squeezecenter/Plugins

which is symlinked at

/usr/share/squeezecenter/Plugins

In most cases, plugins should be installed by coping them to /var/lib/squeezecenter/Plugins and unzipping. If a plugin has instructions to unzip it in /usr/local/slimserver (i.e., Alien), it should be unzipped in /usr/share/squeezecenter instead. In general, it is also a good idea to make sure that all Plugins are recursively owned by the user and group "squeezecenter".

New File Locations

For FHS compatibility and due to the name change, many file locations are different from the 6.x RPMs. The basic layout is:

Main SC files           /usr/share/squeezecenter
Slim Perl Modules       /usr/lib/perl5/vendor_perl/Slim
Executables             /usr/libexec
Config                  /etc/squeezecenter
Prefs                   /var/lib/squeezecenter/prefs
Cache                   /var/lib/squeezecenter/cache
Third party plugins     /var/lib/squeezecenter/Plugins
Logs                    /var/log/squeezecenter

Note on username change

As mentioned above, the new RPM runs as the user "squeezecenter" rather than "slimserver". Depending on how you have the permissions and ownership configured for your music and playlist directories, you may need to change them so the new "squeezecenter" user can properly access them.

Version 7.5.1-1 runs as the user "squeezeboxserver" and group "squeezeboxserver".

Other RPM-based distributions

The SqueezeCenter RPM has been designed for RHEL/CentOS/Fedora and SUSE. It should work with other RPM-based distros, but there may be issues that need to be worked-around. Please document them here.

  • Altlinux
    • The RPM dependency for mysqld is incompatible with the way Altlinux builds its package. The workaround is to first install the mysql-server package and then manually install squeezecenter with the –force option.
  • Mandrake/Mandriva
    • You also need to install perl-CGI from the Mandriva repos.

Perl 5.10 Support

Many newer Linux distributions (including Fedora 9, Mandriva 2008.1 aka Mandriva 2008 spring and openSUSE 11.0) ship with perl 5.10. Support for perl 5.10 has been added to SqueezeCenter 7.1, so you must install version 7.1 or higher.

Issues

  • CentOS 4
    • If you ssh into CentOS 4 and start or restart SqueezeCenter manually, you cannot logout. This may also affect other distros. See Bug 8180 for more information.
  • openSUSE
    • If SqueezeCenter is started (along with it's instance of mysql) first, the system mysql daemon will not start. See Bug 7988 for more information.