I'm on 4.1 with an iPhone 4 and want to wait for the untethered JB before I upgrade to 4.2. The problem is that some apps now require 4.2. Is there anyway to spoof 4.2 so that the appstore will go ahead and install the app?
You could edit the SystemVersion plist (/System/Library/CoreServices/SystemVersion.plist) but that's a really ugly way to do it.
Please also consider that many applications that require iOS 4.2.1 usually do so for a reason--they make extensive use of 4.2.1-only features or are structured for 4.2-only (or changed) API calls... so proceed AT YOUR OWN RISK!