diff --git a/pkgs/development/go-modules/generic/default.nix b/pkgs/development/go-modules/generic/default.nix index e6373c1d50ecb..0056b27a46fbb 100644 --- a/pkgs/development/go-modules/generic/default.nix +++ b/pkgs/development/go-modules/generic/default.nix @@ -185,6 +185,16 @@ go.stdenv.mkDerivation ( done < <(find $bin/bin -type f 2>/dev/null) ''; + shellHook = '' + d=$(mktemp -d "--suffix=-$name") + '' + toString (map (dep: '' + mkdir -p "$d/src/$(dirname "${dep.goPackagePath}")" + ln -s "${dep.src}" "$d/src/${dep.goPackagePath}" + '' + ) goPath) + '' + export GOPATH="$d:$GOPATH" + ''; + disallowedReferences = lib.optional (!allowGoReference) go ++ lib.optional (!dontRenameImports) govers;