Jump to content

[Guide] Boot from EFI partition, zero modification installs on Intel SSE2 or better...


munky
 Share

1,404 posts in this topic

Recommended Posts

hey, just wanted to clarify something about 10.5.6, Chameleon, DSDT and the future of EFI partition booting...

 

basically, the next Chameleon release will replace this booter, and will add a LOT more functionality and bugfixes. im hoping it comes out before 10.5.6 does, because 10.5.6 is a bit of a doozy, insofar as it basically requires a patched DSDT. this fix is already in chameleon.

 

the EFI partition booter here doesnt yet have the patch. if Chameleon comes out before 10.5.6, no problem, everyone should just migrate to it. if, however, 10.5.6 looks like its coming before the team get the new build out there, then i'll add the DSDT patch to this booter and release v6 which, combined with a patched and compiled DSDT file (see: http://forum.insanelymac.com/index.php?showtopic=133683) should boot 10.5.6 without problems.

 

 

Will a C2D based system need a patched DSDT also for 10.5.6 , or only pre core ?

Link to comment
Share on other sites

The easiest way is to place a modified com.apple.Boot.plist file in /Volumes/EFI.

 

You modify the Boot.plist to contain the TimeOut you want, the kernel you are booting and the boot-uuid of the partition you are booting. Use my Boot.plist an an example.

 

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
	<key>Graphics Mode</key>
	<string>"1280x1024x24"</string>
	<key>Kernel</key>
	<string>bt(0,0)/mach_kernel.voodoo-b1</string>
	<key>Kernel Flags</key>
	<string>-v boot-uuid=0802587B-4CBE-3E24-9A92-09AD0D296CE2</string>
	<key>Timeout</key>
	<string>7</string
	<key>device-properties</key>

that is a good way to edit a boot.plist, however that doesn't allow Darwin to load without hitting enter...

 

Hope this helps.

Link to comment
Share on other sites

Darwin autoloads your partition and boots os x without hitting enter?

 

Yes. That's what the

 

		<key>Timeout</key>
	<string>7</string

 

Timeout string is for. However, your OS X partition must be the first HFS+ partition on the drive. If you place an HFS+ partition containing data (non-system) first then it won't work.

Link to comment
Share on other sites

Munky, does the DSDT complement EFI strings, replace them, or is there no direct relationship?

 

If the DSDT replaces the EFI strings, is there any way planned to migrate the EFI string values to DSDT format?

 

Inquiring minds want to know :)

 

I may be wrong on this, but based on what I read so far, DSDT currently complements EFI strings. However, as we can't properly set EFI strings before kernel is already loaded, they will be read as DSDT data at boot loader time to make them available for mach_kernel to use them.

 

I think in the future it may be possible to replace EFI strings with data from inside DSDT, but this will surely take some time for research.

 

And again, those more familiar with DSDT/EFI strings are urged to correct me if I am wrong :)

Link to comment
Share on other sites

DSDT and the 'EFI strings' are nothing to do with one another, afaik.

 

The DSDT is a table setup by the machine's BIOS. We need to override certian values in that table to get round a bug in AppleRTC.kext in 10.5.6.

Link to comment
Share on other sites

Munky,

 

Great Guide,

 

Please add a how to cd to the efi boot folder example to the guide.

 

I figured it out but it still would be nice to know to type "cd /Users/Haterade/Desktop/efi_boot_v5.1"

 

Or that "ls" tells you where you are at during that phase.

 

Also if you get stuck the first time, try booting with -x. This was the only way to get in to my system.

 

Works great now, thanks.

Link to comment
Share on other sites

Yes. That's what the

 

		<key>Timeout</key>
	<string>7</string

 

Timeout string is for. However, your OS X partition must be the first HFS+ partition on the drive. If you place an HFS+ partition containing data (non-system) first then it won't work.

Right, the first HFS+ partition is the hidden partition on a guid... However, even when I add a boot.plist file to that partition it doesn't initiate it until I hit enter so Darwin loads. My efi partition is disk0s1. My is os x part is on disk0s2. I'm doing it the right way, aren't I?

Link to comment
Share on other sites

Right, the first HFS+ partition is the hidden partition on a guid... However, even when I add a boot.plist file to that partition it doesn't initiate it until I hit enter so Darwin loads. My efi partition is disk0s1. My is os x part is on disk0s2. I'm doing it the right way, aren't I?

 

Well, what I meant by first HFS+ partition excluded the EFI partition, which OS X normally ignores.

 

As far as I can tell, you are doing it correctly. I am at a loss to understand why it isn't working for you. Since it has always worked for me, I have no experience solving your problem.

 

Sorry I can't be more help. If I think of anything I'll let you know.

Link to comment
Share on other sites

Well, what I meant by first HFS+ partition excluded the EFI partition, which OS X normally ignores.

 

As far as I can tell, you are doing it correctly. I am at a loss to understand why it isn't working for you. Since it has always worked for me, I have no experience solving your problem.

 

Sorry I can't be more help. If I think of anything I'll let you know.

ok thank you.

Link to comment
Share on other sites

I am currently experimenting with this install method and am getting a slew of mDNS-related errors when booting the newly-installed, clean, virgin retail Leopard partition for the first time (see the attached image). Basically it seems that there is a networking issue won't go away. Has anyone ever seen these mDNS-related errors?

 

My first idea was that this is an extension-related problem, but I get it even when booting without any extensions in the boot/"EFI" partition, so by now I'm doubting it a little bit. Currently the Extensions folder on the boot partition contains the following:

AppleAHCIPort (for ICH7 AHCI);

AppleIntelGMA950, AppleIntelIntegratedFramebuffer (modified to fit the PCI IDs)

Natit

IOGraphicsFamily, IONDRVSupport (original Leopard, only with OSBundleRequired set to Root to satisfy dependencies)

dsmos, IntelCPUPMDisabler

 

The system is a Thinkpad X60s, which has a 945 chipset, 950 graphics, a Core Duo processor and an 82577 LAN chipset; the latter is supported by OS X's 8254x driver (I'm currently posting through it on an iDeneb installation).

post-34564-1226453416_thumb.jpg

Link to comment
Share on other sites

ibeaspecalboy

 

I did not know how to make a script select a certain partition to install. thanks for working that out and giving me credit

 

EDIT: for the part where is says do a manual install, you could put my scripts in to solve that snag.

 

1 more thing: if you make a new thread in the genius bar, you will get a lot more views then at the end of a 35 page thread. i will make a link in my thread to your post until you do.

Link to comment
Share on other sites

Is the dual booting method work with ubuntu. for me, it does not see the ext3 partitions

 

That's correct. It only sees HPFS+ partitions. No WinXX, Linux, or other foreign systems with the current boot loader. We need to wait for the next release of Chameleon. It's in the works, but no stated ETA at the moment.

Link to comment
Share on other sites

I have successfully used this excellent retail install method with a GA-EP45-DS3R, E8400 Core2Duo, and 8800GT. I used 10.5.4 retail and upgraded to 10.5.5 with no real problems. From what I am reading in this thread, updating to 10.5.6 will not be as easy because of the AppleRTC.kext changes.

 

Does that mean that everybody upgrading to 10.5.6 on a Hackintosh will need to have a loader that will patch DSDT?

Link to comment
Share on other sites

<br />I have successfully used this excellent retail install method with a GA-EP45-DS3R, E8400 Core2Duo, and 8800GT. I used 10.5.4 retail and upgraded to 10.5.5 with no real problems. From what I am reading in this thread, updating to 10.5.6 will not be as easy because of the AppleRTC.kext changes. <br /><br />Does that mean that everybody upgrading to 10.5.6 on a Hackintosh will need to have a loader that will patch DSDT?<br />
Sounds like it but really who cares we are already using a loader and I'm sure by the time 10.6 gets released (or shortly after) we well have a loader that boots off of the EFI partion and patches DSDT.
Link to comment
Share on other sites

Can someone to write .. a howto how to come back to the previous state ? to boot using the old method, and to revert from efi partition to normal ?

 

You don't need a new "How to". Just follow one of the guides on installing Chameleon. If you install Chameleon it will replace the EFI boot process.

Link to comment
Share on other sites

so, I will not be obligated to delete the partition and so on ... ?

thanks !

 

The EFI partition was there to begin with. There should be no need to do anything to it. The Chameleon install process should replace the boot loaders and they would not recognize the EFI partition as having importance.

Link to comment
Share on other sites

 Share

×
×
  • Create New...