From f364155897e720ce31322611ce3ddc994b978e3f Mon Sep 17 00:00:00 2001 From: Nikhil Badyal Date: Fri, 14 Jul 2023 22:26:20 +0530 Subject: [PATCH] =?UTF-8?q?=E2=9C=A8=20Added=20microg=20patch?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 1 + src/config.py | 2 +- src/downloader/factory.py | 2 +- src/downloader/github.py | 6 +++--- src/downloader/utils.py | 17 +++++++++++++---- src/patches.py | 1 + 6 files changed, 20 insertions(+), 9 deletions(-) diff --git a/README.md b/README.md index f6dec69..7dbe646 100644 --- a/README.md +++ b/README.md @@ -163,6 +163,7 @@ By default, script build the version as recommended by Revanced team. 36. [infinity](https://www.apkmirror.com/apk/red-apps-ltd/sync-for-reddit/) 37. [slide](https://www.apkmirror.com/apk/haptic-apps/slide-for-reddit/) 38. [bacon](https://www.apkmirror.com/apk/onelouder-apps/baconreader-for-reddit/) + 39. [microg](https://github.com/inotia00/mMicroG/releases)
Please verify the source of original APKs yourself with links provided. I'm not responsible for any damaged caused. If you know any better/safe source to download clean. Please raise a PR. diff --git a/src/config.py b/src/config.py index dd059c7..2d88064 100644 --- a/src/config.py +++ b/src/config.py @@ -35,7 +35,7 @@ class RevancedConfig(object): self.keystore_name = env.str("KEYSTORE_FILE_NAME", "revanced.keystore") self.ci_test = env.bool("CI_TEST", False) self.apps = env.list("PATCH_APPS", default_build) - self.extended_apps: List[str] = ["youtube", "youtube_music"] + self.extended_apps: List[str] = ["youtube", "youtube_music", "microg"] self.rip_libs_apps: List[str] = ["youtube"] self.normal_cli_jar = "revanced-cli.jar" self.normal_patches_jar = "revanced-patches.jar" diff --git a/src/downloader/factory.py b/src/downloader/factory.py index 9ef9709..5308532 100644 --- a/src/downloader/factory.py +++ b/src/downloader/factory.py @@ -24,7 +24,7 @@ class DownloaderFactory(object): patcher : Patcher config : Config """ - if app == "patches": + if app == "patches" or app == "microg": return Github(patcher, config) if app in config.apk_pure: return ApkPure(patcher, config) diff --git a/src/downloader/github.py b/src/downloader/github.py index 6e16082..91046c2 100644 --- a/src/downloader/github.py +++ b/src/downloader/github.py @@ -16,14 +16,14 @@ class Github(Downloader): :param app: App to download """ - owner = str(kwargs["owner"]) - repo_name = str(kwargs["name"]) logger.debug(f"Trying to download {app} from github") - if self.config.dry_run: + if self.config.dry_run or app == "microg": logger.debug( f"Skipping download of {app}. File already exists or dry running." ) return + owner = str(kwargs["owner"]) + repo_name = str(kwargs["name"]) repo_url = f"https://api.github.com/repos/{owner}/{repo_name}/releases/latest" headers = { "Content-Type": "application/vnd.github.v3+json", diff --git a/src/downloader/utils.py b/src/downloader/utils.py index 5e7d6e3..6a62436 100644 --- a/src/downloader/utils.py +++ b/src/downloader/utils.py @@ -29,10 +29,19 @@ def download_revanced(config: RevancedConfig, patcher: Patches) -> None: ["inotia00", "revanced-integrations", config.integrations_apk], ["inotia00", "revanced-patches", config.patches_jar], ] - if "youtube" in config.apps or "youtube_music" in config.apps: - assets += [ - ["inotia00", "mMicroG", "mMicroG-output.apk"], - ] + if ( + "youtube" in config.apps + or "youtube_music" in config.apps + or "microg" in config.apps + ): + if config.build_extended and "microg" in config.apps: + assets += [ + ["inotia00", "mMicroG", "microg.apk"], + ] + else: + assets += [ + ["inotia00", "mMicroG", "microg-output.apk"], + ] downloader = DownloaderFactory.create_downloader( app="patches", patcher=patcher, config=config ) diff --git a/src/patches.py b/src/patches.py index 7bf2784..852e275 100644 --- a/src/patches.py +++ b/src/patches.py @@ -57,6 +57,7 @@ class Patches(object): _revanced_extended_app_ids = { "com.google.android.youtube": "youtube", "com.google.android.apps.youtube.music": "youtube_music", + "com.mgoogle.android.gms": "microg", } revanced_extended_app_ids = { key: (value, "_" + value) for key, value in _revanced_extended_app_ids.items()