diff options
author | Christian Cleberg <hello@cleberg.net> | 2024-03-04 22:34:28 -0600 |
---|---|---|
committer | Christian Cleberg <hello@cleberg.net> | 2024-03-04 22:34:28 -0600 |
commit | 797a1404213173791a5f4126a77ad383ceb00064 (patch) | |
tree | fcbb56dc023c1e490df70478e696041c566e58b4 /content/blog/2022-09-21-graphene-os.md | |
parent | 3db79e7bb6a34ee94935c22d7f0e18cf227c7813 (diff) | |
download | cleberg.net-797a1404213173791a5f4126a77ad383ceb00064.tar.gz cleberg.net-797a1404213173791a5f4126a77ad383ceb00064.tar.bz2 cleberg.net-797a1404213173791a5f4126a77ad383ceb00064.zip |
initial migration to test org-mode
Diffstat (limited to 'content/blog/2022-09-21-graphene-os.md')
-rw-r--r-- | content/blog/2022-09-21-graphene-os.md | 167 |
1 files changed, 0 insertions, 167 deletions
diff --git a/content/blog/2022-09-21-graphene-os.md b/content/blog/2022-09-21-graphene-os.md deleted file mode 100644 index 38dba12..0000000 --- a/content/blog/2022-09-21-graphene-os.md +++ /dev/null @@ -1,167 +0,0 @@ -+++ -date = 2022-09-21 -title = "Installing Graphene OS on the Pixel 6 Pro" -description = "A retrospective on the successful command-line installation of Graphene OS on a Pixel 6 Pro." -+++ - -## Introduction - -After using iOS for a couple of years, I finally took the plunge and -purchased a Pixel 6 Pro in order to test and use [GrapheneOS] -(<https://grapheneos.org>). - -The installation process was rather quick once you have the tools and -files you need. Overall, it can be done in just a few minutes. - -## Gathering Tools & Files - -### Android Tools - -First, in order to interact with the device, we will need the [Android -platform -tools](https://developer.android.com/studio/releases/platform-tools.html). -Find the Linux download and save the ZIP folder to your preferred -location. - -Once we've downloaded the files, we will need to unzip them, enter the -directory, and move the necessary executables to a central location, -such as `/usr/bin/`. For this installation, we only need the -`fastboot` and `adb` executables. - -```sh -cd ~/Downloads -``` - -```sh -unzip platform-tools_r33.0.3-linux.zip -cd platform-tools -sudo mv fastboot /usr/bin/ -sudo mv adb /usr/bin -``` - -### GrapheneOS Files - -Next, we need the [GrapheneOS files](https://grapheneos.org/releases) -for our device and model. For example, the Pixel 6 Pro is codenamed -`raven` on the release page. - -Once we have the links, let's download them to our working directory: - -```sh -curl -O https://releases.grapheneos.org/factory.pub -curl -0 https://releases.grapheneos.org/raven-factory-2022091400.zip -curl -0 https://releases.grapheneos.org/raven-factory-2022091400.zip.sig -``` - -1. Validate Integrity - - In order to validate the integrity of the downloaded files, we will - need the `signify` package and Graphene's - `factory.pub` file. - - ```sh - sudo dnf install signify - ``` - - ```sh - curl -O https://releases.grapheneos.org/factory.pub - ``` - - Then we can validate the files and ensure that no data was corrupted - or modified before it was saved to our device. - - ```sh - signify -Cqp factory.pub -x raven-factory-2022091400.zip.sig && echo verified - ``` - -2. Unzip Files - - Once the files are verified, we can unzip the Graphene image and - enter the directory: - - ```sh - unzip raven-factory-2022091400.zip && cd raven-factory-2022091400 - ``` - -## Installation Process - -### Enable Developer Debugging & OEM Unlock - -Before we can actually flash anything to the phone, we will need to -enable OEM Unlocking, as well as either USB Debugging or Wireless -Debugging, depending on which method we will be using. - -To start, enable developer mode by going to `Settings` > -`About` and tapping `Build Number` seven (7) -times. You may need to enter your PIN to enable this mode. - -Once developer mode is enabled, go to `Settings` > -`System` > `Devloper Options` and enable OEM -Unlocking, as well as USB or Wireless Debugging. In my case, I chose USB -Debugging and performed all actions via USB cable. - -Once these options are enabled, plug the phone into the computer and -execute the following command: - -```sh -adb devices -``` - -If an unauthorized error occurs, make sure the USB mode on the phone is -changed from charging to something like "File Transfer" or "PTP." -You can find the USB mode in the notification tray. - -### Reboot Device - -Once we have found the device via `adb`, we can either boot -into the bootloader interface by holding the volume down button while -the phone reboots or by executing the following command: - -```sh -adb reboot bootloader -``` - -### Unlock the Bootloader - -The phone will reboot and load the bootloader screen upon startup. At -this point, we are ready to start the actual flashing of GrapheneOS onto -the device. - -**NOTE**: In my situation, I needed to use `sudo` with every -`fastboot` command, but not with `adb` commands. I -am not sure if this is standard or a Fedora quirk, but I'm documenting -my commands verbatim in this post. - -First, we start by unlocking the bootloader so that we can load other -ROMs: - -```sh -sudo fastboot flashing unlock -``` - -### Flashing Factory Images - -Once the phone is unlocked, we can flash it with the -`flash-all.sh` script found inside the -`raven-factory-2022091400` folder we entered earlier: - -```sh -sudo ./flash-all.sh -``` - -This process should take a few minutes and will print informational -messages as things progress. Avoid doing anything on the phone while -this process is operating. - -### Lock the Bootloader - -If everything was successful, the phone should reboot a few times and -finally land back on the bootloader screen. At this point, we can -re-lock the bootloader to enable full verified boot and protect the -device from unwanted flashing or erasure of data. - -```sh -sudo fastboot flashing lock -``` - -Once done, the device will be wiped and ready for a fresh set-up! |