diff options
author | zowoq <59103226+zowoq@users.noreply.github.com> | 2020-08-31 15:54:19 +1000 |
---|---|---|
committer | zowoq <59103226+zowoq@users.noreply.github.com> | 2020-09-08 16:32:39 +1000 |
commit | 23c781a810e6133a3c22eea04dc08d820a912ecc (patch) | |
tree | be556f283234b3dec6646c712921b12bb3e6aedc /pkgs/development/go-packages | |
parent | 945fdbe1b91bb1cc24cf0f9963d8945dae52705c (diff) |
buildGoPackage: check/delete vendor
Diffstat (limited to 'pkgs/development/go-packages')
-rw-r--r-- | pkgs/development/go-packages/generic/default.nix | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/pkgs/development/go-packages/generic/default.nix b/pkgs/development/go-packages/generic/default.nix index de0a35b69343..5c54e04652f7 100644 --- a/pkgs/development/go-packages/generic/default.nix +++ b/pkgs/development/go-packages/generic/default.nix @@ -29,6 +29,9 @@ # go2nix dependency file , goDeps ? null +# Whether to delete the vendor folder supplied with the source. +, deleteVendor ? false + , dontRenameImports ? false # Do not enable this without good reason @@ -96,6 +99,18 @@ let mkdir -p "go/src/$(dirname "$goPackagePath")" mv "$sourceRoot" "go/src/$goPackagePath" + '' + lib.optionalString (deleteVendor == true) '' + if [ ! -d "go/src/$goPackagePath/vendor" ]; then + echo "vendor folder does not exist, 'deleteVendor' is not needed" + exit 10 + else + rm -rf "go/src/$goPackagePath/vendor" + fi + '' + lib.optionalString (goDeps != null) '' + if [ -d "go/src/$goPackagePath/vendor" ]; then + echo "vendor folder exists, 'goDeps' is not needed" + exit 10 + fi '' + lib.flip lib.concatMapStrings goPath ({ src, goPackagePath }: '' mkdir goPath (cd goPath; unpackFile "${src}") |