ARG ARG_FROM=debian:12 # default value to avoid warning
FROM $ARG_FROM

# RUN . ./yocto-docs-venv/bin/activate doesn't work because env variables set
# in RUN don't persist, so set up the virtualenv manually ahead of time.
# Unsetting env variables in Containerfile is difficult, so we hope it works
# fine without doing that for PYTHONHOME (see activate script content).
# Note that the actual location depends on WORKDIR at this layer in the
# container, and it must match the pwd when pip3_docs.sh is run in a later
# layer. This *must* be outside of any mount point otherwise it won't be
# available within the container.
ENV VIRTUAL_ENV=/yocto-docs-venv
ENV PATH="$VIRTUAL_ENV/bin:$PATH"

# Set the WORKDIR to / so the pip3_docs.sh script will find our virtual env
# when calling '. ./yocto-docs-venv/bin/activate'.
WORKDIR /

ARG INCLUDE_ESSENTIAL_PACKAGES=0
ARG ESSENTIAL=ubuntu_essential.sh
ARG DOCS=ubuntu_docs.sh
ARG DOCS_PDF=ubuntu_docs_pdf.sh
ARG PIP3=pip3_docs.sh

ENV DEBIAN_FRONTEND=noninteractive
ARG TZ=Europe/Vienna

# relative to the location of the dockerfile
COPY --chmod=777 ${ESSENTIAL} /temp/host_packages_essential.sh
COPY --chmod=777 ${DOCS} /temp/host_packages_docs.sh
COPY --chmod=777 ${DOCS_PDF} /temp/host_packages_docs_pdf.sh
COPY --chmod=777 ${PIP3} /temp/pip3_docs.sh

RUN ln -fs "/usr/share/zoneinfo/$TZ" /etc/localtime \
 && apt-get update \
 && apt-get install -y sudo \
 && if [ "$INCLUDE_ESSENTIAL_PACKAGES" = "1" ]; then yes | /temp/host_packages_essential.sh; fi \
 && yes | /temp/host_packages_docs.sh \
 && yes | /temp/host_packages_docs_pdf.sh \
 && yes | /temp/pip3_docs.sh \
 && apt-get --yes autoremove \
 && apt-get clean \
 && rm -rf /temp

RUN git config --global --add safe.directory /docs

ENTRYPOINT ["/usr/bin/env", "make", "-C", "documentation/"]
CMD ["publish"]
