PinePhoneをpostmarketOSで使うためのまとめ
使うイメージについて
「Images for the PinePhone」からimgファイルをダウンロードして、microSDに書き込むことで使える様になるが、使ったmicroSDのサイズにあわせてパーテーションを調整してくれないのが微妙なところです。
上記サイトからダウンロードする際は「-plasma.img.xz」となっているKDE Plasma Mobileベースのものを利用するのがお勧めです。
なお、「-phosh.img.xz」はGNOMEベースのLinuxフォンLibrem 5用に開発されているものを使用しています。
使うmicroSDの容量にあったパーテーション割りを希望する場合は、Linux上でpostmarketOSのOS用microSD書き込み環境を作成して書き込む必要があります。
pmbootstrapによるmicroSD作成
まず「Installing pmbootstrap」にある手順を実施します。
ベースOSを何にしろ、と特に書いてなかったので、とりあえずUbuntu 18.04LTSでインストールして構築しました。
次に、「Installation guide」の手順でカスタマイズと書き込みを行います。
注意点として「pmbootstrap init時の User interface 設定」があります。
これをデフォルトの「watson」で設定してしまうと、タッチインタフェースだけでは操作できない環境となってしまいます。 「User interface [weston]: plasma-mobile-extras」 で設定しましょう。
また、途中にパスワードについては、2020年2月10日現在、数字パスワードである必要があります。これは現時点でのロック解除画面が数字入力のみ対応であるためです。(PinePhone Software Release より)
LTEの使用方法
GUIのSettingにある「Mobile Broadband」項目は正常に動作しません。
現時点では、Terminalを開いてコマンドを入力する必要があります。
$ sudo ofonoctl poweron
10秒ぐらい待つ
$ sudo ofonoctl wan --connect --append-dns
楽天モバイルの無料サポータープログラムの楽天回線SIMだとAPN設定をいれなくても使えました。
ただし、postmarketOSは標準設定でusb0に172.16.24.0/16のIPアドレスを割り当てています。このIPアドレス帯を楽天モバイルでは使っていて、特にDNSサーバが172.16.206.0/24にあったりするので、名前解決ができないという事態になりました。
このためterminalから「sudo ip link set usb0 down」を実行し、usb0を使えなくすることで対処しています。
ofonoctlコマンドの覚え書き
回線の接続状況確認「ofonoctl」
データ通信の接続状況確認「ofonoctl wan」
WiFiの使用方法
GUIのSettingにある「Wi-Fi」から接続設定はできます。
わかりにくいのですが、各SSIDを選択し、パスフレーズを入力した後に、なにやらパスワード入力を求められます。
これは、パスフレーズを保存するためのパスワードなので、適当に何かを設定します。
WiFi選択画面の下記ボタンをクリックすると、WiFiがOFFになります。
アップデートとインストール
postmarketOSのアップデートは「sudo apk update」と「sudo apk upgrade」で行います。
パッケージ検索は「sudo apk search 検索ワード」、パッケージインストールは「sudo apk add パッケージ名」でインストールできます。
うちの環境では標準のAngelfish Web Browserが全然動作してくれません。
「sudo apk add font-noto-cjk」 「sudo apk add firefox」 で日本語表示対応のFirefoxをインストールすることができます。
ブラウザのFireFoxが文字化けするので、PostmarketOSを入れたPinePhoneに日本語表示対応したいと思いました。ターミナルでコマンドを打ってもエラーとなってしまいます。ちなみにLinuxを使うのは初めてのことで知識もありません。ヒントをいただければ幸いです。よろしくおねがいします。
もう一つわからないことがありまして、質問させてください。Arch Linux系のPostmarketOSを使用しています。pacman というコマンドを使用したときの結果が以下の通りです。
$ pacman
/bin/ash: pacman: not found
これはpacman というコマンドが最初から入っていないのでしょうか。それともインストールされてるのかな。わからないです。
失礼しました。Arch Linuxではなくて、alpine Linux系の方でした。$ apk add firefox と入力してみました。そうすると返ってきたのが
Error: Unable to lock database: Permission denied Error: Failed to open apk database: Permission denied という文字列になります。
この記事内にあるパッケージのインストール手法のところ、なんて書いてあります?
あと、このサイトは初心者向けじゃないのでこれ以上の詳細は解説しません。
失礼いたしました。パッケージのインストールの記事を読みまして、改めてパッケージ検索をしたところ、次のような結果が出ました。
font-noto-cjk-0_git20211026-r0
font-noto-cjk-extra-0_git20211026-r0
“sudo apk add”を先頭に付けてインストールを試みたところ、
main: temporary error(try again later)
community: temporary error(try again later)
というメッセージが返されました。
firefoxだけはインストールできるのですが、日本語フォントになるとインストールしても失敗してしまう状況です。どうしたらいいでしょうか。
これ以上の詳細は解説しないのですね。
返答してしまいました。
すみません。
なんとか自力で(?)解決しました。
補足です。
英語のスペルでググってると、
外国人のプロのエンジニアが解決策を
提示してくれました。助かったぁ。
ERROR: unable to select packages:
docker (no such package):
required by: world[docker]
You can also check yours with the following command.
# tail -f /etc/apk/repositories
これにてインストールが無事できるようになりました。
以上です。
このコメントに影響されて誤ったことをおこなってしまう人がでないよう解説しておきます。
おそらく下記のページを見たのでしょうが、これは標準レポジトリには収録されていないパッケージをインストールするための手法です。
https://www.hasanaltin.com/error-unable-to-select-packages-error-on-alpine-linux/
内容としては
1. 現在有効になっているレポジトリを確認
2. レポジトリの設定を変更
3. パッケージ情報を更新
4. パッケージのインストール
となっていますが、実は手法1が不適切で、なぜか「tail -f /etc/apk/repositories」を実行しています。
tail -fは通常はログが出力されてくるのを監視する時に使う手法で、今回、たまたま/etc/apk/repositoriesの行数が短かったため全部が表示されていますが、おそらく10行以上あると最初の方が表示されない状態となります。
通常は「cat /etc/apk/repositories」あたりを実行します。
それ以降の手順についてはまあ問題ないですね。
今回の事象は firefox, font-noto-cjk, font-noto-cjk-extra をインストールしてうまくいかないことがあった、ということですが、これらは標準レポジトリで提供されているものなので、レポジトリの設定変更は不要です。
おそらく本来必要だったことはパッケージ情報を最新のものに更新するために「sudo apk update」を実行する、ということだけだったはずです。
ここらの話は alpinelinuxでapkコマンドを使ってパッケージをインストールする、という話を調べればいろいろ出てきます。
https://wiki.alpinelinux.org/wiki/Package_management
ツイッターに私のコメントを全く許可を得ないで無断で載せていましたが勝手に晒してもいいのでしょうか。他のメディアに私のコメントをアップしていいとは決して言ってません。侮辱する発言もありましたので、証拠としてスクショを残させてもらいます。
twitterに載せた件は申し訳ありませんでした。お詫びいたします。
記事に書いてあるにもかかわらずパッケージインストールのためのコマンドを勝手に勘違いした行動をしている上に
「これ以上の詳細解説しません」と書いたコメントすら無視している、というのは
書いてあるものごとを理解できてない人、という評価以外しようがありませんよ