summary refs log tree commit diff
path: root/pkgs/misc
diff options
context:
space:
mode:
authorRandy Eckenrode <randy@largeandhighquality.com>2023-07-11 11:23:32 -0600
committerRandy Eckenrode <randy@largeandhighquality.com>2023-07-11 11:23:32 -0600
commit1e4e27a99f2efbe6a4c6866ca1f170babcd2f85c (patch)
tree90ed06e41049a2c08f6ea9f706473d7f31a45b88 /pkgs/misc
parenta8bb233a094da5398a07da99ee406be30bd6f3aa (diff)
downloadnixpkgs-1e4e27a99f2efbe6a4c6866ca1f170babcd2f85c.tar
nixpkgs-1e4e27a99f2efbe6a4c6866ca1f170babcd2f85c.tar.gz
nixpkgs-1e4e27a99f2efbe6a4c6866ca1f170babcd2f85c.tar.bz2
nixpkgs-1e4e27a99f2efbe6a4c6866ca1f170babcd2f85c.tar.lz
nixpkgs-1e4e27a99f2efbe6a4c6866ca1f170babcd2f85c.tar.xz
nixpkgs-1e4e27a99f2efbe6a4c6866ca1f170babcd2f85c.tar.zst
nixpkgs-1e4e27a99f2efbe6a4c6866ca1f170babcd2f85c.zip
dxvk: move Darwin detection to the wrapper package
Diffstat (limited to 'pkgs/misc')
-rw-r--r--pkgs/misc/dxvk/default.nix8
-rw-r--r--pkgs/misc/dxvk/dxvk.nix3
2 files changed, 8 insertions, 3 deletions
diff --git a/pkgs/misc/dxvk/default.nix b/pkgs/misc/dxvk/default.nix
index 49b6c4d0beb..88b7e5b104f 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 f2f34c6f72c..b7bc4f2fc12 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