スマートフォン上でboot.imgをパッチするのは煩雑なので、PC上で完結させる手順をまとめました。最終的にMagiskと同様にfastbootで焼き付けるだけでAPatchが有効になります。
必要なファイルを用意する
- magiskboot.exe
GitHubリリースページからWindows版をダウンロード
https://github.com/svoboda18/magiskboot/releases - KernelPatch バイナリ一式
・kpimg-android(パッチイメージ)
・kptools(パッチ適用ツール、LLVMビルド推奨)
https://github.com/bmax121/KernelPatch/releases - 端末の純正boot.img
ファストブートやメーカー公式ROMから抽出したものを使用
これらを同じフォルダに格納し、kptoolsは自PCのアーキテクチャ(通常はx86_64)のみ残しておくと整理が楽です。
パッチ適用作業
1. ターミナルを開く
Windows Terminal または PowerShell で対象フォルダに移動しておきます。
タブ補完(Tabキー)と履歴補完(右クリック)を活用するとファイル名の入力が捗ります。
2. boot.img を展開
.\magiskboot.exe unpack boot.img
カレントディレクトリに kernel などの構成ファイルが展開されます。
3. カーネルに署名を埋め込む
展開された kernel を別名で退避し、パッチを適用します。
ren kernel stock-kernel
.\kptools-x86_64-win.exe -p `
--image stock-kernel `
--skey "mySecureKey" `
--kpimg .\kpimg-android `
--out kernel
最後に patch done と表示されれば成功です。
--skey の値は後でAPatchアプリで入力するパスワードと同一にしてください。
4. 新しいboot.imgを再構築
.\magiskboot.exe repack boot.img
同フォルダに new-boot.img が生成されます。
端末へ書き込む(オプション)
端末を fastboot mode にしてPCと接続し、以下を実行します。
fastboot flash boot new-boot.img
fastboot reboot
後片付け
不要になった stock-kernel、kernel、ramdisk.cpio などの中間ファイルは削除しておくと次回のビルド時に混同しません。