From 66bccae7e2764357bb669478e274a28e8a974e66 Mon Sep 17 00:00:00 2001 From: Your Name Date: Thu, 1 Jan 2026 14:02:19 +0700 Subject: [PATCH] Fix: Hard override PIP_INDEX_URL env var to ignore local pip config --- backend/api/endpoints/settings.py | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/backend/api/endpoints/settings.py b/backend/api/endpoints/settings.py index 6982fb2..ece3ded 100644 --- a/backend/api/endpoints/settings.py +++ b/backend/api/endpoints/settings.py @@ -23,11 +23,17 @@ async def update_ytdlp(background_tasks: BackgroundTasks): try: # Run pip install to upgrade yt-dlp to master logger.info("Starting yt-dlp update...") + + # Force PyPI index via environment variable to override global config + env = os.environ.copy() + env["PIP_INDEX_URL"] = "https://pypi.org/simple" + process = subprocess.run( - [sys.executable, "-m", "pip", "install", "--upgrade", "--force-reinstall", "--index-url", "https://pypi.org/simple", "git+https://github.com/yt-dlp/yt-dlp.git@master"], + [sys.executable, "-m", "pip", "install", "--upgrade", "--force-reinstall", "git+https://github.com/yt-dlp/yt-dlp.git@master"], capture_output=True, text=True, - check=True + check=True, + env=env ) logger.info(f"Update Output: {process.stdout}") @@ -46,11 +52,17 @@ async def update_ytdlp(background_tasks: BackgroundTasks): async def update_spotdl(background_tasks: BackgroundTasks): try: logger.info("Starting spotdl update...") + + # Force PyPI index via environment variable + env = os.environ.copy() + env["PIP_INDEX_URL"] = "https://pypi.org/simple" + process = subprocess.run( - [sys.executable, "-m", "pip", "install", "--upgrade", "--index-url", "https://pypi.org/simple", "spotdl"], + [sys.executable, "-m", "pip", "install", "--upgrade", "spotdl"], capture_output=True, text=True, - check=True + check=True, + env=env ) logger.info(f"Update Output: {process.stdout}")