summary refs log tree commit diff
path: root/pkgs/games/cataclysm-dda/git.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/games/cataclysm-dda/git.nix')
-rw-r--r--pkgs/games/cataclysm-dda/git.nix47
1 files changed, 28 insertions, 19 deletions
diff --git a/pkgs/games/cataclysm-dda/git.nix b/pkgs/games/cataclysm-dda/git.nix
index 8e803ed63df..89af582b3c0 100644
--- a/pkgs/games/cataclysm-dda/git.nix
+++ b/pkgs/games/cataclysm-dda/git.nix
@@ -1,28 +1,37 @@
-{ stdenv, callPackage, CoreFoundation
+{ lib, callPackage, CoreFoundation, fetchFromGitHub, pkgs, wrapCDDA
 , tiles ? true, Cocoa
 , debug ? false
 }:
 
 let
-  inherit (stdenv.lib) substring;
-  inherit (callPackage ./common.nix { inherit tiles CoreFoundation Cocoa debug; }) common utils;
-  inherit (utils) fetchFromCleverRaven;
-in
+  common = callPackage ./common.nix {
+    inherit tiles CoreFoundation Cocoa debug;
+  };
 
-stdenv.mkDerivation (common // rec {
-  pname = common.pname + "-git";
-  version = "2019-11-22";
+  self = common.overrideAttrs (common: rec {
+    pname = common.pname + "-git";
+    version = "2019-11-22";
 
-  src = fetchFromCleverRaven {
-    rev = "a6c8ece992bffeae3788425dd4b3b5871e66a9cd";
-    sha256 = "0ww2q5gykxm802z1kffmnrfahjlx123j1gfszklpsv0b1fccm1ab";
-  };
+    src = fetchFromGitHub {
+      owner = "CleverRaven";
+      repo = "Cataclysm-DDA";
+      rev = "a6c8ece992bffeae3788425dd4b3b5871e66a9cd";
+      sha256 = "0ww2q5gykxm802z1kffmnrfahjlx123j1gfszklpsv0b1fccm1ab";
+    };
 
-  makeFlags = common.makeFlags ++ [
-    "VERSION=git-${version}-${substring 0 8 src.rev}"
-  ];
+    makeFlags = common.makeFlags ++ [
+      "VERSION=git-${version}-${lib.substring 0 8 src.rev}"
+    ];
 
-  meta = with stdenv.lib.maintainers; common.meta // {
-    maintainers = common.meta.maintainers ++ [ rardiol ];
-  };
-})
+    passthru = common.passthru // {
+      pkgs = pkgs.override { build = self; };
+      withMods = wrapCDDA self;
+    };
+
+    meta = with lib.maintainers; common.meta // {
+      maintainers = common.meta.maintainers ++ [ rardiol ];
+    };
+  });
+in
+
+self