Error: EACCES: permission denied, copyfile '/nix/store/4wh8s09zfibsdpzjksy6zdzi53nklviv-node_create-elm-app-5.22.0/lib/node_modules/create-elm-app/template/README.md' -> '/tmp/xyz/README.md'
at Object.copyFileSync (fs.js:2059:3)
at copyFile (/nix/store/4wh8s09zfibsdpzjksy6zdzi53nklviv-node_create-elm-app-5.22.0/lib/node_modules/create-elm-app/node_modules/fs-extra/lib/copy-sync/copy-sync.js:68:8)
at onFile (/nix/store/4wh8s09zfibsdpzjksy6zdzi53nklviv-node_create-elm-app-5.22.0/lib/node_modules/create-elm-app/node_modules/fs-extra/lib/copy-sync/copy-sync.js:52:41)
at getStats (/nix/store/4wh8s09zfibsdpzjksy6zdzi53nklviv-node_create-elm-app-5.22.0/lib/node_modules/create-elm-app/node_modules/fs-extra/lib/copy-sync/copy-sync.js:47:39)
at startCopy (/nix/store/4wh8s09zfibsdpzjksy6zdzi53nklviv-node_create-elm-app-5.22.0/lib/node_modules/create-elm-app/node_modules/fs-extra/lib/copy-sync/copy-sync.js:37:10)
at copyDirItem (/nix/store/4wh8s09zfibsdpzjksy6zdzi53nklviv-node_create-elm-app-5.22.0/lib/node_modules/create-elm-app/node_modules/fs-extra/lib/copy-sync/copy-sync.js:134:10)
at /nix/store/4wh8s09zfibsdpzjksy6zdzi53nklviv-node_create-elm-app-5.22.0/lib/node_modules/create-elm-app/node_modules/fs-extra/lib/copy-sync/copy-sync.js:127:39
at Array.forEach ()
at copyDir (/nix/store/4wh8s09zfibsdpzjksy6zdzi53nklviv-node_create-elm-app-5.22.0/lib/node_modules/create-elm-app/node_modules/fs-extra/lib/copy-sync/copy-sync.js:127:23)
at mkDirAndCopy (/nix/store/4wh8s09zfibsdpzjksy6zdzi53nklviv-node_create-elm-app-5.22.0/lib/node_modules/create-elm-app/node_modules/fs-extra/lib/copy-sync/copy-sync.js:123:10) {
errno: -13,
syscall: 'copyfile',
code: 'EACCES',
path: '/nix/store/4wh8s09zfibsdpzjksy6zdzi53nklviv-node_create-elm-app-5.22.0/lib/node_modules/create-elm-app/template/README.md',
dest: '/tmp/xyz/README.md'
}
### Expected Behavior
<!--
How did you expect the tool to behave?
It’s fine if you’re not sure your understanding is correct.
Just write down what you thought would happen.
-->
Folder with name `xyz` will be created with stub content for new project.
### Actual Behavior
<!--
Did something go wrong?
Is something broken, or not behaving as you expected?
Please attach screenshots if possible! They are extremely helpful for diagnosing issues.
-->
*Empty* folder with read-only permissions created only.
```sh
ls -lnd xyz
dr-xr-xr-x 2 1000 1000 4096 Aug 22 22:12 xyz
(notic first octet dr-x instead of drwx)
Note that permissions of original template folder in NixOS store also read-only
dr-xr-xr-x 1 0 0 80 Jan 1 1970 /nix/store/4wh8s09zfibsdpzjksy6zdzi53nklviv-node_create-elm-app-5.22.0/lib/node_modules/create-elm-app/template/
Reproducible Demo
N/A (issue with project creation :wink: : )
This seems to an issue jprichardson/node-fs-extra#629 which was closed in Feb 2020 , but create-elm-app still uses fs-extra 6.0.1 from May 2018, apparently.
Is this a bug report?
Yes
Environment
nix shell 'nixpkgs#'nodejs --command node -v
:v14.17.0
nix shell 'nixpkgs#'nodejs --command npm -v
:6.14.13
npm ls create-elm-app -g
(if you haven’t ejected): N/A (use NixOS installation)Then, specify:
Steps to Reproduce
nix shell 'nixpkgs#'{nodejs,elmPackages.create-elm-app} --command create-elm-app xyz
Error: EACCES: permission denied, copyfile '/nix/store/4wh8s09zfibsdpzjksy6zdzi53nklviv-node_create-elm-app-5.22.0/lib/node_modules/create-elm-app/template/README.md' -> '/tmp/xyz/README.md' at Object.copyFileSync (fs.js:2059:3) at copyFile (/nix/store/4wh8s09zfibsdpzjksy6zdzi53nklviv-node_create-elm-app-5.22.0/lib/node_modules/create-elm-app/node_modules/fs-extra/lib/copy-sync/copy-sync.js:68:8) at onFile (/nix/store/4wh8s09zfibsdpzjksy6zdzi53nklviv-node_create-elm-app-5.22.0/lib/node_modules/create-elm-app/node_modules/fs-extra/lib/copy-sync/copy-sync.js:52:41) at getStats (/nix/store/4wh8s09zfibsdpzjksy6zdzi53nklviv-node_create-elm-app-5.22.0/lib/node_modules/create-elm-app/node_modules/fs-extra/lib/copy-sync/copy-sync.js:47:39) at startCopy (/nix/store/4wh8s09zfibsdpzjksy6zdzi53nklviv-node_create-elm-app-5.22.0/lib/node_modules/create-elm-app/node_modules/fs-extra/lib/copy-sync/copy-sync.js:37:10) at copyDirItem (/nix/store/4wh8s09zfibsdpzjksy6zdzi53nklviv-node_create-elm-app-5.22.0/lib/node_modules/create-elm-app/node_modules/fs-extra/lib/copy-sync/copy-sync.js:134:10) at /nix/store/4wh8s09zfibsdpzjksy6zdzi53nklviv-node_create-elm-app-5.22.0/lib/node_modules/create-elm-app/node_modules/fs-extra/lib/copy-sync/copy-sync.js:127:39 at Array.forEach ()
at copyDir (/nix/store/4wh8s09zfibsdpzjksy6zdzi53nklviv-node_create-elm-app-5.22.0/lib/node_modules/create-elm-app/node_modules/fs-extra/lib/copy-sync/copy-sync.js:127:23)
at mkDirAndCopy (/nix/store/4wh8s09zfibsdpzjksy6zdzi53nklviv-node_create-elm-app-5.22.0/lib/node_modules/create-elm-app/node_modules/fs-extra/lib/copy-sync/copy-sync.js:123:10) {
errno: -13,
syscall: 'copyfile',
code: 'EACCES',
path: '/nix/store/4wh8s09zfibsdpzjksy6zdzi53nklviv-node_create-elm-app-5.22.0/lib/node_modules/create-elm-app/template/README.md',
dest: '/tmp/xyz/README.md'
}
(notic first octet
dr-x
instead ofdrwx
)Note that permissions of original
template
folder in NixOS store also read-onlyReproducible Demo
N/A (issue with project creation :wink: : )
This seems to an issue jprichardson/node-fs-extra#629 which was closed in Feb 2020 , but
create-elm-app
still usesfs-extra
6.0.1 from May 2018, apparently.https://github.com/halfzebra/create-elm-app/blob/1a4e2ef9b2133b3ed8cb053101644bb8bc4bcd31/package.json#L44