# All blocks, sections, and values can be omitted to use the default, unless otherwise specified. # This is an individual device config so the type is "device", which is the default. type: device # Basic device info (REQUIRED) device: # Codename (REQUIRED) name: raven # Vendor name (REQUIRED; typically OEM name, but Pixel devices use google_devices) vendor: google_devices # ROM-related info (REQUIRED) platform: # Path to the AOSP device product makefile (REQUIRED) product_makefile: device/google/raviole/aosp_raven.mk # Soong namespaces to import # No namespaces are necessary on Pixel devices. namespaces: - hardware/google/pixel # All directories containing SELinux policies used for this device sepolicy_dirs: - hardware/google/pixel-sepolicy - device/google/gs101-sepolicy # Config snippets to include. # All snippets are merged together to make the final config. Splitting configs into # logical sections that can be reused across multiple devices is recommended; see # config/pixel/snippets for examples. includes: - snippets/2019.yml # Items to generate or extract from stock. # Unless otherwise specified, all items are enabled by default. # In most cases, this section is unnecessary for Pixel devices. generate: # Resolve overriden build rules into rules to build packages from source overrides: true # Identify apps that should be presigned and automatically mark them accordingly presigned: true # Flatten prebuilt APEX modules. Disabled by default, as this is currently broken flat_apex: false # Extract proprietary files files: true # System properties props: true # Build SELinux policies available in AOSP, included in stock but not built by default sepolicy_dirs: true # Resource overlays for configs, etc. overlays: true # Vendor interface HALs (manifest) vintf: true # Firmware for factory images packages factory_firmware: true # Firmware for OTA packages. Not yet implemented ota_firmware: true # Product targets with the same device name as stock (e.g. aosp_raven -> raven) products: true # Filters for items extracted from stock. # All filter sets have the same format: match, prefix, suffix, substring, regex # Unless otherwise specified, all filter sets are *exclusion* lists, so all items # not matched by the filters will be *included*. # # For all filter sets, only *missing* items (items present in stock images, but # not the AOSP build) will be considered. This means that filters don't have to # be comprehensive in most cases, as many items will be ignored automatically. filters: # System properties (by key, e.g. ro.product.system.device) props: # Whether to include or exclude matched items. Items not matched will have the opposite action # include: Inclusion list (aka whitelist, allowlist) # exclude: Exclusion list (aka blacklist, ignorelist) mode: exclude # Match these specific items match: # Example: match "ro.gfx.angle.supported" - ro.gfx.angle.supported # Match all items with any of these prefixes prefix: # Example: match all items starting with "setupwizard." - setupwizard. # Match all items with any of these suffixes suffix: # Example: match all items ending in ".device" - .device # Match all items containing any of these substrings (case-sensitive) substring: # Example: match all items containing ".boot." - .boot. # Match all items matching any of these regular expressions (regexes) # For performance reasons, you should only use these when necessary. # Wrap regexes with single-quotes to keep special characters intact. regex: # Example: match all items of the format "ro.surface_flinger.*_ms" - '^ro\.surface_flinger\.(?:.*)_ms$' # Example 2: match all items with numbers - '^.*[0-9].*$' # Filter sets below are mostly empty for brevity, as the format is the same for # all filters. # Resource overlay keys # Format: package/OverlayableConfig:type/res_name overlay_keys: match: # Simple example - android:string-array/config_companionDevicePackages # Example with overlayable config # Most packages don't need overlayable config names. Check overlays/[partition].txt for keys - com.android.wifi.resources/WifiCustomization:integer/config_wifi_framework_wifi_score_good_link_speed_5 # Resource overlay values overlay_values: substring: - com.google.android.gms # Resource overlay APK file names (to work around aapt2 parsing bugs) # Only base file name, not full path overlay_files: match: - HbmSVManager__auto_generated_rro_product.apk # Firmware or system partitions to exclude partitions: match: # Don't build vendor - vendor # Exclude modem firmware - modem # Paths of APKs to mark as presigned # Default mode is to *include* these apps in addition to auto-detected ones, unlike most filters presigned: match: - system_ext/priv-app/EuiccSupportPixel/EuiccSupportPixel.apk # Paths of SELinux policies to exclude sepolicy_dirs: match: # Exclude ramdump debugging - hardware/google/pixel-sepolicy/ramdump # Files to include in barebones preparation builds. # Start with an empty list, then add the files necessary to make generate-prep # build successfully with no errors. These are usually dependency libraries for # packages built from source. # # Default mode is to *include* only these files, unlike most filters. # No files are included by default. dep_files: match: - vendor/lib/libOpenCL.so - vendor/lib64/libOpenCL.so # Proprietary files to exclude files: match: - product/framework/libhwinfo.jar