It turns out that the latest verion(s) of macOS work quite well on the Google Pixelbook.
Pixelbook owners with an Samsung 512GB NVMe SSD should be aware that problems will arise during the installation process. This is primarily due to the fact that the Samsung SSD does not play well with macOS, which could result in degraded performance and prolonged boot times.
If you have an Pixelbook with eMMC, you may proceed without any issue.
- Specs
- Current Status
- Mandatory Disclaimer
- Requirements
- Installation
- Post Install
- Misc. Information
- macOS Ventura
OpenCore Boot Menu | macOS Ventura |
---|---|
- Intel Core i5 7Y57 / i7
- Intel HD 615
- Intel WiFi Chip: 7265
- Keyboard - PS/2
- Touchpad: HID-over-I²C
- Suspend: ACPI S3 sleep
- Audio Codec:
max98927
as speakers,RT5514
as DMIC on SSP0, andRT5663
as headset on SSP1.- Note: Audio / Mic are currently not working, and may never work. As a cheap and easy workaround, a $10 USB sound adapter or Bluetooth audio work perfectly well. Or you can write audio drivers for us. ;)
Feature | Status | Notes |
---|---|---|
WiFi | Working | With itlwm.kext v2.1.0 stable and Heliport v1.4.1 (Latest) . |
Bluetooth | Working | With IntelBluetoothFirmware and BlueToolFixup.kext . |
Suspend / Sleep | Working partially | Only on battery power, working with EmeraldSDHC.kext . |
Trackpad | Working | Install Karabiner and go to Devices to enable ID 6353 |
Graphics Accel. | Working | With -igfxnotelemetryload in the boot-args . |
Internal Speakers | Not working | Unsupported codec. |
Keyboard backlight | Not Working | |
Keyboard Remaps | Working partially | Install Karabiner and use that to remap top row keys. |
eMMC Storage | Working | With EmeraldSDHC.kext . |
USB Ports | Working | Working OOTB, still advised to map USB ports. |
Webcam | Not Working | |
Internal Mic. | Not working | Same reason why internal speakers don't work; unsupported codec. |
Logout / Lock | Working | Working OOTB. |
Shutdown / Restart | Working | |
Touchscreen | Working | With VoodooI2C.kext and VoodooI2CHID.kext |
Screen backlight | Working partially | Using BetterDisplay helps as a stopgap solution. |
Continuity | Not working | Will likely never work, limitation with Intel Wi-Fi and itlwm. |
By continuing, you acknowledge that you have read and understood the contents of the following disclaimer, and consent to their terms.
The process described in this document could cause irreversible damage to your laptop, and you should prepare yourself for that outcome before you begin. I accept absolutely no responsibility for the consequences of anyone choosing to follow or ignore any of the instructions in this document, and make no guarantees about the quality or effectiveness of the software in this repo.
Before you start, you'll need to have the following things to complete the process:
- A willingness to accept that this is a potentially destructive process that may render your expensive Pixelbook inoperable or otherwise busted. Refer to the above disclaimer.
- A SuzyQable CCD Debugging cable (or make your own) if you haven't disabled write protect already.
- A USB-A to USB-C adapter
- 1 USB flash drive with USB-C connectors or adapters for your OpenCore USB.
- OpenCore version 0.8.8 or newer for proper boot device selection.
Here are the steps to go from stock Pixelbook to a macOS install using OpenCore:
- If you haven't already, flash UEFI firmware. Read and follow MrChromebox's instructions on how to flash the UEFI firmware using MrChromebox's scripts. To do this, you will need to disable write protect with either the SuzyQable cable or by removing the battery.
coreboot 4.2.0 (5/15/2023 release) has a known issue where macOS will hang on due to coreboot not defining CPU cores by default. To fix this, we'll use a SSDT to manually define them. Credits to ExtremeXT for the fix. You do not need this SSDT if you're on 4.1.9 or older.
- Add SSDT-PLUG-ALT.aml to your ACPI folder and snapshot your
config.plist
.
-
Setup your EFI folder using the OpenCore Guide. Use Laptop Kaby Lake & Amber Lake Y for your
config.plist
. -
Re-visit this guide when you're done setting up your EFI. There are a few things we need to tweak to ensure our Pixelbook works with macOS. Skipping these steps will result in a very broken hack.
-
In your
config.plist
, underBooter -> Quirks
setProtectMemoryRegions
toTRUE
. It should look something like this in yourconfig.plist
when done correctly:Quirk Type Value ProtectMemoryRegions Boolean True Warning This must be enabled.
-
In your
config.plist
, underNVRAM -> Add -> 7C436110-AB2A-4BBB-A880-FE41995C9F82
, add-igfxnotelemetryload
to yourboot-args
. Without it, you will NOT have iGPU acceleration. translation: it will run horribly. -
Under
DeviceProperties -> Add -> PciRoot(0x0)/Pci(0x2,0x0)
, make the following modifications:Key Type Value AAPL,ig-platform-id data 0000C087 device-id data C0870000 enable-dpcd-max-link-rate-fix data 01000000 dpcd-max-link-rate data 1E000000
Warning These should be the only items
in PciRoot(0x0)/Pci(0x2,0x0)
.
-
Set your SMBIOS as MacBookAir8,1. Ignore what the guide tells you to use,
MacBookAir8,1
works better with our laptop.Note If you choose to use
MacBook10,1
, which also works, you will not have Low Battery Mode. -
Download EmeraldSDHC for eMMC storage support. Put it in your Kexts folder.
-
Download corpnewt's SSDTTime, open it, select the first option
FixHPET
, chooseC
for default, and drag the SSDT it makes (SSDT-HPET.aml
) into yourACPI
folder. Then, in the same folder, copy the patches fromoc_patches.plist
into your config.plist underACPI -> Patch
. Without it, eMMC won't be recognized by macOS. -
Snapshot (cmd +r) or (ctrl + r) your
config.plist
. -
Now, boot from the OpenCore USB. In Disk Utility, go to Show All Devices in the top left, and then select the entire drive to format it as APFS. Begin the install after.
- After some while, it will reboot. Go back into the boot menu and select your macOS Monterey install . In the OpeCore boot menu, you should now see "Install macOS Monterey" as a menu item. Select that to continue the installation.
- The second phase of the installation will continue for about ~25-30 minutes. If it appears to be stuck, do NOT shut it down. It is not stuck. It just takes a while.
-
After installing, make sure to copy your EFI from the USB Drive over to your EFI Partition in your eMMC drive. corpnewt's MountEFI is great for doing this.
- To fix sleep, you may want to follow these steps from the OC guide fix here
- Sound currently works via Bluetooth or a USB sound adapter.
- Karabiner, can make the touchpad functional, but not great. It's also helpful for remapping the keyboard to match what the Pixelbook F1-F10 keys do.
Note: Required for macOS 12 and up: Make your own USB map, by following the documentation.
Warning You NEED to have USBToolBox.kext in your kext folder for the generated UTBMap.kext to work.
- Read the OpenCore guide on how to improve this hackintosh build and contribute here.
- When formatting the eMMC drive in Disk Utility, make sure to toggle "Show all Drives" and erase the WHOLE drive, not just the current partition.
- Format the drive as
APFS
- Map your USB ports prior to installing macOS for a painless install. You will reget it if you don't. You can use USBToolBox to do that. If you are using USBToolBox (Mainly Windows users), you need a second kext that goes along with it. Github repo here. USBToolBox will not work without this kext.
itlwm
is more stable & faster thanAirportItlwm
- You might have DRM issues, there's no fix for this. :(
- To fix the battery life on Ventura, you can set Low Battery Mode to be always enabled on battery. It's not perfect, but it helps. You can also use CPUFriend to tweak power settings but it might cause your system to die on boot. Please test on external USB disk first.
- eMMC will come up as an external drive in the boot picker since eMMC is just an embedded SD card. Nothing you can do about it.
- To hide the drive picker, set
ShowPicker
toFalse
inMisc
->Boot
->ShowPicker
AppleXcpmCfgLock
andDisableIOMapper
can be enabled or disabled. Makes no difference.- It's worth noting that while it's recommended, coreboot already includes mapped USB ports, meaning that USB mapping is not required. Proceed at your own risk if you decide to skip USB mapping.
- Make sure your
ScanPolicy
is set to0
. eMMC will not be recognized if it's some other value. - You are unable to swap wireless chips for Continuity features because the wireless chip is soldered onto the motherboard.
*Note: The hotkey to show drives DOES NOT WORK. Make a copy of your EFI with ShowPicker
enabled if you need to boot from another drive.
Before beginning, it's important to keep the following in mind:
- Your battery life will decrease more quickly while using Ventura. To prevent this, it is recommended to stick with Monterey or an earlier version.
- AirportItlwm's Ventura variant does not work well with our wireless chip, use itlwm to avoid issues.
Note: These steps can be completed after updating, however, you won't have WiFi during this time. For a smoother experience, it is recommended to perform the following steps before updating.
- Mount your EFI using Corpnewt's MountEFI.
- In the OC/Kexts folder, delete your previous
itlwm
/AirportItlwm
kext and replace it withitlwm v.2.2.0 alpha
. - If you haven't already, download and install Heliport, with the most recent stable release being sufficient.
- Launch ProperTree and reload (by pressing
ctrl+r
) yourconfig.plist
. - Start the update process (if you haven't already).
- See below for fixing WiFi.
Note: For Windows only, not sure how it's like on Linux.
- Under OC/Kexts, delete your old itlwm/AirportItlwm kext and replace it with
itlwm v.2.2.0 alpha
- Open up your kext folder, and locate
itlwm.kext
. - Open it, and find
Info.plist
. - Open ProperTree, navigate to where your
Info.plist
is, and open it. - Under
IOKitPersonalities -> itlwm -> WiFiConfig
, enter your WiFI details. Save and close when done. - Launch ProperTree and reload (
ctrl+r
) yourconfig.plist
. - Boot recovery. There will be no WiFi logo/symbol, but you will have WiFi. If you are able to install macOS, then you have not messed up.
Only for those that have macOS installed but haven't edited their Info.plist
.
- Mount your EFI
- Open up your kext folder, and locate
itlwm.kext
. - Click it, and select
Show Package Contents
and open the Contents folder. Once inside, find theInfo.plist
and copy it viactrl + c
. - Exit
itlwm.kext
and go back to your Kext folder. Paste yourInfo.plist
. - Open ProperTree, select the
Info.plist
in your Kext folder and open it. - Under
IOKitPersonalities -> itlwm -> WiFiConfig
, enter your WiFI details. Save and close when done. - Replace the old
Info.plist
with the one you just edited.
Do note that Heliport will report no WiFi upon logging in but keep in mind you actually do thanks to the edits we just made. :)
That's it. Feel free to share your ideas of how to improve this process and the hardware compatibility.