buildGoPackage: remove Go deps file libs.json

After #16017 there were a lot
of comments saying that `nix` would be better than `JSON`
for Go packages dependency sets.
As said in https://github.com/NixOS/nixpkgs/pull/16017#issuecomment-229624046

    > Because of the content-addressable store, if two programs have the
    > same dependency it will already result in the same derivation in
    > the
    > store. Git also has compression in the pack files so it won't make
    > much difference to duplicate the dependencies on disk. And finally
    > most users will just use the binary builds so it won't make any
    > differences to them.

This PR removes `libs.json` file and puts all package dependencies in
theirs `deps.json`.
This commit is contained in:
Kamil Chmielewski
2016-08-11 23:07:09 +02:00
parent e26ac7afd4
commit da3ddd48e4
52 changed files with 2974 additions and 2431 deletions

View File

@@ -55,13 +55,8 @@ let
else abort "Unrecognized package fetch type";
};
importGodeps = { depsFile, filterPackages ? [] }:
let
deps = lib.importJSON depsFile;
external = filter (d: d ? include) deps;
direct = filter (d: d ? goPackagePath && (length filterPackages == 0 || elem d.goPackagePath filterPackages)) deps;
in
concatLists (map importGodeps (map (d: { depsFile = ./. + d.include; filterPackages = d.packages; }) external)) ++ (map dep2src direct);
importGodeps = { depsFile }:
map dep2src (lib.importJSON depsFile);
goPath = if goDeps != null then importGodeps { depsFile = goDeps; } ++ extraSrcs
else extraSrcs;

File diff suppressed because it is too large Load Diff