From 2df4a66377b2889efb81994a1d8ff87ffbd2991d Mon Sep 17 00:00:00 2001 From: Tobias Sterbak Date: Mon, 27 Mar 2023 11:09:21 +0200 Subject: [PATCH 1/3] Replace detect_is_ab_device by field in the config --- openandroidinstaller/app_state.py | 1 - .../assets/configs/sargo.yaml | 3 +- openandroidinstaller/installer_config.py | 2 + openandroidinstaller/tooling.py | 40 ----------------- .../views/install_addons_view.py | 2 +- openandroidinstaller/views/install_view.py | 2 +- openandroidinstaller/views/start_view.py | 4 +- openandroidinstaller/views/step_view.py | 2 +- tests/test_tooling.py | 43 +------------------ 9 files changed, 9 insertions(+), 90 deletions(-) diff --git a/openandroidinstaller/app_state.py b/openandroidinstaller/app_state.py index 40fb427d..49f69155 100644 --- a/openandroidinstaller/app_state.py +++ b/openandroidinstaller/app_state.py @@ -43,7 +43,6 @@ def __init__( self.config = None self.image_path = None self.recovery_path = None - self.is_ab = None # store views self.default_views: List = [] diff --git a/openandroidinstaller/assets/configs/sargo.yaml b/openandroidinstaller/assets/configs/sargo.yaml index af1b6da4..68ada457 100644 --- a/openandroidinstaller/assets/configs/sargo.yaml +++ b/openandroidinstaller/assets/configs/sargo.yaml @@ -1,7 +1,8 @@ metadata: maintainer: Tobias Sterbak (tsterbak) device_name: Pixel 3a - device_code: sargo + is_ab_device: true + device_code: sargo supported_device_codes: - sargo requirements: diff --git a/openandroidinstaller/installer_config.py b/openandroidinstaller/installer_config.py index 0707423b..70ca5a01 100644 --- a/openandroidinstaller/installer_config.py +++ b/openandroidinstaller/installer_config.py @@ -61,6 +61,7 @@ def __init__( self.metadata = metadata self.requirements = requirements self.device_code = metadata.get("device_code") + self.is_ab = metadata.get("is_ab_device", False) self.supported_device_codes = metadata.get("supported_device_codes") self.twrp_link = metadata.get("twrp-link") @@ -161,6 +162,7 @@ def validate_config(config: str) -> bool: "metadata": { "maintainer": str, "device_name": str, + "is_ab_device": bool, "device_code": str, "supported_device_codes": [str], schema.Optional("twrp-link"): str, diff --git a/openandroidinstaller/tooling.py b/openandroidinstaller/tooling.py index 097c35e6..c8b95dfd 100644 --- a/openandroidinstaller/tooling.py +++ b/openandroidinstaller/tooling.py @@ -468,43 +468,3 @@ def search_device(platform: str, bin_path: Path) -> Optional[str]: except CalledProcessError: logger.error("Failed to detect a device.") return None - - -def check_ab_partition(platform: str, bin_path: Path) -> Optional[bool]: - """Figure out, if its an a/b-partitioned device.""" - logger.info(f"Run on {platform} with {bin_path}...") - try: - # check if ab device - if platform in ("linux", "darwin"): - output = check_output( - [ - str(bin_path.joinpath(Path("adb"))), - "shell", - "getprop", - "|", - "grep", - "ro.boot.slot_suffix", - ], - stderr=STDOUT, - ).decode() - elif platform in ("windows", "win32"): - output = check_output( - [ - str(bin_path.joinpath(Path("adb.exe"))), - "shell", - "getprop", - "|", - "findstr", - "ro.boot.slot_suffix", - ], - stderr=STDOUT, - shell=True, - ).decode() - else: - raise Exception(f"Unknown platform {platform}.") - logger.info(output) - logger.info("This is an a/b-partitioned device.") - return True - except CalledProcessError: - logger.info("This is not an a/b-partitioned device.") - return False diff --git a/openandroidinstaller/views/install_addons_view.py b/openandroidinstaller/views/install_addons_view.py index 7bb71e42..64560fd1 100644 --- a/openandroidinstaller/views/install_addons_view.py +++ b/openandroidinstaller/views/install_addons_view.py @@ -158,7 +158,7 @@ def run_install_addons(self, e): for line in adb_twrp_install_addons( addons=self.state.addon_paths, bin_path=self.state.bin_path, - is_ab=self.state.is_ab, + is_ab=self.state.config.is_ab, ): # write the line to advanced output terminal self.terminal_box.write_line(line) diff --git a/openandroidinstaller/views/install_view.py b/openandroidinstaller/views/install_view.py index 29283fab..22c0372d 100644 --- a/openandroidinstaller/views/install_view.py +++ b/openandroidinstaller/views/install_view.py @@ -189,7 +189,7 @@ def run_install(self, e): config_path=self.state.config_path, bin_path=self.state.bin_path, install_addons=self.state.install_addons, - is_ab=self.state.is_ab, + is_ab=self.state.config.is_ab, recovery=self.state.recovery_path, ): # write the line to advanced output terminal diff --git a/openandroidinstaller/views/start_view.py b/openandroidinstaller/views/start_view.py index abf64064..65bf8f52 100644 --- a/openandroidinstaller/views/start_view.py +++ b/openandroidinstaller/views/start_view.py @@ -213,7 +213,7 @@ def search_devices(self, e): # search the device if self.state.test: # this only happens for testing - device_code, is_ab = self.state.test_config, True + device_code = self.state.test_config logger.info( f"Running search in development mode and loading config {device_code}.yaml." ) @@ -239,8 +239,6 @@ def search_devices(self, e): self.device_name.value = device_code # load config from file self.state.load_config(device_code) - # write ab-info to state - self.state.is_ab = is_ab if self.state.config: device_name = self.state.config.metadata.get( "device_name", "No device name in config." diff --git a/openandroidinstaller/views/step_view.py b/openandroidinstaller/views/step_view.py index eb484eb3..597d069a 100644 --- a/openandroidinstaller/views/step_view.py +++ b/openandroidinstaller/views/step_view.py @@ -220,7 +220,7 @@ def call_to_phone(self, e, command: str): "fastboot_boot_recovery": partial( fastboot_boot_recovery, recovery=self.state.recovery_path, - is_ab=self.state.is_ab, + is_ab=self.state.config.is_ab, ), "fastboot_flash_boot": partial( fastboot_flash_boot, diff --git a/tests/test_tooling.py b/tests/test_tooling.py index c66f6e97..6e666c1e 100644 --- a/tests/test_tooling.py +++ b/tests/test_tooling.py @@ -19,7 +19,6 @@ from openandroidinstaller.tooling import ( adb_reboot, search_device, - check_ab_partition, ) @@ -95,44 +94,4 @@ def patched_check_output(*args, **kwargs): platform="linux", bin_path=Path("openandroidinstaller/bin/") ) - assert device_code == None - - -def test_check_ab_device_is_ab(mocker): - """Test if checking for ab device works fine.""" - mocker.patch( - "openandroidinstaller.tooling.check_output", - return_value=b"[ro.boot.slot_suffix]: [_b]", - ) - - # test linux - is_ab = check_ab_partition( - platform="linux", bin_path=Path("openandroidinstaller/bin/") - ) - - assert is_ab - - # test windows - is_ab = check_ab_partition( - platform="windows", bin_path=Path("openandroidinstaller/bin/") - ) - - assert is_ab - - -def test_check_ab_device_not_ab(mocker): - """Test if checking for ab device returns False if it fails.""" - - def patched_check_output(*args, **kwargs): - raise CalledProcessError(returncode=1, cmd="output is None") - - mocker.patch( - "openandroidinstaller.tooling.check_output", - patched_check_output, - ) - - is_ab = check_ab_partition( - platform="linux", bin_path=Path("openandroidinstaller/bin/") - ) - - assert not is_ab + assert device_code == None \ No newline at end of file From 523b9c74425257f0d99384a5f56db66e25c4d0af Mon Sep 17 00:00:00 2001 From: Tobias Sterbak Date: Mon, 27 Mar 2023 11:13:43 +0200 Subject: [PATCH 2/3] Update configs accordinly --- openandroidinstaller/assets/configs/FP2.yaml | 1 + openandroidinstaller/assets/configs/FP3.yaml | 1 + openandroidinstaller/assets/configs/FP4.yaml | 1 + openandroidinstaller/assets/configs/a3y17lte.yaml | 1 + openandroidinstaller/assets/configs/a5xelte.yaml | 1 + openandroidinstaller/assets/configs/a72q.yaml | 1 + openandroidinstaller/assets/configs/a7xelte.yaml | 1 + openandroidinstaller/assets/configs/akari.yaml | 1 + openandroidinstaller/assets/configs/akatsuki.yaml | 1 + openandroidinstaller/assets/configs/avicii.yaml | 1 + openandroidinstaller/assets/configs/bacon.yaml | 1 + openandroidinstaller/assets/configs/barbet.yaml | 1 + openandroidinstaller/assets/configs/beyond0lte.yaml | 1 + openandroidinstaller/assets/configs/beyond1lte.yaml | 1 + openandroidinstaller/assets/configs/beyond2lte.yaml | 1 + openandroidinstaller/assets/configs/blueline.yaml | 1 + openandroidinstaller/assets/configs/bonito.yaml | 1 + openandroidinstaller/assets/configs/cedric.yaml | 1 + openandroidinstaller/assets/configs/cheeseburger.yaml | 1 + openandroidinstaller/assets/configs/coral.yaml | 1 + openandroidinstaller/assets/configs/crosshatch.yaml | 1 + openandroidinstaller/assets/configs/crownlte.yaml | 1 + openandroidinstaller/assets/configs/d1.yaml | 1 + openandroidinstaller/assets/configs/d2s.yaml | 1 + openandroidinstaller/assets/configs/dre.yaml | 1 + openandroidinstaller/assets/configs/dumpling.yaml | 1 + openandroidinstaller/assets/configs/enchilada.yaml | 1 + openandroidinstaller/assets/configs/evert.yaml | 1 + openandroidinstaller/assets/configs/fajita.yaml | 1 + openandroidinstaller/assets/configs/flame.yaml | 1 + openandroidinstaller/assets/configs/greatlte.yaml | 1 + openandroidinstaller/assets/configs/griffin.yaml | 1 + openandroidinstaller/assets/configs/guacamole.yaml | 1 + openandroidinstaller/assets/configs/guacamoleb.yaml | 1 + openandroidinstaller/assets/configs/hero2lte.yaml | 1 + openandroidinstaller/assets/configs/herolte.yaml | 1 + openandroidinstaller/assets/configs/hltetmo.yaml | 1 + openandroidinstaller/assets/configs/hotdog.yaml | 1 + openandroidinstaller/assets/configs/hotdogb.yaml | 1 + openandroidinstaller/assets/configs/j7elte.yaml | 1 + openandroidinstaller/assets/configs/kiev.yaml | 1 + openandroidinstaller/assets/configs/kirin.yaml | 1 + openandroidinstaller/assets/configs/mermaid.yaml | 1 + openandroidinstaller/assets/configs/nairo.yaml | 1 + openandroidinstaller/assets/configs/ocean.yaml | 1 + openandroidinstaller/assets/configs/pioneer.yaml | 1 + openandroidinstaller/assets/configs/racer.yaml | 1 + openandroidinstaller/assets/configs/redfin.yaml | 1 + openandroidinstaller/assets/configs/s3ve3g.yaml | 1 + openandroidinstaller/assets/configs/starlte.yaml | 1 + openandroidinstaller/assets/configs/sunfish.yaml | 1 + openandroidinstaller/assets/configs/taimen.yaml | 1 + openandroidinstaller/assets/configs/walleye.yaml | 1 + openandroidinstaller/assets/configs/yuga.yaml | 1 + openandroidinstaller/assets/configs/z3.yaml | 1 + openandroidinstaller/assets/configs/zerofltexx.yaml | 1 + openandroidinstaller/assets/configs/zeroltexx.yaml | 1 + openandroidinstaller/views/start_view.py | 5 +---- tests/test_tooling.py | 2 +- 59 files changed, 59 insertions(+), 5 deletions(-) diff --git a/openandroidinstaller/assets/configs/FP2.yaml b/openandroidinstaller/assets/configs/FP2.yaml index c00c70dc..55588617 100644 --- a/openandroidinstaller/assets/configs/FP2.yaml +++ b/openandroidinstaller/assets/configs/FP2.yaml @@ -1,6 +1,7 @@ metadata: maintainer: Tobias Sterbak (tsterbak) device_name: Fairphone 2 + is_ab_device: true device_code: FP2 supported_device_codes: - FP2 diff --git a/openandroidinstaller/assets/configs/FP3.yaml b/openandroidinstaller/assets/configs/FP3.yaml index 19bdb5a5..b6b775d0 100644 --- a/openandroidinstaller/assets/configs/FP3.yaml +++ b/openandroidinstaller/assets/configs/FP3.yaml @@ -1,6 +1,7 @@ metadata: maintainer: Tobias Sterbak (tsterbak) device_name: Fairphone 3 + is_ab_device: true device_code: FP3 supported_device_codes: - FP3 diff --git a/openandroidinstaller/assets/configs/FP4.yaml b/openandroidinstaller/assets/configs/FP4.yaml index ebf59f4f..7fdc1fd1 100644 --- a/openandroidinstaller/assets/configs/FP4.yaml +++ b/openandroidinstaller/assets/configs/FP4.yaml @@ -1,6 +1,7 @@ metadata: maintainer: Tobias Sterbak (tsterbak) device_name: Fairphone 4 + is_ab_device: true device_code: FP4 supported_device_codes: - FP4 diff --git a/openandroidinstaller/assets/configs/a3y17lte.yaml b/openandroidinstaller/assets/configs/a3y17lte.yaml index e0ec7461..5e6f8d83 100644 --- a/openandroidinstaller/assets/configs/a3y17lte.yaml +++ b/openandroidinstaller/assets/configs/a3y17lte.yaml @@ -1,6 +1,7 @@ metadata: maintainer: Tobias Sterbak (tsterbak) device_name: Samsung Galaxy A3 (2017) + is_ab_device: true device_code: a3y17lte supported_device_codes: - a3y17lte diff --git a/openandroidinstaller/assets/configs/a5xelte.yaml b/openandroidinstaller/assets/configs/a5xelte.yaml index 06b0769c..c9dc541f 100644 --- a/openandroidinstaller/assets/configs/a5xelte.yaml +++ b/openandroidinstaller/assets/configs/a5xelte.yaml @@ -1,6 +1,7 @@ metadata: maintainer: Tobias Sterbak (tsterbak) device_name: Samsung Galaxy A5 (2016) + is_ab_device: true device_code: a5xelte supported_device_codes: - a5xelte diff --git a/openandroidinstaller/assets/configs/a72q.yaml b/openandroidinstaller/assets/configs/a72q.yaml index 87721275..4b663e48 100644 --- a/openandroidinstaller/assets/configs/a72q.yaml +++ b/openandroidinstaller/assets/configs/a72q.yaml @@ -1,6 +1,7 @@ metadata: maintainer: Tobias Sterbak (tsterbak) device_name: Samsung Galaxy A72 + is_ab_device: true device_code: a72q supported_device_codes: - a72q diff --git a/openandroidinstaller/assets/configs/a7xelte.yaml b/openandroidinstaller/assets/configs/a7xelte.yaml index 856ba6b6..8d1d9c8c 100644 --- a/openandroidinstaller/assets/configs/a7xelte.yaml +++ b/openandroidinstaller/assets/configs/a7xelte.yaml @@ -1,6 +1,7 @@ metadata: maintainer: Tobias Sterbak (tsterbak) device_name: Samsung Galaxy A7 (2016) + is_ab_device: true device_code: a7xelte supported_device_codes: - a7xelte diff --git a/openandroidinstaller/assets/configs/akari.yaml b/openandroidinstaller/assets/configs/akari.yaml index e5bf40d6..20b7ed8d 100644 --- a/openandroidinstaller/assets/configs/akari.yaml +++ b/openandroidinstaller/assets/configs/akari.yaml @@ -1,6 +1,7 @@ metadata: maintainer: Tobias Sterbak (tsterbak) device_name: Sony Xperia XZ2 + is_ab_device: true device_code: akari supported_device_codes: - akari diff --git a/openandroidinstaller/assets/configs/akatsuki.yaml b/openandroidinstaller/assets/configs/akatsuki.yaml index bc825a25..41b8e7bf 100644 --- a/openandroidinstaller/assets/configs/akatsuki.yaml +++ b/openandroidinstaller/assets/configs/akatsuki.yaml @@ -1,6 +1,7 @@ metadata: maintainer: Tobias Sterbak (tsterbak) device_name: Sony Xperia XZ3 + is_ab_device: true device_code: akatsuki supported_device_codes: - akatsuki diff --git a/openandroidinstaller/assets/configs/avicii.yaml b/openandroidinstaller/assets/configs/avicii.yaml index 7a828956..a548cfd6 100644 --- a/openandroidinstaller/assets/configs/avicii.yaml +++ b/openandroidinstaller/assets/configs/avicii.yaml @@ -1,6 +1,7 @@ metadata: maintainer: Tobias Sterbak (tsterbak) device_name: OnePlus Nord + is_ab_device: true device_code: avicii supported_device_codes: - avicii diff --git a/openandroidinstaller/assets/configs/bacon.yaml b/openandroidinstaller/assets/configs/bacon.yaml index d1739cfe..fb251e99 100644 --- a/openandroidinstaller/assets/configs/bacon.yaml +++ b/openandroidinstaller/assets/configs/bacon.yaml @@ -1,6 +1,7 @@ metadata: maintainer: MagicLike device_name: OnePlus One + is_ab_device: true device_code: bacon supported_device_codes: - bacon diff --git a/openandroidinstaller/assets/configs/barbet.yaml b/openandroidinstaller/assets/configs/barbet.yaml index cef8f74a..00c14fb5 100644 --- a/openandroidinstaller/assets/configs/barbet.yaml +++ b/openandroidinstaller/assets/configs/barbet.yaml @@ -1,6 +1,7 @@ metadata: maintainer: Tobias Sterbak (tsterbak) device_name: Pixel 5a + is_ab_device: true device_code: barbet supported_device_codes: - barbet diff --git a/openandroidinstaller/assets/configs/beyond0lte.yaml b/openandroidinstaller/assets/configs/beyond0lte.yaml index e5c6be64..c3d54b1d 100644 --- a/openandroidinstaller/assets/configs/beyond0lte.yaml +++ b/openandroidinstaller/assets/configs/beyond0lte.yaml @@ -1,6 +1,7 @@ metadata: maintainer: Tobias Sterbak (tsterbak) device_name: Samsung Galaxy S10e + is_ab_device: true device_code: beyond0lte supported_device_codes: - beyond0lte diff --git a/openandroidinstaller/assets/configs/beyond1lte.yaml b/openandroidinstaller/assets/configs/beyond1lte.yaml index b915be41..0839f0b8 100644 --- a/openandroidinstaller/assets/configs/beyond1lte.yaml +++ b/openandroidinstaller/assets/configs/beyond1lte.yaml @@ -1,6 +1,7 @@ metadata: maintainer: Tobias Sterbak (tsterbak) device_name: Samsung Galaxy S10 + is_ab_device: true device_code: beyond1lte supported_device_codes: - beyond1lte diff --git a/openandroidinstaller/assets/configs/beyond2lte.yaml b/openandroidinstaller/assets/configs/beyond2lte.yaml index 7df64b5e..239cc07b 100644 --- a/openandroidinstaller/assets/configs/beyond2lte.yaml +++ b/openandroidinstaller/assets/configs/beyond2lte.yaml @@ -1,6 +1,7 @@ metadata: maintainer: Tobias Sterbak (tsterbak) device_name: Samsung Galaxy S10+ + is_ab_device: true device_code: beyond2lte supported_device_codes: - beyond2lte diff --git a/openandroidinstaller/assets/configs/blueline.yaml b/openandroidinstaller/assets/configs/blueline.yaml index ffb418a3..b60ec55a 100644 --- a/openandroidinstaller/assets/configs/blueline.yaml +++ b/openandroidinstaller/assets/configs/blueline.yaml @@ -1,6 +1,7 @@ metadata: maintainer: Tobias Sterbak (tsterbak) device_name: Google Pixel 3 + is_ab_device: true device_code: blueline supported_device_codes: - blueline diff --git a/openandroidinstaller/assets/configs/bonito.yaml b/openandroidinstaller/assets/configs/bonito.yaml index 219c0daa..d26bfa34 100644 --- a/openandroidinstaller/assets/configs/bonito.yaml +++ b/openandroidinstaller/assets/configs/bonito.yaml @@ -1,6 +1,7 @@ metadata: maintainer: Tobias Sterbak (tsterbak) device_name: Google Pixel 3a XL + is_ab_device: true device_code: bonito supported_device_codes: - bonito diff --git a/openandroidinstaller/assets/configs/cedric.yaml b/openandroidinstaller/assets/configs/cedric.yaml index 16311c8c..6e63df41 100644 --- a/openandroidinstaller/assets/configs/cedric.yaml +++ b/openandroidinstaller/assets/configs/cedric.yaml @@ -1,6 +1,7 @@ metadata: maintainer: Tobias Sterbak (tsterbak) device_name: Motorola Moto G5 + is_ab_device: true device_code: cedric supported_device_codes: - cedric diff --git a/openandroidinstaller/assets/configs/cheeseburger.yaml b/openandroidinstaller/assets/configs/cheeseburger.yaml index 832ea06f..5436b439 100644 --- a/openandroidinstaller/assets/configs/cheeseburger.yaml +++ b/openandroidinstaller/assets/configs/cheeseburger.yaml @@ -1,6 +1,7 @@ metadata: maintainer: SirRGB device_name: OnePlus 5 + is_ab_device: true device_code: cheeseburger supported_device_codes: - cheeseburger diff --git a/openandroidinstaller/assets/configs/coral.yaml b/openandroidinstaller/assets/configs/coral.yaml index 4a7f194b..a469e721 100644 --- a/openandroidinstaller/assets/configs/coral.yaml +++ b/openandroidinstaller/assets/configs/coral.yaml @@ -1,6 +1,7 @@ metadata: maintainer: Tobias Sterbak (tsterbak) device_name: Google Pixel 4 XL + is_ab_device: true device_code: coral supported_device_codes: - coral diff --git a/openandroidinstaller/assets/configs/crosshatch.yaml b/openandroidinstaller/assets/configs/crosshatch.yaml index e42609a9..7ae26231 100644 --- a/openandroidinstaller/assets/configs/crosshatch.yaml +++ b/openandroidinstaller/assets/configs/crosshatch.yaml @@ -1,6 +1,7 @@ metadata: maintainer: Tobias Sterbak (tsterbak) device_name: Google Pixel 3 XL + is_ab_device: true device_code: crosshatch supported_device_codes: - crosshatch diff --git a/openandroidinstaller/assets/configs/crownlte.yaml b/openandroidinstaller/assets/configs/crownlte.yaml index 19dfbe9b..97e8eb2e 100644 --- a/openandroidinstaller/assets/configs/crownlte.yaml +++ b/openandroidinstaller/assets/configs/crownlte.yaml @@ -1,6 +1,7 @@ metadata: maintainer: Tobias Sterbak (tsterbak) device_name: Samsung Galaxy Note 9 + is_ab_device: true device_code: crownlte supported_device_codes: - crownlte diff --git a/openandroidinstaller/assets/configs/d1.yaml b/openandroidinstaller/assets/configs/d1.yaml index e28a3906..25c0481b 100644 --- a/openandroidinstaller/assets/configs/d1.yaml +++ b/openandroidinstaller/assets/configs/d1.yaml @@ -1,6 +1,7 @@ metadata: maintainer: Tobias Sterbak (tsterbak) device_name: Samsung Galaxy Note 10 + is_ab_device: true device_code: d1 supported_device_codes: - d1 diff --git a/openandroidinstaller/assets/configs/d2s.yaml b/openandroidinstaller/assets/configs/d2s.yaml index 3e0b705f..adb537ff 100644 --- a/openandroidinstaller/assets/configs/d2s.yaml +++ b/openandroidinstaller/assets/configs/d2s.yaml @@ -1,6 +1,7 @@ metadata: maintainer: Tobias Sterbak (tsterbak) device_name: Samsung Galaxy Note 10+ + is_ab_device: true device_code: d2s supported_device_codes: - d2s diff --git a/openandroidinstaller/assets/configs/dre.yaml b/openandroidinstaller/assets/configs/dre.yaml index fa04addf..dba46996 100644 --- a/openandroidinstaller/assets/configs/dre.yaml +++ b/openandroidinstaller/assets/configs/dre.yaml @@ -1,6 +1,7 @@ metadata: maintainer: Tobias Sterbak (tsterbak) device_name: OnePlus Nord N200 + is_ab_device: true device_code: dre supported_device_codes: - dre diff --git a/openandroidinstaller/assets/configs/dumpling.yaml b/openandroidinstaller/assets/configs/dumpling.yaml index 329280cf..fff6074f 100644 --- a/openandroidinstaller/assets/configs/dumpling.yaml +++ b/openandroidinstaller/assets/configs/dumpling.yaml @@ -1,6 +1,7 @@ metadata: maintainer: SirRGB device_name: OnePlus 5T + is_ab_device: true device_code: dumpling supported_device_codes: - dumpling diff --git a/openandroidinstaller/assets/configs/enchilada.yaml b/openandroidinstaller/assets/configs/enchilada.yaml index 5456fd84..67a155bc 100644 --- a/openandroidinstaller/assets/configs/enchilada.yaml +++ b/openandroidinstaller/assets/configs/enchilada.yaml @@ -1,6 +1,7 @@ metadata: maintainer: Tobias Sterbak (tsterbak) device_name: OnePlus 6 + is_ab_device: true device_code: enchilada supported_device_codes: - enchilada diff --git a/openandroidinstaller/assets/configs/evert.yaml b/openandroidinstaller/assets/configs/evert.yaml index 24a9e602..5dd98f0f 100644 --- a/openandroidinstaller/assets/configs/evert.yaml +++ b/openandroidinstaller/assets/configs/evert.yaml @@ -1,6 +1,7 @@ metadata: maintainer: Tobias Sterbak (tsterbak) device_name: Motorola moto g6 plus + is_ab_device: true device_code: evert supported_device_codes: - evert diff --git a/openandroidinstaller/assets/configs/fajita.yaml b/openandroidinstaller/assets/configs/fajita.yaml index 9eb558d6..3c42c730 100644 --- a/openandroidinstaller/assets/configs/fajita.yaml +++ b/openandroidinstaller/assets/configs/fajita.yaml @@ -1,6 +1,7 @@ metadata: maintainer: Tobias Sterbak (tsterbak) device_name: OnePlus 6T + is_ab_device: true device_code: fajita supported_device_codes: - fajita diff --git a/openandroidinstaller/assets/configs/flame.yaml b/openandroidinstaller/assets/configs/flame.yaml index 4e2e38b6..1d41b157 100644 --- a/openandroidinstaller/assets/configs/flame.yaml +++ b/openandroidinstaller/assets/configs/flame.yaml @@ -1,6 +1,7 @@ metadata: maintainer: Tobias Sterbak (tsterbak) device_name: Pixel 4 + is_ab_device: true device_code: flame supported_device_codes: - flame diff --git a/openandroidinstaller/assets/configs/greatlte.yaml b/openandroidinstaller/assets/configs/greatlte.yaml index c5464fa4..443db5ab 100644 --- a/openandroidinstaller/assets/configs/greatlte.yaml +++ b/openandroidinstaller/assets/configs/greatlte.yaml @@ -1,6 +1,7 @@ metadata: maintainer: Michel Memeteau (freechelmi) device_name: Samsung Galaxy note 8 + is_ab_device: true device_code: greatlte supported_device_codes: - greatlte diff --git a/openandroidinstaller/assets/configs/griffin.yaml b/openandroidinstaller/assets/configs/griffin.yaml index b4fb3fb3..ab21f87e 100644 --- a/openandroidinstaller/assets/configs/griffin.yaml +++ b/openandroidinstaller/assets/configs/griffin.yaml @@ -1,6 +1,7 @@ metadata: maintainer: SirRGB device_name: Motorola Moto Z + is_ab_device: true device_code: griffin supported_device_codes: - griffin diff --git a/openandroidinstaller/assets/configs/guacamole.yaml b/openandroidinstaller/assets/configs/guacamole.yaml index e6f54988..86e4f1d4 100644 --- a/openandroidinstaller/assets/configs/guacamole.yaml +++ b/openandroidinstaller/assets/configs/guacamole.yaml @@ -1,6 +1,7 @@ metadata: maintainer: Tobias Sterbak (tsterbak) device_name: OnePlus 7 Pro + is_ab_device: true device_code: guacamole supported_device_codes: - guacamole diff --git a/openandroidinstaller/assets/configs/guacamoleb.yaml b/openandroidinstaller/assets/configs/guacamoleb.yaml index 28c93690..c3a87d1b 100644 --- a/openandroidinstaller/assets/configs/guacamoleb.yaml +++ b/openandroidinstaller/assets/configs/guacamoleb.yaml @@ -1,6 +1,7 @@ metadata: maintainer: Tobias Sterbak (tsterbak) device_name: OnePlus 7 + is_ab_device: true device_code: guacamoleb supported_device_codes: - guacamoleb diff --git a/openandroidinstaller/assets/configs/hero2lte.yaml b/openandroidinstaller/assets/configs/hero2lte.yaml index 44c0101c..b94b7dac 100644 --- a/openandroidinstaller/assets/configs/hero2lte.yaml +++ b/openandroidinstaller/assets/configs/hero2lte.yaml @@ -1,6 +1,7 @@ metadata: maintainer: Tobias Sterbak (tsterbak) device_name: Samsung Galaxy S7 Edge + is_ab_device: true device_code: hero2lte supported_device_codes: - hero2lte diff --git a/openandroidinstaller/assets/configs/herolte.yaml b/openandroidinstaller/assets/configs/herolte.yaml index 4e102e61..bdcf513b 100644 --- a/openandroidinstaller/assets/configs/herolte.yaml +++ b/openandroidinstaller/assets/configs/herolte.yaml @@ -1,6 +1,7 @@ metadata: maintainer: Tobias Sterbak (tsterbak) device_name: Samsung Galaxy S7 + is_ab_device: true device_code: herolte supported_device_codes: - herolte diff --git a/openandroidinstaller/assets/configs/hltetmo.yaml b/openandroidinstaller/assets/configs/hltetmo.yaml index 57776fa1..013aa7f0 100644 --- a/openandroidinstaller/assets/configs/hltetmo.yaml +++ b/openandroidinstaller/assets/configs/hltetmo.yaml @@ -1,6 +1,7 @@ metadata: maintainer: Tobias Sterbak (tsterbak) device_name: Samsung Galaxy Note 3 LTE (N900T/V/W8) + is_ab_device: true device_code: hltetmo supported_device_codes: - hltetmo diff --git a/openandroidinstaller/assets/configs/hotdog.yaml b/openandroidinstaller/assets/configs/hotdog.yaml index cbe7c5bf..7faddfc6 100644 --- a/openandroidinstaller/assets/configs/hotdog.yaml +++ b/openandroidinstaller/assets/configs/hotdog.yaml @@ -1,6 +1,7 @@ metadata: maintainer: Tobias Sterbak (tsterbak) device_name: OnePlus 7T Pro + is_ab_device: true device_code: hotdog supported_device_codes: - hotdog diff --git a/openandroidinstaller/assets/configs/hotdogb.yaml b/openandroidinstaller/assets/configs/hotdogb.yaml index 555b5c0a..194d0990 100644 --- a/openandroidinstaller/assets/configs/hotdogb.yaml +++ b/openandroidinstaller/assets/configs/hotdogb.yaml @@ -1,6 +1,7 @@ metadata: maintainer: Tobias Sterbak (tsterbak) device_name: OnePlus 7T + is_ab_device: true device_code: hotdogb supported_device_codes: - hotdogb diff --git a/openandroidinstaller/assets/configs/j7elte.yaml b/openandroidinstaller/assets/configs/j7elte.yaml index fa63cece..1fc0a5d9 100644 --- a/openandroidinstaller/assets/configs/j7elte.yaml +++ b/openandroidinstaller/assets/configs/j7elte.yaml @@ -1,6 +1,7 @@ metadata: maintainer: Tobias Sterbak (tsterbak) device_name: Samsung Galaxy J7 (2015) + is_ab_device: true device_code: j7elte supported_device_codes: - j7elte diff --git a/openandroidinstaller/assets/configs/kiev.yaml b/openandroidinstaller/assets/configs/kiev.yaml index 743ae743..11b45d54 100644 --- a/openandroidinstaller/assets/configs/kiev.yaml +++ b/openandroidinstaller/assets/configs/kiev.yaml @@ -1,6 +1,7 @@ metadata: maintainer: Tobias Sterbak (tsterbak) device_name: Motorola moto g 5G / one 5G ace + is_ab_device: true device_code: kiev supported_device_codes: - kiev diff --git a/openandroidinstaller/assets/configs/kirin.yaml b/openandroidinstaller/assets/configs/kirin.yaml index 626df4f4..20a44be8 100644 --- a/openandroidinstaller/assets/configs/kirin.yaml +++ b/openandroidinstaller/assets/configs/kirin.yaml @@ -1,6 +1,7 @@ metadata: maintainer: Tobias Sterbak (tsterbak) device_name: Sony Xperia 10 + is_ab_device: true device_code: kirin supported_device_codes: - kirin diff --git a/openandroidinstaller/assets/configs/mermaid.yaml b/openandroidinstaller/assets/configs/mermaid.yaml index 3660cb4f..cdaa5a22 100644 --- a/openandroidinstaller/assets/configs/mermaid.yaml +++ b/openandroidinstaller/assets/configs/mermaid.yaml @@ -1,6 +1,7 @@ metadata: maintainer: Tobias Sterbak (tsterbak) device_name: Sony Xperia 10 Plus + is_ab_device: true device_code: mermaid supported_device_codes: - mermaid diff --git a/openandroidinstaller/assets/configs/nairo.yaml b/openandroidinstaller/assets/configs/nairo.yaml index 422c40fd..214d35a8 100644 --- a/openandroidinstaller/assets/configs/nairo.yaml +++ b/openandroidinstaller/assets/configs/nairo.yaml @@ -1,6 +1,7 @@ metadata: maintainer: Tobias Sterbak (tsterbak) device_name: Motorola moto g 5G plus / one 5G + is_ab_device: true device_code: nairo supported_device_codes: - nairo diff --git a/openandroidinstaller/assets/configs/ocean.yaml b/openandroidinstaller/assets/configs/ocean.yaml index 7c6c9a7c..975a2432 100644 --- a/openandroidinstaller/assets/configs/ocean.yaml +++ b/openandroidinstaller/assets/configs/ocean.yaml @@ -1,6 +1,7 @@ metadata: maintainer: Tobias Sterbak (tsterbak) device_name: Motorola Moto G7 power + is_ab_device: true device_code: ocean supported_device_codes: - ocean diff --git a/openandroidinstaller/assets/configs/pioneer.yaml b/openandroidinstaller/assets/configs/pioneer.yaml index 7480b263..bc07d885 100644 --- a/openandroidinstaller/assets/configs/pioneer.yaml +++ b/openandroidinstaller/assets/configs/pioneer.yaml @@ -1,6 +1,7 @@ metadata: maintainer: Tobias Sterbak (tsterbak) device_name: Sony Xperia XA2 + is_ab_device: true device_code: pioneer supported_device_codes: - pioneer diff --git a/openandroidinstaller/assets/configs/racer.yaml b/openandroidinstaller/assets/configs/racer.yaml index f67ae11c..252e1e7c 100644 --- a/openandroidinstaller/assets/configs/racer.yaml +++ b/openandroidinstaller/assets/configs/racer.yaml @@ -1,6 +1,7 @@ metadata: maintainer: Tobias Sterbak (tsterbak) device_name: Motorola edge + is_ab_device: true device_code: racer supported_device_codes: - racer diff --git a/openandroidinstaller/assets/configs/redfin.yaml b/openandroidinstaller/assets/configs/redfin.yaml index e40ef553..36c13980 100644 --- a/openandroidinstaller/assets/configs/redfin.yaml +++ b/openandroidinstaller/assets/configs/redfin.yaml @@ -1,6 +1,7 @@ metadata: maintainer: Tobias Sterbak (tsterbak) device_name: Pixel 5 + is_ab_device: true device_code: redfin supported_device_codes: - redfin diff --git a/openandroidinstaller/assets/configs/s3ve3g.yaml b/openandroidinstaller/assets/configs/s3ve3g.yaml index 19dbf51e..cfe232ea 100644 --- a/openandroidinstaller/assets/configs/s3ve3g.yaml +++ b/openandroidinstaller/assets/configs/s3ve3g.yaml @@ -1,6 +1,7 @@ metadata: maintainer: Tobias Sterbak (tsterbak) device_name: Samsung Galaxy S III Neo + is_ab_device: true device_code: s3ve3g supported_device_codes: - s3ve3g diff --git a/openandroidinstaller/assets/configs/starlte.yaml b/openandroidinstaller/assets/configs/starlte.yaml index 71c6f7f2..31411a9f 100644 --- a/openandroidinstaller/assets/configs/starlte.yaml +++ b/openandroidinstaller/assets/configs/starlte.yaml @@ -1,6 +1,7 @@ metadata: maintainer: Tobias Sterbak (tsterbak) device_name: Samsung Galaxy S9 + is_ab_device: true device_code: starlte supported_device_codes: - starlte diff --git a/openandroidinstaller/assets/configs/sunfish.yaml b/openandroidinstaller/assets/configs/sunfish.yaml index 53b80d01..2a2baa5f 100644 --- a/openandroidinstaller/assets/configs/sunfish.yaml +++ b/openandroidinstaller/assets/configs/sunfish.yaml @@ -1,6 +1,7 @@ metadata: maintainer: Tobias Sterbak (tsterbak) device_name: Pixel 4a + is_ab_device: true device_code: sunfish supported_device_codes: - sunfish diff --git a/openandroidinstaller/assets/configs/taimen.yaml b/openandroidinstaller/assets/configs/taimen.yaml index d4a371df..8457584e 100644 --- a/openandroidinstaller/assets/configs/taimen.yaml +++ b/openandroidinstaller/assets/configs/taimen.yaml @@ -1,6 +1,7 @@ metadata: maintainer: Tobias Sterbak (tsterbak) device_name: Google Pixel 2 XL + is_ab_device: true device_code: taimen supported_device_codes: - taimen diff --git a/openandroidinstaller/assets/configs/walleye.yaml b/openandroidinstaller/assets/configs/walleye.yaml index 88e450ed..d1482869 100644 --- a/openandroidinstaller/assets/configs/walleye.yaml +++ b/openandroidinstaller/assets/configs/walleye.yaml @@ -1,6 +1,7 @@ metadata: maintainer: Tobias Sterbak (tsterbak) device_name: Google Pixel 2 + is_ab_device: true device_code: walleye supported_device_codes: - walleye diff --git a/openandroidinstaller/assets/configs/yuga.yaml b/openandroidinstaller/assets/configs/yuga.yaml index d2a97434..1d751eb0 100644 --- a/openandroidinstaller/assets/configs/yuga.yaml +++ b/openandroidinstaller/assets/configs/yuga.yaml @@ -1,6 +1,7 @@ metadata: maintainer: Tobias Sterbak (tsterbak) device_name: Sony Xperia Z + is_ab_device: true device_code: yuga supported_device_codes: - yuga diff --git a/openandroidinstaller/assets/configs/z3.yaml b/openandroidinstaller/assets/configs/z3.yaml index 410c07d2..cb626895 100644 --- a/openandroidinstaller/assets/configs/z3.yaml +++ b/openandroidinstaller/assets/configs/z3.yaml @@ -1,6 +1,7 @@ metadata: maintainer: Tobias Sterbak (tsterbak) device_name: Sony Xperia Z3 + is_ab_device: true device_code: z3 supported_device_codes: - z3 diff --git a/openandroidinstaller/assets/configs/zerofltexx.yaml b/openandroidinstaller/assets/configs/zerofltexx.yaml index f823b726..9009af85 100644 --- a/openandroidinstaller/assets/configs/zerofltexx.yaml +++ b/openandroidinstaller/assets/configs/zerofltexx.yaml @@ -1,6 +1,7 @@ metadata: maintainer: Tobias Sterbak (tsterbak) device_name: Samsung Galaxy S6 + is_ab_device: true device_code: zerofltexx supported_device_codes: - zerofltexx diff --git a/openandroidinstaller/assets/configs/zeroltexx.yaml b/openandroidinstaller/assets/configs/zeroltexx.yaml index f2a080e9..f60e8b3a 100644 --- a/openandroidinstaller/assets/configs/zeroltexx.yaml +++ b/openandroidinstaller/assets/configs/zeroltexx.yaml @@ -1,6 +1,7 @@ metadata: maintainer: Tobias Sterbak (tsterbak) device_name: Samsung Galaxy S6 Edge + is_ab_device: true device_code: zeroltexx supported_device_codes: - zeroltexx diff --git a/openandroidinstaller/views/start_view.py b/openandroidinstaller/views/start_view.py index 65bf8f52..69a70503 100644 --- a/openandroidinstaller/views/start_view.py +++ b/openandroidinstaller/views/start_view.py @@ -37,7 +37,7 @@ from views import BaseView from app_state import AppState from widgets import get_title -from tooling import search_device, check_ab_partition +from tooling import search_device class StartView(BaseView): @@ -221,9 +221,6 @@ def search_devices(self, e): device_code = search_device( platform=self.state.platform, bin_path=self.state.bin_path ) - is_ab = check_ab_partition( - platform=self.state.platform, bin_path=self.state.bin_path - ) if device_code: self.device_name.value = device_code self.device_name.color = colors.BLACK diff --git a/tests/test_tooling.py b/tests/test_tooling.py index 6e666c1e..ffcaeb5a 100644 --- a/tests/test_tooling.py +++ b/tests/test_tooling.py @@ -94,4 +94,4 @@ def patched_check_output(*args, **kwargs): platform="linux", bin_path=Path("openandroidinstaller/bin/") ) - assert device_code == None \ No newline at end of file + assert device_code == None From ece1e2514a0fadb2d02e991d8913428e0f12f9b9 Mon Sep 17 00:00:00 2001 From: Tobias Sterbak Date: Mon, 27 Mar 2023 11:15:30 +0200 Subject: [PATCH 3/3] Update readme --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index e2da6142..9b4384a4 100644 --- a/README.md +++ b/README.md @@ -198,6 +198,7 @@ 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. +- `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.