Simple script to download OTA packages from Realme's endpoint.

Overview

Realme OTA Downloader

License GitHub release (latest by date including pre-releases) GitHub Issues

CLI tool (based on this C# program) to create requests to the Realme's endpoint.

Requirements

  • Python 3.9.
  • pycryptodome.

Installation

sudo apt install python3-pip
sudo pip3 install --upgrade pycryptodome git+https://github.com/R0rt1z2/realme-ota

Usage

usage: main.py [-h] [-c SERVER] [-i IMEI] [-t TIMEOUT] [-a ANDROID] [-r ROOT] [-d DUMP] [-o ONLY] [-s] [-v {0,1}]
               [-z {Query_Update,Result_Feedback,Query_Description,Reback_Abandon,Find_Rights,Appointment,Query_New_Model,Query_Ext_Content,Down_Feedback,CheckDown}]
               product_model ota_version

positional arguments:
  product_model         Product Model (ro.product.name).
  ota_version           OTA Version (ro.build.version.ota).

optional arguments:
  -h, --help            show this help message and exit
  -c SERVER, --server SERVER
                        Use specific server for the request (GL = 0, CN = 1, IN = 2, EU = 3).
  -i IMEI, --imei IMEI  Use custom IMEI for the request.
  -t TIMEOUT, --timeout TIMEOUT
                        Use custom timeout for the request.
  -a ANDROID, --android ANDROID
                        Use custom android version for the request.
  -r ROOT, --root ROOT  Use custom root status for the request.
  -d DUMP, --dump DUMP  Save request response into file.
  -o ONLY, --only ONLY  Only show the desired value from the request.
  -s, --silent          Enable silent output (purge logging).
  -v {0,1}, --verbosity {0,1}
                        Increase or decrease verbosity.
  -z {Query_Update,Result_Feedback,Query_Description,Reback_Abandon,Find_Rights,Appointment,Query_New_Model,Query_Ext_Content,Down_Feedback,CheckDown}, --command {Query_Update,Result_Feedback,Query_Description,Reback_Abandon,Find_Rights,Appointment,Query_New_Model,Query_Ext_Content,Down_Feedback,CheckDown}
                        Use custom CMD for the request.

Usage example

# Normal usage - print the entire request
[email protected]: $ realme-ota RMX2020 RMX2020_11.A.59_0590_202102181155
[2021-09-23 20:26:38.037321] I: Requesting for RMX2020 - RMX2020_11.A.59...
[2021-09-23 20:26:38.764134] I: {'parent': 'ota', 'otaVersion': 'RMX2020_11.A.65_0650_202108211659', 'down_url': 'https://ota-manual-sg.allawnofs.com/ota/21/08/24/5a398f51-8900-4178-8153-60b98bf4bf7e.ozip', 'newAndroidVersion': 'Android 10', 'description': 'http://ota-manual-sg.allawnofs.com/ota/21/08/30/69f5202e26b14b789054d9b9ac4cc9d8.html', 'recommend': '100', 'language': 'en-IN', 'versionName': 'RMX2020_11_A.65', 'rid': '96d9b7df-092a-4ac1-b810-b8a5664e7745', 'type': '1', 'newColorOSVersion': 'ColorOS 7.0', 'patch_size': '3287752078', 'patchFilePath': '/patch/amazone2/GLO/RMX2020/RMX2020_11.A.65_0650_202108211659/RMX2020_11_OTA_0650_all_xokQsbsYqeC2.ozip', 'osVersion': 'ColorOS 7.0', 'share': '.', 'id': '61330f13f69bc3c9e42fd3a3', 'googlePatchLevel': '0', 'patch_name': 'RMX2020_11_OTA_0650_all_xokQsbsYqeC2.ozip', 'paramFlag': 1, 'needDataSpace': '0', 'noticeType': 0, 'new_version': 'RMX2020_11.A.65_0650_202108211659', 'patch_md5': 'd99b0ea8069f9bd3b7c00296b01dc372', 'versionCode': 650, 'silenceUpdate': 0, 'active_url': 'https://ota-manual-sg.allawnofs.com/ota/21/08/24/5a398f51-8900-4178-8153-60b98bf4bf7e.ozip', 'wipe': '0', 'questionnaireEnable': False, 'extract': 'This release updated Android security patch and improved system stability.', 'version_name': 'RMX2020_11_A.65', 'aid': 'RMX2020_11.A', 'status': 'published', 'msg': 'SUCCEED', 'resultCode': 1}
[email protected]: $
# Custom usage - only print the download URL
[email protected]: $ realme-ota RMX2020 RMX2020_11.A.59_0590_202102181155 -o down_url -s -v 0
https://ota-manual-sg.allawnofs.com/ota/21/08/24/5a398f51-8900-4178-8153-60b98bf4bf7e.ozip
[email protected]: $

License

  • This tool is licensed under the GNU (v3) General Public License. See LICENSE for more details.
Owner
Roger Ortiz
Roger Ortiz
CLI tool to view your VIT timetable from terminal anytime!

VITime CLI tool to view your timetable from terminal anytime! Table of contents Preview Installation PyPI Source code Updates Setting up Add timetable

16 Oct 04, 2022
Python CLI utility and library for manipulating SQLite databases

sqlite-utils Python CLI utility and library for manipulating SQLite databases. Some feature highlights Pipe JSON (or CSV or TSV) directly into a new S

Simon Willison 1.1k Jan 04, 2023
Automated CI toolchain to produce precompiled opencv-python, opencv-python-headless, opencv-contrib-python and opencv-contrib-python-headless packages.

OpenCV on Wheels Pre-built CPU-only OpenCV packages for Python. Check the manual build section if you wish to compile the bindings from source to enab

OpenCV 3.2k Jan 04, 2023
Universal Command Line Interface for Amazon Web Services

This package provides a unified command line interface to Amazon Web Services.

Amazon Web Services 13.3k Jan 07, 2023
Analyzing the most strategic words to guess on Wordle, based on letter frequency distributions

wordle-analysis Evaluating different heuristics to determine the most effective solving strategy and building an AI-powered assistant tool to help you

Sejal Dua 9 Feb 27, 2022
Runs a command in P4wnP1 and displays the output on OLED screen (SH1106)

p4wnp1-oled-terminal Runs a command in P4wnP1 and displays the output on OLED screen (SH1106) Works on Raspberry Pi Zero 2 W Tested successfully on RP

PawnSolo 1 Dec 14, 2021
Get latest astronomy job and rumor news in your command line

astrojobs Tired of checking the AAS job register and astro rumor mill for job news? Get the latest updates in the command line! astrojobs automaticall

Philip Mocz 19 Jul 20, 2022
A powerful Minecraft command library.

Mecha A powerful Minecraft command library. from mecha import Mecha

32 Dec 10, 2022
a-shell: A terminal for iOS, with multiple windows

a-shell: A terminal for iOS, with multiple windows

Nicolas Holzschuch 1.7k Jan 02, 2023
Dart Version Manager CLI implemented with Python and Typer.

Dart Version Manager Dart Version Manager CLI implemented with Python and Typer Usage: $ dvm [OPTIONS] COMMAND [ARGS]... Options: --install-completion

EducUp 6 Jun 26, 2022
Code for the Open Data Day 2022 publicbodies.org Nepal data scraping activities.

Open Data Day Publicbodies.org Nepal We've gathered on Saturday, 5th March 2022 with Open Knowledge Nepal in order to try and automate the collection

Augusto Herrmann 2 Mar 12, 2022
A Bot Which Send Automatically Commands To Karuta Hub to Gain it's Currency

A Bot Which Send Automatically Commands To Karuta Hub to Gain it's Currency

HarshalWaykole 1 Feb 09, 2022
🌍 Harness the power of whatsmydns from the command-line.

chkdns Harness the power of whatsmydns from the command-line. Installing with pip pip install chkdns Run chkdns --host github.com Alternatively you ca

Craig Gumbley 3 Oct 29, 2022
A python script that enables a raspberry pi sd card through the CLI and automates the process of configuring network details and ssh.

This project is one script (wpa_helper.py) written in python that will allow for the user to automate the proccess of setting up a new boot disk and configuring ssh and network settings for the pi

Theo Kirby 6 Jun 24, 2021
Regis-ltmpt-auto - Program register ltmpt 2022 automatis

LTMPT Register Otomatis 2022 Program register ltmpt 2022 automatis dibuat untuk

1 Jan 13, 2022
Tidier - a simple command line tool that helps you make your files tidy up

Tidier - a simple command line tool that helps you make your files tidy up

AmirMohammad Hosseini Nasab 8 Aug 16, 2022
triggercmd is a CLI client for the TRIGGERcmd cloud service.

TriggerCMD CLI client triggercmd is a CLI client for the TRIGGERcmd cloud service. installation the triggercmd package is available in PyPI. to instal

Gustavo Soares 7 Oct 18, 2022
A Python script for finding a food-truck based on latitude and longitude coordinates that you can run in your shell

Food Truck Finder Project Description This repository contains a Python script for finding a food-truck based on latitude and longitude coordinates th

1 Jan 22, 2022
Seamlessly run Python code in IPython from Vim

Seamlessly run Python code from Vim in IPython, including executing individual code cells similar to Jupyter notebooks and MATLAB. This plugin also supports other languages and REPLs such as Julia.

Hans Chen 269 Dec 20, 2022
A next-generation CLI and TUI that aims to be your personal assistant for everything competitive programming related. 🚀

Competitive Programming Tool Kit The Competitive Programming Tool Kit (cptk for short), is a command line and terminal user interface (CLI and TUI) th

Alon 4 May 21, 2022