Jun 13, '07 07:30:03AM • Contributed by: taylott
- Install Safari 3 Beta
- Rename /Applications » Safari.app to Safari3.app
- Install WebKit Nightly
- Rename /Applications » WebKit.app to Safari2.app
- Unarchive the backed up Safari -- expand /Library » Application Support » Apple » .SafariBetaArchive.tar.gz
- Copy the old Safari from /Library » Application Support » Apple » .SafariBetaArchive » Applications » Safari.app to /Applications » Safari.app
- Copy all the frameworks into Safari2. Inside the .SafariBetaArchive folder, you'll find these frameworks:
- System » Library » Frameworks » WebKit.framework
- System » Library » Frameworks » WebKit.framework » Versions » A » Frameworks » JavaScriptCore.framework
- System » Library » Frameworks » WebKit.framework » Versions » A » Frameworks » WebCore.framework
Once you've done the above work, you can force another application to open with the old WebKit instead of the new with this Terminal command:
env DYLD_FRAMEWORK_PATH="/Applications/Safari2.app/Contents/Resources" \
WEBKIT_UNSET_DYLD_FRAMEWORK_PATH=YES "/path/to/bin/in/app" &
Just replace /path/to/bin/in/app with the path to the binary in the application you want to force to use the old WebKit frameworks. For instance, this will fix Adium with Safari 3:
env DYLD_FRAMEWORK_PATH="/Applications/Safari2.app/Contents/Resources" \
WEBKIT_UNSET_DYLD_FRAMEWORK_PATH=YES "/Applications/Adium.app/Contents/MacOS/Adium" &
[robg adds: I haven't tested this one, so proceed at your own risk. The referenced blog post has a lot more detail than I've chosen to show here...]
