add an option to exclude the TWRP app

* Allow device maintainer to exclude the twrp app and disable
   the installation prompt. Mostly the app is useless for
   every unofficially supported devices.

 * BoardConfig flag: 'TW_EXCLUDE_TWRPAPP := true'

Original commit: https://gerrit.omnirom.org/#/c/android_bootable_recovery/+/27694/

Change-Id: I0aa1fb2ebe03ceb19c766178544039a82497cdd4
This commit is contained in:
nailyk-fr
2021-11-02 15:18:05 +02:00
committed by Konsta
parent c0228607f3
commit e6b2d9fa71
6 changed files with 30 additions and 16 deletions
+3
View File
@@ -391,6 +391,9 @@ endif
ifeq ($(TW_EXCLUDE_NANO), true)
LOCAL_CFLAGS += -DTW_EXCLUDE_NANO
endif
ifeq ($(TW_EXCLUDE_TWRPAPP), true)
LOCAL_CFLAGS += -DTW_EXCLUDE_TWRPAPP
endif
LOCAL_C_INCLUDES += system/vold \
+4
View File
@@ -934,11 +934,15 @@ void DataManager::SetDefaultValues()
mConst.SetValue("tw_app_installed_in_system", "0");
#else
mConst.SetValue("tw_oem_build", "0");
#ifdef TW_EXCLUDE_TWRPAPP
mConst.SetValue("tw_app_prompt", "-1");
#else
mPersist.SetValue("tw_app_prompt", "1");
mPersist.SetValue("tw_app_install_system", "1");
mData.SetValue("tw_app_install_status", "0"); // 0 = no status, 1 = not installed, 2 = already installed
mData.SetValue("tw_app_installed_in_system", "0");
#endif
#endif
#ifndef TW_EXCLUDE_NANO
mConst.SetValue("tw_include_nano", "1");
#else
+2
View File
@@ -2997,6 +2997,7 @@
</listbox>
<button style="main_button">
<condition var1="tw_app_prompt" op="!=" var2="-1"/>
<condition var1="tw_app_install_status" var2="1"/>
<placement x="%center_x%" y="%row12_y%"/>
<text>{@reboot_install_app_hdr=Install TWRP App}</text>
@@ -3783,6 +3784,7 @@
</actions>
</listitem>
<listitem name="{@reboot_install_app_hdr=Install TWRP App}">
<condition var1="tw_app_prompt" op="!=" var2="-1"/>
<condition var1="tw_app_install_status" var2="1"/>
<actions>
<action function="set">tw_back=advanced</action>
+2
View File
@@ -3191,6 +3191,7 @@
</button>
<button style="main_button_half_height">
<condition var1="tw_app_prompt" op="!=" var2="-1"/>
<condition var1="tw_app_install_status" var2="1"/>
<placement x="%indent%" y="%row22_y%"/>
<text>{@reboot_install_app_hdr=Install TWRP App}</text>
@@ -3905,6 +3906,7 @@
</actions>
</listitem>
<listitem name="{@reboot_install_app_hdr=Install TWRP App}">
<condition var1="tw_app_prompt" op="!=" var2="-1"/>
<condition var1="tw_app_install_status" var2="1"/>
<actions>
<action function="set">tw_back=advanced</action>
+1
View File
@@ -4384,6 +4384,7 @@
</actions>
</listitem>
<listitem name="{@reboot_install_app_hdr=Install TWRP App}">
<condition var1="tw_app_prompt" op="!=" var2="-1"/>
<condition var1="tw_app_install_status" var2="1"/>
<actions>
<action function="set">tw_back=advanced2</action>
+18 -16
View File
@@ -495,23 +495,25 @@ ifeq ($(TW_USE_TOOLBOX), true)
include $(BUILD_PREBUILT)
endif
#TWRP App "placeholder"
include $(CLEAR_VARS)
LOCAL_MODULE := me.twrp.twrpapp.apk
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE_CLASS := EXECUTABLES
LOCAL_MODULE_PATH := $(TARGET_RECOVERY_ROOT_OUT)/system/bin
LOCAL_SRC_FILES := $(LOCAL_MODULE)
include $(BUILD_PREBUILT)
ifneq ($(TW_EXCLUDE_TWRPAPP),true)
#TWRP App "placeholder"
include $(CLEAR_VARS)
LOCAL_MODULE := me.twrp.twrpapp.apk
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE_CLASS := EXECUTABLES
LOCAL_MODULE_PATH := $(TARGET_RECOVERY_ROOT_OUT)/system/bin
LOCAL_SRC_FILES := $(LOCAL_MODULE)
include $(BUILD_PREBUILT)
#TWRP App permissions for Android 9+
include $(CLEAR_VARS)
LOCAL_MODULE := privapp-permissions-twrpapp.xml
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE_CLASS := EXECUTABLES
LOCAL_MODULE_PATH := $(TARGET_RECOVERY_ROOT_OUT)/system/bin
LOCAL_SRC_FILES := $(LOCAL_MODULE)
include $(BUILD_PREBUILT)
#TWRP App permissions for Android 9+
include $(CLEAR_VARS)
LOCAL_MODULE := privapp-permissions-twrpapp.xml
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE_CLASS := EXECUTABLES
LOCAL_MODULE_PATH := $(TARGET_RECOVERY_ROOT_OUT)/system/bin
LOCAL_SRC_FILES := $(LOCAL_MODULE)
include $(BUILD_PREBUILT)
endif
ifeq ($(TW_INCLUDE_CRYPTO), true)
ifneq ($(TW_CRYPTO_USE_SYSTEM_VOLD),)