I don't know if this will work for the Optimus S, but here's how I rooted it on my V:
-add su, superuser, busybox, and the bash directory to the zip file
-edit the updater-script in the zip file adding at the end of the permissions section:
Code:
set_perm(0, 0, 06755, "/system/xbin/su");
I'm still working on getting it fully functional on the Optimus V, I have pretty much everything but the phone/3g itself working. I've made all the changes I know about, but either I'm missing something, or the kernel isn't compatible with the old radio image.
-changed eri.xml in both framework-res.apk and made copies in data and data/local
-replaced apns-conf.xml with one from IHO build
-replaced mms.apk
-edited build.prop to change all references to virgin mobile and the appropriate numeric ids
Things I changed that shouldn't affect the radio/phone:
-removed most Sprint bloat
-removed the radio.img and the portion of the updater-script that installs it
-added su, superuser, and busybox, and added line in updater-script to set su permissions (have root now)
-removed livewallpapers
-removed non english/spanish tts
-edited thunderc_keypad.kl to swap home/menu keys
What's working:
-adb
-root
-camera, video camera, gallery, video player, music player
-browser, email
-market (upgrades to the new market on second launch)
-gps (but it behaves a bit strange)
-accelerometer
-compass
-maps/navigation/latitude
-bluetooth (I think, no hid support so I couldn't test my keyboard, but it did find it in the scan)
-voice search, even the key is mapped correctly (should be able to use the files for IHO)
What's not working:
-phone
-3g
Any help fixing the phone would be greatly appreciated. I'm afraid I need the activate app for VirginMobile, but the only one available has never worked with any Gingerbread based ROM.