Home > General, Hardware, Software > Compiling Firefly Media Server under Ubuntu 7.10 (Gutsy Gibbon)

Compiling Firefly Media Server under Ubuntu 7.10 (Gutsy Gibbon)

December 22nd, 2007 paul Leave a comment Go to comments

I have been running the Firefly Media Server (mt-daapd) for sometime now. I initially installed the version that is supplied in the Ubuntu universe repository which is currently version 0.9-svn-1586.

Recently I purchased a Pinnacle Soundbridge (Roku Soundbridge outside of the UK) and wanting to be bleeding edge I check out the Firefly Media Server website and discovered that the latest nightly build is version 0.9-svn-1696. According to the descriptions of the various releases this had several bugs fixed, including a major memory leak. The author kindly produced deb packages for most versions of Ubuntu except for Gutsy, so I decided to see if I could compile from source and get the latest up and running. Not being a Linux expert I did some research and did not find a single guide that was 100% correct, so I have hopefully captured all the commands that I used to get this up and running. I hope this is sufficient information for those like me who are unfamiliar with compiling from source.

First of all open a terminal window. We are going to install all the project dependencies. This can be achieved with the following command:-

$ sudo apt-get install libsqlite3-0 libsqlite3-dev gawk gcc g++ make libid3tag0-dev libgdbm-dev libavahi-client-dev libnss-mdns avahi-daemon avahi-discover

Some of these may already be installed on your system, but just select yes when prompted to install those that are missing.

Now we are going to create a directory to install the source into and move into it:

$ cd /opt
$ sudo mkdir src
$ cd /src

Now we must download the tarball from the Firefly Media Server website.

$ sudo wget http://nightlies.mt-daapd.org/dl.php?FILE=mt-daapd-svn-1696.tar.gz

Before we can compile the code we need to extract the contents of the tarball and move into the directory it creates:

$ sudo tar -zxvf mt-daapd-svn-1696.tar.gz
$ cd mt-daapd-svn-1696

Now we are going to configure the environment and make sure we have all our dependencies installed correctly:

$ sudo ./configure -prefix=/usr --enable-sqlite3 --enable-avahi

If this runs without an issue enter the following:

$ sudo make

Followed by:

$ sudo make install

Before we can start the server we must create the configuration file, we can start with the one provided with the source package, copy this one to the correct location as follows:

$ sudo cp /opt/src/mt-daapd-svn-1696/contrib/mt-daapd.conf /etc/mt-daapd.conf

You can then edit this file using your favourite text editor, but if you want to say within the terminal enter:-

$ sudo nano /etc/mt-daapd.conf

Ensure that you modify the following:-

dbtype = sqlite3
runas = root
mp3dir = /path/to/your/mp3/files

This should be all you need to do at first, read the documentation for details of the other configuration commands. You should be able start your Firefly Media Server with the following command:-

$ sudo mt-daapd

You can see the web interface by pointing your browser to http://localhost:3689, entering a username of admin and password of mt-daapd. You can change localhost to the ip of the machine if you are accessing from a different machine to that which the server is installed.

  1. Bernd Ludwig
    April 25th, 2008 at 15:11 | #1

    Thanks very much! Installed ff on Ubuntu 8.04 without problems!

    Bernd

  2. July 12th, 2008 at 14:00 | #2

    This is how to get flac work on Firefly:
    1. Install libflac
    2. when configuring firefly also add –enable-flac
    3. Add .flac under extensions in mt-daapd.conf
    Please note that flac won’t work with iTunes, but it works with Rhythmbox

  3. mike
    July 30th, 2008 at 17:08 | #3

    Works great on U 8.04, but how about running at startup?

  4. July 30th, 2008 at 21:55 | #4

    Mike, I have Webmin installed and added the startup via the ‘Bootup and Shutdown Processes’ section. However I have done a quick Google and found this article that looks like it does what Webmin does.

    http://ubuntu.wordpress.com/2005/09/07/adding-a-startup-script-to-be-run-at-bootup/

    The script I have on my system is:

    #!/bin/sh
    # Firefly Media Server

    case “$1″ in
    ‘start’)
    ;;
    ‘stop’)
    ;;
    *)
    echo “Usage: $0 { start | stop }”
    ;;
    esac
    exit 0

    I hope this helps.

  5. Michael
    January 5th, 2010 at 18:56 | #5

    Thanks for the guide

    The updated link to the tarball is

    http://nightlies.fireflymediaserver.org/nightlies/svn-1696/mt-daapd-svn-1696.tar.gz

  1. April 11th, 2009 at 06:45 | #1