ARG BUILD_FROM=ghcr.io/hassio-addons/base:16.3.6
# hadolint ignore=DL3006
FROM ${BUILD_FROM}

# Copy root filesystem
COPY rootfs /

# Copy Python requirements file
COPY requirements.txt /tmp/

# Setup base
RUN \
    apk add --no-cache --virtual .build-dependencies \
        build-base=0.5-r3 \
        py3-pip=24.0-r2 \
        python3-dev=3.12.7-r0 \
    \
    && apk add --no-cache \
        py3-packaging=24.0-r1 \
        py3-six=1.16.0-r9 \
        python3=3.12.7-r0 \
    \
    && pip3 install -r /tmp/requirements.txt \
    \
    && find /usr/local \
        \( -type d -a -name test -o -name tests -o -name '__pycache__' \) \
        -o \( -type f -a -name '*.pyc' -o -name '*.pyo' \) \
        -exec rm -rf '{}' + \
    \
    && apk del --no-cache --purge .build-dependencies

#RUN \
#    curl -sSLf -o initool.zip \
#    "https://github.com/dbohdan/initool/releases/download/v1.0.0/initool-v1.0.0-9dc7574-linux-x86_64.zip"
#RUN unzip /usr/bin/initool.zip -d /usr/bin
#RUN rm initool.zip

# https://www.virtualhere.com/sites/default/files/usbclient/vhclient${BUILD_ARCH}
RUN \
    curl -sSLf -o /usr/bin/vhclient \
    "https://www.virtualhere.com/sites/default/files/usbclient/vhclientx86_64"
RUN chmod a+x /usr/bin/vhclient

# Build arguments
ARG BUILD_ARCH
ARG BUILD_DATE
ARG BUILD_DESCRIPTION
ARG BUILD_NAME
ARG BUILD_REF
ARG BUILD_REPOSITORY
ARG BUILD_VERSION

# Labels
LABEL \
    io.hass.name="${BUILD_NAME}" \
    io.hass.description="${BUILD_DESCRIPTION}" \
    io.hass.arch="${BUILD_ARCH}" \
    io.hass.type="addon" \
    io.hass.version=${BUILD_VERSION} \
    maintainer="Hans Karlinius <carlscrona@gmail.com>" \
    org.opencontainers.image.title="${BUILD_NAME}" \
    org.opencontainers.image.description="${BUILD_DESCRIPTION}" \
    org.opencontainers.image.vendor="Home Assistant Community Add-ons" \
    org.opencontainers.image.authors="Hans Karlinius <carlscrona@gmail.com>" \
    org.opencontainers.image.licenses="MIT" \
    org.opencontainers.image.url="https://addons.community" \
    org.opencontainers.image.source="https://github.com/${BUILD_REPOSITORY}" \
    org.opencontainers.image.documentation="https://github.com/${BUILD_REPOSITORY}/blob/main/README.md" \
    org.opencontainers.image.created=${BUILD_DATE} \
    org.opencontainers.image.revision=${BUILD_REF} \
    org.opencontainers.image.version=${BUILD_VERSION}