Metal driver for NVIDIA GeForce cards on macOS Sequoia

★ 4,267⑂ 414👁 28⑃ 132● 395▤ 78◈ 0
RustNOASSERTIONCreated 2026-10-07nullmothsystems.com
4,267
stars
+20+253
414
forks
28
watchers
132
prs
395
issues
78
releases
0
discussions

README

NullMoth NVIDIA Driver for macOS

A Metal driver for NVIDIA GeForce cards on macOS 15 Sequoia (Intel Macs and OpenCore PCs). It is open source; the
kernel extensions, the Metal plugin and the shader translator are in this repository. The 1401 app that installs it
(Mac and Windows) is its own project: 1401.

Supported cards are Turing and newer: GTX 16, RTX 20, 30, 40 and 50, TITAN RTX, Quadro RTX and the T-series. Most
testing is done on an RTX 5060, so other cards may have problems that haven't been found yet. See
card support for what has been reported working.

- Changes: CHANGELOG.md, downloads on the releases page
- Problems: troubleshooting, then Send logs from the 1401 app
- Installing macOS from Windows: 1401
- How it works: docs/HOW-IT-WORKS.md
- Contributing: CONTRIBUTING.md

If your PC doesn't boot macOS with OpenCore yet, set that up first with the
OpenCore Install Guide, then install the driver.

Support the work: https://buymeacoffee.com/nullmoth

| | |
|---|---|
| macOS | 15.5 Sequoia or later (tested 15.7.x and 15.8.1), or 26 Tahoe, x86_64 |
| GPUs | NVIDIA Turing and later; developed on an RTX 5060 |
| Metal | Metal 3: argument buffers tier 2, ray tracing, mesh shaders, MPS, MetalFX path |
| Also | OpenGL (through Apple's GL-on-Metal), OpenCL, Core Image, Core ML |

 How it works


Metal app ─► NVMTLDriver.bundle ─► translator (Apple AIR → SPIR-V) ─► NVK (Mesa Vulkan + NAK compiler) ─► kexts ─► GPU


| Component | Path on disk | Source |
|---|---|---|
| Metal driver plugin | /Library/GPUBundles/NVMTLDriver.bundle | plugin/ |
| Shader translator | inside the plugin (libnvmtl_translate.dylib) | translator/ (LGPL-3.0, based on metal2vulkan) |
| Vulkan back end (NVK) | /Library/GPUBundles/nvmtl/ | nvk/nvk-macos.patch on Mesa 17ca6174 |
| Kernel extensions | /Library/Extensions/NVRM, NVAccel, NVRMFB, NVRMAGDC | kexts/ |
| GPU firmware (GSP) | /Library/NullMoth/nvfw/nvidia/615.78.08 | NVIDIA, unmodified |

The kernel side runs NVIDIA's own open GPU kernel modules (r610) under macOS. NVRMFB is the display framebuffer,
NVAccel the accelerator WindowServer composites through, NVRMAGDC the display-policy shim.

 Install — by hand

Use the 1401 Mac app below unless you manage your OpenCore config yourself. install.sh installs the driver files but
does not change OpenCore, and the driver does not start until OpenCore has these settings:

- boot-args include nvfb=1 nvaccel=1 nvfbheads=4 -nvkmsnosmooth amfi_get_out_of_my_way=0x1 amfi=0x80
  ipc_control_port_options=0, and not nv_disable=1 or -wegnoegpu (both hide the NVIDIA card)
- csr-active-config includes the bits 0x0A43
- Misc  Security  SecureBootModel is Disabled
- Lilu.kext and AMFIPass.kext are in Kernel  Add and enabled

Download nullmoth-nvidia-.tar.gz from Releases, then:

bash
tar -xzf nullmoth-nvidia-.tar.gz && cd pkgroot
shasum -a 256 -c SHA256SUMS
sudo ./install.sh
sudo shutdown -r now


Every file must say OK in the check. install.sh copies the files and rebuilds the Auxiliary 

Top issues

Latest release

1401 and NVIDIA driver 2.8.1 v2.8.1 2026-11-08
- Updates no longer fail when GitHub's downloads are down. The Mac app now falls back to a copy of each release on nullmothsystems.com when a GitHub download fails, for both driver updates and its own updates. 1401 for Windows does the same for the driver package it puts on the stick. Every file is checked against the release's SHA-256 list and the NullMoth release signature, wherever it came from, and a file that differs by one byte is refused.
- The driver itself is unchanged from 2.8 (same kernel extensions, Metal plugin and Vulkan driver); only its version number moves so the app and the d

Snapshot: 2026-11-10T09:35:25Z · Data license Apache-2.0 · JSON