diff --git a/flake.nix b/flake.nix index ae0560c..4a27077 100644 --- a/flake.nix +++ b/flake.nix @@ -97,8 +97,6 @@ name = "patched-nixpkgs-unstable"; src = nixpkgs-unstable-raw; patches = [ - ./nixpkgs-patches/pr400900.patch - ./nixpkgs-patches/pr386360.patch ]; }; nixpkgs-patched = nixpkgs-raw.legacyPackages.x86_64-linux.applyPatches { diff --git a/nixpkgs-patches/pr386360.patch b/nixpkgs-patches/pr386360.patch deleted file mode 100644 index 9733a0a..0000000 --- a/nixpkgs-patches/pr386360.patch +++ /dev/null @@ -1,71 +0,0 @@ -From ec004ef5f30f4ea66ce0b77bab5ce778883aff5d Mon Sep 17 00:00:00 2001 -From: Zane van Iperen -Date: Tue, 1 Apr 2025 20:23:42 +0900 -Subject: [PATCH] rpcs3: 0.0.34-17323-92d070729 -> 0.0.36-17736-c86a25079 - ---- - pkgs/by-name/rp/rpcs3/package.nix | 20 +++++++++++++------- - 1 file changed, 13 insertions(+), 7 deletions(-) - -diff --git a/pkgs/by-name/rp/rpcs3/package.nix b/pkgs/by-name/rp/rpcs3/package.nix -index 779d9048ca0ea0..dc39a9bc61e384 100644 ---- a/pkgs/by-name/rp/rpcs3/package.nix -+++ b/pkgs/by-name/rp/rpcs3/package.nix -@@ -21,12 +21,14 @@ - python3, - pugixml, - flatbuffers, -- llvm_16, -+ llvm_18, - cubeb, -+ opencv, - enableDiscordRpc ? false, - faudioSupport ? true, - faudio, - SDL2, -+ sdl3, - waylandSupport ? true, - wayland, - wrapGAppsHook3, -@@ -34,10 +36,10 @@ - - let - # Keep these separate so the update script can regex them -- rpcs3GitVersion = "17323-92d070729"; -- rpcs3Version = "0.0.34-17323-92d070729"; -- rpcs3Revision = "92d07072915b99917892dd7833c06eb44a09e234"; -- rpcs3Hash = "sha256-GH2sXw1AYdqwzxucXFhVS0nM0eRhC+XDHS6RTZY8pYY="; -+ rpcs3GitVersion = "17736-c86a25079"; -+ rpcs3Version = "0.0.36-17736-c86a25079"; -+ rpcs3Revision = "c86a25079518032d73395a79979970acb2581a91"; -+ rpcs3Hash = "sha256-e+mT3qn1oz1fh2bqu5YM+m774Can34If57Kd1T1EGbk="; - - inherit (qt6Packages) - qtbase -@@ -77,9 +79,11 @@ stdenv.mkDerivation { - (lib.cmakeBool "USE_SYSTEM_CURL" true) - (lib.cmakeBool "USE_SYSTEM_WOLFSSL" true) - (lib.cmakeBool "USE_SYSTEM_FAUDIO" true) -+ (lib.cmakeBool "USE_SYSTEM_OPENAL" true) - (lib.cmakeBool "USE_SYSTEM_PUGIXML" true) - (lib.cmakeBool "USE_SYSTEM_FLATBUFFERS" true) - (lib.cmakeBool "USE_SYSTEM_SDL" true) -+ (lib.cmakeBool "USE_SYSTEM_OPENCV" true) - (lib.cmakeBool "USE_SDL" true) - (lib.cmakeBool "WITH_LLVM" true) - (lib.cmakeBool "BUILD_LLVM" false) -@@ -115,10 +119,12 @@ stdenv.mkDerivation { - wolfssl - python3 - pugixml -- SDL2 -+ SDL2 # Still needed by FAudio's CMake -+ sdl3 - flatbuffers -- llvm_16 -+ llvm_18 - libSM -+ opencv - ] - ++ cubeb.passthru.backendLibs - ++ lib.optional faudioSupport faudio diff --git a/nixpkgs-patches/pr400900.patch b/nixpkgs-patches/pr400900.patch deleted file mode 100644 index 457acfc..0000000 --- a/nixpkgs-patches/pr400900.patch +++ /dev/null @@ -1,101 +0,0 @@ -From 66e2bdbc88f1985c0960c29e991ffcbb8b180cc0 Mon Sep 17 00:00:00 2001 -From: Marcin Serwin -Date: Tue, 22 Apr 2025 20:04:11 +0200 -Subject: [PATCH] rpcs3: unbreak - ---- - .../rp/rpcs3/fix-qt6.9-compilation.patch | 68 +++++++++++++++++++ - pkgs/by-name/rp/rpcs3/package.nix | 5 ++ - 2 files changed, 73 insertions(+) - create mode 100644 pkgs/by-name/rp/rpcs3/fix-qt6.9-compilation.patch - -diff --git a/pkgs/by-name/rp/rpcs3/fix-qt6.9-compilation.patch b/pkgs/by-name/rp/rpcs3/fix-qt6.9-compilation.patch -new file mode 100644 -index 00000000000000..13ca314d3022ba ---- /dev/null -+++ b/pkgs/by-name/rp/rpcs3/fix-qt6.9-compilation.patch -@@ -0,0 +1,68 @@ -+From 600e4604169464c64cbf548e7629e483ad2aad1e Mon Sep 17 00:00:00 2001 -+From: Megamouse -+Date: Mon, 7 Apr 2025 20:49:15 +0200 -+Subject: [PATCH] Fix compilation with newer Qt -+ -+--- -+ rpcs3/rpcs3qt/game_list_base.cpp | 2 +- -+ rpcs3/rpcs3qt/game_list_frame.cpp | 4 ++-- -+ rpcs3/rpcs3qt/ps_move_tracker_dialog.cpp | 4 ++-- -+ 3 files changed, 5 insertions(+), 5 deletions(-) -+ -+diff --git a/rpcs3/rpcs3qt/game_list_base.cpp b/rpcs3/rpcs3qt/game_list_base.cpp -+index 72b45d33bfbb..21640906ee7e 100644 -+--- a/rpcs3/rpcs3qt/game_list_base.cpp -++++ b/rpcs3/rpcs3qt/game_list_base.cpp -+@@ -25,7 +25,7 @@ void game_list_base::repaint_icons(std::vector& game_data, const QCol -+ for (game_info& game : game_data) -+ { -+ game->pxmap = placeholder; -+- -++ -+ if (movie_item_base* item = game->item) -+ { -+ item->set_icon_load_func([this, game, device_pixel_ratio, cancel = item->icon_loading_aborted()](int) -+diff --git a/rpcs3/rpcs3qt/game_list_frame.cpp b/rpcs3/rpcs3qt/game_list_frame.cpp -+index a294d69cc68e..439913760053 100644 -+--- a/rpcs3/rpcs3qt/game_list_frame.cpp -++++ b/rpcs3/rpcs3qt/game_list_frame.cpp -+@@ -2363,7 +2363,7 @@ void game_list_frame::BatchActionBySerials(progress_dialog* pdlg, const std::set -+ -+ connect(future_watcher, &QFutureWatcher::finished, this, [=, this]() -+ { -+- pdlg->setLabelText(progressLabel.arg(*index).arg(serials_size)); -++ pdlg->setLabelText(progressLabel.arg(index->load()).arg(serials_size)); -+ pdlg->setCancelButtonText(tr("OK")); -+ QApplication::beep(); -+ -+@@ -2396,7 +2396,7 @@ void game_list_frame::BatchActionBySerials(progress_dialog* pdlg, const std::set -+ return; -+ } -+ -+- pdlg->setLabelText(progressLabel.arg(*index).arg(serials_size)); -++ pdlg->setLabelText(progressLabel.arg(index->load()).arg(serials_size)); -+ pdlg->setCancelButtonText(tr("OK")); -+ connect(pdlg, &progress_dialog::canceled, this, [pdlg](){ pdlg->deleteLater(); }); -+ QApplication::beep(); -+diff --git a/rpcs3/rpcs3qt/ps_move_tracker_dialog.cpp b/rpcs3/rpcs3qt/ps_move_tracker_dialog.cpp -+index 45fbe6f59e7d..4b9bc5dd6e4f 100644 -+--- a/rpcs3/rpcs3qt/ps_move_tracker_dialog.cpp -++++ b/rpcs3/rpcs3qt/ps_move_tracker_dialog.cpp -+@@ -362,7 +362,7 @@ void ps_move_tracker_dialog::update_saturation_threshold(bool update_slider) -+ } -+ void ps_move_tracker_dialog::update_min_radius(bool update_slider) -+ { -+- ui->minRadiusGb->setTitle(tr("Min Radius: %0 %").arg(g_cfg_move.min_radius)); -++ ui->minRadiusGb->setTitle(tr("Min Radius: %0 %").arg(g_cfg_move.min_radius.get())); -+ -+ if (update_slider) -+ { -+@@ -372,7 +372,7 @@ void ps_move_tracker_dialog::update_min_radius(bool update_slider) -+ -+ void ps_move_tracker_dialog::update_max_radius(bool update_slider) -+ { -+- ui->maxRadiusGb->setTitle(tr("Max Radius: %0 %").arg(g_cfg_move.max_radius)); -++ ui->maxRadiusGb->setTitle(tr("Max Radius: %0 %").arg(g_cfg_move.max_radius.get())); -+ -+ if (update_slider) -+ { -diff --git a/pkgs/by-name/rp/rpcs3/package.nix b/pkgs/by-name/rp/rpcs3/package.nix -index 779d9048ca0ea0..b633453a77e61d 100644 ---- a/pkgs/by-name/rp/rpcs3/package.nix -+++ b/pkgs/by-name/rp/rpcs3/package.nix -@@ -58,6 +58,11 @@ stdenv.mkDerivation { - hash = rpcs3Hash; - }; - -+ patches = [ -+ # Modified from https://github.com/RPCS3/rpcs3/pull/17009; doesn't apply cleanly due to intermediate commits -+ ./fix-qt6.9-compilation.patch -+ ]; -+ - passthru.updateScript = ./update.sh; - - preConfigure = ''