OK, I'm finally s-off via Mac Terminal!
For those using a Mac, you will need to download the Android SDK starter package as well as the platform-tools addition (platform-tools is not part of the starter package, but is easily obtained by running the android command in the terminal once you've downloaded SDK and downloading it from the menu). The platform contents will automatically be saved in your SDK folder. You can get the SDK here: Android SDK | Android Developers
Also, you still need to download the mini-adb-inc package that Scotty has on the OP because you still need the flash_image and mtd0.img files to push to your phone. After that, the steps are the same, but with a few minor tweaks that I'll detail below.
So, I'll begin at step 2: "2)root with unrevoked 3.22"
worked flawlessly, just make sure to use the unrevoked 3.22 link for Mac that Jess found and Scotty added to the bottom of the OP. This will simply get you root with s-on.
GREEN instructions are what I tweaked...
if it's bold, it's code
3)prepare to downgrade
-extract the mini-adb_inc .zip. place the mtd0 and flash_image in your Android SDK platform-tools folder
. (no real need to put anything at root directory if you don't want, I'll explain why in a moment)
-place the 2.2 downgrade on the root of your sd card...this part of step 3 is the same.
4)downgrade with adb
. This is where things get more interesting.
At this point, I've assumed the Mac users know how to get to your terminal...if not, go to Applications->Utilities->Terminal. Go ahead and check your md5's...the command in Terminal is simply md5, not md5sums. OK, moving along...
-make sure phone is plugged in and usb debugging checked on,in charge only mode
-at the promt in your Terminal window:
cd <after the space, drag the platform-tools folder from the Finder window and drop it into the command line...this will automatically load your path and why you don't necessarily need to place everything in your root directory>
Here's what mine looked like:
gkinsellas-imac:~ gkinsella$ cd /Users/gkinsella/AndroidSDK/platform-tools
./adb devices must use ./ in front of the command to execute the adb commands from the platform-tools folder
md5 mtd0.imgmd5 flash_image
for both of these, type the md5 command followed by a space, and then drag and drop each file to automatically include the path for the file. These will return the same numbers Scotty has on the OP
./adb push flash_image /data/local/
./adb push mtd0.img /sdcard/
./adb shell your prompt should change to a #. if it changes to a $,then type su note your phone may pop up a message asking you to allow permissions the first time you do this (the first time I did this, I received a "Permission denied" message...I typed su again and got the # prompt). if it does check "always" and touch "allow" on the superuser request on the phone screen.
chmod 0755 /data/local/flash_image
./flash_image misc /sdcard/mtd0.img
NOTE: no changes to these commands because you're now in the phone!
you can now downgrade back to 2.2,so you can run "unrevoked forever" to regain s-off
exit to get back to $ prompt
exit to get back to the "platform tools" prompt
./adb reboot bootloader this will boot your phone to "fastboot" select "bootloader" with the power button.
And that's it! Follow everything after the bootloader instruction as Scotty outlined. I'll put a copy of my session on the next post. I hope this helps...Scotty, I'm not sure how you want to add this to your OP as it's not much different code-wise obviously, but definitely a few different steps than what you had.