diff --git a/Patches/LineageOS-20.0/android_packages_apps_Settings/0017-OpenEUICC_Toggle.patch b/Patches/LineageOS-20.0/android_packages_apps_Settings/0017-OpenEUICC_Toggle.patch index 72ac9870..4066c784 100644 --- a/Patches/LineageOS-20.0/android_packages_apps_Settings/0017-OpenEUICC_Toggle.patch +++ b/Patches/LineageOS-20.0/android_packages_apps_Settings/0017-OpenEUICC_Toggle.patch @@ -4,6 +4,7 @@ Date: Wed, 20 Apr 2022 01:04:27 -0400 Subject: [PATCH] Add a toggle for OpenEUICC enablement Copy and pasted from the GrapheneOS exec spawning toggle patch +TODO: MOVE OUT OF SECURITY CATEGORY Change-Id: Ibea6ea9bed1c2ae3491f403d9e5c17c1d1c403f1 Signed-off-by: Tad diff --git a/Patches/LineageOS-20.0/android_packages_apps_Settings/0018-CC2_Toggle.patch b/Patches/LineageOS-20.0/android_packages_apps_Settings/0018-CC2_Toggle.patch new file mode 100644 index 00000000..a4f4b8c7 --- /dev/null +++ b/Patches/LineageOS-20.0/android_packages_apps_Settings/0018-CC2_Toggle.patch @@ -0,0 +1,173 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: Tad +Date: Wed, 20 Apr 2022 01:04:27 -0400 +Subject: [PATCH] Add a toggle for CarrierConfig2 enablement + +Copy and pasted from the GrapheneOS exec spawning toggle patch +TODO: MOVE OUT OF SECURITY CATEGORY + +Change-Id: Ibea6ea9bed1c2ae3491f403d9e5c17c1d1c403f1 +Signed-off-by: Tad +--- + res/values/strings.xml | 3 + + res/xml/security_dashboard_settings.xml | 6 + + .../CarrierConfig2PreferenceController.java | 106 ++++++++++++++++++ + .../settings/security/SecuritySettings.java | 1 + + 4 files changed, 116 insertions(+) + create mode 100644 src/com/android/settings/security/CarrierConfig2PreferenceController.java + +diff --git a/res/values/strings.xml b/res/values/strings.xml +index 751f4a4037..d8f4ed191a 100644 +--- a/res/values/strings.xml ++++ b/res/values/strings.xml +@@ -762,6 +762,9 @@ + Enable eUICC management + Enables the OpenEUICC app to allow management of virtual (eSIM) and physical eUICC cards. Reboot required after toggling. + ++ Enable CarrierConfig2 ++ Use a larger Google database instead of the AOSP database for carrier specific configurations. May improve cellular network compatibility & functionality. ++ + + Lock screen when trust is lost + +diff --git a/res/xml/security_dashboard_settings.xml b/res/xml/security_dashboard_settings.xml +index de90cec5bc..d8766ab41a 100644 +--- a/res/xml/security_dashboard_settings.xml ++++ b/res/xml/security_dashboard_settings.xml +@@ -98,6 +98,12 @@ + android:title="@string/openeuicc_title" + android:summary="@string/openeuicc_summary" + android:persistent="false" /> ++ ++ + + + +Date: Tue, 25 Jun 2024 02:39:28 -0400 +Subject: [PATCH] Runtime control of platform carrier config package + +Change-Id: I8cc8f2bda264bd42fe83d5c96fa6382e63a88410 +Signed-off-by: Tavi +--- + src/com/android/phone/CarrierConfigLoader.java | 11 +++++++++-- + 1 file changed, 9 insertions(+), 2 deletions(-) + +diff --git a/src/com/android/phone/CarrierConfigLoader.java b/src/com/android/phone/CarrierConfigLoader.java +index 9a0da4bee..749df35f7 100644 +--- a/src/com/android/phone/CarrierConfigLoader.java ++++ b/src/com/android/phone/CarrierConfigLoader.java +@@ -43,6 +43,7 @@ import android.os.PersistableBundle; + import android.os.Process; + import android.os.RemoteException; + import android.os.ResultReceiver; ++import android.os.SystemProperties; + import android.os.UserHandle; + import android.preference.PreferenceManager; + import android.service.carrier.CarrierIdentifier; +@@ -688,8 +689,14 @@ public class CarrierConfigLoader extends ICarrierConfigLoader.Stub { + /* package */ CarrierConfigLoader(@NonNull Context context, + @NonNull SubscriptionInfoUpdater subscriptionInfoUpdater, @NonNull Looper looper) { + mContext = context; +- mPlatformCarrierConfigPackage = +- mContext.getString(R.string.platform_carrier_config_package); ++ if (SystemProperties.getBoolean("persist.security.carrierconfig2", false)) { ++ mPlatformCarrierConfigPackage = "app.grapheneos.carrierconfig2"; ++ } else { ++ //mPlatformCarrierConfigPackage = "com.android.carrierconfig"; ++ mPlatformCarrierConfigPackage = ++ mContext.getString(R.string.platform_carrier_config_package); ++ } ++ Log.d("CarrierConfigPackageOverride", "Provider: " + mPlatformCarrierConfigPackage); + mHandler = new ConfigHandler(looper); + + IntentFilter systemEventsFilter = new IntentFilter(); diff --git a/Scripts/LineageOS-20.0/Patch.sh b/Scripts/LineageOS-20.0/Patch.sh index ffa93c96..34629edb 100644 --- a/Scripts/LineageOS-20.0/Patch.sh +++ b/Scripts/LineageOS-20.0/Patch.sh @@ -264,6 +264,7 @@ git revert --no-edit 09577521a65e1cef0560a84085fca46b1cf53803; #Fix invisible bu fi; if enterAndClear "packages/apps/CarrierConfig2"; then +awk -i inplace '!/overrides/' Android.bp; #Don't replace CarrierConfig sed -i -e '31,35d;' AndroidManifest.xml; #Fixups rm src/app/grapheneos/carrierconfig2/TestActivity.java src/app/grapheneos/carrierconfig2/loader/CmpTest.java; if [ -d "$DOS_BUILD_BASE"/vendor/divested-carriersettings ]; then sed -i 's|etc/CarrierSettings|etc/CarrierSettings2|' src/app/grapheneos/carrierconfig2/loader/CSettingsDir.java; fi; #Alter the search path @@ -320,6 +321,7 @@ applyPatch "$DOS_PATCHES/android_packages_apps_Settings/0014-LTE_Only_Mode-2.pat applyPatch "$DOS_PATCHES/android_packages_apps_Settings/0015-SUPL_Toggle.patch"; #Add a toggle for forcibly disabling SUPL (GrapheneOS) applyPatch "$DOS_PATCHES/android_packages_apps_Settings/0016-microG_Toggle.patch"; #Add a toggle for microG enablement (heavily based off of a GrapheneOS patch) if [ "$DOS_DEBLOBBER_REMOVE_EUICC_FULL" = false ]; then applyPatch "$DOS_PATCHES/android_packages_apps_Settings/0017-OpenEUICC_Toggle.patch"; fi; #Add a toggle for OpenEUICC enablement (heavily based off of a GrapheneOS patch) +if [ -d "$DOS_BUILD_BASE"/vendor/divested-carriersettings ]; then applyPatch "$DOS_PATCHES/android_packages_apps_Settings/0018-CC2_Toggle.patch"; fi; #Add a toggle for CarrierConfig2 enablement (heavily based off of a GrapheneOS patch) applyPatch "$DOS_PATCHES_COMMON/android_packages_apps_Settings/0001-disable_apps.patch"; #Add an ability to disable non-system apps from the "App info" screen (GrapheneOS) fi; @@ -384,7 +386,7 @@ applyPatch "$DOS_PATCHES/android_packages_providers_DownloadProvider/0001-Networ fi; if enterAndClear "packages/services/Telephony"; then -if [ -d "$DOS_BUILD_BASE"/vendor/divested-carriersettings ]; then sed -i 's|com.android.carrierconfig|app.grapheneos.carrierconfig2|' res/values/config.xml; fi; #Alter the provider +if [ -d "$DOS_BUILD_BASE"/vendor/divested-carriersettings ]; then applyPatch "$DOS_PATCHES/android_packages_services_Telephony/0001-CC2.patch"; fi; #Runtime control of platform carrier config package (DivestOS) fi; @@ -457,7 +459,7 @@ sed -i 's/wifi,cell/internet/' overlay/common/frameworks/base/packages/SystemUI/ sed -i 's|system/etc|$(TARGET_COPY_OUT_PRODUCT)/etc|' divestos.mk; if [ -d "$DOS_BUILD_BASE"/vendor/divested-carriersettings ]; then echo "Including CarrierConfig2 & CarrierSettings2"; -echo "ifneq ($(BOARD_WITHOUT_RADIO),true)" >> divestos.mk; +echo 'ifneq ($(BOARD_WITHOUT_RADIO),true)' >> divestos.mk; echo "PRODUCT_PACKAGES += CarrierConfig2" >> divestos.mk; echo "include vendor/divested-carriersettings/CarrierSettings2.mk" >> divestos.mk; echo "endif" >> divestos.mk;