I guess I’ll reply to no one specific.
Apart from the not so easily fixable parts like blobs, you can reduce at least some connections to Google via ADB shell.
E.g. these commands change the captive portal connectivity check from Google to another server, in this case the one from German security researcher Mike Kuketz:
- adb shell settings put global captive_portal_http_url http://captiveportal.kuketz.de
- adb shell settings put global captive_portal_https_url https://captiveportal.kuketz.de
- adb shell settings put global captive_portal_fallback_url http://captiveportal.kuketz.de
- adb shell settings put global captive_portal_other_fallback_urls http://captiveportal.kuketz.de
NTP server:
- adb shell settings put global ntp_server [server URL]
Verify via:
- adb shell settings get global [variable from above]
You can also edit the build.prop file and insert DNS settings there, as well as well as adding the NTP server and commenting out any variable referencing Google in the GPS.conf, but I don’t know if there’s any benefit.
You’ll need to adb pull/push the specific file from/to their respective folders.
build.prop:
net.dns1=[DNS IP]
net.dns2=
net.rmnet0.dns1=
net.rmnet0.dns2=
net.wlan0.dns1=
net.wlan0.dns2=
GPS. conf examples:
-
[#] PROXY_APP_PACKAGE_NAME=…
-
NTP_SERVER=[server URL]
All of this needs to be reapplied after each update.
There surely are ways to automate it via compatible recovery menu and a Magisk survival script for example (or any post-boot script), but these exceed my abilities.
At least the first commands can be copied and sent all at once (with line breaks), only the file modifications are a bit tedious.
Also, there isn’t much won by the above, but at least it should work on any OS.