注1: 安装黑苹果是一个十分玄学的过程,请准备好十足的耐心
注2:在你我硬件完全相同的情况下,也不保证按照此流程可以顺利安装成功.所以请尽量按照此流程来操作


因为手贱在本来趋近完美的10.11.7上安装了一个安全性更新,导致系统再也启动不了了.问题也不好排查,虽然可以通过TimeMachine恢复至没问题的状态,可是AppStore上总有个数字1看着也不痛快.那就升级10.12.6吧.顺便把网卡也升级一下,这样硬件基本就没有遗憾了

硬件配置

  • Intel® NUC Kit D54250WYK
  • CPU: Intel® Core™ i5-4250U Processor (3M Cache, up to 2.60 GHz)
  • Graphics: Intel® HD Graphics 5000
  • Codec: Realtek ALC283
  • Memory: Crucial DDR3L 1.35v 1600 4G *2
  • SSD: SAMSUNG 850 EVO 250G MSATA
  • Wireless Adapter: Dell DW1550 (BCM94352/20702 combo)

之前的 macOS 10.11.7

之前运行的系统为OS X El Capitan的最后一个大版本,但是良心的苹果在新系统推出之后继续推送系统安全性补丁及Safari和iTunes的更新
之前我是用的无线网卡为BCM94322HM8L,一块17块钱包邮的神卡,支持5Ghz wifi(802.11n,非802.11ac),不具备蓝牙功能,mac系统下完美免驱,在刷写硬件ID后可解锁更多支持网段,并且设备名变AirPort Extreme,是最佳的黑苹果试机卡
在之前的黑苹果中,系统趋于完美,美中不足的是通过hdmiminiDP输出画面时,并不能同时输出声音,只能通过3.5mm耳机接口输出,此外由于硬件限制,在蓝牙残缺的情况下,也不能使用AirDrop和handoff等非常必要实际的功能,所以更换网卡便成了完美黑苹果在硬件上的最后一步

更新至 macOS 10.12.6

作为目前主要mac的最后一版系统,更新到此版本更是让黑苹果在软件商离完美更近了一步

制作原版macOS Sierra安装优盘

以下流程可能略有删减,以此链接的详细教程为准

  1. 先在白苹果的AppStore下,下载macOS Sierra
  2. 准备一个大于8G的优盘,使用GUID分区表格式化成Mac OS Extended (Journaled),名称为USB(下面会用到)
  3. 执行以下命令,将macOS Sierra写入优盘
sudo /Applications/Install\ macOS\ Sierra.app/Contents/Resources/createinstallmedia --volume /Volumes/USB/ --applicationpath /Applications/Install\ macOS\ Sierra.app --nointeraction
  1. 安装Clover引导(重要)
    1. 安装Clover_v2.4k_r4173到优盘,自定义安装项如图
      18151a3b-50e9-4de3-bc1a-63f3c7ea82a7
      7f59851d-67cf-4189-93ac-368ff2f2cfdf
  2. 安装完成后,拷贝Sebinouse_20160925.zip的clover文件夹中的内容到/Volumes/EFI/EFI/CLOVER中,安装优盘制作完成

修改BIOS

建议在修改BIOS前先F9恢复默认设置,然后F10保存,重启,再进入BIOS进行更改

启动时在INTEL LOGO出现时,摁 F2 进入 BIOS
以下为具体更改项:

  1. Boot > Boot Priority.
    Enable 'UEFI Boot' and disable 'Legacy Boot' :

  2. Boot > Boot Configuration
    Enable 'Boot USB Devices First'
    Disable 'Network Boot'

  3. Power > Secondary Power Settings
    Set Wake on LAN from S4/S5 to "Stay Off"

  4. Security > Intel(R) VT for Directed I/O (VT-d).
    Disable 'VT-d'

  5. Devices > Video.
    Set the "IGD Minimum Memory" to 128 Mo

正式安装 macOS Sierra

将优盘插入后置USB接口(安装过程中所有涉及USB操作均建议使用后置USB接口),启动
在Clover GUI中选择Install Mac OS X from USB

安装完成

安装完成后,继续使用优盘的引导进入系统并初始化系统创建账户
将所有需要的文件考入系统中
打开终端,执行

sudo spctl --master-disable

输入密码,既可打开任何来源

安装clover到硬盘,具体参数同制作优盘
安装完成后finder左侧出现efi分区,将Sebinouse_20160925.zip`的clover文件夹中的内容到efi分区的clover文件夹下,合并
解压 ccc.zip,将其拖动(安装)到应用程序
拔掉优盘,重新启动

激活蓝牙(BCM20702A0)

主要参考文章中使用的网卡由于免驱的原因,没有对网卡部分做任何提及.对于我使用的bcm94352,需要额外使用kext来驱动

由于此网卡的特性,需要在开机时给网卡注入驱动才能正确运行,win及linux都支持此功能,mac不支持
参照此开源项目的方法,首选使用win类系统(我使用的win pe,免安装),在设备管理器中找到名为BCM20702A0的设备,查看硬件ID,比如我的卡(Dell DW1550)两个值分别为

USB\VID_413C&PID_8143&REV_0112
USB\VID_413C&PID_8143

在项目对应的README中,根据PIDVID找到对应项目,说明此网卡是被此驱动所支持的

Tested PatchRAM devices:

[0489:e032] 20702 Combo USB
[0489:e042] 20702A1 Lenovo China *
[0489:e079] Lenovo China 43162 NGFF
...
...
...
[13d3:3435] Azurewave (4352/20702 combo)
[13d3:3456] Azurewave (4352/20702 combo)
[413c:8143] Dell DW1550 (4352/20702 combo)

总结最终的使用方法为挂在EFI分区,复制项目中的BrcmFirmwareData.kextBrcmPatchRAM2.kextEFI/Clover/kexts/10.12/目录中
重启电脑,在加载苹果系统时会有文字输出,此时在注入驱动,完成后会自动重启,检查是否开启成功,如未成功,建议多重启几次
成功的标志为,系统偏好设置中出现蓝牙面板,可以搜索并连接到设备,如出现但搜索不到,再次重启

开启无线网卡(BCM94352)

在主要的参考帖中,他使用的无线网卡为苹果官网的bcm4360,可能是macbook air的拆机卡,完全免驱.缺点是需要转接才能使用.我使用的卡为bcm94352,苹果自带的驱动依然可以原生驱动,但是需要做一些小改动

此步骤的流程3及以后操作在我打包的clover中已包含,无需重复操作

  1. 打开文件
sudo vim /System/Library/Extensions/IO80211Family.kext/Contents/PlugIns/AirPortBrcm4360.kext/Contents/Info.plist
  1. 找到以下字段,增加一行<string>pci14e4,43b1</string>,修改完成后如下
<key>IONameMatch</key>
<array>
    <string>pci14e4,43ba</string>
    <string>pci14e4,43a3</string>
    <string>pci14e4,43b1</string>
    <string>pci14e4,43a0</string>
    <string>pci14e4,4331</string>
    <string>pci14e4,4353</string>
</array>
  1. 重启!一定要重启!
  2. 打开clover configurator挂载EFI分区
  3. 打开EFI分区中的config.plist
  4. 进入Kernel and Kext Patches标签
  5. KextsToPatch中增加以下条目
    |name*|find*[HEX]|replace*[HEX]|Comment|MatchOS|
    |:--:|:--:|:--:|:--:|:--:|
    |AirPortBrcm4360|81F952AA00007529|81F952AA00006690|AirPortBrcm4360|10.12.|
    |AirPortBrcm4360|6B100000750D|6B1000009090|AirPort Extreme|10.12.
    |
  6. 保存编辑后的config.plist
  7. 重启,wifi工作正常,5Ghz正常,系统报告中型号显示正常,Airdrop支持

此时第一个玄学来了,HDMI及miniDP的音频输出已经可以正常使用!
连接wifi,进行下一步需要使用网络,并且需要已有音频设备

修复音频输出(ALC283)

3.5mm接口的输出是本次黑苹果中最后解决的问题.在解决过程中也遇到了第二个玄学,就是驱动完成后,不能打开系统偏好设置中的声音面板,否则会掉声卡驱动,造成声音失真,空洞,自动忽略人声

此解决方法主要参考了主参考文档的#82的方法,如图
fa408eed-c0d8-4157-840f-f6367bddfe44

使用项目为:https://github.com/toleda/audio_CloverALC
具体做法是

  1. 在保证appleHDA.kext干净的情况下
  2. 挂在系统的EFI分区
  3. 下载此项目源码
  4. 解压audio_cloverALC-120.command.zip
  5. 打开解压出来的audio_cloverALC-120_v1.0f3.command
  6. 输入账户密码,yyy
  7. 重启

修改序列号,激活iMessage

macOS每次开机时,ROM(UUID生成)MLB(Board Serial Number)是标准和唯一的OS值.如果该值从开机启动发生变化,那么iMessage会无法激活,苹果将把你的UUID,序列号或苹果ID拉入黑名单,Clover生成的ROMMLB值也自动列入黑名单.而黑苹果没有官方授予的这些值,如果不手工设置,则被列入黑名单,无法使用iMessage,FaceTime和Siri

  1. 打开clover configurator挂载EFI分区

  2. 打开EFI分区中的config.plist

  3. 进入SMBIOS标签

  4. 点击Serial Number下的Generate New,会自动生成一组Serial NumberBoard Serial Number
    a5f68af5-858e-4a4e-9e20-3fb9bc91685f

  5. 复制新生成的Serial Number,去苹果官网查询序列号

  6. 如果得到的结果为很抱歉,这个序列号无效。请检查您的信息并再试一次。,则此序列号可以使用,如果可以查询到设备信息,则再次生成一个
    f2775645-cb93-4880-998e-aaa22f7b6433

  7. 完成后点击System Parameters标签,在Custom UUID旁点击Generate New,生成一个新的UUID,复制此UUIDSMBIOSSmUUID

  8. 保存编辑后的config.plist

  9. 依次执行以下命令,删除文件

sudo rm -rf ~/Library/Caches/com.apple.messages
sudo rm -rf ~/Library/Caches/com.apple.imfoundation.IMRemoteURLConnectionAgent
sudo rm -rf ~/Library/Preferences/com.apple.ichat*
sudo rm -rf ~/Library/Preferences/com.apple.imagent*
sudo rm -rf ~/Library/Preferences/com.apple.imessage*
sudo rm -rf ~/Library/Preferences/com.apple.imservice*
sudo rm -rf ~/Library/Messages
  1. 打开磁盘工具,选择系统分区,点击急救
    efc35b03-7190-400d-bb4a-f424b5c6b066
  2. 重启系统,登陆iMessage

杂项,收尾及注意事项

  1. 建议处理完成所有操作之后,使用time machine进行一次完整备份
  2. clover configurator可以修改为自己喜欢的Clover主题
    编辑硬盘为Macintosh HD,下方的时间定义为3s,可自动跳过clover加载,如设置为0则直接跳过
  3. 定期进行Time machine操作
  4. 如果安装appstore中的系统或安全更新,务必先进行time machine备份

目前完美程度及问题

黑苹果不可能做到100%的完美,在未解决的问题中,对日常使用基本没有任何影响
所以我认为,到目前为止,基本做到了99%的完美程度

测试并完美驱动的项目:

  • CPU频率动态(通过Intel Power Gadget查看)
  • HD5000正常,显存动态
  • 有线网卡内建,(系统报告中显示为en0,App Store正常)
  • 无线网卡正常(系统报告中显示为AirPort Extreme,5Ghz支持,AirDrop支持)
  • 蓝牙正常(AirDrop支持,Handoff支持)
  • HDMI&miniDP视频及音频输出正常
  • 3.5mm耳机麦克风复合接口输出正常
  • iMessage&FaceTime正常
  • SSD Trim开启
  • USB2.0&USB3.0正常
  • 关机后可以自动断电
  • 睡眠重新唤醒后网络正常

目前的问题为:

  • 开机走进度条花屏
  • NUC自带的IR接收器可能没有驱动,未测试.白苹果应该是支持此功能的,但是我基本没有需求,就没有去搞
  • 使用HDMI或miniDP输出音频时,不可以调整输出音量
  • 长时间打开系统偏好设置中的声音面板,会导致3.5mm输出异常,通过切换输入输出标签可以恢复,但是一定时间后依然会导致异常,彻底解决办法为重启
  • 3.5mm复合音频接口插入苹果耳机有波形显示,但是不能正常使用,可能是不兼容苹果耳机标准

没有测试的项目:

  • 开启HiDPI,没有对应的显示器,无法测试

参考

两个玄学

  • 安装完wifi之后hdmi输出自动回复

  • 不能打开系统偏好设置中的声音选项,否则会掉驱动