Setup SlimServer on the FSG

From OpenFSG

Jump to: navigation, search

Introduction

SlimServer powers the Squeezebox, Transporter and SLIMP3 network music players and is the best software to stream your music to any software MP3 player. It supports MP3, AAC, WMA, FLAC, Ogg Vorbis, WAV and more Supported by an international team of developers, SlimServer is released under the Open Source GPL license. SlimServer is available for Mac OS X, Windows, and Linux. Perl source code is also available for all platforms.

Example of SlimDevice

Installation

This How To was first written on the forum by Loslassos.

Slimserver is up and running. And the Squeezebox connects to it. Cool! Very Happy

Hope it helps!

Regards Lasse

I mainly followed the instructions given here: NSLU2 slimserver instructions

1. I started with an almost clean FSG (I deleted the opt-folder from an old ipkg-install and updated the firmware to 3.1.27 and then a reboot)

2. Installed ipkg as described in HowTo Custom ipkg installer and then reboot

3. Added some ipkg feeds in folder /opt/etc/ipkg. I have one feed in each conf-file.

     cross-feed.conf
     src/gz cross http://ipkg.nslu2-linux.org/feeds/optware/ds101/cross/stable
     rmc-fsg-feed.conf
     src/gz rmc-fsg http://www.xs4all.nl/~rmc/fsg/feed
     unslung-cross-feed.conf
     src/gz unslung-cross http://ipkg.nslu2-linux.org/feeds/unslung/cross
     unslung-native-feed.conf
     src/gz unslung-native http://ipkg.nslu2-linux.org/feeds/unslung/native


4. This is to get a native compiling environment. Expat required by Slimserver build-script.

     ipkg update
     ipkg install unslung-devel
     ipkg install expat
     reboot
     ldconfig


5. Modify the build-perl-modules.pl script (find the code section in the script and add the XML-Parser part)

my %packageOptions = (

    'Template-Toolkit-2.13' => {

        'Makefile.PL' => join(' ', qw(
            TT_DOCS=n
            TT_SPLASH=n
            TT_THEME=n
            TT_EXAMPLES=n
            TT_EXAMPLES=n
            TT_EXTRAS=n
            TT_QUIET=y
            TT_ACCEPT=y
            TT_DBI=n
            TT_LATEX=n
        )),
    },

    'DBD-SQLite-1.08' => {

        'env' => [qw(DBI-1.46/blib/lib: DBI-1.46/blib/arch)],
    },

    'XML-Parser-2.34' => {
        'Makefile.PL' => join(' ', qw(
            EXPATLIBPATH=/opt/lib
            EXPATINCPATH=/opt/include
        )),
    },
);

6. Finger crossed. ./build-perl-modules.pl

7. I connect to the FSG through the wan port so I needed to open two ports. I used the same approach as in the wan-print case USB printer through the WAN port:

     /sbin/iptables -I INPUT -i eth1 -p tcp --dport 9000 -j ACCEPT
     /sbin/iptables -I INPUT -i eth1 -p tcp --dport 3483 -j ACCEPT
     /sbin/iptables -I INPUT -i eth1 -p udp --dport 3483 -j ACCEPT


8. Start Slimserver (I have /home/slim/data as my slimserver data dir) ./slimserver.pl --daemon --prefsfile /home/slim/data/slimserver.pref --cachedir /home/slim/data For more options, please see Slimserver documentation.


9. If you want to start up slimserver automagically after reboot you have to name the link in /etc/rc in a way that makes it execute after the opt-mount (S99xopt_mount for me). Since execution order is in alpha/numeric sortorder S99zslimserverstart is ok for me, but S99slimserverstart is not.

Opt-mount is required since slimserver depends on stuff in the /opt structure.

Personal tools