Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release 0.5.0-beta #191

Merged
merged 122 commits into from
Oct 2, 2023
Merged
Show file tree
Hide file tree
Changes from 120 commits
Commits
Show all changes
122 commits
Select commit Hold shift + click to select a range
7644294
Upgraded actions
MagicLike Jul 27, 2023
af662da
Upgraded python version
MagicLike Jul 27, 2023
3fee6e5
Upgraded release action
MagicLike Jul 27, 2023
51c8ef4
Revert "Upgraded python version"
MagicLike Jul 27, 2023
f285572
Switch t oversion number on release action
MagicLike Jul 27, 2023
29ac30b
Updated version number
MagicLike Jul 27, 2023
fda8272
Upgraded manual build script
MagicLike Jul 27, 2023
47e6e72
Prepare release 0.4.5-beta
tsterbak Jul 29, 2023
2a136b5
Fixed multiple spelling and formatting issues in Samsung configs
MagicLike Jul 30, 2023
82be752
LineageOS page for S8 does not exist
MagicLike Jul 30, 2023
061c6b8
Added new device code variant to `beyond0lte`
MagicLike Jul 31, 2023
1148287
Added new device code variant to `beyond1lte`
MagicLike Jul 31, 2023
e593c63
Added new device code variant to `a5y17lte`
MagicLike Jul 31, 2023
0604ff1
Add dtbo, vbmeta, super_empty flashing
anon1892 Aug 1, 2023
62be5c3
Added device specific notes
anon1892 Aug 1, 2023
7d807e3
Added lavender (Redmi Note 7)
anon1892 Aug 1, 2023
bf968ff
Added ginkgo (Redmi Note 8 / 8T)
anon1892 Aug 1, 2023
7af7976
Added garden (Redmi 9A & co.)
anon1892 Aug 1, 2023
361f0a4
Added Mi439 (Redmi 7A & co.)
anon1892 Aug 1, 2023
f3c91bc
Added rosemary (Redmi Note 10S & co.)
anon1892 Aug 1, 2023
30c94fa
Add miatoll (Redmi Note 9 Pro &co.)
anon1892 Aug 2, 2023
812bb51
Update `notes`, add `brand` and `untested` metadata.
anon1892 Aug 2, 2023
48be05d
Add `brand` metadata & update of `notes`
anon1892 Aug 2, 2023
f9351dd
Add `brand` metadata & update of `notes`
anon1892 Aug 2, 2023
14229af
Add `brand` metadata & update of `notes`
anon1892 Aug 2, 2023
887e265
Add `brand` metadata & update of `notes`
anon1892 Aug 2, 2023
c4aaa3c
Add `brand` & `untested` metadata & update of `notes`
anon1892 Aug 2, 2023
b27cb33
Add `brand` & `untested` metadata & update of `notes`
anon1892 Aug 2, 2023
0e06fff
Add `brand` & `untested` metadata & update of `notes`
anon1892 Aug 2, 2023
616c7e6
Fix
anon1892 Aug 2, 2023
e963043
Actions update (#197)
tsterbak Aug 4, 2023
910e044
Add davinci (Xiaomi Mi 9T / Redmi K20)
anon1892 Aug 4, 2023
73b7f10
Add raphael (Xiaomi Mi 9T Pro / Redmi K20 Pro)
anon1892 Aug 4, 2023
f464396
Add function to know image sdk (mainly Android version+20)
anon1892 Aug 4, 2023
475d0e5
Samsung fixes (#201)
tsterbak Aug 4, 2023
e14293b
Reworked the device request template as form
MagicLike Aug 6, 2023
b1cee5b
Fix unlock_critical
tsterbak Aug 6, 2023
18faaf6
fix dreamlte config
tsterbak Aug 6, 2023
439eec1
Merge branch 'main' into dev
tsterbak Aug 6, 2023
60515ce
Updated hard-coded link to create a device request
MagicLike Aug 7, 2023
017d3ec
Allow flashing a custom recovery with a toggle switch
tsterbak Aug 8, 2023
2af8e34
Reworked the device request template as form (#243)
tsterbak Aug 8, 2023
5d34157
Set branch to anon1892:dtbo
tsterbak Aug 8, 2023
661f9b4
Update the code for flashing additional partitions and improve the la…
tsterbak Aug 8, 2023
68a369a
Merge branch 'openandroidinstaller-dev:main' into a5y17ltecan
MagicLike Aug 12, 2023
357002c
Add fastboot_flash_recovery and fastboot_reboot_recovery from anon1892
tsterbak Aug 16, 2023
757a85c
Merge support for device specific notes
tsterbak Aug 16, 2023
6b28b52
Merge branch 'anon1892-notes' into dev-flash-additional
tsterbak Aug 16, 2023
9ba8e21
Fix merge issue
tsterbak Aug 16, 2023
cceae91
[SPLIT] Add support for Mi439 (Redmi 7A & co.) (#226)
tsterbak Aug 16, 2023
554b75b
Remove supported recoveries from Mi439 config for now
tsterbak Aug 16, 2023
0bd2ccc
Fix config validation for notes field
tsterbak Aug 16, 2023
13c85be
Improve the code of the notes generation a bit
tsterbak Aug 16, 2023
b90a5e4
Change the location the skip-buttons to the bottom of the start view.
tsterbak Aug 16, 2023
fd29a48
Improve typing a bit
tsterbak Aug 16, 2023
08fa43f
Add an info box with explainations for additional images; show the sc…
tsterbak Aug 16, 2023
5d759ea
Added new device code variants to `beyond0lte` and `beyond1lte` (#205)
tsterbak Aug 22, 2023
ee8938c
Add support for Samsung Galaxy S5 LTE (G900F)
tsterbak Aug 22, 2023
96a6876
Support galaxy s5 (#255)
tsterbak Aug 22, 2023
a4320b8
Fix the bug with the progress bar percentages
tsterbak Aug 22, 2023
940e9d6
Fix the bug with the progress bar percentages (#256)
tsterbak Aug 22, 2023
3789f82
Fix vbmeta selection bug and update recovery checks on device codes
tsterbak Aug 22, 2023
b0e2a0b
Fix bugs on vbmeta flashing and checking recovery image
tsterbak Aug 22, 2023
8c5d438
Merge remote-tracking branch 'origin/dev' into dev-flash-additional
tsterbak Aug 29, 2023
ff5c2a1
Update tests
tsterbak Aug 29, 2023
0b53acc
ADd workflows to not flash the recovery and still work
tsterbak Aug 29, 2023
7092597
Minor fix
tsterbak Aug 29, 2023
6c09fbf
Fix some bugs in the behaviour of the select view with additional ima…
tsterbak Sep 4, 2023
83dbd7a
Update the message to acompany the install progress bar
tsterbak Sep 4, 2023
1cfc293
Fix bug where the validation still required some additional images ev…
tsterbak Sep 5, 2023
ed77d85
Improve behaviour of the continue buttons and validation
tsterbak Sep 5, 2023
bd343ed
Add support for vayu (Poco X3 Pro)
anon1892 Sep 8, 2023
dbb5f26
Merge branch 'main' into vayu
anon1892 Sep 8, 2023
0bc2f9d
Added formatting for device request link
MagicLike Sep 11, 2023
b95be2f
Bump actions/checkout to v4
MagicLike Sep 12, 2023
c83afaf
Added new device code variant to `a5y17lte` (#206)
tsterbak Sep 15, 2023
f26a6e4
Add support for cupid (Xiaomi 13)
anon1892 Sep 15, 2023
f122086
Merge branch 'main' into cupid
anon1892 Sep 15, 2023
68b4588
Update Bootloader unlock info
freechelmi Sep 16, 2023
c1fc3d4
reformat
freechelmi Sep 16, 2023
4ba78de
url linked
freechelmi Sep 16, 2023
c5cac41
Update Bootloader unlock info (#290)
tsterbak Sep 17, 2023
15e48d6
Resolved formatting issues in docs
MagicLike Sep 17, 2023
bb78278
Renamed `doc` folder to `docs`
MagicLike Sep 17, 2023
f37564b
Bootloader documentation reworded
MagicLike Sep 17, 2023
fe58bb3
Added bootloader policies
MagicLike Sep 17, 2023
560c5ba
Moved period
MagicLike Sep 17, 2023
e6cda79
Added Fastboot as flashing tool for LG
MagicLike Sep 17, 2023
1386f3c
Implemented GitHub's highlighted blockquotes
MagicLike Sep 17, 2023
b25e5bb
Added vendor lock disclamer
MagicLike Sep 18, 2023
5e31e38
Docs update (#293)
tsterbak Sep 26, 2023
aab4785
Merge branch 'dev' into dev-flash-additional
tsterbak Sep 26, 2023
7e34275
Dev: flash additional partitions (#246)
tsterbak Sep 26, 2023
1e4caff
Merge branch 'dev' into lavender
tsterbak Sep 27, 2023
55b4ab5
[SPLIT] Add support for lavender (Xiaomi Redmi Note 7) (#222)
tsterbak Sep 27, 2023
2a274cd
Fix lavender
tsterbak Sep 27, 2023
4dda7c0
Merge branch 'dev' into ginkgo
tsterbak Sep 27, 2023
89a17ba
[SPLIT] Add support for ginkgo (Xiaomi Redmi Note 8 / 8T) (#223)
tsterbak Sep 27, 2023
12e61ff
Update ginkgo
tsterbak Sep 27, 2023
ca4249f
Merge branch 'dev' into garden
tsterbak Sep 27, 2023
29285c3
[SPLIT] Add support for garden (Xiaomi Redmi 9A & co.) (#224)
tsterbak Sep 27, 2023
9890fd3
Update garden
tsterbak Sep 27, 2023
9b7f32a
Merge branch 'dev' into rosemary
tsterbak Sep 27, 2023
9819a3c
[SPLIT] Add support for rosemary (Xiaomi Redmi Note 10S & co.) (#225)
tsterbak Sep 27, 2023
30874e4
Update rosemary
tsterbak Sep 27, 2023
3346246
Merge branch 'dev' into miatoll
tsterbak Sep 27, 2023
5f79942
Add support for miatoll (Xiaomi Redmi Note 9 Pro / 9S ... Poco M2 Pro…
tsterbak Sep 27, 2023
7ed8dc8
Update miatoll
tsterbak Sep 27, 2023
9d0c800
Merge branch 'dev' into davinci
tsterbak Sep 27, 2023
3cf8b1d
Add support for davinci (Xiaomi Mi 9T / Redmi K20) (#234)
tsterbak Sep 27, 2023
976fa07
Update davinci
tsterbak Sep 27, 2023
02ab1e9
Merge branch 'dev' into raphael
tsterbak Sep 27, 2023
333a6b0
Add support for raphael (Xiaomi Mi 9T Pro / Redmi K20 Pro) (#235)
tsterbak Sep 27, 2023
d1e6162
Merge branch 'dev' into vayu
tsterbak Sep 27, 2023
18050ba
Add support for vayu (Poco X3 Pro) (#271)
tsterbak Sep 27, 2023
90f3f45
Merge branch 'dev' into cupid
tsterbak Sep 27, 2023
09c1b93
Add support for cupid (Xiaomi 12) (#287)
tsterbak Sep 27, 2023
7a456fe
Update configs
tsterbak Sep 27, 2023
fcfe2a5
Add and fix the metadata
tsterbak Sep 28, 2023
f293cae
Display details table on bootloader unlocking
tsterbak Oct 1, 2023
4364874
fix formating on bootloader-doc
tsterbak Oct 1, 2023
9ba8c27
Bump device count to 73 and version to 0.5.0
tsterbak Oct 2, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
23 changes: 0 additions & 23 deletions .github/ISSUE_TEMPLATE/device-support-request.md

This file was deleted.

89 changes: 89 additions & 0 deletions .github/ISSUE_TEMPLATE/device-support-request.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,89 @@
name: Device support request
description: Request support for a new device
title: Add support for <DEVICE>
labels: ["device"]
body:
- type: markdown
attributes:
value: "Thank you for your interest in OpenAndroidInstaller!"
- type: markdown
attributes:
value: "To get your device supported, please take the time to fill out this form."
- type: markdown
attributes:
value: "---"
- type: checkboxes
attributes:
label: Is your device already requested?
description: Please search to see if an issue for your device already exists.
options:
- label: I have searched the existing issues
required: true
- type: markdown
attributes:
value: "---"
- type: markdown
attributes:
value: "**Please input your device's details below:**"
- type: input
attributes:
label: Brand
description: The brand / manufacturer of your device
placeholder: Google
validations:
required: true
- type: input
attributes:
label: Name
description: The name of your device
placeholder: Pixel 3a
validations:
required: true
- type: input
attributes:
label: Device code
description: The device code OAI gave you in the error message
placeholder: sargo
validations:
required: true
- type: input
attributes:
label: Model
description: The model name of your device (only required, if there are several models)
placeholder: G020F
validations:
required: false
- type: markdown
attributes:
value: "---"
- type: textarea
attributes:
label: Device images
description: "Please provide links to any available images for the device, such as official stock firmware, Custom ROMs and Recoveries you would like to install."
placeholder: |
- Custom ROM: https://wiki.lineageos.org/devices/sargo
- Recovery: https://twrp.me/google/googlepixel3a.html
#value: |
# - Custom ROM:
# - Recovery:
# - Stock firmware (if needed & existing):
render: Markdown
validations:
required: false
- type: markdown
attributes:
value: "---"
- type: checkboxes
attributes:
label: Do you own the device and would be willing to test the installer?
options:
- label: I own the device and am willing to test the installer on it.
required: true
- type: markdown
attributes:
value: "---"
- type: textarea
attributes:
label: Additional context
description: Please provide any additional context or information that might be helpful in adding support for this device.
render: Markdown
16 changes: 8 additions & 8 deletions .github/workflows/build-release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,8 @@ jobs:
matrix:
os: ['ubuntu-20.04', 'ubuntu-latest']
steps:
- uses: actions/checkout@v2
- uses: actions/setup-python@v2
- uses: actions/checkout@v4
- uses: actions/setup-python@v4
with:
python-version: 3.9
- run: pip install -r requirements.txt
Expand All @@ -32,8 +32,8 @@ jobs:
matrix:
os: ['ubuntu-20.04', 'ubuntu-latest', 'macos-latest']
steps:
- uses: actions/checkout@v2
- uses: actions/setup-python@v2
- uses: actions/checkout@v4
- uses: actions/setup-python@v4
with:
python-version: 3.9
- run: pip install -r requirements.txt
Expand All @@ -48,8 +48,8 @@ jobs:
needs: ci
runs-on: 'windows-latest'
steps:
- uses: actions/checkout@v2
- uses: actions/setup-python@v2
- uses: actions/checkout@v4
- uses: actions/setup-python@v4
with:
python-version: 3.9
- run: pip install -r requirements.txt
Expand All @@ -66,7 +66,7 @@ jobs:
- build-windows
runs-on: 'ubuntu-latest'
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4
- name: Download artifact
uses: actions/download-artifact@v3
- name: Display structure of downloaded files
Expand All @@ -86,7 +86,7 @@ jobs:
- name: Display structure of downloaded files
run: ls -R
- name: Create release
uses: marvinpinto/action-automatic-releases@latest
uses: dciborow/action-github-releases@v1.0.1
if: startsWith(github.ref, 'refs/tags/')
with:
repo_token: ${{ secrets.GITHUB_TOKEN }}
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/manual-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,8 @@ jobs:
os: ['ubuntu-20.04', 'ubuntu-latest', 'macos-latest', 'windows-latest']

steps:
- uses: actions/checkout@v2
- uses: actions/setup-python@v2
- uses: actions/checkout@v4
- uses: actions/setup-python@v4
with:
python-version: 3.9
- run: pip install -r requirements.txt
Expand Down
42 changes: 30 additions & 12 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,20 +27,21 @@
</p>
</div>

> **Warning**: This application is currently in beta state, so use at your own risk! While many people tested the application so far and we heard of no bricked devices, things might still go wrong.

> **Note**: Unlocking the bootloader will erase all data on your device!
This also includes your DRM keys, which are stored in the Trim Area partition (also called TA) in case your device is fairly recent and supports DRM L1. Those devices will be downgraded to DRM L3. Devices on DRM L3 by default will not be affected.
Before proceeding, ensure the data you would like to retain is backed up to your PC and/or your Google account, or equivalent. Please note that OEM backup solutions like Samsung and Motorola backup may not be accessible from LineageOS once installed.
If you wish to backup the TA partition first, you can find tutorials related to your device on the internet.
> [!WARNING]
> This application is currently in beta state, so use at your own risk! While many people tested the application so far and we heard of no bricked devices, things might still go wrong.

> [!IMPORTANT]
> Unlocking the bootloader will erase all data on your device!
> This also includes your DRM keys, which are stored in the Trim Area partition (also called TA) in case your device is fairly recent and supports DRM L1. Those devices will be downgraded to DRM L3. Devices on DRM L3 by default will not be affected.
> Before proceeding, ensure the data you would like to retain is backed up to your PC and/or your Google account, or equivalent. Please note that OEM backup solutions like Samsung and Motorola backup may not be accessible from LineageOS once installed.
> If you wish to backup the TA partition first, you can find tutorials related to your device on the internet.

## Usage

Linux is currently the best supported platform (tested with Ubuntu 20.04/22.04 LTS). Windows and MacOS are also supported but you might experience more issues. So far there is no support for ARM-based systems.

1. Download the [.exe or appropriate executable file for your OS](https://github.com/openandroidinstaller-dev/openandroidinstaller/releases) from the releases or get the [official flatpak from flathub](https://flathub.org/apps/org.openandroidinstaller.OpenAndroidInstaller). You might need to change permissions to run the executable.
- On Windows also [install the Universal USB Drivers](https://adb.clockworkmod.com/) and other potentially drivers needed for your device.
- On Windows also [install the Universal USB Drivers](https://adb.clockworkmod.com) and other potentially drivers needed for your device.
2. Download the custom ROM image and the TWRP recovery image for your device and optionally some addons. A source for files can be found on the following websites:
- some custom ROMs:
- [LineageOS](https://wiki.lineageos.org/devices)
Expand Down Expand Up @@ -82,11 +83,12 @@ Samsung | Galaxy Grand Prime VE | grandprimevelte | SM-G531F | tested
Samsung | Galaxy S III Neo | s3ve3g | GT-I9301I | tested
Samsung | Galaxy Tab S2 | [gts210vewifi](https://wiki.lineageos.org/devices/gts210vewifi/) | T813 | tested
Samsung | Galaxy S4 Mini LTE| [serranoltexx](https://wiki.lineageos.org/devices/serranoltexx) | | tested
Samsung | Galaxy S5 | [klte](https://wiki.lineageos.org/devices/klte) | G900F/M/R4/R7/T/V/W8 | tested
Samsung | Galaxy S6 | [zerofltexx](https://wiki.lineageos.org/devices/zerofltexx) | | tested
Samsung | Galaxy S6 Edge | [zeroltexx](https://wiki.lineageos.org/devices/zeroltexx) | | tested
Samsung | Galaxy S7 | [herolte](https://wiki.lineageos.org/devices/herolte) | SM-G930F | tested
Samsung | Galaxy S7 Edge | [hero2lte](https://wiki.lineageos.org/devices/hero2lte) | | tested
Samsung | Galaxy S8 | [dreamlte](https://wiki.lineageos.org/devices/dreamlte) | | tested
Samsung | Galaxy S8 | dreamlte | | tested
Samsung | Galaxy S9 | [starlte](https://wiki.lineageos.org/devices/starlte) | | tested
Samsung | Galaxy S10 | [beyond1lte](https://wiki.lineageos.org/devices/beyond1lte) | | tested
Samsung | Galaxy S10e | [beyond0lte](https://wiki.lineageos.org/devices/beyond0lte) | | tested
Expand Down Expand Up @@ -169,6 +171,23 @@ OnePlus | Nord N200 | [dre](https://wiki.lineageos.org/devices/dre) | | tested
OnePlus | 9 | lemonade | | under development
</details>

<details><summary><b>Xiaomi</b></summary>

Vendor | Device Name | CodeName | Models | Status
---|---|---|---|---
Xiaomi | Redmi Note 7 | [lavender](https://wiki.lineageos.org/devices/lavender) | | tested
Xiaomi | Redmi 7A / 8 / 8A / 8A Dual | [Mi439](https://wiki.lineageos.org/devices/Mi439) : pine / olive / olivelite / olivewood | | tested
Xiaomi | Redmi Note 8 / 8T | [ginkgo](https://wiki.lineageos.org/devices/ginkgo) / willow | | untested
Xiaomi | Redmi 9A / 9C / 9AT / 9i / 9A Sport / 10A / 10A Sport | garden / dandelion / blossom / angelican | | tested
Xiaomi | Mi 9T / Redmi K20 | [davinci](https://wiki.lineageos.org/devices/davinci) / davinciin | | untested
Xiaomi | Redmi K20 Pro / Mi 9T Pro | raphael / raphaelin | | untested
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
Xiaomi | Redmi Note 10S / 11SE / Poco M5S | [rosemary](https://wiki.lineageos.org/devices/rosemary) / maltose / secret /rosemary_p | | untested
Xiaomi | Poco X3 Pro | [vayu](https://wiki.lineageos.org/devices/vayu) | | untested
Xiaomi | 12 | cupid | | untested
</details>


And more to come!


Expand All @@ -183,19 +202,18 @@ All kinds of contributions are welcome. These include:
- Add features and/or improve the code base.
- Report bugs.

[How to contribute your own installation configurations](https://github.com/openandroidinstaller-dev/openandroidinstaller/blob/main/doc/how_to_contribute_your_own_installation_configurations.md)
[How to contribute your own installation configurations](https://github.com/openandroidinstaller-dev/openandroidinstaller/blob/main/docs/how_to_contribute_your_own_installation_configurations.md)

[How to build the application for your platform](https://github.com/openandroidinstaller-dev/openandroidinstaller/blob/main/doc/building_the_application_for_your_platform.md)
[How to build the application for your platform](https://github.com/openandroidinstaller-dev/openandroidinstaller/blob/main/docs/building_the_application_for_your_platform.md)

[On unlocking the bootloader](https://github.com/openandroidinstaller-dev/openandroidinstaller/blob/main/doc/unlocking_the_bootloader.md)
[On unlocking the bootloader](https://github.com/openandroidinstaller-dev/openandroidinstaller/blob/main/docs/unlocking_the_bootloader.md)

More details on how to contribute can be found [here](https://github.com/openandroidinstaller-dev/openandroidinstaller/blob/main/CONTRIBUTING.md).
Please have a look before opening an issue or starting to contribute.

A detailed list can be found [here](https://openandroidinstaller.org/#contribute).



## Tools

- 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
Expand Down
6 changes: 0 additions & 6 deletions doc/unlocking_the_bootloader.md

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -12,10 +12,14 @@ A config file consists of two parts. The first part are some metadata about the
Every config file should have `metadata` with the following fields:
- `maintainer`: str; Maintainer and author of the config file.
- `device_name`: str; Name of the device.
- `brand`: [OPTIONAL] str; Name of the brand. Can be used to make brand specific actions.
- `is_ab_device`: bool; A boolean to determine if the device is a/b-partitioned or not.
- `device_code`: str; The official device code.
- `supported_device_codes`: List[str]; A list of supported device codes for the config. The config will be loaded based on this field.
- `twrp-link`: [OPTIONAL] str; name of the corresponding twrp page.
- `additional_steps` : [OPTIONAL] List[str]; A list of additional steps. Can be `dtbo`, `vbmeta`, `vendor_boot` or `super_empty`.
- `notes`: [OPTIONAL] List[str]; specific phone information, showed before choosing ROM / recovery
- `untested`: [OPTIONAL] bool; If `true`, a warning message is showed during installation process.

In addition to these metadata, every config can have optional `requirements`. If these are set, the user is asked to check if they are meet.
- `android`: [OPTIONAL] int|str; Android version to install prior to installing a custom ROM.
Expand All @@ -32,7 +36,7 @@ Every step in the config file corresponds to one view in the application. These
- `img`: [OPTIONAL] Display an image on the left pane of the step view. Images are loaded from `openandroidinstaller/assets/imgs/`.
- `content`: str; The content text displayed alongside the action of the step. Used to inform the user about what's going on. For consistency and better readability the text should be moved into the next line using `>`.
- `link`: [OPTIONAL] Link to use for the link button if type is `link_button_with_confirm`.
- `command`: [ONLY for call_button* steps] str; The command to run. One of `adb_reboot`, `adb_reboot_bootloader`, `adb_reboot_download`, `adb_sideload`, `adb_twrp_wipe_and_install`, `adb_twrp_copy_partitions`, `fastboot_boot_recovery`, `fastboot_unlock_with_code`, `fastboot_unlock`, `fastboot_oem_unlock`, `fastboot_get_unlock_data`, `fastboot_reboot`, `heimdall_flash_recovery`.
- `command`: [ONLY for call_button* steps] str; The command to run. One of `adb_reboot`, `adb_reboot_bootloader`, `adb_reboot_download`, `adb_sideload`, `adb_twrp_wipe_and_install`, `adb_twrp_copy_partitions`, `fastboot_boot_recovery`, `fastboot_flash_recovery`, `fastboot_reboot_recovery`, `fastboot_flash_additional_partitions`, `fastboot_unlock_with_code`, `fastboot_unlock`, `fastboot_unlock_critical`, `fastboot_oem_unlock`, `fastboot_get_unlock_data`, `fastboot_reboot`, `heimdall_flash_recovery`.
- `allow_skip`: [OPTIONAL] boolean; If a skip button should be displayed to allow skipping this step. Can be useful when the bootloader is already unlocked.

**Please try to retain this order of these fields in your config to ensure consistency.**
Expand Down
29 changes: 29 additions & 0 deletions docs/unlocking_the_bootloader.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
# On unlocking the bootloader

[!IMPORTANT] First of all, this tool will not help you bypass any vender locked bootloaders in non-official ways.
tsterbak marked this conversation as resolved.
Show resolved Hide resolved

Devices by *Samsung, Google, OnePlus, Fairphone* and others make it relatively easy to unlock the bootloader and get good support in the installer.

For some devices, it is necessary to unlock the bootloader manually. You usually need to create an account on the manufacturer's website, wait for a certain time and obtain a code from there. OpenAndroidInstaller will try to guide you as far as possible. These vendors include *Sony, Motorola and Xiaomi* amongst others.

Other phone manufacturers no longer allow you to unlock the bootloader. Nothing can be done if you have not unlocked your device in time. These manufacturers include *Huawei, Honor, LG and ASUS*. Support for these manufacturers will always be very limited.

## Here is a brief overview of the bootloader policies of some of the most popular brands (may be incomplete/inaccurate)

| Brand | Flashing tool | Unlocking Method | Loss of guarantee\* | Supported models |
|---|---|---|---|---|
| Google | Fastboot | OEM/Flashing unlock | No | Pixel and Nexus |
| Samsung | ODIN or Heimdall | Download mode | **Yes** | Galaxy S and A series<br>(Increasing complexity **on and after S10**) |
| OnePlus | Fastboot | OEM/Flashing unlock | No | All |
| Fairphone | Fastboot | [Code from manufacturer](https://support.fairphone.com/hc/en-us/articles/10492476238865-Manage-the-Bootloader)<br>(**Already unlocked until FP2**) | No | All |
| Xiaomi | Fastboot | [Mi Unlock Tool](https://new.c.mi.com/global/post/101245) | **Yes** | Mi 4c, Redmi Note 3, Mi Note Pro, Redmi 3, Mi 4S, Mi 5 and all devices from 2016 onwards |
| Motorola | Fastboot | [Code from manufacturer](https://en-us.support.motorola.com/app/standalone/bootloader/unlock-your-device-a) | **Yes** | Almost all **except** carrier specific models (e.g. Verizon, AT&T, Tracfone) and certain other models |
| Sony | Fastboot | [Code from manufacturer](https://developer.sony.com/open-source/aosp-on-xperia-open-devices/get-started/unlock-bootloader) | **Yes** | All **except** XQ-CT62 (1Ⅳ US) & XQ-CQ62 (5Ⅳ US) |
| Huawei | Fastboot | No official codes since 2017/2018<br>(**Unofficial methods available**) | **Yes** | Mate 9/9Pro, P10/P10Plus |
| Honor | Fastboot | No official codes since 2017/2018<br>(**Unofficial methods available**) | **Yes** | Honor 8 |
| LG | Fastboot | Impossible since December 2021 | **Yes** | |
| ASUS | Fastboot | Impossible since May 2023 (ASUS unlocking App) | **Yes** | |

**\*** In the EU you won't loose your standard 2 years of the warranty when you unlock your bootloader, flash your device or root it. ([source](https://forum.xda-developers.com/t/info-eu-rooting-and-flashing-dont-void-the-warranty.1998801/))

You can find more information about the brands and their bootloader policies [here](https://wikilibriste.fr/fr/tutoriels-android/bootloader-unlock) (in French).
Loading