diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..4ec9186 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,42 @@ +# Install standardized extensions into the official mediawiki container. +# Ensure my modified language-data, UniveralLanguageSelector, and jquery.uls +# code is installed, such that the shavian script is included. + +FROM mediawiki:1.42 + +# Extensions are placed in subdirectories under the /var/www/html/extensions +# directory in the container. This can be overridden if some other container +# is used as the base. +ARG EXT_BASE=/var/www/html/extensions +ARG COMPOSER=composer.local.json + + +#### +# Install composer +# ================ +# Note that we need to just get the composer script directly rather than use +# Debian packages. The base image is Docker's php-apache library image, which +# builds PHP from source rather than install from Packages. Hence many +# required packages are missing (and should stay missing.) +#### +RUN curl https://getcomposer.org/composer.phar -o /usr/bin/composer && \ + chmod a+x /usr/bin/composer + + +##### +# Mediawiki Language Extension Bundle +# =================================== +# - Babel +# - CLDR +# - CleanChanges +# - Translate +# - UniversalLanguageSelector +##### + +RUN composer require --no-update mediawiki/babel:2024.07 && \ + composer require --no-update mediawiki/cldr:2024.07 && \ + composer require --no-update mediawiki/translate:2024.07 && \ + cd extensions && \ + git clone --depth=1 --branch=REL1_42 https://github.com/wikimedia/mediawiki-extensions-CleanChanges.git CleanChanges && \ + git clone --depth=1 --branch=shavian https://git.nordgren.vip/bryce/mediawiki-extensions-UniversalLanguageSelector.git UniversalLanguageSelector +