about summary refs log tree commit diff
path: root/pkgs/misc
diff options
context:
space:
mode:
authorRandy Eckenrode <randy@largeandhighquality.com>2023-07-11 11:09:20 -0600
committerRandy Eckenrode <randy@largeandhighquality.com>2023-07-11 11:09:20 -0600
commitd532dbefb98521a1bf56d7b6d8796ee9b1b4e875 (patch)
tree6bfd7d2840d29e440b0622b187c89f381367b253 /pkgs/misc
parent94c52940c4275d62d2609ae2cb16b165549d2882 (diff)
dxvk: add an update script
Diffstat (limited to 'pkgs/misc')
-rw-r--r--pkgs/misc/dxvk/dxvk.nix15
1 files changed, 11 insertions, 4 deletions
diff --git a/pkgs/misc/dxvk/dxvk.nix b/pkgs/misc/dxvk/dxvk.nix
index e0aa7105bb35d..fccdf38a0d283 100644
--- a/pkgs/misc/dxvk/dxvk.nix
+++ b/pkgs/misc/dxvk/dxvk.nix
@@ -5,12 +5,13 @@
 , meson
 , ninja
 , windows
-, dxvkVersion
+, dxvkVersion ? "default"
 , spirv-headers
 , vulkan-headers
 , SDL2
 , glfw
 , pkgsBuildHost
+, gitUpdater
 , sdl2Support ? true
 , glfwSupport ? false
 }:
@@ -43,7 +44,7 @@ let
         ./darwin-thread-primitives.patch
       ];
     };
-    "2.1" = rec {
+    "default" = rec {
       version = "2.1";
       src = fetchFromGitHub {
         owner = "doitsujin";
@@ -59,7 +60,7 @@ let
   isWindows = stdenv.targetPlatform.uname.system == "Windows";
   isCross = stdenv.hostPlatform != stdenv.targetPlatform;
 in
-stdenv.mkDerivation {
+stdenv.mkDerivation (finalAttrs:  {
   pname = "dxvk";
   inherit (srcs.${dxvkVersion}) version src patches;
 
@@ -95,6 +96,12 @@ stdenv.mkDerivation {
 
   doCheck = isDxvk2 && !isCross;
 
+  passthru = lib.optionalAttrs (lib.versionAtLeast finalAttrs.version "2.0") {
+    updateScript = gitUpdater {
+      rev-prefix = "v";
+    };
+  };
+
   meta = {
     description = "A Vulkan-based translation layer for Direct3D 9/10/11";
     homepage = "https://github.com/doitsujin/dxvk";
@@ -103,4 +110,4 @@ stdenv.mkDerivation {
     license = lib.licenses.zlib;
     platforms = lib.platforms.windows ++ lib.optionals isDxvk2 lib.platforms.linux;
   };
-}
+})