Make the function to import npm2nix-generated packages accessible outside of node-packages.nix
Signed-off-by: Shea Levy <shea@shealevy.com>
This commit is contained in:
parent
2b1eff8e17
commit
8e724713c6
@ -1,13 +1,15 @@
|
|||||||
{ pkgs, stdenv, nodejs, fetchurl, neededNatives }:
|
{ pkgs, stdenv, nodejs, fetchurl, neededNatives }:
|
||||||
|
|
||||||
let
|
let
|
||||||
generated = builtins.listToAttrs (pkgs.lib.fold (pkg: pairs:
|
inherit (self) buildNodePackage patchLatest;
|
||||||
|
|
||||||
|
importGeneratedPackages = generated: nativeDeps: self: builtins.listToAttrs (pkgs.lib.fold (pkg: pairs:
|
||||||
(pkgs.lib.optional pkg.topLevel { name = pkg.baseName; value = builtins.getAttr pkg.fullName self; }) ++ [
|
(pkgs.lib.optional pkg.topLevel { name = pkg.baseName; value = builtins.getAttr pkg.fullName self; }) ++ [
|
||||||
{
|
{
|
||||||
name = pkg.fullName;
|
name = pkg.fullName;
|
||||||
value = self.buildNodePackage rec {
|
value = buildNodePackage rec {
|
||||||
name = "${pkg.baseName}-${pkg.version}";
|
name = "${pkg.baseName}-${pkg.version}";
|
||||||
src = (if pkg.patchLatest then self.patchLatest else fetchurl) {
|
src = (if pkg.patchLatest then patchLatest else fetchurl) {
|
||||||
url = "http://registry.npmjs.org/${pkg.baseName}/-/${name}.tgz";
|
url = "http://registry.npmjs.org/${pkg.baseName}/-/${name}.tgz";
|
||||||
sha256 = pkg.hash;
|
sha256 = pkg.hash;
|
||||||
};
|
};
|
||||||
@ -16,14 +18,16 @@ let
|
|||||||
};
|
};
|
||||||
}
|
}
|
||||||
] ++ pairs
|
] ++ pairs
|
||||||
) [] (import ./node-packages-generated.nix));
|
) [] generated);
|
||||||
|
|
||||||
nativeDeps = {
|
|
||||||
"node-expat-*" = [ pkgs.expat ];
|
|
||||||
"rbytes-0.0.2" = [ pkgs.openssl ];
|
|
||||||
};
|
|
||||||
|
|
||||||
self = {
|
self = {
|
||||||
|
inherit importGeneratedPackages;
|
||||||
|
|
||||||
|
nativeDeps = {
|
||||||
|
"node-expat-*" = [ pkgs.expat ];
|
||||||
|
"rbytes-0.0.2" = [ pkgs.openssl ];
|
||||||
|
};
|
||||||
|
|
||||||
buildNodePackage = import ../development/web/nodejs/build-node-package.nix {
|
buildNodePackage = import ../development/web/nodejs/build-node-package.nix {
|
||||||
inherit stdenv nodejs neededNatives;
|
inherit stdenv nodejs neededNatives;
|
||||||
inherit (pkgs) runCommand;
|
inherit (pkgs) runCommand;
|
||||||
@ -40,5 +44,5 @@ let
|
|||||||
'';
|
'';
|
||||||
|
|
||||||
/* Put manual packages below here (ideally eventually managed by npm2nix */
|
/* Put manual packages below here (ideally eventually managed by npm2nix */
|
||||||
} // generated;
|
} // importGeneratedPackages (import ./node-packages-generated.nix) self.nativeDeps self;
|
||||||
in self
|
in self
|
||||||
|
Loading…
x
Reference in New Issue
Block a user