nix: move perl-bindings inside common function

It looks like originally not all Nix packages had perl bindings, but now
that they do, it seems pretty redundant to add them seperately for each
package.
This commit is contained in:
Alyssa Ross 2018-09-25 13:46:36 +01:00
parent db478a342c
commit 33036ac5d4
No known key found for this signature in database
GPG Key ID: C4844408C0657052

View File

@ -13,7 +13,8 @@ let
sh = busybox-sandbox-shell;
common = { name, suffix ? "", src, fromGit ? false }: stdenv.mkDerivation rec {
common = { name, suffix ? "", src, fromGit ? false }:
let nix = stdenv.mkDerivation rec {
inherit name src;
version = lib.getVersion name;
@ -109,13 +110,13 @@ let
outputsToInstall = [ "out" "man" ];
};
passthru = { inherit fromGit; };
};
passthru = {
inherit fromGit;
perl-bindings = { nix, needsBoost ? false }: stdenv.mkDerivation {
name = "nix-perl-" + nix.version;
perl-bindings = stdenv.mkDerivation {
name = "nix-perl-${version}";
inherit (nix) src;
inherit src;
postUnpack = "sourceRoot=$sourceRoot/perl";
@ -123,8 +124,8 @@ let
# but noting for future travellers.
nativeBuildInputs =
[ perl pkgconfig curl nix libsodium ]
++ lib.optionals nix.fromGit [ autoreconfHook autoconf-archive ]
++ lib.optional needsBoost boost;
++ lib.optionals fromGit [ autoreconfHook autoconf-archive ]
++ lib.optional is20 boost;
configureFlags =
[ "--with-dbi=${perlPackages.DBI}/${perl.libPrefix}"
@ -135,31 +136,31 @@ let
preBuild = "unset NIX_INDENT_MAKE";
};
};
};
in nix;
in rec {
nix = nixStable;
nix1 = (common rec {
nix1 = common rec {
name = "nix-1.11.16";
src = fetchurl {
url = "http://nixos.org/releases/nix/${name}/${name}.tar.xz";
sha256 = "0ca5782fc37d62238d13a620a7b4bff6a200bab1bd63003709249a776162357c";
};
}) // { perl-bindings = nix1; };
};
nixStable = (common rec {
nixStable = common rec {
name = "nix-2.2";
src = fetchurl {
url = "http://nixos.org/releases/nix/${name}/${name}.tar.xz";
sha256 = "63238d00d290b8a93925891fc9164439d3941e2ccc569bf7f7ca32f53c3ec0c7";
};
}) // { perl-bindings = perl-bindings {
nix = nixStable;
needsBoost = true;
}; };
};
nixUnstable = (lib.lowPrio (common rec {
nixUnstable = lib.lowPrio (common rec {
name = "nix-2.2${suffix}";
suffix = "pre6600_85488a93";
src = fetchFromGitHub {
@ -169,9 +170,6 @@ in rec {
sha256 = "1n5dp7p2lzpnj7f834d25k020v16gnnsm56jz46y87v2x7b69ccm";
};
fromGit = true;
})) // { perl-bindings = perl-bindings {
nix = nixUnstable;
needsBoost = true;
}; };
});
}