diff --git a/flake.nix b/flake.nix index 0392399..2ac5d64 100644 --- a/flake.nix +++ b/flake.nix @@ -101,6 +101,8 @@ name = "patched-nixpkgs-unstable"; src = nixpkgs-unstable-raw; patches = [ + ./nixpkgs-patches/pr454957.patch + ./nixpkgs-patches/pr454958.patch ]; }; nixpkgs-patched = nixpkgs-raw.legacyPackages.x86_64-linux.applyPatches { diff --git a/nixpkgs-patches/pr454957.patch b/nixpkgs-patches/pr454957.patch new file mode 100644 index 0000000..349c4bf --- /dev/null +++ b/nixpkgs-patches/pr454957.patch @@ -0,0 +1,36 @@ +From 75c9e6694415682eea0f73a87a269502bc7a7048 Mon Sep 17 00:00:00 2001 +From: Eric Helgeson +Date: Thu, 23 Oct 2025 11:23:15 -0500 +Subject: [PATCH] rpcs3: Add upstream patch for Qt 6.10+ + +--- + pkgs/by-name/rp/rpcs3/package.nix | 9 +++++++++ + 1 file changed, 9 insertions(+) + +diff --git a/pkgs/by-name/rp/rpcs3/package.nix b/pkgs/by-name/rp/rpcs3/package.nix +index ed68bcb2ec19c..109f71454fe25 100644 +--- a/pkgs/by-name/rp/rpcs3/package.nix ++++ b/pkgs/by-name/rp/rpcs3/package.nix +@@ -1,6 +1,7 @@ + { + lib, + stdenv, ++ fetchpatch, + fetchFromGitHub, + nix-update-script, + cmake, +@@ -148,6 +149,14 @@ stdenv.mkDerivation (finalAttrs: { + qtwayland + ]; + ++ patches = [ ++ (fetchpatch { ++ name = "fix-build-qt-6.10.patch"; ++ url = "https://github.com/RPCS3/rpcs3/commit/038ee090b731bf63917371a3586c2f7d7cf4e585.patch"; ++ hash = "sha256-jTIxsheG9b9zp0JEeWQ73BunAXmEIg5tj4SrWBfdHy8="; ++ }) ++ ]; ++ + doInstallCheck = true; + + preFixup = '' diff --git a/nixpkgs-patches/pr454958.patch b/nixpkgs-patches/pr454958.patch new file mode 100644 index 0000000..9d7fb04 --- /dev/null +++ b/nixpkgs-patches/pr454958.patch @@ -0,0 +1,57 @@ +From dd207a94bea4679948e37183fb6ad89c40dd79f1 Mon Sep 17 00:00:00 2001 +From: Marcin Serwin +Date: Wed, 15 Oct 2025 15:18:48 +0000 +Subject: [PATCH] pcsx2: fix build with Qt 6.10 + +Signed-off-by: Marcin Serwin +--- + pkgs/by-name/pc/pcsx2/fix-qt-6.10.patch | 25 +++++++++++++++++++++++++ + pkgs/by-name/pc/pcsx2/package.nix | 3 +++ + 2 files changed, 28 insertions(+) + create mode 100644 pkgs/by-name/pc/pcsx2/fix-qt-6.10.patch + +diff --git a/pkgs/by-name/pc/pcsx2/fix-qt-6.10.patch b/pkgs/by-name/pc/pcsx2/fix-qt-6.10.patch +new file mode 100644 +index 0000000000000..06341689c4537 +--- /dev/null ++++ b/pkgs/by-name/pc/pcsx2/fix-qt-6.10.patch +@@ -0,0 +1,25 @@ ++diff --git a/cmake/SearchForStuff.cmake b/cmake/SearchForStuff.cmake ++index 504b7a3..100a024 100644 ++--- a/cmake/SearchForStuff.cmake +++++ b/cmake/SearchForStuff.cmake ++@@ -107,7 +107,7 @@ disable_compiler_warnings_for_target(cubeb) ++ disable_compiler_warnings_for_target(speex) ++ ++ # Find the Qt components that we need. ++-find_package(Qt6 6.7.3 COMPONENTS CoreTools Core GuiTools Gui WidgetsTools Widgets LinguistTools REQUIRED) +++find_package(Qt6 6.7.3 COMPONENTS CoreTools Core CorePrivate GuiTools Gui GuiPrivate WidgetsTools Widgets WidgetsPrivate LinguistTools REQUIRED) ++ ++ if(WIN32) ++ add_subdirectory(3rdparty/rainterface EXCLUDE_FROM_ALL) ++diff --git a/pcsx2-qt/CMakeLists.txt b/pcsx2-qt/CMakeLists.txt ++index a62df95..4883c64 100644 ++--- a/pcsx2-qt/CMakeLists.txt +++++ b/pcsx2-qt/CMakeLists.txt ++@@ -266,6 +266,7 @@ target_link_libraries(pcsx2-qt PRIVATE ++ Qt6::Core ++ Qt6::Gui ++ Qt6::Widgets +++ Qt6::GuiPrivate ++ KDAB::kddockwidgets ++ ) ++ +diff --git a/pkgs/by-name/pc/pcsx2/package.nix b/pkgs/by-name/pc/pcsx2/package.nix +index 16e9aeabf1f69..daddd2f377eb1 100644 +--- a/pkgs/by-name/pc/pcsx2/package.nix ++++ b/pkgs/by-name/pc/pcsx2/package.nix +@@ -63,6 +63,9 @@ llvmPackages.stdenv.mkDerivation (finalAttrs: { + ./0000-define-rev.patch + + ./remove-cubeb-vendor.patch ++ ++ # Based on https://github.com/PCSX2/pcsx2/commit/8dffc857079e942ca77b091486c20c3c6530e4ed which doesn't apply cleanly ++ ./fix-qt-6.10.patch + ]; + + cmakeFlags = [ diff --git a/roles/gaming/programs/azahar.nix b/roles/gaming/programs/azahar.nix index 2b88164..a74b36d 100644 --- a/roles/gaming/programs/azahar.nix +++ b/roles/gaming/programs/azahar.nix @@ -1,17 +1,19 @@ {pkgs, ...}: { - # nixpkgs.overlays = [ - # ( - # final: prev: { - # azahar = prev.azahar.overrideAttrs (old: { - # version = "2120.3"; - # src = final.fetchzip { - # url = "https://github.com/azahar-emu/azahar/releases/download/2120.3/azahar-unified-source-20250414-00e3bbb.tar.xz"; - # hash = "sha256-3QKicmpmWDM7x9GDJ8sxm2Xu+0Yfho4LkSWMp+ixzRk="; - # }; - # }); - # } - # ) - # ]; + nixpkgs.overlays = [ + ( + final: prev: { + azahar = prev.azahar.overrideAttrs (old: { + patches = old.patches ++ [( + final.fetchpatch { + name = "fix-build-qt-6.10.patch"; + url = "https://github.com/azahar-emu/azahar/pull/1441.patch"; + hash = "sha256-PTnhFpuGoF6qPIwupdcRo6s+Tzhj0JR0QwoCgxgGxAw="; + } + )]; + }); + } + ) + ]; home-manager.users.toast = { home.packages = [pkgs.azahar]; };