diff --git a/flake.nix b/flake.nix index 2f3ddca..0d55cc4 100644 --- a/flake.nix +++ b/flake.nix @@ -59,13 +59,18 @@ ./modules/nix/linux.nix ./modules/shell.nix + ./modules/services/caddy.nix ./modules/services/ssh.nix ./modules/network/vpn/tailscale.nix + ./modules/services/uptime-kuma.nix + + ./modules/services/media/arr.nix + ./modules/services/media/jellyfin.nix nix-minecraft.nixosModules.minecraft-servers { nixpkgs.overlays = [ inputs.nix-minecraft.overlay ]; } ./modules/games/server/minecraft/default.nix - ./modules/games/server/minecraft/forge-1.19.2.nix + ./modules/games/server/minecraft/forge-impure.nix ./modules/users/nico.nix diff --git a/modules/games/server/minecraft/forge-1.19.2.nix b/modules/games/server/minecraft/forge-1.19.2.nix deleted file mode 100644 index 0c7f0d9..0000000 --- a/modules/games/server/minecraft/forge-1.19.2.nix +++ /dev/null @@ -1,32 +0,0 @@ -{ config, pkgs, ... }: - -{ - virtualisation.oci-containers.containers.forge-1-19-2 = { - user = "minecraft:minecraft"; - image = "docker.io/itzg/minecraft-server"; - volumes = [ "/var/lib/minecraft/forge-1-19-2/:/data" ]; - ports = [ "30004:30004" ]; - environment = { - TYPE = "FORGE"; - VERSION = "1.19.2"; - EULA = "TRUE"; - MEMORY = "4G"; - SERVER_PORT = "30004"; - - - UID = "992"; - GID = "991"; - }; - }; - - services.minecraft-servers.servers.velocity.symlinks."velocity.toml".value = { - servers = { - forge-1-19-2 = "127.0.0.1:30004"; - - # In what order we should try servers when a player logs in or is kicked from a server. - try = [ - "forge-1-19-2" - ]; - }; - }; -} diff --git a/modules/games/server/minecraft/forge-impure.nix b/modules/games/server/minecraft/forge-impure.nix new file mode 100644 index 0000000..51124a5 --- /dev/null +++ b/modules/games/server/minecraft/forge-impure.nix @@ -0,0 +1,32 @@ +{ config, pkgs, ... }: + +let + forge-impure = pkgs.vanillaServers.vanilla.overrideAttrs (oldAttrs: { + src = ./forge.jar; + }); +in +{ + services.minecraft-servers.servers.forge-impure = { + enable = true; + package = forge-impure; + autoStart = true; + jvmOpts = "-Xms4096M -Xmx4096M"; + + serverProperties = { + server-port = 30004; + difficulty = 3; + max-players = 30; + }; + }; + + services.minecraft-servers.servers.velocity.symlinks."velocity.toml".value = { + servers = { + fabric-modless = "127.0.0.1:30004"; + + # In what order we should try servers when a player logs in or is kicked from a server. + try = [ + "forge-impure" + ]; + }; + }; +}