Author Topic: How do I manually install chameleon?  (Read 14502 times)

0 Members and 1 Guest are viewing this topic.

macdanny

  • Observer
  • Posts: 15
Re: How do I manually install chameleon?
« Reply #15 on: June 19, 2009, 07:38:00 AM »
I would prefer that the makers of the chameleon software answer my questions but like I read somewhere else in the forum, we are getting our monies worth :)

Mac on my pc hardware is my latest hobby/obsession so I would prefer to get apple/darwin software working since grub is old news to me. Ultimately I want to stop tinkering and just USE the computer but I want to learn a lot along the way.

I also read about chain0 and am considering that option as well but read conflicting info about that working with logical partitions as well so I'm back to needing to know WHY an older chameleon on my thumb drive sees and boots from logical drives just fine but users in the forum tell me that they "think" osx has to be on a primary partition.

I appreciate any well intentioned help from anyone willing to give it but I'm hoping one of the developers/creators stumbles across this thread and gives me a definite answer.

thorazine74

  • Member
  • Posts: 57
Re: How do I manually install chameleon?
« Reply #16 on: June 19, 2009, 10:18:24 AM »
I think its not a matter of chameleon versions but about all boot stages being in the same drive.
Booting from the HD chameleon's boot0 on the mbr can only find boot1h in primary partitions, so you never get to the boot menu.
Booting from the USB chameleon is loading all the way to the boot menu (because everything is in the same disk and just using primary partition), and from the boot menu it can see all partitions and boot from there.
I dont know if the chain0 would work for logicals, if you are relying on windows you may have troubles with logicals too, not sure.
You have a small primary partition disk0s1, that seems to be unused or unrecognized for OS X, not sure what it is or whats in there but if you can get rid of it and redo your partition layout you would still be able to make OS X partition be a primary.
Mac OS X 10.5.6 Retail (Updated to 10.5.7) with Chameleon 2.0 RC1+BootIt NextGen 1.86 (MBR Single Drive)
Gigabyte 73PVM-S2H + C2D + 2 Gb
2 SATA HD (AppleAHCIport.kext) + 1 PATA DVD+RW (DarwinATAPort.kext)
Realtek ALC889 (VoodooHDA.kext)
Geforce 8600GTS (EFI String) PS/2 M & KB: VoodooPS2.kext

zef

  • Administrator
  • Posts: 265
Re: How do I manually install chameleon?
« Reply #17 on: June 19, 2009, 02:36:54 PM »
I also read about chain0 and am considering that option as well but read conflicting info about that working with logical partitions as well so I'm back to needing to know WHY an older chameleon on my thumb drive sees and boots from logical drives just fine but users in the forum tell me that they "think" osx has to be on a primary partition.

I appreciate any well intentioned help from anyone willing to give it but I'm hoping one of the developers/creators stumbles across this thread and gives me a definite answer.

The original boot0 code has support for logical partitions, but to be able to support GPT+MBR partitioned disks using a single boot0 code, we removed the extended partiton support. Maybe an ultimate ASM pro could implement all in 440 bytes :)

In your case you may try to use another primary boot loader and chainload your hfs+ partition by adding a new chainload entry in grub or add a chain0 entry in boot.ini when using NT loader or simply add a new OS X entry with EasyBCD - this will install chain0 by itself.
ASUS P8Z68-V PRO/GEN3 | i5-2500k | 16GB RAM | GTX560 | Keyboard | Mouse | Devilsound DAC

rocksteady

  • Global Moderator
  • Posts: 233
  • Root Down
Re: How do I manually install chameleon?
« Reply #18 on: June 19, 2009, 03:15:26 PM »
tempolo's point about permissions refers to kext permissions while I think that you're talking about repairing permissions via the Disk Utility.

In any way, it's a good habit to set your kext permissions appropriately. Even if Chameleon reads them blindly, you'll get errors when trying to make a kext cache (mkext). So for every /Extra/Extensions/*.kext:

Code: [Select]
sudo chown -R root:wheel /Extra/Extensions/MyWhatever.kext
sudo chmod -R 755 /Extra/Extensions/MyWhatever.kext

What's the situation right now? Did you decide to go for an earlier Chameleon version?
Stop bitching, start coding or documenting or both..

P5Q-EM : Q6600 : 8GB RAM : 8800GT : SATA Drives

zhell

  • Member
  • Posts: 46
Re: How do I manually install chameleon?
« Reply #19 on: June 19, 2009, 03:43:58 PM »
Second command should be
Code: [Select]
sudo chmod -R go=u-w /Extra/Extensions/MyWhatever.kextOtherwise you add executable permissions to all your files, which is a security hole. This "chmod -R 755" myth just won't die :(

macdanny

  • Observer
  • Posts: 15
Re: How do I manually install chameleon?
« Reply #20 on: June 19, 2009, 09:17:27 PM »
A big thanks to thorazine74 and zef for clearing up the reason I am unable to boot from a logical partition. I like it when things make sense. I'll try EasyBCD out, but I wouldn't mind it if zef sent me that original boot0 code that is MBR specific so I can feel like I really understand the boot process better.

I also want to thank rocksteady for being a mind reader. You are correct in assuming I was talking about repairing permissions via the Disk Utility. I'm not really sure the difference between what Disk Utilily does and what the chown and chmod commands do. If you can point me to an explanation that would be great.

I know that commands chown and chmod are used in linux but I've never seen a Disk Utility like "repair permissions" in linux so I don't know what it is actually doing, just that it has to be done often when kexts are modded.
 
I am quickly becoming a fan of osx and may lose the desire to play with linux or freebsd as much now that I have a new os to play with and learn about. Heck I may even buy apple hardware some day once I master the hackintosh.

tempolo

  • Member
  • Posts: 82
    • My own Hackintosh page
Re: How do I manually install chameleon?
« Reply #21 on: June 19, 2009, 09:45:57 PM »
I'm not really sure the difference between what Disk Utilily does and what the chown and chmod commands do.
Disk Utilily's "Repair permissions" looks at a database that's stored somewhere in /Library, I believe, and which lists the "correct" permissions for many files, mostly those supplied by Apple. If the actual permissions differ from these, they can be reset.
Those "correct" permissions are sometimes necessary so that the OS function operate at all (e.g, if some executable files have the wrong owner, they might not work), while other permissions are only required as a safety measures against hackers and malicious programs trying to "break in".

As for the permission of the Extension (and Extra) folders, they are mostly not important because when they get loaded as part of the early boot process, their permissions do not matter at all. Hence, while you are trying things out with different kexts, it's easier to just change all permissions and/or owners of the folders to "read+write" for "everyone" so that you do not have to authorize changes all the time.

Once you're doing testing, resetting the proper (safe) permissions would be prudent.


zef

  • Administrator
  • Posts: 265
Re: How do I manually install chameleon?
« Reply #22 on: June 19, 2009, 10:03:31 PM »
... I wouldn't mind it if zef sent me that original boot0 code that is MBR specific so I can feel like I really understand the boot process better.

There you go:

http://www.opensource.apple.com/release/mac-os-x-1044x86/

Look for "boot-132", you can either browse the source online or get the tarball. This is the father of all later existing boot loader projects. It was originally posted when Apple released the 10.4.8 kernel sources back in october 2006.

You can find more interesting readings here from David Elliott (all fake EFI loaders are based on his patched versions):

http://tgwbd.org/darwin/boot.html
ASUS P8Z68-V PRO/GEN3 | i5-2500k | 16GB RAM | GTX560 | Keyboard | Mouse | Devilsound DAC

tempolo

  • Member
  • Posts: 82
    • My own Hackintosh page
Re: How do I manually install chameleon?
« Reply #23 on: June 19, 2009, 10:14:41 PM »
To add to zef's reply, I've also tried to document this a little. See my page here:

http://www.tempel.org/Hackintosh/ImplementationDetails


macdanny

  • Observer
  • Posts: 15
Re: How do I manually install chameleon?
« Reply #24 on: June 21, 2009, 04:34:52 PM »
Thank you to all. I will check out the links in these last 2 posts. EasyBCD brings me to the chameleon loader so I'm happy for now. How do I close or mark this thread as solved?

I'm sure I'll want to tinker with it some more soon but for now I'm happy to not have to rely on a thumb drive to boot into my install. I'll probably research my UUID error 35 message first and then poke around to see if anyone has gotten my wireless card working since I'm tethered to the apple usb to ethernet adapter right now.

zef

  • Administrator
  • Posts: 265
Re: How do I manually install chameleon?
« Reply #25 on: June 21, 2009, 06:15:38 PM »
To add to zef's reply, I've also tried to document this a little. See my page here:

http://www.tempel.org/Hackintosh/ImplementationDetails

Thx tempolo, great stuff! Btw the boot0 section needs a small correction:

Quote
boot0 or chain0 - These are phase 0 loaders, fitting into the first sector of a disk, the MBR (<= 446 bytes). They load phase 1, i.e. two sectors (<= 1024 byte) from the start of the partition that's marked active in the MBR.

Both boot0 and chain0 will load only 1 sector. The 1024 byte long boot1h found in Chameleon loads the second sector by himself.
ASUS P8Z68-V PRO/GEN3 | i5-2500k | 16GB RAM | GTX560 | Keyboard | Mouse | Devilsound DAC