From 183ac16f95d8ac1e092ac7de1366492333a5818d Mon Sep 17 00:00:00 2001 From: Honnip Date: Wed, 7 May 2025 19:18:31 +0900 Subject: [PATCH] gnomeExtensions/update: introduce `--skip-fetch` option --- .../gnome/extensions/update-extensions.py | 23 +++++++++++++------ 1 file changed, 16 insertions(+), 7 deletions(-) diff --git a/pkgs/desktops/gnome/extensions/update-extensions.py b/pkgs/desktops/gnome/extensions/update-extensions.py index 9e9a4a988c55..d5f450c92ac7 100755 --- a/pkgs/desktops/gnome/extensions/update-extensions.py +++ b/pkgs/desktops/gnome/extensions/update-extensions.py @@ -4,6 +4,7 @@ import base64 import json import logging +import argparse import subprocess import urllib.error import urllib.request @@ -350,14 +351,22 @@ def find_collisions( def main() -> None: logging.basicConfig(level=logging.DEBUG) - - processed_extensions = fetch_extensions() - - serialize_extensions(processed_extensions) - - logging.info( - f"Done. Writing results to extensions.json ({len(processed_extensions)} extensions in total)" + parser = argparse.ArgumentParser() + parser.add_argument( + "--skip-fetch", + action="store_true", + help="Skip fetching extensions. When this option is set, the script does not fetch extensions from the internet, but checks for name collisions.", ) + args = parser.parse_args() + + if not args.skip_fetch: + processed_extensions = fetch_extensions() + + serialize_extensions(processed_extensions) + + logging.info( + f"Done. Writing results to extensions.json ({len(processed_extensions)} extensions in total)" + ) with open(updater_dir_path / "extensions.json", "r") as out: extensions = json.load(out)