Loading pkgs/by-name/dx/dxvk/package.nix +3 −1 Original line number Diff line number Diff line Loading @@ -70,7 +70,9 @@ stdenvNoCC.mkDerivation ( done ''; passthru = { inherit dxvk32 dxvk64; }; passthru = { inherit dxvk32 dxvk64; }; __structuredAttrs = true; Loading pkgs/by-name/dx/dxvk/setup_dxvk.sh +2 −1 Original line number Diff line number Diff line Loading @@ -12,6 +12,7 @@ set -eu -o pipefail ## Defaults declare -A dlls=( [d3d8]="dxvk/d3d8.dll" [d3d9]="dxvk/d3d9.dll" [d3d10]="dxvk/d3d10.dll dxvk/d3d10_1.dll dxvk/d3d10core.dll" [d3d11]="dxvk/d3d11.dll" Loading @@ -22,7 +23,7 @@ declare -A obsolete_dlls=( [mcfgthreads]="mcfgthreads/mcfgthread-12.dll" ) declare -A targets=([d3d9]=1 [d3d11]=1 [dxgi]=1) declare -A targets=([d3d8]=1 [d3d9]=1 [d3d11]=1 [dxgi]=1) # Option variables Loading pkgs/by-name/dx/dxvk_2/package.nix +43 −19 Original line number Diff line number Diff line Loading @@ -6,37 +6,61 @@ glslang, meson, ninja, pkg-config, windows, spirv-headers, vulkan-headers, SDL2, glfw, gitUpdater, sdl2Support ? true, glfwSupport ? false, sdl2Support ? (!stdenv.hostPlatform.isWindows), glfwSupport ? (!stdenv.hostPlatform.isWindows), }: # SDL2 and GLFW support are mutually exclusive. assert !sdl2Support || !glfwSupport; assert stdenv.hostPlatform.isWindows -> !glfwSupport && !sdl2Support; let isWindows = stdenv.hostPlatform.uname.system == "Windows"; inherit (stdenv) hostPlatform; libPrefix = lib.optionalString (!hostPlatform.isWindows) "lib"; soVersion = version: if hostPlatform.isDarwin then ".${version}${hostPlatform.extensions.sharedLibrary}" else if hostPlatform.isWindows then hostPlatform.extensions.sharedLibrary else "${hostPlatform.extensions.sharedLibrary}.${version}"; libglfw = "${libPrefix}glfw${soVersion "3"}"; libSDL2 = "${libPrefix}SDL2${lib.optionalString (!hostPlatform.isWindows) "-2.0"}${soVersion "0"}"; in stdenv.mkDerivation (finalAttrs: { pname = "dxvk"; version = "2.3.1"; version = "2.4"; src = fetchFromGitHub { owner = "doitsujin"; repo = "dxvk"; rev = "v${finalAttrs.version}"; hash = "sha256-lUzD1NHFLO4UqOg/BUr7PnYMJCMr1KBh3VNx8etbt8c="; hash = "sha256-4U0Z1oR0BKIHZ6YNT/+8sFe2I/ZKmPecInMXUho4MHg="; fetchSubmodules = true; # Needed for the DirectX headers and libdisplay-info }; postPatch = '' substituteInPlace "subprojects/libdisplay-info/tool/gen-search-table.py" \ --replace "/usr/bin/env python3" "${lib.getBin pkgsBuildHost.python3}/bin/python3" postPatch = '' substituteInPlace meson.build \ --replace-fail "dependency('glfw'" "dependency('glfw3'" substituteInPlace subprojects/libdisplay-info/tool/gen-search-table.py \ --replace-fail "/usr/bin/env python3" "${lib.getBin pkgsBuildHost.python3}/bin/python3" '' + lib.optionalString glfwSupport '' substituteInPlace src/wsi/glfw/wsi_platform_glfw.cpp \ --replace-fail '${libglfw}' '${lib.getLib glfw}/lib/${libglfw}' '' + lib.optionalString sdl2Support '' substituteInPlace src/wsi/sdl2/wsi_platform_sdl2.cpp \ --replace-fail '${libSDL2}' '${lib.getLib SDL2}/lib/${libSDL2}' ''; strictDeps = true; Loading @@ -45,15 +69,16 @@ stdenv.mkDerivation (finalAttrs: { glslang meson ninja ]; ] ++ lib.optionals (glfwSupport || sdl2Support) [ pkg-config ]; buildInputs = [ spirv-headers vulkan-headers ] ++ lib.optionals (!isWindows && sdl2Support) [ SDL2 ] ++ lib.optionals (!isWindows && glfwSupport) [ glfw ] ++ lib.optionals isWindows [ windows.pthreads ]; ++ lib.optionals sdl2Support [ SDL2 ] ++ lib.optionals glfwSupport [ glfw ] ++ lib.optionals hostPlatform.isWindows [ windows.pthreads ]; # Build with the Vulkan SDK in nixpkgs. preConfigure = '' Loading @@ -63,8 +88,6 @@ stdenv.mkDerivation (finalAttrs: { mesonBuildType = "release"; mesonFlags = lib.optionals glfwSupport [ "-Ddxvk_native_wsi=glfw" ]; doCheck = true; passthru.updateScript = gitUpdater { rev-prefix = "v"; }; Loading @@ -72,11 +95,12 @@ stdenv.mkDerivation (finalAttrs: { __structuredAttrs = true; meta = { description = "Vulkan-based translation layer for Direct3D 9/10/11"; description = "Vulkan-based translation layer for Direct3D 8/9/10/11"; homepage = "https://github.com/doitsujin/dxvk"; changelog = "https://github.com/doitsujin/dxvk/releases"; maintainers = [ lib.maintainers.reckenrode ]; license = lib.licenses.zlib; platforms = lib.platforms.windows ++ lib.platforms.linux; badPlatforms = lib.platforms.darwin; platforms = lib.platforms.windows ++ lib.platforms.unix; }; }) Loading
pkgs/by-name/dx/dxvk/package.nix +3 −1 Original line number Diff line number Diff line Loading @@ -70,7 +70,9 @@ stdenvNoCC.mkDerivation ( done ''; passthru = { inherit dxvk32 dxvk64; }; passthru = { inherit dxvk32 dxvk64; }; __structuredAttrs = true; Loading
pkgs/by-name/dx/dxvk/setup_dxvk.sh +2 −1 Original line number Diff line number Diff line Loading @@ -12,6 +12,7 @@ set -eu -o pipefail ## Defaults declare -A dlls=( [d3d8]="dxvk/d3d8.dll" [d3d9]="dxvk/d3d9.dll" [d3d10]="dxvk/d3d10.dll dxvk/d3d10_1.dll dxvk/d3d10core.dll" [d3d11]="dxvk/d3d11.dll" Loading @@ -22,7 +23,7 @@ declare -A obsolete_dlls=( [mcfgthreads]="mcfgthreads/mcfgthread-12.dll" ) declare -A targets=([d3d9]=1 [d3d11]=1 [dxgi]=1) declare -A targets=([d3d8]=1 [d3d9]=1 [d3d11]=1 [dxgi]=1) # Option variables Loading
pkgs/by-name/dx/dxvk_2/package.nix +43 −19 Original line number Diff line number Diff line Loading @@ -6,37 +6,61 @@ glslang, meson, ninja, pkg-config, windows, spirv-headers, vulkan-headers, SDL2, glfw, gitUpdater, sdl2Support ? true, glfwSupport ? false, sdl2Support ? (!stdenv.hostPlatform.isWindows), glfwSupport ? (!stdenv.hostPlatform.isWindows), }: # SDL2 and GLFW support are mutually exclusive. assert !sdl2Support || !glfwSupport; assert stdenv.hostPlatform.isWindows -> !glfwSupport && !sdl2Support; let isWindows = stdenv.hostPlatform.uname.system == "Windows"; inherit (stdenv) hostPlatform; libPrefix = lib.optionalString (!hostPlatform.isWindows) "lib"; soVersion = version: if hostPlatform.isDarwin then ".${version}${hostPlatform.extensions.sharedLibrary}" else if hostPlatform.isWindows then hostPlatform.extensions.sharedLibrary else "${hostPlatform.extensions.sharedLibrary}.${version}"; libglfw = "${libPrefix}glfw${soVersion "3"}"; libSDL2 = "${libPrefix}SDL2${lib.optionalString (!hostPlatform.isWindows) "-2.0"}${soVersion "0"}"; in stdenv.mkDerivation (finalAttrs: { pname = "dxvk"; version = "2.3.1"; version = "2.4"; src = fetchFromGitHub { owner = "doitsujin"; repo = "dxvk"; rev = "v${finalAttrs.version}"; hash = "sha256-lUzD1NHFLO4UqOg/BUr7PnYMJCMr1KBh3VNx8etbt8c="; hash = "sha256-4U0Z1oR0BKIHZ6YNT/+8sFe2I/ZKmPecInMXUho4MHg="; fetchSubmodules = true; # Needed for the DirectX headers and libdisplay-info }; postPatch = '' substituteInPlace "subprojects/libdisplay-info/tool/gen-search-table.py" \ --replace "/usr/bin/env python3" "${lib.getBin pkgsBuildHost.python3}/bin/python3" postPatch = '' substituteInPlace meson.build \ --replace-fail "dependency('glfw'" "dependency('glfw3'" substituteInPlace subprojects/libdisplay-info/tool/gen-search-table.py \ --replace-fail "/usr/bin/env python3" "${lib.getBin pkgsBuildHost.python3}/bin/python3" '' + lib.optionalString glfwSupport '' substituteInPlace src/wsi/glfw/wsi_platform_glfw.cpp \ --replace-fail '${libglfw}' '${lib.getLib glfw}/lib/${libglfw}' '' + lib.optionalString sdl2Support '' substituteInPlace src/wsi/sdl2/wsi_platform_sdl2.cpp \ --replace-fail '${libSDL2}' '${lib.getLib SDL2}/lib/${libSDL2}' ''; strictDeps = true; Loading @@ -45,15 +69,16 @@ stdenv.mkDerivation (finalAttrs: { glslang meson ninja ]; ] ++ lib.optionals (glfwSupport || sdl2Support) [ pkg-config ]; buildInputs = [ spirv-headers vulkan-headers ] ++ lib.optionals (!isWindows && sdl2Support) [ SDL2 ] ++ lib.optionals (!isWindows && glfwSupport) [ glfw ] ++ lib.optionals isWindows [ windows.pthreads ]; ++ lib.optionals sdl2Support [ SDL2 ] ++ lib.optionals glfwSupport [ glfw ] ++ lib.optionals hostPlatform.isWindows [ windows.pthreads ]; # Build with the Vulkan SDK in nixpkgs. preConfigure = '' Loading @@ -63,8 +88,6 @@ stdenv.mkDerivation (finalAttrs: { mesonBuildType = "release"; mesonFlags = lib.optionals glfwSupport [ "-Ddxvk_native_wsi=glfw" ]; doCheck = true; passthru.updateScript = gitUpdater { rev-prefix = "v"; }; Loading @@ -72,11 +95,12 @@ stdenv.mkDerivation (finalAttrs: { __structuredAttrs = true; meta = { description = "Vulkan-based translation layer for Direct3D 9/10/11"; description = "Vulkan-based translation layer for Direct3D 8/9/10/11"; homepage = "https://github.com/doitsujin/dxvk"; changelog = "https://github.com/doitsujin/dxvk/releases"; maintainers = [ lib.maintainers.reckenrode ]; license = lib.licenses.zlib; platforms = lib.platforms.windows ++ lib.platforms.linux; badPlatforms = lib.platforms.darwin; platforms = lib.platforms.windows ++ lib.platforms.unix; }; })