Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

Troy2000

macrumors regular
Original poster
Oct 21, 2009
201
77
Greetings!

If you use the NVIDIA Web Driver in conjunction with a non-EFI card which is not supported by the default OS X driver, then at some point you have probably experienced the pain of inattentively installing an OS update, only to be greeted with a black screen on boot afterwards. From there, standard procedure would be to swap out the offending GPU for the card which originally came with your Mac Pro in order to boot.

I was in a similar pickle last night and the very last thing that I wanted to do was remove that awkward PCI-E slot bridge yet again for the sake of eating into the insertion rating of my Mac Pro's sole X16 slot. Instead, I improvised a simple solution to the problem which I hadn't yet seen anybody else try.

What you need to do is simply create a USB installer for any version of Mac OS X and add the flag "nv_disable=1" to the "Kernel Flags" string of its "com.apple.Boot.plist" file. This will enable you to boot into the OS X installer and gain access to the terminal, at which point you will be able to run "nvram boot-args="nv_disable=1"" and then reboot into OS X successfully.

I would recommend that everybody using the NVIDIA Web Driver keeps one of these drives on standby for emergencies but if you happen to own more than one Apple PC (or hackintosh), then you can simply create one if the need arises.

In the absence of an available USB drive, an alternative solution would be to place your Mac Pro in Target Disk mode and edit OS X's "com.apple.Boot.plist" directly from another Apple PC.

Thank you for reading and I hope this benefits you. :3

-Troy
 
Last edited:
To be clear, that would be specifically for non-EFI Maxwell cards. AFAIK, Kepler and earlier cards work fine with the default drivers whether you have EFI or not. And if you have an EFI Maxwell card you just hold down COMMAND-S and type in those lines.
 
To be clear, that would be specifically for non-EFI Maxwell cards. AFAIK, Kepler and earlier cards work fine with the default drivers whether you have EFI or not. And if you have an EFI Maxwell card you just hold down COMMAND-S and type in those lines.
Yes, I should have specified. Non-EFI GPUs which are not supported by the default driver.
 
Apple should just shift the loading sequence from firmware to the OS like Windows does. Then you won't have a black screen. I don't know if they could move the boot selection screen to the OS though.
 
This is a brilliant solution, unfortunately, I couldn't get it to work... The following is how my com.apple.Boot.plist file looks after editing. What am I doing wrong?

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Kernel Cache</key>
<string>/.IABootFiles/kernelcache</string>
<key>Kernel Flags</key>
<string>container-dmg=file:///Install%20OS%20X%20Yosemite.app/Contents/SharedSupport/InstallESD.dmg root-dmg=file:///BaseSystem.dmg</string>
<key>Kernel Flags 2</key>
<string>nv_disable=1</string>
</dict>
</plist>


Thanks in advance.
 
This is a brilliant solution, unfortunately, I couldn't get it to work... The following is how my com.apple.Boot.plist file looks after editing. What am I doing wrong?

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Kernel Cache</key>
<string>/.IABootFiles/kernelcache</string>
<key>Kernel Flags</key>
<string>container-dmg=file:///Install%20OS%20X%20Yosemite.app/Contents/SharedSupport/InstallESD.dmg root-dmg=file:///BaseSystem.dmg</string>
<key>Kernel Flags 2</key>
<string>nv_disable=1</string>
</dict>
</plist>


Thanks in advance.
Here is what you need to do. :3

Code:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Kernel Cache</key>
<string>/.IABootFiles/kernelcache</string>
<key>Kernel Flags</key>
<string>container-dmg=file:///Install%20OS%20X%20Yosemite.app/Contents/SharedSupport/InstallESD.dmg root-dmg=file:///BaseSystem.dmg nv_disable=1</string>
</dict>
</plist>

The "nv_disable=1" flag needs to placed before or after the existing contents of the kernel flags string, separated by a space.
 
Last edited:
Ah!! Thank you very much!!

Again, it's a brilliant solution and thank you very much for sharing with us!!
You're very welcome. Hopefully it will result in fewer people playing musical GPUs. :p
 
Last edited:
I'm trying to do this mod of the plist on a Windows PC. I've installed a HFS+ driver from Paragon that allows me to read/write to Mac drives. When I put in my Yosemite USB installer, it mounts as a drive, and I go to LIBRARY/PREFERENCES/SYSTEMCONFIGUATION and the plist is there, but it's 0K (empty).

Is this the correct location?

(yes, I accidentally installed 10.10.5 last night before updating the nvidia drivers, and now have a black screen. I have a card I can swap in to fix it, but I wanted to try this first as practice)
 
I'm trying to do this mod of the plist on a Windows PC. I've installed a HFS+ driver from Paragon that allows me to read/write to Mac drives. When I put in my Yosemite USB installer, it mounts as a drive, and I go to LIBRARY/PREFERENCES/SYSTEMCONFIGUATION and the plist is there, but it's 0K (empty).

Is this the correct location?

(yes, I accidentally installed 10.10.5 last night before updating the nvidia drivers, and now have a black screen. I have a card I can swap in to fix it, but I wanted to try this first as practice)
If you have access to Windows on the Mac, a much simpler solution is to browse to "Macintosh HD\Library\Preferences\SystemConfiguration" and edit the plist file there. That will enable to you boot into OS X directly. Once the driver has been updated, you can then remove the flag from the plist.

If not, here is a plist for the Yosemite USB installer.

Code:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Kernel Cache</key>
<string>/.IABootFiles/kernelcache</string>
<key>Kernel Flags</key>
<string>container-dmg=file:///Install%20OS%20X%20Yosemite.app/Contents/SharedSupport/InstallESD.dmg root-dmg=file:///BaseSystem.dmg nv_disable=1</string>
</dict>
</plist>
 
Last edited:
If you have access to Windows on the Mac, a much simpler solution is to browse to "Macintosh HD\Library\Preferences\SystemConfiguration" and edit the plist file there. That will enable to you boot into OS X directly. Once the driver has been updated, you can then remove the flag from the plist.

If not, here is a plist for the Yosemite USB installer.

Code:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Kernel Cache</key>
<string>/.IABootFiles/kernelcache</string>
<key>Kernel Flags</key>
<string>container-dmg=file:///Install%20OS%20X%20Yosemite.app/Contents/SharedSupport/InstallESD.dmg root-dmg=file:///BaseSystem.dmg nv_disable=1</string>
</dict>
</plist>

No Windows on this Mac. I did get my USB installer updated with a modified plist file with the help of a fellow forum member, but now the issue is, with a black screen at power on, how am I supposed to select the USB drive to install to? I tried guessing by using the arrow key right and ENTER, but nothing. Twice right, ENTER--nothing. Just ENTER--nothing.

It is just a guessing game? It was also suggested to modify the flag on my Mac from a Windows computer on the same network. I can see my Mac from my Windows PC, and it's shares, but is there a way to get to the root of the hard drive (in Windows you use something like C$ or D$).
 
No Windows on this Mac. I did get my USB installer updated with a modified plist file with the help of a fellow forum member, but now the issue is, with a black screen at power on, how am I supposed to select the USB drive to install to? I tried guessing by using the arrow key right and ENTER, but nothing. Twice right, ENTER--nothing. Just ENTER--nothing.

It is just a guessing game? It was also suggested to modify the flag on my Mac from a Windows computer on the same network. I can see my Mac from my Windows PC, and it's shares, but is there a way to get to the root of the hard drive (in Windows you use something like C$ or D$).
You need to hold down the "C" key when you hear the startup chime. It will then boot from the USB drive.

No, you can only access the shares which are already exposed.
 
Hi, I tried this. Made the USB boot disk, started my Mac Pro holding C. It took a while than just booted to my normal desktop. What am I doing wrong?
I have a non-EFI Titan X.
Thank you
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.