summary refs log tree commit diff
path: root/pkgs/development/go-modules
diff options
context:
space:
mode:
authorJoachim Fasting <joachifm@fastmail.fm>2017-03-18 04:14:05 +0100
committerJoachim Fasting <joachifm@fastmail.fm>2017-03-29 00:35:01 +0200
commit4a12a681efbc1f9851170be60479b598e5d28768 (patch)
tree7967caefc8909d8e027b1329a8651e8312672412 /pkgs/development/go-modules
parenteb70ae34b1da2894bc60ed0064efd2de068d28ad (diff)
downloadnixpkgs-4a12a681efbc1f9851170be60479b598e5d28768.tar
nixpkgs-4a12a681efbc1f9851170be60479b598e5d28768.tar.gz
nixpkgs-4a12a681efbc1f9851170be60479b598e5d28768.tar.bz2
nixpkgs-4a12a681efbc1f9851170be60479b598e5d28768.tar.lz
nixpkgs-4a12a681efbc1f9851170be60479b598e5d28768.tar.xz
nixpkgs-4a12a681efbc1f9851170be60479b598e5d28768.tar.zst
nixpkgs-4a12a681efbc1f9851170be60479b598e5d28768.zip
go builder: use removeReferencesTo
Diffstat (limited to 'pkgs/development/go-modules')
-rw-r--r--pkgs/development/go-modules/generic/default.nix14
1 files changed, 4 insertions, 10 deletions
diff --git a/pkgs/development/go-modules/generic/default.nix b/pkgs/development/go-modules/generic/default.nix
index 985b4c9b9db..adac53f7828 100644
--- a/pkgs/development/go-modules/generic/default.nix
+++ b/pkgs/development/go-modules/generic/default.nix
@@ -1,4 +1,4 @@
-{ go, govers, parallel, lib, fetchgit, fetchhg, rsync }:
+{ go, govers, parallel, lib, fetchgit, fetchhg, rsync, removeReferencesTo }:
 
 { name, buildInputs ? [], nativeBuildInputs ? [], passthru ? {}, preFixup ? ""
 
@@ -41,9 +41,7 @@ let
 
   removeReferences = [ ] ++ lib.optional (!allowGoReference) go;
 
-  removeExpr = refs: lib.flip lib.concatMapStrings refs (ref: ''
-    | sed "s,${ref},$(echo "${ref}" | sed "s,$NIX_STORE/[^-]*,$NIX_STORE/eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee,"),g" \
-  '');
+  removeExpr = refs: ''remove-references-to ${lib.concatMapStrings (ref: " -t ${ref}") refs}'';
 
   dep2src = goDep:
     {
@@ -70,7 +68,7 @@ go.stdenv.mkDerivation (
   (builtins.removeAttrs args [ "goPackageAliases" "disabled" ]) // {
 
   inherit name;
-  nativeBuildInputs = [ go parallel ]
+  nativeBuildInputs = [ removeReferencesTo go parallel ]
     ++ (lib.optional (!dontRenameImports) govers) ++ nativeBuildInputs;
   buildInputs = [ go ] ++ buildInputs;
 
@@ -186,11 +184,7 @@ go.stdenv.mkDerivation (
   '';
 
   preFixup = preFixup + ''
-    while read file; do
-      cat $file ${removeExpr removeReferences} > $file.tmp
-      mv $file.tmp $file
-      chmod +x $file
-    done < <(find $bin/bin -type f 2>/dev/null)
+    find $bin/bin -type f -exec ${removeExpr removeReferences} '{}' +
   '';
 
   shellHook = ''