From d2f0a7baeea894042659c53a8c87a0ed2d5cf27b Mon Sep 17 00:00:00 2001 From: Nikhil Badyal Date: Sun, 6 Aug 2023 20:24:16 +0530 Subject: [PATCH] =?UTF-8?q?=E2=9C=A8=20Custom=20Patches=20json=20dl=20supp?= =?UTF-8?q?ort?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 6 +++++- src/app.py | 5 ++++- src/config.py | 4 ++++ 3 files changed, 13 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index b375d84..7d135f1 100644 --- a/README.md +++ b/README.md @@ -118,7 +118,7 @@ You can use any of the following methods to build. ### Global Config -| Env Name | Description | Default | +| **Env Name** | **Description** | **Default** | |:---------------------------------------------------------|:-------------------------------------------------:|:---------------------------------------------------------------------------------------------------------| | [PATCH_APPS](#patch-apps) | Apps to patch/build | youtube | | [EXISTING_DOWNLOADED_APKS ](#existing-downloaded-apks) | Already downloaded clean apks | [] | @@ -126,6 +126,7 @@ You can use any of the following methods to build. | DRY_RUN | Do a dry run | False | | [GLOBAL_CLI_DL*](#global-resources) | DL for CLI to be used for patching apps. | [Revanced CLI](https://github.com/revanced/revanced-cli) | | [GLOBAL_PATCHES_DL*](#global-resources) | DL for Patches to be used for patching apps. | [Revanced Patches](https://github.com/revanced/revanced-patches) | +| [GLOBAL_PATCHES_JSON_DL*](#global-resources) | DL for Patches Json to be used for patching apps. | [Revanced Patches](https://github.com/revanced/revanced-patches) | | [GLOBAL_INTEGRATIONS_DL*](#global-resources) | DL for Integrations to be used for patching apps. | [Revanced CLI](https://github.com/revanced/revanced-integrations) | | [GLOBAL_KEYSTORE_FILE_NAME*](#global-keystore-file-name) | Key file to be used for signing apps | [Builder's own key](https://github.com/nikhilbadyal/docker-py-revanced/blob/main/apks/revanced.keystore) | | [GLOBAL_ARCHS_TO_BUILD*](#global-archs-to-build) | Arch to keep in the patched apk. | All | @@ -143,6 +144,7 @@ You can use any of the following methods to build. |:------------------------------------------------------------|:---------------------------------------------------------:|:-------------------------------| | [*APP_NAME*_CLI_DL](#global-resources) | DL for CLI to be used for patching **APP_NAME**. | GLOBAL_CLI_DL | | [*APP_NAME*_PATCHES_DL](#global-resources) | DL for Patches to be used for patching **APP_NAME**. | GLOBAL_PATCHES_DL | +| [*APP_NAME*_PATCHES_JSON_DL](#global-resources) | DL for Patches Json to be used for patching **APP_NAME**. | GLOBAL_PATCHES_JSON_DL | | [*APP_NAME*_INTEGRATIONS_DL](#global-resources) | DL for Integrations to be used for patching **APP_NAME**. | GLOBAL_INTEGRATIONS_DL | | [*APP_NAME*_KEYSTORE_FILE_NAME](#global-keystore-file-name) | Key file to be used for signing **APP_NAME**. | GLOBAL_KEYSTORE_FILE_NAME | | [*APP_NAME*_ARCHS_TO_BUILD](#global-archs-to-build) | Arch to keep in the patched **APP_NAME**. | GLOBAL_ARCHS_TO_BUILD | @@ -234,6 +236,7 @@ You can use any of the following methods to build. ```dotenv GLOBAL_CLI_DL=https://github.com/revanced/revanced-cli GLOBAL_PATCHES_DL=https://github.com/revanced/revanced-patches + GLOBAL_PATCHES_JSON_DL=https://github.com/revanced/revanced-patches GLOBAL_INTEGRATIONS_DL=https://github.com/revanced/revanced-integrations ``` Resources downloaded from envs and will be used for patching for any **APP_NAME**. @@ -245,6 +248,7 @@ You can use any of the following methods to build. ```dotenv YOUTUBE_CLI_DL=https://github.com/inotia00/revanced-cli YOUTUBE_PATCHES_DL=https://github.com/inotia00/revanced-patches + YOUTUBE_PATCHES_JSON_DL=https://github.com/inotia00/revanced-patches YOUTUBE_INTEGRATIONS_DL=https://github.com/inotia00/revanced-integrations ``` With the config tool will try to patch youtube with resources from inotia00 while other global resource will used diff --git a/src/app.py b/src/app.py index 1947be5..9ae881c 100644 --- a/src/app.py +++ b/src/app.py @@ -25,6 +25,9 @@ class APP(object): self.integrations_dl = config.env.str( f"{app_name}_INTEGRATION_DL".upper(), config.global_integrations_dl ) + self.patches_json_dl = config.env.str( + f"{app_name}_PATCHES_JSON_DL".upper(), config.global_patches_json_dl + ) self.exclude_request = config.env.list(f"{app_name}_EXCLUDE_PATCH".upper(), []) self.include_request = config.env.list(f"{app_name}_INCLUDE_PATCH".upper(), []) self.resource: Dict[str, str] = {} @@ -73,7 +76,7 @@ class APP(object): ("cli", self.cli_dl, config, ".*jar"), ("integrations", self.integrations_dl, config, ".*apk"), ("patches", self.patches_dl, config, ".*jar"), - ("patches_json", self.patches_dl, config, ".*json"), + ("patches_json", self.patches_json_dl, config, ".*json"), ] # Using a ThreadPoolExecutor for parallelism diff --git a/src/config.py b/src/config.py index 3b44f77..c3baf9a 100644 --- a/src/config.py +++ b/src/config.py @@ -9,6 +9,7 @@ from src.utils import default_build default_cli = "https://github.com/revanced/revanced-cli/releases/latest" default_patches = "https://github.com/revanced/revanced-patches/releases/latest" +default_patches_json = default_patches default_integrations = ( "https://github.com/revanced/revanced-integrations/releases/latest" ) @@ -77,6 +78,9 @@ class RevancedConfig(object): self.dry_run = env.bool("DRY_RUN", False) self.global_cli_dl = env.str("GLOBAL_CLI_DL", default_cli) self.global_patches_dl = env.str("GLOBAL_PATCHES_DL", default_patches) + self.global_patches_json_dl = env.str( + "GLOBAL_PATCHES_JSON_DL", default_patches_json + ) self.global_integrations_dl = env.str( "GLOBAL_INTEGRATIONS_DL", default_integrations )