Linux iTunes Serving with mt-daapd
Ever since I’ve gotten my MacBook, I’ve been a little spoiled with new technology. And with that, my aging Debian desktop is nearly unbearable to use. I love Linux and I’m very attached to this computer too, so I’ve been setting it up so the things I use the machine for, can be done over ssh/server-based tools. For example, I now use Azureus’ nifty web-interface, since I need packet encrypting, and AFAIK, Azureus and uTorrent are the only clients that support it outside of the box. The last thing I really needed to do was find a way to efficiently stream my music collection to my MacBook since gnump3d just wasn’t really cutting it.
So naturally, I start googling around and stumbled upon this post on macosxhints.com titled “Use a Linux box as an iTunes music server”. Fortunately, that sounds like exactly what I want! Unfortunately, I couldn’t get mDNSResponderPosix to compile for the life of me. You’d think a vendor who tried to pretend to support open source would offer some support, binaries, documentation, or something to make such a useful tool like mDNSResponder install properly. There are tons of hits of mDNSResponder not compiling properly, but no one had my problem, and very few of them actually solved their problem. I understand Apple’s support of open source is pretty much non-existant, but that’s the beauty of it. Any slack they drop, gets picked up by the community, which is where mt-daapd comes in.
mt-daapd is an implementation of Apple’s Digital Audio Access Protocol (DAAP), which is essentially an HTTP server catered towards serving music across a local network. And since iTunes is pretty much the only competent audio player on OS X (which is both scary and depressing), mt-daapd and iTunes get along quite well.
The install is very painless:
$ sudo apt-get install mt-daapd
and you’re more or less finished. Either edit /etc/mt-daapd.conf or launch http://localhost:3689 (the default port for iTunes music sharing) to open up a nice configuration tool to get things set up properly. I’m not a huge fan of the GUI configs, especially when you have a nice, simple text file to set all your settings. Regardless, the config tool they have is pretty nice, especially for someone not familiar with something like this. As soon as the daemon has started, you’re ready to listen to your music with iTunes. It’s as simple as that. The only problem I forsee is how the database is stored. It organizes song by inode, so your audio files must all be on the same hard drive. Luckily for me, I’ve got my nice 300 GB external with all my tunes on it, and I’ll probably just buy a much larger hard drive if I ever need to.
Thanks for writing this.