• Become a Premium Member for $25/year with no ads to improve your community experience.

EliteMacx86

Administrator
Staff member
Joined
Jul 22, 2018
Messages
7,535
Motherboard
Supermicro X11SPA-T
CPU
Intel Xeon W-3275 28 Core
Graphics
2xAMD RX 580 8GB
OS X/macOS
13.x
Bootloader
  1. OpenCore (UEFI)
Mac
  1. Mac mini
  2. MacBook Pro
Mobile Phone
  1. Android
  2. iOS

How To Install macOS on Chromebook and Chromebox - OpenCore Install Guide

This guide is intended for Chromebook and Chromebox users who wish to run macOS. The guide covers a step-by-step process to prepare the Chromebox and/or Chromebox and boot the macOS installer on your target Chromebook and/or Chromebox using the OpenCore Bootloader along with the installation and installation.

By following this guide, you'll also be able to flash the Coreboot firmware (later in the guide) and create a complete OpenCore EFI for your particular Chromebox and/or Chromebox. This guide supports both Intel and AMD Chromebooks and Intel Chromebox with UEFI Boot mode. Of course, the hardware compatibility must be taken care of.

What is a Chromebook?
Unlike other Notebooks, Chromebox is a class of Laptops or Tablets that run the Linux-based light-weight ChromeOS from Google as its Operating System designed to rely on web applications for tasks using the Google Chrome browser. Since 2017 and 2018, the Chromebook and Chromebox can run Android and Linux Apps

What is a Chromebox?
Unlike other Mini PCs and NUCs, Chromebox is a class of Mini PCs and NUCs that run the Linux-based light-weight ChromeOS from Google as its Operating System designed to rely on web applications for tasks using the Google Chrome browser.

What is Chromebase?
Unlike other All In One PCs, Chromebase is a class of All In One PCs that run the Linux-based lightweight ChromeOS from Google as its Operating System designed to rely on web applications for tasks using the Google Chrome browser.

Although there is also Chromebit which is a stick PC running ChromeOS from Google but as the hardware is completely unsupported, we won't be discussing it here.

Is it worth buying a Chromebook or Chromebox or Chromebase for running macOS?

Due to the hardware limitations and the complexity involved (such as flashing a custom firmware), generally, no. It's not a good choice to buy a Chromebook or a Chromebox for the purpose of installing macOS on it. But if you have an existing device and want to try macOS, why not?

Can you install macOS on any Chromebook and Chromebox?

Although every Operating System has certain hardware requirements but when it comes to macOS, compatibility matters a lot as it's very picky in terms of hardware support. You just cannot use any hardware unlike on other Operating Systems like Windows or Linux or it would lack several functions like Graphics, Audio, Power Management, etc on macOS. Therefore, you must ensure the compatibility (later in the guide).

Is there any downside of running macOS on a Chromebook and/or Chromebox?

As long as the hardware is compatible with macOS, there isn't any downside of running macOS on a Chromebook and/or Chromebox but a downside of these Chromebooks and Chromebox is the eMMC which not only limits the read/write speed but also limits the storage capacity. Of course, an upgrade option for the SSD is available on a few selected models but as ChromeOS has low space requirements (typically 8GB after installation), it made more sense to include an eMMC option instead of an M.2/NVMe or a 2.5inch SSD for the manufacturers while cutting down the costs. However, despite having a Mobile CPU, the Chromebox has more advantages over the Chromebook as it always includes an option for the SSD/NVMe.

Unlike the Storage option, you're limited with the WiFi option. The WiFi is soldered on most of the models, especially on Chromebooks. As a result, you cannot replace it with a compatible WiFi/BT Card (such as BCM94360NG) which works natively and has support for functions like AirDrop and Handoff. Although there is an active development from the OpenIntelWireless project for the Intel WiFi, it still needs a lot of improvement but is still better than using a USB WiFi/BT Adapter which will also occupy one of the USB ports on the system.

Yet, there are models (such as Dell 13 7310) which has the option for both, i.e. Storage upgrade as well as the WiFi/BT replacement, and with such an option, it becomes quite flexible and a perfect choice for installing macOS. A truly unlocked machine with the option to upgrade the storage and replace the WiFi/BT, allowing a native WiFi/BT function

Other than these two, there isn't any major downside of installing macOS Chromebook and Chromebox.

Can you Dual Boot Windows or Linux alongside macOS?

Yes, unlike on other systems, you can Dual Boot the choice of your OS along with macOS on a Chromebook and/or Chromebox.

What is Mr. Chromebox?

By default, the Chrome based devices only support ChromeOS. With the ChromeOS firmware installed, it does not allow any other OS to load, nor does it have any Boot Menu or any shortcut. So, you cannot install any OS (including macOS) until you flash a custom firmware. With the custom firmware flashed you gain the capability to access the Boot Menu and install the OS of your choice. Mr. Chromebox facilitates the Custom firmware which utilizes the Coreboot firmware - an extended firmware platform that delivers a lightning fast and secure boot experience on modern computers and embedded systems. Mr. Chromebox firmware Utility supports more than 250 unique Chrome devices, allowing you to run the OS of your choice.

How do I flash the Custom Firmware?

As per the requirements of this guide, flashing Coreboot Firmware is necessary in order to gain access to the Boot Menu. Using Mr. Chromebox Firmware Utility, a Custom Coreboot Firmware can be flashed on the target device. The flashing instructions are provided in Chapter X of this guide.

Do I need a Programmer to flash the Firmware?

As the BIOS chip is write-protected to prevent unauthorized write access and/or flashing the wrong file, you'll have to remove the write-protection for your target device in order to flash the Custom Firmware. The removal of write protection varies from manufacturer to manufacturer and model to model.

What is OpenCore?

OpenCore is a bootloader - Unlike any other bootloader such as GRUB, it is an advanced bootloader especially designed to boot macOS/OS X on Non-Apple computers and is capable of booting a variety of other Operating Systems including Windows and Linux. OpenCore differs a lot from Clover and has been designed with security and quality, allowing us to use many security features found on real Macs such as System Integrity Protection and FileVault. Moreover, configuring an OpenCore EFI (used for booting) is way less complex than Clover and provides much more modern functionality than Clover. Although, still lacks some of the great features which are implemented in Clover such as on-the-fly hot patching. However, there are more advantages to using OpenCore due to its easy-to-configure in nature and regular updates. More in-depth information can be found in Why you should use OpenCore over Clover and other Bootloaders.

For users who are not familiar with OpenCore or if they haven't used it before, this guide may seem a bit complex to them, but it is quite simple if you read and go through the steps carefully. Those users who are familiar with OpenCore or have used it before will find this guide relatively easy to follow than any other guide!

Can I skip this guide and use the OpenCore EFI from somewhere else?

The purpose of this guide is to show how to create a macOS Bootable USB and create OpenCore EFI which can be used to install macOS on a target Chromebook, Chromebase, and Chromebox. Where creating EFI is the main essence of the guide as that's what most people are looking for. It is strongly advised to create a configuration (OpenCore EFI) from scratch without the involvement of someone's else configuration and files and this is where this guide comes into place.

Using OpenCore EFI from another system or picking from the Internet (mostly from Github or other forums) is relatively easier than creating on your own, but will not result in many benefits due to the difference in the hardware and the vendor. Although it may be capable of booting macOS on a target system, these pre-made EFIs not only come with a lot of unnecessary and irrelevant SSDTs, Kexts, Quirks, and settings but sometimes also include custom branding and are usually way lot cluttered than the vanilla method and are generally not reliable (missing hardware functionality and/or features or even random freezes, crashes, etc.) which is not the preferred choice. Often, it becomes difficult to inject patches, Device Properties, and Quirks due to being prevented from being injected which is one of the reasons why most of the vanilla guides and/or post-install steps generally don't work with such EFIs. Everything is injected forcibly to ensure the macOS installer boots anyhow on the target system, which still fails in several cases.

Moreover, just because the random EFI you use boots on a target device, it does not necessarily mean every hardware component and the related functions are performing as expected. There could be known performance-related issues i.e. getting less performance than the system is actually capable of or it may not perform well on your system in general (even if it is working for the primary user). In addition, despite having the same hardware configuration, there are chances that your system may require some additional configuration than the EFI you're using to boot. Most of the users just want to boot the macOS installer on their systems, without getting to know the basics involved which is the key and this is why it makes it more difficult to troubleshoot if such configuration fails to boot the macOS installer on the target system and such users don't have clue where the problem is coming from.

Just to avoid reading and investing time into building a proper EFI, several users use the EFI of someone else. This is a very common practice often followed by new users building their OpenCore EFI and this is why such users run into different issues and invest their time effortlessly to fix the junk. Rather than investing time in troubleshooting the installation and fixing someone's else EFI configuration, which is not even intended for your particular system, it would make more sense to create your own OpenCore EFI and move in the right direction in the first place. Using someone's EFI not only makes it difficult to boot the macOS installer, but it invites way more issues than it could have originally. A lot of problems can be eliminated just by following the guide precisely.

Due to all these reasons, using OpenCore EFI from some other computer or user is never advised and such practice is highly discouraged, especially on this forum. If you don't follow the guide carefully, after a point of time, you will end up frustrated if you lack time and patience. Of course, it's your computer and you have the right to decide whether to install macOS for your use case or not.

Current Status

Although different models can have different specs and the hardware component/model can differ from manufacturer to manufacturer, here is a list of the current status in terms of functions under macOS.

Hardware/FunctionStatusNotes
Brightness ControlWorking, including the Brightness Hotkeys
USB PortsWorking
KeyboardWorking
Keyboard BacklightWorking
TrackpadWorking
TouchscreenWorking
CameraWorking
Card ReaderNot workingIntel Card Readers are simply not supported
BatteryWorking
EthernetWorking
WiFi/BTWorkingRealtek and MediaTek Chipsets are not supported
AudioWorking
HDMIWorking
Power ManagementWorking
Shutdown/RebootWorking
Sleep/WakeWorking
iServicesWorking

Requirements



Following are the requirements for enabling Broadcom WiFi on macOS. Please ensure you meet the requirements before proceeding with this guide.

Machine
Storage
  • A 64GB of free storage space.
  • A spare USB Flash Drive of 1GB or above is required for the Firmware backup.
  • A spare USB Flash Drive of 1GB (using Recovery Method) or 16GB (using Offline Method) or above is required for the macOS Installer
Tools
  • OpenCore Legacy Ptcher (OCLP) v1.0.1 or Later
  • IOReg
  • OCAT or any equivalent .plist editor

CHAPTER X: Disabling Firmware Write Protection

On a typical ChromeOS device, the system (or application processor/AP) firmware is stored on an SPI flash chip, often SOIC-8 form factor. As part of the ChromeOS security model, certain parts of the device firmware are set to be read-only. The protection of these read-only regions is implemented by a combination of hardware and software measures.

The reason to disable the firmware write protection is because of two strong reasons
  • To flash custom firmware which modifies or overwrites the RO portions of the stock firmware.
  • To change the Google Binary Block (GBB) flags
Flashing custom firmware which completely replaces the stock firmware requires disabling the firmware write protection, since all the RO and RW portions of the chip are overwritten. However, flashing firmware which only modifies an RW portion of the firmware (like RW_LEGACY, for Legacy Boot Mode) does not require the firmware write protection to be disabled.


Software Write Protection

The software write protection is implemented via special registers on the firmware chip. These registers allow for the software write-protect to be enabled or disabled, as well as one or more ranges of the addresses to be protected/marked as read-only. This allows for parts of the chip to be protected (e.g., the RO firmware, or RO_VPD regions) and parts to be system (or user) writable (e.g., the RW_LEGACY region).

Hardware Write Protection

The hardware write protection is an electrical circuit which prevents writing to the software protection special registers; it's normally enforced by the grounding of the !WP pin on the firmware flash chip. Thus, the hardware write protection not only protects directly these special registers, but indirectly also the data in the firmware chip.

With the development of ChromeOS and the hardware, there have been multiple implementations over the period of time in terms of Hardware Write Protection. Over the period of time, the implementation is as follows:
  • Early Chromebook Models:
    • The early Chromebook models (2012-2013) use a jumper or switch to implement the hardware write protection. All models prior to the 2013 Chromebook Pixel fall into this group.
  • Pre-CR50 Models:
    • The Pre-CR50 models (2012-2013) use a screw to complete the ground; removing it leaves the !WP fin floating, effectively disabled.
    • The 2013 Chromebook Pixel was the first device to use a WP screw; all Haswell, Broadwell, Baytrail, Skylake, and Braswell-based devices do as well.
  • CR50 models (2017+)
    • The CR50 models (2017+) use different mechanisms in order to enable hardware write protection.
    • On all Chromebook models with the CR50/Google Security Chip (all Kabylake/Apollolake and newer models), the !WP pin is controlled by the CR50.
    • On platforms up to mid-2021 (Geminilake/Tigerlake and older), the CR50 sets the WP state to follow the battery sense line, so disconnecting the battery will disable the hardware write protection.
    • On late 2021+ platforms (Jasperlake/Alderlake and newer), WP cannot be disabled by disconnecting the battery; instead, there is an unpopulated jumper on the board which must be bridged.
    • On all CR50 devices, it is also possible to change the WP state using the closed-case debugging (CCD) features of the CR50, along with a special USB-C debug cable. See the CCD section below.


Disabling Hardware Write Protection


Mr. Chromebox maintains a page that provides the type of write-protection used for each device,

For battery-powered CR50 ChromeOS Devices (such as HP Chromebook C640), the Write Protection can be temporarily disabled using the following procedures

1. Disassemble the target device.
2. Disconnect the Battery.
3. Boot the target device on AC Power.

Devices that cannot be easily disassembled (such as Pixelbook and Pixel Slate) or which are not battery-powered (e.g. Chromeboxes) should use the CCD method as described below.








Disabling Software Write Protection





Depending on the device manufacturer and model, removing the Write Protection may vary.



CHAPTER : Flashing Coreboot Firmware

Now that you have everything ready, it's time to flash the Coreboot firmware using the Mr. Chromebox Firmware Utility Script which will allow us to boot into macOS or any other OS of your choice.

Before you flash the Custom firmware, it is strongly advised to create a backup of your important data from the device.

1. Connect the target Chrome Device to the internet.
2. Depending on the Chrome Device, enter into the Recovery mode using. Your hardware model will appear at the bottom of the screen.
3. Switch to the Developer mode using the (CTRL+D) Key combination using your Keyboard.
4. Press the Recovery button When prompted to turn off the OS verification. Your device will now restart and you'll see that the OS verification is off now and the device will restart again and will transition to the Developer mode.
5. Enter the Developer Console using the (CTRL+ALT+F2) Key combination using your Keyboard.
6. When prompted, type chronos and press the enter key and you'll be logged on as root user.
7. Now execute the following command
Code:
#Download and run Firmware Utility Script
cd; curl -LO mrchromebox.tech/firmware-util.sh && sudo bash firmware-util.sh

If you encounter certificate related errors when downloading the script, execute the following command instead to bypass the SSL certificate check
Code:
cd; curl -LOk mrchromebox.tech/firmware-util.sh && sudo bash firmware-util.sh

You'll also notice that If the Firmware Write protection is Enabled, the

Once the script is downloaded, it will be executed and you'll see a short summary

As you can see, here we have the Firmware Write Protection (Fw WP) Disabled. If you haven't disabled the Write Protection yet, you'll see the following. Please note that, in order to flash the Custom Firmware, the Write Protection must be Disabled. Please see Chapter X for more information.


Also, it's better to back up the original stock firmware of the device for the latter use if you change your mind to go back to ChromeOS.


Restoring the firmware back to the original is out of the scope of this guide. Please see restoring firmware for more information.






CHAPTER 2: Creating macOS/OS X Bootable USB

If you determine that your hardware is compatible according to the above-provided compatibility lists, you can start your journey by creating a Bootable USB for your target computer.

I. Requirements
  • USB Flash Drive (16GB at least for OS X 10.11 and newer and 8GB for OS X 10.10 and prior).
  • Access to a computer with OS X/macOS installed (Offline Method)
  • Access to a computer with macOS/OS X or Windows or Linux installed (Online Method).
  • Internet connection to download the required files.




This guide will discuss only two way for the guide simplicity See additional USB creation methods for more info. and current OS i.e macOS Catalina or Later. If you plan to install Legacy OS (macOS Sierra 10.12 or prior), see additional USB creation methods for more info.

Will only include the Online Method (Recovery) for the ease of this guide.
 

Trending Threads

Latest posts

Forum statistics

Threads
1,713
Messages
16,062
Members
24,900
Latest member
jersobh