From 76eb716da714a42b91ec4a622e2341149e7e02f7 Mon Sep 17 00:00:00 2001 From: "CanbiZ (MickLesk)" <47820557+MickLesk@users.noreply.github.com> Date: Tue, 17 Feb 2026 10:57:21 +0100 Subject: [PATCH] Retry dependency install without build isolation Add retry logic to ct/calibre-web.sh and install/calibre-web-install.sh: if 'uv sync --no-dev' fails, the scripts now create/ensure a venv, install the 'calibreweb' package into it via 'uv pip', and retry 'uv sync' with '--no-build-isolation'. This works around failures caused by isolated builds or build-step issues and preserves existing log messages. --- ct/calibre-web.sh | 7 ++++++- install/calibre-web-install.sh | 7 ++++++- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/ct/calibre-web.sh b/ct/calibre-web.sh index 278dd9ff8..63a5c1221 100644 --- a/ct/calibre-web.sh +++ b/ct/calibre-web.sh @@ -43,7 +43,12 @@ function update_script() { msg_info "Installing Dependencies" cd /opt/calibre-web - $STD uv sync --no-dev + if ! $STD uv sync --no-dev; then + msg_info "Retrying dependency install without build isolation" + $STD uv venv + $STD uv pip install --python /opt/calibre-web/.venv/bin/python --no-cache-dir calibreweb + $STD uv sync --no-dev --no-build-isolation + fi msg_ok "Installed Dependencies" msg_info "Restoring Data" diff --git a/install/calibre-web-install.sh b/install/calibre-web-install.sh index dc201423c..566e50069 100644 --- a/install/calibre-web-install.sh +++ b/install/calibre-web-install.sh @@ -32,7 +32,12 @@ setup_uv msg_info "Installing Python Dependencies" cd /opt/calibre-web -$STD uv sync --no-dev +if ! $STD uv sync --no-dev; then + msg_info "Retrying Python dependency install without build isolation" + $STD uv venv + $STD uv pip install --python /opt/calibre-web/.venv/bin/python --no-cache-dir calibreweb + $STD uv sync --no-dev --no-build-isolation +fi msg_ok "Installed Python Dependencies" msg_info "Creating Service"