From d61c03fe460f6349e5173e007fb2b678c33bed36 Mon Sep 17 00:00:00 2001 From: Edwin Mackenzie-Owen Date: Mon, 12 Aug 2024 18:41:24 +0200 Subject: [PATCH 1/3] minetest: 5.8.0 -> 5.9.0 * remove irrlichtmt input. Minetest's irrlicht fork has been moved into the minetest repo and is now statically linked. * remove mesa from buildInputs for darwin. Otherwise startup fails with "OpenGL driver version is not 1.2 or better." and "Shaders are enabled but GLSL is not supported by the driver.". Presumably that happens because minetest tries to use an incomplete OpenGL driver from mesa instead of the drivers provided by macOS. * remove withTouchSupport arg, as the upstream CMake option has been removed. Touch support should now always be enabled. * make minetest-touch an alias for minetestclient * remove unused args --- pkgs/games/minetest/default.nix | 17 +++++------------ pkgs/top-level/aliases.nix | 1 + pkgs/top-level/all-packages.nix | 3 +-- 3 files changed, 7 insertions(+), 14 deletions(-) diff --git a/pkgs/games/minetest/default.nix b/pkgs/games/minetest/default.nix index 302e989a6570..bd004bc0e8c2 100644 --- a/pkgs/games/minetest/default.nix +++ b/pkgs/games/minetest/default.nix @@ -3,7 +3,6 @@ , fetchFromGitHub , gitUpdater , cmake -, irrlichtmt , coreutils , libpng , bzip2 @@ -15,7 +14,6 @@ , openal , libvorbis , sqlite -, lua5_1 , luajit , freetype , gettext @@ -29,37 +27,32 @@ , postgresql , hiredis , libiconv -, zlib -, libXrandr -, libX11 , ninja , prometheus-cpp -, mesa , OpenGL , OpenAL ? openal , Carbon , Cocoa -, withTouchSupport ? false +, Kernel , buildClient ? true , buildServer ? true }: stdenv.mkDerivation (finalAttrs: { pname = "minetest"; - version = "5.8.0"; + version = "5.9.0"; src = fetchFromGitHub { owner = "minetest"; repo = "minetest"; rev = finalAttrs.version; - hash = "sha256-Oct8nQORSH8PjYs+gHU9QrKObMfapjAlGvycj+AJnOs="; + hash = "sha256-cxbiuoD1J3WFoveUgxeR/XXdE7MMR0UEDFleDiaxnsA="; }; cmakeFlags = [ (lib.cmakeBool "BUILD_CLIENT" buildClient) (lib.cmakeBool "BUILD_SERVER" buildServer) (lib.cmakeBool "ENABLE_PROMETHEUS" buildServer) - (lib.cmakeBool "ENABLE_TOUCH" withTouchSupport) # Ensure we use system libraries (lib.cmakeBool "ENABLE_SYSTEM_GMP" true) (lib.cmakeBool "ENABLE_SYSTEM_JSONCPP" true) @@ -85,7 +78,6 @@ stdenv.mkDerivation (finalAttrs: { ]; buildInputs = [ - irrlichtmt jsoncpp gettext freetype @@ -97,12 +89,12 @@ stdenv.mkDerivation (finalAttrs: { libspatialindex ] ++ lib.optional (lib.meta.availableOn stdenv.hostPlatform luajit) luajit ++ lib.optionals stdenv.hostPlatform.isDarwin [ - mesa # for libiconv OpenGL OpenAL Carbon Cocoa + Kernel ] ++ lib.optionals buildClient [ libpng libjpeg @@ -112,6 +104,7 @@ stdenv.mkDerivation (finalAttrs: { libvorbis ] ++ lib.optionals (buildClient && !stdenv.hostPlatform.isDarwin) [ xorg.libX11 + xorg.libXi ] ++ lib.optionals buildServer [ leveldb postgresql diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index 6273a3571af3..83d087c0ff59 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -947,6 +947,7 @@ mapAliases ({ miopen-hip = throw "'miopen-hip' has been replaced with 'rocmPackages.miopen-hip'"; # Added 2023-10-08 miopen-opencl = throw "'miopen-opencl' has been replaced with 'rocmPackages.miopen-opencl'"; # Added 2023-10-08 mime-types = mailcap; # Added 2022-01-21 + minetest-touch = minetestclient; # Added 2024-08-12 minetestclient_5 = minetestclient; # Added 2023-12-11 minetestserver_5 = minetestserver; # Added 2023-12-11 minizip2 = pkgs.minizip-ng; # Added 2022-12-28 diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 2a8e717d4047..e89a26f00ac7 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -36046,10 +36046,9 @@ with pkgs; moon-buggy = callPackage ../games/moon-buggy { }; minetest = callPackage ../games/minetest { - inherit (darwin.apple_sdk.frameworks) OpenGL OpenAL Carbon Cocoa; + inherit (darwin.apple_sdk.frameworks) OpenGL OpenAL Carbon Cocoa Kernel; }; minetestclient = minetest.override { buildServer = false; }; - minetest-touch = minetest.override { buildServer = false; withTouchSupport = true; }; minetestserver = minetest.override { buildClient = false; }; mnemosyne = callPackage ../games/mnemosyne { From e9761ca2ae6c793ad3578444b5644bbdbcd0d607 Mon Sep 17 00:00:00 2001 From: Edwin Mackenzie-Owen Date: Mon, 12 Aug 2024 20:35:44 +0200 Subject: [PATCH 2/3] minetest: add arg for using irrlicht's SDL backend Irrlicht's SDL device (=backend) was enabled by default for the 5.9.0 pre-release, but was disabled again at the last minute before the release due to issues reported by some users. NOTE: the irrlicht device is a compile time option and cannot be switched at runtime. --- pkgs/games/minetest/default.nix | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/pkgs/games/minetest/default.nix b/pkgs/games/minetest/default.nix index bd004bc0e8c2..d17be89b4721 100644 --- a/pkgs/games/minetest/default.nix +++ b/pkgs/games/minetest/default.nix @@ -36,6 +36,8 @@ , Kernel , buildClient ? true , buildServer ? true +, SDL2 +, useSDL2 ? false }: stdenv.mkDerivation (finalAttrs: { @@ -53,6 +55,7 @@ stdenv.mkDerivation (finalAttrs: { (lib.cmakeBool "BUILD_CLIENT" buildClient) (lib.cmakeBool "BUILD_SERVER" buildServer) (lib.cmakeBool "ENABLE_PROMETHEUS" buildServer) + (lib.cmakeBool "USE_SDL2" useSDL2) # Ensure we use system libraries (lib.cmakeBool "ENABLE_SYSTEM_GMP" true) (lib.cmakeBool "ENABLE_SYSTEM_JSONCPP" true) @@ -102,7 +105,9 @@ stdenv.mkDerivation (finalAttrs: { openal libogg libvorbis - ] ++ lib.optionals (buildClient && !stdenv.hostPlatform.isDarwin) [ + ] ++ lib.optionals (buildClient && useSDL2) [ + SDL2 + ] ++ lib.optionals (buildClient && !stdenv.hostPlatform.isDarwin && !useSDL2) [ xorg.libX11 xorg.libXi ] ++ lib.optionals buildServer [ From 873934134d0a0b237aa39a3ed31521d7a2df8326 Mon Sep 17 00:00:00 2001 From: Edwin Mackenzie-Owen Date: Mon, 12 Aug 2024 20:47:57 +0200 Subject: [PATCH 3/3] irrlichtmt: remove at 1.9.0mt13 Minetest's irrlicht fork has been moved into the minetest repo. --- .../libraries/irrlichtmt/default.nix | 52 ------------------- pkgs/top-level/aliases.nix | 1 + pkgs/top-level/all-packages.nix | 4 -- 3 files changed, 1 insertion(+), 56 deletions(-) delete mode 100644 pkgs/development/libraries/irrlichtmt/default.nix diff --git a/pkgs/development/libraries/irrlichtmt/default.nix b/pkgs/development/libraries/irrlichtmt/default.nix deleted file mode 100644 index 538858904291..000000000000 --- a/pkgs/development/libraries/irrlichtmt/default.nix +++ /dev/null @@ -1,52 +0,0 @@ -{ lib -, stdenv -, fetchFromGitHub -, cmake -, zlib -, libpng -, libjpeg -, libGL -, libX11 -, libXi -, libXext -, Cocoa -, Kernel -}: -stdenv.mkDerivation (finalAttrs: { - pname = "irrlichtmt"; - version = "1.9.0mt13"; - - src = fetchFromGitHub { - owner = "minetest"; - repo = "irrlicht"; - rev = finalAttrs.version; - hash = "sha256-BlQd7zbpvQnxqLv3IaHWrXzJ1pJFbQQ3DNWDAj14/YY="; - }; - - nativeBuildInputs = [ - cmake - ]; - - buildInputs = [ - zlib - libpng - libjpeg - libGL - ] ++ (if stdenv.hostPlatform.isDarwin then [ - Cocoa - Kernel - ] else [ - libX11 - libXi - libXext - ]); - - outputs = [ "out" "dev" ]; - - meta = { - homepage = "https://github.com/minetest/irrlicht"; - license = lib.licenses.zlib; - maintainers = with lib.maintainers; [ DeeUnderscore ]; - description = "Minetest project's fork of Irrlicht, a realtime 3D engine written in C++"; - }; -}) diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index 83d087c0ff59..9c57df4f68d6 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -680,6 +680,7 @@ mapAliases ({ ipfs-migrator-unwrapped = kubo-migrator-unwrapped; # Added 2022-09-27 ipfs-migrator = kubo-migrator; # Added 2022-09-27 iproute = iproute2; # moved from top-level 2021-03-14 + irrlichtmt = throw "irrlichtmt has been removed because it was moved into the Minetest repo"; # Added 2024-08-12 iso-flags-png-320x420 = lib.warn "iso-flags-png-320x420 has been renamed to iso-flags-png-320x240" iso-flags-png-320x240; # Added 2024-07-17 ### J ### diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index e89a26f00ac7..5abbc65131f9 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -20960,10 +20960,6 @@ with pkgs; inherit (darwin.apple_sdk.frameworks) Cocoa OpenGL IOKit; }; - irrlichtmt = callPackage ../development/libraries/irrlichtmt { - inherit (darwin.apple_sdk.frameworks) Cocoa Kernel; - }; - isocodes = callPackage ../development/libraries/iso-codes { }; iso-flags = callPackage ../data/icons/iso-flags { };