I got it working on my MacBook Air 2013 following this tutorial:
I works fine so far, took mi a while but it worths the time.
Use Linux or live boot Kali to do the partitining and make sure the FAT32 is the first partition followed by the KALI main partition if you have more than 4GB RAM you do not need SWAP partition
1- Create a FAT32 partition on the osx machine, a small one just to keed the /EFI/Boot/ files (5MB partition is plenty space but the min for FAT32 is 32MB. I assume you will also consider having a partition with free space available to install Kali. Use the Disk Utility for this step)
2- inside the /EFI/Boot/ located on the newly created partition, put the files located on ftp://mirrors.kernel.org/fedora/releases/18/Fedora/x86_64/os/EFI/BOOT/
3- Just to test if the partition is ready, restart your macbook and hold down the alt/option key (you should now see an "EFI Boot" option just beside your normal boot option, there's nothing to boot yet so just leave it for now)
4- Use DVD or USB key for Kali ISO to install it to the partition you reserved on step 1 Make sure to remember the device name i.e. /dev/sdc that you are installing on so when the GRUB loader instalation question come to choose the correct device (if you have /dev/sdc2 partition which it should be if you have nothing on the disk but the FAT32 partition and the newly Kali install then choose this partition to install the GRUB loader. The partitionyou are going to install Kali will not be recognized by default, so here's the workaround)
5- Boot Kali from the DVD we used to install it. Once you boot from the DVD open Computer. Now take a look at the Devices list (there should be 3, your OSX, the FAT32 partition and your Kali) mount the one that says Filesystem (Kali). Once inside the Filesystem go to boot/grub/ and copy the grub.cfg file... now mount the FAT32 partition, go to EFI/Boot and paste the grub.cfg
This step is the most important if you miss this one nothing is going to work.
6- Open the grub.cfg file with your favorite text editor > find the lines that say
"linux /boot/vmlinuz-3.7..." and "initrd /boot/initrd.img-3.7..." >
change the linux to linuxefi e initrd to
initrdefi > the lines (there are 4 changes to make, 2 in each menuentry) should now look like "linuxefi /boot/vmlinuz-3.7..." and "initrdefi /boot/initrd.img-3.7..."
There are 4 lines in total after all the changes are made.
7- Restart you macbook hold the alt/option and click the EFI Boot > grub will show options > boot it!
legacy mode means that UEFI is suppressed, so it will not boot
for certain
. You should pick UEFI boot in your pc BIOS. What happens then? – MariusMatutiae – 2013-11-19T08:22:52.290picking. UEFI Mode throws invalid magic number error – tarun – 2013-11-19T09:31:09.370