diff --git a/hosts/midas/services/default.nix b/hosts/midas/services/default.nix index 638fa3fc..a76e137f 100644 --- a/hosts/midas/services/default.nix +++ b/hosts/midas/services/default.nix @@ -24,6 +24,7 @@ servers = { johnside.enable = true; skyblock.enable = true; + uberbeta.enable = true; velocity.enable = true; }; }; diff --git a/hosts/midas/services/nginx/nixfox/default.nix b/hosts/midas/services/nginx/nixfox/default.nix index f1c43edd..cec71cd6 100644 --- a/hosts/midas/services/nginx/nixfox/default.nix +++ b/hosts/midas/services/nginx/nixfox/default.nix @@ -1,7 +1,8 @@ -{ config, lib, ... }: +{ config, lib, pkgs, ... }: { - services.nginx.virtualHosts = { - "nixfox.ca" = { + services = { + # The main nginx domain + nginx.virtualHosts."nixfox.ca" = { enableACME = true; addSSL = true; @@ -12,6 +13,11 @@ error_page 404 /404.html; ''; + "~ \\.php$".extraConfig = '' + fastcgi_index index.php; + fastcgi_pass unix:${config.services.phpfpm.pools.nginx.socket}; + ''; + "/.well-known/matrix/client".extraConfig = '' default_type application/json; return 200 '{ @@ -26,5 +32,22 @@ ''; }; }; + + # Enable PHP for some fancy stuff + phpfpm.pools.nginx = { + user = "nobody"; + settings = { + "pm" = "dynamic"; + "pm.max_children" = 75; + "pm.start_servers" = 10; + "pm.min_spare_servers" = 5; + "pm.max_spare_servers" = 20; + "pm.max_requests" = 500; + "listen.owner" = config.services.nginx.user; + "listen.group" = config.services.nginx.group; + "listen.mode" = "0660"; + "catch_workers_output" = 1; + }; + }; }; } diff --git a/modules/system/secrets/nixfox-pgp-secret.asc b/modules/system/secrets/nixfox-pgp-secret.asc new file mode 100644 index 00000000..bf4107fd Binary files /dev/null and b/modules/system/secrets/nixfox-pgp-secret.asc differ diff --git a/modules/system/services/server/minecraft/servers/uberbeta/default.nix b/modules/system/services/server/minecraft/servers/uberbeta/default.nix index ef58b477..ef2a6334 100644 --- a/modules/system/services/server/minecraft/servers/uberbeta/default.nix +++ b/modules/system/services/server/minecraft/servers/uberbeta/default.nix @@ -1,17 +1,15 @@ { config, lib, pkgs, ... }: let - uberBukkitZip = pkgs.fetchzip { - url = "https://github.com/Moresteck/Project-Poseidon-Uberbukkit/releases/download/2.0.0/uberbukkit-2.0.0-java17.zip"; - sha256 = "m4hgcqXJ43SnBGn6qNBGeEcXFv5Q8f/VFYJmx3aJ9PE="; - stripRoot = false; + uberBukkit = pkgs.fetchurl { + url = "https://github.com/Moresteck/uberbukkit/releases/download/2.0.2-241217-1442-3a5552b/uberbukkit-2.0.2.jar"; + sha256 = "ZttLDpBgeR2SM90kdegwqem1TalBVTndzsxziusCzlA="; }; - uberBukkit = pkgs.vanillaServers.vanilla.overrideAttrs (oldAttrs: { - src = "${uberBukkitZip}/uberbukkit-2.0.0.jar"; - }); in { services = { minecraft-servers.servers.uberbeta = { - package = uberBukkit; + package = pkgs.vanillaServers.vanilla.overrideAttrs (oldAttrs: { + src = uberBukkit; + }); jvmOpts = "-Xmx512M"; serverProperties = config.services.minecraft-servers.common.serverProperties // { difficulty = 3; diff --git a/modules/system/services/server/minecraft/servers/velocity/default.nix b/modules/system/services/server/minecraft/servers/velocity/default.nix index 099eb183..d0cefebc 100644 --- a/modules/system/services/server/minecraft/servers/velocity/default.nix +++ b/modules/system/services/server/minecraft/servers/velocity/default.nix @@ -4,25 +4,17 @@ package = pkgs.velocityServers.velocity; jvmOpts = "-Xmx512M"; symlinks = { - "plugins/Geyser.jar" = builtins.fetchurl { - url = "https://download.geysermc.org/v2/projects/geyser/versions/2.6.1/builds/768/downloads/velocity"; - sha256 = "1s8d2qzbnrkbng608a7yq915fp28w6zzvdp8wncf24fm8x0lqxhy"; - }; - "plugins/Floodgate.jar" = builtins.fetchurl { - url = "https://download.geysermc.org/v2/projects/floodgate/versions/2.2.4/builds/116/downloads/velocity"; - sha256 = "0sinl47pdyc3zyi3jprjqh8ka754rz2r6gmyd27nq39qf31mbbvy"; - }; "plugins/SkinsRestorer.jar" = builtins.fetchurl { - url = "https://github.com/SkinsRestorer/SkinsRestorer/releases/download/15.4.2/SkinsRestorer.jar"; + url = "https://github.com/SkinsRestorer/SkinsRestorer/releases/download/15.7.6/SkinsRestorer.jar"; sha256 = "14nl9mi958bfqwqz9182cxj7m6l15kalq3wjmjqzy50s52si35wf"; }; "plugins/ViaVersion.jar" = builtins.fetchurl { - url = "https://github.com/ViaVersion/ViaVersion/releases/download/5.0.3/ViaVersion-5.0.3.jar"; - sha256 = "02gf91ysialgvbl0w8awa0dsi1yb33ac7clmz0wika1xigk9z10r"; + url = "https://github.com/ViaVersion/ViaVersion/releases/download/5.4.1/ViaVersion-5.4.1.jar"; + sha256 = "1bbh5g872nds9vs61s9zzr4lfx5rivqvyyaf5riqkkbxxq4fdshv"; }; "plugins/ViaBackwards.jar" = builtins.fetchurl { - url = "https://github.com/ViaVersion/ViaBackwards/releases/download/5.0.3/ViaBackwards-5.0.3.jar"; - sha256 = "1wqk68pjrzl1zhajb9lxa1s6wzj85rb0c2riycv9yysr5bcxssqi"; + url = "https://github.com/ViaVersion/ViaBackwards/releases/download/5.4.1/ViaBackwards-5.4.1.jar"; + sha256 = "0dammfw0m806hf555wp1h4m2c36kfpb7q2f00lan5csxiswl6r13"; }; "plugins/Voicechat.jar" = builtins.fetchurl { url = "https://cdn.modrinth.com/data/9eGKb6K1/versions/svvcJhgC/voicechat-velocity-2.5.20.jar";