RUNNING OS X (10.5.7) ON THE
GIGABYTE GA-EX58-UD5 (Core i7) MOTHERBOARD:
Many have expressed a desire to have the Retail DVD Install and Boot from EFI Partition Retail DVD Install tutorials moved from the growing Upcoming Intel X58 Mobos & Core i7 CPUs thread to this Tutorials forum for easy access. They have been getting buried in the numerous posts and hard to monitor for updates. Many, perhaps, don't know they were even there.
This Retail DVD Install thread is divided into two parts:
1. DIGITAL_DREAMER'S STANDARD RETAIL DVD INSTALL (included in this post)
The introduction of Mac OS 10.5.7 has simplified a number of things for us Core i7 users. We not longer need to concern ourselves with the kernel and supporting System.kext, as the vanilla version is finely tuned for our systems.
This portion will begin by outlining the basic steps performed for the install and what kexts are needed. This method entails installing your Mac OS X Retail DVD and a small bootloader (Chameleon 2.0 RC1 or the older Chameleon v1012 with the Voodoo-based 9.6.0 kernel). I prefer the Retail DVD install method over the common distros from a legal point of view, as it allows one to purchase a current OS X Retail DVD and, therefore, support Apple. This is a full vanilla install with a handful of modified kexts that are added to a special folder (/Extra/Stored_Kexts) for full functionality. This setup now supports full Apple Software Updates without issues. An added bonus is a fully-featured script that provides a comprehensive set of options and features, such as:
� Installing the new Chameleon v2.0 RC1 or older Chameleon v1012 bootloader �
� Set partition as active � Run OS X installer � Install modified kexts � Update boot caches �
� Run DSDT patcher � Modify Mac model name � Modify processor info � Modify "About This Mac" graphics �
� Select various bootloader themes � Choose from a selection of 27 boot pictures �
� Powerful plist editor that allows you to edit any boot.plist or smbios.plist in various locations �
� Plist editor allows you to select from a list of useful keys, create a custom key, or modify kernel flags �
� Automatically add a UUID as a kernel flag from any of your installed drives �
2. WOLFIENUKE'S BOOT FROM EFI PARTITION RETAIL DVD INSTALL (see next post)
The Boot from EFI partition method is a slightly different method in that the modified kexts are copied to a hidden partition (EFI), leaving your boot drive untouched with no visible evidence of patches. This method also allows you to run Apple's Software Update without any problems. The walk-through script, written by wolfienuke, is fast and allows you to simply answer a few options and confirm your choices. Although the script runs in the Terminal, no Terminal background is necessary.
STANDARD RETAIL DVD INSTALL:
- Minor script update to 3.91 - removed a misleading EFI setup option. Script does not support EFI partition boot, yet. The next update will.
- Script version 3.9 is released.
- Added multi-language support for changing "About This Mac" processor info.
� This feature utilizes the Preferred Languages as indicated in System Preferences/International/Language.
� Starting at the first preferred language, the script will look for the proper Systeminfo.strings file for that language and set your processor info for that language.
� If the script finds the language, it will check if the processor info is "Unknown" in that particular language and, if so, change the info based on the hardware gather data.
� Although there are over 130 languages to install for OS X, there are only 18 languages that come with the corresponding SystemInfo.strings files.
� If you are using a language that does not include a appropriate SystemInfo.strings file to modify, the script will skip to the next preferred language on the list until it finds one.
� The 18 default languages are as follows: English, Japanese, French, German, Spanish, Italian, Brazilian Portuguese, European Portuguese, Dutch, Swedish, Norwegian, Danish, Finnish, Russian, Polish, Traditional Chinese, Simplified Chinese, and Korean.
- Added Time Machine Restore From Backup feature. Requires Retail DVD.
- Added EFI-string.txt file in /Plist folder for importing device-properties string into boot.plist.
- Changed DSDT.aml file handling so that it gets copied to root directory of boot volume for Chameleon 1012 install in preparation for Snow Leopard.
- Fixed various minor bugs in plist editor.
- Script version 3.8 is released.
- Fixed a serious file permissions bug affecting the bootloader.
- Added ability to copy kernels with .voodoo or other extensions. The "mach_kernel" suffix must be maintained, however, for proper script operation.
- Added ability to restore original kernel and system.kext.
- Added ability to unpack and examine contents of current mkext file.
- When installing a kernel and matching System.kext, the System.kext will install into S/L/E by default.
- Fixed a bug so that the System.kext in the _For_System folder will be preserved when that kext is removed from Script's Kernels folder.
- Added the new Voodoo2 alpha3 9.7.0 kernel.
- Script version 3.7 is released.
- Fine-tuned the handling of kexts in /Stored_Kexts folder and, if present, the /_For_System folder.
- You can now edit the smbios.plist in the Plist editor.
- Added "Universal" graphics injector, ATY_Init.kext.
- Script version 3.6 is released.
- Script includes option to install individual kexts into S/L/E, instead of /Extra/Stored_Kexts. Script keeps track of what's installed into S/L/E and, with a simple selection, they can be restored back to /Extra.
- You have the option to include a "_For_System" folder inside /Extra/Stored_Kexts. This folder offers the following features:
� Any kexts dragged into this folder will get installed into S/L/E via "Update boot caches" script routine. Script will also use this folder if it's present for the "Kext/kernel installer" routine.
� Kexts removed from this folder or transfered to /Extra will be deleted from S/L/E after the "Update boot caches" script routine.
� For the curious and concerned, original kexts with equivalent names in S/L/E are not replaced, but renamed with ".original" tacked on the filename. Other installed kexts get a duplicate file with ".duplicate" added to filename for script to keep track of.
- The "_to_install" folders have been removed from the Kexts directory to help clean it up. Kexts simply need to be outside their "_repository" folders.
- Natit.kext updated
- VoodooHDA v0.2.2 audio kext and prefPane are included for those who wish to use it. This is an Open Source audio driver for our boards.
- Reworked the DSDT routine. Hopefully, the patch will enable all cores without any additional modifications on ASUS and similar boards.
- Script version 3.5 is released.
- The LAN driver (RTLR1000) was missing from the IONetworkingFamily.kext that was uploaded a couple hours ago. Now included. One of the pitfalls of doing lots of tests...but also the advantage of doing more tests is finding the culprit.
- A LegacyJMicronATASATAIDE.kext has been added for IDE or PATA support. This replaces the original LegacyAppleIntelPIIXATA.kext.
- Added logging to installer script. You can now view Installer or DSDT log, or copy logs to desktop for transport.
- Script now sets boot file and kernel files as invisible, leaving less clutter in your root folder.
- Script now deletes all the previous kexts in the Stored_Kexts directory prior to installing from the script repositories. This is a more reliable method, as otherwise a stray or modified kext may remain and be included in the new install.
- Script version 3.4 is released.
- Bug fix in boot cache updater. If you're having trouble updating the boot cache, this update will fix that issue.
- Version 3.3 is out. All kexts are gathered from their various locations in the script's directories and copied to Stored_Kexts in /Extra. From there a boot cache is automatically created to boot from.
- This Stored_Kexts folder is simply a repository and does not contain the live kexts the system is actually booting from. It's the boot cache created from these stored kexts that boot the system. That being so, the script changes the permissions of the Stored_Kext folder to a user editable stage, so you can delete/add other kexts at will. After having done that, you can simply select Update boot cache from the script to update the boot cache (mkext) file and be ready for reboot.
- Support is now added for the new MacPro4,1 Model Identifier. If you have your system setup to use this Identifier, whether by a kernel flag in Chameleon v1012 or via smbios.plist in Chameleon 2.0 RC1, the script will add this new key and allow you to provide a custom Model Name.
- Script has been updated to include the older Chameleon v1012 bootloader for those who wish to use something more stable. If you wish to revert from Chameleon 2.0 RC1 to the older v1012, simply installing/overwriting the newer bootloader (pre-patch) may create serious issues, leading to a unmountable partition. It's recommended to do a backup, erase, install, and restore. This older bootloader still uses the /Extra directory, but does not includes Themes or a boot.plist. Rather, the boot.plist is in it's conventional location. The script automatically copies the boot.plist to the proper location, depending on the bootloader in use.
- IMPORTANT: Those wishing to use the older bootloader (any older version, actually), will need to use the Voodoo-based 9.6.0 kernel and include the busratio=20 kernel flag in the boot.plist if they want to avoid the system clock speed-up issue, until a future time this issue is resolved.
Regardless of bootloader in use, the kernel's matching System.kext is copied to S/L/E, with the original renamed, thereby improving system behavior. This action makes this kext the only file copied into the vanilla OS install.No longer the case, as everything is in /Extra.
- The Natit.kext has been updated.
Gigabyte GA-EX58-UD5 motherboard kexts NEW!
(10MB) - kernels included: Vanilla 9.7.0 (for Mac OS 10.5.6), Voodoo2 alpha3 9.7.0, and Voodoo-based 9.6.0 (older bootloaders).
X58 Mobo Patch Installer UPDATED! - 7/5/2009 v3.91
(21.8MB) - kernels included: Vanilla 9.7.0 (for Mac OS 10.5.6), Voodoo2 alpha3 9.7.0, and Voodoo-based 9.6.0 (older bootloaders).
Selection of 27 boot pictures EXTRA
(26.6MB) - for use with the X58 Mobo Patch Installer.
All that's really needed to boot into OS X 10.5.7 on this board is the Disabler.kext and dsmos.kext. That's it. Everything else are little fixes for hardware reporting, updated device IDs, audio, LAN, etc. In my case, I also needed the Natit.kext for ATI graphic card support, as without it I just got video corruption and couldn't see the desktop.
One important issue to keep in mind when installing kexts manually is that non-Apple kexts, like dsmos.kext, and injectors, like HDAEnabler.kext, Natit.kext, etc. are not installed with permissions data regarding them. So, Repairing Permissions via Disk Utility or Terminal will do absolutely nothing in fixing them. With the exception of commercial software that come with their own installers, only Apple-supplied OS software will get their permissions repaired. So, if you are installing manually, be absolutely sure the permissions and ownership information are correct for these non-Apple kexts or your system won't boot. Use the Terminal to do a "sudo chmod -R 755" and "sudo chown -R root:wheel" to the file.
After performing a Retail Mac OS X Leopard DVD install, our script, used in the X58 Mobo Patch Installer mentioned later in this thread, will be performing the following basic steps for this board. If you desire to perform the kext install manually, these are the steps you would want to accomplish for fully operational subsystems. The following assumes you are using a Chameleon bootloader that supports the /Extra directory:
Install Mac OS X Leopard Retail DVD and combo updater, if needed.
Install kernel and supporting files: Mostly needed if using the older bootloaders (i.e. Chameleon v1012).
Vanilla 9.7.0 kernelIncluded as part of the 10.5.7 install.
If using the older bootloader, you must install the Voodoo-based 9.6.0 kernel (included), instead.
Matching System.kext in /Extra/Stored_KextsIncluded as part of the 10.5.7 install.
- com.apple.boot.plist in /Extra. This is necessary with the new Chameleon 2.0 bootloader.
(pre-patched for the ALC889a chipset)
(pre-patched for the ALC889a chipset)
(goes with the included HDA kext above)
(support for ATA devices on JMicron controller with over 4GB RAM fix)
(JMicron SATA suppport with over 4GB RAM fix)
(display drives as "internal" fix. NOTE: If you have removable drives, this kext should not be used.)
(no longer needed with native Intel ICH10R support in 10.5.7.)
(on-board LAN support from Psystar's version (1.8.1) of the Realtek R1000 driver and support for Time Machine)
(Universal graphics card injector, with support for the ATI Radeon 2x00, 3x00, 4870, 4850, plus NVIDIA cards.)
(disabler for AppleIntelCPUPowerManagement.kext and others - ABSOLUTELY NECESSARY TO BOOT!)
(page decryption EFI module - ABSOLUTELY NECESSARY TO BOOT!)
chmod -R 755 "/Volumes/YOUR_BOOT_DRIVE/Extra/Stored_Kexts/"
chown -R root:wheel "/Volumes/YOUR_BOOT_DRIVE/Extra/Stored_Kexts/"
Update boot cache:
mv "/Volumes/YOUR_BOOT_DRIVE/Extra/Extensions.mkext" "/Volumes/YOUR_BOOT_DRIVE/Extra/Extensions.mkext.previous"
kextcache -a i386 -m "/Volumes/YOUR_BOOT_DRIVE/Extra/Extensions.mkext" "/Volumes/YOUR_BOOT_DRIVE/Extra/Stored_Kexts"
- My installer/patcher does not come with graphics card drivers. The included injectors (Natit.kext, NVinject.kext, and NVkush.kext) can only extract the graphics card hardware info for the OS to use, and they can take the place of EFI strings. So, if you have a graphics card that is not currently supported in the vanilla OS X install, you are still responsible for installing those drivers, as well as EFI strings, if you choose not to use the injectors.
INSTALLING OS X LEOPARD RETAIL DVD AND BOOTLOADER:
Download X58 Mobo Patch Installer (21.8MB without boot pictures)
These files include the Chameleon v2.0 RC1 and v1012 bootloaders, kexts, vanilla 9.7.0 kernel (for those still on Mac OS X 10.5.6), Voodoo-based 9.6.0 kernel (for those using an older bootloader), com.apple.boot.plist, and patch/installer script. Some have asked for a Boot-132 image, such as created from the Slimbuild CD Creator. The problem is that it works best when you include the UUID of your Install DVD in the boot.plist, which I wouldn't know first hand. I can still make it available, but don't know how successful it may be, as not even I can get it to work reliably.
Much credit and many thanks go to LTL, dfe (David Eliott), Kabyl, Munky, Turbo, Dense, zef and many, many other talented individuals that make these projects possible. The following is the basic objective:
- It is ideal to have two physical drives (not two partitions on the same drive) or, at least, another Mac system to work from.
- One drive must already have OS X installed and running.
This may mean using another Mac or installing a easy-to-use distro like Kalyway on the smaller/slower drive. (I only mention Kalyway, because it is the only distro I'm familiar with and know works well with this board. There may be more recent distros that can achieve equal success.)
- Partition your target drive in Disk Utility using the GUID Partition Table (in Options button).
- Make an ISO of your Retail DVD and download the Combo update, if needed.
(The ISO of your DVD is not really needed, but it will shorten your install times dramatically. Trust me, when things go wrong (and they will) and you have to do an emergency install, more time spent waiting is directly proportional to higher blood pressure.)
- Double-click RUN-PATCHER and enter your password.
- You will be prompted with a selection of valid HFS drives to work with.
- Default choices are highlighted in bold type.
- Confirmed target drive name is saved for future use.
- Install your choice of bootloader or pre-patch (option #2).
- An option is provided to set target partition as active (option #3). The activate drive feature works with user to unmount all drive partitions (this is necessary for activation), including listing open files/running processes that prevent them from unmounting.
- The script will check for the presence of a mounted "Mac OS X Install DVD" (or ISO) and prompt you if you wish to run that installer (option #4). Install from your Retail DVD and, immediately following that, the lastest combo updater. (There is NO need to boot into your new install first, before installing the combo updater.)
- Run the kext/kernel installer (option #5). This is preconfigured to install the required kexts for the Gigabyte EX58-UD5 motherboard, or any motherboard with the same chipsets. The kext/kernel installer automatically updates the boot caches for you.
- Run the DSDT patcher (option #7) and the patched DSDT file will be installed in the appropriate location.
- Your system is ready for reboot!
- After booting into your system, you have the option to change your Mac model name (option #9), CPU type (option #10), custom About This Mac graphic (option #11), as well as custom boot picture (option #13), bootloader theme (option #12), and boot plist (option #8).
- The script's folders has basically 5 categories for the kexts - ATA, Audio, Graphics, Networking, and Misc. Patches. There is a _repository folder in each to store your collection of files. Kexts outside this _repository folder will get installed by the kext/kernel installer.
- After your initial install, you can continue to use the script folders (ATA, Audio, Graphics, Networking, and Misc. Patches) to install kexts or you can simply drag and drop kexts in the /Extra/Store_Kexts (and _For_System folder, if included) and run the script's Update boot caches.
- If you create a _For_System folder inside /Extra/Stored_Kexts, kexts that get copied to it will get installed to S/L/E when you Update boot caches. If you delete kexts from _For_System or transfer them to /Stored_Kexts, they will get uninstalled from S/L/E after updating boot caches. Basically, if the _For_System folder is present, the contents of S/L/E will stay in sync with the contents of _For_System. This method is an easy way to keep track of patched kexts that have been installed into S/L/E.
If, however, you decide not to use the _For_System folder, you can simply delete it and the script will still keep track of kexts installed in S/L/E. In either case, the script will "flag" any kexts installed into S/L/E so that their presence is easily seen.
- The script is pretty much fool-proof (I hope I don't have to eat my words on that), so if anything goes wrong, it should inform you gracefully.
- If you have any questions or issues, please post to this thread.
If using the Chameleon 2 bootloader, this picture shows just what to include in the smbios.plist for best results.
Being human, I may have goofed somewhere, so provide feedback in this thread if there are issues.
Disclaimer: I will not be held responsible for any damages, non-working systems, explosions, dead kittens, screaming monkeys, etc. that may result from following these instructions.
MODIFYING SYSTEM INFORMATION (The following are extras and only affect system information reporting)
The com.apple.boot.plist and smbios.plist (used by Chameleon 2) that is installed is located in the script's "Plists" directory. It may contains extra flags that you may want to modify based on your specifications. This data is used and reported by System Profiler and does not affect system performance in any way. The string may be set as follows (this is only an example and may not be current):
<string>busratio=20 -v macmodel=MacPro4,1</string>Your Mac Model Name (i.e. "Mac Pro") is derived from the Model Identifier (i.e. "MacPro4,1"). See your Hardware Overview in System Profiler for an example. The list of valid Mac Model Identifiers and their corresponding marketing name is found in the SPMachineTypes.plist file, located in the SPPlatformReporter.spreporter bundle. Although I'm sure you can add your own custom model identifiers, keep in mind that Software Update uses this info for updates that apply to certain models. So, if you want to be alerted to software updates that apply to Mac Pros, use a Mac Pro identifier. Likewise, if you don't want to be alerted to updates that apply only to Macbooks, don't use a Macbook identifier. Given that this board is a Mac Pro ranking board, I've kept the Identifer as "MacPro4,1".
(NOTE: macmodel flag is no longer supported in Chameleon v2.0. Please use the included smbios.plist in /Extra to set this information.)
RUNNING VIRTUAL MACHINES IN VMWARE FUSION
If you are attempting to run Vista in VMware Fusion 2 and receive a blue screen with a "STOP 0x0000007B" message during launch, try applying the MS Hotfix for multicore-processor computer running Vista in a VM. You can get the hotfix for x64-based versions of Windows Vista here. Usual disclaimers apply.
HELPFUL LINKS AND SCREENSHOTS:
� Marcel Bresink's Temperature Monitor
� Great Internet Mersenne Prime Search (GIMPS) - Prime95 CPU torture test in OS X binaries.
� Great Internet Mersenne Prime Search forum
� Gigabyte GA-EX58-UD5 product page
� Gigabyte X58 BIOS Features
� Virtual BIOS
� TweakTown: Gigabyte Technical Support Forum
� BIOS F4 binary update
� BIOS F5 binary update
� BIOS F6 binary update
� BIOS F7 binary update
Current Integrated Peripherals settings in the BIOS:
Working hardware devices: (CLICK FOR ACTUAL SIZE)
Crunching Prime95 for 5 hours @ 3.8GHz: (CLICK FOR ACTUAL SIZE)
Running Vista 64 in VMware Fusion 2 (CLICK FOR ACTUAL SIZE)