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