summary refs log tree commit diff
path: root/pkgs
diff options
context:
space:
mode:
authorTim Cuthbertson <tim@gfxmonk.net>2017-01-25 22:25:14 +1100
committerTim Cuthbertson <tim@gfxmonk.net>2017-01-25 22:25:31 +1100
commita59c3038cd26863ab0eb90aad813440dfec1a59e (patch)
tree7ffc023b8fc7905abaf7b3ec7e8a2d89908b35d2 /pkgs
parentb984d5d25f3c5f4d8c700f3c5e0b41bd48cfcb79 (diff)
downloadnixlib-a59c3038cd26863ab0eb90aad813440dfec1a59e.tar
nixlib-a59c3038cd26863ab0eb90aad813440dfec1a59e.tar.gz
nixlib-a59c3038cd26863ab0eb90aad813440dfec1a59e.tar.bz2
nixlib-a59c3038cd26863ab0eb90aad813440dfec1a59e.tar.lz
nixlib-a59c3038cd26863ab0eb90aad813440dfec1a59e.tar.xz
nixlib-a59c3038cd26863ab0eb90aad813440dfec1a59e.tar.zst
nixlib-a59c3038cd26863ab0eb90aad813440dfec1a59e.zip
gup: 0.5.5 -> 0.6.0 and derivation update
Diffstat (limited to 'pkgs')
-rw-r--r--pkgs/development/tools/build-managers/gup/build.nix30
-rwxr-xr-xpkgs/development/tools/build-managers/gup/build.nix.gup6
-rw-r--r--pkgs/development/tools/build-managers/gup/default.nix26
-rw-r--r--pkgs/development/tools/build-managers/gup/src.json17
4 files changed, 59 insertions, 20 deletions
diff --git a/pkgs/development/tools/build-managers/gup/build.nix b/pkgs/development/tools/build-managers/gup/build.nix
index a9af037bb81e..b2a60c309b32 100644
--- a/pkgs/development/tools/build-managers/gup/build.nix
+++ b/pkgs/development/tools/build-managers/gup/build.nix
@@ -1,14 +1,30 @@
-# NOTE: this file is copied from the upstream repository for this package.
-# Please submit any changes you make here to https://github.com/timbertson/gup/
+# NOTE: the `nixpkgs` version of this file is copied from the upstream repository
+# for this package. Please make any changes to https://github.com/timbertson/gup/
 
-{ stdenv, lib, python, which, pychecker ? null }:
-{ src, version, meta ? {} }:
+{ stdenv, lib, pythonPackages }:
+{ src, version, meta ? {}, passthru ? {}, forceTests ? false }:
+let
+  testInputs = [
+    pythonPackages.mocktest or null
+    pythonPackages.whichcraft
+    pythonPackages.nose
+    pythonPackages.nose_progressive
+  ];
+  pychecker = pythonPackages.pychecker or null;
+  usePychecker = forceTests || pychecker != null;
+  enableTests = forceTests || (lib.all (dep: dep != null) testInputs);
+in
 stdenv.mkDerivation {
-  inherit src meta;
+  inherit src meta passthru;
   name = "gup-${version}";
-  buildInputs = lib.remove null [ python which pychecker ];
-  SKIP_PYCHECKER = pychecker == null;
+  buildInputs = [ pythonPackages.python ]
+    ++ (lib.optionals enableTests testInputs)
+    ++ (lib.optional usePychecker pychecker)
+  ;
+  SKIP_PYCHECKER = !usePychecker;
   buildPhase = "make python";
+  inherit pychecker;
+  testPhase = if enableTests then "make test" else "true";
   installPhase = ''
     mkdir $out
     cp -r python/bin $out/bin
diff --git a/pkgs/development/tools/build-managers/gup/build.nix.gup b/pkgs/development/tools/build-managers/gup/build.nix.gup
new file mode 100755
index 000000000000..915d4287566a
--- /dev/null
+++ b/pkgs/development/tools/build-managers/gup/build.nix.gup
@@ -0,0 +1,6 @@
+#!/bin/bash
+set -eu
+if [ -n "${GUP_TARGET:-}" ]; then
+	gup --always
+fi
+curl -LSs -o "$1" https://raw.githubusercontent.com/timbertson/gup/master/nix/gup-python.nix
diff --git a/pkgs/development/tools/build-managers/gup/default.nix b/pkgs/development/tools/build-managers/gup/default.nix
index 8e85c63cb6e5..e73beb031645 100644
--- a/pkgs/development/tools/build-managers/gup/default.nix
+++ b/pkgs/development/tools/build-managers/gup/default.nix
@@ -1,21 +1,21 @@
-{ stdenv, fetchFromGitHub, lib, python, which }:
-let
-  version = "0.5.5";
-  src = fetchFromGitHub {
-    sha256 = "12yv0j333z6jkaaal8my3jx3k4ml9hq8ldis5zfvr8179d4xah7q";
-    rev = "version-${version}";
-    repo = "gup";
-    owner = "timbertson";
-  };
-in
+{ stdenv, fetchFromGitHub, lib, pythonPackages, nix-update-source, curl }:
 import ./build.nix
-  { inherit stdenv lib python which; }
-  { inherit src version;
+  { inherit stdenv lib pythonPackages; }
+  { inherit (nix-update-source.fetch ./src.json) src version;
     meta = {
-      inherit (src.meta) homepage;
+      homepage = https://github.com/timbertson/gup/;
       description = "A better make, inspired by djb's redo";
       license = stdenv.lib.licenses.lgpl2Plus;
       maintainers = [ stdenv.lib.maintainers.timbertson ];
       platforms = stdenv.lib.platforms.all;
     };
+    passthru = {
+      updateScript = ''
+        set -e
+        echo
+        cd ${toString ./.}
+        ${nix-update-source}/bin/nix-update-source --prompt version src.json
+        ./build.nix.gup build.nix
+      '';
+    };
   }
diff --git a/pkgs/development/tools/build-managers/gup/src.json b/pkgs/development/tools/build-managers/gup/src.json
new file mode 100644
index 000000000000..6b9719a30762
--- /dev/null
+++ b/pkgs/development/tools/build-managers/gup/src.json
@@ -0,0 +1,17 @@
+{
+  "fetch": {
+    "args": {
+      "owner": "timbertson",
+      "repo": "gup",
+      "rev": "version-0.6.0",
+      "sha256": "053xnx39jh9kn9l572z4k0q7bbxjpisf1fm9aq27ybj2ha1rh6wr"
+    },
+    "fn": "fetchFromGitHub",
+    "rev": "version-0.6.0",
+    "version": "0.6.0"
+  },
+  "owner": "timbertson",
+  "repo": "gup",
+  "rev": "version-{version}",
+  "type": "fetchFromGitHub"
+}
\ No newline at end of file