Detecting and identifying different light sources in arduino?
Have you considered using a number of light intensity sensors (type doesn't really matter), each with a different coloured filter over them? A few different colours from different parts of the spectrum would essentially be a simple spectrometer. Optical bandpass filters aren't particularly expensive. Selecting 3 or 4 points in the spectrum (visible or invisible) might give enough data to differentiate between light sources.

There's a range of "DIY Spectrometers" documented online using different techniques. Some people appear to use CDs or cheap diffraction gratings (for example from toy glasses).