MacBook Pro (13-inch, 2017) へのOmarchyセットアップ手順

もう古いので処分しようかなと思っていたMacBook Pro (2017年モデル)にOmarcyをインストールしてAI開発特化マシンとして復活させたメモです。

IMG_5096.jpg

スペック

13インチMacBook Pro A1708

  • 2.3GHzデュアルコアIntel Core i5プロセッサ
  • 16GB 2,133MHz LPDDR3メモリ
  • 256GB SSDストレージ

ブートイメージの作成

Omarchyのインストーラーを立ち上げるためのブートイメージを作成します。この手順は別のMacで行いました。

ISOファイルのダウンロード

公式サイトから.isoファイルをダウンロードします。

USBストレージにブートイメージを作成

balenaEtcher を使って作成する方法が紹介されていますが、コマンドで作成しました。

diskutil list # USBの識別子を確認(例: /dev/disk2)
diskutil unmountDisk /dev/disk2
sudo dd if=~/Downloads/omarchy-4.0.4.iso of=/dev/rdisk2 bs=4m status=progress
diskutil eject /dev/disk2

Omarchyのインストール

作成したブートイメージでUSBから起動します。Macの電源を入れて、すぐにキーボードの「option(alt)」キーを押したままにします。USBドライブを選択して、起動するとインストーラーが立ち上がります。

タイムゾーンやログインパスワードなどの設定を行います。

Omarchyの起動

インストール直後の画面です。まずWiFiを設定します。

screenshot-2026-09-28_10-56-18.png

システムの更新

右上に「Update System」というポップオーバーが表示されていると思うので、これをクリックしてシステムを更新します。ポップオーバーが表示されない場合は、Super(WindowsキーまたはCtrlキー)+ SpaceでOmarchyメニューを表示して、「Update」>「Omarchy」を選択します。

AIエージェントの設定

続いて、「Set your default agent」のポップオーバーをクリックして、使用するAIエージェントを指定します。わたしはClaudeに設定しました。

既定のAIエージェントを設定すると、Super + Ctrl + Shift + A で呼び出せます。

SCR-20260929-nynn.png

不要なドライバを削除

Omarchyが自動で入れるものの、現行カーネルではビルドできず毎回失敗するため。

sudo dkms remove -m macbook12-spi-driver --all
sudo pacman -R macbook12-spi-driver-dkms
modinfo -n applespi # 標準のキーボードドライバが残っていることを確認

スピーカーから音が鳴るようにする

sudo pacman -S --needed base-devel git wget dkms linux-headers
git clone https://github.com/davidjo/snd_hda_macbookpro.git
cd snd_hda_macbookpro
sudo ./install.cirrus.driver.sh -i
sudo reboot

再起動後、右上のメニューバーのスピーカーアイコンをクリックして、スピーカーとマイクが動作していることを確認します。

日本語入力

fcitx5が入っていることを確認

pacman -Q fcitx5
systemctl --user status omarchy-fcitx5.service

Mozcと日本語フォントを入れる

sudo pacman -S fcitx5-mozc noto-fonts-cjk

Mozcを有効にする

sudo pacman -S fcitx5-configtool
fcitx5-configtool

左の「Current Input Method」に Keyboard - English (US) と Mozc の2つが並ぶようにする(右の一覧から「Mozc」を検索して追加。

SCR-20260929-obnx.png
  1. 「Global Options」タブで切り替えキーを確認(デフォルトは Ctrl+Space)
screenshot-2026-09-28_13-03-32.png

はい、これで日本語が入力できるようになりました。そうするともうAIにこうしたいから設定して! と頼むだけで大抵のことはできるようになります。

❯ スピーカーはanalog stereo outputに設定されてる?

  Ran 1 shell command

はい、Analog Stereo が出力先になっています。

- デフォルト出力: Built-in Audio Analog Stereo(alsa_output.pci-0000_00_1f.3.analog-stereo)
- カードのプロファイル: output:analog-stereo+input:analog-stereo
- 使用中のポート: analog-output-speaker(内蔵スピーカー)
- ミュート: オフ、音量: 40%

もし音が出ていないなら、原因はこの出力設定以外のところにあります。今は再生中のストリームが一つもないので、再生を始めてから wpctl status の Streams 欄にそのアプリが表示されるか確認してみてください。

✻ Churned for 7s · done 1:05 PM

❯ wifiの5GHzは使える?

  Ran 1 shell command

はい、使えます。いまも5GHzで接続しています。

- 接続先: gordon-a、チャネル36(5180 MHz)、帯域幅40 MHz
- 電波: -44 dBm で強いです
- 速度: 受信 400 Mbit/s、送信 216 Mbit/s
- 国設定: JP なので、W52/W53/W56(ch36〜144)が使えます。ch149以降が無効になっているのは日本の電波法どおりで、異常ではありません。

帯域幅がいまは40 MHzです。ルーター側で80 MHzに設定すれば、もっと速くなるかもしれません。

続いてSuperキーのキーバインドとスクロール方向を変更したかったのですが、面倒なのでもうClaudeに頼みます。

Caps LockをSuperキーにして。それからスクロールの方向を逆にして。

実際はこのように設定ファイルに追加されます。

~/.config/hypr/input.conf
hl.config({
input = {
kb_options = "caps:super,shift:both_capslock_cancel",

touchpad = {
-- Use natural (inverse) scrolling.
natural_scroll = true,
},
},
})

WiFi/Bluetoothのファームウェア更新

WiFi(macOS の NVRAM)

元のファイルは vrilutza リポジトリの firmware/wifi/ にあります。

/lib/firmware/brcm/brcmfmac4350-pcie.Apple Inc.-MacBookPro14,1.txt
/lib/firmware/brcm/brcmfmac4350-pci
e.txt
/lib/firmware/brcm/brcmfmac4350c2-pcie.Apple Inc.-MacBookPro14,1.txt -> 上のファイルへのリンク
/lib/firmware/brcm/brcmfmac4350c2-pcie.txt -> brcmfmac4350-pcie.txt へのリンク

カーネルはこのチップを brcmfmac4350c2-pcie という名前で認識します。4350c2 のリンクがないと NVRAM が使われないので、リンクも必ず作ってください。反映には再起動が必要です。

Bluetooth

vrilutza リポジトリのファームウェアパッチ(firmware/bluetooth/BCM4350C0.hcd)を、カーネルが読み込むファイル名 BCM.hcd にしてコピーしています。

sudo cp ~/Work/MacBookPro14.1/firmware/bluetooth/BCM4350C0.hcd /lib/firmware/brcm/BCM.hcd

効果: 導入後、ペアリング時のパスキー入力が以前より速く通るようになりました。

サスペンドからの復帰が遅い問題の対応

sudo tee /etc/limine-entry-tool.d/macbook-t1.conf <<'EOF'
KERNEL_CMDLINE[default]+=" pcie_ports=compat"
EOF
sudo limine-update

適用後、復帰は早くなりましたが、これをやってもサスペンド復帰後に音声が出なくなる、USBドライブが認識しなくなるなどの不具合があったので、結局サスペンドは無効化しました。

リモート接続(VNC)

Macからリモート接続できるようにしました。

Omarchy側

sudo pacman -S wayvnc openssh
sudo systemctl enable --now sshd

hyprctl output create headless VNC-1
wayvnc -k jp -o VNC-1 -r -R 127.0.0.1 5900

自動起動するよう設定

~/.config/hypr/autostart.lua
-- Headless display VNC-1 + wayvnc (localhost only; connect via SSH tunnel).
o.launch_on_start("sh -c 'hyprctl output create headless VNC-1; wayvnc -k jp -o VNC-1 -r -R 127.0.0.1 5900'")

Mac側の外部ディスプレイに合うように以下を追加

~/.config/hypr/monitors.lua
-- Headless virtual display for VNC (created at startup in autostart.lua).
hl.monitor({ output = "VNC-1", mode = "1920x1080@60", position = "auto", scale = 1.25 })

Mac側

ターミナルで以下のコマンドを実行して、SSHトンネルを作成します。

# SSHトンネル(ローカル側は5901にする。5900はmacOS自身の画面共有と衝突しやすいため)
ssh -L 5901:localhost:5900 ryo@<omarchyのIP>

TigerVNC Viewerのインストール

brew install --cask tigervnc-viewer

TigerVNC Viewerを起動して、localhost:5901 に接続します。

SCR-20260929-ouba.png

VNCで日本語入力ができなくなる

MacではHappy Hacking Keyboardを使っているのですが、一度英数に切り替えた後に日本語が入力できなくなることがありました。

~/.config/fcitx5/configを以下のように修正することで解決しました。

~/.config/fcitx5/config
[Hotkey/TriggerKeys]
0=Control+space
1=Zenkaku_Hankaku

[Hotkey/ActivateKeys]
0=Hiragana_Katakana
1=Hangul

[Hotkey/DeactivateKeys]
0=Muhenkan
1=Hangul_Hanja
2=Eisu_toggle

また、最終的にinput.luaはこのようになりました。VNCとそれ以外とでキーバインドを変えています。設定の内容はAIに聞いてください😆

~/.config/hypr/input.lua
hl.config({
input = {
kb_options = "ctrl:nocaps,ctrl:swap_lwin_lctl,shift:both_capslock_cancel",

-- Faster key repeat (Omarchy default: 40 / 250).
repeat_rate = 60,
repeat_delay = 250,

touchpad = {
-- Use natural (inverse) scrolling.
natural_scroll = true,
},
},
})

-- VNC (wayvnc): Ctrl stays Ctrl, Caps Lock -> Ctrl.
hl.device({
name = "hl-virtual-keyboard-wayvnc",
kb_options = "ctrl:nocaps,shift:both_capslock_cancel",
})

まとめ

Arch系のLinuxを触るのは初めてだったのですが、とりあえずClaudeに聞けば大抵のことは解決するのであまり苦労しませんでした。

このMacはインストールできるOSがmacOS Venturaなのですが、すでにセキュリティアップデートも提供されていません。Omarchyを入れることで、最新のOSで利用することができます。またDockerがVMなしでネイティブに動くのも利点だと思います。

今回、AIが動くマシンをAIと一緒にセットアップしたわけですが、この体験自体が結構新鮮だなと思いました。例えば、これはファンを制御するためのライブラリを入れてみたものの、ちょっとファンがうるさすぎるのではと感じたときの会話です。

SCR-20260929-pmwo.png

AIが自分の体はこんなふうに制御したほうがいいね、と提案してくれています。指示すれば設定も変更してくれます。AIの肉体であるはずの物理的なハードウェアをAIが制御していると考えると、ただのコンピューターではなく、ロボットと対話しているように感じることがありました。みなさんもぜひ体験してみてはいかがでしょうか。

最終更新: