FROM alpine AS builder

WORKDIR /usr/src

RUN apk update && apk add git

ADD https://releases.wikimedia.org/mediawiki/1.42/mediawiki-1.42.3.tar.gz .
RUN tar -xzf mediawiki-1.42.3.tar.gz

RUN git clone -b REL1_42 https://gerrit.wikimedia.org/r/mediawiki/extensions/MobileFrontend; \
    rm -rf MobileFrontend/.git

RUN git clone -b REL1_42 https://gerrit.wikimedia.org/r/mediawiki/extensions/PluggableAuth; \
    rm -rf PluggableAuth/.git

RUN git clone -b REL1_42 https://gerrit.wikimedia.org/r/mediawiki/extensions/OpenIDConnect; \
    rm -rf OpenIDConnect/.git

RUN git clone -b REL1_42 https://gerrit.wikimedia.org/r/mediawiki/extensions/Widgets; \
    rm -rf OpenIDConnect/.git

FROM docker.io/library/unit:php8.2

WORKDIR /var/www/html

RUN apt-get update && apt-get install -y \
    libicu-dev librsvg2-bin \
    && docker-php-ext-configure intl \
    && docker-php-ext-install -j$(nproc) intl \
    && docker-php-ext-install -j$(nproc) mysqli \
    && apt-get install -y imagemagick \
    && rm -rf /var/lib/apt/lists/*

COPY --from=builder --chown=unit:unit /usr/src/mediawiki-1.42.3 w/
COPY --from=builder --chown=unit:unit /usr/src/MobileFrontend w/extensions/MobileFrontend
COPY --from=builder --chown=unit:unit /usr/src/PluggableAuth w/extensions/PluggableAuth
COPY --from=builder --chown=unit:unit /usr/src/OpenIDConnect w/extensions/OpenIDConnect
COPY --from=builder --chown=unit:unit /usr/src/Widgets w/extensions/Widgets

COPY config.json /docker-entrypoint.d/config.json