Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

Mr. Zarniwoop

macrumors 6502a
Original poster
Jun 9, 2005
751
139
This first post is usually updated with recent summarized information.


Simply looking to download the Piker-Alpha macosxbootloader? Links:
________________________________________________________________

If you have OS X Yosemite up and running on your 2006/2007 Mac Pro with Pike's boot loader, this is how to make sure OS X Yosemite updates (like the OS X Yosemite 10.10.2 Update) don't break your ability to boot Yosemite:
  1. prerequisite: an installed and working OS X Yosemite system with Pike's boot.efi
  2. install the PikeYoseFix script
  3. reboot twice as the second boot is when the PikeYoseFix script is fully installed and executes!
Once the PikeYoseFix script is installed, it does not need to be installed again and it should be safe to install future OS X updates. It automatically runs at every system shutdown re-copying Pike's boot.efi to the proper locations just in case something like an OS X update overwrote it.

If you don't have PikeYoseFix script installed, or if you have OS X installed on a Fusion drive where the PikeYoseFix script doesn't work properly, you should disable "Install OS X updates" and "Install system data files and security updates" in System Preferences > App Store so that OS X doesn't automatically install any future updates that may overwrite Pike's boot.efi.

Lastly, if Pike's boot.efi boot loader was overwritten after an OS X update because you didn't take the precaution of installing the PikeYoseFix script, and you have a folder with question mark on boot, here is a link to instructions on how to restore Pike's boot.efi to restore the ability to boot.
________________________________________________________________

If you find Pike's boot loader valuable in keeping your 2006/2007 Mac up-to-date, please consider donating to him as a thank you and to encourage future continued development. He's had a tough time with hardware and been developing all this time without access to an actual 2006/2007 Mac Pro! His donation page is in euros, where €20 is around $23 USD, and PayPal will show the actual conversion used at time of donation. I know any amount is highly appreciated.

Even if you don't donate, you may consider simply thanking him via a comment on his blog, as he's done a lot of work without asking for anything in return or benefiting from this project. Thanks Pike!


How can these Macs run Yosemite?

Apple does not support OS X Yosemite on the original 2006/2007 Mac Pro and 2006 Xserve. These 64-bit Mac Pros and Xserves have EFI32 firmware and can't natively boot OS X Yosemite "out-of-the-box", but are easily capable of running it with a different boot loader. Once a new boot loader is used to launch the native 64-bit Yosemite kernel, OS X 10.10 boots and works normally exactly as it does on a 2008 Mac Pro or newer with EFI64 firmware.


Background:

OS X 10.6 Snow Leopard was the first OS X version with optional support for a 64-bit kernel, allowing booting either with a 32-bit or 64-bit kernel. However, Apple did not support booting the 64-bit kernel in Macs that shipped with EFI32 firmware, even if they had 64-bit processors capable of running the 64-bit kernel. When Apple dropped the 32-bit kernel entirely from OS X, starting with OS X 10.8 Mountain Lion, EFI32 Macs no longer had an Apple-supported mechanism to boot newer OS X versions.

The last version of OS X officially supported by Apple on the original 2006 Mac Pro MA356LL/A (MacPro1,1), 2007 Mac Pro (8-core) MA1186/A (MacPro2,1) and Xserve (Late 2006) MA409LL/A (Xserve1,1) models was OS X 10.7 Lion, and then only when booted with a 32-bit kernel due to their EFI32 firmware. However, these Macs were the most powerful and upgradable EFI32 models and have a 64-bit architecture, so the user community has been keeping them running with 64-bit kernels and newer OS X releases using a variety of methods.


Two approaches that can be used to boot OS X 10.10 Yosemite on unsupported Mac Pro models:


Piker-Alpha bootloader (preferred approach)

This method, a fork of , uses a replacement native EFI32 [url=https://web.archive.org/web/20090826094940/http://developer.apple.com/documentation/MacOSX/Conceptual/BPSystemStartup/Articles/BootProcess.html#//apple_ref/doc/uid/20002130-115736-TPXREF104]boot.efi boot loader that thunks EFI64 calls from the 64-bit OS X kernel to the EFI32 firmware.

Additional information about Pike's boot.efi is available at Pike's blog, Universum. There are two variations available, one with a legacy light grey background/dark grey Apple logo boot screen boot.efi that blends with the native EFI32 pre-boot screen (2008-2012 Mac Pro-style), and a new black background/white Apple logo boot screen boot.efi (2013 Mac Pro-style).

With Pike's boot.efi, holding Command-R to start the OS X Recovery System that gets installed with Yosemite is supported, although holding Option/Alt at boot and selecting the "Recovery HD" may not work until the OS X install image in the Recovery system is updated with Pike's boot loader. 2006/2007 Mac Pros do not support Internet Recovery.

After an initial report of failure booting from a Fusion Drive, there has since been a report of success so Fusion Drives may have to be created manually before installing Yosemite.

While this method is preferred because it's a native EFI boot, there is some risk is that installing future Yosemite updates could overwrite Pike's EFI32 boot.efi if Apple were to update the stock EFI64 boot.efi. This would be unusual, but it has happened in a few previous OS X updates and is the case with the 10.10.2 update. If this were to happen, the system would no longer be natively bootable on a 2006/2007 Mac Pro until it had Apple's stock boot.efi replaced with Pike's boot.efi again. A simple approach to help protect against this is PikeYoseFix, a launch daemon that re-copies the EFI32 boot.efi file to proper locations at shutdown.


Hackintosh” boot loader

This method uses a legacy mode (CSM) boot loader to load the stock 64-bit OS X kernel while emulating EFI NVRAM. Note that the Xserve doesn't support legacy/PC BIOS emulation mode, so it can't directly use this approach.

The Chameleon boot loader was used in MacEFIRom's original approach to booting the 64-bit kernel on the 2006/2007 Mac Pro. Chameleon has since been updated to properly support the Yosemite kernel, and the Clover boot loader was always capable of booting Yosemite since it boots using the stock OS X boot.efi boot loader which in turn loads the Yosemite kernel. After an initial successful report here which used Clover, instructions were posted on how to use Clover to install and boot Yosemite DP1 along with an initial script. A full Mac Pro hardware configuration for Clover to support audio and the ODD SATA ports has been posted.

Booting with Chameleon/Clover is sometimes preferable in configurations with otherwise-unsupported hardware that needs to be initialized and usable in OS X, such as unsupported graphics cards or HDMI audio in certain situations.


Support for Handoff in Yosemite to allow AirDrop, Continuity and Instant Hotspot with iOS 8 devices:

The original Airport Extreme (802.11a/b/g/draft-n Wi-Fi) and Bluetooth 2.0+EDR options from Apple don't support Handoff. Several vendors, including MacVidCards, sell new add-on hardware kits to retrofit older Mac Pros with 802.11ac Wi-Fi and Bluetooth 4.0 LE that work in 2006/2007 Mac Pros to allow Handoff. There have been reports of needing to sign out of iCloud and then sign in again after replacing WiFi and Bluetooth hardware to enable Handoff.

There has been a report of an OEM Bluetooth 2.0+EDR card causing a conflict with USB devices. If you experience issues with the built-in USB ports under Yosemite, you may also consider removing or upgrading your Bluetooth card.

In Yosemite, both phone calls and SMS from OS X with an iPhone work with a 2006/2007 Mac Pro and are not dependent on OS X Handoff support.


Unsupported original legacy graphics cards vs. Yosemite-supported graphics cards:

Yosemite does not include 64-bit kernel extension device drivers for the original NVIDIA GeForce 7300 GT, ATI Radeon X1900 XT, and NVIDIA Quadro FX 4500 PCIe graphics cards that shipped with these Mac Pros, nor the ATI Radeon X1300 that shipped with the Xserve (Late 2006), so they do not work properly in Yosemite. These graphics cards display issues such as a very sluggish GUI with no QE/CI support, no framebuffer support (for DVD Player, Geekbench and other programs), graphics artifacts, mouse tearing, inability to change resolutions, bad refresh rates, and other system instabilities. If you need normal graphics support in Yosemite, you will need a newer PCIe graphics card, with popular options being the Apple ATI Radeon HD 5770 Graphics Upgrade Kit for Mac Pro, SAPPHIRE HD 7950 3GB GDDR5 MAC Edition, or many different options of stock and Mac-"flashed" PC cards.

Many, but not all, modern stock non-flashed PC graphics cards with AMD (for OpenCL/OpenGL support) or Nvidia chipsets (for CUDA/OpenCL/OpenGL support) work "plug and play" with Yosemite in 2006/2007 Mac Pros, although the display will remain off until after the OS X Desktop initializes. This means you won't see anything during the boot process.

Compatible properly-Mac-flashed PC cards offer two benefits over stock non-flashed PC cards: allowing a normal boot screen just like a Mac-specific graphics card, and better compatibility in OS X with the card's capabilities/performance/ports. Most, but not all, Mac-flashed ATI/AMD cards have EBC firmware that work in all PCIe-based 2006-2012 Mac Pro models with either EFI32 or EFI64. All newer Mac-flashed Nvidia cards have EFI64 firmware and will act like non-flashed PC cards with no boot screens in EFI32-based 2006/2007 Mac Pros, except for older Mac-flashed Nvidia GeForce 8800 GT/9800 GT/GT 120 cards with EFI32 firmware.
Note also that the 2006/2007 Mac Pro has PCIe 1.1 expansion slots, with the bottom double-wide slot capable of being configured to use a maximum 2.5 GT/s link speed when configured as a x16 lane graphics slot. Yosemite's Expansion Slot Utility, located in /System/Library/Core Services, supports the 2006-2007 Mac Pro to configure the number of lanes available in each slot. PCIe 2.0/3.0 cards that can run at 5.0 GT/s link speed in 2008-2012 Mac Pros can work in 2006/2007 Mac Pros, but only with a PCIe 1.1 maximum 2.5 GT/s link speed.

None of these options are officially supported in these Mac Pros by AMD, Apple, or Nvidia, but can work with either the Piker-Alpha or Chameleon/Clover boot loaders.


iMessage/FaceTime note:

Regardless of approach used, most users cannot initially login to iMessage or FaceTime using their Apple ID from their Mac Pro after installing Yosemite as a security precaution. When trying to login, they receive an iMessage Registration validation code. The solution is to contact Apple support, provide the Mac Pro's serial number, explain that Yosemite was installed and that iMessage isn't working and provide the validation code. Apple then unblocks the Mac Pro, allowing iMessage and FaceTime login immediately and in the future without other issues.
 
Last edited:
  • Like
Reactions: 3NV7 and JOSECBA

Mr. Zarniwoop

macrumors 6502a
Original poster
Jun 9, 2005
751
139
For those experimenting with booting Yosemite DP1 on a Mac Pro, something that may be worth noting as you play with various kernel extensions:
In Developer Preview 1 unsigned or improperly signed kexts will not be loaded. To use unsigned kexts during development, this strict check can be disabled by adding a “kext-dev-mode=1” boot arg.
[...]
Installing kernel extensions on systems running Developer Preview 1 may make your system un-bootable. To fix the issue, boot into the Recovery Partition and run the following:
touch /Volumes/<10.10 Partition>/System/Library/Extensions
kextcache -u /Volumes/<10.10 Partition>
 
  • Like
Reactions: jawshoeuh

666sheep

macrumors 68040
Dec 7, 2009
3,686
291
Poland
I tried nvram boot-args, touch and kextcache after replacing boot.efi, single user and safe boot – no dice.
In verbose mode it seems to load boot.efi and it stucks on loading Extensions.mkext.

Curious thing is that simple replacement of boot.efi didn't make my YOS HDD bootable again in 5,1. I had to use touch on CoreServices and kextcache on whole volume (like Mr.Zarniwoop said), then it worked normally in a 5,1.

One thing I didn't try is clean install – my YOS partition has migrated user account and apps from 10.9. But it shouldn't matter because it works on a 5,1 and only difference is boot efi.
 

Mr. Zarniwoop

macrumors 6502a
Original poster
Jun 9, 2005
751
139
it stucks on loading Extensions.mkext
Isn't that just a cache of your kexts? What if you erase it, won't it get re-created?

From an old Apple OS X document:
Title
Refresh Extensions cache after upgrading Mac OS X

Summary
Recreating the Extensions cache files has, in certain cases, successfully
cured unstable system behavior. This behavior has been noted after
upgrading Mac OS X and may include Kernel Panics.

The procedure involves deleted the Extension caches:

"/System/Library/Extensions.kextcache”
"/System/Library/Extensions.mkext"

Discussion
In Terminal.app execute the following commands. Your administrator
password will be required.

sudo rm /System/Library/Extensions.kextcache

sudo rm /System/Library/Extensions.mkext

reboot


Once deleted, new cache files will be created during reboot.
 

128keaton

macrumors 68020
Jan 13, 2013
2,029
418
I am trying the Chameleon method, just waiting on DP1 to download again. Best of luck!
 

666sheep

macrumors 68040
Dec 7, 2009
3,686
291
Poland
Isn't that just a cache of your kexts? What if you erase it, won't it get re-created?

Yeah, the problem is, that there's no Extensions.mkext in location you pointed.
In 10.8 and 10.9 it supposed to be in System/Library/Caches/com.apple.kext.caches/, but in 10.10 it isn't there as well (at least in clean install).

I tried clean install – without change: still gets stuck on loading Extensions.mkext from directory I mentioned above. I'm almost 100% positive that's boot.efi incompatibility.

When GM will be released, we will need Tiamo or another genius, I think.

OS itself did not impress me much: disgusting UI, poor performance (OGL and OCL). But it's only DP1... I don't have much hope for UI, but performance should be improven in upcoming releases.
 

128keaton

macrumors 68020
Jan 13, 2013
2,029
418
Yeah, the problem is, that there's no Extensions.mkext in location you pointed.
In 10.8 and 10.9 it supposed to be in System/Library/Caches/com.apple.kext.caches/, but in 10.10 it isn't there as well (at least in clean install).

I tried clean install – without change: still gets stuck on loading Extensions.mkext from directory I mentioned above. I'm almost 100% positive that's boot.efi incompatibility.

When GM will be released, we will need Tiamo or another genius, I think.

OS itself did not impress me much: disgusting UI, poor performance (OGL and OCL). But it's only DP1... I don't have much hope for UI, but performance should be improven in upcoming releases.


Agreed...
 

gpatpandp

macrumors 6502
Aug 16, 2010
309
11
Are you using it to further the MacPro1,1, + Yosemite movement? If so, I'd consider...

Also, I realized I need my original GFX card, found it, now just white screen...

As I contribute to these forums regularly (feel free to scroll through this forum as well as hacker Wayne's Mountain Lion OS X 10.8 MLPF & OS X 10.9 forums and note my contributions), I can assure you that I have absolutely no ulterior motivation.
 

128keaton

macrumors 68020
Jan 13, 2013
2,029
418
As I contribute to these forums regularly (feel free to scroll through this forum as well as hacker Wayne's Mountain Lion OS X 10.8 MLPF & OS X 10.9 forums and note my contributions), I can assure you that I have absolutely no ulterior motivation.

Okay, sorry. I had some thirsty people bugging me on reddit last night. I'll see what I can do.

Right now, I am recovering from accidentally installing cham on my main HD, no problem, fixable. Also, I forgot to put the mach_kernal into the root.
 
Last edited:

Mr. Zarniwoop

macrumors 6502a
Original poster
Jun 9, 2005
751
139
still gets stuck on loading Extensions.mkext from directory I mentioned above. I'm almost 100% positive that's boot.efi incompatibility.
I wonder if that boot.efi looks for /mach_kernel? What if you copied /Library/Kernels/kernel to /mach_kernel?

I suspect that might give different results but still hang due to kernel extension differences between Mavericks and Yosemite. I bet you're right and we'll need a new tiamo-style EFI32 64-bit thunking bootloader for Yosemite. We have tiamo's source code as a start at least. I always wondered if it was based upon unreleased internal Apple code?

I have higher hopes for a Chameleon (or perhaps Clover) bootloader Yosemite install for a 2006/2007 Mac Pro as a first step before we get a clean tiamo-style bootloader.
 

128keaton

macrumors 68020
Jan 13, 2013
2,029
418
I wonder if that boot.efi looks for /mach_kernel? What if you copied /Library/Kernels/kernel to /mach_kernel?

I suspect that might give different results but still hang due to kernel extension differences between Mavericks and Yosemite. I bet you're right and we'll need a new tiamo-style EFI32 64-bit thunking bootloader for Yosemite. We have tiamo's source code as a start at least. I always wondered if it was based upon unreleased internal Apple code?

I have higher hopes for a Chameleon (or perhaps Clover) bootloader Yosemite install for a 2006/2007 Mac Pro as a first step before we get a clean tiamo-style bootloader.


Insanely has got a Yose Hackintosh working, they used the Clover BL, which I am trying now.
 

Mr. Zarniwoop

macrumors 6502a
Original poster
Jun 9, 2005
751
139
****, turns on to black screen
Which Chameleon version did you use?

Did you try ErmaC's Chameleon 2.2svn r2380 with preliminary untested OS X 10.10 support?

When do you get the black screen? You should be at least seeing Chameleon boot screens if you have it installed correctly. Do you still get a black screen with a verbose or single user boot of Yosemite?
 

128keaton

macrumors 68020
Jan 13, 2013
2,029
418
Which Chameleon version did you use?

Did you try ErmaC's Chameleon 2.2svn r2380 with preliminary untested OS X 10.10 support?

When do you get the black screen? You should be at least seeing Chameleon boot screens if you have it installed correctly. Do you still get a black screen with a verbose or single user boot of Yosemite?

Black screen was something unrelated, the Chameleon BIOs thing comes up, flashes 'boot options' then reboots the computer. I havent even gotten the installer to boot, so no Yose yet. Haven't tried that Chem loader. Will try after this Clover test.

EDIT: Got a nice progress bar after this Clover test, still loading, then kernel panic....


Also, I need /mach_kernel again...

The biggest problem is that Chameleon needs the kernel, but the kernel has been moved and I don't think just moving and renaming will fix that.
 
Last edited:
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.