[16] GSI
To start, make a new folder for the checkout. Then, in that folder, run:
repo init -u https://gitlab.com/CalyxOS/platform_manifest -b staging/android16 --git-lfs
After that, create the .repo/local_manifests folder, and add this for now:
.repo/local_manifests/generic16.xml
<?xml version="1.0" encoding="UTF-8"?>
<manifest>
<!-- Removed projects for cuttlefish/GSI build -->
<!-- temporarily, until Android.mk issue is fixed -->
<remove-project name="CalyxOS/platform_external_google_talkback" />
<!-- all non-AOSP device repos -->
<remove-project name="CalyxOS/device_google_akita" />
<remove-project name="device/google/akita-kernels/6.1" />
<remove-project name="CalyxOS/device_google_akita-sepolicy" />
<remove-project name="device/google/bluejay-kernels/6.1" />
<remove-project name="CalyxOS/device_google_bluejay" />
<remove-project name="CalyxOS/device_google_bluejay-sepolicy" />
<remove-project name="CalyxOS/device_google_caiman" />
<remove-project name="CalyxOS/device_google_caimito" />
<remove-project name="device/google/caimito-kernels/6.1" />
<remove-project name="CalyxOS/device_google_caimito-sepolicy" />
<remove-project name="CalyxOS/device_google_cheetah" />
<remove-project name="CalyxOS/device_google_comet" />
<remove-project name="device/google/comet-kernels/6.1" />
<remove-project name="CalyxOS/device_google_comet-sepolicy" />
<remove-project name="CalyxOS/device_google_felix" />
<remove-project name="device/google/felix-kernels/6.1" />
<remove-project name="CalyxOS/device_google_felix-sepolicy" />
<remove-project name="CalyxOS/device_google_gearhead" />
<remove-project name="CalyxOS/device_google_gs101" />
<remove-project name="CalyxOS/device_google_gs101-sepolicy" />
<remove-project name="CalyxOS/device_google_gs201" />
<remove-project name="CalyxOS/device_google_gs201-sepolicy" />
<remove-project name="CalyxOS/device_google_gs-common" />
<remove-project name="CalyxOS/device_google_husky" />
<remove-project name="CalyxOS/device_google_komodo" />
<remove-project name="CalyxOS/device_google_lynx" />
<remove-project name="device/google/lynx-kernels/6.1" />
<remove-project name="CalyxOS/device_google_lynx-sepolicy" />
<remove-project name="CalyxOS/device_google_oriole" />
<remove-project name="CalyxOS/device_google_pantah" />
<remove-project name="device/google/pantah-kernels/6.1" />
<remove-project name="CalyxOS/device_google_pantah-sepolicy" />
<remove-project name="CalyxOS/device_google_panther" />
<remove-project name="CalyxOS/device_google_raven" />
<remove-project name="CalyxOS/device_google_raviole" />
<remove-project name="device/google/raviole-kernels/6.1" />
<remove-project name="CalyxOS/device_google_shiba" />
<remove-project name="CalyxOS/device_google_shusky" />
<remove-project name="device/google/shusky-kernels/6.1" />
<remove-project name="CalyxOS/device_google_shusky-sepolicy" />
<remove-project name="CalyxOS/device_google_tangorpro" />
<remove-project name="device/google/tangorpro-kernels/6.1" />
<remove-project name="CalyxOS/device_google_tangorpro-sepolicy" />
<remove-project name="CalyxOS/device_google_tokay" />
<remove-project name="CalyxOS/device_google_zuma" />
<remove-project name="CalyxOS/device_google_zumapro" />
<remove-project name="CalyxOS/device_google_zumapro-sepolicy" />
<remove-project name="CalyxOS/device_google_zuma-sepolicy" />
</manifest>
To sync and pick the latest in-development CalyxOS changes for 16:
repo sync -j6 # or set -j6 to a number of threads, or remove it
repopick -p -t baklava
To build:
source build/envsetup.sh
lunch calyx_gsi_arm64-bp2a-userdebug
m -k0
To use:
- If the device is a Google Pixel, install the latest version of stock Android (16) available for the device. If another device, optionally install the latest version of stock Android available for the device. Do not lock the bootloader; if it got locked during this, be sure to unlock it.
- Flash the generic system image using the commands that follow.
fastboot flash --disable-verification vbmeta vbmeta.img
fastboot reboot fastboot
fastboot erase system
fastboot flash system system.img
fastboot -w
fastboot reboot
If you receive errors about space, you may need to make room by deleting some unused partitions from stock, e.g.:
fastboot delete-logical-partition product_a
Reference: https://source.android.com/docs/core/tests/vts/gsi#flashing-gsis
Edited by t-m-w