FROM stereolabs/zed:5.1-gl-devel-cuda12.8-ubuntu24.04

ARG PROXYCHAIN_SOCKS5_HOST=127.0.0.1
ARG PROXYCHAIN_SOCKS5_PORT=36000

# Use USTC mirrors for faster access in China.
RUN if [ -f /etc/apt/sources.list.d/ubuntu.sources ]; then \
      sed -i 's|http://archive.ubuntu.com/ubuntu/|https://mirrors.ustc.edu.cn/ubuntu/|g' /etc/apt/sources.list.d/ubuntu.sources; \
      sed -i 's|http://security.ubuntu.com/ubuntu/|https://mirrors.ustc.edu.cn/ubuntu/|g' /etc/apt/sources.list.d/ubuntu.sources; \
    elif [ -f /etc/apt/sources.list ]; then \
      sed -i 's|http://archive.ubuntu.com/ubuntu/|https://mirrors.ustc.edu.cn/ubuntu/|g' /etc/apt/sources.list; \
      sed -i 's|http://security.ubuntu.com/ubuntu/|https://mirrors.ustc.edu.cn/ubuntu/|g' /etc/apt/sources.list; \
    fi \
  && mkdir -p /etc/pip \
  && printf "%s\n" \
    "[global]" \
    "index-url = https://pypi.mirrors.ustc.edu.cn/simple" \
    "trusted-host = pypi.mirrors.ustc.edu.cn" \
    > /etc/pip.conf \
  && apt-get update \
  && DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \
    build-essential \
    cmake \
    git \
    gdb \
    vim \
    ninja-build \
    python3-pip \
    python3-setuptools \
    python3-venv \
    libopencv-dev \
    proxychains-ng \
  && if [ -f /etc/proxychains4.conf ]; then \
       sed -i 's|^socks4[[:space:]]\\+127\\.0\\.0\\.1[[:space:]]\\+9050|socks5 '"${PROXYCHAIN_SOCKS5_HOST}"' '"${PROXYCHAIN_SOCKS5_PORT}"'|g' /etc/proxychains4.conf; \
     fi \
  && rm -rf /var/lib/apt/lists/*
