FROM debian:bookworm-slim AS base

RUN apt update && \
    apt install -y build-essential curl git python3 pkg-config libssl-dev \
    && apt clean \
    && rm -rf /var/lib/apt/lists/*

# Get Rust
RUN curl https://sh.rustup.rs -sSf | bash -s -- -y
RUN echo 'source $HOME/.cargo/env' >> $HOME/.bashrc

WORKDIR /app

ADD https://astral.sh/uv/install.sh /uv-installer.sh
RUN sh /uv-installer.sh && rm /uv-installer.sh

ENV PATH="/root/.local/bin/:$PATH"

# RUN python3 -m pip install uv --break-system-packages
RUN uv venv
# /app/.venv/bin/python
ENV PATH="/app/.venv/bin/:$PATH"
RUN uv pip install "maturin[patchelf]"

ADD src /app/src
ADD Cargo.toml /app/Cargo.toml
ADD README.md /app/README.md
ADD pyproject.toml /app/pyproject.toml

RUN cp ./src/msyrs.pyi ./msyrs.pyi

VOLUME /app/build

# CMD ["/bin/bash"]
# CMD ["maturin", "build", "--release", "--out", "/app/build"]
# RUN maturin build --release --out ./build
# RUN uv build --sdist --wheel --out-dir ./build 