Raspberry Pi 400 に AOSP Android 13 をインストールして Debian (VOLKSPC) も共存

https://konstakang.com/devices/rpi4/AOSP13/ のアプリとして Debian をインストールし AndroidとLinuxの共存した環境をRaspberry Pi上に構築します

準備
---
Android をインストールする USB接続のSSD 120GBのものを使いました
USBメモリ　インストール用のファイルをコピーするのに使います
　　　　　　2.0のUSBメモリを使いました
LinuxPC　SSD に Android を書き込む
　　　　　インストールに必要なファイルをダウンロードし USBメモリに書き込むのに使用します
SSDに電源供給するためのUSBハブ
　　　　　　Raspberry Pi 400からSSDに電源供給するとインストールがうまくいかない場合があります


Androidのダウンロード
---
https://konstakang.com/devices/rpi4/AOSP13/

ダウンロードするファイル
AOSP13-20230412-KonstaKANG-rpi4.zip

Q: Settings -> Storage shows total system size of 7 GB. There’s unallocated space on my sdcard. What should I do?
A: This is a 7 GB image, remaining space on your sdcard will remain unallocated. Easiest way to extend /data partition is to simply flash my resize zip in TWRP

アンサーのところの resize をクリックして　AOSP13-rpi-resize.zip　をダウンロードしてUSBメモリにコピーしてください

https://konstakang.com/devices/rpi4/LineageOS20/ から下の方のQ&Aのところで
Q: How to install Google apps?
A:
 Download MindTheGapps-13.0.0-arm64-xxxxxxxx_xxxxxx.zip and save it to your device’s internal storage or use an external USB drive
 

MindTheGapps-13.0.0-arm64-xxxxxxxx_xxxxxx.zip　をクリックしてダウンロードして USBメモリにコピーしてください
私がダウンロードしたファイルは MindTheGapps-13.0.0-arm64-20230408_162909.zip です


https://www.volkspc.org/
から　Free distribution　のところで　Android APK’s をクリックしてダウンロードしてください　volkspcrpi4apk.zip がダウンロードされていると思います
このファイルを展開すると Desktop.apk InstallerRPI4.apk README.txt volkspcupdate.zip のファイルが作成されます
USBメモリにコピーしてください

https://www.volkspc.org/installation/
から　volkspcimgarm64.zip　をクリックしてダウンロード後、USBメモリにコピーしてください 

https://m.apkpure.com/jp/apkpure/com.apkpure.aegon/download?from=details
APKPure をダウンロードしてUSBメモリにコピーしてください


Android のインストール
---
SSD をLinuxPCに接続して AOSP13-20230412-KonstaKANG-rpi4.zip
を書き込みます
私は rpi-imager を使用しましたが unzip して　dd で書き込んでも構いません
書き込みが終了したらデスクトップに _/ boot vendor userdata がマウントされているか、ファイルマネージャーを起動して　/ boot vendor userdata のデバイスの存在を確認してください
boot を開いてください
その中に config.txt があるのでダブルクリックしてください
USBブートの場合は以下を
\# Boot device
dtoverlay=android-sdcard
#dtoverlay=android-usb
変更後
\# Boot device
#dtoverlay=android-sdcard
dtoverlay=android-usb
にしてください
SDカードの場合は変更しないでください

Raspberry Pi 400の場合は
\# Overclock
over_voltage=0
arm_freq=1500
のところで　arm_freq を
arm_freq=1800
に変更してください

変更後保存して終了、イジェクトボタンを押してマウントを解除してください

Android 起動
---
SSD をRaspberry Pi に接続して Android を起動します
Raspberry Pi 400 のUSB-type Aコネクターは青、青、白とありますが
SSD、マウス,USBメモリの順に接続しています
arm_freq=2000 にすると起動しない場合があります
起動したら、userdata の resize をします
マウスの左ボタンを押した状態で上へ移動するとアプリ一覧が表示されます

Android の設定
---
Debianの環境が初期状態は英語なので、しばらくは英語モードで設定します
Setting　で WIFI を使用する場合は　Network＆　Internet　のところで設定してください
私はLANケーブル接続なので自動的につながります

下の方の System を選択します
Raspberry Pi setting を選択します
Reboot to recovery を選択します（白丸が右側の状態にします）
Audio device をクリックして HDMI0 に設定します
Maximum CPU frequency を選択して 1800 に設定します
Raspberry pi 4B の場合は、その環境に設定してください

下のツールバーのところで　■　を選択して　CLEAR ALL を選択します
マウスを画面上、一番上に移動させてクリックするとステータスの画面が表示されるので、電源ボタンをクリックして Restart をクリックします

TWRP の起動
---
Team Win Recovery Projecy が起動しましたらUSBメモリを接続して
Install を選択します
右下の Select Strage を選択します
USB を選択します　USB(0MB) と表示されている場合もありますが気にしないでください
OK を選択します
AOSP13-rpi-resize.zip　を選択します
Swipe to confirm Flash のところで水色の白三角のところへマウスを移動させて左ボタンを押したまま右端に移動して左ボタンを離してください
画面中央の下に　Wipe Dalvik と Reboot が表示されていますが、画面左上に CPU: 温度　の表示の下に白丸の中に水色の上下矢印、その右側にInstall Zip Successful と表示されていたら、成功です
エラーの場合は、「白丸の中に水色の上下矢印」をクリックして再インストールしてください

続きまして、MindTheGapps-13.0.0-arm64-20230408_162909.zip をインストールします
「白丸の中に水色の上下矢印」をクリックすると、最初のメニュー画面に戻ります
Install を選択します
MindTheGapps-13.0.0-arm64-20230408_162909.zip を選択します
Swipe to confirm Flash のところで、右にスライドします

成功したら同様に volkspcupdate.zip をインストールします
failed to mount /dev/block/mmcblock03p at /vendor: No such file or irectory というメッセージが表示されますが、SSDの場合は /dev/block/sda3 が /vendor なので、このエラーは気にしないでください

Reboot を選択します
System を選択します
リブート中でブートが始まる前にUSBメモリを取り外します

Debian のインストール
---
Android が起動しましたら、スライドして、Files を起動します
USBメモリを接続します
左下に USBメモリが表示されているので選択します
USBメモリ内のファイルが表示されていると思います
Desktop.apk をダブルクリックします
メッセージが表示されるので CONTINUE を選択します
再確認のメッセージが表示され、INSTALL を選択します
インストール完了のメッセージが表示され、DONE を選択します

InstallerRPI4.apkも同様にダブルクリックしてインストールします
APKPure_v3.19.06_apkpure.com.apkもついでにインストールします

volkspcimgarm64.zip　のところでマウスの右クリックするとメニューが表示され、Copy を選択します
左側の Downloads を選択します
Files in Downloads が表示され、マウスの右クリックでメニューを表示して Paste を選択します
volkspcimgarm64.zip が Downloads にコピーされます
コピー中は画面の左上にファイルのアイコンが表示されます
コピーが完了するとファイルのアイコンが消えて、volkspcimgarm64.zip のファイルサイズが正しく表示されます
USBメモリのイジェクトを選択してUSBメモリを取り外します
今、使用している Filesアプリを終了します
下のツールバーの ■ をクリックして CLEAR ALL を選択します

画面上にペンギンのアイコンで Desktop と Installer が増えていると思います

Installer　を起動します
このデバイスのアクセス権を許可しますかというメッセージが表示されますので,ALLOW を選択します
上から2つ目の Install VolksPC distribution を選択します

Found VolksPC image
Do youy want to install this /sdcard/Download/volkspcimgarm64.zip?
というメッセージが表示されます
私は sdcard ではないのですが、YES を選択します
進捗バーがゆっくりと進んでいきますので、しばらく待ってください

Installation complete,reboot system
Increase VolksPC image size if you plan to install additional Linux applications
というメッセージが表示されます
YES を選択します

メッセージの reboot system の指示にしたがってリブートします
マウスを画面上、一番上に移動させてクリックするとステータスの画面が表示されるので、電源ボタンをクリックして Restart をクリックします


Debian の起動
---
Android が起動しましたら、Installerアプリ を起動します
一番上のメニューの Start VolksPC desktop を選択します
進捗バーが進んで行って、準備が完了するとXfceのデスクトップ画面が表示されます
Read ReleaseNote to configure system というメッセージが表示されるので
I AGREE を選択してリリースノートを読みましょう

Android を日本語に設定すると Debian も日本語モードになってしまうので、ターミナルを開いて　sudo apt install fonts-noto-cjk でとりあえず日本語フォントを必ずインストールしておいてください

ついでに　sudo apt install task-japanese も実行しておきました
Xfce から Android へ戻るのは、Applications->System->Android　です
ツールバーのアンドロイドアイコンを選択してもOKです


Android の設定の準備
---

APKPure を起動します
Allow APKPure to make and manage phone call? というメッセージが表示されます
ALLOW を選択します
Allow APKPure to access photos,videos,music,audio,and other files on this device?
許可したければ ALLOW 許可しない場合は　DON'T ALLOW を選んでください

Must-Have Apps の右側の × をクリックしてください

画面の上部の入力欄に device と入力します
Device　IDというアプリをインストールするのですが、Device IDというアプリが2つ表示される時もあります
アイコンにIDという文字がある方をインストールしてください

Allow APKPure to send you notifications? というメッセージが表示されます
ALLOW を選択してください
Allow from this source の右側の　●　を右に移動させて、左上の　左矢印　をクリックしてください

Device ID をインストールしますか　というメッセージが表示されます
INSTALL を選択します
APP installed と表示されたら DONE を選択します

ブラウザは WebView Browser というのが、インストールされているので、これを使ってみます

Google Service Framework(GSF) の登録を行います
Device ID を起動します
上から4つ目に Google Service Framework IDが表示されています

ツールバーの ■　を選択して、ツールバーの中央付近の上の Split を選択します
ツールバーのアイコンがサイコロの目のような模様（小さな●が9個）でできているアイコンを選択します
WebView Browser を選択します
ブラウザーとデバイスIDが並んでいると思います
ブラウザーのURLを入力します
https://www.google.com/android/uncertified/
グーグルアカウント(Gmail）を入力します
英語キーボードでは＠はシフトを押しながら２を入力してください
パスワードを入力します

デバイスの登録　というタイトルのページが表示されます
下の方にGSF　IDの入力欄があるので、Device IDに表示されている内容を入力します
ロボットでありませんにチェックをして、登録を選択します
再起動します

Play Store を起動してサインインを選択すると、GSF ID が登録されているかチェックして、登録完了されたら、メールアドレスとパスワードを入力して Play Store を使えるようになります

This device isn't Play Protect certified というメッセージが表示された場合、右下の Got it を選択してください
私の場合、５～６回繰り返すと GSF ID の確認ができました
 
日本語キーボードのアプリをインストールします
Play Store の検索のところに japanese keyboard と入力します
お好みのものをインストールしてください
私は Gboard- the Google Keyboard をインストールしました

日本語の設定をします
---
Settings -> System -> Languages & input を選択します
\+ Add a language を選択します
下の方に「日本語」が表示されますので選択してください

１　English　　　　　　　　　　＝
２　日本語　　　　　　　　　　　＝
＋　Add　ａ　language

という表示になっていると思います
１　English　を削除する場合
画面右上に 縦に●が三つ並んでいるところを選択します
Remove という表示に変わりますので Remove を選択してください
チェックボックスが表示されますので、English　の左側の □ にチェックをいれ、右上のゴミ箱を選択してください
メッセージに従って削除してください

英語と日本語の優先順位を変える場合、English の右側の　＝　をマウスの左ボタンを押した状態で下へ移動して、日本語より下に移動すると順番が入れ替わります

「言語」の上に左矢印が表示されているので選択します

画面キーボードを選択します
Androidキーボード（AOSP)　の●は左側
Gboard の●は右側
Google Voice Typing の●は右側
に設定しました

「画面キーボード」上に左矢印表示されているので選択します

Raspberry Pi 400 日本語キーボード版　を使用されている方は
物理キーボードを選択します
Raspberry Pi Internal Keyboard を選択します
右下の　キーボードレイアウトの設定　を選択します
下の方へ移動させて　日本語１０９A配列　の●を右側に設定します
画面上の　キーボードレイアウト　の左側の　左矢印　を選択します

Raspberry Pi Internal Keyboard
日本語　１０９A　配列
という表示になっていると思います

画面キーボードの使用
初期値は　表示する　設定になっています
画面キーボードが邪魔だという方は　●　を左側に設定してください

「物理キーボード」の上の左矢印を選択します

上に移動して「言語と入力」の上の左矢印を選択します

「日付と時刻」という項目が3番目にあるのですが
GMT+09:00 日本標準時　と表示されていない場合は設定してください
日本語を選択すると、自動的に設定されるみたいです

後は、お好みで文字のサイズやアイコンのサイズなど設定してください

いろいろと設定をしましたので念のため再起動します

Android が起動しましたら APKPure や Device ID は使わないと思うので
削除してみます

APKPure のアイコンをマウスの左ボタンで押した状態にすると、アプリ情報、右に分割、左に分割、アイコンが白枠に囲まれます
アイコンを白枠外に移動させると、画面上部に、白枠に囲まれた、削除、アンインストール　が表示されます
左ボタンを押したまま、アンインストールのところへ移動し、ボタンを離しますと

APKPure
このアプリをアンインストールしますか?　というメッセージが表示されますので、OK を選択してください

Debianを起動します
---
ペンギンアイコンの Desktop を選択します
すでに起動状態であれば、XFCE が表示されます
起動状態でなければ、メニューが表示され　Start VolksPC desktop を選択します
左下の アプリケーション　を選択すると日本語でメニューが表示されていると思います
firefox を起動してみると英語モードなので、Debian の日本語化については今後の課題とさせていただきます
詳しい方がおられましたら、ぜひ、この続きをよろしくお願いします