{ 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 = "17070-8b8396b94"; rpcs3Version = "0.0.33-17070-8b8396b94"; rpcs3Revision = "8b8396b9455394486656660c960d420c5b6c446c"; rpcs3Hash = "sha256-LUgKUzoBNY4ZemRBsLOjtXxLXHyRkPivtdSSgUGw5h4="; 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 <