diff options
Diffstat (limited to 'pkgs/top-level/node-packages.nix')
-rw-r--r-- | pkgs/top-level/node-packages.nix | 27 |
1 files changed, 16 insertions, 11 deletions
diff --git a/pkgs/top-level/node-packages.nix b/pkgs/top-level/node-packages.nix index 8725ce1e9cd7..448904ce385a 100644 --- a/pkgs/top-level/node-packages.nix +++ b/pkgs/top-level/node-packages.nix @@ -1,10 +1,11 @@ -{ pkgs, stdenv, nodejs, fetchurl, neededNatives, self, generated ? ./node-packages-generated.nix }: +{ pkgs, stdenv, nodejs, fetchurl, fetchgit, neededNatives, self, generated ? ./node-packages-generated.nix }: -{ +rec { nativeDeps = { - "node-expat"."*" = [ pkgs.expat ]; - "rbytes"."*" = [ pkgs.openssl ]; - "phantomjs"."~1.9" = [ pkgs.phantomjs ]; + "node-expat" = [ pkgs.expat ]; + "rbytes" = [ pkgs.openssl ]; + "phantomjs" = [ pkgs.phantomjs ]; + "node-protobuf" = [ pkgs.protobuf ]; }; buildNodePackage = import ../development/web/nodejs/build-node-package.nix { @@ -12,15 +13,19 @@ inherit (pkgs) runCommand; }; - patchLatest = srcAttrs: - let src = fetchurl srcAttrs; in pkgs.runCommand src.name {} '' + patchSource = fn: srcAttrs: + let src = fn srcAttrs; in pkgs.runCommand src.name {} '' mkdir unpack cd unpack - tar xf ${src} + unpackFile ${src} + chmod -R +w */ mv */ package 2>/dev/null || true - sed -i -e "s/: \"latest\"/: \"*\"/" package/package.json - tar cf $out * + sed -i -e "s/:\s*\"latest\"/: \"*\"/" -e "s/:\s*\"\(https\?\|git\(\+\(ssh\|http\|https\)\)\?\):\/\/[^\"]*\"/: \"*\"/" package/package.json + mv */ $out ''; + # Backwards compat + patchLatest = patchSource fetchurl; + /* Put manual packages below here (ideally eventually managed by npm2nix */ -} // import generated { inherit self fetchurl; inherit (pkgs) lib; } +} // import generated { inherit self fetchurl fetchgit; inherit (pkgs) lib; } |