Reply To: mt-daapd on Terastation – NOW WORKING

#10985
Anonymous
Inactive

I would but it looks complicated 🙂 Can someone else do it?

Firefly on Terastation mini how-to

Introduction
This document explains how I got Firefly aka mt-daapd running on a Terastation Home Server. I wanted to do this because I believed that if I bought a Buffalo Terastation and a Roku Soundbridge I’d be able to create play lists in iTunes and access them through the Terastation. Unfortunately, because I live in the UK I got a Pinnacle branded Soundbridge which won’t ‘see’ iTunes xml files.

Disclaimer
Follow any suggestions here at your own risk. Don’t blame me if your Terastation ends up as useful as a door stop. It worked for me but I did have to reinstall the firmware three times and my Terastation spend a week in Japanese. Any advice given does not follow good practice but is a bare minimum to get it working. So far Ogg and Flac are untested because I went for .wav files as I have loads of storage (so do you if you own a Terastation)

Install new firmware
This is where you get to invalidate the guarantee on your Terastation. You need telnet and root access before you can start. If you don’t know what this means you need a Linux course first.
I used version 2.11 firmware which I found here:- http://homepage.ntlworld.com/itimpi/buffalo.htm
Follow the instructions carefully and everything should go well. I use putty.exe to log in to my Terastation from my Windows machine.

Download the files
You’ll need the following libraries. Generally software compiled for Debian PowerPC seems to work. You might not get, or need, exactly the same versions as these, but these are the ones I used.

libgdbm3_1.8.3-2-binaries-ppc.tar
libid3tag_0.15.1b-binaries-ppc.tar
sqlite_2.8.17-2_powerpc.deb
libogg0_1.1.3-2_powerpc.deb
libvorbis0a_1.1.2.dfsg-1.2_powerpc.deb
libflac7_1.1.2-6_powerpc.deb
zlib_1.2.3-ppc.tar

mt-daapd_0.9-svn-1586_sarge_powerpc.deb from http://nightlies.mt-daapd.org/

I used XacRett to ‘undeb’ the files on my Windows machine before copying over to the TS. This will generate a file called ‘control.tar’ which you can discard and one called ‘data.tar’ which you’ll need to rename to avoid confusion later.

Create a special folder, mine’s called ‘firefly’, as a shared folder on the Terastation and copy all the stuff you’ve downloaded here.

Unpack and install
Use
tar -zxvf filename
not
tar -C / -zxvf filename
This will install the files in the current directory not the root directory

Make links
In /usr/lib create the following links:-

libid3tag.a -> /mnt/array1/firefly/usr/local/lib/libid3tag.a
libid3tag.la -> /mnt/array1/firefly/usr/local/lib/libid3tag.la
libFLAC.so.6 -> /mnt/array1/firefly/usr/lib/libFLAC.so.7
libid3tag.so -> /mnt/array1/firefly/usr/local/lib/libid3tag.so
libid3tag.so.0 -> /mnt/array1/firefly/usr/local/lib/libid3tag.so.0
libid3tag.so.0.3.0 -> /mnt/array1/firefly/usr/local/lib/libid3tag.so.0.3.0
libogg.so.0 -> /mnt/array1/firefly/usr/lib/libogg.so.0
libvorbis.so.0 -> /mnt/array1/firefly/usr/lib/libvorbis.so.0
libvorbisfile..so.3 -> /mnt/array1/firefly/usr/lib/libvorbis.so.0 (NB This may break vorbis but doesn’t affect wav files)
libz.so -> libz.so.1
libz.so.1 -> libz.so.1.2.3 not libz.so.1.1.4
(NB libz.so.1.1.4 remains as may be used by other stuff)

Copy /mnt/array1/firefly/etc/init.d/ mt-daapd to /etc/init.d/mt-daapd and edit the line following line:-
DAEMON=/mnt/array1/firefly/usr/sbin/mt-daapd

In /etc create
mt-daapd.conf -> /mnt/array1/firefly/usr/share/doc/mt-daapd/mt-daapd.conf

Edit mt-daapd.conf to suit. I changed the following:-

web_root = /mnt/array1/firefly/usr/share/mt-daapd/admin-root
db_parms = /mnt/array1/firefly/var/cache/mt-daapd
mp3_dir = /mnt/array1/Music
playlist = /mnt/array1/firefly/usr/etc/mt-daapd.playlist
ssc_prog = /mnt/array1/firefly/usr/bin/mt-daapd-ssc.sh
extensions = .mp3,.m4a,.m4p,.wa v
plugin_dir = /mnt/array1/firefly/usr/share/mt-daapd/plugins

Change ownership of /mny/array1/firefly to nobody:

Start firefly
/etc/init.d/mt-daapd start
Check log file (/usr/log/messages is default) you should see something like
Firefly Version svn-1586: Starting with debuglevel 2
Plugin loaded: ssc-script/svn-1586
Plugin loaded: rsp/svn-1586
Plugin loaded: daap/svn-1586
Starting rendezvous daemon
Starting signal handler
Initializing database
Starting web server from /mnt/array1/firefly/usr/share/mt-daapd/admin-root on port 3689
Registering rendezvous names
Serving 6864 songs. Startup complete in 17 seconds
Rescanning database

That’s it