Geohot, the creator of purplera1n, has just released his own iPhone 3GS softwareunlock and named it purplesn0w. Who is purplesn0w for? If you own a jailbroken iPhone 3GS running firmware 3.0 and you want to unlock it to use it with another carrier (T-Mobile only in the USA), then purplesn0w is for you. Are you experiencing wifi/battery/other unlocking problems after using ultrasn0w? Then I highly recommend you try purplesn0w. Geohot says that it’s the best unlock out there.
purplesn0w doesn’t run any deamon (resident app) on the iPhone, it just patches three files: CommCenter, lockdownd, and wildcard. You need an activated device in order to use purplesn0w, this is a minus.
Here is how to install purplesn0w:
Make sure you have an activated iPhone 3GS. If you have T-Mobile make sure you disable 3G in the settings.
Open Cydia, and add http://apt.geohot.com to your sources
Install the com.geohot.purplesn0w package
Watch for the success output in Cydia
Reboot your iPhone 3GS
Once you have followed the steps above, your iPhone 3GS should be unlocked.
Update: Geohot has also posted technical details of purplesn0w here along with the source code of purplesn0w. He plans to release an updated version of purplesn0w with hactivation support.
Sn0wBreeze 2.9.6(pwnagetool for windows, supports untethered jailbreak of iOS 5.1.1 for iPhone 4, iPhone 3GS, iPod Touch 3G, iPod Touch 4G, iPad and Apple TV 2G)
Sn0wBreeze 2.9.3(pwnagetool for windows, supports tethered jailbreak of iOS 5.1 for iPhone 4, iPhone 3GS, iPod Touch 3G, iPod Touch 4G, iPad; untethered for iPhone 3GS with old bootrom; untethered for iOS 5.0.1, iOS 4, iOS 3 supports Apple TV 2G)
Sn0wBreeze 2.8b11(pwnagetool for windows, supports iOS 5, iOS 5.0.1, tethered jailbreak for iPhone 4, iPhone 3GS, iPod Touch 3G, iPod Touch 4G, iPad, Apple TV 2G; untethered for iPhone 3GS with old bootrom)
Current version is ultrasn0w 1.2.3, download in Cydia(unlock for iPhone 4, iPhone 3GS, iPhone 3G, firmwares 3.0-4.3.3; it supports basebands 01.59.00, 04.26.08, 05.11.07, 05.12.01, 05.13.04, 06.15.00)