From c82bb3133cba555d9a61ddcca1d58f770e02efaa Mon Sep 17 00:00:00 2001
From: Matthew Bauer <mjbauer95@gmail.com>
Date: Mon, 29 Apr 2019 21:30:56 -0400
Subject: [PATCH] nix: use llvm6 on clang

nix-2.2.2 only works with libcxx 6. We should only set the stdenv to
clang when we are already using clang. Also, nixUnstable does support
libcxx 7.
---
 pkgs/tools/package-management/nix/default.nix | 10 ++++------
 1 file changed, 4 insertions(+), 6 deletions(-)

diff --git a/pkgs/tools/package-management/nix/default.nix b/pkgs/tools/package-management/nix/default.nix
index ca1a38c4ab4..6d0e07d60f9 100644
--- a/pkgs/tools/package-management/nix/default.nix
+++ b/pkgs/tools/package-management/nix/default.nix
@@ -3,7 +3,7 @@
 , stateDir ? "/nix/var"
 , confDir ? "/etc"
 , boehmgc
-, llvmPackages_6
+, stdenv, llvmPackages_6
 }:
 
 let
@@ -167,7 +167,7 @@ in rec {
     inherit storeDir stateDir confDir boehmgc;
   };
 
-  nixStable = callPackage common rec {
+  nixStable = callPackage common (rec {
     name = "nix-2.2.2";
     src = fetchurl {
       url = "http://nixos.org/releases/nix/${name}/${name}.tar.xz";
@@ -175,9 +175,9 @@ in rec {
     };
 
     inherit storeDir stateDir confDir boehmgc;
-
+  } // stdenv.lib.optionalAttrs stdenv.cc.isClang {
     stdenv = llvmPackages_6.stdenv;
-  };
+  });
 
   nixUnstable = lib.lowPrio (callPackage common rec {
     name = "nix-2.3${suffix}";
@@ -191,8 +191,6 @@ in rec {
     fromGit = true;
 
     inherit storeDir stateDir confDir boehmgc;
-
-    stdenv = llvmPackages_6.stdenv;
   });
 
 }