From 102dbdf64bee8c17a83111bb1ce655d6e4cca29d Mon Sep 17 00:00:00 2001 From: ProxyVT Date: Wed, 6 Aug 2025 10:43:56 +0300 Subject: [PATCH 1/4] qmplay2: remove substituteInPlace Fixes build error: substituteStream() in derivation qmplay2-qt6-25.06.27: ERROR: pattern getSubmitInfo\(\) doesn't match anything in file 'src/qmplay2/vulkan/VulkanWindow.cpp' --- pkgs/by-name/qm/qmplay2/package.nix | 2 -- 1 file changed, 2 deletions(-) diff --git a/pkgs/by-name/qm/qmplay2/package.nix b/pkgs/by-name/qm/qmplay2/package.nix index 3f88b90470af..d5e1985bc0d0 100644 --- a/pkgs/by-name/qm/qmplay2/package.nix +++ b/pkgs/by-name/qm/qmplay2/package.nix @@ -43,8 +43,6 @@ stdenv.mkDerivation (finalAttrs: { cp -va ${sources.qmvk.src}/* qmvk/ chmod --recursive 744 qmvk popd - substituteInPlace src/qmplay2/vulkan/VulkanWindow.cpp \ - --replace-fail "getSubmitInfo()" "getSubmitInfo(0)" ''; nativeBuildInputs = [ From be02b28bbd354c117a3fec81ec31dc332b43e582 Mon Sep 17 00:00:00 2001 From: ProxyVT Date: Wed, 6 Aug 2025 12:13:57 +0300 Subject: [PATCH 2/4] qmplay2: remove fetchSubmodules We are already fetching submodules directly (https://github.com/NixOS/nixpkgs/commit/365e7e5d07f3b2962ab87ed28fcf74204577a712); there is no need to use fetchSubmodules. --- pkgs/by-name/qm/qmplay2/sources.nix | 1 - 1 file changed, 1 deletion(-) diff --git a/pkgs/by-name/qm/qmplay2/sources.nix b/pkgs/by-name/qm/qmplay2/sources.nix index 2ddfe376a38b..0e1ce2b25c9e 100644 --- a/pkgs/by-name/qm/qmplay2/sources.nix +++ b/pkgs/by-name/qm/qmplay2/sources.nix @@ -12,7 +12,6 @@ repo = "QMPlay2"; tag = self.version; hash = "sha256-Of/zEQ6o2J/wXfAoY10IPtCaMaSk8ux8L6MrimeMWVA="; - fetchSubmodules = true; }; }; in From 839adf42dfea5e944f28868d867307dfd1079f40 Mon Sep 17 00:00:00 2001 From: ProxyVT Date: Sat, 23 Aug 2025 21:18:38 +0300 Subject: [PATCH 3/4] qmplay2: pin vulkan-headers dependency to specific version This prevents compilation issues with QmVk library, as it is hardcoded for a specific version of Vulkan-Headers (the package repo uses 1.3.277). I chose version 1.3.300 as it is the latest version that doesn't cause build failures due to changes in the Vulkan SDK that are incompatible with QmVk. Additionally, version control will help with debugging potential problems that may arise from future updates. --- pkgs/by-name/qm/qmplay2/package.nix | 5 ++++- pkgs/by-name/qm/qmplay2/sources.nix | 16 ++++++++++++++++ 2 files changed, 20 insertions(+), 1 deletion(-) diff --git a/pkgs/by-name/qm/qmplay2/package.nix b/pkgs/by-name/qm/qmplay2/package.nix index d5e1985bc0d0..5ce404e93cbc 100644 --- a/pkgs/by-name/qm/qmplay2/package.nix +++ b/pkgs/by-name/qm/qmplay2/package.nix @@ -29,6 +29,9 @@ let sources = callPackage ./sources.nix { }; + vulkan-headers-qmplay2 = vulkan-headers.overrideAttrs (oldAttrs: { + inherit (sources.vulkan-headers-qmplay2) version src; + }); in assert lib.elem qtVersion [ "5" @@ -68,7 +71,7 @@ stdenv.mkDerivation (finalAttrs: { libva libxcb taglib - vulkan-headers + vulkan-headers-qmplay2 vulkan-tools ] ++ lib.optionals (qtVersion == "6") [ diff --git a/pkgs/by-name/qm/qmplay2/sources.nix b/pkgs/by-name/qm/qmplay2/sources.nix index 0e1ce2b25c9e..636563586a9d 100644 --- a/pkgs/by-name/qm/qmplay2/sources.nix +++ b/pkgs/by-name/qm/qmplay2/sources.nix @@ -17,6 +17,22 @@ in self; + vulkan-headers-qmplay2 = + let + self = { + pname = "vulkan-headers"; + version = "1.3.300"; + + src = fetchFromGitHub { + owner = "KhronosGroup"; + repo = "Vulkan-Headers"; + tag = "v${self.version}"; + hash = "sha256-6J+6yvbEQXLY+Wkf1pWKtUAZGbe5Tc01uVh3Wqmk2+8="; + }; + }; + in + self; + qmvk = { pname = "qmvk"; version = "0-unstable-2025-06-05"; From f3b7f6ac2085fba26f9bdf5a594808cb2750432b Mon Sep 17 00:00:00 2001 From: ProxyVT Date: Wed, 6 Aug 2025 10:19:36 +0300 Subject: [PATCH 4/4] qmplay2: 25.01.19 -> 25.06.27 Fixes #380869 --- pkgs/by-name/qm/qmplay2/sources.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/qm/qmplay2/sources.nix b/pkgs/by-name/qm/qmplay2/sources.nix index 636563586a9d..58ab4a6cb99d 100644 --- a/pkgs/by-name/qm/qmplay2/sources.nix +++ b/pkgs/by-name/qm/qmplay2/sources.nix @@ -5,13 +5,13 @@ let self = { pname = "qmplay2"; - version = "25.01.19"; + version = "25.06.27"; src = fetchFromGitHub { owner = "zaps166"; repo = "QMPlay2"; tag = self.version; - hash = "sha256-Of/zEQ6o2J/wXfAoY10IPtCaMaSk8ux8L6MrimeMWVA="; + hash = "sha256-+kDaRKwXOHnHje1RntC9y9xiTaMzs8SGMLVoJ+6IDNk="; }; }; in