readme: Add speed comparison with LineageOS extract-utils

This commit is contained in:
Danny Lin 2022-01-30 06:45:52 -08:00 committed by Daniel Micay
parent da15bcab6b
commit 03f89a318d
2 changed files with 39 additions and 34 deletions

View file

@ -27,7 +27,10 @@ This typically results in better device support with fewer bugs and issues, and
Pixel devices will benefit from the most automation, but several features can still be used to ease manual bringup on other devices:
- **Extract** files from proprietary-files.txt **up to 10x faster than LineageOS extract-utils**
- **Extract** files from proprietary-files.txt **[up to 2000% faster than LineageOS extract-utils (speed comparison)](https://asciinema.org/a/eUMNIrKtBrln1CwE1zCUnJO8w)**
- LineageOS extract-utils: 1 min 27 sec
- **adevtool: 4 sec**
- Tested with Pixel 5 (redfin), cache cleared before testing
- **Compare** a built system against stock images to find missing files, properties, and vendor interface declarations
- **List** system files relevant to bringup (in all partitions)
- **Resolve overridden** build rules from build warnings

View file

@ -2,6 +2,41 @@
This documents individual adevtool commands, most of which can be used independently without a config or full device bringup.
## Extract proprietary files
Given a device codename, vendor name, stock system source, and LineageOS proprietary-files.txt list, extract proprietary files and generate build files.
[![Speed comparison with LineageOS extract-utils](https://asciinema.org/a/eUMNIrKtBrln1CwE1zCUnJO8w.svg)](https://asciinema.org/a/eUMNIrKtBrln1CwE1zCUnJO8w)
<details>
<summary>Command-line help</summary>
```
extract proprietary files
USAGE
$ adevtool extract LISTPATH
ARGUMENTS
LISTPATH path to LineageOS-compatible proprietary-files.txt list
OPTIONS
-b, --buildId=buildId build ID of the stock images (optional, only used for locating factory images)
-d, --device=device (required) device codename
-h, --help show CLI help
-k, --skipCopy skip file copying and only generate build files
-s, --stockSrc=stockSrc (required) path to (extracted) factory images, (mounted) images, (extracted) OTA package,
OTA payload, or directory containing any such files (optionally under device and/or build ID
directory)
-t, --useTemp use a temporary directory for all extraction (prevents reusing extracted files across runs)
-v, --vendor=vendor (required) device vendor/OEM name
```
</details>
## Identify presigned apps
Given a list of SELinux policy directories and a stock system source, identify APKs that should be presigned.
@ -166,39 +201,6 @@ OPTIONS
</details>
## Extract proprietary files
Given a device codename, vendor name, stock system source, and LineageOS proprietary-files.txt list, extract proprietary files and generate build files.
<details>
<summary>Command-line help</summary>
```
extract proprietary files
USAGE
$ adevtool extract LISTPATH
ARGUMENTS
LISTPATH path to LineageOS-compatible proprietary-files.txt list
OPTIONS
-b, --buildId=buildId build ID of the stock images (optional, only used for locating factory images)
-d, --device=device (required) device codename
-h, --help show CLI help
-k, --skipCopy skip file copying and only generate build files
-s, --stockSrc=stockSrc (required) path to (extracted) factory images, (mounted) images, (extracted) OTA package,
OTA payload, or directory containing any such files (optionally under device and/or build ID
directory)
-t, --useTemp use a temporary directory for all extraction (prevents reusing extracted files across runs)
-v, --vendor=vendor (required) device vendor/OEM name
```
</details>
## Generate full vendor module
Given a device config and stock system source, automatically generate a full vendor module.