Subscribe to our RSS news feed
AAPL 196.55 (1.25)

> Forum Guidelines.

Welcome to the Genius Bar. Here's how this forum works:

1. Members are encouraged to make a guide that details something that they might have found troubling or challenging.
Chances are, if you've seen the same question asked over and over again, you should write a guide for it.

2. This is not the forum for asking questions. If you have a question about a thread that's already here, feel free to ask it.
Just don't start a thread for a specific question. Use the other forums here for that.

3. Posting links to off-site tutorials is not allowed.

4. That's it! Thanks for sharing your information with the rest of us. :)

To keep this forum clean this forum is moderated. You can post in existing topics but new ones will have to be approved before they show up. Quality guides promoting new methods and encouraging users to learn will be approved.

[GUIDE] Retail Snow Leopard (10.6.2) Install on Gigabyte GA-EX58-UD5 (Core i7), Scripted - Chameleon 2 & PC-EFI, Extra & EFI partition boot
*******
  • Group: Members
  • Posts: 677
  • Joined: 20-November 08
  • From: Nevada, MO USA
  • Member No.: 323,377
USING THE X58 MOBO PATCH INSTALLER
TO INSTALL SNOW LEOPARD ON
X58 (Core i7) MOTHERBOARDS:


A continuation of our OS X tutorial for
the Gigabyte GA-EX58-UD5 motherboard, which can be adapted
to running Snow Leopard on other modern boards.


NOTE: This thread will not be for posting common installation and booting issues for which you can find solutions in a variety of places on this forum. (See the FAQs in this post for common issues.) This thread exists for unique issues regarding a specific board or issues regarding script bugs. If you are convinced that the problem you are having is in regards to script behavior and can replicate or duplicate the issue, it is in my best interests to solve this issue for you.

This is a full vanilla install with a handful of modified kexts that are added to a special folder (/Extra/Stored_Kexts, either on your main boot partition or the EFI partition) for full functionality. This setup 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:
Now features script-assisted Preboot CD creation and USB Drive Install methods.
Supports both bootloader install methods: Standard Extra install or EFI boot install
Choose from 3 different bootloaders: PC-EFI v10.5, Chameleon v2.0 RC4, RC3 or Chameleon v1.0.12
Set partition as active Auto OS X DVD installer Install modified kexts/kernels Update boot caches
Easily change kext install destination (/Extra or /System) in a couple keystrokes Drag 'n Drop kext install fully supported
Run DSDT patcher with CMOS reset fix Modify Mac model name Modify processor info Modify "About This Mac" graphics
Full EFI strings support: Create strings from Audio, Ethernet and Graphics devices (over 150 graphics cards)
Automatic parsing and naming of each device in string for easy verification
Import/append/remove individual devices in string Automatic checks for valid device trees and corrupted EFI strings
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 "boot-uuid" key or kernel flag from any of your installed drives



SCRIPT UPDATE:
UPDATE: 12/16/2009
  • Following in the path of many others, we're introducing two new script-enabled install methods: Preboot CD and USB Drive Install. The installed kexts are found in the Boot_Disk folder inside each Kexts_10.X folder.
    • Preboot CD: Create a ISO or CD with a bootloader and selected kexts that will be used to, first, boot your system, then boot your Mac OS X Install DVD.
    • USB Drive Install: Install a bootloader with selected kexts and clone/restore your Mac OS X DVD or ISO to a USB drive. Boot directly into this USB drive as a Mac OS X installer.
  • Updated iasl compiler version 20091013 (Oct. 15, 2009) for DSDT patcher. Supports ACPI Specification Revision 4.0.
  • Added modified fakesmc.kexts for Snow Leopard and Leopard that that allows iStat Menus to report CPU temps.
  • Added bootloader type/version detection, plus ability to skip overwriting the plists during bootloader install if they are already present.
  • Added updated Chameleon 2 RC4 bootloader.
    NOTE: I would recommend not using this bootloader, unless you can manage your platform UUIDs. This bootloader will insert/override your existing UUID, causing you to lose your current preferences and iTunes authorization. If you don't know what this is about, then continue using the Chameleon RC3 or PC-EFI bootloaders. :-)
  • Added netkas' new PC-EFI v10.5 bootloader.
  • Added SMcputype and SMbusspeed smbios.plist keys to inject the CPU specs, in case CPU auto-detection is not working on your system. Some software installers require this information (i.e. MS Silverlight). Auto CPU detection is available in the PC-EFI v10.4 bootloader and up.
  • Added Default Partition key update to boot.plist editor on EFI installs so bootloader automatically selects your install partition. Note that this is not always reliable, as drives added or removed can change the disk identifier. If it changes, you can always edit it in the script's plist editor.
  • Added Hide Partition key update to boot.plist editor to identify which partition you wish to hide from the boot menu. Note that this is not always reliable, as drives added or removed can change the disk identifier. Again, if it changes, you can always edit it in the script's plist editor.
  • Added PciRoot key to identify the value of your PCI Root ID.
  • Added EFI strings for nVidia GeForce GTX 275, GTX 260 cards, as well as nVidia GeForce 9400 GT 512MB and 1024MB.
  • Added updated fakesmc.kext v2.5 for both Snow Leopard and Leopard.
  • Included new SleepEnabler.kext for SL 10.6.2. Note that this is NOT compatible with 10.6.1 and earlier. Because this one has issues with the earlier SL version and the earlier version of SL has issues with the new kext, I'm leaving them both out of the default install. They are both in the repository.
  • Fixed issue where EFI partition contents would be erased after a bootloader install.
  • On EFI installs, plist editor now highlights in bold the system partition the boot.plist points to via "boot-uuid" key or kernel flag.
  • Plist editor now removes "System" boot.plist selection for any partition whose UUID is contained in a boot.plist in that volume's EFI partition.
  • Fixed an issue where Processor Info for About This Mac would not update with changes if a install did not include extra languages. Script would not find the Preferred language (because no extra languages were installed) and failed to revert to the default "English."
  • Removed sync command (force completion of pending disk writes (flush cache)) that is performed prior to unmounting EFI partition. This was causing the Finder to crash in 10.6.2
  • Made change to prevent idisks from appearing during drive selection.
  • Fixed a bug where in some conditions the wrong disk identifier would appear in the plist editor.
  • You can now add kernel flags that contain spaces in the plist editor. Quotes will be added automatically, as needed. Additionally, the plist editor will properly read kernel flags that have spaces in the keys (surrounded by quotes).
  • Updated handling of platform/hardware UUIDs: It's been observed that if script folder is deleted/updated with new version, the UUID may change if there is no UUID listed in the user's smbios.plist. When this happens, and because the UUID kext is shipped blank, the script will generate a new UUID - not desired behavior. Now, the script examines the UUID that was previously used in the /Extra folder and uses it if no UUID is present in the smbios.plist. The new rules are as follows:
    • 1. UUID in smbios.plist has top priority. It's otherwise useless here, but is highly visible and easily edited.
    • 2. If not present in smbios.plist, the UUID contained in a previously installed kext, if present, will be used.
    • 3. If neither of the above is available and the UUID kext already contains a UUID string, it is left as is.
    • 4. If no sources are found, a new UUID is generated.
    In all cases, when a UUID is found/generated, it will be copied to the smbios.plist and the UUID injector kext in the script's folder, thereby ensuring that the same UUID will be maintained if one or more of its sources are deleted.
  • Script logging method is enhanced. Script will continue to log messages until log file has reached a specified size and, then, be rotated.
  • Added updated theme and boot picture by L3B3R. Thanks for your contribution!
  • Added a couple more themes from blackosx. They may need additional work, like resizing, to match your setup.
  • I'm adding the extra bootloader themes as a separate download, to keep the script download size manageable.


DOWNLOADS:
Gigabyte GA-EX58-UD5 motherboard kexts for Snow Leopard

(15.7MB) - includes Snow Legacy 10.2.0 kernel by qoopz-nawcom (Snow Leopard replacement for AMD/Older Intel CPUs.)
X58 Mobo Patch Installer UPDATED! - 12/16/2009 v4.22
(30.2MB) - includes includes Snow Legacy 10.2.0 kernel by qoopz-nawcom (Snow Leopard replacement for AMD/Older Intel CPUs.)
Extra bootloader themes EXTRA
(21.4MB) - for use with the X58 Mobo Patch Installer.
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 on this board is a disabler (i.e. Disabler.kext or NullCPUPowerManagement.kext.), a decryptor (i.e. fakesmc.kext or dsmos.kext) and graphics support. If your card is one Apple makes available, then it should work OOTB or with EFI strings. That's it. Everything else are little fixes for hardware reporting, updated device IDs, audio, network, etc. In my case, I also needed the ATY_init.kext for ATI graphic card support, as without it I just got video corruption and couldn't see the desktop.

USING THE SCRIPT:
INSTALLING OS X SNOW LEOPARD RETAIL DVD AND BOOTLOADER:
The download includes the Chameleon v2.0 RC4 and RC3, PC-EFI v10.5, and v1.0.12 bootloaders, a large assortment of kexts, a variety of kernels (for those still on Mac OS X 10.5.6 or non-Intel systems), and Kext/Kernel Installer script.

PREPARATION
  1. It is ideal to have two physical drives (not two partitions on the same drive) or, at least, another Mac system to work from.
  2. 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 are certainly more recent distros that can achieve equal success.)
  3. Partition your target drive in Disk Utility using the GUID Partition Table (in Options button).
  4. Make an ISO of your Retail DVD and download the Combo update, if needed.
    (The ISO of your DVD is not really neccessary, 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. wink.gif )

INSTALLATION
  1. Double-click RUN-PATCH_INSTALLER and enter your password.
  2. Select from the list of valid HFS drives to work with. (Confirmed target drive name and install type (Extra or EFI) is saved for future use.)
  3. Select the type of install (Extra or EFI). Default choices are highlighted in bold type.
  4. Install your choice of bootloader (option #2). For Snow Leopard, use either Chameleon 2.0 RC3 or PC-EFI_v10.3. Observe the note in step #8, as it may affect your choice of bootloader.
  5. An option is provided to set target partition as active (option #3 in Extra mode). This option is only available for the Extra install type, in case one has more than one OS X install on a drive and would like to set one particular partition as active. (The EFI partition is set active automatically and this process is mandatory.)
  6. 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 #3 (EFI), or #4 (Extra)). Install from your Retail DVD.
    NOTE: If you're installing from Leopard, you'll need to go into the Customize panel and turn off the optional installs, as they may create a "Install Failed" error otherwise.
  7. Run the kext/kernel installer (option #4 (EFI), or #5 (Extra)). This is preconfigured to install the required kexts for the Gigabyte EX58-UD5 motherboard (including the ATY_Init.kext (ATI graphics card injector), which you may not need), or any motherboard with the same chipsets, with audio being a likely exception. The kext/kernel installer automatically updates the boot caches for you.
    If installing from Leopard for Snow Leopard, the script will automatically install all x86_64 (64-bit) kexts in /System, as 64-bit boot caches cannot be built into Leopard. Also, note too, that in Snow Leopard some i386 kexts (32-bit) just do not work in /Extra and must, also, be installed into /System. These include current the selection of audio and networking kexts, so toggle them from the /Extra destination to /System by keying in their number and pressing 'Enter.' (i.e. press 4, Enter, 5, Enter, 7, Enter)
    If installing for Snow Leopard, the script will automatically select the "Kexts_10.6" folder in the script directory. Likewise, if installing for Leopard, the script uses the kexts in "Kexts_10.5".
  8. Run the DSDT patcher (option #7) ONLY on the system it's intended for and the patched DSDT file will be installed in the appropriate location.
    The DSDT file is automatically copied to the appropriate location and includes the CMOS reset fix for Snow Leopard users.
    NOTE: If you are unable to create a DSDT patch for your target system, because you are using a different Mac, you should use the PC-EFI v10.3 bootloader, as it will not allow the boot process to stall as a result of a missing DSDT file.
  9. For those installing Snow Leopard, I would suggest turning off Spotlight in your current system by opening System Preferences/Spotlight/Privacy and dragging your Snow Leopard volume to the window. This should disable Spotlight indexing for Snow Leopard when you first boot into it, a major cause of 'mdworker' kernel panics when first starting. Your other option is to disable it when you boot into it, but you have limited time and we'll get to that later.
  10. Some using older ATI graphics cards, like the 2600XT or 3000 series, will have to delete the ATI-related kexts in /System/Library/Extensions, otherwise you will experience graphics corruption. For the ATI 2600XT, you would need to delete the ATIRadeonX2000.kext. There will be no QE/CI support for these older 38x0 and 2xx0 cards.
  11. Your system is ready for rebooting!

BOOTING
  1. Reboot and enter -v arch=i386 at the boot prompt.
    Most bootloaders will attempt to boot the 64-bit kernel by default, but I would suggest you boot in 32-bit mode first, as most kexts work in that mode. The kernel flags in the boot plist are already set for verbose (-v) and 32-bit mode (arch=i386 or -x32), but I may suggest using these flags at this point in the boot process anyway, in case such flags were removed from the boot plist or the bootloader chooses to ignore the boot plist in your setup. If you have determined that such flags are, indeed, being used in the boot plist and the boot plist is not being ignored by the bootloader, then you may proceed without entering them at the prompt.
      RECOMMENDED PROCEDURE FOR SNOW LEOPARD:
      (If you follow these steps here, you can avoid all of the Post-Installation steps! Additionally, some graphics-related kexts require inclusion in the boot cache, otherwise you may experience a black screen or corrupted video on boot.)
      If you are booting into Snow Leopard for the first time from Leopard (or any time you have updated the kexts for Snow Leopard from a Leopard install), enter Single-User mode with the -s flag at the boot prompt. After a bit of scrolling logs, you will reach the command prompt.
      Type: buildcache followed by the return key. (No need to mount the volume with read/write access, as the script will do this.) This will execute a shell script to build the boot cache for the Extra or EFI directory, plus the /System/Caches/.../Startup directory.
      When script finishes, type reboot followed by the return key.
      (If, on occasion, the system log continues writing while you are typing, just ignore it and continue typing as if it didn't happen or you can hit "Enter" and try again.)

POST_INSTALLATION
(The following assumes you are booting from Leopard and not another Snow Leopard install.)
  1. DISABLE SPOTLIGHT: If Spotlight had not been disabled previously and the boot caches were not built in Single-User mode (as discribed above):
    You should immediately disable Spotlight before it finishes indexing, otherwise you will experience a 'mdworker' kernel panic.
    Type the following in Terminal to disable Spotlight for all volumes:
    CODE
    sudo mdutil -a -i off

    Or, drag the startup volume to the System Preferences window in System Preferences/Spotlight/Privacy.
  2. BUILD CACHES: If boot caches were not built in Single-User mode (as discribed above): Run Update boot caches in script and Reboot.
    (If boot caches were't built prior to this time, it's only a matter of time before you will get another 'random' kernel panic, so work quickly.)
  3. AFTER REBOOT: Now you can relax and move at your own pace.
    If you had previously disabled Spotlight by means of the Terminal, you can now enable it for all volumes:
    CODE
    sudo mdutil -a -i on

POST_INSTALLATION EXTRAS
  1. IMPORTANT UPDATE: You won't be able to repair permissions (should you ever need to), until you re-run the BSD installer in Snow Leopard to add the installer packages needed to repair permissions. (This can be done even after the 10.6.1 update.)
    Mount DVD (or ISO). Paste the following in a new Terminal window and hit "Enter":
    CODE
    sudo open "/Volumes/Mac OS X Install DVD/System/Installation/Packages/BSD.pkg"
  2. MOVE KEXTS TO /EXTRA AND REBUILD CACHES: Many of the kexts can remain in /System. However, that defeats the value of having a vanilla install. The following are the kexts I know will work in /Extra:
    Run kext/kernel installer and toggle (key in the kext's corresponding number) all the kexts in Misc. Patches and one ATA kext back to /Extra:
    AppleIntelPIIXATA.kext (Type 1, Enter)
    dsmos.kext (Type 8, Enter)
    NullCPUPowerManagement.kext (Type 9, Enter)
    OpenHaltRestart.kext (Type 10, Enter)
    PlatformUUID.kext (Type 11, Enter)
    Sleepenabler.kext (Type 12, Enter)
    Press "Enter" and reboot.
  3. Install any updates for your system.
  4. After booting into your system, you have the option to change your Mac model name, CPU type, custom About This Mac graphic, as well as custom boot picture, bootloader theme, and boot plist.
  5. 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. Likewise, the same true for kernels moved outside their parent folder.
  6. 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.
  7. The included _For_System folder inside /Extra/Stored_Kexts is installed by default and kexts that get copied to it will get installed to /System when you Update boot caches. If you delete kexts from _For_System or transfer them to /Stored_Kexts, they will get uninstalled from /System after updating boot caches. Basically, if the _For_System folder is present, the contents of /System 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 /System.
    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 /System. In either case, the script will "flag" any kexts installed into /System so that their presence is easily seen.
  8. The script is pretty much fool-proof, so if anything goes wrong, it should inform you gracefully.
  9. If you have any questions or issues, please post to this thread.


Script features:


smbios.plist contents:
If using the Chameleon 2 bootloader, this picture shows just what to include in the smbios.plist for best results.


Current Integrated Peripherals settings in the BIOS:


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.

FAQs:

BOOTING
  • When I boot, I get the following message:
    boot 0: GPT
    boot 0: testing
    boot 0: testing
    boot 0: error
    What's wrong?

    This message appears when the BIOS cannot find a bootable system. Double-check your BIOS drive priority or make sure the BIOS is instructed to boot from the proper drive with a installed bootloader.
  • I just installed a new OS and bootloader. Now I can't boot back into my old install. What happened?
    You have different and, therefore, incompatible, bootloaders installed. Ideally, each bootable partition needs to have the same bootloader installed. If that is not attainable, then you need to select the desired OS/partition via BIOS drive/partition selector <F12>, not bootloader, to ensure your system boots just the bootloader installed for that partition/drive. If you select a partition in the bootloader screen that has a different bootloader installed, you may experience instability or unpredictable behavior, including kernel panics.

GENERAL SYSTEM BEHAVIOR
  • My Ethernet ports are not working. What can I do?
    First verify whether this is a hardware or software issue. If you have another working OS to boot into, do so and check for network access. If you don't have another OS to boot into, the BIOS may feature a LAN check that you can use. Consult your motherboard manual for instructions. NOTE: On the Gigabyte GA-EX58-UD5 motherboard, LAN failure is a common problem. The remedy is to simply pull the power cord (or turn the PSU switch off, if it has one) for 10 seconds. Failing that, you may clear the CMOS using the CMOS Clear Switch on the back panel after the system is powered off. Make sure you have saved your BIOS setting, so you can load them after the clear.

SCRIPT
  • Where is the EFI string feature in the script?
    Select Modify plists, then the boot plist you wish to modify. EFI strings are contained in the device-properties string of the plist. If the current plist doesn't have one, add it by entering in "a" (for "add") from the keyboard and select device-properties from the list (typically at the bottom).
  • Can the script work for other motherboards?
    Absolutely. The main difference between the setup of one motherboard and another are the choice of kexts needed for full functionality. Other matters may include the choice of modified kernel, use of EFI strings, and device-specific DSDT patching, all of which the script supports.
  • Would the script support my RAID set (softRAID or AppleRAID) on my system? (There is no support for hardware RAID in Mac OS X, other than Apple's own offerings.)
    Not at this time. Given that I don't have a RAID setup, it's hard for me to build in support for it in the script. If someone has such a setup and would like support, send my way the files produced by the following Terminal commands from your system:
    diskutil list > ~/Desktop/disk_list.txt
    diskutil listRAID > ~/Desktop/RAID_list.txt
    If you have more than one RAID set, that would be even better, as the produced files would enable me to figure out how to support more than one RAID set.
  • What is the difference between the /Extra install and the boot from EFI partition install?
    The /Extra install method installs the bootloader support files in a folder named "Extra" right in the root directory of your boot volume, easily visible to the user. The /EFI boot method installs the support files in a special 200MB partition that's created on all GUID partitioned drives. This EFI partition is normally invisible to the user and is generally unaccessible, except by the Terminal.
  • Which install method is superior?
    This is mostly a matter of personal preference, as the technical advantages/disadvantages are small. For some, having the /Extra folder visible and accessible makes management and troubleshooting a cinch. For others, having such patched files invisible is a priority and provides a more Mac-like appearance.
    At the current time, there are some bugs and annoying behaviors exhibited by the EFI boot setup:
    • Bootloader doesn't display and pre-select the OS partition on multi-partitioned drives at startup. (This can be resolved by using the "Default Partition" key in the smbios.plist and setting it to the proper disk ID in the form of hd(1,2). However, note that if you are adding/removing volumes, this ID will change and the key/string will need to be updated to reflect this change.)
    • On multi-partitioned drives, bootloader doesn't appear to load the boot.plist in the EFI partition (in my experience with PC-EFI v10.3), thus causing some unpredicable behavior, if your system depends on special boot.plist flags. The current workaround is to only use one-partition setups or key in the flags at boot time.
    • The Finder doesn't always allow you to view the EFI partition. This appears to be more of a issue in Leopard, as I haven't experienced it in Snow Leopard, yet. In fact, in some cases where you're not able to view the EFI partition from the Finder in Leopard, booting into Snow Leopard and viewing it there will fix the issue, even allowing you to view it after booting back into Leopard.
  • I'm using the EFI boot method, but when I boot into Single-User mode and try 'buildcache' it says, "/Volumes/EFI: No such file or directory" Why is this not working?
    For some reason the 'buildcache' script didn't get the correct disk ID of your EFI partition. Try to run the Kext/kernel installer for that EFI partition again, but cancel out ("n"), if you need to. This will update the ID.
    Each time you enter the Kext/kernel installer, the script will check the disk ID of EFI partition you are working on and pass that info to the 'buildcache' script, if it needs to be updated. That way, when you execute the 'buildcache' script in Single-User mode, it will know which EFI partition to work on. If, however, you add or remove a hard drive, flash drive, etc., this ID will change, thus affecting the operation of the 'buildcache' script. The solution is to have this ID updated by entering the Kext/kernel installer routine. You can then cancel the install by entering "n", if desired.
    Fixed. Found a better work-around.
  • Must I update boot caches after I run the Kext/Kernel Installer?
    No. The boot caches are automatically updated at the end of the Kext/Kernel Installer routine. The separate Update Boot Caches step is for when you add, delete, or move kexts without involving the Kext/Kernel Installer.
  • I have a dual graphics card setup. When I import my EFI string using your script, it warns, saying the device trees are not for this system. However, when I let the script fix it, the EFI string no longer works. What's wrong?
    The script currently doesn't suppport dual graphics cards, yet. This is a unique setup where you have two devices sharing the same device type. Use a third-party EFI string creator (i.e. EFIStudio) and paste the results in the boot plist or EFI_string.txt and import. But, this time, just ignore any warnings about the device trees, until dual-card support is provided.
    When you let the script 'fix' the string, it will currently place the same device tree in both places; not what you want.
  • When I set 'active' a partition, I notice the install log displays, "fdisk: could not open MBR file /usr/standalone/i386/boot0: No such file or directory" Is there something wrong?
    Nothing is wrong and this is normal behavior. Note that 'fdisk' is a 'DOS partition maintenance program' and includes features not designed for our Macs. In our case, that error is meaningless, as we are not writing with a new MBR file, but merely editing existing MBR sectors. The error simply states that the boot code isn't available for writing Intel bootable partitions. Apple doesn't use that code anyway, as the EFI boot code is built into the firmware.
  • The install log also shows the following error message when I set a partition active, "fdisk: 1> Invalid command 'y'. Try 'help'." Why is there a invalid command?
    The 'fdisk' program is in 'interactive' mode. If the partition you are wishing to set active is not able to unmount, fdisk will ask if you want to write the update anyway, at which point we would say "yes" with a 'y'. However, because the partition was able to successfully unmount, the "yes" response is invalid in this case and, therefore, ignored. We try to cover all cases.
  • Can someone provide a simpler and more easily understood tutorial, one without all the terminology and terms I don't understand? I don't want to read all these pages!
    Probably, but I certainly won't. The simple reason it that it's a recipe for failure and harbinger for disaster. Building a 'hackintosh' is a technical acheivement; it requires a computer-related background and technical foresight. Going the 'easy' way now, won't help you in the long term. If you manage to get your system running without such understanding, you have learned nothing in return to prepare you for future challenges, such as when your system goes down. Which position would you rather be in: one where you are at the mercy of others each time something goes wrong with your system, or one who, with manly determination, is resolved to work through such issues on his own with thorough research and study, while building up confidence and pride of accomplishment in return? I often wonder if we're doing the community a favor by writing such scripts. But, my rationale is that I enjoy using such tools myself, to say nothing of the joy of scripting such a project and seeing it develop and progress.

SCRIPT CHANGE LOG:
UPDATE: 9/25/2009
  • Includes PC-EFI 10.3 bootloader update.
  • Includes new fakesmc.kext v2.0
  • Added ability to set visible Unix files as invisible after OS install, if installing from Leopard.
  • Changed exit routine when modifing plists.
  • Improved EFI partition setup. Discarded EFI partitions are now erased as "free space," so they no longer have the tendency to automount.
  • Devised a method to keep 'buildcache' script current with updates. No longer need to issue 'mount' command in Single-user mode, just type 'buildcache' and it'll be done for you.
  • Stopped EFI partitions from showing up in drive selection (they have become HFS partitions, also).
  • Added some boot cache options:
    • 1. Normal cache build (separate caches): Build boot caches from /Extra & /System separately.
    • 2. Combo cache in /Extra: Build a single boot cache from /Extra & /System for /Extra.
    • 3. Super combo cache in /Extra: Build large cache from /Extra & /System for /Extra. Build includes more than just what's typically included for boot. Can improve boot times. This has taken 5 seconds off my boot times. YMMV, however.
    The goal here is to help remove dependency issues and, possibly, be able to install some kexts in /Extra, instead of /System.
  • Revamped platform/hardware UUID setup:
    • UUID injector kexts (UUID.kext or PlatformUUID.kext) are synced with UUID string in smbios.plist, if present.
    • This will make it easy to update your UUID injectors - keep the SMUUID string current in smbios.plist
    • However, if no UUID is present in the smbios.plist, any UUID string present in the injectors is left as is.
    • If you wish to have a new UUID generated, you have two options:
      • 1. Use the script to generate a new UUID for the smbios.plist (SMUUID key). This UUID string will be copied to injectors.
      • 2. Or, remove any UUID strings from injectors (do not remove key and string tags!) and smbios.plist. Script will generate a new one.
    • NOTE: This script is released without the UUID string present in the kext or smbios.plist. This will allow one of two things to happen: User can add his UUID to the smbios.plist via script (or manually), which will be synced to kexts, or a new and unique UUID will be generated and inserted by script if user doesn't add one. In the latter case, the UUID will get copied to kext in the script folder and smbios.plist, so that a new UUID isn't generated every time a kext gets installed. This method will prevent a different UUID from being introduced into the system should the user replace his existing PlatformUUID.kext with another one from who-knows-where, or if the user deletes the SMBIOS key/string from the smbios.plist. In any situation, you can choose to ignore it and it'll be taken care of for you or you add it yourself and it'll preserve it.
  • Partial RAID support: Can detect RAID drives, but no further support exists, yet. Useless, I know, but we're getting there.
  • Added new keys introduced by Chameleon 2.0 RC3

UPDATE: 9/9/2009
  • Minor update to fix running software version check.

UPDATE: 9/7/2009
  • Major update to v4.01 - rewritten for Snow Leopard, but fully compatible with Leopard.
  • Now featuring EFI boot install setup.
  • Built-in target OS detection can automatically switch between 10.5 and 10.6 kexts when installing.
  • Added Alias shell script to build kext cache for SL in Single-User mode, if needed. The 'buildcache' command builds the cache for the Extra, EFI, and /System/Caches/.../Startup directories.
  • After each install, all UUID injectors are updated with proper UUIDs (includes UUID.kext, PlatformUUID.kext, and smbios.plist).
  • Multi-device EFI strings support. Automatically parses EFI strings and names each device. Can add/remove devices within strings. Support for >150 graphics cards, LAN string, and (in progress) HDA strings. (Sorry, no dual graphics card support, yet.)
(All previous updates are included in script's change log.)

SCRIPT TO-DO LIST:
  • Full RAID support.
  • Add selection of DSDT fixes.
  • Add ability to increase version numbers in kexts for loading priority.
  • Add symbolic link for modified kernels in root directory
  • Add selector for list of kernel flags.
  • Clean up log.

HELPFUL LINKS:

kind regards,
MAJ
PM Profile Card
Go to the top of the page
+ Quote Post

Posts in this topic
- digital_dreamer   [GUIDE] Retail Snow Leopard (10.6.2) Install on Gigabyte GA-EX58-UD5 (Core i7)   Sep 8 2009, 06:57 PM
- - darkenedreality   Wow that was quick! Nice work DD and many tha...   Sep 8 2009, 10:39 PM
- - Mozgovvert   YEAH!!! I ♥ DD btw: I really loved ...   Sep 8 2009, 11:23 PM
- - darkenedreality   The script is trying to install the kexts within t...   Sep 8 2009, 11:28 PM
- - rappinkapc   OK. I am a complete newbie at this. I just got m...   Sep 8 2009, 11:36 PM
- - duomaxw   QUOTE (rappinkapc @ Sep 9 2009, 12:36 AM)...   Sep 9 2009, 01:14 AM
- - darkenedreality   Had the same problem. Could be wrong but I don...   Sep 9 2009, 02:33 AM
|- - mattrb4   DD, your the best.   Sep 9 2009, 04:43 AM
- - vintageawv   DD, Script worked perfect. Used /Extras with RC3....   Sep 9 2009, 04:02 AM
- - taylorutah   Updated: I have a hard drive with SL 10.6 installe...   Sep 9 2009, 04:57 AM
- - matinee   DD, thanks for the amazing work. Another newbie q...   Sep 9 2009, 04:59 AM
- - eggfoam   Thanks for all this great work, MAJ! I've...   Sep 9 2009, 06:36 AM
- - digital_dreamer   QUOTE (darkenedreality @ Sep 8 2009, 09:3...   Sep 9 2009, 06:45 AM
- - digital_dreamer   QUOTE (eggfoam @ Sep 9 2009, 01:36 AM) Th...   Sep 9 2009, 07:44 AM
- - proengin   Yes, PC-EFI 10.1 booter can boot without DSDT but ...   Sep 9 2009, 07:49 AM
|- - eggfoam   QUOTE (digital_dreamer @ Sep 9 2009, 12:4...   Sep 9 2009, 08:24 AM
- - digital_dreamer   QUOTE (Mozgovvert @ Sep 8 2009, 06:23 PM)...   Sep 9 2009, 07:49 AM
- - knightprozac   Hey DD. I was gonna send this RAID info as a PM b...   Sep 9 2009, 07:55 AM
- - PingunZ   I just flashed the new BIOS (F9e) and it has a new...   Sep 9 2009, 10:58 AM
|- - MATTkiller   Hello, To begin, Thanks you very very much for yo...   Sep 9 2009, 12:43 PM
- - star-affinity   Many thanks to DD for the new script for Snow Leop...   Sep 9 2009, 11:21 AM
- - krypto   I Have Raid 0 setup on the ICH10 Sata ports , is t...   Sep 9 2009, 12:05 PM
|- - knightprozac   QUOTE (krypto @ Sep 9 2009, 08:05 PM) I H...   Sep 9 2009, 01:18 PM
- - morganpl   Sleep works, but probably my system there is somet...   Sep 9 2009, 12:14 PM
- - HeartQ8   DD, Script report Snow wrongly (I am using Snow o...   Sep 9 2009, 01:01 PM
- - taylorutah   I still can't figure out why my ethernet isn...   Sep 9 2009, 02:42 PM
|- - alfonzotan   QUOTE (taylorutah @ Sep 9 2009, 03:42 PM)...   Sep 9 2009, 03:02 PM
||- - taylorutah   QUOTE (alfonzotan @ Sep 9 2009, 09:02 AM)...   Sep 9 2009, 03:23 PM
|- - dixit   QUOTE (taylorutah @ Sep 9 2009, 10:42 AM)...   Sep 9 2009, 05:56 PM
- - raymondh   Is there a way to do this install so the EFI is on...   Sep 9 2009, 04:25 PM
- - rest assured son   QUOTE (digital_dreamer @ Sep 8 2009, 06:5...   Sep 9 2009, 04:34 PM
- - Juxtron   Hi all Worked for me with no major trouble. (star...   Sep 9 2009, 05:46 PM
|- - edvardlee   hi juxtron, can you tell me how you ogot hd 4870 w...   Sep 10 2009, 12:55 AM
- - Erik E   Thanks for a great script/tutorial... I followed ...   Sep 9 2009, 06:02 PM
|- - Erik E   QUOTE (Erik E @ Sep 9 2009, 06:02 PM) Tha...   Sep 9 2009, 07:03 PM
|- - edvardlee   Can you post how you got your 9600 gt wworking? Q...   Sep 10 2009, 05:19 AM
- - rgb   works perfectly in 32bit mode thanks DD!!...   Sep 9 2009, 06:15 PM
- - MATTkiller   Anybody can help me ? To begin, Thanks you very...   Sep 9 2009, 06:28 PM
|- - tsunoo   QUOTE (MATTkiller @ Sep 9 2009, 07:28 PM)...   Sep 9 2009, 07:56 PM
|- - Craig4   QUOTE (MATTkiller @ Sep 9 2009, 01:28 PM)...   Sep 10 2009, 12:34 AM
- - dacool   Make sure that you don't have folder called EF...   Sep 9 2009, 07:55 PM
- - MATTkiller   Thanks you. I try with a DSDT file.   Sep 9 2009, 09:56 PM
- - digital_dreamer   QUOTE (matinee @ Sep 8 2009, 11:59 PM) An...   Sep 10 2009, 12:17 AM
|- - knightprozac   QUOTE (digital_dreamer @ Sep 10 2009, 08...   Sep 10 2009, 02:34 AM
- - digital_dreamer   QUOTE (morganpl @ Sep 9 2009, 07:14 AM) S...   Sep 10 2009, 12:54 AM
|- - dacool   QUOTE (digital_dreamer @ Sep 10 2009, 03...   Sep 10 2009, 01:53 AM
- - digital_dreamer   QUOTE (Craig4 @ Sep 9 2009, 07:34 PM) I g...   Sep 10 2009, 12:56 AM
- - Dith   I've been trying for the last 5 hours to get m...   Sep 10 2009, 12:58 AM
- - digital_dreamer   QUOTE (Dith @ Sep 9 2009, 07:58 PM) I...   Sep 10 2009, 01:28 AM
|- - alexjdb   QUOTE (digital_dreamer @ Sep 9 2009, 09:2...   Sep 10 2009, 01:45 AM
||- - dacool   QUOTE (alexjdb @ Sep 10 2009, 04:45 AM) H...   Sep 10 2009, 02:10 AM
|- - Dith   QUOTE (digital_dreamer @ Sep 10 2009, 03...   Sep 10 2009, 01:46 AM
- - AppleIIGuy   Just wanted to tell you that this works just fine ...   Sep 10 2009, 01:44 AM
- - Craig4   If I update just my bootloader that is currently o...   Sep 10 2009, 02:08 AM
- - dixit   QUOTE (alexjdb @ Sep 9 2009, 09:45 PM) ED...   Sep 10 2009, 03:05 AM
- - duomaxw   Thanks DD, great script. Took a few tries but I go...   Sep 10 2009, 03:29 AM
- - rappinkapc   Hello... This is my first osx86 build. I finally...   Sep 10 2009, 04:28 AM
|- - knightprozac   QUOTE (rappinkapc @ Sep 10 2009, 12:28 PM...   Sep 10 2009, 04:46 AM
|- - edvardlee   Can you verify that u get QE/CI to work with your ...   Sep 10 2009, 05:27 AM
||- - nateB   QUOTE (edvardlee @ Sep 10 2009, 12:27 AM)...   Sep 11 2009, 03:55 AM
||- - duomaxw   QUOTE (nateB @ Sep 11 2009, 03:55 AM) I h...   Sep 11 2009, 04:23 AM
|- - morganpl   QUOTE (rappinkapc @ Sep 10 2009, 06:28 AM...   Sep 10 2009, 06:42 AM
|- - Juxtron   Hi All @ Edvardlee To have my Saphhire HD4870 1G...   Sep 10 2009, 09:31 AM
- - ncsa   Wow .. thanks yet again MAJ for the great work ...   Sep 10 2009, 05:20 AM
- - miketress   Edvardlee, the 9600 GT works with device-properti...   Sep 10 2009, 06:12 AM
- - rappinkapc   QUOTE (edvardlee @ Sep 9 2009, 10:27 PM) ...   Sep 10 2009, 06:17 AM
- - blackosx   Hi digital_dreamer. You have put a lot of work in ...   Sep 10 2009, 06:23 AM
- - MATTkiller   Okay, Now I'm using PCEFI V10-2 and the boot f...   Sep 10 2009, 11:05 AM
- - Dith   QUOTE (Juxtron @ Sep 10 2009, 11:31 AM) H...   Sep 10 2009, 11:21 AM
|- - sunzen   QUOTE (Dith @ Sep 10 2009, 06:21 PM) I ha...   Sep 11 2009, 05:17 AM
- - MATTkiller   I Have a Gainward HD4870 1Go. What I can do ? I t...   Sep 10 2009, 12:00 PM
- - Dith   QUOTE (MATTkiller @ Sep 10 2009, 02:00 PM...   Sep 10 2009, 12:13 PM
- - MATTkiller   Okay I try Thanks.   Sep 10 2009, 12:43 PM
- - rackham   hey all first of all MAJOR THANKS to DD for all h...   Sep 10 2009, 02:30 PM
|- - morganpl   QUOTE (rackham @ Sep 10 2009, 04:30 PM) h...   Sep 10 2009, 02:38 PM
|- - rackham   QUOTE (morganpl @ Sep 10 2009, 03:38 PM) ...   Sep 10 2009, 03:30 PM
|- - Cosmin Petre   QUOTE (rackham @ Sep 10 2009, 04:30 PM) t...   Sep 10 2009, 07:00 PM
- - Mozgovvert   GA-EX58-UD5 + GF 9500 GT 256 Installing under Leo ...   Sep 10 2009, 04:22 PM
|- - Juxtron   @ Dith Yes, i guess you'right about natit.kex...   Sep 10 2009, 04:55 PM
|- - morganpl   QUOTE (Mozgovvert @ Sep 10 2009, 06:22 PM...   Sep 10 2009, 06:29 PM
- - Dith   QUOTE (Juxtron @ Sep 10 2009, 06:55 PM) @...   Sep 10 2009, 05:14 PM
- - HeartQ8   Mozgovvert use customization and do not select th...   Sep 10 2009, 05:35 PM
- - fade2nada   SUCCESS ALMOST... Using Majors script I installed...   Sep 10 2009, 06:01 PM
- - rappinkapc   QUOTE (morganpl @ Sep 9 2009, 11:42 PM) H...   Sep 10 2009, 06:56 PM
|- - morganpl   QUOTE (rappinkapc @ Sep 10 2009, 08:56 PM...   Sep 10 2009, 07:42 PM
- - rappinkapc   QUOTE (morganpl @ Sep 10 2009, 12:42 PM) ...   Sep 10 2009, 08:07 PM
- - tstm   Has anyone tried 10.6.1 yet? It's up in SU alr...   Sep 10 2009, 09:20 PM
|- - Cosmin Petre   QUOTE (tstm @ Sep 10 2009, 10:20 PM) Has ...   Sep 10 2009, 10:22 PM
|- - francklin   QUOTE (tstm @ Sep 10 2009, 11:20 PM) Has ...   Sep 10 2009, 11:04 PM
- - MATTkiller   Thanks you very very much Dith. My hacintosh work ...   Sep 10 2009, 10:15 PM
|- - star-affinity   QUOTE (MATTkiller @ Sep 11 2009, 12:15 AM...   Sep 10 2009, 10:47 PM
- - star-affinity   Oh, my.... 10.6.1 already. Well, I've managed...   Sep 10 2009, 10:16 PM
- - KariNeko   QUOTE (Mozgovvert @ Sep 10 2009, 01:22 PM...   Sep 10 2009, 10:50 PM
|- - edvardlee   I realize a lot of ppl ask questions about KPs, Bo...   Sep 11 2009, 01:45 AM
- - BJMoose   Yes, updated to 10.6.1 and that works great.   Sep 10 2009, 11:56 PM
- - digital_dreamer   QUOTE (HeartQ8 @ Sep 10 2009, 12:35 PM) b...   Sep 11 2009, 02:44 AM
|- - jplee4907   Hi DD I just wanted to show you info from one of ...   Sep 11 2009, 03:34 AM
- - jplee4907   Hi DD I do have a question! After following y...   Sep 11 2009, 05:40 AM
|- - edvardlee   hey jp, i used to get that when i had incorrect...   Sep 11 2009, 05:43 AM
- - alainc   Incredible of realism, search, effectiveness, simp...   Sep 11 2009, 08:49 AM
20 Pages V   1 2 3 > » 

Reply to this topic Start new topic

9 User(s) are reading this topic (5 Guests and 0 Anonymous Users)

 

RSS Lo-Fi Version Time is now: 9th February 2010 - 05:07 PM