Experimental Patch for NVIDIA WebDrivers on macOS Catalina
Hi all,
I recently began experimenting with Maxwell/ Pascal NVIDIA GPUs and wanted to run Catalina with QE/CI on those cards, since on Big Sur+ Non-Metal patches became very unstable and sluggish. I have successfully modified OCLP 0.4.3 (last version to support Mojave and Catalina) and 0.4.6 (first version to support WebDriver) to enable proper WebDriver acceleration on Catalina. This is not made nor endorsed by the OCLP team, but it would be impossible to achieve without their great work.
This work would enable all Maxwell/ Pascal cards supported by WebDriver on High Sierra to achieve acceleration on macOS Catalina, and theoretically also on macOS Mojave (untested, please report if it works!).
Note that this is very much a work-in-progress and has a few issues that are not working:
- No Metal support
- No OpenCL support
- Would not be able to be reverted unless done manually or reinstalled
- Once logged out of current account, would not allow you to log back in before a reboot (Known OCLP WebDriver issue even on Big Sur+)
- Would not enter desktop if patch is being done first then a security patch is installed...
But overall, I think this would help with the research of the WebDriver scene in case anyone is interested. So I am sharing my modifications and steps to make this work.
Steps to installation
1. You need to have a working OpenCore EFI config with NVIDIA variables installed (agdpmod=vit9696, disable metal, disable SIP to at least 0xA03, disable AMFI, etc.) Easiest way to test is if you can run the OCLP patching step successfully on a supported OS (Big Sur+).
2. You need to download my patched OCLPs here.
3. You will need to clean install macOS Catalina without dosdude1 graphics patches, and restore any Time Machine backups first. Then, you should also install the 2022-005 update. This is optional, but do note that you will not be able to install security patches post-patching unless you do a full reinstallation again.
4. You need to install brew because you will be running OCLP from the sources, and the built-in Python 3 is too old for OCLP to run properly.
Then, you need to install a newer version of Python 3.
You will also need to install the required Python packages to make OCLP run from source.
5. Now that you have Python ready, you can proceed with the OCLP patching.
Connect to Internet, go to (5) Patcher Settings, enable (7), then do (3) Post-Install patches. Let it re-download patcher resources if asked, then let it run its patches. This is to install the IOAccelerator and CoreDisplay patches (although it will also install the AMD TS2 patches).
6. Reboot, then do the same thing for the 0.4.6 OCLP so that it can install the NVIDIA drivers.
Connect to Internet, go to (5) Patcher Settings, enable (7), then do (3) Post-Install patches. When asked for password, enter to mount root as r/w.
7. When you reboot, you will see QE/CI working. However, you will not be able to use the Displays section in System Preferences. In order to fix the Display PrefPane issue (which is a known OCLP bug on 0.4.3 for Catalina), you will need to download the 10.15.4b5 patches and install them manually to S/L and S/L/PrivateFrameworks respectively.
Note: you will need to also fix the permissions for both folders after manual patching
8. You should be all set.
Hi all,
I recently began experimenting with Maxwell/ Pascal NVIDIA GPUs and wanted to run Catalina with QE/CI on those cards, since on Big Sur+ Non-Metal patches became very unstable and sluggish. I have successfully modified OCLP 0.4.3 (last version to support Mojave and Catalina) and 0.4.6 (first version to support WebDriver) to enable proper WebDriver acceleration on Catalina. This is not made nor endorsed by the OCLP team, but it would be impossible to achieve without their great work.
This work would enable all Maxwell/ Pascal cards supported by WebDriver on High Sierra to achieve acceleration on macOS Catalina, and theoretically also on macOS Mojave (untested, please report if it works!).
Note that this is very much a work-in-progress and has a few issues that are not working:
- No Metal support
- No OpenCL support
- Would not be able to be reverted unless done manually or reinstalled
- Once logged out of current account, would not allow you to log back in before a reboot (Known OCLP WebDriver issue even on Big Sur+)
- Would not enter desktop if patch is being done first then a security patch is installed...
But overall, I think this would help with the research of the WebDriver scene in case anyone is interested. So I am sharing my modifications and steps to make this work.
Steps to installation
1. You need to have a working OpenCore EFI config with NVIDIA variables installed (agdpmod=vit9696, disable metal, disable SIP to at least 0xA03, disable AMFI, etc.) Easiest way to test is if you can run the OCLP patching step successfully on a supported OS (Big Sur+).
2. You need to download my patched OCLPs here.
3. You will need to clean install macOS Catalina without dosdude1 graphics patches, and restore any Time Machine backups first. Then, you should also install the 2022-005 update. This is optional, but do note that you will not be able to install security patches post-patching unless you do a full reinstallation again.
4. You need to install brew because you will be running OCLP from the sources, and the built-in Python 3 is too old for OCLP to run properly.
Code:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
Then, you need to install a newer version of Python 3.
Bash:
brew install python@3.11
You will also need to install the required Python packages to make OCLP run from source.
Code:
pip3.11 install requests pyobjc wxpython
5. Now that you have Python ready, you can proceed with the OCLP patching.
Code:
python3.11 [Directory]/043_webdriver/OpenCore-Patcher.command
Connect to Internet, go to (5) Patcher Settings, enable (7), then do (3) Post-Install patches. Let it re-download patcher resources if asked, then let it run its patches. This is to install the IOAccelerator and CoreDisplay patches (although it will also install the AMD TS2 patches).
6. Reboot, then do the same thing for the 0.4.6 OCLP so that it can install the NVIDIA drivers.
Code:
python3.11 [Directory]/046_webdriver/OpenCore-Patcher.command
Connect to Internet, go to (5) Patcher Settings, enable (7), then do (3) Post-Install patches. When asked for password, enter to mount root as r/w.
7. When you reboot, you will see QE/CI working. However, you will not be able to use the Displays section in System Preferences. In order to fix the Display PrefPane issue (which is a known OCLP bug on 0.4.3 for Catalina), you will need to download the 10.15.4b5 patches and install them manually to S/L and S/L/PrivateFrameworks respectively.
Note: you will need to also fix the permissions for both folders after manual patching
Code:
chown -R root:wheel /System/Library/MonitorPanels/
Code:
chown -R root:wheel /System/Library/PrivateFrameworks/MonitorPanel.framework/
8. You should be all set.
Last edited: