Download code/reveal_vla_bimanual/scripts/setup_env_a_rlbench.sh from lsnu/VLAarchtests: direct link, hf CLI and curl.
- Browser
- Download file 4.57 kB
-
https://huggingface.co/lsnu/VLAarchtests/resolve/main/code/reveal_vla_bimanual/scripts/setup_env_a_rlbench.sh
- Command line
-
hf download hf://lsnu/VLAarchtests/code/reveal_vla_bimanual/scripts/setup_env_a_rlbench.sh
-
curl -L -o setup_env_a_rlbench.sh https://huggingface.co/lsnu/VLAarchtests/resolve/main/code/reveal_vla_bimanual/scripts/setup_env_a_rlbench.sh
4.57 kB
| set -euo pipefail | |
| ROOT_DIR="${ROOT_DIR:-/workspace}" | |
| PROJECT_DIR="${ROOT_DIR}/reveal_vla_bimanual" | |
| MAMBA_BIN="$("${PROJECT_DIR}/scripts/install_micromamba.sh")" | |
| MAMBA_ROOT_PREFIX="${ROOT_DIR}/.micromamba" | |
| ENV_PREFIX="${ROOT_DIR}/envs/rlbench" | |
| ENV_YAML="${PROJECT_DIR}/envs/rlbench310.yaml" | |
| COPPELIA_DIR="$("${PROJECT_DIR}/scripts/download_coppeliasim.sh")" | |
| RUNTIME_DIR="${ROOT_DIR}/runtime" | |
| mkdir -p "${ROOT_DIR}/envs" | |
| mkdir -p "${RUNTIME_DIR}" | |
| chmod 700 "${RUNTIME_DIR}" | |
| run_in_env() { | |
| local driver_version="" | |
| local driver_branch="" | |
| local shim_ld="" | |
| if command -v nvidia-smi >/dev/null 2>&1; then | |
| driver_version="$(nvidia-smi --query-gpu=driver_version --format=csv,noheader | head -n1 || true)" | |
| driver_branch="${driver_version%%.*}" | |
| if [[ -n "${driver_branch}" && -d "${ROOT_DIR}/system_shims/nvidia${driver_branch}/usr/lib/x86_64-linux-gnu" ]]; then | |
| shim_ld="${ROOT_DIR}/system_shims/nvidia${driver_branch}/usr/lib/x86_64-linux-gnu" | |
| fi | |
| fi | |
| env \ | |
| COPPELIASIM_ROOT="${COPPELIA_DIR}" \ | |
| XDG_RUNTIME_DIR="${RUNTIME_DIR}" \ | |
| LD_LIBRARY_PATH="${COPPELIA_DIR}${shim_ld:+:${shim_ld}}${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}" \ | |
| QT_QPA_PLATFORM_PLUGIN_PATH="${COPPELIA_DIR}" \ | |
| "${MAMBA_BIN}" run -r "${MAMBA_ROOT_PREFIX}" -p "${ENV_PREFIX}" "$@" | |
| } | |
| if [[ -x "${ENV_PREFIX}/bin/python" ]]; then | |
| "${MAMBA_BIN}" install -y -r "${MAMBA_ROOT_PREFIX}" -p "${ENV_PREFIX}" -f "${ENV_YAML}" | |
| else | |
| "${MAMBA_BIN}" create -y -r "${MAMBA_ROOT_PREFIX}" -p "${ENV_PREFIX}" -f "${ENV_YAML}" | |
| fi | |
| mkdir -p "${ENV_PREFIX}/etc/conda/activate.d" | |
| cat > "${ENV_PREFIX}/etc/conda/activate.d/coppeliasim.sh" <<EOF | |
| export COPPELIASIM_ROOT=${COPPELIA_DIR} | |
| export XDG_RUNTIME_DIR=${RUNTIME_DIR} | |
| _codex_driver_version="\$(nvidia-smi --query-gpu=driver_version --format=csv,noheader | head -n1 2>/dev/null || true)" | |
| _codex_driver_branch="\${_codex_driver_version%%.*}" | |
| _codex_nvidia_ld= | |
| if [[ -n "\${_codex_driver_branch}" && -d ${ROOT_DIR}/system_shims/nvidia\${_codex_driver_branch}/usr/lib/x86_64-linux-gnu ]]; then | |
| _codex_nvidia_ld=${ROOT_DIR}/system_shims/nvidia\${_codex_driver_branch}/usr/lib/x86_64-linux-gnu | |
| fi | |
| export LD_LIBRARY_PATH=\${COPPELIASIM_ROOT}\${_codex_nvidia_ld:+:\${_codex_nvidia_ld}}\${LD_LIBRARY_PATH:+:\${LD_LIBRARY_PATH}} | |
| export QT_QPA_PLATFORM_PLUGIN_PATH=\${COPPELIASIM_ROOT} | |
| EOF | |
| run_in_env python -m pip install -U pip setuptools wheel | |
| run_in_env python -m pip install --force-reinstall --no-deps numpy==1.26.4 Pillow==12.1.1 | |
| run_in_env python -m pip install --no-deps moviepy==2.2.1 timeout-decorator==0.5.0 opencv-python==4.10.0.84 pyquaternion==0.9.9 click-prompt==0.5.1 | |
| run_in_env python -m pip install --no-deps poetry-core | |
| run_in_env python -m pip install gymnasium==1.0.0a2 open3d==0.19.0 segment-anything==1.0 transforms3d==0.4.1 openai==0.28.1 | |
| first_existing_dir() { | |
| local candidate="" | |
| for candidate in "$@"; do | |
| if [[ -d "${candidate}" ]]; then | |
| printf '%s\n' "${candidate}" | |
| return 0 | |
| fi | |
| done | |
| printf '%s\n' "$1" | |
| } | |
| PERACT_ROOT="$(first_existing_dir "${ROOT_DIR}/third_party/peract2_bimanual_probe_20260324" "${ROOT_DIR}/third_party/peract_bimanual")" | |
| YARR_ROOT="$(first_existing_dir "${ROOT_DIR}/third_party/YARR_peract2_20260324" "${ROOT_DIR}/third_party/YARR")" | |
| PYREP_ROOT="$(first_existing_dir "${ROOT_DIR}/third_party/PyRep_peract2_20260324" "${ROOT_DIR}/third_party/PyRep")" | |
| RLBENCH_ROOT="$(first_existing_dir "${ROOT_DIR}/third_party/RLBench_peract2_20260324" "${ROOT_DIR}/third_party/RLBench")" | |
| if [[ -f "${PERACT_ROOT}/YARR/setup.py" ]]; then | |
| YARR_ROOT="${PERACT_ROOT}/YARR" | |
| fi | |
| if [[ -f "${PERACT_ROOT}/PyRep/setup.py" ]]; then | |
| PYREP_ROOT="${PERACT_ROOT}/PyRep" | |
| fi | |
| if [[ -f "${PERACT_ROOT}/RLBench/setup.py" ]]; then | |
| RLBENCH_ROOT="${PERACT_ROOT}/RLBench" | |
| fi | |
| if [[ ! -f "${PERACT_ROOT}/pyproject.toml" && ! -f "${PERACT_ROOT}/setup.py" && -f "${PERACT_ROOT}/peract/setup.py" ]]; then | |
| PERACT_ROOT="${PERACT_ROOT}/peract" | |
| fi | |
| run_in_env python -m pip install --no-build-isolation -e "${PROJECT_DIR}" | |
| run_in_env python -m pip install --no-build-isolation --no-deps -e "${YARR_ROOT}" | |
| run_in_env python -m pip install --no-build-isolation --no-deps -e "${PYREP_ROOT}" | |
| run_in_env python -m pip install --no-build-isolation --no-deps -e "${RLBENCH_ROOT}" | |
| run_in_env python -m pip install --no-build-isolation --no-deps -e "${PERACT_ROOT}" | |
| printf 'RLBench env ready at %s\n' "${ENV_PREFIX}" | |
| printf 'Activate with:\n' | |
| printf ' eval "$(%s shell hook -s bash -r %s)"\n' "${MAMBA_BIN}" "${MAMBA_ROOT_PREFIX}" | |
| printf ' micromamba activate %s\n' "${ENV_PREFIX}" | |