RescueParty's aggressive approach to error recovery almost never helps with the problems we're likely to face, and its risk of data loss is far too high. Force-disable it entirely and remove all other conditions, especially those that depend on data integrity in the first place, to reduce the risk of RescueParty triggering falsely and causing data loss. Note that it is still possible to force-enable RescueParty for testing purposes using the persist.sys.enable_rescue property.
323 lines
8.9 KiB
Makefile
323 lines
8.9 KiB
Makefile
# Allow vendor/extra to override any property by setting it first
|
|
$(call inherit-product-if-exists, vendor/extra/product.mk)
|
|
$(call inherit-product, vendor/lineage/config/evolution.mk)
|
|
$(call inherit-product, vendor/extras/evolution.mk)
|
|
|
|
# Allow vendor prebuilt repos to exclude themselves from bp scanning
|
|
-include $(sort $(wildcard vendor/*/*/exclude-bp.mk))
|
|
|
|
# Pixel additions
|
|
ifeq ($(WITH_GMS),true)
|
|
$(call inherit-product, vendor/google/overlays/ThemeIcons/config.mk)
|
|
$(call inherit-product, vendor/pixel-framework/config.mk)
|
|
$(call inherit-product, vendor/pixel-style/config/common.mk)
|
|
|
|
# Don't dexpreopt prebuilts. (For GMS).
|
|
DONT_DEXPREOPT_PREBUILTS := true
|
|
endif
|
|
|
|
PRODUCT_BRAND ?= EvolutionX
|
|
|
|
ifeq ($(PRODUCT_GMS_CLIENTID_BASE),)
|
|
PRODUCT_SYSTEM_DEFAULT_PROPERTIES += \
|
|
ro.com.google.clientidbase=android-google
|
|
else
|
|
PRODUCT_SYSTEM_DEFAULT_PROPERTIES += \
|
|
ro.com.google.clientidbase=$(PRODUCT_GMS_CLIENTID_BASE)
|
|
endif
|
|
|
|
ifeq ($(PRODUCT_IS_ATV),true)
|
|
ifeq ($(PRODUCT_ATV_CLIENTID_BASE),)
|
|
PRODUCT_SYSTEM_DEFAULT_PROPERTIES += \
|
|
ro.oem.key1=ATV00100020
|
|
else
|
|
PRODUCT_SYSTEM_DEFAULT_PROPERTIES += \
|
|
ro.oem.key1=$(PRODUCT_ATV_CLIENTID_BASE)
|
|
endif
|
|
endif
|
|
|
|
ifeq ($(TARGET_BUILD_VARIANT),eng)
|
|
# Disable ADB authentication
|
|
PRODUCT_SYSTEM_DEFAULT_PROPERTIES += ro.adb.secure=0
|
|
else
|
|
ifdef WITH_ADB_INSECURE
|
|
# Forcebly disable ADB authentication
|
|
PRODUCT_SYSTEM_DEFAULT_PROPERTIES += ro.adb.secure=0
|
|
else
|
|
# Enable ADB authentication
|
|
PRODUCT_SYSTEM_DEFAULT_PROPERTIES += ro.adb.secure=1
|
|
|
|
# Set ro.debuggable=0 for userdebug
|
|
PRODUCT_NOT_DEBUGGABLE_IN_USERDEBUG := true
|
|
endif
|
|
|
|
# Disable extra StrictMode features on all non-engineering builds
|
|
PRODUCT_SYSTEM_DEFAULT_PROPERTIES += persist.sys.strictmode.disable=true
|
|
endif
|
|
|
|
# Backup Tool
|
|
PRODUCT_COPY_FILES += \
|
|
vendor/lineage/prebuilt/common/bin/backuptool.sh:install/bin/backuptool.sh \
|
|
vendor/lineage/prebuilt/common/bin/backuptool.functions:install/bin/backuptool.functions \
|
|
vendor/lineage/prebuilt/common/bin/50-lineage.sh:$(TARGET_COPY_OUT_SYSTEM)/addon.d/50-lineage.sh
|
|
|
|
PRODUCT_ARTIFACT_PATH_REQUIREMENT_ALLOWED_LIST += \
|
|
system/addon.d/50-lineage.sh
|
|
|
|
ifneq ($(strip $(AB_OTA_PARTITIONS) $(AB_OTA_POSTINSTALL_CONFIG)),)
|
|
PRODUCT_COPY_FILES += \
|
|
vendor/lineage/prebuilt/common/bin/backuptool_ab.sh:$(TARGET_COPY_OUT_SYSTEM)/bin/backuptool_ab.sh \
|
|
vendor/lineage/prebuilt/common/bin/backuptool_ab.functions:$(TARGET_COPY_OUT_SYSTEM)/bin/backuptool_ab.functions \
|
|
vendor/lineage/prebuilt/common/bin/backuptool_postinstall.sh:$(TARGET_COPY_OUT_SYSTEM)/bin/backuptool_postinstall.sh
|
|
|
|
PRODUCT_ARTIFACT_PATH_REQUIREMENT_ALLOWED_LIST += \
|
|
system/bin/backuptool_ab.sh \
|
|
system/bin/backuptool_ab.functions \
|
|
system/bin/backuptool_postinstall.sh
|
|
|
|
PRODUCT_SYSTEM_DEFAULT_PROPERTIES += \
|
|
ro.ota.allow_downgrade=true
|
|
endif
|
|
|
|
# Lineage-specific broadcast actions whitelist
|
|
PRODUCT_COPY_FILES += \
|
|
vendor/lineage/config/permissions/lineage-sysconfig.xml:$(TARGET_COPY_OUT_PRODUCT)/etc/sysconfig/lineage-sysconfig.xml
|
|
|
|
# Lineage-specific init rc file
|
|
PRODUCT_COPY_FILES += \
|
|
vendor/lineage/prebuilt/common/etc/init/init.lineage-system_ext.rc:$(TARGET_COPY_OUT_SYSTEM_EXT)/etc/init/init.lineage-system_ext.rc
|
|
|
|
# Enable SIP+VoIP on all targets
|
|
PRODUCT_COPY_FILES += \
|
|
frameworks/native/data/etc/android.software.sip.voip.xml:$(TARGET_COPY_OUT_PRODUCT)/etc/permissions/android.software.sip.voip.xml
|
|
|
|
# Credential storage
|
|
PRODUCT_PACKAGES += \
|
|
android.software.credentials.prebuilt.xml
|
|
|
|
# Enable wireless Xbox 360 controller support
|
|
PRODUCT_COPY_FILES += \
|
|
frameworks/base/data/keyboards/Vendor_045e_Product_028e.kl:$(TARGET_COPY_OUT_PRODUCT)/usr/keylayout/Vendor_045e_Product_0719.kl
|
|
|
|
# Component overrides
|
|
PRODUCT_PACKAGES += \
|
|
lineage-component-overrides.xml
|
|
|
|
# This is Lineage!
|
|
PRODUCT_COPY_FILES += \
|
|
vendor/lineage/config/permissions/org.lineageos.android.xml:$(TARGET_COPY_OUT_PRODUCT)/etc/permissions/org.lineageos.android.xml
|
|
|
|
# Enable transitional log for Privileged permissions
|
|
PRODUCT_PRODUCT_PROPERTIES += \
|
|
ro.control_privapp_permissions=log
|
|
|
|
ifneq ($(TARGET_DISABLE_LINEAGE_SDK), true)
|
|
# Lineage SDK
|
|
include vendor/lineage/config/lineage_sdk_common.mk
|
|
endif
|
|
|
|
# Do not include art debug targets
|
|
PRODUCT_ART_TARGET_INCLUDE_DEBUG_BUILD := false
|
|
|
|
# Strip the local variable table and the local variable type table to reduce
|
|
# the size of the system image. This has no bearing on stack traces, but will
|
|
# leave less information available via JDWP.
|
|
PRODUCT_MINIMIZE_JAVA_DEBUG_INFO := true
|
|
|
|
# Enable whole-program R8 Java optimizations for SystemUI and system_server,
|
|
# but also allow explicit overriding for testing and development.
|
|
SYSTEM_OPTIMIZE_JAVA ?= true
|
|
SYSTEMUI_OPTIMIZE_JAVA ?= true
|
|
|
|
# Disable vendor restrictions
|
|
PRODUCT_RESTRICT_VENDOR_FILES := false
|
|
|
|
ifneq ($(TARGET_DISABLE_EPPE),true)
|
|
# Require all requested packages to exist
|
|
$(call enforce-product-packages-exist-internal,$(lastword $(_include_stack)),product_manifest.xml rild Calendar android.hidl.memory@1.0-impl.vendor vndk_apex_snapshot_package)
|
|
endif
|
|
|
|
# Bootanimation
|
|
TARGET_INCLUDE_BOOT_ANIMATIONS ?= true
|
|
ifeq ($(TARGET_INCLUDE_BOOT_ANIMATIONS),true)
|
|
include vendor/lineage/bootanimation/prebuilts/prebuilts.mk
|
|
endif
|
|
TARGET_SCREEN_WIDTH ?= 1080
|
|
TARGET_SCREEN_HEIGHT ?= 1920
|
|
PRODUCT_PACKAGES += \
|
|
bootanimation.zip
|
|
|
|
# Lineage packages
|
|
ifeq ($(PRODUCT_IS_ATV),)
|
|
PRODUCT_PACKAGES += \
|
|
ExactCalculator \
|
|
Jelly
|
|
endif
|
|
|
|
ifeq ($(PRODUCT_IS_AUTOMOTIVE),)
|
|
PRODUCT_PACKAGES += \
|
|
LineageParts \
|
|
LineageSetupWizard
|
|
endif
|
|
|
|
PRODUCT_PACKAGES += \
|
|
LineageSettingsProvider
|
|
|
|
PRODUCT_COPY_FILES += \
|
|
vendor/lineage/prebuilt/common/etc/init/init.lineage-updater.rc:$(TARGET_COPY_OUT_SYSTEM_EXT)/etc/init/init.lineage-updater.rc
|
|
|
|
# Config
|
|
PRODUCT_PACKAGES += \
|
|
SimpleSettingsConfig
|
|
|
|
# Disable default frame rate limit for games
|
|
PRODUCT_PRODUCT_PROPERTIES += \
|
|
debug.graphics.game_default_frame_rate.disabled=true
|
|
|
|
# Disable RescueParty due to high risk of data loss
|
|
PRODUCT_PRODUCT_PROPERTIES += \
|
|
persist.sys.disable_rescue=true
|
|
|
|
# Extra tools in Lineage
|
|
PRODUCT_PACKAGES += \
|
|
bash \
|
|
curl \
|
|
getcap \
|
|
htop \
|
|
nano \
|
|
setcap \
|
|
vim
|
|
|
|
PRODUCT_PACKAGES += \
|
|
nano_recovery
|
|
|
|
# LMOFreeForm
|
|
PRODUCT_PACKAGES += \
|
|
LMOFreeform \
|
|
LMOFreeformSidebar
|
|
|
|
PRODUCT_ARTIFACT_PATH_REQUIREMENT_ALLOWED_LIST += \
|
|
system/bin/curl \
|
|
system/bin/getcap \
|
|
system/bin/setcap
|
|
|
|
# Filesystems tools
|
|
PRODUCT_PACKAGES += \
|
|
fsck.ntfs \
|
|
mkfs.ntfs \
|
|
mount.ntfs
|
|
|
|
PRODUCT_ARTIFACT_PATH_REQUIREMENT_ALLOWED_LIST += \
|
|
system/bin/fsck.ntfs \
|
|
system/bin/mkfs.ntfs \
|
|
system/bin/mount.ntfs \
|
|
system/%/libfuse-lite.so \
|
|
system/%/libntfs-3g.so
|
|
|
|
# FRP
|
|
PRODUCT_COPY_FILES += \
|
|
vendor/lineage/prebuilt/common/bin/wipe-frp.sh:$(TARGET_COPY_OUT_RECOVERY)/root/system/bin/wipe-frp
|
|
|
|
# Openssh
|
|
PRODUCT_PACKAGES += \
|
|
scp \
|
|
sftp \
|
|
ssh \
|
|
sshd \
|
|
sshd_config \
|
|
ssh-keygen \
|
|
start-ssh
|
|
|
|
PRODUCT_COPY_FILES += \
|
|
vendor/lineage/prebuilt/common/etc/init/init.openssh.rc:$(TARGET_COPY_OUT_PRODUCT)/etc/init/init.openssh.rc
|
|
|
|
# rsync
|
|
PRODUCT_PACKAGES += \
|
|
rsync
|
|
|
|
ifeq ($(WITH_GMS),false)
|
|
# Storage manager
|
|
PRODUCT_SYSTEM_PROPERTIES += \
|
|
ro.storage_manager.enabled=true
|
|
endif
|
|
|
|
# Default wifi country code
|
|
PRODUCT_SYSTEM_PROPERTIES += \
|
|
ro.boot.wificountrycode?=00
|
|
|
|
# These packages are excluded from user builds
|
|
PRODUCT_PACKAGES_DEBUG += \
|
|
procmem
|
|
|
|
ifneq ($(TARGET_BUILD_VARIANT),user)
|
|
PRODUCT_ARTIFACT_PATH_REQUIREMENT_ALLOWED_LIST += \
|
|
system/bin/procmem
|
|
endif
|
|
|
|
# Root
|
|
PRODUCT_PACKAGES += \
|
|
adb_root
|
|
ifneq ($(TARGET_BUILD_VARIANT),user)
|
|
ifeq ($(WITH_SU),true)
|
|
PRODUCT_PACKAGES += \
|
|
su
|
|
|
|
PRODUCT_ARTIFACT_PATH_REQUIREMENT_ALLOWED_LIST += \
|
|
system/xbin/su
|
|
endif
|
|
endif
|
|
|
|
# SystemUI
|
|
PRODUCT_DEXPREOPT_SPEED_APPS += \
|
|
Launcher3QuickStep \
|
|
Settings \
|
|
CarSystemUI \
|
|
SystemUI
|
|
|
|
PRODUCT_SYSTEM_DEFAULT_PROPERTIES += \
|
|
dalvik.vm.systemuicompilerfilter=speed
|
|
|
|
ifeq ($(TARGET_BUILD_VARIANT),userdebug)
|
|
PRODUCT_SYSTEM_DEFAULT_PROPERTIES += \
|
|
debug.sf.enable_transaction_tracing=false
|
|
endif
|
|
|
|
# Audio files
|
|
$(call inherit-product, vendor/lineage/audio/audio.mk)
|
|
|
|
# SetupWizard
|
|
ifeq ($(WITH_GMS),false)
|
|
PRODUCT_PRODUCT_PROPERTIES += \
|
|
setupwizard.theme=glif_v4 \
|
|
setupwizard.feature.day_night_mode_enabled=true
|
|
endif
|
|
|
|
PRODUCT_ENFORCE_RRO_EXCLUDED_OVERLAYS += vendor/lineage/overlay/no-rro
|
|
PRODUCT_PACKAGE_OVERLAYS += \
|
|
vendor/lineage/overlay/common \
|
|
vendor/lineage/overlay/no-rro
|
|
|
|
PRODUCT_PACKAGES += \
|
|
DocumentsUIOverlay \
|
|
NetworkStackOverlay \
|
|
PermissionControllerOverlay
|
|
|
|
# Translations
|
|
CUSTOM_LOCALES += \
|
|
ast_ES \
|
|
gd_GB \
|
|
cy_GB \
|
|
fur_IT
|
|
|
|
PRODUCT_ENFORCE_RRO_EXCLUDED_OVERLAYS += vendor/crowdin/overlay
|
|
PRODUCT_PACKAGE_OVERLAYS += vendor/crowdin/overlay
|
|
|
|
DEVICE_FRAMEWORK_COMPATIBILITY_MATRIX_FILE += vendor/lineage/config/device_framework_matrix.xml
|
|
|
|
PRODUCT_EXTRA_RECOVERY_KEYS += \
|
|
vendor/lineage/build/target/product/security/lineage
|
|
|
|
include vendor/lineage/config/version.mk
|
|
|
|
-include $(WORKSPACE)/build_env/image-auto-bits.mk
|