about summary refs log tree commit diff
path: root/nixpkgs/pkgs/development/compilers/emscripten/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/development/compilers/emscripten/default.nix')
-rw-r--r--nixpkgs/pkgs/development/compilers/emscripten/default.nix10
1 files changed, 10 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/compilers/emscripten/default.nix b/nixpkgs/pkgs/development/compilers/emscripten/default.nix
index 314ca3f0d92a..010bddeb934b 100644
--- a/nixpkgs/pkgs/development/compilers/emscripten/default.nix
+++ b/nixpkgs/pkgs/development/compilers/emscripten/default.nix
@@ -2,6 +2,7 @@
 , jre, binaryen
 , llvmPackages_11
 , symlinkJoin, makeWrapper
+, mkYarnModules
 }:
 
 stdenv.mkDerivation rec {
@@ -14,6 +15,14 @@ stdenv.mkDerivation rec {
     paths = with llvmPackages_11; [ clang-unwrapped lld llvm ];
   };
 
+  nodeModules = mkYarnModules {
+    name = "emscripten-node-modules-${version}";
+    inherit pname version;
+    packageJSON = ./package.json;
+    yarnLock = ./yarn.lock;
+    yarnNix = ./yarn.nix;
+  };
+
   src = fetchFromGitHub {
     owner = "emscripten-core";
     repo = "emscripten";
@@ -51,6 +60,7 @@ stdenv.mkDerivation rec {
     mkdir -p $out/bin
     for b in em++ em-config emar embuilder.py emcc emcmake emconfigure emlink.py emmake emranlib emrun emscons; do
       makeWrapper $appdir/$b $out/bin/$b \
+        --set NODE_PATH ${nodeModules}/node_modules \
         --set PYTHON ${python3}/bin/python
     done
   '';