FROM docker.io/library/node:20-slim

ENV GEMINI_CODE_SANDBOX=docker
ENV SANDBOX=sandbox

# install minimal set of packages, then clean up
RUN apt-get update && apt-get install -y --no-install-recommends \
  man-db \
  curl \
  dnsutils \
  less \
  jq \
  bc \
  gh \
  git \
  unzip \
  rsync \
  ripgrep \
  procps \
  psmisc \
  lsof \
  && apt-get clean \
  && rm -rf /var/lib/apt/lists/*

RUN --mount=type=secret,id=npmrc,dst=/root/.npmrc npm install -g @gemini-code/cli@head --verbose

ENTRYPOINT 'gemini-code'