MacBookPro10,x
このページでは Retina ディスプレイが搭載された MacBook Pro 10,1 に Arch Linux をセットアップする方法を説明します。手順は通常の Arch Linux のインストールとほとんど変わりません。ただし、新しいハードウェアであるため、少しだけ違う部分があります。MacBook 全般のインストールガイドについては MacBook を見てください。
インストールの準備
ハードドライブの用意
macOS とデュアルブートする場合、ディスクユーティリティを使用してパーティションを小さくする必要があります。Linux のパーティションはディスクユーティリティで直接作成しても良いですし、Linux のインストール中に行っても構いません (parted
や mkfs
を使用)。
Thunderbolt と Ethernet の変換アダプタを使う
2014年現在、Thunderbolt のホットプラグは Linux のメインラインカーネルに取り込まれています。Thunderbolt のアダプタを使うことでイーサネットケーブルを普通に使えます [1]。
USB と Ethernet の変換アダプタを使う
特別な設定は不要です。
ワイヤレスファームウェアの入手
Wi-Fi のチップセットを機能させるには、ファームウェアが必要です。b43 が有効になっている Arch からコピーしてくるか、b43-fwcutter を使って Broadcom のドライバーから抽出するか、AUR の b43-firmwareAUR パッケージを使ってファームウェアを手に入れてください。b43
という名前のフォルダに大量の .fw
ファイルが必要です。
USB テザリング
スマートフォンを持っている場合、テザリングを使ってインターネットに接続することもできます。特別な設定は不要です。
インストール
ライブイメージの起動
ダウンロードページから最新の ISO をダウンロードして USB インストールメディアに書かれているようにしてライブ USB を用意してください。
MacBook をシャットダウンして USB ドライブを接続してください。オプションキーを押しながら電源ボタンを入れてください。数秒後、Apple のブートローダーが表示されるので方向キーでライブ USB を選択して Enter を押せば Arch Linux 環境が立ち上がります。
Wi-Fi の接続
起動が完了したら、コマンドラインが開きます。ワイヤレスカードのファームウェアのフォルダをそのまま /usr/lib/firmware/
にコピーしてください。
これで wifi-menu を使って Wi-Fi ネットワークに接続できるようになるはずです。
インストール
通常通りにインストールを行ってください。
インストールが完了したら Wi-Fi のファームウェアを /tmp/install/usr/lib/firmware/
にコピーしてください。もしくは broadcom-wl-dkms をインストールしてください。
ブートローダー
2013年8月現在、refind は Arch カーネルを自動で認識するため、カーネルを EFI パーティションにコピーする必要はありません。rEFInd をインストールして refind.conf
の "scan_all_linux_kernels" と "also_scan_dirs" オプションを有効にしてください。
インストール後の設定
Wi-Fi
Macbook Pro 10,x には Broadcom BCM4331 無線チップセットが搭載されています。
Arch Linux でこのチップセットを動作させる方法は2つあります:
- チップセットをリバースエンジニアリングして開発されたオープンソースのファームウェアが含まれている b43-firmwareAUR パッケージ。
- 制限的なライセンスで配布されているプロプライエタリのドライバーが含まれている broadcom-wl と broadcom-wl-dkms パッケージ。
詳しくは Broadcom ワイヤレスを見てください。
グラフィック
一般的なノート
MacBookPro10,x には nVidia と Intel のビデオチップが搭載されています。Nouveau (xf86-video-nouveau), Intel xf86-video-intel (3.6-rc5 以上), プロプライエタリの NVIDIA (302.17 以上) ドライバーが動作します。NVIDIA のドライバーは nvidia あるいは nvidia-beta-allAUR パッケージでインストールできます。
Retina (HiDPI) ディスプレイが搭載されているため、デスクトップ環境によっては画面が小さくなってしまうことがあります。HiDPI を見てください。
Nouveau バックライト
オープンソースの Nouveau ドライバーを使用していて GPU として Nvidia カードが有効になっている場合、以下のようにコマンドを (root で) 実行することでバックライトの調整ができます:
# echo 500 > /sys/class/backlight/gmux_backlight/brightness
バックライトの明るさを最大にするには:
# echo $(cat /sys/class/backlight/gmux_backlight/max_brightness) > /sys/class/backlight/gmux_backlight/brightness
NVIDIA バックライト
プロプライエタリの NVIDIA ドライバーを使っている場合、バックライトの調整は設定をしないとできません。
バックライトの制御を有効にするには:
# setpci -v -H1 -s 00:01.00 BRIDGE_CONTROL=0
gpu-switch で GPU を切り替える
オープンソースの xf86-video-nouveau
と xf86-video-intel
ドライバーを使用している場合 gpu-switchAUR を使うことで Arch Linux の中で GPU のディスプレイ出力を切り替えることができます。
AUR から gpu-switchAUR パッケージをインストールしてスクリプトを root で実行してください。コマンドスイッチとして -i
を付けると内蔵カードに切り替わり、-d
でディスクリート GPU に切り替わります。変更を適用するには再起動が必要です。
Intel の内蔵 GPU に切り替えてディスクリートの Nvidia GPU をオフにする
Intel のカードに切り替えて GPU の電源を切るには:
$ cd /path/to/gpu-switch # ./gpu-switch -i
Then reboot.
vgaswitcheroo
を使うことでディスクリート GPU の電源を切れます:
# echo OFF > /sys/kernel/debug/vgaswitcheroo/switch
設定完了まで数秒待ってください。
以下のコマンドでディスクリート GPU がオンかどうか確認できます:
$ cat /sys/kernel/debug/vgaswitcheroo/switch
以下のように出力されます:
0:IGD:+:Pwr:0000:00:02.0 1:DIS: :Off:0000:01:00.0 2:DIS-Audio: :Off:0000:01:00.1
起動時にディスクリート GPU をオフにする
起動時からディスクリート GPU をオフにしたい場合は systemd-vgaswitcheroo-unitsAUR を見てください。
サウンド
MacBookPro10,2 では 'mbp101' オプションで 'snd_hda_intel' ドライバーを使う必要があります。modprobe の設定に記述してください。
タッチパッド
xf86-input-synaptics は機能しますが、タッチパッドに組み込まれているボタンに問題があります。xf86-input-mtrack-gitAUR ドライバーを使用することで良い結果を得ることができます。
以下の設定では1・2・3本指のタッチをそれぞれ左・中・右クリックにします:
Section "InputClass" MatchIsTouchpad "on" Identifier "Touchpads" Driver "mtrack" Option "Sensitivity" "0.65" Option "IgnoreThumb" "true" Option "IgnorePalm" "true" Option "TapButton1" "1" Option "TapButton2" "3" Option "TapButton3" "2" Option "ClickFinger1" "1" Option "ClickFinger2" "3" Option "ClickFinger3" "2" Option "BottomEdge" "25" EndSection
ナチュラルスクロールを使いたい場合、以下を追加してください:
Option "ScrollDownButton" "4" Option "ScrollUpButton" "5" Option "ScrollLeftButton" "7" Option "ScrollRightButton" "6"
詳しくは xf86-input-mtrack-gitAUR のドキュメントを見てください。
メモリーカード (SDHCI/SDX) リーダー
カーネル 4.7.x にはバグが存在し内蔵の SD カードリーダーがタイムアウトしてしまいます。
そのような場合は sdhci
カーネルモジュールをリロードしてください [2]:
# rmmod sdhci-pci sdhci # modprobe sdhci debug_quirks2=4 # modprobe sdhci-pci
トラブルシューティング
b43-firmware でグラフィックに問題が発生する
b43-firmware パッケージと内蔵グラフィックを使っている場合、無線ネットワークの通信量にあわせてグラフィックに乱れが発生することがあります。b43-firmwareAUR を削除・無効化して broadcom-wl または broadcom-wl-dkms を使うことで解決します。
参照
- MBP Retina 10,2 に Arch をインストール・設定する Puppet モジュールが https://github.com/jantman/puppet-archlinux-macbookretina にあります。頻繁にアップデートされており、作者のノートパソコンで日常的に使われています。
フォーラムスレッド: