commit de19fc9b93212aa49b13a0171d5a3753e29e3b08
parent 95ab00c909a7ab49b1d670cf6d373952f587e95e
Author: MTRNord <MTRNord@users.noreply.github.com>
Date: Sat, 18 Apr 2026 14:13:22 +0200
more mediawiki stuff
Signed-off-by: MTRNord <MTRNord@users.noreply.github.com>
Diffstat:
4 files changed, 112 insertions(+), 0 deletions(-)
diff --git a/apps/talos_cluster/mediawiki/Dockerfile b/apps/talos_cluster/mediawiki/Dockerfile
@@ -17,6 +17,7 @@ RUN apt-get update && apt-get install -y --no-install-recommends git \
GuidedTour \
LoginNotify \
NearbyPages \
+ MobileFrontend \
ReadingLists \
RelatedArticles \
RevisionSlider \
@@ -32,6 +33,10 @@ RUN apt-get update && apt-get install -y --no-install-recommends git \
https://gerrit.wikimedia.org/r/mediawiki/extensions/cldr \
/var/www/html/extensions/CLDR \
&& rm -rf /var/www/html/extensions/CLDR/.git \
+ && git clone --depth 1 --branch REL1_45 \
+ https://gerrit.wikimedia.org/r/mediawiki/skins/MinervaNeue \
+ /var/www/html/skins/MinervaNeue \
+ && rm -rf /var/www/html/skins/MinervaNeue/.git \
&& git clone --depth 1 \
https://gerrit.wikimedia.org/r/mediawiki/extensions/GPGMail \
/var/www/html/extensions/GPGMail \
diff --git a/apps/talos_cluster/mediawiki/configmap.yaml b/apps/talos_cluster/mediawiki/configmap.yaml
@@ -113,6 +113,7 @@ data:
wfLoadExtension('CheckUser');
# === Editing extensions ===
+ wfLoadExtension('TemplateData');
wfLoadExtension('VisualEditor');
# VisualEditor needs the internal Parsoid endpoint to avoid SSL loopback in K8s
$wgVirtualRestConfig['modules']['parsoid'] = [
diff --git a/apps/talos_cluster/mediawiki/wiki-templates/Template_License.wikitext b/apps/talos_cluster/mediawiki/wiki-templates/Template_License.wikitext
@@ -0,0 +1,73 @@
+<templatestyles src="Template:License/styles.css" />{{#switch: {{{1|}}}
+| cc-by =
+<table class="mw-license-box mw-license-cc-by"><tr>
+<td class="mw-license-badge">CC<br/>BY</td>
+<td class="mw-license-desc">[https://creativecommons.org/licenses/by/4.0/ CC BY 4.0] — Free to share and adapt with attribution.</td>
+</tr></table>
+| cc-by-sa =
+<table class="mw-license-box mw-license-cc-by-sa"><tr>
+<td class="mw-license-badge">CC<br/>BY-SA</td>
+<td class="mw-license-desc">[https://creativecommons.org/licenses/by-sa/4.0/ CC BY-SA 4.0] — Share and adapt with attribution; derivatives under same license.</td>
+</tr></table>
+| cc-by-nc =
+<table class="mw-license-box mw-license-cc-by-nc"><tr>
+<td class="mw-license-badge">CC<br/>BY-NC</td>
+<td class="mw-license-desc">[https://creativecommons.org/licenses/by-nc/4.0/ CC BY-NC 4.0] — Non-commercial use only, with attribution.</td>
+</tr></table>
+| cc-by-nc-sa =
+<table class="mw-license-box mw-license-cc-by-nc-sa"><tr>
+<td class="mw-license-badge">CC<br/>BY-NC-SA</td>
+<td class="mw-license-desc">[https://creativecommons.org/licenses/by-nc-sa/4.0/ CC BY-NC-SA 4.0] — Non-commercial, attribution, same license.</td>
+</tr></table>
+| cc-by-nd =
+<table class="mw-license-box mw-license-cc-by-nd"><tr>
+<td class="mw-license-badge">CC<br/>BY-ND</td>
+<td class="mw-license-desc">[https://creativecommons.org/licenses/by-nd/4.0/ CC BY-ND 4.0] — Redistribution with attribution; no derivatives.</td>
+</tr></table>
+| cc-by-nc-nd =
+<table class="mw-license-box mw-license-cc-by-nc-nd"><tr>
+<td class="mw-license-badge">CC<br/>BY-NC-ND</td>
+<td class="mw-license-desc">[https://creativecommons.org/licenses/by-nc-nd/4.0/ CC BY-NC-ND 4.0] — Non-commercial, attribution, no derivatives.</td>
+</tr></table>
+| cc0 =
+<table class="mw-license-box mw-license-cc0"><tr>
+<td class="mw-license-badge">CC0</td>
+<td class="mw-license-desc">[https://creativecommons.org/publicdomain/zero/1.0/ CC0 1.0] — No rights reserved. Public domain dedication.</td>
+</tr></table>
+| arr =
+<table class="mw-license-box mw-license-arr"><tr>
+<td class="mw-license-badge">©</td>
+<td class="mw-license-desc">All rights reserved. No reuse without permission.</td>
+</tr></table>
+| #default =
+<span style="color:red">Unknown license: <code>{{{1}}}</code></span>
+}}<noinclude>
+== Usage ==
+<pre>{{License|cc-by}}</pre>
+
+<templatedata>
+{
+ "description": "Displays a license notice box for the page, styled like Babel boxes.",
+ "params": {
+ "1": {
+ "label": "License",
+ "description": "The license identifier for this page.",
+ "type": "string",
+ "required": true,
+ "suggestedvalues": [
+ "cc-by",
+ "cc-by-sa",
+ "cc-by-nc",
+ "cc-by-nc-sa",
+ "cc-by-nd",
+ "cc-by-nc-nd",
+ "cc0",
+ "arr"
+ ],
+ "example": "cc-by-sa"
+ }
+ },
+ "format": "inline"
+}
+</templatedata>
+</noinclude>
diff --git a/apps/talos_cluster/mediawiki/wiki-templates/Template_License_styles.css b/apps/talos_cluster/mediawiki/wiki-templates/Template_License_styles.css
@@ -0,0 +1,33 @@
+.mw-license-box {
+ display: inline-table;
+ border: 1px solid #aaa;
+ font-size: 88%;
+ margin: 0.2em 0;
+ clear: right;
+ float: right;
+}
+.mw-license-box td {
+ vertical-align: middle;
+ padding: 3px 6px;
+}
+.mw-license-badge {
+ font-weight: bold;
+ font-size: 115%;
+ text-align: center;
+ min-width: 52px;
+ border-right: 1px solid #aaa;
+ white-space: nowrap;
+}
+.mw-license-desc {
+ max-width: 220px;
+}
+.mw-license-desc a { font-weight: bold; }
+
+.mw-license-cc-by .mw-license-badge { background: #b3e0b3; }
+.mw-license-cc-by-sa .mw-license-badge { background: #99d699; }
+.mw-license-cc-by-nc .mw-license-badge { background: #fde68a; }
+.mw-license-cc-by-nc-sa .mw-license-badge { background: #fcd34d; }
+.mw-license-cc-by-nd .mw-license-badge { background: #a5d8f3; }
+.mw-license-cc-by-nc-nd .mw-license-badge { background: #f3a5d8; }
+.mw-license-cc0 .mw-license-badge { background: #c4b5fd; }
+.mw-license-arr .mw-license-badge { background: #e8e8e8; }