Skip to content

Commit 94be628

Browse files
authored
Release v0.5.4-beta (#488)
This PR adds: - support for `violet` (Xiaomi Redmi Note 7 Pro) (thanks to @anon1892) - support for `apollo` / `apollon` (Xiaomi Mi 10T / 10T Pro / Redmi K30S Ultra) (thanks to @anon1892) - support for `ali` (moto g6) (thanks to @SirRGB) - support for `addison` (moto z play) (thanks to @SirRGB) - support for `billie` (OnePlus Nord N10) (thanks to @SirRGB) chores: - remove support for the Galaxy 10 line of devices #678 - update flet to version 0.24.1 - use the lastest versions of adb, fastboot and libusb
2 parents 3a79be5 + ae9c923 commit 94be628

25 files changed

+3201
-2480
lines changed

.pre-commit-config.yaml

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
fail_fast: true
44
repos:
55
- repo: https://github.com/pre-commit/pre-commit-hooks
6-
rev: v3.2.0
6+
rev: v5.0.0
77
hooks:
88
- id: check-added-large-files
99
- id: check-ast
@@ -14,13 +14,12 @@ repos:
1414
- id: trailing-whitespace
1515

1616
- repo: https://github.com/psf/black
17-
rev: 22.10.0
17+
rev: 24.10.0
1818
hooks:
1919
- id: black
20-
language_version: python3.10
2120

2221
- repo: https://github.com/astral-sh/ruff-pre-commit
23-
rev: v0.2.1
22+
rev: v0.8.1
2423
hooks:
2524
# Run the linter.
2625
- id: ruff
@@ -29,7 +28,7 @@ repos:
2928
- id: ruff-format
3029

3130
- repo: https://github.com/python-poetry/poetry
32-
rev: 1.6.1
31+
rev: 1.8.4
3332
hooks:
3433
- id: poetry-check
3534
#- id: poetry-lock

Makefile

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,8 @@ poetry:
1616
curl -sSL https://install.python-poetry.org | python3 -
1717

1818
install:
19+
rm poetry.lock
20+
rm -rf openandroidinstaller/bin
1921
poetry install --with dev
2022
poetry run python scripts/download-tools.py
2123
poetry run pre-commit install

README.md

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -61,12 +61,10 @@ Here are the official links for:
6161
- some custom ROMs:
6262
- [BlissRoms](https://blissroms.org)
6363
- [CalyxOS](https://calyxos.org)
64-
- [DivestOS](https://divestos.org)
6564
- [/e/OS](https://doc.e.foundation/devices)
6665
- [GrapheneOS](https://grapheneos.org)
6766
- [LineageOS](https://wiki.lineageos.org/devices)
6867
- [LineageOS for MicroG](https://download.lineage.microg.org)
69-
- [PixelExperience](https://download.pixelexperience.org)
7068
- Recovery:
7169
- [TWRP recovery](https://twrp.me/Devices)
7270
- Optional Add-ons:
@@ -85,7 +83,7 @@ After starting the app you will be prompted to plug your device into your comput
8583

8684
## Officially supported devices
8785

88-
Currently, the **we support 86 devices** by various vendors and working on adding more soon!
86+
Currently, the **we support 88 devices** by various vendors and working on adding more soon!
8987

9088
Support for these devices is provided as best effort, but things might still go wrong.
9189
Help to improve the tool by reporting any issues you might face.
@@ -127,11 +125,13 @@ Vendor | Device Name | CodeName | Models | Status
127125
---|---|---|---|---
128126
Motorola | edge | [racer](https://wiki.lineageos.org/devices/racer) | XT2063-2, XT2063-3 | tested
129127
Motorola | moto g5 | [cedric](https://wiki.lineageos.org/devices/cedric) | XT1670, XT1671, XT1672, XT1675, XT1676, XT1677 | tested
128+
Motorola | moto g6 | ali | XT1925-1, XT1925-3, XT1925-4, XT1925-5, XT1925-6, XT1925-7, XT1925-13 | tested
130129
Motorola | moto g6 plus | [evert](https://wiki.lineageos.org/devices/evert) | XT1926-2, XT1926-3, XT1926-5, XT1926-6, XT1926-7, XT1926-8, XT1926-9 | tested
131130
Motorola | moto g7 power | [ocean](https://wiki.lineageos.org/devices/ocean) | XT1955-1, XT1955-2, XT1955-4, XT1955-5, XT1955-7 | tested
132131
Motorola | moto g 5G plus / one 5G | [nairo](https://wiki.lineageos.org/devices/nairo) | XT2075-3, XT2075-5 | tested
133132
Motorola | moto g 5G / one 5G ace | [kiev](https://wiki.lineageos.org/devices/kiev) | XT2113-2, XT2113-3 | tested
134133
Motorola | moto z | [griffin](https://wiki.lineageos.org/devices/griffin) | XT1650-3, XT1650-05 | tested
134+
Motorola | moto z play | [addison](https://wiki.lineageos.org/devices/addison) | XT1635-01, XT1635-02, XT1635-03 | untested
135135

136136
</details>
137137

@@ -151,6 +151,7 @@ OnePlus | 7 Pro | [guacamole](https://wiki.lineageos.org/devices/guacamole) | GM
151151
OnePlus | 7T | [hotdogb](https://wiki.lineageos.org/devices/hotdogb) | HD1900, HD1901, HD1903, HD1905 | tested
152152
OnePlus | 7T Pro | [hotdog](https://wiki.lineageos.org/devices/hotdog) | HD1910, HD1911, HD1913, HD1917 | tested
153153
OnePlus | Nord | [avicii](https://wiki.lineageos.org/devices/avicii) | AC2001, AC2003 | tested
154+
OnePlus | Nord N10 | [billie](https://wiki.lineageos.org/devices/billie) | BE2026, BE2029 | untested
154155
OnePlus | Nord N200 | [dre](https://wiki.lineageos.org/devices/dre) | DE2117 | tested
155156
OnePlus | 9 | lemonade | LE2110, LE2111, LE2113, LE2115 | under development
156157

@@ -181,9 +182,6 @@ Samsung | Galaxy S7 | [herolte](https://wiki.lineageos.org/devices/herolte) | SM
181182
Samsung | Galaxy S7 Edge | [hero2lte](https://wiki.lineageos.org/devices/hero2lte) | | tested
182183
Samsung | Galaxy S8 | dreamlte | | tested
183184
Samsung | Galaxy S9 | [starlte](https://wiki.lineageos.org/devices/starlte) | | tested
184-
Samsung | Galaxy S10 | [beyond1lte](https://wiki.lineageos.org/devices/beyond1lte) | | tested
185-
Samsung | Galaxy S10e | [beyond0lte](https://wiki.lineageos.org/devices/beyond0lte) | | tested
186-
Samsung | Galaxy S10+ | [beyond2lte](https://wiki.lineageos.org/devices/beyond2lte) | | tested
187185
Samsung | Galaxy Note 3 LTE | [hltetmo](https://wiki.lineageos.org/devices/hltetmo) | N900T/V/W8 | tested
188186
Samsung | Galaxy Note 8 | greatlte | SM-N950F | tested
189187
Samsung | Galaxy Note 9 | [crownlte](https://wiki.lineageos.org/devices/crownlte) | | tested
@@ -216,15 +214,17 @@ Xiaomi | Redmi 7A / 8 / 8A / 8A Dual | [Mi439](https://wiki.lineageos.org/device
216214
Xiaomi | Redmi 9A / 9C / 9AT / 9i / 9A Sport / 10A / 10A Sport | garden / dandelion / blossom / angelican | | tested
217215
Xiaomi | Redmi 9 / Poco M2 | [lancelot](https://wiki.lineageos.org/devices/lancelot) / galahad / shivan | | untested
218216
Xiaomi | Redmi Note 7 | [lavender](https://wiki.lineageos.org/devices/lavender) | | tested
217+
Xiaomi | Redmi Note 7 Pro | [violet](https://wiki.lineageos.org/devices/violet) | | tested
219218
Xiaomi | Redmi Note 8 / 8T | [ginkgo](https://wiki.lineageos.org/devices/ginkgo) / willow | | untested
220219
Xiaomi | Redmi Note 8 Pro | begonia | | untested
221220
Xiaomi | Redmi Note 9S / 9 Pro / 9 Pro Max / 10 Lite / Poco M2 pro | [miatoll](https://wiki.lineageos.org/devices/lavender) : gram / curtana / excalibur / joyeuse | | untested
222221
Xiaomi | Redmi Note 10S / 11SE / Poco M5S | [rosemary](https://wiki.lineageos.org/devices/rosemary) / maltose / secret /rosemary_p | | untested
222+
Xiaomi | Redmi Note 10 Pro | [sweet](https://wiki.lineageos.org/devices/sweet) | M2101K6G | tested
223223
Xiaomi | Mi A2 / Mi 6X | jasmine_sprout | | untested
224224
Xiaomi | Mi 8 | [dipper](https://wiki.lineageos.org/devices/dipper) | | untested
225225
Xiaomi | Mi 9T / Redmi K20 | [davinci](https://wiki.lineageos.org/devices/davinci) / davinciin | | untested
226226
Xiaomi | Redmi K20 Pro / Mi 9T Pro | raphael / raphaelin | | untested
227-
Xiaomi | Redmi Note 10 Pro | [sweet](https://wiki.lineageos.org/devices/sweet) | M2101K6G | tested
227+
Xiaomi | Mi 10T / Mi 10T Pro / Redmi K20 | [apollon](https://wiki.lineageos.org/devices/apollon) / apollo | | untested
228228
Xiaomi | Redmi K40 / Mi 11X / Poco F3 | [alioth](https://wiki.lineageos.org/devices/alioth) / aliothin | | untested
229229
Xiaomi | Poco X3 / X3 NFC | [surya](https://wiki.lineageos.org/devices/surya) / karna | | untested
230230
Xiaomi | Poco X3 Pro | [vayu](https://wiki.lineageos.org/devices/vayu) | | tested
@@ -276,13 +276,13 @@ The project is supported by the following organizations and companies:
276276
## Credits
277277

278278
- The [Android SDK Platform Tools](https://developer.android.com/studio/releases/platform-tools) (such as adb and fastboot) are [Apache](https://android.googlesource.com/platform/system/adb/+/refs/heads/master/NOTICE)-licensed universal Android utilities
279-
- [Heimdall](https://gitlab.com/BenjaminDobell/Heimdall) is an [MIT](https://gitlab.com/BenjaminDobell/Heimdall/-/blob/master/LICENSE)-licensed replacement for the leaked ODIN tool to flash Samsung devices.
279+
- [Heimdall](https://github.com/Benjamin-Dobell/Heimdall) is an [MIT](https://github.com/Benjamin-Dobell/Heimdall/blob/master/LICENSE)-licensed replacement for the leaked ODIN tool to flash Samsung devices.
280280
- [`libusb-1.0`](https://github.com/libusb/libusb) is a [LGPL-2.1](https://github.com/libusb/libusb/blob/master/COPYING)-licensed library for USB device access from Linux, macOS, Windows and others.
281281
- [`copy-partitions-20220613-signed.zip`](https://mirrorbits.lineageos.org/tools/copy-partitions-20220613-signed.zip) The copy-partitions script was created by LineageOS developer erfanoabdi and filipepferraz and released under LGPL. (It's used when the partitions need to be copied before flashing)
282282

283283
## License
284284

285-
Original development by [Tobias Sterbak](https://tobiassterbak.com). Copyright (C) 2022-2024.
285+
Original development by [Tobias Sterbak](https://tobiassterbak.com). Copyright (C) 2022-2025.
286286

287287
This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
288288

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
metadata:
2+
maintainer: SirRGB
3+
device_name: Motorola Moto Z Play
4+
is_ab_device: false
5+
device_code: addision
6+
supported_device_codes:
7+
- addison
8+
- addison_retail
9+
untested: true
10+
steps:
11+
unlock_bootloader:
12+
- type: call_button
13+
content: >
14+
As a first step, you need to unlock the bootloader of your device. A bootloader is the piece of software, that tells your phone
15+
how to start and run an operating system (like Android). You need to boot into fastboot mode by pressing the 'Confirm and run' button. Then continue.
16+
command: adb_reboot_bootloader
17+
- type: call_button
18+
content: >
19+
Now you need to get your device ID to get an unlock code from Motorola. Press 'Confirm and run' to get the ID. (You need to toggle 'Advanced Output' here to see it.)
20+
Copy it to a separate file to use it in the next step.
21+
command: fastboot_get_unlock_data
22+
- type: link_button_with_confirm
23+
content: >
24+
Click on the button to open the instructions on Motorola's official unlocking website to generate an unlock code for your bootloader.
25+
Copy the code from the last step to the website and follow the instructions there. Then continue here.
26+
link: https://motorola-global-portal.custhelp.com/app/standalone/bootloader/unlock-your-device-a
27+
- type: confirm_button
28+
content: >
29+
Connect the device to your PC via USB. And confirm to continue.
30+
- type: call_button_with_input
31+
content: >
32+
Use your code to unlock the bootloader of your device. Type in the full 21 character code you received by email (Example: 5RTSQCYL7ZJKL4NN35MY). Then confirm an run. Afterwards you can continue.
33+
command: fastboot_unlock_with_code
34+
- type: call_button_with_input
35+
content: >
36+
You need to perform the last command again, so reenter the code and run again. Afterwards you can continue.
37+
command: fastboot_unlock_with_code
38+
- type: call_button
39+
content: >
40+
Press the button to reboot. Since the device resets completely, you will need to re-enable USB debugging to continue.
41+
Connect your device to your PC via USB. Then confirm here to continue.
42+
command: fastboot_reboot
43+
boot_recovery:
44+
- type: call_button
45+
content: >
46+
Now you need to boot a custom recovery system on the phone. A recovery is a small subsystem on your phone, that manages updating,
47+
adapting and repairing of the operating system.
48+
Make sure your device is turned on. You need to reboot into the bootloader again by pressing 'Confirm and run' here. Then continue.
49+
command: adb_reboot_bootloader
50+
- type: call_button
51+
img: twrp-start.jpeg
52+
content: >
53+
Boot a custom recovery (temporarily) by pressing 'Confirm and run'. Once it's done continue.
54+
command: fastboot_boot_recovery
Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
metadata:
2+
maintainer: SirRGB
3+
device_name: Motorola Moto G6
4+
is_ab_device: false
5+
device_code: ali
6+
supported_device_codes:
7+
- ali
8+
untested: true
9+
steps:
10+
unlock_bootloader:
11+
- type: call_button
12+
content: >
13+
As a first step, you need to unlock the bootloader of your device. A bootloader is the piece of software, that tells your phone
14+
how to start and run an operating system (like Android). You need to boot into fastboot mode by pressing the 'Confirm and run' button. Then continue.
15+
command: adb_reboot_bootloader
16+
- type: call_button
17+
content: >
18+
Now you need to get your device ID to get an unlock code from Motorola. Press 'Confirm and run' to get the ID. (You need to toggle 'Advanced Output' here to see it.)
19+
Copy it to a separate file to use it in the next step.
20+
command: fastboot_get_unlock_data
21+
- type: link_button_with_confirm
22+
content: >
23+
Click on the button to open the instructions on Motorola's official unlocking website to generate an unlock code for your bootloader.
24+
Copy the code from the last step to the website and follow the instructions there. Then continue here.
25+
link: https://motorola-global-portal.custhelp.com/app/standalone/bootloader/unlock-your-device-a
26+
- type: confirm_button
27+
content: >
28+
Connect the device to your PC via USB. And confirm to continue.
29+
- type: call_button_with_input
30+
content: >
31+
Use your code to unlock the bootloader of your device. Type in the full 21 character code you received by email (Example: 5RTSQCYL7ZJKL4NN35MY). Then confirm an run. Afterwards you can continue.
32+
command: fastboot_unlock_with_code
33+
- type: call_button_with_input
34+
content: >
35+
You need to perform the last command again, so reenter the code and run again. Afterwards you can continue.
36+
command: fastboot_unlock_with_code
37+
- type: call_button
38+
content: >
39+
Press the button to reboot. Since the device resets completely, you will need to re-enable USB debugging to continue.
40+
Connect your device to your PC via USB. Then confirm here to continue.
41+
command: fastboot_reboot
42+
boot_recovery:
43+
- type: call_button
44+
content: >
45+
Now you need to boot a custom recovery system on the phone. A recovery is a small subsystem on your phone, that manages updating,
46+
adapting and repairing of the operating system.
47+
Make sure your device is turned on. You need to reboot into the bootloader again by pressing 'Confirm and run' here. Then continue.
48+
command: adb_reboot_bootloader
49+
- type: call_button
50+
img: twrp-start.jpeg
51+
content: >
52+
Boot a custom recovery (temporarily) by pressing 'Confirm and run'. Once it's done continue.
53+
command: fastboot_boot_recovery
Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
metadata:
2+
maintainer: A non (anon)
3+
brand: xiaomi
4+
device_name: Xiaomi Mi 10T / 10T Pro / Redmi K30S Ultra
5+
is_ab_device: false
6+
device_code: apollon
7+
supported_device_codes:
8+
- apollon
9+
- apollo
10+
untested: true
11+
requirements:
12+
android: 12 (S)
13+
steps:
14+
unlock_bootloader:
15+
- type: confirm_button
16+
content: >
17+
As a first step, you need to unlock the bootloader. A bootloader is the piece of software, that tells your phone
18+
how to start and run an operating system (like Android). Your device should be turned on. This will reset your phone.
19+
- type: link_button_with_confirm
20+
content: >
21+
- Create a Mi account on Xiaomi’s website. Beware that one account is only allowed to unlock one unique device every 30 days.
22+
23+
- Add a phone number to your Mi account, insert a SIM into your phone.
24+
25+
- Enable developer options in `Settings` > `About Phone` by repeatedly tapping MIUI Version.
26+
27+
- Link the device to your Mi account in `Settings` > `Additional settings` > `Developer options` > `Mi Unlock status`.
28+
29+
- Download the Mi Unlock app with the link bellow (Windows is required to run the app), and follow the instructions provided by the app. It may tell you that you have to wait, usually 7 days. If it does so, please wait the quoted amount of time before continuing to the next step!
30+
31+
- After device and Mi account are successfully verified, the bootloader should be unlocked.
32+
33+
- Since the device resets completely, you will need to re-enable USB debugging to continue : `Settings` > `Additional settings` > `Developer options` > `USB debugging`
34+
link: https://en.miui.com/unlock/download_en.html
35+
boot_recovery:
36+
- type: confirm_button
37+
content: >
38+
Now you need to boot a custom recovery system on the phone. A recovery is a small subsystem on your phone, that manages updating,
39+
adapting and repairing of the operating system.
40+
- type: call_button
41+
content: >
42+
Once the device is fully booted, you need to reboot into the bootloader again by pressing 'Confirm and run' here. Then continue.
43+
command: adb_reboot_bootloader
44+
- type: call_button
45+
content: >
46+
Install the recovery you chosen before by pressing 'Confirm and run'. Once it's done continue.
47+
command: fastboot_flash_recovery
48+
- type: call_button
49+
img: twrp-start.jpeg
50+
content: >
51+
Reboot to recovery by pressing 'Confirm and run', and hold the Vol+ button of your phone UNTIL you see the recovery.
52+
If MiUI starts, you have to start the process again, since MiUI delete the recovery you just flashed.
53+
Once it's done continue.
54+
command: fastboot_reboot_recovery
Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
metadata:
2+
maintainer: SirRGB
3+
device_name: OnePlus Nord N10 5G
4+
is_ab_device: true
5+
device_code: billie
6+
supported_device_codes:
7+
- billie
8+
- OnePlusN10
9+
untested: true
10+
additional_steps:
11+
- dtbo
12+
- vbmeta
13+
- vendor_boot
14+
requirements:
15+
android: 11
16+
steps:
17+
unlock_bootloader:
18+
- type: call_button
19+
content: >
20+
As a first step, you need to unlock the bootloader. A bootloader is the piece of software, that tells your phone
21+
how to start and run an operating system (like Android). Your device should be turned on.
22+
Press 'Confirm and run' to reboot into the bootloader.
23+
command: adb_reboot_bootloader
24+
- type: call_button
25+
content: >
26+
In this step you actually unlock the bootloader. Just press 'Confirm and run' here. The phone will automatically reboot and reformat.
27+
Once it's done, press continue here.
28+
command: fastboot_oem_unlock
29+
- type: confirm_button
30+
content: >
31+
The bootloader is now unlocked. Since the device resets completely, you will need to re-enable Developer Options and USB debugging to continue.
32+
boot_recovery:
33+
- type: call_button
34+
content: >
35+
Now you need to boot a custom recovery system on the phone. A recovery is a small subsystem on your phone, that manages updating,
36+
adapting and repairing of the operating system.
37+
Make sure your device is turned on. You need to reboot into the bootloader again by pressing 'Confirm and run' here. Then continue.
38+
command: adb_reboot_bootloader
39+
- type: call_button
40+
img: twrp-start.jpeg
41+
content: >
42+
Boot a custom recovery (temporarily) by pressing 'Confirm and run'. Once it's done continue.
43+
command: fastboot_boot_recovery
44+
- type: call_button
45+
content: >
46+
In some cases, the inactive slot can be unpopulated or contain much older firmware than the active slot, leading to various issues including a potential hard-brick.
47+
We can ensure none of that will happen by copying the contents of the active slot to the inactive slot. Press 'confirm and run' to to this. Once you are in the bootloader again, continue.
48+
command: adb_twrp_copy_partitions
49+
- type: call_button
50+
img: twrp-start.jpeg
51+
content: >
52+
Now we need to boot into recovery again. Press run and when you see the TWRP screen you can continue.
53+
command: fastboot_boot_recovery

openandroidinstaller/assets/configs/beyond0lte.yaml renamed to openandroidinstaller/assets/configs/removed/beyond0lte.yaml

File renamed without changes.

openandroidinstaller/assets/configs/beyond1lte.yaml renamed to openandroidinstaller/assets/configs/removed/beyond1lte.yaml

File renamed without changes.

openandroidinstaller/assets/configs/beyond2lte.yaml renamed to openandroidinstaller/assets/configs/removed/beyond2lte.yaml

File renamed without changes.

0 commit comments

Comments
 (0)