{ 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 = "16659-33851d51a"; rpcs3Version = "0.0.32-16659-33851d51a"; rpcs3Revision = "33851d51ab93c3c73be18a6cb5ed7723219ee1e3"; rpcs3Hash = "sha256-Gv3zkvZdvnRUKvS0JhrvHOOz5OVSqxHBkbbOdYWzRvU="; 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 <