From 2fb4b7f5f194a8856fa67ef2658bbd76055bebe3 Mon Sep 17 00:00:00 2001 From: Tad Date: Sat, 2 Jun 2018 17:37:21 -0400 Subject: [PATCH] Add option to disable inclusion of microG --- .../LineageOS-14.1/android_vendor_cm/sce-microG.mk | 11 +++++++++++ Patches/LineageOS-14.1/android_vendor_cm/sce.mk | 12 ------------ .../android_vendor_lineage/firmware_deblobber.mk | 2 +- .../android_vendor_lineage/sce-microG.mk | 11 +++++++++++ Patches/LineageOS-15.1/android_vendor_lineage/sce.mk | 12 ------------ Scripts/LineageOS-14.1/00init.sh | 2 ++ Scripts/LineageOS-14.1/Patch.sh | 8 ++++---- Scripts/LineageOS-15.1/00init.sh | 2 ++ Scripts/LineageOS-15.1/Patch.sh | 8 ++++---- TODO | 3 ++- 10 files changed, 37 insertions(+), 34 deletions(-) create mode 100644 Patches/LineageOS-14.1/android_vendor_cm/sce-microG.mk create mode 100644 Patches/LineageOS-15.1/android_vendor_lineage/sce-microG.mk diff --git a/Patches/LineageOS-14.1/android_vendor_cm/sce-microG.mk b/Patches/LineageOS-14.1/android_vendor_cm/sce-microG.mk new file mode 100644 index 00000000..e3e64639 --- /dev/null +++ b/Patches/LineageOS-14.1/android_vendor_cm/sce-microG.mk @@ -0,0 +1,11 @@ +# microG +PRODUCT_PACKAGES += \ + GmsCore \ + GsfProxy \ + FakeStore + +# UnifiedNLP Backends +PRODUCT_PACKAGES += \ + DejaVuNlpBackend \ + IchnaeaNlpBackend \ + NominatimNlpBackend diff --git a/Patches/LineageOS-14.1/android_vendor_cm/sce.mk b/Patches/LineageOS-14.1/android_vendor_cm/sce.mk index c9c94d12..72766cab 100644 --- a/Patches/LineageOS-14.1/android_vendor_cm/sce.mk +++ b/Patches/LineageOS-14.1/android_vendor_cm/sce.mk @@ -1,15 +1,3 @@ -# MicroG -PRODUCT_PACKAGES += \ - GmsCore \ - GsfProxy \ - FakeStore - -# UnifiedNLP Backends -PRODUCT_PACKAGES += \ - DejaVuNlpBackend \ - IchnaeaNlpBackend \ - NominatimNlpBackend - # F-Droid PRODUCT_PACKAGES += \ F-Droid \ diff --git a/Patches/LineageOS-15.1/android_vendor_lineage/firmware_deblobber.mk b/Patches/LineageOS-15.1/android_vendor_lineage/firmware_deblobber.mk index 72d56c95..32350876 100644 --- a/Patches/LineageOS-15.1/android_vendor_lineage/firmware_deblobber.mk +++ b/Patches/LineageOS-15.1/android_vendor_lineage/firmware_deblobber.mk @@ -1,4 +1,4 @@ -FD_PREBUILTS_PATH := vendor/cm/firmware_deblobber +FD_PREBUILTS_PATH := vendor/lineage/firmware_deblobber FD_INSTALL_OUT := $(PRODUCT_OUT)/firmware_deblobber/ FD_INSTALL_TARGET := $(PRODUCT_OUT)/firmware_deblobber-$(TARGET_ARCH).zip diff --git a/Patches/LineageOS-15.1/android_vendor_lineage/sce-microG.mk b/Patches/LineageOS-15.1/android_vendor_lineage/sce-microG.mk new file mode 100644 index 00000000..e3e64639 --- /dev/null +++ b/Patches/LineageOS-15.1/android_vendor_lineage/sce-microG.mk @@ -0,0 +1,11 @@ +# microG +PRODUCT_PACKAGES += \ + GmsCore \ + GsfProxy \ + FakeStore + +# UnifiedNLP Backends +PRODUCT_PACKAGES += \ + DejaVuNlpBackend \ + IchnaeaNlpBackend \ + NominatimNlpBackend diff --git a/Patches/LineageOS-15.1/android_vendor_lineage/sce.mk b/Patches/LineageOS-15.1/android_vendor_lineage/sce.mk index c9c94d12..72766cab 100644 --- a/Patches/LineageOS-15.1/android_vendor_lineage/sce.mk +++ b/Patches/LineageOS-15.1/android_vendor_lineage/sce.mk @@ -1,15 +1,3 @@ -# MicroG -PRODUCT_PACKAGES += \ - GmsCore \ - GsfProxy \ - FakeStore - -# UnifiedNLP Backends -PRODUCT_PACKAGES += \ - DejaVuNlpBackend \ - IchnaeaNlpBackend \ - NominatimNlpBackend - # F-Droid PRODUCT_PACKAGES += \ F-Droid \ diff --git a/Scripts/LineageOS-14.1/00init.sh b/Scripts/LineageOS-14.1/00init.sh index fb96fe3d..45322eac 100644 --- a/Scripts/LineageOS-14.1/00init.sh +++ b/Scripts/LineageOS-14.1/00init.sh @@ -45,6 +45,8 @@ export GRADLE_OPTS="-Xmx2048m"; export NON_COMMERCIAL_USE_PATCHES=false; #Switch to false to prevent inclusion of non-commercial use patches +export MICROG_INCLUDED=true; #Switch to false to prevent inclusion of microG + export MALWARE_SCAN_ENABLED=true; #Set true to perform a fast scan on patchWorkspace() and a through scan on buildAll() export MALWARE_SCAN_SETTING="quick"; #buildAll() scan speed. Options are quick, extra, slow, full diff --git a/Scripts/LineageOS-14.1/Patch.sh b/Scripts/LineageOS-14.1/Patch.sh index e75f83ae..99f72439 100755 --- a/Scripts/LineageOS-14.1/Patch.sh +++ b/Scripts/LineageOS-14.1/Patch.sh @@ -82,8 +82,8 @@ sed -i 's/com.android.messaging/org.smssecure.smssecure/' core/res/res/values/co sed -i 's|db_default_journal_mode" translatable="false">PERSIST|db_default_journal_mode" translatable="false">TRUNCATE|' core/res/res/values/config.xml; #Mirror SQLite secure_delete sed -i 's|config_permissionReviewRequired">false|config_permissionReviewRequired">true|' core/res/res/values/config.xml; patch -p1 < $patches"android_frameworks_base/0001-Reduced_Resolution.patch"; #Allow reducing resolution to save power TODO: Add 800x480 -patch -p1 < $patches"android_frameworks_base/0003-Signature_Spoofing.patch"; #Allow packages to spoof their signature (MicroG) -patch -p1 < $patches"android_frameworks_base/0005-Harden_Sig_Spoofing.patch"; #Restrict signature spoofing to system apps signed with the platform key +if [ "$MICROG_INCLUDED" = true ]; then patch -p1 < $patches"android_frameworks_base/0003-Signature_Spoofing.patch"; fi; #Allow packages to spoof their signature (MicroG) +if [ "$MICROG_INCLUDED" = true ]; then patch -p1 < $patches"android_frameworks_base/0005-Harden_Sig_Spoofing.patch"; fi; #Restrict signature spoofing to system apps signed with the platform key #patch -p1 < $patches"android_frameworks_base/0006-DNS_Cloudflare.patch"; #Switch to Cloudflare DNS patch -p1 < $patches"android_frameworks_base/0006-DNS_OpenNIC.patch"; #Switch to OpenNIC DNS #patch -p1 < $patches"android_frameworks_base/0007-Connectivity.patch"; #Change connectivity check URLs to ours @@ -128,7 +128,6 @@ sed -i 's/\"org\.fdroid\.fdroid/\"org.fdroid.fdroid_dos/' app/src/main/java/org/ enterAndClear "packages/apps/GmsCore"; git submodule update --init --recursive; -sed -i 's|build/outputs/apk/play-services-core-release-unsigned.apk|build/outputs/apk/release/play-services-core-release-unsigned.apk|' Android.mk; enterAndClear "packages/apps/GsfProxy"; sed -i 's/ext.androidBuildVersionTools = "24.0.3"/ext.androidBuildVersionTools = "25.0.3"/' build.gradle; @@ -139,7 +138,7 @@ patch -p1 < $patches"android_packages_apps_PackageInstaller/64d8b44.diff"; #Fix enterAndClear "packages/apps/Settings"; git revert 2ebe6058c546194a301c1fd22963d6be4adbf961; #don't hide oem unlock sed -i 's/private int mPasswordMaxLength = 16;/private int mPasswordMaxLength = 48;/' src/com/android/settings/ChooseLockPassword.java; #Increase max password length -sed -i 's/GSETTINGS_PROVIDER = "com.google.settings";/GSETTINGS_PROVIDER = "com.google.oQuae4av";/' src/com/android/settings/PrivacySettings.java; #MicroG doesn't support Backup, hide the options +if [ "$MICROG_INCLUDED" = true ]; then sed -i 's/GSETTINGS_PROVIDER = "com.google.settings";/GSETTINGS_PROVIDER = "com.google.oQuae4av";/' src/com/android/settings/PrivacySettings.java; fi; #microG doesn't support Backup, hide the options enterAndClear "packages/apps/SetupWizard"; patch -p1 < $patches"android_packages_apps_SetupWizard/0001-Remove_Analytics.patch"; #Remove the rest of CMStats @@ -185,6 +184,7 @@ awk -i inplace '!/PRODUCT_EXTRA_RECOVERY_KEYS/' config/common.mk; #Remove extra awk -i inplace '!/security\/lineage/' config/common.mk; #Remove extra keys patch -p1 < $patches"android_vendor_cm/0001-SCE.patch"; #Include our extras such as MicroG and F-Droid cp $patches"android_vendor_cm/sce.mk" config/sce.mk; +if [ "$MICROG_INCLUDED" = true ]; then echo "include vendor/cm/config/sce-microG.mk" >> config/sce.mk; fi; cp $patches"android_vendor_cm/config.xml" overlay/common/vendor/cmsdk/cm/res/res/values/config.xml; #Per app performance profiles cp -r $patches"android_vendor_cm/firmware_deblobber" .; cp $patches"android_vendor_cm/firmware_deblobber.mk" build/tasks/firmware_deblobber.mk; diff --git a/Scripts/LineageOS-15.1/00init.sh b/Scripts/LineageOS-15.1/00init.sh index 4e395249..70d841ef 100644 --- a/Scripts/LineageOS-15.1/00init.sh +++ b/Scripts/LineageOS-15.1/00init.sh @@ -45,6 +45,8 @@ export GRADLE_OPTS="-Xmx2048m"; export NON_COMMERCIAL_USE_PATCHES=false; #Switch to false to prevent inclusion of non-commercial use patches +export MICROG_INCLUDED=true; #Switch to false to prevent inclusion of microG + export MALWARE_SCAN_ENABLED=true; #Set true to perform a fast scan on patchWorkspace() and a through scan on buildAll() export MALWARE_SCAN_SETTING="quick"; #buildAll() scan speed. Options are quick, extra, slow, full diff --git a/Scripts/LineageOS-15.1/Patch.sh b/Scripts/LineageOS-15.1/Patch.sh index 7bdf5002..34007772 100755 --- a/Scripts/LineageOS-15.1/Patch.sh +++ b/Scripts/LineageOS-15.1/Patch.sh @@ -79,8 +79,8 @@ enterAndClear "frameworks/base"; sed -i 's/DEFAULT_MAX_FILES = 1000;/DEFAULT_MAX_FILES = 0;/' services/core/java/com/android/server/DropBoxManagerService.java; #Disable DropBox sed -i 's/com.android.messaging/org.smssecure.smssecure/' core/res/res/values/config.xml; #Change default SMS app to Silence sed -i 's|config_permissionReviewRequired">false|config_permissionReviewRequired">true|' core/res/res/values/config.xml; -patch -p1 < $patches"android_frameworks_base/0002-Signature_Spoofing.patch"; #Allow packages to spoof their signature (microG) -patch -p1 < $patches"android_frameworks_base/0003-Harden_Sig_Spoofing.patch"; #Restrict signature spoofing to system apps signed with the platform key +if [ "$MICROG_INCLUDED" = true ]; then patch -p1 < $patches"android_frameworks_base/0002-Signature_Spoofing.patch"; fi; #Allow packages to spoof their signature (microG) +if [ "$MICROG_INCLUDED" = true ]; then patch -p1 < $patches"android_frameworks_base/0003-Harden_Sig_Spoofing.patch"; fi; #Restrict signature spoofing to system apps signed with the platform key #patch -p1 < $patches"android_frameworks_base/0004-DNS_Cloudflare.patch"; #Switch to Cloudflare DNS patch -p1 < $patches"android_frameworks_base/0004-DNS_OpenNIC.patch"; #Switch to OpenNIC DNS #patch -p1 < $patches"android_frameworks_base/0005-Connectivity.patch"; #Change connectivity check URLs to ours @@ -124,7 +124,6 @@ sed -i 's/\"org\.fdroid\.fdroid/\"org.fdroid.fdroid_dos/' app/src/main/java/org/ enterAndClear "packages/apps/GmsCore"; git submodule update --init --recursive; -sed -i 's|build/outputs/apk/play-services-core-release-unsigned.apk|build/outputs/apk/release/play-services-core-release-unsigned.apk|' Android.mk; enterAndClear "packages/apps/GsfProxy"; sed -i 's/ext.androidBuildVersionTools = "24.0.3"/ext.androidBuildVersionTools = "25.0.3"/' build.gradle; @@ -141,7 +140,7 @@ patch -p1 < $patches"android_packages_apps_Settings/0002-Remove_Analytics.patch" if [ "$NON_COMMERCIAL_USE_PATCHES" = true ]; then patch -p1 < $patches"android_packages_apps_Settings/Copperhead/0003-Deny_USB.patch"; fi; #Deny USB support (Copperhead CC BY-NC-SA) patch -p1 < $patches"android_packages_apps_Settings/0004-PDB_Fixes.patch"; #Fix crashes when the PersistentDataBlockManager service isn't available sed -i 's/private int mPasswordMaxLength = 16;/private int mPasswordMaxLength = 48;/' src/com/android/settings/password/ChooseLockPassword.java; #Increase max password length -sed -i 's/GSETTINGS_PROVIDER = "com.google.settings";/GSETTINGS_PROVIDER = "com.google.oQuae4av";/' src/com/android/settings/PrivacySettings.java; #MicroG doesn't support Backup, hide the options +if [ "$MICROG_INCLUDED" = true ]; then sed -i 's/GSETTINGS_PROVIDER = "com.google.settings";/GSETTINGS_PROVIDER = "com.google.oQuae4av";/' src/com/android/settings/PrivacySettings.java; fi; #microG doesn't support Backup, hide the options rm res/values/strings.xml.orig; enterAndClear "packages/apps/SetupWizard"; @@ -187,6 +186,7 @@ awk -i inplace '!/PRODUCT_EXTRA_RECOVERY_KEYS/' config/common.mk; #Remove extra awk -i inplace '!/security\/lineage/' config/common.mk; #Remove extra keys patch -p1 < $patches"android_vendor_lineage/0001-SCE.patch"; #Include our extras such as MicroG and F-Droid cp $patches"android_vendor_lineage/sce.mk" config/sce.mk; +if [ "$MICROG_INCLUDED" = true ]; then echo "include vendor/lineage/config/sce-microG.mk" >> config/sce.mk; fi; cp -r $patches"android_vendor_lineage/firmware_deblobber" .; cp $patches"android_vendor_lineage/firmware_deblobber.mk" build/tasks/firmware_deblobber.mk; sed -i 's/LINEAGE_BUILDTYPE := UNOFFICIAL/LINEAGE_BUILDTYPE := dos/' config/common.mk; #Change buildtype diff --git a/TODO b/TODO index 389702ed..9c3008f1 100644 --- a/TODO +++ b/TODO @@ -1,10 +1,11 @@ -Last updated: 2018-05-24 +Last updated: 2018-06-02 High Priority (Release blockers) Build - Automate incremental update generation - Switch HOSTS to release variant - New RSA 4096 signing keys + - Consider removing microG or just keeping UnifiedNLP Project - Create cryptocurrency addresses - Setup Stripe