diff --git a/pkgs/applications/emulators/dolphin-emu/default.nix b/pkgs/applications/emulators/dolphin-emu/default.nix index ba7fc2cfb8f7..6e3f93701c0b 100644 --- a/pkgs/applications/emulators/dolphin-emu/default.nix +++ b/pkgs/applications/emulators/dolphin-emu/default.nix @@ -1,6 +1,7 @@ { lib , stdenv , fetchFromGitHub +, fetchpatch , cmake , pkg-config , wrapQtAppsHook @@ -12,6 +13,7 @@ , enet , ffmpeg , fmt_8 +, gtest , hidapi , libevdev , libGL @@ -22,6 +24,7 @@ , libXdmcp , libXext , libXrandr +, lzo , mbedtls_2 , mgba , miniupnpc @@ -29,12 +32,13 @@ , openal , pugixml , qtbase +, qtsvg , sfml -, soundtouch , udev , vulkan-loader , xxHash , xz +, zlib-ng # Used in passthru , common-updater-scripts @@ -55,16 +59,25 @@ stdenv.mkDerivation rec { pname = "dolphin-emu"; - version = "5.0-19368"; + version = "5.0-19870"; src = fetchFromGitHub { owner = "dolphin-emu"; repo = "dolphin"; - rev = "dadbeb4bae7e7fa23af2b46e0add4143094dc107"; - sha256 = "sha256-XLtFn2liONPizvrKyySZx0mY7qC2fpwhAWaRZLlEzh8="; + rev = "032c77b462a220016f23c5079e71bb23e0ad2adf"; + sha256 = "sha256-TgRattksYsMGcbfu4T5mCFO9BkkHRX0NswFxGwZWjEw="; fetchSubmodules = true; }; + patches = [ + (fetchpatch { + url = "https://github.com/dolphin-emu/dolphin/commit/c43c9101c07376297abbbbc40ef9a1965a1681cd.diff"; + sha256 = "sha256-yHlyG86ta76YKrJsyefvFh521dNbQOqiPOpRUVxKuZM="; + }) + # Remove when merged https://github.com/dolphin-emu/dolphin/pull/12070 + ./find-minizip-ng.patch + ]; + nativeBuildInputs = [ stdenv.cc cmake @@ -87,22 +100,25 @@ stdenv.mkDerivation rec { enet ffmpeg fmt_8 + gtest hidapi libiconv libpulseaudio libspng libusb1 libXdmcp + lzo mbedtls_2 miniupnpc minizip-ng openal pugixml qtbase + qtsvg sfml - soundtouch xxHash - xz + xz # LibLZMA + zlib-ng ] ++ lib.optionals stdenv.isLinux [ alsa-lib bluez @@ -110,7 +126,7 @@ stdenv.mkDerivation rec { libGL libXext libXrandr - # FIXME: Remove comment on next mgba version + # FIXME: Vendored version is newer than mgba's stable release, remove the comment on next mgba's version #mgba # Derivation doesn't support Darwin udev vulkan-loader @@ -118,7 +134,6 @@ stdenv.mkDerivation rec { cmakeFlags = [ "-DDISTRIBUTOR=NixOS" - "-DUSE_SHARED_ENET=ON" "-DDOLPHIN_WC_REVISION=${src.rev}" "-DDOLPHIN_WC_DESCRIBE=${version}" "-DDOLPHIN_WC_BRANCH=master" diff --git a/pkgs/applications/emulators/dolphin-emu/find-minizip-ng.patch b/pkgs/applications/emulators/dolphin-emu/find-minizip-ng.patch new file mode 100644 index 000000000000..b5c64d6e713d --- /dev/null +++ b/pkgs/applications/emulators/dolphin-emu/find-minizip-ng.patch @@ -0,0 +1,13 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index ee44d04458..2fa6bd8a10 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -678,7 +678,7 @@ dolphin_find_optional_system_library_pkgconfig(ZSTD libzstd>=1.4.0 zstd::zstd Ex + + dolphin_find_optional_system_library_pkgconfig(ZLIB zlib-ng ZLIB::ZLIB Externals/zlib-ng) + +-dolphin_find_optional_system_library_pkgconfig(MINIZIP minizip>=3.0.0 minizip::minizip Externals/minizip) ++dolphin_find_optional_system_library_pkgconfig(MINIZIP minizip-ng>=3.0.0 minizip::minizip Externals/minizip) + + dolphin_find_optional_system_library(LZO Externals/LZO) +