This repository is no longer maintained. I've migrated to https://github.com/dan-v/rattlesnakeos-stack.
CopperheadOS is a Linux-based mobile operating system with a focus on privacy and security. It builds on the latest stable release of the Android Open Source Project which is Android without any Google apps and services.
copperheados-stack is an tool that will deploy all the AWS infrastructure required to run your own CopperheadOS build and release environment. It uses AWS Lambda to check for new releases, provisions EC2 spot instances for OS builds on demand, and uploads build artifacts to S3. Resulting OS builds are configured to receive over the air updates from this environment.
- Support for Google Pixel, Pixel XL, Pixel 2, and Pixel 2 XL
- End to end setup of build environment for CopperheadOS in AWS
- OTA updates through built in updater app - no need to manually flash your device on each new release
- Scheduled Lambda function looks for new releases to build on a daily basis
- Costs a few dollars a month to run (EC2 spot instance and S3 storage costs)
If you use this tool, I HIGHLY recommend supporting the project with donations: https://copperhead.co/android/donate.
The easiest way is to download a pre-built binary from the GitHub Releases page.
You'll need AWS CLI credentials setup with 'AdministratorAccess': https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-getting-started.html
-
Deploy environment for Pixel XL in AWS (marlin)
./copperheados-stack --region us-west-2 --name copperheados-dan --device marlin
-
Deploy environment for Pixel in AWS (sailfish)
./copperheados-stack --region us-west-2 --name copperheados-dan --device sailfish
-
Deploy environment for Pixel 2 XL in AWS (taimen)
./copperheados-stack --region us-west-2 --name copperheados-dan --device taimen
-
Deploy environment for Pixel 2 in AWS (walleye)
./copperheados-stack --region us-west-2 --name copperheados-dan --device walleye
-
Remove environment and all AWS resources
./copperheados-stack --remove --region us-west-2 --name copperheados-dan
- Initial build should automatically kick off (it will take a few hours).
- After build finishes, a factory image should be uploaded to the S3 bucket '<stackname>-release'. From this bucket, download the file '<device>-factory-latest.tar.xz'.
- Use this factory image and follow the instructions on flashing your device: https://copperhead.co/android/docs/install
- After successfully flashing your device, you will now be running CopperheadOS and all future updates will happen through built in OTA mechanism.
- Just download the new version and run the same command used previously (e.g. ./copperheados-stack --region us-west-2 --name copperheados-dan --device marlin) to apply the updates
- A SNS topic should be created with your stack name already, all you have to do is create a subscription to this using your email for example.
- Should I use copperheados-stack? That's up to you. Use at your own risk.
- All credit goes to Huimin Zhang. He is the original author of the underlying build script!
- Terraform
make tools && make- Restrict created IAM roles to minimum required privileges (currently all admin)