The ASUS ROG Ally has been out for a solid year, and I was fortunate enough to grab a unit during launch. It’s been my go-to handheld recently, completely replacing my gaming setup for the most part.
Of course, the Ally isn’t just a gaming device – it’s a full blown x86 PC! After installing Linux on it (Bazzite, Arch, Manjaro and CachyOS) I was eager to try some of the more uncommon options out there.
I recently came across a flurry of posts (and videos) regarding installing macOS on the Steam Deck, and installing it on the Ally seemed like the natural progression of things.
It wasn’t as seamless as the Deck though, especially thanks to issues with USB mapping.
Ultimately, I did manage to get it working after a lot of struggle, and the experience was quite fulfilling. Join me as I jump into some of the quirks along with a general overview of how I got it up and running.
Installing macOS on the ROG Ally

For this particular endeavour, I used the original, 2023 version of the ROG Ally – I would also like to mention that this will not be a proper guide, and is more of a summary of my experiences and workarounds to the issues I faced while trying to get the project up and running.
To start with, I had to begin building my EFI folder. I went through the usual Dortania Opencore guide for Ryzen laptops, but ended up with with the following additions to my kexts folder:
- AppleALC
- AppleMCEReporterDisabler
- BrightnessKeys
- ECEnabler
- ForgedInvariant
- Lilu
- NVMeFix
- RealtekRTL8111
- RestrictEvents
- SMCBatteryManager
- SMDAMDProcessor
- VirtualSMC
- VoodooI2C
- VoodooI2CH
- USBMap
Of these kexts, the USBMap had to be built within Windows, and was a relatively painless procedure thanks to the awesome USBToolBox script. The Voodoo kexts are necessary for touch input (yes, touch works!) and the rest are needed for patching various functions of macOS.
I would like to reiterate that I am no expert in this, and I simply picked the kexts that I thought were supported – I am pretty sure that not all of these are working as intended.
As far as the ACPI folder goes, I added in the following:
- SSDT-EC
- SSDT-PLUG-AML
- SSDT-USB-RESET
- SSDT-USBX
- SSDT-XOSI
These were all compiled using SSDTTime on Windows. I am unsure if the Ally really needs all of them, but it doesn’t seem to complain so I just went with it.
Using a compiled SSDT is crucial, given that we had to whitelist MMIO entries – without which the image would refuse to boot. You cannot use prebuilt entries here, period.
Whitelisting MMIO was a slight hassle, but thanks to MmioDevirt it was less painful.
I should also point out that I never managed to figure out the USB mapping correctly, and as such this particular version lacks the ability to use USB devices properly – which means that most USB devices such as Ethernet will not work. Keyboard and mouse input does work though, but with a severe amount of latency.
As far as BIOS settings went, I did try and experiment with SmokelessUMAF, but it was ultimately unnecessary – just disabling Secure Boot and Fast Boot was enough.
This brings me to one of my main issues – you cannot access the internet, and so there’s no way to use the online recovery image. This meant I had to boot into the full, offline installer which in turn proved to be quite difficult since the USB was having a hard time cooperating with me and reading the image off the thumb drive.
In the end, I ended up going for something nuclear – flashing the image directly onto the SSD. To achieve this, I connected the SSD via a USB adapter to my Macbook (you could technically use any OS, but having access to a Mac or Hackintosh just makes the process a whole lot smoother).
From there, I wiped the drive, and downloaded macOS Ventura using the App Store. Then, using the createinstallmedia command I made a USB installer for macOS Ventura. You could likely use the latest version of Sequoia without issues as well though.
Next, I mounted the EFI partition using MountEFI, and copied over the EFI folder I had prepared earlier on, with the necessary adjustments needed.
I also had to create a separate partition for the installer to actually dump the files on, as I couldn’t really partition the drive while running the installer on the Ally.

With everything in place, I screwed in the drive to the Ally’s internal NVMe slot and booted the system up. As I had no way to reliably use a keyboard and mouse for the installer, I had to resort to painfully using the touchscreen in order to proceed.
I went through the install process as usual and a couple of reboots later, macOS Ventura was up and running on the ROG Ally!
Quirks and limitations of the current build
What works
- Touchscreen
- Battery status, charging and readouts
- The usual macOS stuff and stock apps
What doesn’t work
- Wi-Fi and Bluetooth
- Wired ethernet
- USB data and video out
- No GPU acceleration as the RDNA 3 iGPU on the Ally is unsupported on macOS. There are no workarounds for this either, atleast at the moment.
- Keyboard and mouse input technically works, but is incredibly laggy.
- Audio
- Miscellaneous minor other things I may have forgotten
Keep in mind that this is a very, very experimental build. As such, expect tons of issues and general jankiness.
Should you really be doing this to your Ally?

I mean, why not? If you need a reason to tinker your Ally it’s well worth it. For me, it was a fun little project that took me almost a week to figure out since I overlooked a few important details.
Regardless, it was a fun endeavour and I did enjoy Hackintoshing my way through the machine.
Just make sure to use a separate drive for this if you do attempt it yourself.
This project wouldn’t have been possible without the kind help and guidance of hg13, royal, CorpNewt, Sooly and others on Discord.