########################################################
# Firmwaredroid docker core                            #
########################################################
FROM python:3.11-slim-bookworm AS firmwaredroid-base

RUN mkdir -p /var/www/tmp/ && mkdir -p /var/www/ && mkdir -p /opt/firmwaredroid/python/
ADD ./ /var/www/
WORKDIR /var/www/
ENV PATH="$PATH:/home/www/.local/bin/"
ENV PATH="$PATH:/var/www/source/"
ENV PYTHONPATH="/var/www/source/:\$PYTHONPATH"
########################################################
# Update installation                                  #
########################################################
RUN apt-get --allow-releaseinfo-change update -y && \
    apt-get -y install --no-install-recommends apt-utils && \
    apt-get -y install tar gzip build-essential git unzip curl wget sudo

########################################################
# User generation                                      #
########################################################
ENV GROUP_ID=1000 \
    USER_ID=1000
RUN groupadd -r www -g $GROUP_ID
# /sbin/nologin -> Debug with -s /bin/sh to get shell
RUN useradd -r -g $GROUP_ID -u $USER_ID www -s /bin/sh -m
RUN chown $USER_ID:$GROUP_ID /var/www/
RUN chown -R $USER_ID:$GROUP_ID /opt/firmwaredroid/

USER www
ENV PATH="$PATH:/home/www/.local/bin/"

########################################################
# Install Python dependencies                          #
########################################################
RUN python3 -m pip install --upgrade pip && pip install -r ./requirements.txt
RUN chown -R $USER_ID:$GROUP_ID /opt/firmwaredroid/










