I'm the lead developer of GrapheneOS.

The default connections made by GrapheneOS are entirely documented at https://grapheneos.org/faq#default-connections. No connections to Google are made by default. This is not the result of purging connections from the source code. It's very close to the default state of the Android Open Source Project. Google services are implemented as part of Google Play services.

The only way that you would get the impression that there are many connections to Google in the source code is if you look at the test cases, sample code and unused functionality that's not enabled by default.

Once you've inserted a SIM card and started using a carrier, there will also be connections for supporting the carriers. Some of those carriers use Google services themselves regardless of which device or OS you choose to run.

> Just to name a few: SUPL, WebRTC probing, automatic previews of YouTube in the Messenger, Google maps lookups in Dialer and in Photos, myriad connectivity checks, etc.

No SUPL connections are made by GrapheneOS on the supported devices. SUPL is carrier-dependent. The connections are made by the radio based on the carrier configuration. Using Google's service is one of the options. This is part of location services and isn't enabled by default. It's required by regulations to have support for it when making emergency calls, but not beyond that. The configuration is fully in our control. We haven't chosen how we want to approach carriers without their own setup for it. It does have to use something in that case, just like the fallback DNS servers, particularly since this needs to work for emergency calls. Which implementation would you prefer to have as the fallback?

The connectivity checks use our servers by default. It is opt-in to use the standard servers to blend in with other devices. That is needed to avoid being trivially identified as a GrapheneOS user to the network, which is why we offer it as an option and document it in https://grapheneos.org/faq#default-connections.

The rest of this is inaccurate too. You're mixing talking about the Android Open Source Project with Google apps and Play services which are not included in it. You're also referring to test cases, sample code and unused code including in AOSP sample apps and the substantial amounts of the source tree that are present for development or opt-in inclusion. Only a fraction of the source tree is actually used to build the OS. The source tree is also used for the SDK and a bunch of SDK packages among other things. You cannot simply search for a URL in the source code and make the assumption that it implies there is a connection to Google in the OS. That's not how it works.

> After going down this rabbit hole, it became clear to me the only way to win is to not play. If the Pine64 ecosystem gets to the point of working as well as the Linux desktop (been daily driving some KDE on top of GNU/Linux for 10+ years, with only one major issue due to buggy drivers), it will be one of the very few ways to ensure your phone is not making unwanted data transfers to Apple and Google's servers.

Pine64 is a hardware company. You can run an Android Open Source Project derivative just as you can run an OS not based on the Android Open Source Project on another device.

As a final note, I would like to point that the user ThenAsNow has a clear history of spreading misinformation and dishonest claims about GrapheneOS on this website. They have made false claims about the focus and goals of the project, along with presenting many objectively untrue facts about it. They've made attacks on the developers. I'm quite curious what their username is elsewhere because this kind of duplicitous behavior and attempt to undermine the project with misinformation is definitely not acceptable for someone supposedly participating in our community. They have repeatedly made these false and baseless claims on multiple occasions. They claim to have done research and worked on it but at most they've glanced around at the source code and made incorrect assumptions about it.