• Introducing XDA Computing: Discussion zones for Hardware, Software, and more!    Check it out!

[ROM][OFFICIAL] RattlesnakeOS [Android 9.0]

Search This thread


Senior Member
Jan 26, 2017


Don't forget DroidGuard as a priv-app.

I got it working, Thanks! CTS Profile fails, but the apps I want to use are working, which is the best I think I can get it.

I would like to change the icon pack, but I have not had luck using other launchers with gestures, anyone have a similar issue?

Top Liked Posts

  • There are no posts matching your filters.
  • 6
    This is a bit different than most postings here, as I'm not providing any binaries to install on your phone and instead providing a simple tool, rattlesnakeos-stack, to build your own OS based on AOSP on a regular basis, with your own signing keys, and your own OTA updates. This probably will be interesting to a small subset of users as it does cost money to run this infrastructure in AWS.

    What is RattlesnakeOS
    RattlesnakeOS is privacy focused Android OS based on AOSP for Google Pixel phones. It is my migration strategy away from CopperheadOS (hence the name similarity) which is no longer maintained.

    • Based on latest AOSP 9.0 (Android P)
    • Support for Google Pixel, Pixel XL, Pixel 2, Pixel 2 XL
    • Monthly software and firmware security fixes delivered through built in OTA updater
    • Maintain verified boot with a locked bootloader just like official Android but with your own personal signing keys
    • Latest Chromium browser and webview
    • Latest F-Droid client and privileged extension
    • Free of Google’s apps and services

    What is rattlesnakeos-stack
    Rather than providing random binaries of RattlesnakeOS to install on your phone, I've gone the route of creating a cross platform tool, rattlesnakeos-stack, that provisions all of the AWS infrastructure needed to continuously build your own personal RattlesnakeOS, with your own signing keys, and your own OTA updates. It uses AWS Lambda to provision EC2 spot instances that build RattlesnakeOS and upload artifacts to S3. Resulting OS builds are configured to receive over the air updates from this environment. It only costs a few dollars a month to run (see FAQ for detailed cost breakdown).


    How do I set this up?
    Head over to the github repo and take a look at the README for full setup, build, and flashing instructions.
    I'm confused, why not just compile for us and post the builds? This seems more like something that should go in the guides section of the pixel XL forum?
    I think this is misleading.
    Good points. Do you have any experience with Wireguard VPN? There appears to be a 9.0 branch for the Pixel 2 XL kernel module and I'm wondering whether it's stable and performant enough (in terms of CPU time / battery drain) compared to OpenVPN to make it worth investigating how to build it for RattlesnakeOS.

    I have used the wireguard userland implementation and I'm a fan of it. I had someone attempt to contribute optional support for the wireguard kernel module on github, but the author of wireguard chimed in and said that the kernel module currently required root still (https://github.com/dan-v/rattlesnakeos-stack/pull/6#issuecomment-400511271). This was a while ago though and I'm not sure if this is still accurate or not. Anyways I'd definitely consider adding optional kernel support for wireguard if it doesn't require root.
    @dantheman78 I'd be amazing if you included the option to build with MicroG and signature spoofing support.

    It wouldn't be difficult to do this, although it looks like there isn't an official patch for Android P yet (https://github.com/microg/android_packages_apps_GmsCore/tree/master/patches). While I think MicroG is a neat project, I'm personally not sold on it from a privacy/security perspective. I'd much rather minimize data being sent to Google altogether and avoid unnecessary attack surface by adding software with elevated permissions like this. That said, I'd still be open to a contribution to the project to add it as optional (off by default) flag.