Powerswitchtail is a good option, especially for people without the proper training for dealing with mains voltage. And you can certainly buy most of the bits from sparkfun, though they seem a little expensive to me for the generic bits and pieces. I bought most of my stuff from eBay.
The device is powered from the mains, since it is switching mains. No need for batteries etc as it saves all of its settings to internal EEPROM. The simplest power supply you can have for it would be an iPhone charger ($5 on eBay) which gives you 5V 500mA on a USB port; everything in the timer can be powered through the Arduino's USB port. You don't need a PC to use it as long as you don't want to save more than 7 stored programs; the PC is needed only for backing up your stored exposure programs.
While I disagree with some of Nicholas' pricing estimates (I just bought most of those parts and the prices I listed are what I paid), there is of course a sliding scale of quality and you can literally spend as much as you want when building this. For sure I am not using a custom wooden box, I'm using a black ABS prototype box or maybe a diecast one if I'm feeling fancy. And yes, I am making good use of my huge electronics "junquebox"
In terms of value proposition vs products like Nicholas', there is only value in using this if you know where to buy cheap parts, don't value your time, have the necessary skills+tools on hand and/or want to be able to hack your timer to add new functionality. If you want an off-the-shelf, supported thing that Just Works you should go buy a finished product. Nicholas' point about no profit margin with a sale price of $259 should tell you why I'm not selling these things as finished products or kits; it's a labour of love for me too and I choose to make my IP available to those who want to replicate the laborious part.
The interesting thing about the GPL is that commercial operations like Darkroom Automations can take my published source code and sell you this very product in a fancy wooden box with fancy keypads etc at whatever price-point they desire; the only hook is that they must publish the source code. If it runs mine unmodified then they can just point to mine but if there are any improvements, they must publish those improvements so that the rest of us can make use of them.