メインコンテンツへスキップ

postmarketOSインストール手順:pmbootstrapでインストールファイルを作成する

·
カテゴリー スマートフォン 真のLinuxスマホ
タグ PostmarketOS Alpine Linux
目次

postmarketOSとは何でしょうか?postmarketOSというシステムの紹介についてはこの記事を参照してください。

この記事はpmbootstrapを使ってpostmarketOSをインストールする手順です。あなたの機種が公式サポートリストに載っていれば、この手順に沿ってpostmarketOSを端末へインストールできます。

pmbootstrapはpostmarketOS公式が提供するツールで、postmarketOSシステムをゼロから作成できます。パッケージ内容は完全にカスタマイズ可能で、どのパッケージをインストールするかを制御し、自分用のシステムを作れます。

インストールファイルの作成以外に、pmbootstrapは新しい機種の移植作業にも使えます。

この記事ではIvonが、PC上でpostmarketOSのインストールファイルを手動作成し、それをスマートフォンへ書き込む流れを示します。私のPCはUbuntu LTS、スマートフォンはXiaomi Pocophone F1です。最新版の純正ファームウェアを入れ、Bootloaderをアンロック済みで、RecoveryとしてTWRPをインストールしています。

1. pmbootstrapをインストールする
#

pmbootstrap - postmarketOS Wikiの指示を参照します。

QEMU仮想マシンを作成する必要があるため、pmbootstrapはx86_64アーキテクチャのPCのみをサポートしています。

1つ目の方法です。Gitとシンボリックリンクでインストールする方法をおすすめします。最新版のpmbootstrapを取得できます。

cd ~

git clone https://gitlab.postmarketos.org/postmarketOS/pmbootstrap.git

mkdir -p ~/.local/bin

ln -s "$PWD/pmbootstrap/pmbootstrap.py" ~/.local/bin/pmbootstrap

echo 'PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrc

source ~/.bashrc

2つ目のインストール方法は、Linuxのパッケージマネージャーでpmbootstrapを入れる方法です。これはローリングリリース系ディストリビューション向けです。postmarketOS開発チームは常に変更を入れているので、pmbootstrapパッケージが古すぎると問題が起きやすいです。

# Alpine Linux, postmarketOS
apk add pmbootstrap

# Arch Linux
pacman -S pmbootstrap

# Debian
apt install pmbootstrap

# Fedora
dnf install pmbootstrap

2. 機種を選択してオプションを設定する
#

  1. pmbootstrap initコマンドを実行します。
pmbootstrap init
  1. 指示に従って入力します。初期化時にGitlabから最新版の機種設定ファイルがダウンロードされます。
# Enterを押してデフォルト作業ディレクトリを使う (~/.local/var/pmbootstrap)
Work path: Enter

# 更新チャンネルはedgeを選ぶ。またはRecommended for best stabilityと書かれた安定版の番号を入力する。
Channel: edge

# スマートフォンのメーカーを選ぶ
Vendor: xiaomi

# スマートフォンのデバイスコードネームを選ぶ
Device codename: beryllium

# postmarketOSのユーザーアカウントを作成する
Username: User

# デスクトップ環境を選ぶ。XFCE4(x11)はハードウェアアクセラレーションのない端末向け。Phosh(Wayland、3Dアクセラレーション必須)はスマートフォンUI向け。起動後に別のデスクトップ環境を追加インストールすることもできる。
User Interface: phosh

# initシステムとしてSystemdを使うか?使用推奨。旧版postmarketOSはOpenRCを使っていた
Install systemd? (default/always/never) [default]: always

# 残りは全部Enter
  1. これが、対応機種向けのインストールファイルを作成するたびに最初に行う作業です。あなたのpostmarketOSをどのような構成にするのかpmbootstrapへ伝えてから、インストールファイルの作成を開始します。

3. postmarketOSをスマートフォンへインストールする方法を選ぶ
#

Androidスマートフォンの場合、書き込み前に最新版の純正ファームウェアをインストールし、Bootloaderをアンロックしておいてください。

この手順でインストールファイルを作成します。postmarketOSの主なインストール方法は3種類あります。

  1. fastbootで書き込む(データ消去が必要、おすすめ)
  2. SDカードへインストールする(既存のスマートフォンシステムには影響しないが、おすすめしない)
  3. 書き込み用ZIPでインストールする(データ消去が必要、時間がかかりすぎるのでおすすめしない)

このほかにも少し変わったインストール方法があり、後ろに載せています。

fastbootで書き込む
#

この方法ではスマートフォン上の全データが消去されます。

  1. インストールファイルを作成します。
pmbootstrap install
  1. スマートフォンをfastbootモードにし、PCへ接続して書き込みます。
pmbootstrap flasher flash_rootfs

# 書き込み先パーティションの容量が小さすぎる場合は、--partition引数を付けて別のパーティションへ書き込む:
pmbootstrap flasher flash_rootfs --partition userdata
  1. 次にkernelをbootパーティションへ書き込み、再起動します。
pmbootstrap flasher flash_kernel

fastboot reboot

SDカードへインストールする
#

この方法ではスマートフォン本体のデータは変更されず、デュアルブートのように使えます。ただし起動時にPCからコマンドを実行しないとpostmarketOSへ入れません。スマートフォンによっては、fastbootからboot.imgで起動する方法に対応していない場合があります。

  1. SDカードをPCに挿し、lsblkコマンドでSDカードのデバイス名とマウントポイントを確認します。
sdb      8:16   1  29.7G  0 disk /media/ivon/E8D8-4246
  1. 先にアンマウントします。
umount /media/ivon/E8D8-4246
  1. それからインストールを開始します。
pmbootstrap install --sdcard=/dev/sdb
  1. pmbootstrapがSDカードを自動フォーマットし、システムをインストールします。途中でユーザーパスワードの作成を求められ、SDカードをフォーマットするかどうかも再確認されます。

  2. 次にSDカードをスマートフォンへ装着し、スマートフォンをfastbootモードにしてPCへ接続し、次のコマンドで起動します。

pmbootstrap flasher boot

書き込み用ZIPでインストールする
#

この方法ではスマートフォン上の全データが消去されます。sideloadするか、書き込み用ZIPをスマートフォンへ転送してTWRPでインストールできます。ただしZIPの作成にかなり時間がかかります。待つのも修行、とはいえ限度があります。

  1. 書き込み用ZIPを作成します。約5分かかります。
pmbootstrap install --android-recovery-zip

# より大きい別パーティションへインストールしたい場合は、--partitionオプションを付ける

pmbootstrap install --android-recovery-zip --recovery-install-partition=data
  1. スマートフォンをPCへ接続し、再起動してTWRPへ入ります。PCの作業ディレクトリから作成されたpmos-*.zip書き込み用ZIPを探します。たとえば私のファイルは~/.local/var/pmbootstrap/chroot_buildroot_aarch64/var/lib/postmarketos-android-recovery-installerにありました。

  2. ファイルをスマートフォンへ転送し、TWRPでインストールしてから再起動します。

  3. PC上のpmbootstrapを終了します。

pmbootstrap shutdown

その他の書き込み方法
#

  • Netboot:postmarketOSのboot.imgで一時的に起動してから、PC上のファイルシステムをマウントします。スマートフォンのデータを消去する必要はありません。
  • Netcatで起動する
  • NFSで起動する

4. postmarketOSインストール後の調整
#

起動してもデスクトップへ入れない場合でも、スマートフォンをUSBケーブルでPCへ接続していれば、SSHでスマートフォンへ接続できます。

# このIPは固定。必要なのは「@」の前を自分のユーザー名に変えることだけ
ssh user@172.16.42.1

あなたの端末が無事にpostmarketOSのデスクトップ環境へ入り、GPUアクセラレーション、タッチ操作、ネットワーク、音声がすべて正常なら、次はpostmarketOS使用技巧を参照して、postmarketOS設定の細かい勘所と、postmarketOSをスマートフォンOSとして使う方法を確認してください。

関連記事


最後までお読みいただきありがとうございます。本サイトでは公開コメント欄を設けていません。私はソーシャルな反応やアクセス数を追い求めるためではなく、自分の考えを誠実に探求するために文章を書いています。記事を丁寧にお読みいただいたうえで、ご感想やご意見をお寄せいただければ幸いです。誤字・誤り・技術的な問題などを見つけた場合、またはフィードバックを共有したい場合は、Aboutページに記載しているメールアドレスまでお気軽にご連絡ください。