2016年8月20日土曜日

ThinkPad X1 CarbonをOS X El Capitanにした(夢)

MavericksのころにちまちまとClover EFIへの移行作業を行っていたので、El CapitanのUSBスティックを作ってアップグレードインストールするだけで、ほぼそのまま移行できてネイティブ解像度で起動した。

スリープができなくてDSDT patchからやりなおしたりしたんだけど、原因は全然別のところにあって、USB Wi-FiドングルのPlanex GW-USNANO2Aのドライバが10.9用のままだったことで、10.11対応の最新版へ差し替えたらうまく行くようになったとさ。

事務所がKeynote (最新版)での書類提出を要求するので、プライベートマシンといえどMavericksではどうしようもなくて仕方がなかった。

あ、これと直接関係ないけどすごい発見があって、トラックパッドを上下左右方向に3本指スワイプすると特定のキーコード(control-command-該当方向のカーソルキー)が発行されるので、『システム環境設定』で〝キーボード〟の [ショートカット] から機能を割り当てられる(※Web上をよく読むとRehabMan氏がこの機能に触れているところがある)。のでMission Controlの表示や操作スペースの変更に割り当てると実Mac (Magic Trackpad)と同じになって気持ちがよい。

トラックパッドのところで割り当てられないことに釈然としないながらも喜んで設定するのだった。

まあ、ThinkPad X1 Carbon とても素直で、本当に MacBook Air (14 inch) として動いてくれるのでよいですね。

スリープするとBluetoothを見失う

この問題はちょっと困っていたのですが、解決策がありました。

DSDT.aml へこのパッチを適用して、FakePCIID.kext と FakePCIID_XHCIMux.kext を /S/L/E/ へインストールすることで解決。

どうしてもTotalTerminalを使いたかった

……のですが、障壁となるSIP (System Integrity Protection)を無効にするために、公式チュートリアル http://totalterminal.binaryage.com/#sip にあるリカバリモードから csrutil を使う方法は実Macじゃないとうまく行かないので(※OSX86ではNVRAMがエミュレーションだから)、工夫する必要があります。

Clover EFIの場合、config.plist の "RtVariables" の項に以下を追記するとOKです。なお、デフォルト値は 0x03 、逆にSIPを有効にするには 0x00 です。

  <key>CsrActiveConfig</key>
  <string>0x67</string>

これでSIPが無効になるので、TotalTerminalを使うことが可能となります。iTermが嫌いでも大丈夫。よくわからない場合はSIPを無効にするのはやめましょう。