Experimental release of GrapheneOS for Pixel 9a
259 comments
·April 13, 2025versluis
strcat
You can use Curve Pay for tap-to-pay on GrapheneOS in most of Europe including in the Netherlands. It also works in the UK, not just the EU. It unfortunately hasn't launched in the US yet.
Some of those banks may also still support using their own tap-to-pay. Europe has a standardized system for it and many banks support it. Check https://privsec.dev/posts/android/banking-applications-compa... for those banks. There was a major shift to using Google Pay to reduce their development costs but there may be a major shift away from it now.
https://grapheneos.org/articles/attestation-compatibility-gu... should be sent to companies banning using GrapheneOS via the Play Integrity API. They can keep doing that while permitting GrapheneOS in a more secure way. Our users recently convinced several banks to implement it. Swissquote implemented it for their Yuh app and will hopefully do it for their main Swissquote app soon. It would be nicer if they didn't add Play Integrity API in the first place but progress can be made if users leave lots of reviews, support requests, etc. until they realize it's a big issue and either remove it or implement this as a replacement.
pshirshov
icard NFC payments also work fine
palata
> All Dutch banks now advertise to install Google pay for wireless payments.
That sounds like a very big mistake to me. And a missed opportunity: in some countries, banked work together to develop their own systems. People can send money to each other and pay everywhere with a small app that is not BigTech from the US.
I think there should be such an app in every country; you don't want your payment system to fully depend on US companies.
sushibowl
Dutch banks did this, it is called iDeal: https://www.ideal.nl/en/
iDeal is ubiquitous in The Netherlands for individuals sending money to each other, and for online payments. However it does not support NFC payments in physical stores. Dutch banks decided to go with Google/Apple wallet for this. I believe in the longer term Wero https://wero-wallet.eu/ (and potentially the digital euro https://www.ecb.europa.eu/euro/digital_euro/html/index.en.ht...) is supposed to take over this usecase in the EU.
palata
That sounds good! Instead of NFC, they could use QR codes. All the payment terminals can show a QR code, and it's even possible to print a QR code on a piece of paper without the need for the terminal.
Twint does that. They started trying to make it "seamless" with NFC, but couldn't do it because of Apple (maybe now with the DMA it may change) and went for some kind of weird bluetooth stuff. Nobody used it. Then they moved to QR codes, and it quickly got very popular.
Everybody understands QR codes. No need to know whether your phone supports NFC or not, no need to go check if NFC is enabled in the settings, nothing. Everybody understands that they need to scan the QR code with their camera, period. Seems perfect to me.
dzikimarian
Banks do that for p2p payments and e-commerce (like iDeal mentioned by sibling comment or BLIK in Poland).
For physical transactions there's barrier of hardware and network effect - everybody has card terminal. Users expect near 100% acceptance for them to use payment method daily.
If you consider creating own NFC payment app instead of Google/Apple Pay - that's actually possible, but more expensive and often disliked by the users due to inability to easily switch between cards issued by different apps.
palata
As mentioned in the sibling comment, Twint goes with QR code. It just works.
It's even better than NFC because a small store can print their QR code on a piece of paper and not need to buy a terminal. Most stores just have the normal card terminal print the QR code and people scan it.
codethief
> If you consider creating own NFC payment app instead of Google/Apple Pay - that's actually possible
Is it? Last time I checked, Apple & Google were also interfacing with banks on the server side, i.e. banks had to integrate with Apple/Google specifically. I'd love to be wrong, though.
argsnd
Generally what you're describing is in countries that don't have widespread adoption of NFC payments. In Europe almost every country has standardised NFC payments so Apple/Google Pay is the most frictionless option for users.
palata
Switzerland (which is not a country that doesn't know how to do banking :-) ) uses Twint (a Swiss app) with QR codes instead of NFC. To me it's better than NFC (it works with printed QR codes, e.g. on parking payment machines).
I don't know anyone in Switzerland using Apple/Google Pay, which IMO is a national success.
nebulous1
I agree, but in this banking apps (around me) use the Integrity API anyway.
hedora
Thanks for doing that. I tried GrapheneOS a few years ago in the states, and the bank thing wasn’t a huge problem (just carry rfid cards because there’s no google pay/apple pay).
The bigger problem came from apps that threw null point exceptions on startup when probing for google play crap.
The following failed for at least one week over a two month period: parkmobile, multiple ev charging networks, uber, lyft, yelp.
Is this still an issue, or are things more reliable these days? (Ignoring the Google integrity stuff.)
I noticed that GrapheneOS got more than 2x Google’s advertised battery life until I installed Google Play Services in a sandbox. Then it dropped to advertised. You might want to add that to your complaint. Halving everyone’s battery life is easily quantified economic damage. (Privacy is more important than bundling $50 of battery, then wasting it, but easier for Google to wave away with big words and doublespeak.)
strcat
> The bigger problem came from apps that threw null point exceptions on startup when probing for google play crap. > > The following failed for at least one week over a two month period: parkmobile, multiple ev charging networks, uber, lyft, yelp. > > Is this still an issue, or are things more reliable these days? (Ignoring the Google integrity stuff.)
These apps have worked reliability since our sandboxed Google Play compatibility layer added support for them in 2021. There wasn't a time period where these apps weren't compatible with GrapheneOS after they initially became supported. That was a problem with your setup, but there's no way to figure out what was wrong at this point. Updating sandboxed Google Play without keeping the OS updated is not supported. If you fell significantly behind on updates but were still getting sandboxed Google Play updates, that would explain why things broke. We sometimes gate those updates. We do keep things working for legacy extended support devices, but whether people are on a fully supported device or a legacy one they're expected to keep the OS updated. We don't keep compatibility with old OS versions indefinitely. Disabling the Network permission for sandboxed Google Play services or sandboxed Google Play Store is another possible cause. Regardless of the cause, that's not at all normal and doesn't reflect a typical experience.
> I noticed that GrapheneOS got more than 2x Google’s advertised battery life until I installed Google Play Services in a sandbox.
GrapheneOS will still tend to get better battery life with the same apps installed by the user unless you install a bunch of other Google apps to match the stock Pixel OS out-of-the-box experience. It's easy to make battery life worse by having multiple push messaging systems running at the same time though. Installing sandboxed Google Play in 2 separate profiles you always keep active could easily have worse battery life than the stock Pixel OS since it's 2 whole separate isolated instances of it vs. the stock Pixel OS having them built into the OS as highly privileged cross-profile system services.
hellcow
The app crashes I found were always due to the additional security hardening features in GrapheneOS. You can toggle these individually for each app.
ulrikrasmussen
Thank you for doing that. Integrity API is fucking evil, and Google has somehow managed to sell it as a security measure even though it is all about taking control away from people and concentrating it at Google.
decide1000
Did you do your complaint at ACM? I want to follow your example
versluis
I did using their website form. It needs to be clear from the complaint that Google is violating fair market principles. They also like details about what exactly is happening and who is affected. That was why they called me after I filed the complaint.
Aachen
I would love to chip in and see if we can get this ball rolling, usually I feel like I'm the only person who cares or files AP/ACM/... complaints and then it's too small beans for them to care. I'd not submit the literal same thing again, but could you share what wording you've used? Specifically in this case I'd also not be sure whether this blocking of Graphene etc. is abuse of market power when there is another option on the market (Apple) and so it's not a monopoly
There's no contact info in your profile so I couldn't reach you. If you don't want to share it here, you could use the email address in my profile
dopidopHN
It’s great. Thanks for doing that. The French concurrence authority would probably love that type of reasoning. Specially now that the US is officially an adversarial entity.
ohgr
I just use contactless cards now. I’m done with tying my financial capability to a third party device. If I want to pay someone directly it’s PayPal family and friends or direct bank transfer.
encom
Yea, I really don't understand how using a phone is any simpler than just tapping my debit card at the terminal. There's no way in hell I'm letting Google anywhere near my personal finances.
dnzm
Using a phone is simpler if all you have on you is your phone, which was my use case when my bank hadn't offloaded their wallet app to gpay. That, and having the phone already in hand for customer/loyalty cards.
So yes, it's handy. Jot handy enough to use gpay for it, of course, but handy nonetheless.
darthrupert
Nfc card payments have a pretty low max limit at least without a pin.
Phone nfc payments do not.
JeremyBarbosa
I was bit confused why this was notable, but the Pixel 9a just released Thursday. So this is an incredibly fast turnaround for a community OS.
tripdout
I think a lot of the work is in new device bringup, and given that they can start from official Pixel trees, it shouldn't be too much work to adapt them for whatever GrapheneOS-specific build processes they have, and then I'm assuming the rest of the GrapheneOS customizations are framework side which should be device agnostic. I guess they could have kernel changes for hardening, but not sure how easy or hard porting those would be - is the Pixel 9 series on a newer kernel version than say the Pixel 8?
strcat
GrapheneOS has various features requiring hardware integration. Our hardening features also uncover bugs across the code especially in drivers, especially the hardware memory tagging integration in our hardened_malloc project and the standard Linux kernel hardware memory tagging support we use in the kernel. Pixels are very similar to each other though so this work is largely but not entirely done for them.
Adding new Pixels including whole new generations tends to be quite easy. When we still supported Snapdragon Pixels in the official GrapheneOS branch, it would have been fairly easy to add support for a theoretical Sony or Motorola device meeting our security requirements (https://grapheneos.org/faq#future-devices). Now that we don't have a Snapdragon device, we'd need to deal with fixing or working around all the bugs uncovered in Snapdragon drivers, integrating support for the USB-C controller into our USB-C port control feature (https://grapheneos.org/features#usb-c-port-and-pogo-pins-con...), adding back our code for coercing Qualcomm XTRA into being privacy respecting, etc. Snapdragon doesn't have memory tagging yet like Tensor (and recent flagship Exynos/MediaTek now), but pretending it did, we'd need to solve a lot of issues uncovered by it unless Qualcomm and the device OEM heavily tested with it.
See https://news.ycombinator.com/item?id=43669913 for more info including about kernels. 6th, 7th, 8th and 9th generation Pixels share the same Linux 6.1 source tree and kernel drivers since Android 15 QPR2 in March 2025.
Pixel 9a is still using a branch of Android 15 QPR1 due to how device launches work so most of the work involved taking our last Android 15 QPR1 release from early March and rebasing it onto the Pixel 9a device branch tag where they forked off from an earlier Android 15 QPR1 release and backported current security patches to it. We then had to backport our changes since early March. The device branch will go away in a couple months and it will be on the same branch as everything else until it's end-of-life as usual. We could spend more time to integrate it into our main Android 15 QPR2 based branch ourselves but we can also simply wait a couple months. As an earlier example, the Pixel 8a was released in May 2024 based on Android 14 QPR1 rather than the current Android 14 QPR2. It was incorporated into mainline Android 14 QPR3 in June only a few weeks later. We know Android 16 is already going to deal with this so spending our time on this instead of implementing new privacy, security, usability and compatibility improvements would be a waste.
NoahKAndrews
Off-topic, but as someone who's followed your work for a long time, it's cool to see you posting again! I hope you're doing better these days.
rzk
Thank you for all the hard work you do on GrapheneOS.
edm0nd
Thank you for all the work on GrapheneOS that is done.
I got it on a P7P and love it.
matheusmoreira
Thank you for your work and the interesting and insightful comments. I've learned a lot from you.
I wish it was feasible to run GrapheneOS on more devices. For some reason, Google seems to be incapable of selling Pixels world wide.
fph
Am I supposed to trust security information coming from a user named strcat? /s
Quick, someone named strcat_s or strncat correct them!
CartwheelLinux
Incredibly fast.
While the 9a and 9 pro are very similar, for comunity based development this is substantial.
I am often very critial, but I must give props to the grapeneos team.
bitpush
They are starting from an OS that is made to work on these devices.
crossroadsguy
Reminds me of iOS and iDevices and how even after months they keep stabilising and then they fail to stabilise and then they release the next version after a year with all those bugs intact and accumulated. In this case that OS is literally made for only those devices and vice-versa, in iron claw control of one control freak corporation that has a net worth more than GDPs many countries would nuke for.
Let’s contrast that with a pure community led effort, motivated by freedom, privacy, and safety, that neither controls the OS nor the devices. It’s not what I tried to saltily explain above.
Respectfully, I hope that sunk in.
strcat
All Android devices support running the Android Open Source Project via Treble and we could quickly add support for non-Pixel devices doing things in a reasonable way too. Those devices don't meet our hardware security requirements (https://grapheneos.org/faq#future-devices) which is why we don't support them. It wouldn't be that hard to add a Sony or Motorola device but they're missing the expected security features and proper updates. It wouldn't be possible to provide our standard security protections on them which is the real blocking issue, not difficulty. Android has made device support simple, but the rest of the Android device ecosystem is not at all competitive in security with Pixels and iPhones.
We automate a huge portion of the work via https://github.com/GrapheneOS/adevtool. We do a GrapheneOS build with it and it outputs state you can see in https://github.com/GrapheneOS/vendor_state which is then used to automatically figure out all of the missing overlays, SELinux policy, firmware files, etc. When we have our own devices in partnership with an OEM we won't need to use adevtool. We can borrow a lot from Pixels for those devices though.
Pixels are very similar to each other, which does make things simpler. The entire kernel source tree is identical for 6th, 7th, 8th and 9th generation Pixels. They all use the Linux 6.1 long term support branch on bare metal and the Linux 6.6 branch for on-device virtual machines. They'll likely advance to new Linux kernel branches together rather than ending up very split across different ones as they were in the past. That makes things easier for us.
Pixels also share most of the same drivers for the SoC and lots of other drivers. Those drivers support the different generations of hardware with the same codebase for the most part. There are still 6 different Wi-Fi/Bluetooth drivers across them but 5 of those are variations of a very similar Broadcom Wi-Fi/Bluetooth driver and only 1 is a separate Qualcomm Atheros driver (Pixel 7a).
We have various hardware-based hardening features such as our hardware-based disabling of the USB-C port with variations across different hardware generations (https://grapheneos.org/features#usb-c-port-and-pogo-pins-con...) and similar features. Our exploit protection features also uncover lots of memory corruption bugs across devices in their drivers. We do have a lot of device-specific work fixing uncovered bugs. Hardware memory tagging in particular finds nearly every heap memory corruption bug occurring during regular use including out-of-bound reads so that finds a lot of bugs we need to handle. Many of the bugs we find with hardware memory tagging and other memory corruption exploit protections are in drivers or the portable Bluetooth software stack which is thankfully one of the components Android is currently gradually rewriting in Rust along with the media stack.
If we supported a device with much different drivers, there wouldn't be much work to deal with that directly but enabling our features like our hardware memory tagging support would require fixing a bunch of memory corruption bugs occurring during regular use across it. Supporting other Android devices with the Android Open Source Project is easy. Supporting them with GrapheneOS is significantly harder due to various hardening features needing integration at a low level along with others uncovering a lot of latent bugs which were occurring but not being noticed most of the time. The ones which get noticed often due to breaking things get fixed, but many latent memory corruption bugs remain there unless the OEM heavily tests with HWASan or MTE themselves, which is unlikely. Pixels are tested with HWASan and MTE by Google but yet we still have to fix a lot ourselves largely because testing them in a device farm is different than users actually using them with assorted Bluetooth accessories, etc.
haukem
Thank you for all the insights.
Nice to know that all supported Pixel phones are not only on the same kernel version, but actually are build fro the same source tree now.
Do you also contribute your fixes back to the upstream projects like the upstream Linux kernel, AOSP or Google?
Many of the security features you are using are already included in AOSP, why does Google not activate them by default? Do they have a different balancing of performance, stability and compatibility on the one side and security on the other? I understand that Google has a different view on privacy for business reasons.
kowabungalow
Also, this is the first pixel after this announcement:
strcat
The changes are overstated and it really changes very little for GrapheneOS. See https://discuss.grapheneos.org/d/21315-explanation-of-recent....
Android already published the full source code for Stable releases but barely anything for Beta releases. They didn't publish anything for upcoming releases with support for new devices. AOSP main branch received most changes through the Stable releases being merged into it. Most components were developed internally. Certain components were developed publicly in AOSP so they had to repeatedly merge back and forth between the internal and public main branches.
GrapheneOS would benefit from having early access to the monthly, quarterly and yearly releases as Android OEM partners do. The only benefit of having access to the main development branch would be the ability to backport more fixes than they do along with doing it earlier. We occasionally backported fixes from AOSP main for the few components developed publicly through it, which is what's going to be mostly going away. It was a big help to us as access to the upcoming quarterly and yearly releases would be. Monthly updates are too small for it to really matter but it'd still help.
Also worth noting the monthly security patch backports (Android Security Bulletins) are a separate thing from the new OS release each month. Those are backports of many of the High and Critical severity patches to older Android versions, often a month or two after they were released in the actual OS releases each month which are the monthly, quarterly and yearly releases (it's one of the 3 each month, with 3 quarterly releases and 1 yearly release per year although Android 16 is coming earlier this year instead of a 3rd quarterly release).
codethief
Oh wow, how did I miss that! If strcat / Daniel Micay happens to pass by: How much will this impact future development of GrapheneO?
strcat
The changes are overstated in the media and has little impact on it. See https://news.ycombinator.com/item?id=43674145. We would benefit a lot from early access to quarterly and yearly releases but that hasn't ever been public and the AOSP main branch only provided the most recent changes for a few components, and not any of the ones we actually need most.
mixmastamyk
Anyone know why drivers in this OS can't be ported to Linux, so it could support newer phones as well?
strcat
Android Open Source Project and operating systems based on it like GrapheneOS are Linux distributions. The kernel drivers are Linux kernel drivers. The userspace drivers are part of Android's Treble hardware abstraction layer providing forwards compatibility with future Android releases and SELinux-based sandboxing with the drivers split up into isolated processes. Most of the driver complexity is in userspace with most kernel drivers acting as shims between the isolated drivers and the hardware. It's done that way for practical reasons on Android but it's good for security.
Treble's compatibility system isn't very relevant to us right now. There's a new Android release every month: a monthly, quarterly or yearly release. The devices we currently support (Pixels) receive each of these updates officially. Most Android devices do not get the monthly or quarterly updates, only the yearly ones. Other devices rely on partial backports of security patches (Android Security Bulletins) to an initial release, which are provided for ~3-4 years after the initial yearly release. If we supported typical Android devices with that situation, then we'd at least partially rely on Treble to provide the latest OS version. Pixels are currently the only devices meeting our hardware security requirements listed at https://grapheneos.org/faq#future-devices. Having proper updates for 7 years from launch is just part of that, most of the requirements are for hardware-based security features like the secure element features, hardware memory tagging, pointer authentication, USB controller support for blocking new connections and disabling USB data, etc.
GrapheneOS uses the 6.1 and 6.6 long term support branches of the Linux kernel with 6.12 as the next one that's likely going to be used to replace 6.6 for on-device virtual machines and the emulator with Android 16.
yjftsjthsd-h
> The kernel drivers are Linux kernel drivers.
But they're drivers that are not upstreamed and which therefore make it hard to move to a newer kernel, right?
speed_spread
Sounds like Android is making a microkernel out of Linux.
OsrsNeedsf2P
I installed GrapheneOS on my Pixel 4a after Google deleted the battery life[0], and while the initial move was frustrating with things not working, I've adapted and have a nice feeling of security while using my device again. It feels like it's mine, and I don't have to worry about who will spy on me or rug-pull me next.
[0] https://grapheneos.social/@GrapheneOS/113917226566692707
tengbretson
Of all the selling points for GrapheneOS, I don't think battery life is one I'd highlight. Their Google Play services shim smokes my battery. Like 20-30% discharge while overnight idle kind of bad.
strcat
That's not at all normal. Sandboxed Google Play doesn't consume more batter than privileged Google Play in a standard Google Mobiles Services device. It indicates something is very wrong with your setup.
tengbretson
Its definitely pretty close to normal. Battery drain is probably the top mentioned drawback in any online post discussing GrapheneOS.
null
blablabla123
Yeah it's really great, before switching to GrapheneOS I used LineageOS for years so battery life is already good in that case. But the whole access control, and checking every few months which apps are hardly used is just super practical. I don't do online banking on my phone though, I guess for people who do it's not feasible. The only thing I don't like is that it only works with Google Pixels
sureglymop
Online banking (anecdotally) works great, though may use the sandboxed google play services. At least here in Switzerland with Swiss banking apps I've never had issues with it.
I would recommend people to install the play services and play store in the main profile. Then, install apps in the main profile too but remove all permissions and abilities, restrict and disable them. After that, enable them in a "banking" profile. One can then selectively enable and disable the play store to update these apps which propagate to the other profiles. The disabled apps are still updated normally by the play store.
I do believe that they are working on a feature to limit app intercommunication in a similar vein as the other scopes. This would be cool because it would allow one to allow "point to point" communication of certain apps with the play services but otherwise restrict them. Though I don't know the state of development for this feature.
jeffbee
> deleted the battery life[0]
Such a bizarre phenomenon to me that people are still griping about a software update that stops a 4-year-old battery from detonating when the same company will also fix the phone for free or just hand you $50 if you prefer that.
tgsovlerkhgsel
The fixing offer is only valid in some locations, would require you to be without your phone for some time, and since Android still doesn't have anything that would be considered working backup and restore, I can't imagine many people being comfortable mailing their phone out for a replacement.
The $50 "cash" offer came with so many downsides that just ignoring it would be the smarter choice for anyone who values their time (someone already provided a link).
gpm
> or just hand you $50 if you prefer that.
Not really just handing it to you https://arstechnica.com/gadgets/2025/03/how-google-nerfed-my...
mmmpetrichor
They never ack'd the reason why they did it. My wife's phone was basically bricked, and the google offer for "free fix" was functionally worthless because the contracted companies wouldn't repair it. See many articles online (including ars technica editor who personally was screwed).
broodbucket
I don't have any idea what the situation is here and whether it's as black and white as you paint it, but regardless, surely something as significant as this should be presented to the user as an option rather than the manufacturer deciding for you that your phone that you own and paid for should now be unusable?
null
Spunkie
I was never even notified for my 4a and when I try to check it's eligibility it simply says my pixel 4a "is not eligible for a repair, cash payment, or discount." without any additional information.
Does this mean my pixel 4a battery was unaffected for some reason... or simply that the lawyers managed to weasel out of paying 100% of active pixel 4a owners back and my phone is still dangerous or degraded? ¯\_(ツ)_/¯
kwk1
Yes, not all 4a's were affected. Of two of mine, one was eligible, but the other was not.
Teever
I just bought a replacement battery from ifixit and replaced it myself as the original battery was worn out only to now suddenly have garbage battery life on a brand new battery for no good reason.
I doubt that they'll give me any sort of money or do repairs on a phone that I opened up.
It's frustrating as I thought I would be able to get several more years of life out of this phone.
max_
How "private" is graphene?
How much do I gain from switching to it instead of say, remaining on the Stock Android?
Edit: This looks comprehensive — https://staging.grapheneos.org/features
MrDrMcCoy
It's extremely private. It doesn't have Google services by default, but makes it easy to install them as unprivileged apps that - apart from giving you more control over what they can do and limiting certain access by default - work mostly exactly the same way as their privileged installs on other versions of Android. It also lets you disable Internet access privileges to any app that you don't want to have phone home.
Beyond that, most of the other advantages will be less visible. They have hardened memory allocators that make various classes of security beaches significantly more difficult. There's a lot less superfluous background services eating resources. All that and more are listed on their website. It's well worth a read.
therein
That sounds really good. What are the downsides? How does it fare in terms of PlayIntegrity and SafetyNet etc?
10729287
I may be wrong but I think most bank apps won't run on those devices. Anyone can confirm ?
nvllsvm
Balatro is not installable from the Play Store on my Pixel 7 due to Play Integrity.
Side note, balatro-mobile-maker works really well as an unofficial port to Android. https://github.com/blake502/balatro-mobile-maker
Vinnl
One downside (that may be a very manageable one) is limited device support (which enables all that).
strcat
The features page you've linked is the best place to look for an overview of what we provide. It lists what we change and add compared to the latest release of the Android Open Source Project or the stock Pixel OS. Lots of important features are listed together in a single section, particularly in the exploit protection section / sub-sections covering a huge portion of what we provide in terms of security. It covers most of what we provide other than assorted smaller changes. Also worth noting we remove features from the list when they become standard Android features, and we successfully got various features we implemented into the Linux kernel or Android Open Source Project.
Here's an example demonstrating the impact of our security improvements:
https://discuss.grapheneos.org/d/14344-cellebrite-premium-ju...
February 2025 Cellebrite Premium documentation was posted by someone further down in the thread, which is essentially the same overall situation.
https://discuss.grapheneos.org/d/20401-grapheneos-improvemen... has some details on how we've improved that since early 2024.
The stock Pixel OS is approximately AOSP with a bunch of Google apps deeply integrated into it. Pixels don't actually change anything compared to the AOSP code, they just substitute various components with their own and add a bunch of overlays, apps, etc. AOSP has all the stuff they need to provide that included already. They give extensive privileged access to Google Play and various other apps via privileged permissions, SELinux MAC/MLS policy (which is included in AOSP) and various allowlisting, etc. They also use Play services, etc. as backends for various AOSP APIs. One of our major features is our sandboxed Google Play compatibility layer enabling running Google Play services, Google Play Store, Google Search, etc. as regular sandboxed apps with no special access at all where users don't even need to grant them the regular non-privileged permissions like Contacts, Location, etc. to use most of their functionality (some functionality requires that such as if you wanted to use Google Maps location sharing or Google Contacts sync).
Phelinofist
Do you think you are target (idk, by maybe three letter agencies or black hat groups) for the work you do? Do you have any special OPSEC to account for something like this?
mystified5016
Graphene is not for everyday casual users. It really only works well if you don't rely on any apps that depend on Google play, like steam or discord. If you're on AT&T, you don't get caller ID or voicemail.
This is an OS for people who care more about privacy and security than having an everyday usable phone. It is very much not for normal people.
strcat
> Graphene is not for everyday casual users.
GrapheneOS is intended for everyone.
> It really only works well if you don't rely on any apps that depend on Google play, like steam or discord.
Steam, Discord and the vast majority of Android apps work perfectly on GrapheneOS. Sandboxed Google Play is a robust feature which works very well. If you're choosing to completely avoid using Google Play, that's your choice. Steam and Discord both still likely work without it, but without push notifications since they have no alternative to FCM as certain other apps do.
> If you're on AT&T, you don't get caller ID or voicemail.
You do get caller ID and voicemail on AT&T. Visual voicemail doesn't work with AT&T with the built-in Dialer app because it uses a protocol not supported by AOSP. It does work with Google Dialer based on user feedback on our forum.
> This is an OS for people who care more about privacy and security than having an everyday usable phone. It is very much not for normal people.
GrapheneOS is very usable as an every day usage phone for regular people. Nearly every Android app can be used on it. It sounds like you were choosing to use it without sandboxed Google Play, which is a choice to have a more limited app and service ecosystem. That's not the same as a choice to use GrapheneOS. It can be used like a regular Android phone with 1 profile containing sandboxed Google Play, or people can use sandboxed Google Play in a specific profile with most of their apps in another profile. Using it without sandboxed Google Play in a secondary profile is something many GrapheneOS users do successfully but it's in no way required or expected. We wouldn't have made that huge feature if we didn't want it to be used by a lot of people.
mystified5016
Steam app crashes unless Play services are active. Discord doesn't deliver push notifications without play services running. A good fraction of play store apps fail to work properly unless you let play services run in the background forever, which defeats the purpose.
You do not get caller id on AT&T, and you do not get voicemail notifications until sometimes hours or days after the fact. I ran this on my pixel 8 for months. I had to actively call into my voicemail number like it's 2005.
The secondary profile stuff is just about useless. It's one step above having multiple independent devices. I did try having a Google profile, but you can't get notifications between profiles. You get a notification that there is a notification, so you then have to go through the entire 30 second process of switching profiles, which disconnects your Bluetooth headphones to check the other profile.
If you think regular users and normal people want to put up with this, you should really re-evaluate what you think an average user is. This is for hyper nerds who care more about security ideals than functionality. Graphene is not for the average person who wants caller id, voicemail, camera, and a web browser.
gradeless
Not sure if you've used GrapheneOS recently? If apps are heavily tied to Google Play Services you can install that and, in the vast majority of cases, get very good compatibility.
Compatibility with carriers also improved a lot a few years ago. Configurations for most carriers are pulled in from the stock Pixel OS. Some US carriers do weird things that depend upon having highly privileged apps bundled into the OS which, for security reasons, GrapheneOS doesnt include. I dont recall AT&T being one of them.
GrapheneOS is very usable and fine as a everyday phone for normal people.
mystified5016
Six months ago on a pixel 8.
It is not usable for normal people who want to use their phone to stay in contact with others.
miramba
I installed GrapheneOS on a spare Pixel 4a recently...through a browser window. I thought at first that I had to download a firmware flasher or something, but no, it updated the device from that webpage! That was impressive. The other thing I would like to mention: Chromium is installed, so PWAs can be installed instead of connecting to a sandboxed google play or something. The PWAs I tried looked just like on an iPhone or desktop. Yes, we are far, far away from PWAs being a complete replacement. But it is in theory possible:
An independent mobile OS with platform-independent apps. No Apple/Google ID needed, no appstores. That was the point of this test install, and it worked.
sureglymop
One cool thing about GrapheneOS when I recently got a new Pixel 9 was how easy it was to install it with just my older Pixel phone. Because the installer is WebUSB based it works in the Vanadium browser. I just connected the two phones together with a USB cable and could install the OS on my new phone from the browser.
One currently missing thing is a "transfer" or backup functionality otherwise. There's really no good solution other than to manually port over applications and use their built-in import/export features if available.
strcat
There's a built-in encrypted backup system in Settings > System > Backup. It works similarly to the Google Play device-to-device transfer system. It uses the same underlying device-to-device transfer mode for the Android backup infrastructure and should back up exactly the same data as the Google Play transfer system moves. It backs up a lot more than Google Play cloud backups because it uses device-to-device mode.
sureglymop
So, is the current recommendation to create such a backup to an external storage and then restore it on a new device? There is currently no direct device-to-device transfer feature using this, correct?
tiborsaas
We should normalize having a "sceenshot" menu in the navigation again. Not their social, website has any. Is this a text based operating system?
codethief
GrapheneOS looks almost exactly like AOSP and doesn't add any visual features, so screenshots would be somewhat pointless.
tiborsaas
It would answer my question properly if I'd seen that it looks just like the stock Android UI, so even though it's almost exactly the same, that's still quite valuable for me rather than pointless.
I've also done some image search and it does change a bit with apps and they look quite good. So I'm still baffled why this aversion to images is decided. Or just overlooked maybe?
codethief
Probably just overlooked, yes.
> it does change a bit with apps and they look quite good
Hmm, I haven't noticed any difference. Which apps are you referring to?
jeroenhd
It's still a custom ROM and it's not uncommon for those to be reskinned in interesting or weird ways. Plus, their website already uses the outline of a phone with their logo inside of it, why not make that a screenshot of their ROM with their logo as a background?
Furthermore, I'm interested in what their solution for email, calendars, and all the other Google services look like. If it's AOSP, that's a good reason not to use this ROM. I suspect it's not actually using AOSP's apps, though.
codethief
> Furthermore, I'm interested in what their solution for email, calendars, and all the other Google services look like.
There are no built-in apps for that. The only custom apps GOS provides are Auditor (https://attestation.app/), Camera, Calculator¹, Contacts¹, Files¹, Gallery¹, Messaging¹, a hardened PDF viewer, and Vanadium (a hardened version of Chromium). Everything else is up to you.
¹) AOSP app or fork of the AOSP app.
pinetroey
I've been eying GrapheneOS for a few years. But there is one thing holding me back, Auto Call Recording.
I'd love to make the switch.
strcat
It's a planned feature but isn't a high priority. It's hard for us to get to it with all the other things we want to implement. We'll add it one day. We need to keep hiring more developers and expanding to do more.
sureglymop
I have a question you may be able to answer. Are contributions to GrapheneOS in general welcome? If yes, where would one start, is there a page about setting up a development environment or outlining a list of features/areas that could need work/help? I have quite a few spare Pixel phones that are currently just idling but I'd love to try building and installing GOS myself to start out.
RandomBacon
I use ACR Phone app with the APH app and removed Network permissions.
pinetroey
Does it record 2-way audio in good quality? Ear & speaker & Bluetooth
RandomBacon
It uses the phone's microphone (Android OS limitation), so if it's Bluetooth in the car, it should pick up everything (just like the people in the next car over can hear your conversation, fyi), but if it's a Bluetooth headset, I don't think it will pick up their side.
Audio quality is very good. By all means test it out in different configurations before relying on it.
A native implementation would still be better. I hope the GrapheneOS devs can pull it off.
0x38B
The Pixel 9a is really tempting for someone like me who’s tired of living in Apple’s walled garden (1), but wants a decent device at a fair price that’ll be supported for a good long time - the Pixel 9a ticks all of those boxes.
1: Why? File management and getting files into apps is the #1 area where Android wins.
For example, iOS has me copying or saving audiobooks into a folder only to import them into BookPlayer, whereas Android’s Smart Audiobook Player lets me copy my book to my audiobooks folder and hit ‘rescan’.
Funnily enough, one of the only music apps on iOS that offers the same functionality - copy a folder into your library and rescan - is the same Neutron Player I used to use on Android. The interface is clunky, but that’s a small price to pay.
piyuv
I wish I didn’t have to pay google of all companies to escape Apple.
Epa095
I wonder how much Google actually makes on these. I won't be surprised if they basically make nothing on them.
It is a bit fun that seemingly the best way to de-google and de-apple yourself is to buy an actual Google device and install grapheneos on it.
Hj8Rd2Qw
Impressive to see GrapheneOS's strong app sandbox model preventing malicious apps from evading uninstallation. This kind of robust security architecture is what Android needs - protection that works even when apps have dangerous permissions or exploit security vulnerabilities.
notorandit
I hope the so-called blobs have been replaced with unprivileged opensource versions.
Otherwise privacy and security would be meaning basically nothing.
strcat
Open source doesn't provide any magical privacy or security. iPhones have solid privacy and security despite being mostly closed source software. iPhones are the next best options for privacy and security in most ways. They have great privacy from apps and aren't awful at privacy from Apple particular if people use Advanced Data Program for iCloud, and they have solid security overall along with some useful settings for it. GrapheneOS of course provides better privacy from the OS services. We provide a full list of default connections made by the OS at https://grapheneos.org/faq#default-connections and none are made by the hardware without the OS prompting it. GrapheneOS also defends better against sophisticated real world attacks, and there's real world evidence for that from leaked capabilities of Cellebrite, Magnet Forensics (Graykey) and MSAB (XRY) along with some basic info about remote exploit sellers.
All of the kernel drivers are open source, which would be the case for Snapdragon too.
Firmware is largely closed source but Pixels do use Trusty OS for the TEE and secure core, littlekernel as the late stage bootloader firmware and OpenTitan as the firmware/hardware basis for the Titan M2 secure element that's holding up much better to attacks than anything but Apple's SEP (see brute force info in https://discuss.grapheneos.org/d/14344-cellebrite-premium-ju... or the newer February 2025 documentation someone posted further down). We still do security research work on the hardware and firmware including reporting vulnerabilities and suggestions. Several firmware and hardware based features we've proposed were implementing including the pinning-based hardware attestation support we used to improve our Auditor app and AttestationServer, reset attack protection and various other things.
There are still shared source libraries and services for certain hardware but Pixels moving away from Snapdragon has led to that approach being on the way out. The move away from Exynos with the Pixel 10 should help.
If we make our own device with an OEM using Snapdragon, we'd have access to most of the sources for their driver libraries/services and a lot of firmware. It's not open source but OEMs have access. That also means a lot of it gets consistently leaked. They stopped sharing their radio firmware sources with OEMs because of those leaks.
haukem
> If we make our own device with an OEM using Snapdragon, we'd have access to most of the sources for their driver libraries/services and a lot of firmware. It's not open source but OEMs have access.
Is it normal that phone OEMs have access to most of the source code of the kernel drivers and user space libraries provided by the SoC vendor.
I worked in the home router business and there it was normal that a OEM gets most of the kernel drivers and user space code in source code, but it was often restricted what they are allowed to publish in source code. Many vendors even published much less than they had to according to GPL and allowed by the SoC vendor.
I have heard that in the smart TV industry OEMs sometimes are only allowed to write an app and have no kernel source code access for their product.
strcat
Kernel drivers for all of the main Android hardware platforms are fully open source. It's the userspace libraries/services which tend to have a lot of code that's not open source. At least for Snapdragon, that's shared with OEMs so can be modified and built by them. Snapdragon also shares major parts of the firmware sources with OEMs too. Some parts of the firmware are open source.
raffael_de
What is the current conventional UX with GrapheneOS?
Especially regarding:
- Usability of taxi apps like: Uber, Grab, Bolt
- Camera quality versus stock ROM
strcat
The vast majority of Android apps including those can be used on GrapheneOS.
Camera quality is the same within the same app on either.
Pixel Camera can be used on GrapheneOS with full features and photo/video quality if you want it.
GrapheneOS Camera has support for HDR+ on Pixels for regular photos and has Night mode too. It has EIS and HDRnet for video recording. It has a single exposure slider rather than their dual exposure sliders. It uses each of the cameras via zoom level / light level in the same way. More advanced features and configuration are being added to it over time.
Pixel Camera has more features and the HDR+ it uses is more aggressive which makes the photos look higher contrast than a more natural look.
adikso
Uber and Bolt apps works like normal. I don't know what is Grab. The default camera lacks post-processing tricks, but you can install Google Camera if you like (shouldn't be a privacy concern here with limited permissions).
raffael_de
Interesting. I used to have problems using such apps on LineageOS due to their dependence on this Google Push Messaging service (don't remember what it's called) and also dependence on Google Maps services.
(Grab is like Uber/Bolt but used in different regions of the world.)
Camera quality of LineageOS was really bad.
A voyage was the catalyst for switching to iPhone as this seemed back then the best option to LineageOS and I couldn't risk not being able to use such logistically relevant apps.
Especially in Asia you have to be ready to install and use whatever app is required and not being able to might be seriously handicapping.
sureglymop
On GrapheneOS, you can install Google play services in a sandboxed way (and if you want, in another user profile, work profile or private space) which can allow all these things to work seamlessly. Generally I've had way more problems with other custom roms and things like MicroG. I'd recommend to just try it out if you have an unused pixel phone. Imo it's very unlike any other custom rom in terms of the user experience.
strcat
GrapheneOS Camera does have HDR+ and Night mode on Pixels along with HDRnet and EIS for videos. Pixel Camera has more features and more aggressive HDR+.
I love GrapheneOS. The biggest downside is that Google integrity API block wireless payments in Google Pay. All Dutch banks now advertise to install Google pay for wireless payments. I've tried asking Google to support GrapheneOS but they told me to do a feature request. Which I did and got no reply to. I've contacted the consumer market authority and made a formal complaint since Google and Apple share effectively a contactless payments duopoly and decide which OS distributions get access. Those are closed source and usually bundled with a lot of spyware. I also explained how the Google integrity API might affect banking availability in the future (and already does for some banking apps). They took it very seriously and I hope to hear from them in the future.