diff --git a/pkgs/games/minecraft-servers/derivation.nix b/pkgs/by-name/mi/minecraft-server/derivation.nix similarity index 100% rename from pkgs/games/minecraft-servers/derivation.nix rename to pkgs/by-name/mi/minecraft-server/derivation.nix diff --git a/pkgs/by-name/mi/minecraft-server/package.nix b/pkgs/by-name/mi/minecraft-server/package.nix new file mode 100644 index 000000000000..608bddaff15d --- /dev/null +++ b/pkgs/by-name/mi/minecraft-server/package.nix @@ -0,0 +1 @@ +{ callPackage }: (callPackage ./versions.nix { }).vanilla diff --git a/pkgs/games/minecraft-servers/update.py b/pkgs/by-name/mi/minecraft-server/update.py similarity index 100% rename from pkgs/games/minecraft-servers/update.py rename to pkgs/by-name/mi/minecraft-server/update.py diff --git a/pkgs/games/minecraft-servers/versions.json b/pkgs/by-name/mi/minecraft-server/versions.json similarity index 100% rename from pkgs/games/minecraft-servers/versions.json rename to pkgs/by-name/mi/minecraft-server/versions.json diff --git a/pkgs/by-name/mi/minecraft-server/versions.nix b/pkgs/by-name/mi/minecraft-server/versions.nix new file mode 100644 index 000000000000..c8f4aa2ad336 --- /dev/null +++ b/pkgs/by-name/mi/minecraft-server/versions.nix @@ -0,0 +1,50 @@ +{ + lib, + javaPackages, + stdenv, + fetchurl, + nixosTests, + makeWrapper, + udev, +}: +let + versions = lib.importJSON ./versions.json; + + latestVersion = lib.last (builtins.sort lib.versionOlder (builtins.attrNames versions)); + escapeVersion = builtins.replaceStrings [ "." ] [ "-" ]; + + getJavaVersion = v: (builtins.getAttr "openjdk${toString v}" javaPackages.compiler).headless; + + mkVersion = ( + version: value: { + name = "vanilla-${escapeVersion version}"; + value = import ./derivation.nix { + inherit + lib + stdenv + fetchurl + nixosTests + makeWrapper + udev + ; + inherit (value) version url sha1; + jre_headless = getJavaVersion ( + if value.javaVersion == null then + 8 + else if value.javaVersion == 16 then + 17 + else + value.javaVersion + ); # versions <= 1.6 will default to 8 + }; + } + ); + + packages = lib.mapAttrs' mkVersion versions; +in +lib.recurseIntoAttrs ( + packages + // { + vanilla = (mkVersion latestVersion versions.${latestVersion}).value; + } +) diff --git a/pkgs/games/minecraft-servers/default.nix b/pkgs/games/minecraft-servers/default.nix deleted file mode 100644 index 0b5a9a28834b..000000000000 --- a/pkgs/games/minecraft-servers/default.nix +++ /dev/null @@ -1,34 +0,0 @@ -{ - callPackage, - lib, - javaPackages, -}: -let - versions = lib.importJSON ./versions.json; - - latestVersion = lib.last (builtins.sort lib.versionOlder (builtins.attrNames versions)); - escapeVersion = builtins.replaceStrings [ "." ] [ "-" ]; - - getJavaVersion = v: (builtins.getAttr "openjdk${toString v}" javaPackages.compiler).headless; - - packages = lib.mapAttrs' (version: value: { - name = "vanilla-${escapeVersion version}"; - value = callPackage ./derivation.nix { - inherit (value) version url sha1; - jre_headless = getJavaVersion ( - if value.javaVersion == null then - 8 - else if value.javaVersion == 16 then - 17 - else - value.javaVersion - ); # versions <= 1.6 will default to 8 - }; - }) versions; -in -lib.recurseIntoAttrs ( - packages - // { - vanilla = builtins.getAttr "vanilla-${escapeVersion latestVersion}" packages; - } -) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 17e4c27dcc3a..a041db627305 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -11137,8 +11137,7 @@ with pkgs; enableServer = true; }; - minecraftServers = import ../games/minecraft-servers { inherit callPackage lib javaPackages; }; - minecraft-server = minecraftServers.vanilla; # backwards compatibility + minecraftServers = callPackage ../by-name/mi/minecraft-server/versions.nix { }; luanti-client = luanti.override { buildServer = false; }; luanti-server = luanti.override { buildClient = false; };