summary refs log tree commit diff
path: root/pkgs/development/tools/build-managers/dub/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/development/tools/build-managers/dub/default.nix')
-rw-r--r--pkgs/development/tools/build-managers/dub/default.nix77
1 files changed, 41 insertions, 36 deletions
diff --git a/pkgs/development/tools/build-managers/dub/default.nix b/pkgs/development/tools/build-managers/dub/default.nix
index b9a8c97bd5eb..11461fc69522 100644
--- a/pkgs/development/tools/build-managers/dub/default.nix
+++ b/pkgs/development/tools/build-managers/dub/default.nix
@@ -4,7 +4,7 @@ let
 
   dubBuild = stdenv.mkDerivation rec {
     name = "dubBuild-${version}";
-    version = "1.8.1";
+    version = "1.10.0";
 
     enableParallelBuilding = true;
 
@@ -12,7 +12,7 @@ let
       owner = "dlang";
       repo = "dub";
       rev = "v${version}";
-      sha256 = "16r7x4jsfv5fjssvs6mwj8ymr6fjpvbkjhpr4f4368sjr5iyfad6";
+      sha256 = "02xxpfcjs427jqbwz0vh5vl3bh62ys65zmi9gpa3svzqffyx13n4";
     };
 
     postUnpack = ''
@@ -51,40 +51,45 @@ let
 
   # Need to test in a fixed-output derivation, otherwise the
   # network tests would fail if sandbox mode is enabled.
-  dubUnittests = stdenv.mkDerivation rec {
-    name = "dubUnittests-${version}";
-    version = dubBuild.version;
-
-    enableParallelBuilding = dubBuild.enableParallelBuilding;
-    preferLocalBuild = true;
-    inputString = dubBuild.outPath;
-    outputHashAlgo = "sha256";
-    outputHash = builtins.hashString "sha256" inputString;
-
-    src = dubBuild.src;
-    
-    postUnpack = dubBuild.postUnpack;
-    postPatch = dubBuild.postPatch;
-
-    nativeBuildInputs = dubBuild.nativeBuildInputs;
-    buildInputs = dubBuild.buildInputs;
-
-    buildPhase = ''
-      # Can't use dub from dubBuild directly because one unittest 
-      # (issue895-local-configuration) needs to generate a config 
-      # file under ../etc relative to the dub location.
-      cp ${dubBuild}/bin/dub bin/
-      export DUB=$NIX_BUILD_TOP/source/bin/dub
-      export PATH=$PATH:$NIX_BUILD_TOP/source/bin/
-      export DC=${dmd.out}/bin/dmd
-      export HOME=$TMP
-      ./test/run-unittest.sh
-    '';
-
-    installPhase = ''
-        echo -n $inputString > $out
-    '';
-  };
+  # Disable tests on Darwin for now because they don't work
+  # reliably there.
+  dubUnittests = if !stdenv.hostPlatform.isDarwin then
+    stdenv.mkDerivation rec {
+      name = "dubUnittests-${version}";
+      version = dubBuild.version;
+
+      enableParallelBuilding = dubBuild.enableParallelBuilding;
+      preferLocalBuild = true;
+      inputString = dubBuild.outPath;
+      outputHashAlgo = "sha256";
+      outputHash = builtins.hashString "sha256" inputString;
+
+      src = dubBuild.src;
+      
+      postUnpack = dubBuild.postUnpack;
+      postPatch = dubBuild.postPatch;
+
+      nativeBuildInputs = dubBuild.nativeBuildInputs;
+      buildInputs = dubBuild.buildInputs;
+
+      buildPhase = ''
+        # Can't use dub from dubBuild directly because one unittest 
+        # (issue895-local-configuration) needs to generate a config 
+        # file under ../etc relative to the dub location.
+        cp ${dubBuild}/bin/dub bin/
+        export DUB=$NIX_BUILD_TOP/source/bin/dub
+        export PATH=$PATH:$NIX_BUILD_TOP/source/bin/
+        export DC=${dmd.out}/bin/dmd
+        export HOME=$TMP
+        ./test/run-unittest.sh
+      '';
+
+      installPhase = ''
+          echo -n $inputString > $out
+      '';
+    }
+  else
+    "";
 
 in