# Python library testing environment

FROM fedora:latest
MAINTAINER John Snow <jsnow@redhat.com>

# Please keep this list sorted alphabetically
ENV PACKAGES \
    gcc \
    make \
    python3 \
    python3-pip \
    python3-tox \
    python3-virtualenv \
    python3.10 \
    python3.11 \
    python3.12 \
    python3.13 \
    python3.8 \
    python3.9

RUN dnf install -y $PACKAGES
RUN rpm -q $PACKAGES | sort > /packages.txt
# As a final step configure the user (if env is defined)
ARG USER
ARG UID
RUN if [ "${USER}" ]; then \
  id ${USER} 2>/dev/null || useradd -u ${UID} -U ${USER}; fi
