Compare commits
12 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| f712f72a6e | |||
| d45ebbd5d1 | |||
| ce7c416a6f | |||
| 2e610167ac | |||
| d0924fe4ad | |||
| ddcd805d1e | |||
| 057e8b5ef3 | |||
| f21d8f6119 | |||
| c5538ffd5f | |||
| 874c8e9141 | |||
| fbc8bf0ff3 | |||
| 9641f34367 |
@@ -1,22 +1,73 @@
|
||||
### Android Manifests
|
||||
### Device specific configuration to build AOSP Android 12 for Raspberry Pi 4.
|
||||
|
||||
***
|
||||
|
||||
This repo holds manifests per project (except in the common folder) to build Android 17 for all supported devices that PawletOS targets.
|
||||
NOTE: Raspberry Vanilla `android-12.1` branch is no longer maintained. Consider using newer AOSP versions.
|
||||
|
||||
### How to build:
|
||||
|
||||
1. Establish [Android build environment](https://source.android.com/setup/initializing) and install [repo](https://source.android.com/docs/setup/develop#installing-repo).
|
||||
|
||||
2. Install additional packages:
|
||||
|
||||
```
|
||||
sudo apt-get install bc coreutils dosfstools e2fsprogs fdisk kpartx mtools ninja-build pkg-config python3-pip
|
||||
sudo pip3 install meson mako jinja2 ply pyyaml
|
||||
```
|
||||
|
||||
3. Initialize repo:
|
||||
|
||||
```
|
||||
repo init -u https://android.googlesource.com/platform/manifest -b android-12.1.0_r22
|
||||
curl -o .repo/local_manifests/manifest_brcm_rpi4.xml -L https://raw.githubusercontent.com/raspberry-vanilla/android_local_manifest/android-12.1/manifest_brcm_rpi4.xml --create-dirs
|
||||
```
|
||||
|
||||
Or optionally, you can reduce download size by creating a shallow clone and removing unneeded projects:
|
||||
|
||||
```
|
||||
repo init -u https://android.googlesource.com/platform/manifest -b android-12.1.0_r22 --depth=1
|
||||
curl -o .repo/local_manifests/manifest_brcm_rpi4.xml -L https://raw.githubusercontent.com/raspberry-vanilla/android_local_manifest/android-12.1/manifest_brcm_rpi4.xml --create-dirs
|
||||
curl -o .repo/local_manifests/remove_projects.xml -L https://raw.githubusercontent.com/raspberry-vanilla/android_local_manifest/android-12.1/remove_projects.xml
|
||||
```
|
||||
|
||||
4. Sync source code:
|
||||
|
||||
```
|
||||
repo sync
|
||||
```
|
||||
|
||||
5. Compile:
|
||||
|
||||
```
|
||||
. build/envsetup.sh
|
||||
lunch aosp_rpi4-userdebug
|
||||
make bootimage systemimage vendorimage -j$(nproc)
|
||||
```
|
||||
|
||||
6. Make flashable image:
|
||||
|
||||
```
|
||||
./rpi4-mkimg.sh
|
||||
```
|
||||
|
||||
Also look into [Linux kernel build instructions](https://github.com/raspberry-vanilla/android_kernel_manifest/tree/android-12.1).
|
||||
|
||||
***
|
||||
|
||||
### Setup
|
||||
### Issues:
|
||||
|
||||
1. Install [`repo`](https://source.android.com/docs/setup/download#installing-repo).
|
||||
2. Establish an [Android build environment](https://source.android.com/docs/setup/start/requirements).
|
||||
|
||||
Each target below has its own build instructions (additional tools, repo init steps, lunch targets, etc).
|
||||
- [Android](https://github.com/raspberry-vanilla/android_local_manifest/issues)
|
||||
- [Linux kernel](https://github.com/raspberry-vanilla/android_kernel_manifest/issues)
|
||||
|
||||
***
|
||||
|
||||
### Supported targets
|
||||
### Wiki:
|
||||
|
||||
| Target | Description |
|
||||
|---|---|
|
||||
| [rpi](rpi/) | Raspberry Pi 4 and Raspberry Pi 5 |
|
||||
- [Audio](https://github.com/raspberry-vanilla/android_local_manifest/wiki/Audio)
|
||||
- [DSI display](https://github.com/raspberry-vanilla/android_local_manifest/wiki/DSI-display)
|
||||
- [HDMI display](https://github.com/raspberry-vanilla/android_local_manifest/wiki/HDMI-display)
|
||||
- [HDMI-CEC](https://github.com/raspberry-vanilla/android_local_manifest/wiki/HDMI-CEC)
|
||||
- [Interfaces](https://github.com/raspberry-vanilla/android_local_manifest/wiki/Interfaces)
|
||||
- [USB boot](https://github.com/raspberry-vanilla/android_local_manifest/wiki/USB-boot)
|
||||
- [Utilities](https://github.com/raspberry-vanilla/android_local_manifest/wiki/Utilities)
|
||||
- [Video decoding & encoding](https://github.com/raspberry-vanilla/android_local_manifest/wiki/Video-decoding-&-encoding)
|
||||
|
||||
@@ -1,69 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<manifest>
|
||||
<!-- Remotes -->
|
||||
<remote name="github" fetch="https://github.com/" />
|
||||
<remote name="oxmc_git" fetch="https://git.oxmc.me/" />
|
||||
<remote name="aosp_git" fetch="https://android.googlesource.com" />
|
||||
|
||||
<!-- PawletOS Overlays -->
|
||||
<project path="vendor/pawlet/fonts/ArcticonsSans" name="PawletOS/fonts_ArcticonsSans" remote="oxmc_git" revision="main" />
|
||||
|
||||
<!-- Framework API Extensions -->
|
||||
<project path="vendor/pawlet/frameworks/pawlet" name="PawletOS/frameworks_pawlet" remote="oxmc_git" revision="main" />
|
||||
|
||||
<!-- TWRP Recovery — disabled until TWRP supports Android 16 (latest upstream is android-14.1).
|
||||
<remove-project name="platform/bootable/recovery" />
|
||||
<project path="bootable/recovery" name="PawletOS/android_bootable_recovery" remote="oxmc_git" revision="twrp-11" />
|
||||
<project path="vendor/pawlet/twrp_recovery" name="PawletOS/twrp_recovery" remote="oxmc_git" revision="android-16" />
|
||||
<project path="vendor/twrp" name="PawletOS/android_vendor_twrp" remote="oxmc_git" revision="android-14.1" />
|
||||
-->
|
||||
|
||||
<!-- Vendor (HALs, system apps, etc.) -->
|
||||
<project path="vendor/pawlet" name="PawletOS/android_vendor_pawlet" remote="oxmc_git" revision="android-17.0" />
|
||||
|
||||
<!-- Patches (applied post-sync by PawletOS-Build/environ.py) -->
|
||||
<project path="vendor/pawlet/patches" name="PawletOS/patches" remote="oxmc_git" revision="android-16.0" />
|
||||
|
||||
<!-- update_engine: LineageOS fork commented out until OTA implementation is finalised.
|
||||
LineageOS fork (lineage-22.2) targets Android 15 — build compatibility with Android 16
|
||||
is unverified and the LineageOS-specific patches (OTA server format, signing) are not
|
||||
yet needed for PawletOS. Re-enable once PawletUpdater OTA flow is implemented and
|
||||
the fork is validated against Android 16, or a lineage-23+ branch is available.
|
||||
<remove-project name="platform/system/update_engine" />
|
||||
<project path="system/update_engine" name="LineageOS/android_system_update_engine" remote="github" revision="lineage-22.2" />
|
||||
-->
|
||||
|
||||
<!-- First party apps -->
|
||||
<project path="packages/apps/Updater" name="PawletOS/android_packages_apps_Updater" remote="oxmc_git" revision="android-17.0" />
|
||||
<project path="packages/apps/SetupWizard" name="PawletOS/android_packages_apps_SetupWizard" remote="oxmc_git" revision="android-16.0" />
|
||||
<project path="packages/apps/ConfigProvisioner" name="PawletOS/app_ConfigProvisioner" remote="oxmc_git" revision="main" />
|
||||
<project path="packages/apps/PawletSettings" name="PawletOS/app_PawletSettings" remote="oxmc_git" revision="main" />
|
||||
<project path="packages/apps/BgUpd" name="PawletOS/android_packages_apps_BgUpd" remote="oxmc_git" revision="android-17.0" />
|
||||
|
||||
<!-- MicroG -->
|
||||
<project path="vendor/partner_gms" name="PawletOS/vendor_partner_gms" remote="oxmc_git" revision="master" />
|
||||
|
||||
<!-- Prebuilt libraries (managed by maven-to-lib; revision = artifact version) -->
|
||||
<project path="prebuilts/application_libs/accompanist" name="PawletOS/prebuilt_libs_accompanist" remote="oxmc_git" revision="0.37.3" />
|
||||
<project path="prebuilts/application_libs/coil" name="PawletOS/prebuilt_libs_coil" remote="oxmc_git" revision="3.5.0" />
|
||||
<project path="prebuilts/application_libs/commons" name="PawletOS/prebuilt_libs_commons" remote="oxmc_git" revision="3.20.0" />
|
||||
<project path="prebuilts/application_libs/glide" name="PawletOS/prebuilt_libs_glide" remote="oxmc_git" revision="5.0.7" />
|
||||
<project path="prebuilts/application_libs/jsoup" name="PawletOS/prebuilt_libs_jsoup" remote="oxmc_git" revision="1.22.2" />
|
||||
<project path="prebuilts/application_libs/koin" name="PawletOS/prebuilt_libs_koin" remote="oxmc_git" revision="4.2.2" />
|
||||
<project path="prebuilts/application_libs/kotlinx-serialization" name="PawletOS/prebuilt_libs_kotlinx-serialization" remote="oxmc_git" revision="1.11.0" />
|
||||
<project path="prebuilts/application_libs/ktor" name="PawletOS/prebuilt_libs_ktor" remote="oxmc_git" revision="3.5.0" />
|
||||
<project path="prebuilts/application_libs/lottie" name="PawletOS/prebuilt_libs_lottie" remote="oxmc_git" revision="6.7.1" />
|
||||
<project path="prebuilts/application_libs/moshi" name="PawletOS/prebuilt_libs_moshi" remote="oxmc_git" revision="1.15.2" />
|
||||
<project path="prebuilts/application_libs/okhttp" name="PawletOS/prebuilt_libs_okhttp" remote="oxmc_git" revision="5.4.0" />
|
||||
<project path="prebuilts/application_libs/okio" name="PawletOS/prebuilt_libs_okio" remote="oxmc_git" revision="3.17.0" />
|
||||
<project path="prebuilts/application_libs/retrofit" name="PawletOS/prebuilt_libs_retrofit" remote="oxmc_git" revision="3.0.0" />
|
||||
<project path="prebuilts/application_libs/timber" name="PawletOS/prebuilt_libs_timber" remote="oxmc_git" revision="5.0.1" />
|
||||
<project path="prebuilts/application_libs/zxing" name="PawletOS/prebuilt_libs_zxing" remote="oxmc_git" revision="3.5.4" />
|
||||
<!-- Custom prebuilt libraries (not managed by maven-to-lib) -->
|
||||
<project path="prebuilts/application_libs/androiddeviceinfo" name="PawletOS/prebuilt_libs_androiddeviceinfo" remote="oxmc_git" revision="android-16.0" />
|
||||
|
||||
<!-- Third party apps -->
|
||||
<project path="vendor/Lawnchair/LawnchairLauncher" name="PawletOS/prebuilt_lawnchair" remote="oxmc_git" revision="android-16.0" />
|
||||
<project path="vendor/vivaldi/VivaldiBrowser" name="PawletOS/prebuilt_VivaldiBrowser" remote="oxmc_git" revision="main" />
|
||||
<project path="vendor/floris/Florisboard" name="PawletOS/prebuilt_Florisboard" remote="oxmc_git" revision="main" />
|
||||
</manifest>
|
||||
@@ -1,28 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<manifest>
|
||||
<remove-project name="device/amlogic/yukawa" />
|
||||
<remove-project name="device/amlogic/yukawa-kernel" />
|
||||
<remove-project name="device/google/common/etm" />
|
||||
<remove-project name="device/google/contexthub" />
|
||||
<remove-project name="device/google/trout" />
|
||||
<remove-project name="device/linaro/dragonboard" />
|
||||
<remove-project name="device/linaro/dragonboard-kernel" />
|
||||
<remove-project name="device/linaro/hikey" />
|
||||
<remove-project name="device/linaro/hikey-kernel" />
|
||||
<remove-project name="platform/hardware/invensense" />
|
||||
<remove-project name="platform/hardware/nxp/keymint" />
|
||||
<remove-project name="platform/hardware/nxp/nfc" />
|
||||
<remove-project name="platform/hardware/nxp/nxp_mcu_loader" />
|
||||
<remove-project name="platform/hardware/nxp/uwb" />
|
||||
<remove-project name="platform/hardware/nxp/secure_element" />
|
||||
<remove-project name="platform/hardware/nxp/weaver" />
|
||||
<remove-project name="platform/hardware/qcom/wlan" />
|
||||
<remove-project name="platform/hardware/st/secure_element" />
|
||||
<remove-project name="platform/hardware/st/secure_element2" />
|
||||
<remove-project name="platform/hardware/samsung/nfc" />
|
||||
<remove-project name="platform/hardware/synaptics/wlan" />
|
||||
<remove-project name="platform/hardware/telink/atv/refDesignRcu" />
|
||||
<remove-project name="platform/hardware/ti/am57x" />
|
||||
<remove-project name="platform/prebuilts/clang/host/darwin-x86" />
|
||||
<remove-project name="platform/prebuilts/go/darwin-x86" />
|
||||
</manifest>
|
||||
Vendored
-13
@@ -1,13 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<manifest>
|
||||
<!-- Webview Patches -->
|
||||
<remove-project name="platform/external/chromium-webview" />
|
||||
<project path="external/chromium-webview/patches" name="LineageOS/android_external_chromium-webview_patches" remote="github" revision="main" >
|
||||
<linkfile src="os_pickup.bp" dest="external/chromium-webview/Android.bp" />
|
||||
<linkfile src="README" dest="external/chromium-webview/README" />
|
||||
</project>
|
||||
<project path="external/chromium-webview/prebuilt/arm" name="LineageOS/android_external_chromium-webview_prebuilt_arm" remote="github" revision="main" />
|
||||
<project path="external/chromium-webview/prebuilt/arm64" name="LineageOS/android_external_chromium-webview_prebuilt_arm64" remote="github" revision="main" />
|
||||
<!--<project path="external/chromium-webview/prebuilt/x86" name="LineageOS/android_external_chromium-webview_prebuilt_x86" remote="github" revision="main" />
|
||||
<project path="external/chromium-webview/prebuilt/x86_64" name="LineageOS/android_external_chromium-webview_prebuilt_x86_64" remote="github" revision="main" />-->
|
||||
</manifest>
|
||||
@@ -0,0 +1,67 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<manifest>
|
||||
<remote name="github" fetch="https://github.com/" />
|
||||
|
||||
<!-- Raspberry Pi -->
|
||||
<project path="device/brcm/rpi4" name="raspberry-vanilla/android_device_brcm_rpi4" remote="github" revision="android-12.1" >
|
||||
<linkfile src="mkimg.sh" dest="rpi4-mkimg.sh" />
|
||||
</project>
|
||||
<project path="device/brcm/rpi4-kernel" name="raspberry-vanilla/android_device_brcm_rpi4-kernel" remote="github" revision="android-12.1" />
|
||||
<project path="vendor/brcm" name="raspberry-vanilla/proprietary_vendor_brcm" remote="github" revision="android-12.1" />
|
||||
|
||||
<!-- Audio -->
|
||||
<project path="external/alsa-lib" name="raspberry-vanilla/android_external_alsa-lib" remote="github" revision="android-12.1" />
|
||||
<project path="external/alsa-utils" name="raspberry-vanilla/android_external_alsa-utils" remote="github" revision="android-12.1" />
|
||||
|
||||
<!-- Bluetooth -->
|
||||
<remove-project name="platform/hardware/interfaces" />
|
||||
<project path="hardware/interfaces" name="raspberry-vanilla/android_hardware_interfaces" remote="github" revision="android-12.1" />
|
||||
|
||||
<!-- Build -->
|
||||
<remove-project name="platform/build" />
|
||||
<remove-project name="platform/build/soong" />
|
||||
<project path="build/make" name="raspberry-vanilla/android_build" remote="github" revision="android-12.1" >
|
||||
<copyfile src="core/root.mk" dest="Makefile" />
|
||||
<linkfile src="CleanSpec.mk" dest="build/CleanSpec.mk" />
|
||||
<linkfile src="buildspec.mk.default" dest="build/buildspec.mk.default" />
|
||||
<linkfile src="core" dest="build/core" />
|
||||
<linkfile src="envsetup.sh" dest="build/envsetup.sh" />
|
||||
<linkfile src="target" dest="build/target" />
|
||||
<linkfile src="tools" dest="build/tools" />
|
||||
</project>
|
||||
<project path="build/soong" name="raspberry-vanilla/android_build_soong" remote="github" revision="android-12.1" >
|
||||
<linkfile src="root.bp" dest="Android.bp" />
|
||||
<linkfile src="bootstrap.bash" dest="bootstrap.bash" />
|
||||
</project>
|
||||
|
||||
<!-- Camera -->
|
||||
<project path="external/boost" name="raspberry-vanilla/android_external_boost" remote="github" revision="android-12.1" />
|
||||
<project path="external/libcamera" name="raspberry-vanilla/android_external_libcamera" remote="github" revision="android-12.1" />
|
||||
<project path="external/libyaml" name="raspberry-vanilla/android_external_libyaml" remote="github" revision="android-12.1" />
|
||||
<project path="external/libyuv_chromium" name="raspberry-vanilla/android_external_libyuv_chromium" remote="github" revision="android-12.1" />
|
||||
|
||||
<!-- FFmpeg -->
|
||||
<project path="external/ffmpeg" name="raspberry-vanilla/android_external_ffmpeg" remote="github" revision="android-12.1" />
|
||||
<project path="external/ffmpeg_codec2" name="raspberry-vanilla/android_external_ffmpeg_codec2" remote="github" revision="android-12.1" />
|
||||
<project path="external/libdav1d" name="raspberry-vanilla/android_external_libdav1d" remote="github" revision="android-12.1" />
|
||||
<project path="external/libudev-zero" name="raspberry-vanilla/android_external_libudev-zero" remote="github" revision="android-12.1" />
|
||||
|
||||
<!-- Graphics -->
|
||||
<remove-project name="platform/external/drm_hwcomposer" />
|
||||
<remove-project name="platform/external/libdrm" />
|
||||
<remove-project name="platform/external/mesa3d" />
|
||||
<remove-project name="platform/external/minigbm" />
|
||||
<project path="external/drm_hwcomposer" name="raspberry-vanilla/android_external_drm_hwcomposer" remote="github" revision="android-12.1" />
|
||||
<project path="external/libdrm" name="raspberry-vanilla/android_external_libdrm" remote="github" revision="android-12.1" />
|
||||
<project path="external/mesa3d" name="raspberry-vanilla/android_external_mesa3d" remote="github" revision="android-12.1" />
|
||||
<project path="external/minigbm" name="raspberry-vanilla/android_external_minigbm" remote="github" revision="android-12.1" />
|
||||
|
||||
<!-- v4l2_codec2 -->
|
||||
<remove-project name="platform/external/v4l2_codec2" />
|
||||
<project path="external/v4l2_codec2" name="raspberry-vanilla/android_external_v4l2_codec2" remote="github" revision="android-12.1" />
|
||||
|
||||
<!-- Wifi -->
|
||||
<remove-project name="platform/packages/modules/Wifi" />
|
||||
<project path="packages/modules/Wifi" name="raspberry-vanilla/android_packages_modules_Wifi" remote="github" revision="android-12.1" />
|
||||
|
||||
</manifest>
|
||||
@@ -0,0 +1,99 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<manifest>
|
||||
<remove-project name="device/amlogic/yukawa" />
|
||||
<remove-project name="device/amlogic/yukawa-kernel" />
|
||||
<remove-project name="device/google/barbet" />
|
||||
<remove-project name="device/google/barbet-kernel" />
|
||||
<remove-project name="device/google/barbet-sepolicy" />
|
||||
<remove-project name="device/google/bonito" />
|
||||
<remove-project name="device/google/bonito-kernel" />
|
||||
<remove-project name="device/google/bonito-sepolicy" />
|
||||
<remove-project name="device/google/bramble" />
|
||||
<remove-project name="device/google/bramble-sepolicy" />
|
||||
<remove-project name="device/google/contexthub" />
|
||||
<remove-project name="device/google/coral" />
|
||||
<remove-project name="device/google/coral-kernel" />
|
||||
<remove-project name="device/google/coral-sepolicy" />
|
||||
<remove-project name="device/google/gs101" />
|
||||
<remove-project name="device/google/gs101-sepolicy" />
|
||||
<remove-project name="device/google/gs-common" />
|
||||
<remove-project name="device/google/raviole" />
|
||||
<remove-project name="device/google/raviole-kernel" />
|
||||
<remove-project name="device/google/redbull" />
|
||||
<remove-project name="device/google/redbull-kernel" />
|
||||
<remove-project name="device/google/redbull-sepolicy" />
|
||||
<remove-project name="device/google/redfin" />
|
||||
<remove-project name="device/google/redfin-sepolicy" />
|
||||
<remove-project name="device/google/sunfish" />
|
||||
<remove-project name="device/google/sunfish-kernel" />
|
||||
<remove-project name="device/google/sunfish-sepolicy" />
|
||||
<remove-project name="device/google/crosshatch" />
|
||||
<remove-project name="device/google/crosshatch-kernel" />
|
||||
<remove-project name="device/google/crosshatch-sepolicy" />
|
||||
<remove-project name="device/google/fuchsia" />
|
||||
<remove-project name="device/google/trout" />
|
||||
<remove-project name="device/linaro/dragonboard" />
|
||||
<remove-project name="device/linaro/dragonboard-kernel" />
|
||||
<remove-project name="device/linaro/hikey" />
|
||||
<remove-project name="device/linaro/hikey-kernel" />
|
||||
<remove-project name="device/linaro/poplar" />
|
||||
<remove-project name="device/linaro/poplar-kernel" />
|
||||
<remove-project name="device/mediatek/wembley-sepolicy" />
|
||||
<remove-project name="device/ti/beagle-x15" />
|
||||
<remove-project name="device/ti/beagle-x15-kernel" />
|
||||
<remove-project name="platform/hardware/invensense" />
|
||||
<remove-project name="platform/hardware/knowles/athletico/sound_trigger_hal" />
|
||||
<remove-project name="platform/hardware/nxp/nfc" />
|
||||
<remove-project name="platform/hardware/nxp/secure_element" />
|
||||
<remove-project name="platform/hardware/qcom/audio" />
|
||||
<remove-project name="platform/hardware/qcom/bootctrl" />
|
||||
<remove-project name="platform/hardware/qcom/bt" />
|
||||
<remove-project name="platform/hardware/qcom/camera" />
|
||||
<remove-project name="platform/hardware/qcom/data/ipacfg-mgr" />
|
||||
<remove-project name="platform/hardware/qcom/display" />
|
||||
<remove-project name="platform/hardware/qcom/gps" />
|
||||
<remove-project name="platform/hardware/qcom/keymaster" />
|
||||
<remove-project name="platform/hardware/qcom/media" />
|
||||
<remove-project name="platform/hardware/qcom/msm8960" />
|
||||
<remove-project name="platform/hardware/qcom/msm8994" />
|
||||
<remove-project name="platform/hardware/qcom/msm8996" />
|
||||
<remove-project name="platform/hardware/qcom/msm8x09" />
|
||||
<remove-project name="platform/hardware/qcom/msm8x26" />
|
||||
<remove-project name="platform/hardware/qcom/msm8x27" />
|
||||
<remove-project name="platform/hardware/qcom/msm8x84" />
|
||||
<remove-project name="platform/hardware/qcom/power" />
|
||||
<remove-project name="platform/hardware/qcom/sdm845/bt" />
|
||||
<remove-project name="platform/hardware/qcom/sdm845/data/ipacfg-mgr" />
|
||||
<remove-project name="platform/hardware/qcom/sdm845/display" />
|
||||
<remove-project name="platform/hardware/qcom/sdm845/gps" />
|
||||
<remove-project name="platform/hardware/qcom/sdm845/media" />
|
||||
<remove-project name="platform/hardware/qcom/sdm845/thermal" />
|
||||
<remove-project name="platform/hardware/qcom/sdm845/vr" />
|
||||
<remove-project name="platform/hardware/qcom/sm7150/gps" />
|
||||
<remove-project name="platform/hardware/qcom/sm7250/display" />
|
||||
<remove-project name="platform/hardware/qcom/sm7250/gps" />
|
||||
<remove-project name="platform/hardware/qcom/sm7250/media" />
|
||||
<remove-project name="platform/hardware/qcom/sm8150/data/ipacfg-mgr" />
|
||||
<remove-project name="platform/hardware/qcom/sm8150/display" />
|
||||
<remove-project name="platform/hardware/qcom/sm8150/gps" />
|
||||
<remove-project name="platform/hardware/qcom/sm8150/media" />
|
||||
<remove-project name="platform/hardware/qcom/sm8150/thermal" />
|
||||
<remove-project name="platform/hardware/qcom/sm8150/vr" />
|
||||
<remove-project name="platform/hardware/qcom/sm8150p/gps" />
|
||||
<remove-project name="platform/hardware/qcom/wlan" />
|
||||
<remove-project name="platform/hardware/st/nfc" />
|
||||
<remove-project name="platform/hardware/st/secure_element" />
|
||||
<remove-project name="platform/hardware/st/secure_element2" />
|
||||
<remove-project name="platform/hardware/samsung/nfc" />
|
||||
<remove-project name="platform/hardware/ti/am57x" />
|
||||
<remove-project name="platform/prebuilts/bazel/darwin-x86_64" />
|
||||
<remove-project name="platform/prebuilts/clang/host/darwin-x86" />
|
||||
<remove-project name="platform/prebuilts/fuchsia_sdk" />
|
||||
<remove-project name="platform/prebuilts/gcc/darwin-x86/aarch64/aarch64-linux-android-4.9" />
|
||||
<remove-project name="platform/prebuilts/gcc/darwin-x86/arm/arm-linux-androideabi-4.9" />
|
||||
<remove-project name="platform/prebuilts/gcc/darwin-x86/host/i686-apple-darwin-4.2.1" />
|
||||
<remove-project name="platform/prebuilts/gcc/darwin-x86/x86/x86_64-linux-android-4.9" />
|
||||
<remove-project name="platform/prebuilts/gdb/darwin-x86" />
|
||||
<remove-project name="platform/prebuilts/go/darwin-x86" />
|
||||
<remove-project name="platform/prebuilts/python/darwin-x86/2.7.5" />
|
||||
</manifest>
|
||||
@@ -1,88 +0,0 @@
|
||||
### Device specific configuration to build AOSP Android 17 (android-17.0.0_r1) for Raspberry Pi 4 and Raspberry Pi 5.
|
||||
Based on [RaspberryVanilla](https://github.com/raspberry-vanilla).
|
||||
|
||||
***
|
||||
|
||||
### How to build (Ubuntu Server 26.04 LTS):
|
||||
|
||||
After setting up the [Android build environment](../README.md#setup), do:
|
||||
|
||||
1. Install additional packages:
|
||||
|
||||
```
|
||||
sudo apt-get install dosfstools e2fsprogs gdisk kpartx mtools rsync
|
||||
```
|
||||
|
||||
2. Clone [PawletOS-Build](https://git.oxmc.me/PawletOS/PawletOS-Build) and install its dependencies:
|
||||
|
||||
```
|
||||
git clone https://git.oxmc.me/PawletOS/PawletOS-Build
|
||||
cd PawletOS-Build
|
||||
pip3 install -r requirements.txt
|
||||
```
|
||||
|
||||
3. Download the `repo.yml` config for this target:
|
||||
|
||||
```
|
||||
curl -o repo.yml -L https://git.oxmc.me/PawletOS/android_local_manifest/raw/branch/android-17.0/rpi/repo.yml
|
||||
```
|
||||
|
||||
Or optionally, to reduce download size with a shallow clone:
|
||||
|
||||
```
|
||||
curl -o repo.yml -L https://git.oxmc.me/PawletOS/android_local_manifest/raw/branch/android-17.0/rpi/repo-shallow.yml
|
||||
```
|
||||
|
||||
4. Run the build script (clones source and syncs it based on `repo.yml`):
|
||||
|
||||
```
|
||||
python3 ./environ.py --applyPatches
|
||||
```
|
||||
|
||||
5. source the environment:
|
||||
|
||||
```
|
||||
. AOSP-Source/build/envsetup.sh
|
||||
```
|
||||
|
||||
6. Select the device (`rpi4` or `rpi5`) and build target (normal, `tablet` for tablet, `tv` for Android TV, or `car` for Android Automotive):
|
||||
|
||||
```
|
||||
lunch pawlet_rpi4-cp2a-userdebug
|
||||
```
|
||||
```
|
||||
lunch pawlet_rpi4_tablet-cp2a-userdebug
|
||||
```
|
||||
```
|
||||
lunch pawlet_rpi4_tv-cp2a-userdebug
|
||||
```
|
||||
```
|
||||
lunch pawlet_rpi4_car-cp2a-userdebug
|
||||
```
|
||||
```
|
||||
lunch pawlet_rpi5-cp2a-userdebug
|
||||
```
|
||||
```
|
||||
lunch pawlet_rpi5_tablet-cp2a-userdebug
|
||||
```
|
||||
```
|
||||
lunch pawlet_rpi5_tv-cp2a-userdebug
|
||||
```
|
||||
```
|
||||
lunch pawlet_rpi5_car-cp2a-userdebug
|
||||
```
|
||||
|
||||
7. Compile:
|
||||
|
||||
```
|
||||
make bootimage systemimage systemextimage vendorimage productimage -j$(nproc)
|
||||
```
|
||||
|
||||
8. Make flashable image for the device (`rpi4` or `rpi5`):
|
||||
|
||||
```
|
||||
./rpi4-mkimg.sh
|
||||
```
|
||||
```
|
||||
./rpi5-mkimg.sh
|
||||
```
|
||||
@@ -1,13 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<manifest>
|
||||
<!-- PawletOS devices -->
|
||||
<project path="device/pawlet/rpi" name="PawletOS/pawlet_rpi_common" remote="oxmc_git" revision="android-16.0" />
|
||||
<project path="device/pawlet/rpi4" name="PawletOS/pawlet_rpi4" remote="oxmc_git" revision="android-16.0">
|
||||
<linkfile src="mkimg.sh" dest="rpi4-mkimg.sh" />
|
||||
<linkfile src="wrimg.sh" dest="rpi4-wrimg.sh" />
|
||||
</project>
|
||||
<project path="device/pawlet/rpi5" name="PawletOS/pawlet_rpi5" remote="oxmc_git" revision="android-16.0">
|
||||
<linkfile src="mkimg.sh" dest="rpi5-mkimg.sh" />
|
||||
<linkfile src="wrimg.sh" dest="rpi5-wrimg.sh" />
|
||||
</project>
|
||||
</manifest>
|
||||
@@ -1,17 +0,0 @@
|
||||
# Android 17.0.0_r1 local manifest for PawletOS on Raspberry Pi
|
||||
repo:
|
||||
url: "https://android.googlesource.com/platform/manifest"
|
||||
branch: "android-17.0.0_r1"
|
||||
options:
|
||||
- "--depth=1"
|
||||
local_manifests:
|
||||
manifest_common_pawletos: "https://git.oxmc.me/PawletOS/android_local_manifest/raw/branch/android-17.0/common/pawletos.xml"
|
||||
manifest_brcm_rpi: "https://git.oxmc.me/PawletOS/android_local_manifest/raw/branch/android-17.0/rpi/vendor/brcm_rpi.xml"
|
||||
manifest_lineageos: "https://git.oxmc.me/PawletOS/android_local_manifest/raw/branch/android-17.0/common/vendor/lineageos.xml"
|
||||
manifest_pawletos: "https://git.oxmc.me/PawletOS/android_local_manifest/raw/branch/android-17.0/rpi/pawletos.xml"
|
||||
remove_projects:
|
||||
- "https://git.oxmc.me/PawletOS/android_local_manifest/raw/branch/android-17.0/common/remove_projects.xml"
|
||||
|
||||
patches:
|
||||
dirs:
|
||||
- vendor/pawlet/patches
|
||||
@@ -1,13 +0,0 @@
|
||||
# Android 17.0.0_r1 local manifest for PawletOS on Raspberry Pi
|
||||
repo:
|
||||
url: "https://android.googlesource.com/platform/manifest"
|
||||
branch: "android-17.0.0_r1"
|
||||
local_manifests:
|
||||
manifest_common_pawletos: "https://git.oxmc.me/PawletOS/android_local_manifest/raw/branch/android-17.0/common/pawletos.xml"
|
||||
manifest_brcm_rpi: "https://git.oxmc.me/PawletOS/android_local_manifest/raw/branch/android-17.0/rpi/vendor/brcm_rpi.xml"
|
||||
manifest_lineageos: "https://git.oxmc.me/PawletOS/android_local_manifest/raw/branch/android-17.0/common/vendor/lineageos.xml"
|
||||
manifest_pawletos: "https://git.oxmc.me/PawletOS/android_local_manifest/raw/branch/android-17.0/rpi/pawletos.xml"
|
||||
|
||||
patches:
|
||||
dirs:
|
||||
- vendor/pawlet/patches
|
||||
Vendored
-61
@@ -1,61 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<manifest>
|
||||
<!-- Raspberry Pi -->
|
||||
<project path="device/brcm/rpi4-kernel" name="raspberry-vanilla/android_device_brcm_rpi4-kernel" remote="github" revision="android-16.0" />
|
||||
<project path="device/brcm/rpi5-kernel" name="raspberry-vanilla/android_device_brcm_rpi5-kernel" remote="github" revision="android-16.0" />
|
||||
<project path="vendor/brcm" name="raspberry-vanilla/proprietary_vendor_brcm" remote="github" revision="android-16.0" />
|
||||
|
||||
<!-- Raspberry Pi utils -->
|
||||
<!--<project path="external/raspberrypi-utils" name="raspberry-vanilla/android_external_raspberrypi-utils" remote="github" revision="android-16.0" />-->
|
||||
|
||||
<!-- Audio -->
|
||||
<project path="external/alsa-lib" name="raspberry-vanilla/android_external_alsa-lib" remote="github" revision="android-16.0" />
|
||||
<project path="external/alsa-utils" name="raspberry-vanilla/android_external_alsa-utils" remote="github" revision="android-16.0" />
|
||||
|
||||
<!-- Build -->
|
||||
<remove-project name="platform/build" />
|
||||
<remove-project name="platform/build/soong" />
|
||||
<project path="build/make" name="raspberry-vanilla/android_build" remote="github" revision="android-16.0" >
|
||||
<linkfile src="CleanSpec.mk" dest="build/CleanSpec.mk" />
|
||||
<linkfile src="buildspec.mk.default" dest="build/buildspec.mk.default" />
|
||||
<linkfile src="core" dest="build/core" />
|
||||
<linkfile src="envsetup.sh" dest="build/envsetup.sh" />
|
||||
<linkfile src="target" dest="build/target" />
|
||||
<linkfile src="tools" dest="build/tools" />
|
||||
</project>
|
||||
<project path="build/soong" name="raspberry-vanilla/android_build_soong" remote="github" revision="android-16.0" >
|
||||
<linkfile src="root.bp" dest="Android.bp" />
|
||||
<linkfile src="bootstrap.bash" dest="bootstrap.bash" />
|
||||
</project>
|
||||
|
||||
<!-- Camera -->
|
||||
<remove-project name="platform/external/libcamera" />
|
||||
<project path="external/libcamera" name="PawletOS/external_libcamera" remote="oxmc_git" revision="android-17.0" />
|
||||
<project path="external/libpisp" name="raspberry-vanilla/android_external_libpisp" remote="github" revision="android-16.0" />
|
||||
<project path="external/libyuv_chromium" name="raspberry-vanilla/android_external_libyuv_chromium" remote="github" revision="android-16.0" />
|
||||
|
||||
<!-- FFmpeg -->
|
||||
<remove-project name="platform/external/libudev-zero" />
|
||||
<project path="external/ffmpeg" name="raspberry-vanilla/android_external_ffmpeg" remote="github" revision="android-16.0" />
|
||||
<project path="external/ffmpeg_codec2" name="raspberry-vanilla/android_external_ffmpeg_codec2" remote="github" revision="android-16.0" />
|
||||
<project path="external/libudev-zero" name="PawletOS/external_libudev-zero" remote="oxmc_git" revision="android-17.0" />
|
||||
|
||||
<!-- Graphics -->
|
||||
<remove-project name="platform/external/drm_hwcomposer" />
|
||||
<remove-project name="platform/external/minigbm" />
|
||||
<project path="external/drm_hwcomposer" name="raspberry-vanilla/android_external_drm_hwcomposer" remote="github" revision="android-16.0" />
|
||||
<project path="external/mesa3d-rpi" name="raspberry-vanilla/android_external_mesa3d-rpi" remote="github" revision="android-16.0" />
|
||||
<project path="external/minigbm" name="raspberry-vanilla/android_external_minigbm" remote="github" revision="android-16.0" />
|
||||
|
||||
<!-- ninja-to-soong -->
|
||||
<remove-project name="platform/external/rust/ninja-to-soong" />
|
||||
<project path="external/rust/ninja-to-soong" name="raspberry-vanilla/android_external_rust_ninja-to-soong" remote="github" revision="android-16.0" />
|
||||
|
||||
<!-- v4l2_codec2 -->
|
||||
<remove-project name="platform/external/v4l2_codec2" />
|
||||
<project path="external/v4l2_codec2" name="raspberry-vanilla/android_external_v4l2_codec2" remote="github" revision="android-16.0" />
|
||||
|
||||
<!-- V4L utils -->
|
||||
<!--<remove-project name="platform/external/v4l-utils" />
|
||||
<project path="external/v4l-utils" name="raspberry-vanilla/android_external_v4l-utils" remote="github" revision="android-16.0" />-->
|
||||
</manifest>
|
||||
Reference in New Issue
Block a user