FROM mcr.microsoft.com/devcontainers/rust:latest

# For kubectl
RUN \
    curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl" \
    && install -o root -g root -m 0755 kubectl /usr/local/bin/kubectl

# For Just
RUN \
    wget -qO - 'https://proget.makedeb.org/debian-feeds/prebuilt-mpr.pub' | gpg --dearmor | tee /usr/share/keyrings/prebuilt-mpr-archive-keyring.gpg 1> /dev/null \
    && echo "deb [arch=all,$(dpkg --print-architecture) signed-by=/usr/share/keyrings/prebuilt-mpr-archive-keyring.gpg] https://proget.makedeb.org prebuilt-mpr bookworm" | tee /etc/apt/sources.list.d/prebuilt-mpr.list

# For gcloud
RUN \
    echo "deb [signed-by=/usr/share/keyrings/cloud.google.gpg] https://packages.cloud.google.com/apt cloud-sdk main" | tee -a /etc/apt/sources.list.d/google-cloud-sdk.list \
    && curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo gpg --dearmor -o /usr/share/keyrings/cloud.google.gpg

# For uv
COPY --from=ghcr.io/astral-sh/uv:latest /uv /uvx /bin/

RUN \
    export DEBIAN_FRONTEND=noninteractive \
    && apt-get update \
    && apt-get install -y \
    just \
    apt-transport-https ca-certificates gnupg curl \
    google-cloud-cli google-cloud-cli-gke-gcloud-auth-plugin \
    rust-lldb \
    && rm -rf /var/lib/apt/lists/*
