FROM debian:sid-slim

RUN apt-get update && apt-get install -y --no-install-recommends \
    ca-certificates \
    git \
    python3 \
    python3-venv \
    python3-pip \
    yosys \
    nextpnr-ice40 \
    fpga-icestorm \
    nodejs npm \
    graphviz \
    kicad \
    && rm -rf /var/lib/apt/lists/*

# Debian marks the system Python as externally-managed (PEP 668), so install
# project deps into a venv. /opt/venv is first on PATH, so `python`/`pip` resolve
# to it for all users.
ENV VIRTUAL_ENV=/opt/venv
RUN python3 -m venv "$VIRTUAL_ENV"
ENV PATH="$VIRTUAL_ENV/bin:$PATH"

RUN npm install -g @anthropic-ai/claude-code

COPY requirements.txt /tmp/requirements.txt
RUN pip install --no-cache-dir -r /tmp/requirements.txt

RUN useradd -m -u 1000 -s /bin/bash vscode

USER vscode
WORKDIR /workspace
