I had this """"""""great"""""""" idea of wanting to try out Windows (7) on this MacBook, because daaamn, it has i7, 8G RAM, and it's just in general more powerful than all of my x86 devices combined! Heh, it was a bit of a mistake.
Because I have a MacBook (Pro, early 2011) with a disk drive, Apple decided that I shouldn't be able to install windoze from pendrive... well, after fucking around a few hours trying to make the pendrive bootable, it turns out I had to format it GPT FAT32... ok fair enough...
After rebooting to boot into "EFI Mode", I waited, and waited, and eventually the top part of the screen got corrupted >_> (it's too agonizing to fuck around with efi boot, so I don't have a screenshot of this... it's just boring black stripes on top of the screen, so I'll just let you imagine it). It turns out that for some random reason Windows crashes when it can't set screen mode (it turns out those corrupted black boxes are part of the BSOD), so I had to chainload Windows using an efi binary called "VgaShim". It's really nice, I gotta say!
Okay, I'm in the Windows installer now, YAY! After I got into the drive selection screen, I selected partition4 called "BOOTCAMP", aaaand I saw a yellow triangle... I can't remember the full error message now, but it was something like "can't install on MBR in EFI mode, only on GPT". At first I was super confused, because why the fuck would Apple use MBR in an EFI environment?! (insert very distorted thonk here)
Okay... because macOS's default fdisk sucks ass, I found a nice alternative called "gdisk". After entering gdisk *from recovery* (because it doesn't work from a running system) I ran `/Volumes/GoatBook/usr/local/sbin/gdisk /dev/disk0`, and saw that it says "GPT, hybrid MBR" >_> I have never heard of hybrid MBR before, but it sounds like Windows doesn't like it at all. After digging around in gdisk, I found an option under the experts menu (key x) to create a new MBR (key n), and that did change from hybrid MBR to protective MBR (which also makes no sense to me). After writing changes to disk (key w from normal menu) I rebooted, and sure thing, I was now able to install Windows! ...kinda
After it went into the installation menu, I hyped up too early, because it failed almost instantly with an unknown error, then rebooted... I got soooo angry I wanted to rek the Windows partition Bootcamp created... "an internal error has occurred", said Disk Utility. "FFFFFFUUUUUUUUUUUUUUUUCK YOU", said Sono, raging. </AudiobookYTP> Because I'm very confident with CLI disk utility tools (like diskpart, fdisk, or in this case gdisk), I decided that Disk Utility can fuck off with its "low-level" errors, and fix the problem manually from gdisk... And sure enough, Windows created an extra system EFI partition! No wonder why Disk Utility wasn't able to resize my main partition table bigger than 500Gigs! After cleaning up the mess Windows made, I created a 250G FAT32 dummy partition on the rest of the disk, and proceeded to reboot into the Windows installer. After formatting the FAT32 partition as NTFS, it sure thing allowed me to click Next again!
But instead of going to the installation screen, it greeted me with a funny error message stating that it can't create a partition... ...this feels like Disk Utility again... So after pressing afaik SHIFT+F10 to open a command prompt, I went into diskpart, and saw the partition there, already formatted as NTFS... I thought WTF, and decided to spam diskpart further... eventually I noticed the activity light blink on my external HDD every time I press Next... and at this moment I knew I fucked up. I remembered that no Windows installer can detect the pendrive I'm using from the installer, hence I never managed to install from it (what a failure!). So I thought Windows must be trying to install from my external HDD! And I was right! After copying all files from the disk into my external HDD I managed to FINALLY* install Windows!
* after like 4 reboots
After rebooting into the Windows partition created, I noticed the black bars (BSOD text) again, so I went into macOS recovery again, and changed /efi/boot/bootx64.efi to VgaShim again. Just a bit of an oversight from my part
And sure enough, it works fine! In fact, I'm using it to write this blogpost!
There's just a tiiiiiiiiiny smol problem... can you notice it on the above screenshot? No? Let me help!
After hours and hours of Googling, and hours and hours of driver installation, I noticed a single sentence... "Windows sound doesn't work in EFI mode"
Fucking hell, Apple!
Because I have a MacBook (Pro, early 2011) with a disk drive, Apple decided that I shouldn't be able to install windoze from pendrive... well, after fucking around a few hours trying to make the pendrive bootable, it turns out I had to format it GPT FAT32... ok fair enough...
After rebooting to boot into "EFI Mode", I waited, and waited, and eventually the top part of the screen got corrupted >_> (it's too agonizing to fuck around with efi boot, so I don't have a screenshot of this... it's just boring black stripes on top of the screen, so I'll just let you imagine it). It turns out that for some random reason Windows crashes when it can't set screen mode (it turns out those corrupted black boxes are part of the BSOD), so I had to chainload Windows using an efi binary called "VgaShim". It's really nice, I gotta say!
Okay, I'm in the Windows installer now, YAY! After I got into the drive selection screen, I selected partition4 called "BOOTCAMP", aaaand I saw a yellow triangle... I can't remember the full error message now, but it was something like "can't install on MBR in EFI mode, only on GPT". At first I was super confused, because why the fuck would Apple use MBR in an EFI environment?! (insert very distorted thonk here)
Okay... because macOS's default fdisk sucks ass, I found a nice alternative called "gdisk". After entering gdisk *from recovery* (because it doesn't work from a running system) I ran `/Volumes/GoatBook/usr/local/sbin/gdisk /dev/disk0`, and saw that it says "GPT, hybrid MBR" >_> I have never heard of hybrid MBR before, but it sounds like Windows doesn't like it at all. After digging around in gdisk, I found an option under the experts menu (key x) to create a new MBR (key n), and that did change from hybrid MBR to protective MBR (which also makes no sense to me). After writing changes to disk (key w from normal menu) I rebooted, and sure thing, I was now able to install Windows! ...kinda
After it went into the installation menu, I hyped up too early, because it failed almost instantly with an unknown error, then rebooted... I got soooo angry I wanted to rek the Windows partition Bootcamp created... "an internal error has occurred", said Disk Utility. "FFFFFFUUUUUUUUUUUUUUUUCK YOU", said Sono, raging. </AudiobookYTP> Because I'm very confident with CLI disk utility tools (like diskpart, fdisk, or in this case gdisk), I decided that Disk Utility can fuck off with its "low-level" errors, and fix the problem manually from gdisk... And sure enough, Windows created an extra system EFI partition! No wonder why Disk Utility wasn't able to resize my main partition table bigger than 500Gigs! After cleaning up the mess Windows made, I created a 250G FAT32 dummy partition on the rest of the disk, and proceeded to reboot into the Windows installer. After formatting the FAT32 partition as NTFS, it sure thing allowed me to click Next again!
But instead of going to the installation screen, it greeted me with a funny error message stating that it can't create a partition... ...this feels like Disk Utility again... So after pressing afaik SHIFT+F10 to open a command prompt, I went into diskpart, and saw the partition there, already formatted as NTFS... I thought WTF, and decided to spam diskpart further... eventually I noticed the activity light blink on my external HDD every time I press Next... and at this moment I knew I fucked up. I remembered that no Windows installer can detect the pendrive I'm using from the installer, hence I never managed to install from it (what a failure!). So I thought Windows must be trying to install from my external HDD! And I was right! After copying all files from the disk into my external HDD I managed to FINALLY* install Windows!
* after like 4 reboots
After rebooting into the Windows partition created, I noticed the black bars (BSOD text) again, so I went into macOS recovery again, and changed /efi/boot/bootx64.efi to VgaShim again. Just a bit of an oversight from my part
And sure enough, it works fine! In fact, I'm using it to write this blogpost!
Fucking hell, Apple!