- Joined
- Mar 6, 2011
- Messages
- 22
Re: Sign in app store issues after 10.6.8 update Fix
Riad, thank you very much for the detailed description. This worked!
I'm using an Airport Extreme card.
Riad said:Thanks for the EFI solution using gfxutil; I can now login to the App Store after generating and putting the hex format of the EFI string in both com.apple.Boot.plist files in /Extra and /L/P/SystemConfiguration directories. With one caveat though: in "About This Mac > More Info > Hardware > PCI Cards" I see no cards; neither my NV or Airport Extreme card. But every thing seems to be working fine.
So here's what I did, I did not use ethernet to generate the EFI hex string; rather used the device path for the Actual Airport Extreme.
1. Find the device path for Airport Extreme
- Run 'ioreg' command in the terminal as sudo user and redirect the output to a file
- The search for the word "AirPort" and found the followings:
+-o pci14e4,432b@0 <class IOPCIDevice, id 0x1000001e3, registered, matched, active, busy 0 (12209 ms), retain 10>
| | | +-o AirPort_Brcm43224 <class AirPort_Brcm43224, id 0x100000312, registered, matched, active, busy 0 (7 ms), retain 8>
| | | +-o AirPort_Brcm43224Interface <class AirPort_Brcm43224Interface, id 0x100000315, registered, matched, active, busy 0 (8 ms), retain 10>
| | | +-o IONetworkStack <class IONetworkStack, id 0x10000034e, registered, matched, active, busy 0 (1 ms), retain 9>
| | | +-o IONetworkStackUserClient <class IONetworkStackUserClient, id 0x100000354, !registered, !matched, active, busy 0, retain 5>
- The bold portion before the '@' symbol is the device string for my Airport Extreme card
2. Run the gfxutil to get the Device path string
bash-3.2# gfxutil -f pci14e4,432b
DevicePath = PciRoot(0x0)/Pci(0x1c,0x7)/Pci(0x0,0x0)
bash-3.2#
3. Then I created a txt file, with .plist extension (airport.plist) file in my home directory that looked the followings:
<?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>PciRoot(0x0)/Pci(0x1c,0x7)/Pci(0x0,0x0)</key>
<dict>
<key>built-in</key>
<string>0x01</string>
</dict>
</dict>
</plist>
4. Then I made sure that this file is in plain text. In TextEdit, went to the format menu and clicked "Make Plain Text".
5. Create a hex string then a txt file of the whole thing; ran the followings in the terminal
- gfxutil -i xml -o hex airport.plist airport.hex
- mv airport.hex airport.txt
6. I then had the following string in the airport.txt file
4b00000001000000010000003f0000000100000002010c00d041030a0000000001010600071c0101060000007fff0400160000006200750069006c0074002d0069006e0000000500000001
7. I copied this string in both com.apple.Boot.plist files in the directory I mentioned above. This file in the /L/P/SystemConfiguration directory then looked like the following. I had to change the permissions for this file and SystemConfiguration directory to be able to change the file:
<?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">
<key>Kernel</key>
<string>mach_kernel</string><dict>
<key>Kernel Flags</key>
<string></string>
<key>PCIRootUID</key>
<string>1</string>
<key>device-properties</key>
<string>4b00000001000000010000003f0000000100000002010c00d041030a0000000001010600071c0101060000007fff0400160000006200750069006c0074002d0069006e0000000500000001</string>
<key>EthernetBuiltIn</key>
<string>Yes</string>
</dict>
</plist>
7. Then I removed the NetworkInterfaces.plist file from the directory I mentioned in step 6 above and repaired all disk permission using the disk utility.
8. Rebooted and finally I could login to the App Store.
I don't know whether or not this is sustainable. I would like to see both my Video and Airport Extreme cards in the Hardware PCI Card list and I think there is a way to do that similar to this. Right now every thing is functional and not having them showing up in there is not causing any issue but I will try that anyway.
Riad, thank you very much for the detailed description. This worked!
I'm using an Airport Extreme card.