There is now also this option: Heimdall, cross-platform open-source tool to flash Galaxy S Captivate. It worked on Linux for me for the AT&T Galaxy S Captivate SGH-I897, and I was actually able to update to Gingerbread 2.3.3., skipping Froyo. At your own risk. http://www.glassechidna.com.au/products/heimdall/
This tutorial is also helpful although for Heimdall 1.1 not 1.3. Make sure you read the Heimdall 1.3 README for what is different. http://www.youtube.com/watch?v=6TgyaUbjcm4
Make sure you check these out too, but note differences between Heimdall 1.1 and 1.3:
http://forum.xda-developers.com/showthread.php?t=878686
http://wmarkito.wordpress.com/2011/02/11/flashing-android-froyo-in-a-galaxy-s-with-ubuntu-and-heimdall/

































