My experience with GrapheneOS

Switching from iOS to an open source Android ROM.

Apple kinda sucks tbh, and with the tariff- I mean, with the recent price hi-, I mean, with our friendship tradition to donate our money to our betters, I figured it may be a decent time to get a new phone. My iPhone 11 had been coming up on 6 years old, which is honestly a really impressive amount of time to be using a smartphone by today’s standards (which is a little sad), but I had also been growing a bit weary of some of Apple’s restrictions. Namely, the adblocking situation on iOS is really terrible, as the best adblockers (uBlock Origin) are not available for the WebKit rendering engine (which is what Safari) uses. Not a big deal, right? Just install Chrome or Firefox on iOS… except Apple actually forces all browsers published to the App Store to also use WebKit, which is a restriction basically unheard of on any other platform, whether it is Android or even Apple’s own macOS.

But that’s fine, because that restriction is specifically for apps published to the App Store. We can just install from a different source… oh wait, except Apple prevents their users from installing programs outside their App Store unless they live in the EU (I don’t).

You see what the issue is now?

I’ve maintained that if you can’t actually install the programs you want on a device fully capable of running the program, or better yet, an operating system of your choice, because the manufacturer deliberately sets up the device to restrict you from doing so, you aren’t actually the owner of that device. iPhone users, you don’t own your iPhone. Apple does. You’re simply renting it from them for however long they wish to let you use it. That might be forever, or it might be the next ten years. We just don’t know unless we quite literally hack into our own device so we can use it how we want. It’s sad.

What’s even sadder, however, is that other phone manufacturers seem to be taking note of Apple’s terribleness, not with contempt but with envy. For instance, Nokia devices cannot have their bootloaders unlocked whatsoever. Additionally, even buying known good phones like Google’s Pixel line can still be risky if you are getting one used, as some carriers will permanently lock and encrypt the bootloader of the phones they sell, even after being carrier unlocked. Compared to the PC space where installing another OS is a given, even if you may encounter issues, the smartphone space is suffocating.

Still, I managed to eventually buy a Google Pixel 8a, though the first one I bought was a Verizon model with a locked bootloader, so I had to return it. The second one was a Google model and so I was able to easily install GrapheneOS: an open source, privacy-focused distribution of Android. The main advantage I see here over stock Android is protection from Google’s spying: included apps are the open source AOSP utilities instead of the proprietary Google ones, and apps that rely on Google Play Services have those services operate within a protective sandbox, restricting its access to unnecessary data. Cool beans!

The good

Unlike iOS, I am actually able to install app stores of my choice. This is nice as I do not want to use my Google account on my phone. I would prefer Google know as little about me as possible. About half of the apps installed on my phone come from F-Droid: a safe repository of free and open source apps. From here I was able to install things like OsmAnd~ (terrible name, I know), which I use for navigation, Nextcloud, so I can browse files on my server, Immich (though to fix a bug I had to manually install a newer version from FUTO’s GitHub) so I can browse photos on my server, and Proton VPN, so I can hide what websites I am visiting from my ISP (and that is it. VPNs aren’t any safer in terms of website interaction data unless the website you’re visiting is unencrypted HTTP-only). The other apps I installed do come from Google Play, but via a special client called Aurora Store, which lets me install Google Play apps without a Google account. Useful for things like Signal, which are open source but not on F-Droid, as well as proprietary apps like Discord, Uber, and airline apps like Spirit.

Additionally, as I mentioned earlier, there is no OS-level spying to worry about. I can even use precise location services, which do rely on Apple’s location services (not exactly a name I trust all that more than Google), but can be proxied through the GrapheneOS team’s own servers to hide who is sending the request. Neat!

In general my needs for a phone are fairly low. I just want something that lets me text and call securely, can show me maps because I’m awful with directions, and can play music or podcasts. The camera is also fine. But generally outside of that my phone doesn’t get much use anymore, mostly in my attempts to avoid my social media addiction nightmare of the past (though I still keep Discord on my phone, which is kinda sorta a social media). And in these ways my phone provides perfectly fine! But there are a couple snafus I encountered:

The bad

First of all, very minor, but location tracking apps like OwnTracks which often interact with location services will cause the phone to show the green location indicator in the top right corner about every 10 to 30 seconds. This doesn’t really matter that much, especially since I don’t really watch videos on my phone anymore, but it is distracting and that indicator covers up important information like battery life. Apparently many people have complained about this but it doesn’t seem like a high priority for the GrapheneOS devs (though to be fair I’m unsure how much of that indicator is the GrapheneOS devs’ work vs the standard upstream Android project’s work).

Second, some apps are kinda laggy. It’s really weird. It’s not unbearably laggy, more so laggy in the way of “Come on, it’s 2025 and you are still struggling to do this basic task?”. For instance, scrolling through my music library on the Finamp app (I am using a beta version, mind you) is significantly more laggy than it was in the iOS version (could be an issue inherent to the toolkit?). It’s usable but again, this is iPod level functionality. Kind of embarassing. Similarly, on apps like Immich and especially Discord, tapping on a photo to view it can take anywhere from 1 to 3 seconds for the phone to respond. I’m wondering if this is also a toolkit issue or what. Though honestly this is an area I’m not knowledgable enough in to really understand. Regardless, it’s annoying (though for what it’s worth I’ve heard the Discord Android app is rather notoriously bad).

Also, whenever I do video calls through Signal, the selfie camera will crop itself to my face. Apparently this is less a Signal thing and more an OS-level setting, but I can’t figure out how to disable it and it is pretty annoying. It’s probably because I’m just used to it not being cropped; maybe I’ll be fine with it as time goes on.

A big problem I encountered was with Ticketmaster, but I can’t really blame the GrapheneOS devs here because Ticketmaster is a parasite of a company. Recently they started pushing a new technology where mobile tickets are encrypted (and by that they actually mean they are the equivalent of TOTP codes that can be easily extracted with a web browser, but I didn’t know this at the time), and these tickets can only be used if you either have Apple Wallet or Google Wallet. However, other Android ROMs need to be specifically whitelisted by Google to use Google Wallet for some reason I don’t understand, not that I would have used Google Wallet anyway because I’d probably need some account for it. But for those who do rely on Ticketmaster often (in this case I was seeing a Linkin Park concert for the first time in my life: a dream come true), GrapheneOS may give you trouble unless you are able to request a physical ticket from them when placing your order. Though knowing Ticketmaster, they probably make you pay extra for a physical ticket.

Finally, the Private Space feature, while cool, has a bit of jank to it. Namely, you can’t have the same apps installed both to the main part of the phone and the Private Space unless they are the same version, which I wasn’t at all aware of. This made it annoying to download F-Droid because the binary on their website is a slightly older version that auto-updates after installation. I was able to get it working by removing F-Droid from the main part of my phone and then installing it to both the main part and Private Space without opening either until they were both finished.

Conclusion

It Just Works, albeit with a couple minor annoyances. But having something that gives you both more freedom than stock Android and more privacy than iOS is invaluable to me. Apparently stock Android gets supported with security updates for the Pixel 8a until 2031, so hopefully the device will work for at least that long. Though apparently the less secure but still free LineageOS project supports Pixel phones for far longer than their typical expiration date (I think the original Pixel from 2016 is still getting the latest Android updates through LineageOS), so once 2031 rolls around I’ll probably switch to that.

In retrospect I likely would have been fine sticking with my iPhone 11 for another 2 years, but having the assurance that my OS is almost entirely open source software is quite nice for my peace of mind, and not having to deal with dumb App Store restrictions (like the $100/year developer license that deters a lot of open source developers) is also really nice. Still wish phones still had a headphone jack and microSD card slot but I guess there’s nothing I can do except choose the least bad option.

Oh and yeah I bought the Pixel used because why would I ever give Google any money.