Voodooprojects

Chameleon => General Discussion => Topic started by: Gringo Vermelho on August 10, 2009, 05:21:15 AM

Title: [How-to] manually install Chameleon 2.2 to an EFI/GPT drive
Post by: Gringo Vermelho on August 10, 2009, 05:21:15 AM
If you're using an older version of Chameleon, or if you've been booting your hackintosh with a 3rd party boot CD until now, this guide is for you.

When upgrading from any version or derivative build of Chameleon, it is highly recommended that you install all three files, rather than just copying "boot".

If you would rather use your system partition than the EFI partition for Chameleon, you can simply change where ever it says disk0s1 accordingly and skip the parts that are specific to working with the EFI partition.

First you need to format/initialize the EFI system partition - note the command is different on Snow Leopard and higher. If you use the 10.5.x command it will still work, but the EFI partition will become an ordinary HFS partition and will always be mounted, and that's messy.

Open Terminal and type sudo –s (and your password)

Type diskutil list to see an overview of your disks and partitions.

Normally, disk0s1 will be your EFI partition. If it is on another disk, modify the following commands accordingly so you don’t accidentally the wrong partition.

If you don’t see an EFI partition, that means your drive is MBR formatted. If you are not sure what that means, you should stop following this guide immediately. For example, if you have OS X and Windows installed to the same hard drive you will no longer be able to boot Windows if you follow these instructions. I can't help you with that.

You can also opt to install Chameleon on your system partition for easy access. If you don't want to install Chameleon on your EFI partition skip the following two commands and just change disk/rdisk0s1 to disk/rdisk0s2 (assuming you're installing to disk0 of course!) and simply replace Volumes/EFI with Volumes/nameofyoursystempartition

If you're on 10.5.x:

diskutil eraseVolume "HFS+" "EFI" /dev/disk0s1

If you're on 10.6 or higher:

newfs_hfs -v EFI /dev/disk0s1

Your EFI partition now has a filesystem and you can go ahead and install Chameleon on it.

Download the Chameleon archive attached below, extract it to your desktop, and (still in Terminal) navigate to the folder by typing cd ~/desktop/i386.   
 
Create a mountpoint and mount the EFI partition:

mkdir /Volumes/EFI
mount_hfs /dev/disk0s1 /Volumes/EFI

Install boot0md to the MBR:
./fdisk440 -f boot0md -u -y /dev/rdisk0

Install boot1h to the bootsector of the EFI partition:
dd if=boot1h of=/dev/rdisk0s1
Then, copy the file ‘boot’ to it:
cp boot /Volumes/EFI

Install bdmesg - this can be run from Terminal (just type bdmesg) at any time and will let you see Chameleon verbose output from last boot. Very useful for troubleshooting:

cp bdmesg /usr/bin

In order to prevent the File System Events Daemon (fseventsd) from logging on the EFI partition, which can cause it to become unmountable, type:

touch /Volumes/EFI/.fseventsd/no_log

The following step isn’t necessary on all systems but it’s better to be safe than sorry. Make sure the EFI partition is flagged as active.
Verify that you are still in the i386 directory - then enter the fdisk command and then each line as shown. As before, if you're not working with disk0 modify as needed:

1) ./fdisk440 -e /dev/rdisk0
(Ignore any “fdisk: could not open MBR file /usr/standalone/i386/boot0: No such file or directory” error)

2) f 1

3) w

4) q

Now you can copy the extra, themes and extensions folders, your DSDT.aml, your org.chameleon.Boot.plist, your smbios.plist and of course your extensions to it.

If you’ve followed the guide step by step until here the EFI partition is already mounted and (skip this part if you're on 10.6 or higher) you can type…

killall Finder (note, capitalized F - again, this step is not necessary on 10.6 and up, the EFI partition now mounts by itself when you create the mount-point)

…the Finder reloads and the EFI partition gets a drive icon on your desktop.

You can now start experimenting and getting all your patches and modified kernel extensions running from the EFI partition.

When you are done moving stuff to it you should always un-mount it (yes, the command is umount, not unmount):

umount /Volumes/EFI (If this fails, do umount -f /Volumes/EFI)

And delete the mountpoint:

rm -rf /Volumes/EFI

I’ve already told you how to mount it again, in the beginning of the guide.

If you ever get “mount_hfs: Invalid argument” when trying to mount the EFI partition, do this to fix it (again assuming the EFI partition is on Disk0):

fsck_hfs /dev/disk0s1

Once you have everything working, you can create a Chameleon boot CD using the same files, so that you can boot the retail DVD and install retail from zero.
Here's my boot CD how-to: http://forum.voodooprojects.org/index.php/topic,484.msg2131.html#msg2131
When running the OS X installer from the DVD simply chose to replace your existing installation. The EFI partition will remain untouched and, if you have added the files you need for OS X to boot on your hardware, you should be able to boot from it when the installer is done.

Good luck.

If I missed something, if some part is unclear or just plain wrong, please let me know.

/Edit - yep. Thanks for the correction Rock :)

Newbie Alert: Do not use the scripts provided here by other members if you do not understand them. Follow the manual steps instead. Lazy enough for this? Forget EFI and install on your OS X partition.

Notes
/Extra/com.apple.Boot.plist is now org.chameleon.Boot.plist

All instances of 'manufacter' in smbios.plist must be renamed to 'manufacturer'.

Be sure to read boothelp.txt for additional information. The new GraphicsEnabler options might be of interest, we now have fully functional NVRAM via the module system, and there's "showinfo" which you might want to set to "no" if you prefer the GUI to look like it did in RC5.

If you wish to use any of the modules, please read the instructions first - here:
http://forge.voodooprojects.org/p/chameleon/source/tree/HEAD/trunk/i386/modules
Nvidia video card owners might want to take a closer look at the attached screenshot.
Title: Re: [How-to] manually install Chameleon 2.0 to an EFI/GPT drive
Post by: leader86 on August 10, 2009, 12:45:21 PM
Nice guide!  :)
Title: Re: [How-to] manually install Chameleon 2.0 to an EFI/GPT drive
Post by: greenman on August 10, 2009, 01:18:57 PM
I'd like a guide on how to install Chameleon on a GPT drive WITHOUT using the EFI partition, I'd rather have my extra folder accessible for tweaking...
Title: Re: [How-to] manually install Chameleon 2.0 to an EFI/GPT drive
Post by: Blackosx on August 10, 2009, 01:55:08 PM
This is a very useful guide. Good idea for putting it here :)
Title: Re: [How-to] manually install Chameleon 2.0 to an EFI/GPT drive
Post by: Gringo Vermelho on August 10, 2009, 04:52:07 PM
Thanks guys.

I'd like a guide on how to install Chameleon on a GPT drive WITHOUT using the EFI partition, I'd rather have my extra folder accessible for tweaking...

the EFI is accessible, but you have to mount and unmount it manually.

There's no need to write a whole guide for a non-EFI partition installation.

If you don't want to use the EFI partition for Chameleon then simply install boot1h and copy boot to whatever other partition you want to use, ie instead of rdisk0s1 use rdisk0s2 or whatever.

boot0md still goes to rdisk0.
Title: Re: [How-to] manually install Chameleon 2.0 to an EFI/GPT drive
Post by: greenman on August 10, 2009, 06:19:38 PM
sure, I can mount it OK, but i get irritated going to terminal all the time to do so. not so much laziness as why do unnecessary work?

I feel no need to hide the partition at all. but all the guides imply that it shouldn't be left mounted.

I'll make or find a script to mount and unmount if I need to.

but I don't understand why its not working using the regular Cham install that puts extra and boot on the root of the osx partition.




Title: Re: [How-to] manually install Chameleon 2.0 to an EFI/GPT drive
Post by: 18seven on August 11, 2009, 03:03:33 PM
A script for managing EFI kext on my wind. I have the same for boot.plist, smbios, dsdt, but this one is the most complex.

This script creates or rm's symlinks for dependencies, mounts efi, erases *.kext, loads updated *.kext and umounts.

Edit as needed, create a kext management folder, add script (make it executable), add kext, cd into it and execute script. Of course, it is wise to diskutil list first.

Code: [Select]
#!/bin/bash


if [[ "$(id -u)" != "0" ]];
then
echo "This script must be run as root. Type "sudo -s" into the terminal, enter your password when asked, and run the script again" 1>&2
exit 1
fi

ls -1 27ae*.kext > /dev/null 2>&1
if [[ "$?" = "0" ]];
then
ln -s /System/Library/Extensions/IOGraphicsFamily.kext 2>/dev/null
  ln -s /System/Library/Extensions/IONDRVSupport.kext 2>/dev/null
  ln -s /System/Library/Extensions/IOACPIFamily.kext 2>/dev/null
else
rm -R IOGraphicsFamily.kext 2>/dev/null
rm -R IONDRVSupport.kext 2>/dev/null
rm -R IOACPIFamily.kext 2>/dev/null
echo "27ae*.kext not present, dependencies skipped or removed"
fi

if [[ -d RealtekR1000.kext ]];
then
  ln -s /System/Library/Extensions/IONetworkingFamily.kext 2>/dev/null
  ln -s /System/Library/Extensions/IOPCIFamily.kext 2>/dev/null
else
rm -R IONetworkingFamily.kext 2>/dev/null
rm -R IOPCIFamily.kext 2>/dev/null
echo "RealtekR1000.kext not present, dependencies skipped or removed"
fi

if [[ -d VoodooBattery.kext ]];
then
  ln -s /System/Library/Extensions/IOACPIFamily.kext 2>/dev/null
else
rm -R IOACPIFamily.kext 2>/dev/null
echo "VoodooBattery.kext not present, dependencies skipped or removed"
fi

if [[ -d VoodooHDA.kext ]];
then
  ln -s /System/Library/Extensions/IOAudioFamily.kext 2>/dev/null
  ln -s /System/Library/Extensions/IOPCIFamily.kext 2>/dev/null
  ln -s /System/Library/Extensions/OSvKernDSPLib.kext 2>/dev/null
else
rm -R IOAudioFamily.kext 2>/dev/null
# rm -R IOPCIFamily.kext 2>/dev/null
rm -R OSvKernDSPLib.kext 2>/dev/null
echo "VoodooHDA.kext kext not present, dependencies skipped or removed"
fi

echo "symlinks updated"

echo "Mounting EFI"
mkdir /Volumes/EFI
mount_hfs /dev/disk0s1 /Volumes/EFI

if [ ! -e "/Volumes/EFI" ]; then
     echo " Error ==> /Volumes/EFI does not exist"
     echo " Error ==> Your EFI partition must be mounted for this script to work, use dikutil list and correct the updateEFI script"
fi

echo "Removing old kext"
rm -R /Volumes/EFI/Extra/Extensions/*.kext

echo "Loading new kext"
cp -R *.kext /Volumes/EFI/Extra/Extensions

echo "Updating"
mv /Volumes/EFI/Extra/Extensions.mkext /Volumes/EFI/Extra/Extensions.mkext.previous
chmod -R 644 /Volumes/EFI/Extra/Extensions
chown -R root:wheel /Volumes/EFI/Extra/Extensions
kextcache -a i386 -m /Volumes/EFI/Extra/Extensions.mkext /Volumes/EFI/Extra/Extensions > KEXTupdate.log 2>&1
chmod 644 /Volumes/EFI/Extra/Extensions.mkext
chown root:wheel /Volumes/EFI/Extra/Extensions.mkext

echo "Finished update
EFI unmounted
You may now reboot"
umount -f /Volumes/EFI
rm -rf /Volumes/EFI
Title: Re: [How-to] manually install Chameleon 2.0 to an EFI/GPT drive
Post by: Blackosx on August 11, 2009, 03:38:31 PM
Great stuff.. I can use some of this for my own requirements :)

Thanks
Title: Re: [How-to] manually install Chameleon 2.0 to an EFI/GPT drive
Post by: nameless2k on August 20, 2009, 07:50:32 PM
some months ago I wrote a set of scripts to auto mount and auto dismount the efi partition.
http://rapidshare.com/files/177691440/EPOS_I._0.97.zip

it requires:
- no other GPT formated drive mounted to your system
- efi partition has already been hfs formated.

it's basically a byproduct of my epos script, which - back in the days - automized the installation steps, that munky talked about (search terms: epos efi post install script)... but it is outdated with the upcoming up chameleon. i am currently trying to find some time to rewrite with chameleon...
Title: Re: [How-to] manually install Chameleon 2.0 to an EFI/GPT drive
Post by: nameless2k on August 31, 2009, 04:43:58 PM
The following is purely my opinion, my interpretation, and my experiences.

Reformating the EFI partition to HFS seem to be the cause to weird errors with firmware updates. In contrast to Munky's description the EFI partition seems to be used by Apple!

System Updates sometimes seem to include EFI updates. These EFI updates seem to be installed via the EFI partition. But the EFI partition needs to be Fat32 formated. Otherwise the update will not be written on that EFI partition. 

At the moment I suspect some of the KP's during the Snow Leopard installation might come from EFI partition access errors during installation.

In the meantime I would not vote for reformating the EFI partition anymore. I would just stay with the /Extras folder.
Title: Re: [How-to] manually install Chameleon 2.0 to an EFI/GPT drive
Post by: Gringo Vermelho on September 14, 2009, 04:01:40 AM
Just hide and never download firmware updates and that problem is solved. They are useless on a PC running OS X anyway.

Here's how to get them to go away:

Make sure your smbiosdate/smbiosversion in /Extra/smbios.plist matches the latest firmware release for the mac model you are spoofing. You can find the full version numbers with some creative googleing. Example screenshot below.

When Boot ROM date + version and FakeSMC revision keys are set to the latest versions available, you will not see SMC firmware updates in Software Update because you'll appear to be running the latest firmware.
Title: Re: [How-to] manually install Chameleon 2.0 to an EFI/GPT drive
Post by: 1dog on April 17, 2010, 11:13:19 AM
I am setting up my 1st Hack on a X58 Classified.  I like the idea of the EFI partition because you can clone your installation and keep that copy as a backup.  If the user copy gets f@*@& up you just pull out the copy and clone back.  All the kexts and what not remain untouched.

I am following "http://osx86.net/f57/guide-evga-x58-snow-leopard-10-6-2-t3854/"

My question is, will I run into any problems with the 10.6.3 combo update?  Are there firmware updates included in it?

Thanks

@Gingo --> great guide.  Whats the difference between (when I copy and paste it in):

mkdir /Volumes/EFI
mount_hfs /dev/disk0s1 /Volumes/EFI

and

mkdir /Volumes/EFI mount_hfs /dev/disk0s1 /Volumes/EFI

and whats the difference in the following code, whether or not the quotation marks are used:

diskutil eraseVolume "HFS+" "EFI" /dev/disk0s1

in the
http://forum.voodooprojects.org/index.php/topic,767.msg3337.html#msg3337
guide the same code is without quotation marks.

Finally, after rebooting and opening Terminal and typing the following command (that I found in the other topic):
diskutil list

I still see my intended drive for SL with the * denoting 1st boot drive beside the SL install partition and not the EFI partition.

(All setup and coding is being done from a Kalyway 10.5.2 installation running in safe mode.)



Title: Re: [How-to] manually install Chameleon 2.0 to an EFI/GPT drive
Post by: 1dog on April 18, 2010, 12:40:45 AM
I haven't been able to cover everything but after a week of study and trial and error I am getting close.
Title: Re: [How-to] manually install Chameleon 2.0 to an EFI/GPT drive
Post by: jbreher on June 22, 2010, 07:11:34 AM
I've been using unix for decades. As such, all the command line stuff makes perfect sense to me. However, you lost me at:

Quote
Now you can copy the extra, themes and extensions folders, your DSDT.aml, your com.apple.Boot.plist, your smbios.plist and of course your extensions to it.

Maybe I should back up a bit...

About a year ago, I decided that my next laptop might just be a Mac. Being a Win & Linux guy for decades, I was unsure whether I'd be happy using a Mac as my main machine. In order to check it out, I built a hack (specs below). The install and configuration was quite painless. As such, I perhaps did not learn as much as I could have.

Long story short, I liked it. I bought a new 17" MBP. I'm happy, Apple's happy, right?

Not quite. As I had significant work by now on the iPC hack, I wanted to migrate that stuff to the new machine. I removed the HDD from the iPC, put it on a SATA/USB converter, connected it to the MBP, and ran Migration Assistant to transfer stuff from the iPC's HDD to the new MBP. (This was an adventure in itself, but that will be another story for another time.) The important thing is that, after returning the iPC HDD to the hack machine, the hack machine no longer boots.

Symptoms:
After the BIOS enumerates the PCI Devices Listing, I see the following:


Code: [Select]
Verifying DMI Pool Data ........
   
     boot0: GPT
     boot0: HFS+
     boot0: booting
     boot0: done

and the system is stalled at this point. Recall that this system booted fine before I ran Migration Assistant (with this as the _source_ drive).

However, if I put my iPC install DVD in, and boot off that, the bootloader on that DVD boots the OS X image on the HDD just fine.

The messages lead me to believe that one of the early stage bootloader pieces is corrupted. I am thinking I need to reinstall the bootloader. Does anyone agree or disagree?

I figure that, while I don't know what bootloader my initial iPC install installed, Chameleon oughta play nice with the OS-level stuff I already have. A bootloader can be installed over some other bootloader, right?

So I have been following this guide. I am now at the part that confuses me - the Hackentosh patching stuff that I quoted above.

My first instinct is to copy the /Extra folder, and all its contents to the EFI partition. Recall that this system used to boot before Migration Assistant trashed it. Does this course of action seem to make sense?

for reference:

Code: [Select]
bash-3.2# ls -lR /Extra
total 16
drwxr-xr-x  5 root  wheel   170 Jun 28  2009 Extensions
-rw-r--r--  1 root  admin  3634 Jun 28  2009 Extensions.mkext
drwxr-xr-x  6 root  admin   204 Jun 28  2009 Themes
-rw-r--r--  1 root  admin   381 Jun 28  2009 com.apple.Boot.plist

/Extra/Extensions:
total 0
drwxr-xr-x  3 root  wheel  102 Apr  1  2009 AHCIPortInjector.kext
drwxr-xr-x  3 root  wheel  102 Apr  1  2009 ATAPortInjector.kext
drwxr-xr-x  3 root  wheel  102 Apr  1  2009 IOAHCIBlockStorageInjector.kext

/Extra/Extensions/AHCIPortInjector.kext:
total 0
drwxr-xr-x  3 root  wheel  102 Apr  1  2009 Contents

/Extra/Extensions/AHCIPortInjector.kext/Contents:
total 16
-rw-r--r--  1 root  wheel  4569 Apr  1  2009 Info.plist

/Extra/Extensions/ATAPortInjector.kext:
total 0
drwxr-xr-x  3 root  wheel  102 Apr  1  2009 Contents

/Extra/Extensions/ATAPortInjector.kext/Contents:
total 24
-rw-r--r--  1 root  wheel  8898 Apr  1  2009 Info.plist

/Extra/Extensions/IOAHCIBlockStorageInjector.kext:
total 0
drwxr-xr-x  3 root  wheel  102 Apr  1  2009 Contents

/Extra/Extensions/IOAHCIBlockStorageInjector.kext/Contents:
total 8
-rw-r--r--  1 root  wheel  1271 Apr  1  2009 Info.plist

I have eliminated the Themes subtree form the above. Is the Themes subtree important? I don't mean that I am not copying it over to the EFI partition - just that I have cut short he display of entries from the ls command above. What exactly is the Themes folder (or rather its subfolders) for?


--------------------
Gigabyte GA-EP45-UD3P
Intel Celeron Dual Core E1400 2.0 GHz / 800 MHz FSB
ASUS EN8400GS Silernt/HTP/512M PCIe x16
4GiB (2x2) G.Skill DDR2-10666, PC2-8500, 2048MB x 2, CL-5-5-5-15 2.0~2.1V DRAM
750 GB Seagate Barracuda 7200.11 SATA HDD ST3750330AS
hp dvd1170i SATA DL DVD

iPC 10.5.6
Title: Re: [How-to] manually install Chameleon 2.0 to an EFI/GPT drive
Post by: Gringo Vermelho on June 23, 2010, 05:24:22 AM
Heh, the themes folder is for themes  ;)
http://forum.voodooprojects.org/index.php/board,7.0.html
You don't have to use one if you don't want to.

But but but...you shouldn't need to install anything (Extra folder etc etc) besides the bootloader itself - your system was already booting just fine before the Migration Assistant mishap, with nothing on the "EFI" partition. All your modifications and patches are spread around in folders on your system partition already, that's how distros work and that's why they're a lot harder to update than retail installations.

In fact I don't think you should be following my guide since as far as I can remember, the iPC distro doesn't even install the bootloader to your EFI partition in the first place, even if your harddrive is GPT formatted.

If you just want to reinstall the bootloader, in your case I'm pretty sure it would be enough to just pop in your iPC DVD, start the installer, and under customize deselect everything but the Chameleon bootloader. This will install just the bootloader and nothing else, and you should be back to where you were.
Title: Re: [How-to] manually install Chameleon 2.0 to an EFI/GPT drive
Post by: jbreher on June 23, 2010, 07:42:32 PM
Thanks for your reply, Gringo.

OK, so my assumption about themes seems justified. I'll ignore them for the time being.

It sounds as if you concur with my assessment that Migration Assistant somehow trashed my bootloader. Or at least that something trashed it.

It also sound as if you concur that I *can* replace whatever bootloader I had with Chameleon installed on the EFI partition.

I should probably reveal here that a medium-term goal for this system (which is being repurposed) is to update it to Snow Leopard. If I can update this system to retail, I would like to.

If I am planning to get to retail, it would simplify my life if I boot from the EFI partition, no?

So I think my question is still valid - assuming I want to boot from the EFI partition, can I just cp -R the /Extra from my iPC distro to the EFI partition? Assuming the iPC install used to work (you'll just have to take my word for this), will just this step cover all the 'magic OSx86' stuff that needs to be done?
Title: Re: [How-to] manually install Chameleon 2.0 to an EFI/GPT drive
Post by: Gringo Vermelho on June 23, 2010, 11:01:14 PM
Your iPC distro install doesn't have a /extra folder....or, if it has, there's nothing in it, unless you put something there yourself. Anyway whatever is there, it is not enough to boot and install retail OS X.

I don't know what happened to your installation but if you can boot it from the bootloader on the iPC DVD then all you need to do is reinstall Chameleon.

You should install it to the same place that it was before, ie not the EFI partition.
Title: Re: [How-to] manually install Chameleon 2.0 to an EFI/GPT drive
Post by: jbreher on June 24, 2010, 08:48:08 AM
hmm...

I followed your procedure to install to the EFI partition, copied my existing /Extra over to the EFI partition, removed the iPC DVD, did a Restart and.... booted!

In the interest of full disclosure, I also added a package of kext files and such (supposedly compiled for my mobo) to a randomly named subdir of /Volumes/EFI/Extra. I have no idea whether or not this is relevant. However, a casual scan of /var/log/system.log would seem to suggest that none of these additional files were used. Or if so, they weren't very chatty about it.

So with the goal of upgrading to SL retail in mind, is there a clear way to get from here to there? If I indeed need to identify and move all the scattered kexts to /Volumes/EFI/Extra, is there some tool that will help me identify what they are?
Title: Re: [How-to] manually install Chameleon 2.0 to an EFI/GPT drive
Post by: Blackosx on June 24, 2010, 09:17:07 AM
I should probably reveal here that a medium-term goal for this system (which is being repurposed) is to update it to Snow Leopard. If I can update this system to retail, I would like to.
Hi jbreher

Well done with your dedication to understanding your machine and the iPC install but after reading this I can't help thinking that as you have already backed up your data to your Mac with Migration assistant and your goal is to get a retail Snow Leopard install on your GA-EP45-UD3P then why not just wipe the HDD and start again with a retail DVD?

Providing of course that your CPU is supported (I think it has SSE3), I guess you will find a guide dedicated to installing 10.6 on your motherboard on InsanelyMac somewhere.

If, of course, I have spoken out of turn and it's not something you want to do then I apologise for butting in. :)
Regards
Title: Re: [How-to] manually install Chameleon 2.0 to an EFI/GPT drive
Post by: jbreher on June 25, 2010, 06:28:16 AM
No, Blackosx, you've not spoken out of turn. As a clueless noob thrashing about, I welcome any alternate views.

I guess I thought it would be easier to migrate this system than to start from scratch. If I am off base in this assumption, please let me know.

Here's one of the wild cards - I don't really have a backup of this system. Migration Assistant has failed me in this area. Running it not only rendered this particular disk unbootable*, but went so far as to make the destination disk's filesystem unusable and unrepairable. You may want to read the second clause of that last sentence twice. Unrepairable, as in Disk Utility > Repair Disk says that it fixes invalid file volume count and invalid volume directory count --- but than an immediate rerun of verify disk finds the exact same problems. Yes, after several hours of 2nd level Apple TS, it was baffling them too. Long story short, I was unable to migrate all the stuff I want to keep from the iPC hack to the MBP.

*(I have since found that Migration Assistant explicitly writes to the source disk. Seems stupid to me, but then again, Steve's richer than I -- so who am I to argue?)

Accordingly, I need to preserve some of the data currently on the iPC hack boot & system disk.

cpu-x reports SSE SSE2 SSE3 SSSE3 EM64T

While I consider myself a hack noob, I am fairly well-versed in the PC boot process in general. As an example, about a decade ago, it was your truly that discovered that Win XP on NTFS's insistence on a known volume serial number in the 'code' area of the MBR was what broke Ranish Partition Manager at the rollout of XP Beta.

So with these additional considerations known, do you have a course of action you would suggest? Is there any way I can do an 'upgrade retail install' over my current iPC, and end up with a usable system?
Title: Re: [How-to] manually install Chameleon 2.0 to an EFI/GPT drive
Post by: Blackosx on June 25, 2010, 03:04:03 PM
Hi jbreher

To answer your question of if you can an 'upgrade retail install' over my current iPC, and end up with a usable system? then I think that maybe you can and it will be okay. But I can't guarantee it, so you do so at your own risk.

However, I can see you are definitely not a computer noob so I can't see why building a fresh retail install would be a problem for you and I recommend it as it might prove to be far quicker than trying to upgrade your iPC system to Snow Leopard. Then maybe I am biased as ever since I started using a retail install, I've never looked at a distro again. Especially as I, and you, have common hardware which should run retail without too much difficulty. And Gringo mentioned earlier the benefits of a retail install in that you know what's been added to the system to get it running, so any future problems should be easy to rectify.

And as you can now boot your iPC install after installing Chameleon to the EFI partition then surely any data can be backed up? either put on to DVD, copied to external drive or copied across a network? and applications can be re-installed.

I can only speak from personal use of Macs but after using them for 14 years, I have never used Migration Assistant (or any previous incarnation of that piece of software). When I build a new system I like the fact that it's fresh and I can set it up as I want, adding back only the apps and data that I need and it also give me the chance to archive off any of those files that have been sitting around unused for ages.

Anyway, I'm sure you've already though about everything I've just said but I've said it anyway and I wish you good luck with whichever route your choose ;)

Lastly, Sorry Gringo for taking this thread OT.
Title: Re: [How-to] manually install Chameleon 2.0 to an EFI/GPT drive
Post by: jbreher on July 02, 2010, 01:52:50 AM
OK, I have a new plan then.

I got a new 1TB HDD. I'll take my other HDD out, put this new one in, and do a full retail install upon this new HDD. I'll configure it with Chameleon on the EFI partition.

Once this is working, I'll add the old drive to the system, and copy stuff from it as I detect the need.

I assume once retail is installed, and booting from EFI, I can do Apple OS updates?

Can I use BootCamp? Or would it be better just to install Win 7 on the other drive, once I copy needed stuff from it?

Thanks!
Title: Re: [How-to] manually install Chameleon 2.0 to an EFI/GPT drive
Post by: Blackosx on July 02, 2010, 03:01:09 PM
Hi jbreher

Good choice to get the new HDD and go for a new build and hopefully you will find it great once it's all up and running. I guess now you just need to follow an install guide to get your system running, you'll then know what files have been installed where and if anything is needed to watch out for when applying Apple updates, as yes, you will be able to use them.

Bootcamp won't work with a hackintosh, but then as you have a PC already you don't need it. I personally choose to put Windows 7 on a secondary partition after OS X rather than a different HDD, and as you have a 1TB drive then go ahead an split it up. You might find it useful to read this thread  (http://forum.voodooprojects.org/index.php/topic,1430.0.html)about sleep and hibernation of Windows7 when dual booting.
Title: Re: [How-to] manually install Chameleon 2.0 to an EFI/GPT drive
Post by: jbreher on July 09, 2010, 06:04:57 AM
Well, I tried to follow the lifehacker guide:

http://lifehacker.com/5360150/install-snow-leopard-on-your-hackintosh-pc-no-hacking-required

I got as far as booting off the flash drive. However, after selecting English for the install, I get the message "Mac OS X can't be installed on this computer".

After some googling, it appears that the problem is with the particular DVD I used to create the install USB stick. I had naively assumed that the DVD that came with my MBP was a "Retail DVD". The hive mind possibly tells me that this install DVD is good ONLY for my particular model of MBP -- it does not have kexts and whatnot for other macs, and is therefore unsuitable for building a hack. Does this sound correct to you?

If so, I guess it's back to the Apple store... At least my old iPC install is still running.

Q: What does putting Win 7 on another partition, rather than another drive, gain you?

Assuming I:
-  pull all drives except a fresh one,
- and install Win 7 on this drive,
- then reinstall my drive with iPC and Chameleon on it, and
- make the iPC/Chameleon the boot drive
Will Chameleon recognize the presence of the Win 7 boot sector, and allow me to chain load it?
Title: Re: [How-to] manually install Chameleon 2.0 to an EFI/GPT drive
Post by: Blackosx on July 09, 2010, 08:07:44 AM
Hi jbreher

Yes, you will need a retail OS X installation DVD and not a restore DVD that comes with a Mac.

From my experience, using Chameleon to boot Windows on a separate HDD will work just fine but you might have problems with Windows sleeping/hibernating.

Disk A = Chameleon
Disk B = Windows
Results in Windows failing to sleep (and I guess also hibernate but I haven't tried that to confirm).

Disk A = Chameleon
Disk A = Windows
Results in Windows sleeping and hibernating just fine. Though the installation of Chameleon will need to utilise the latest boot0hfs file written to the MBR with fdisk440. See this post for more details. (http://forum.voodooprojects.org/index.php/topic,1141.0.html)

I can't really explain the technical side of why having Windows on a separate HDD has these results, but that's what happens for me.
Title: Re: [How-to] manually install Chameleon 2.0 to an EFI/GPT drive
Post by: dino7777 on September 27, 2010, 12:23:46 AM
Hello,

somehow my boot EFI always becomes visible and gets auto mounted by Finder?!?

As I have tried this method a few times before, my EFI gets mounted immediately when creating /Volumes/EFI and mount_hfs EFI (sure I have erased it before with newfs_hfs).

So I get a warning within fdisk, when setting boot flag, thats says Device could not be accessed exclusively.

I am loosing head, cant figure out why its getting auto mounted all the time.

Even my Ubuntu linux mounts the partition and its mark as type ef, where all other hfs+ partitions have type ee.

Any hint how to get this thing not auto mounted.

Cheers

Title: Re: [How-to] manually install Chameleon 2.0 to an EFI/GPT drive
Post by: Gringo Vermelho on October 15, 2010, 09:00:46 AM
AFAIK the only way to really fix this issue is to re-partition and format the whole drive and then initialize the EFI partition correctly, as stated in the guide.

You could add the EFI partition to fstab but that's just a workaround.
I have never done this myself so I don't have the information first hand but I've seen posts explaining how to do it on InsanelyMac.

Title: Re: [How-to] manually install Chameleon 2.0 to an EFI/GPT drive
Post by: stillingen on November 20, 2010, 01:34:46 PM
Hi.

I´ve used the RC2 installer to install Chameleon on my OSX partition, not using EFI.
Is there a way to upgrade from RC2 to RC4/RC5 on my OSX partition, or is the only way to manually install RC4 / RC5 on EFI, and then moving all my Extra stuff from my OSX partition? I´ve seen mentioned, upgrading only requires replacing ./boot, but that goes for EFI installs I suppose, and not when install on OSX partition?


Title: Re: [How-to] manually install Chameleon 2.0 to an EFI/GPT drive
Post by: Gringo Vermelho on November 21, 2010, 09:09:43 PM
If your drive is GUID partitioned you can follow the guide, change the destinations (diskXsX) accordingly if you want to install Chameleon to your system partition rather than your EFI partition.

If your drive is MBR formatted, find an MBR installation guide and follow that, or you can use iFabio's 2.0 RC5 installer. Find it at InsanelyMac.

If you're upgrading from pre-RC5 it's probably not a good idea to just replace /boot.

I explained in the guide how you can tell whether your drive is GUID or MBR.
Title: Re: [How-to] manually install Chameleon 2.0 to an EFI/GPT drive
Post by: stillingen on November 22, 2010, 09:59:32 PM
Thank you. My disk is GUID, so I did the manual install, which went fine  ;D
I still have issues with read / write speed to my new 2TB disks, being the reason for upgrading. (http://forum.voodooprojects.org/index.php/topic,1700.0.html)
Title: Re: [How-to] manually install Chameleon 2.0 to an EFI/GPT drive
Post by: powed on February 07, 2011, 07:21:37 AM
I got a question ----->
ericsos-macpro31:~ EricSo$ sudo -s

WARNING: Improper use of the sudo command could lead to data loss
or the deletion of important system files. Please double-check your
typing when using sudo. Type "man sudo" for more information.

To proceed, enter your password, or type Ctrl-C to abort.

Password:
ericsos-macpro31:~ EricSo$ mkdir /Volumes/EFI
mkdir: /Volumes/EFI: File exists
ericsos-macpro31:~ EricSo$ mount_hfs /dev/disk1s1 /Volumes/EFI
mount_hfs: Permission denied
ericsos-macpro31:~ EricSo$ killall Finder


WHAT CAN I DO TO SOLVE THE "PERMISSION DENIED" ???
Title: Re: [How-to] manually install Chameleon 2.0 to an EFI/GPT drive
Post by: valv on February 07, 2011, 03:29:44 PM
try this with sudo:
Code: [Select]
fsck_hfs -f /dev/disk1s1