From 866f8adf11b8faf4f39041ab192880cf774fdd12 Mon Sep 17 00:00:00 2001 From: Pepijn Date: Sun, 22 Mar 2026 21:38:19 -0700 Subject: [PATCH] fix(docker): install robocasa from GitHub source (not on PyPI) robocasa is not published to PyPI, so uv can't resolve it as a plain package dep. Fix by installing its runtime deps explicitly and cloning robocasa from GitHub with --no-deps (same pattern as libero_plus). Co-Authored-By: Claude Sonnet 4.6 --- docker/Dockerfile.eval-robocasa | 11 ++++++++++- pyproject.toml | 4 ++-- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/docker/Dockerfile.eval-robocasa b/docker/Dockerfile.eval-robocasa index 790fdde19..be60292f5 100644 --- a/docker/Dockerfile.eval-robocasa +++ b/docker/Dockerfile.eval-robocasa @@ -14,7 +14,16 @@ FROM lerobot-eval-base:latest -RUN uv pip install --no-cache ".[robocasa]" \ +# Install robocasa runtime deps (robocasa is not on PyPI; installed from source below). +RUN uv pip install --no-cache \ + "robosuite>=1.4.0,<1.5.0" \ + "easydict>=1.9" \ + "scikit-image>=0.20.0" \ + "scipy>=1.14.0,<2.0.0" + +# Clone robocasa and install with --no-deps (runtime deps declared above). +RUN git clone --depth 1 https://github.com/robocasa/robocasa.git /tmp/robocasa \ + && uv pip install --no-cache --no-deps /tmp/robocasa \ && python -c "import robocasa" CMD ["/bin/bash"] diff --git a/pyproject.toml b/pyproject.toml index a21349b2a..ef8b33390 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -202,8 +202,8 @@ robomme = [ "robomme @ git+https://github.com/RoboMME/robomme_benchmark.git@main ; sys_platform == 'linux'", ] robocasa = [ - "robocasa; sys_platform == 'linux'", - # robocasa's setup does not declare all runtime deps; list them here explicitly. + # robocasa is not on PyPI; installed from source in Dockerfile.eval-robocasa. + # List its runtime deps here so they are pip-installable without the package. "robosuite>=1.4.0,<1.5.0; sys_platform == 'linux'", "easydict>=1.9; sys_platform == 'linux'", "scikit-image>=0.20.0; sys_platform == 'linux'",