Blog | Tech Blog | Secure Coding | Twitter | RSS Feed | Get Email Updates

FireFly is a nice DAAP based media server that allows you to listen to your music collection anywhere using any DAAP based client like iTunes, with other players (like Winamp, Rhythmbox, VLC, etc) using plugins, or it even has its own dedicated php/flash/java based clients that can be fired up on any platform any computer giving you instant nirvana.

Many people, like me, use it on their Routers or NAS boxes to access their music anywhere without having to keep their home PC running or lugging around external drives. However, development on this gem stopped some time ago. The last stable build released (2.4.2) was good but it doesn’t have a lot of features provided by the nightly builds in svn (subversion). And the last nightly build released (svn-1696) had a lot of broken things. It was rebuilding the database everytime, crashed around quite a bit, had a lot of security holes. So, I decided to get the latest version (trunk) of the FireFly code, as it had a lot of fixes for above issues, put in whatever was missing, and try to build it for my use.

After a day’s worth of efforts, here it is. This latest build is the most rich in features as compared to the stable one, and is just as stable as the 2.4.2 release if not better, and also fixes all the issues shown by the svn-1696 build. The downloadable source and complete install package are attached with this post. But I’m also listing down the steps that I took to achieve this so that if anyone wants to recompile it with their own options (e.g. I haven’t included ogg/flac support in my build), they are able to do so. You can find the steps below. Please let me know if you have any queries. Also, if you want to submit any patches, I’ll be happy to incorporate them and recompile. I’m also trying to get this source and package into the unslung/optware repositories for wider distribution.

Note: Although I’ve compiled this for Asus WL-500W, it should work for most devices with a mipsel architecture (which includes all the Asus routers in this family). Also, the compilation process should work for most other architectures barring one or two steps. I’d be happy to help if you want to do so and face any issues.


Continue reading Compiling Latest FireFly (mt-daapd) for ASUS WL-500W

Blog | Tech Blog | Secure Coding | Twitter | RSS Feed | Get Email Updates

Today, the whole word is going gaga over "Opera Unite", the new technology in Opera 10 which will make your web browser a web server as well (and not just that, it will make a whole lot of “sharing” options available). Well, I’m not so excited about it. Technology wise, it is really cool but what they don’t realize is that this is like giving motorized chain-saw or a swiss army knife in the hands of a two-year old. Seriously, majority of the people around the world who get themselves into all sorts of shit while just plain surfing the net, now got a whole new array of avenues where they can be exploited upon. For people who do need a webserver, there are plenty of straight-forward point and click options available. I hope they atleast have options to completely turn it off and even better, keep it turned off by default.

Blog | Tech Blog | Secure Coding | Twitter | RSS Feed | Get Email Updates

I got myself a Microtek 800VA UPS (MDP800+) a couple of weeks ago to save my PS3 from the frequent power outages that we are seeing in Hyderabad but the purpose was rather lost when I found that it worked fine only till the mains power was on. As soon as there was an outage, it couldn’t stop the PS3 from an abrupt shut down. I ran around the pathetic Microtek customer service for days and they finally sent an “engineer” down to my place (after a week) to diagnose the issue and he couldn’t say anything more than that the UPS is meant for a PC and nothing else. All logical discussions to tell him that PS3 is essentially a PC but in a different form were kind of like pouring water on a well-oiled rock and hoping it would stick.

Kind of disappointed, I had a hunch which solved it for me though today :) . When I tried to read the output voltage from the output ports on the UPS, it showed me 225–230V when main supply was on. As soon as it was switched off, the output dropped to around 160V. On connecting the PS3, it went up a bit (to around 180V). Now, the load should not have been an issue because a PS3 requires 180–350W I think, which can easily be given by even a 500VA UPS. So far, all suggestions given to me were to remove everything else from the UPS except the PS3, but that was actually my setup in the very first place.

The weird idea that I had was that the problem is, in fact, that the PS3 is not enough load for it. Call me crazy but as soon as I connected my TV also to the UPS, it started working just fine and dandy. No trip ups now, and I can even cold-boot my PS3 and TV from the UPS backup alone.

Now, I ain’t the sharpest tool in the shed when it comes to electrical stuff (in fact this was one of my most dreaded subjects during my graduation). So, if anyone can give me a sound reasoning behind what I just saw would be very much appreciated. Or is this a real fault with the unit that I got, or maybe it is a defect in all the Microtek UPS’s? Anyways, I ain’t complaining till it’s working for me :) and if you are seeing the same issues you could try the same as well.

Blog | Tech Blog | Secure Coding | Twitter | RSS Feed | Get Email Updates

Update: It has come to my notice that many people do not know about this (and other problems listed in comments of this post). Please digg and reddit this post so that more people can be made aware of it before they upgrade unknowingly.

You should not upgrade to Ubuntu 9.04 (aka Jaunty Jackalope), released a few weeks ago, if:

  1. You have an older ATI graphics card (prior to R500, .e.g xpress 200m)
  2. You like to have 3D support (read compiz/games, etc)

This is because of the following reasons:

  • Ubuntu Jaunty Jackalope has the new version of X.org server (1.6)
  • The open source graphics drivers for ATI do not have 3D support
  • The only version of the ATI properietary drivers (fglrx\Catalyst) compatible with X.org server 1.6 is 9.4
  • Support for older cards (mentioned above) was dropped from fglrx 9.4

So, basically right now you are in a soup and it seems to me that this is going to remain this way unless someone figures out how to backport x.org 1.5 onto Jauntu, which is going to be a hell of a task, IMHO :P

But, if you are a simple person, who looks beyond the gloss of the 3D and marvels at the beauty that the rest of the system holds, then go right ahead and dive in :)

If you have used perforce, you'd have definitely come across a situation where you wanted to sync files belonging to two different labels, but as soon as you sync the second label, the files from the first label get deleted. P4 help suggests the following ways to achieve this:
PLAIN TEXT
CODE:

p4 sync @label1,label2

or something like
PLAIN [...]

Figlet is a brilliant tool to convert text to amazing ASCII Art that I have used for many years. This weekend I thought of creating an online version of it, so that anyone can use it even if they can't install it on their systems. It is pretty easy to use. The drill is just [...]

Since quite some time, Google Reader has included the feature to share interesting items with your friends who also use Google Reader. Some time back they also added the option to "Share with a Note" to add your take to the shared piece. But I always thought there was no way to share back by [...]

If you have an Asus WL-500W, the DIYers’ favourite wireless router, and have installed the Oleg custom firmware on it, then you would have set up a shutdown script for it, that allows your router to shut down gracefully. This is especially important if you have a USB hard disk attached to it. There are [...]