| import os |
| import sys |
| import json |
| import launch |
|
|
| |
| python = sys.executable |
|
|
| |
| canvasZoomPath = os.path.join(sys.path[2], "extensions", "canvas-zoom") |
|
|
| |
| script_path = os.path.realpath(__file__) |
|
|
| |
| requirements_path = os.path.join(sys.path[2], "requirements.txt") |
| config_path = os.path.join(sys.path[2], "config.json") |
|
|
| |
| gradio_version = None |
| should_script_work = False |
|
|
| |
| if os.path.isfile(requirements_path): |
| with open(requirements_path, "r") as file: |
| lines = file.readlines() |
| gradio_line = next((line for line in lines if line.startswith("gradio")), None) |
| gradio_version = gradio_line.split("==")[1].strip() if gradio_line else None |
| should_script_work = True |
|
|
| |
| if should_script_work: |
| |
| if os.path.isfile(config_path): |
| with open(config_path, 'r') as config_file: |
| config = json.load(config_file) |
| |
| if "canvas-zoom" in config.get('disabled_extensions', []): |
| launch.run(f'"{python}" -m pip install --force-reinstall --no-deps gradio=={gradio_version}', desc=f"Uninstalling modified gradio for canvas-zoom", errdesc=f"Couldn't uninstall canvas-zoom", live=False) |
| os.remove(script_path) |
|
|
| |
| if config.get('disable_all_extensions', 'none') == 'all': |
| launch.run(f'"{python}" -m pip install --force-reinstall --no-deps gradio=={gradio_version}', desc=f"Uninstalling modified gradio for canvas-zoom", errdesc=f"Couldn't uninstall canvas-zoom", live=False) |
| os.remove(script_path) |
|
|
| |
| if not os.path.exists(canvasZoomPath) and gradio_version is not None: |
| |
| launch.run(f'"{python}" -m pip install --force-reinstall --no-deps gradio=={gradio_version}', desc=f"Uninstalling modified gradio for canvas-zoom", errdesc=f"Couldn't uninstall canvas-zoom", live=False) |
| |
| os.remove(script_path) |