crDroid 9.1 OnePlus 7 pro install/update

This will walk you through installing a custom rom on your phone, updating the firmware and installing google apps. Then rooting your phone. 2023-01-14T17:54:07.000Z

This will walk you through installing a custom rom on your phone, updating the firmware and installing google apps. Then rooting your phone.

This tutorial is intended for a OnePlus 7 Pro, executed on a Debian based Linux machine but the same steps can be applied to windows. I'm running Linux Mint.

Any custom android rom requires an unlocked bootloader. If your bootloader is not unlocked, find a tutorial on how to do that. If this is your first time installing the crDroid, you should factory reset your phone.

Install Android platform tools

Here is a good explanation on android debug bridge (ADB) and other tools -> https://wiki.lineageos.org/adb_fastboot_guide
Here is a link for platform specific setups.
https://www.xda-developers.com/install-adb-windows-macos-linux/#how-to-set-up-adb

On Linux you can just use a package manager to install the required tools:
sudo apt-get install android-tools-adb android-tools-fastboot

Download all required packages

Navigate to -> https://crdroid.net/guacamole/9 and Download:

  • Latest ROM click -> "Download latest version" button
  • Latest Firmware click -> "Firmware" button and download latest version
  • Latest Gapps click -> "Gapps" button -> Latest folder -> Download the Gapps version you need. If you are unsure, just grab "NikGapps-stock-..."
  • Latest Recovery -> Recovery -> Download Latest Version. If your recovery is not the crDroid recovery, download it now.

Testing your tools are set up correctly

Open a terminal window and type in adb --version make sure it prints out the version and the installed path. Do the same again with fastboot --version.

Its essential to have both fastboot and adb accessible and set up correctly or the firmware update script won't work correctly.

Connect to your phone via USB and enable USB debugging

  • Grab your Phone. Make sure you enable USB Debugging in the developer menu.
  • On your machine run sudo adb devices
  • On your phone you should get a prompt, Allow USB Debugging? YES!
  • Your computer should list the connected devices. Now reboot your phone to the bootloader with the command
  • adb reboot bootloader your phone will restart to the bootloader.

Enter fastboot to install crDroid recovery

  • Plug in your phone and use command adb reboot fastboot to boot into fastboot.
  • Flash the crDroid recovery boot.img with command fastboot flash boot boot.img
  • Now restart to recovery with command fastboot reboot recovery
  • Make sure crDroid recovery installed correctly.

Enter fastboot to apply firmware update

  • Inside the bootloader, use the up/down volume buttons until the top says "Recovery Mode" press the lock button to select. The phone will boot into recovery mode.
  • Select "Advanced" -> "Enter Fastboot"
  • Your phone is now ready for the firmware update. On your computer, extract "OP7Pro firmware flash tool.zip" and enter the folder. You will see "Update-firmware.bat" and "Update-firwmare.sh"
  • On windows you can just double click "update-firmware.bat"
  • On Linux run the command ./Update-firmware.sh then follow the prompts on screen. (Yes to everything)
  • Once the update is complete, on your phone press "Enter Recovery"

Enter recovery to sideload packages

  • Inside the bootloader, use the up/down volume buttons until the top says "Recovery Mode" press the lock button to select. The phone will boot into recovery mode.
  • Select "Apply Update" -> "Apply from adb"
  • Your phone is now ready for packages from your computer. On your computer:
  • Update Rom: run the command adb sideload <crdroid update.zip>
  • Reboot to recovery again.
  • Update Gapps: run the command adb sideload <selected gapps.zip>
  • "Reboot system now"

Root your phone

  • Make sure you booted into your phone and unlocked it. Make sure all updates are complete.
  • Browse to -> https://themagisk.com/ and download the magisk.apk
  • Install the magisk.apk on your phone.
  • Reboot back into recovery adb reboot recovery and select "Apply Update" -> "Apply from adb"
  • Browse to -> https://themagisk.com/ on your computer and download the SAME magisk.apk
  • Rename "Magisk.apk" to "Magisk.zip"
  • Now sideload the apk straight into your phone adb sideload Magisk.zip
  • "Reboot system now"
  • On your phone, download and install the magisk.apk
  • You can now do rooted things.

Unable to mount error

  • If you see this error its because your data partition is encrypted. Do not worry about it. You can still access your phone with ADB.

Useful ADB Commands

  • Print a list of connected devices: adb devices
  • Kill the ADB server: adb kill-server
  • Install a package: adb install <path to apk or zip file>

Other Projects

Tell Android to ignore folder contents

Tired of showing the contents of your audio books library in your music app?

Atreyu keyboard Build

Creating a working ergonomic keyboard. From files to physical.

Build a Keyboard Links

Trying to build your own keyboard? Here are some links!

Creation of Solid Scribe

How I created, encrypted note taking application, solid scribe.

Catch missing image assets inside image tag

If an image is being displayed on a website and for some reason that asset disappears, you can catch that error and display a placeholder image with a little inline js.

Change remote origin in git repo

Sometimes you need to change the remote origin in a git repo, if the server moves or if you just get better at NGINX and change the URL to something cleaner. Here are the simple steps on how to update your remote origin.

crDroid 9.1 OnePlus 7 pro install/update

This will walk you through installing a custom rom on your phone, updating the firmware and installing google apps. Then rooting your phone.

Creation of Ravenwulf Consulting

Designing and building of Ravenwulfconsulting.com

Obligatory I am starting a blog, blog post

As we fumble around life, doing little projects we end up learning little things and forgetting a lot of things.

Killing programs in mac or linux

To kill all instances of an application us the command killall

Linux Search text in this and all sub directories

Search text files in current directory and all sub directories. Its super fast so don't worry if you have a node_modules directory or something.

Lower Pipewire CPU usage on Ubuntu while using Firefox

I was noticing high CPU usage for the pipewire process on Ubunutu.

Neovim

Why would anyone in their right mind us vim? I asked myself this question 543 times in the last 3 years. To my own surprise, I found myself wanting to use vim. The justification being that you can write code without using a mouse.

Sunshine a Parsec Alternative for Linux, GeForce Now alternative for Windows

Sunshine is a desktop streaming client for linux that offers efficient, low latency PC streaming, for free. Download Sunshine onto your linux machine (the host) Sunshine Github Download moonlight onto whatever device you streaming on (the client) Moonlight Homepage

PC Builds

At some point I became infatuated with the SAMA IM01 Case. At only 22 liters, it can house an ATX power supply and a large cooler. I bought two! Thus began the journey of rebuilding both my PC and my unRaid server into smaller cases.

Proudest Software Engineering Achievements

A few highlights of my time programming

Run bash script on linux start

Running a bash script on system start can be an involved process, depending on you distro. The proper way is to create a system service and plug it into /init.d but you can leverage the crontab if you want a simple quick way to run something on startup.

Sending Emails with Cloudflare Workers

Cloudflare has a partnership with MailChannels which has allowed Cloudflare to introduce email sending into its web workers. There is some documentation to set this up but its all over the place. Here are the steps I took to get email sending running, using workers.

Setup nginx to point subdomain at port

You can setup nginx to point subdomains at specific ports.

Sleep Linux Mint Keyboard Shortcut

Sleep Linux Mint with this keyboard shortcut

Get .env file variables into bash scripts

If your server has a .env file, it may be necessary to parse those variables into a bash script. This can be accomplished by using the 'source' command.

Why use ergonomic keyboards?

Ergonomic keyboards have a number of benefits.

Windows Hello for Linux

There is a program called Howdy, which is like Windows Hello. It uses face data as authentication. Howdy Github Repository

Max Gialanella - 2024