haccfiles/hosts/hainich/services/lantifa.nix

46 lines
1.3 KiB
Nix

{ config, lib, pkgs, ... }:
{
containers.lantifa = {
autoStart = true;
privateNetwork = true;
hostAddress6 = "fd00::42:14";
localAddress6 = "fd00::42:15";
config = {config, pkgs, ... }: {
networking.firewall.allowedTCPPorts = [ 4422 ];
users.users.mediawiki.extraGroups = [ "keys" ];
services.mediawiki = {
enable = true;
name = "LANtifa";
database.createLocally = true;
passwordFile = "/var/lib/mediawiki/mediawiki-password";
extraConfig = ''require_once('/var/lib/mediawiki/plugins/WikiDB/WikiDB.php');
$wgExtraNamespaces = array( 100 => "Table", 101 => "Table_Talk",);
$wgWikiDBNamespaces = 100;
'';
extensions = {
TemplateData = pkgs.fetchzip {
url = "https://extdist.wmflabs.org/dist/extensions/TemplateData-REL1_31-0bf2ec0.tar.gz";
sha256 = ''1kygi069jqlrkpwxwf2m5467k02wmbj38vzp796rl827ajrzxfip'';
};
};
virtualHost = {
hostName = "wiki.lantifa.org";
listen = [ { port = 4422; } ];
adminAddr = "admin@hacc.space";
};
};
};
};
services.nginx.virtualHosts."wiki.lantifa.org" = {
locations."/".proxyPass = "http://[" + config.containers.lantifa.localAddress6 + "]:4422";
forceSSL = true;
enableACME = true;
};
}