X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;ds=inline;f=README.md;h=d82893d591bb2233f1bfe0da6f084b9f8ec55f30;hb=7f0547d4e02d927e766de340152a2f75b659d889;hp=91ccfc0f061a592aa716dd09423316da12674112;hpb=936a04b591f649dbff2a65bbbd291913fc42502d;p=github%2Ffretlink%2Fpurs-loader.git diff --git a/README.md b/README.md index 91ccfc0..d82893d 100644 --- a/README.md +++ b/README.md @@ -11,9 +11,12 @@ Install with [npm](https://npmjs.org/package/purs-loader). ``` -// For PureScript 0.9 and newer +// For PureScript 0.11 and newer npm install purs-loader --save-dev +// For PureScript 0.9 and 0.10 +npm install purs-loader@purescript-0.9 --save-dev + // For PureScript 0.8 npm install purs-loader@purescript-0.8 --save-dev ``` @@ -116,3 +119,20 @@ const webpackConfig = { // ... } ``` + +#### Error `spawn ENOENT` + +This is caused when the loader tries to spawn a binary that does not exists +(`file or directory not found`). If you call webpack like `webpack` or +`webpack --watch`, then ensure that all required binaries that the +loader depends on are available in your `$PATH`. + +If you run webpack through an npm script (e.g., npm run or npm start) on NixOS, +then it will first attempt to find binaries in `node_packages/.bin`. +If you have the compiler installed through `npm` and it finds it there, this will +cause `ENOENT`on Nix, because [the binary needs to be patched first, but npm will +install the binary that is linked with /lib64/ld-linux-x86-64.so.2 - a file that +will not exist at that path in NixOS](https://github.com/ethul/purescript-webpack-example/issues/5#issuecomment-282492131). +The solution is to simply use the compiler from `haskellPackages.purescript` and +make sure that it's available in `$PATH`. For more information about how to make +it work on Nix, see [Purescript Webpack Example](https://github.com/ethul/purescript-webpack-example#using-globally-installed-binaries)