{ lib , stdenv , fetchFromGitHub , cmake , pkg-config , git , qt6Packages , openal , glew , vulkan-headers , vulkan-loader , libpng , libSM , ffmpeg , libevdev , libusb1 , zlib , curl , wolfssl , python3 , pugixml , flatbuffers , llvm_16 , cubeb , enableDiscordRpc ? false , faudioSupport ? true , faudio , SDL2 , waylandSupport ? true , wayland , wrapGAppsHook3 }: let # Keep these separate so the update script can regex them rpcs3GitVersion = "16711-501e9260b"; rpcs3Version = "0.0.32-16711-501e9260b"; rpcs3Revision = "501e9260b2f2c175c19e3a7e80a0afc7952a3f1e"; rpcs3Hash = "sha256-qCTaCRx3Q7gUHNvcBlbHtQbeCwDe9pehWAEYiihH+LA="; inherit (qt6Packages) qtbase qtmultimedia wrapQtAppsHook qtwayland; in stdenv.mkDerivation { pname = "rpcs3"; version = rpcs3Version; src = fetchFromGitHub { owner = "RPCS3"; repo = "rpcs3"; rev = rpcs3Revision; fetchSubmodules = true; hash = rpcs3Hash; }; passthru.updateScript = ./update.sh; preConfigure = '' cat > ./rpcs3/git-version.h <