Monday, December 18, 2006

Upgrading mt-daapd to firefly

Ever since I ordered the soundbridge I spent a lot of time on forums about mt-daapd and the soundbridge. I found out that the pinnacle soundbridge (available in my country) does not work with the mt-daapd music server I am currently running (0.2.4). I decided not to wait until the SB arrives but to update my server with a more uptodate version of the server. So that if the SB arrives it is truly plug and play. And not "plug -updating my server- and play".

Unfortunately it did not go as smooth as I hoped it would go. First I downloaded the most recent version of firefly, firefly is the software formally knows as mt-daapd. Version 0.2.4 is the last official stable version of firefly. Unfortunately this version may not be compatible with the Pinnacle soundbridge, with the ROKU soundbrigde it should work fine.
So I decided to upgrade to a development version You can find these development "nightly" versions here. As I am still running a ubuntu dapper Linux server, I downloaded the Debian (.deb) package. And typed
sudo dpkg --install mt-daapd_0.9-svn-1450_i386(2).deb
Unfortunately it gave back a list with all kinds of packages that were missing. After an hour I managed to install all the missing packages. And tried another install of the firefly server.

Although the installation went smooth It still did not work. Mt-daapd was clearly running (find all the processes running on your server by typing "top") but it did not show up in my I-tunes. After a while I found out the problem was that, although I re-installed the software, it was still using my old mt-daap.conf file. after overwriting the the old mt-daapd.conf file and restarting the server it showed up in I-tunes and seemed to work perfectly.

I was pretty proud that I all got it working. Unfortunately my mt-daapd.log file was showing loads of errors.
2006-12-17 15:09:58 (00004000): Firefly Version svn-1450: Starting with debuglevel 2
Starting rendezvous daemon
Starting signal handler
Signal handler started
Error: enum_begin failed (error 1): Misc SQL Error: no such table: config
Can't get db version. New database?
Initializing database
Error: enum_begin failed (error 1): ?
Starting web server from /usr/share/mt-daapd/admin-root on port 3689
Registering rendezvous names
Serving 1234 songs. Startup complete in 4 seconds
The database errors confused me, I could not remember that I ever installed a database to support mt-daapd. After a while I found out that firefly was dependend on sqlite database. So I installed the sqlite database
sudo apt-get install sqlite
. After re-installing firefly it finally stopped showing all the errors.

The updated software has some really nice new features, like making playlists with the web interface without restarting the server and it even has a java-applet to play you music from your browser. But more about this in the next post.
From now on I will sum up the links to pages that I found usefull for the topic of the post.

download firefly development
firefly forum
rokulab soundbridge forums

3 comments:

Anonymous said...

Thank you you made my day, after trying for hours why Firefly doesn't count served songs I found your blog and reinstalled sqlite and iot works.....

Anonymous said...

Your blog keeps getting better and better! Your older articles are not as good as newer ones you have a lot more creativity and originality now keep it up!

Anonymous said...

I really like when people are expressing their opinion and thought. So I like the way you are writing