diff --git a/pkgs/misc/dxvk/default.nix b/pkgs/misc/dxvk/default.nix index 49b6c4d0bebd..88b7e5b104fb 100644 --- a/pkgs/misc/dxvk/default.nix +++ b/pkgs/misc/dxvk/default.nix @@ -8,8 +8,12 @@ stdenvNoCC.mkDerivation (finalAttrs: let - dxvk32 = if stdenv.isDarwin then pkgsCross.mingw32.dxvk_1 else pkgsCross.mingw32.dxvk_2; - dxvk64 = if stdenv.isDarwin then pkgsCross.mingwW64.dxvk_1 else pkgsCross.mingwW64.dxvk_2; + dxvk32 = if stdenv.isDarwin + then pkgsCross.mingw32.dxvk_1.override { enableMoltenVKCompat = true; } + else pkgsCross.mingw32.dxvk_2; + dxvk64 = if stdenv.isDarwin + then pkgsCross.mingwW64.dxvk_1.override { enableMoltenVKCompat = true; } + else pkgsCross.mingwW64.dxvk_2; in { pname = "dxvk"; diff --git a/pkgs/misc/dxvk/dxvk.nix b/pkgs/misc/dxvk/dxvk.nix index f2f34c6f72c8..b7bc4f2fc127 100644 --- a/pkgs/misc/dxvk/dxvk.nix +++ b/pkgs/misc/dxvk/dxvk.nix @@ -14,6 +14,7 @@ , gitUpdater , sdl2Support ? true , glfwSupport ? false +, enableMoltenVKCompat ? false }: # SDL2 and GLFW support are mutually exclusive. @@ -35,7 +36,7 @@ let hash = "sha256-T93ZylxzJGprrP+j6axZwl2d3hJowMCUOKNjIyNzkmE="; }; # These patches are required when using DXVK with Wine on Darwin. - patches = lib.optionals stdenv.buildPlatform.isDarwin [ + patches = lib.optionals enableMoltenVKCompat [ # Patch DXVK to work with MoltenVK even though it doesn’t support some required features. # Some games work poorly (particularly Unreal Engine 4 games), but others work pretty well. ./darwin-dxvk-compat.patch