# vim: syntax=dockerfile

FROM debian:sid-slim

LABEL maintainer="Nektar++ Development Team <nektar-users@imperial.ac.uk>"

WORKDIR /root

RUN DEBIAN_RELEASE=sid && \
    echo "deb http://deb.debian.org/debian ${DEBIAN_RELEASE} non-free" > \
        /etc/apt/sources.list.d/debian-non-free.list && \
    apt-get update && \
    apt-get install -y \
        packaging-dev cmake git git-buildpackage vim \
        libboost-iostreams-dev libboost-system-dev libboost-program-options-dev \
        libarpack2-dev \
        libfftw3-dev \
        libhdf5-mpi-dev \
        liblapack-dev \
        libtinyxml-dev \
        mpi-default-dev \
        zlib1g-dev \
        python3-dev python3-numpy \
        libptscotch-dev \
        liboce-foundation-dev liboce-modeling-dev liboce-ocaf-dev libgl-dev \
            libtet1.5-dev libtriangle-dev \
        texlive-base texlive-latex-extra texlive-science \
            texlive-fonts-recommended texlive-pstricks \
        doxygen graphviz imagemagick dvipng

RUN rm -f /usr/lib/x86_64-linux-gnu/openmpi/lib/*ucx* && \
    rm /usr/lib/x86_64-linux-gnu/openmpi/lib/openmpi3/*ucx*

RUN groupadd nektar && useradd -m -g nektar nektar

# Force update to always run when building image
ARG INVALIDATE_CACHE
RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get dist-upgrade -y

# Make sure python3-dev version matches latest installed interpreter
RUN  PYTHON_MINOR=$(ls -1 /usr/bin/python3.* | sed -r 's/.*python3\.([0-9]*)$/\1/ g' | sort -n | tail -n 1) && \
    apt-get install -y libpython3.$PYTHON_MINOR-dev

USER nektar:nektar
WORKDIR /home/nektar
COPY docker/packaging/quiltrc .quiltrc
