vagrant-react-webpack
vagrant-react-webpack copied to clipboard
Running vagrant up generates errors with npm.
I'm installing this for the first time and I'm seeing a fair bit of warning and then errors when I try to bring up the vagrant box. I'm running Windows 7, however I do have another vagrant box which runs just fine. Here's the output of vagrant up:
==> default: Installing Node dependencies...
==> default: /home/vagrant/.nvm/versions/node/v7.3.0/bin/webpack -> /home/vagrant/.nvm/versions/node/v7.3.0/lib/node_modules/webpack/bin/webpack.js
==> default: /home/vagrant/.nvm/versions/node/v7.3.0/lib
SNIP Directory Structure.
==> default: npm
==> default:
==> default: WARN
==> default:
==> default: optional SKIPPING OPTIONAL DEPENDENCY: fsevents@^1.0.0 (node_modules/webpack/node_modules/chokidar/node_modules/fsevents):
==> default: npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for [email protected]: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
==> default: npm
==> default:
==> default: WARN
==> default:
==> default: optional
==> default: SKIPPING OPTIONAL DEPENDENCY: fsevents@^1.0.0 (node_modules/chokidar/node_modules/fsevents):
==> default: npm
==> default:
==> default: WARN
==> default:
==> default: notsup
==> default: SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for [email protected]: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
==> default: npm
==> default:
==> default: WARN
==> default: [email protected] No repository field.
==> default: npm
==> default:
==> default: ERR!
==> default: Linux 3.13.0-105-generic
==> default: npm
==> default:
==> default: ERR!
==> default:
==> default: argv
==> default: "/home/vagrant/.nvm/versions/node/v7.3.0/bin/node" "/home/vagrant/.nvm/versions/node/v7.3.0/bin/npm" "install"
==> default: npm
==> default:
==> default: ERR!
==> default:
==> default: node
==> default: v7.3.0
==> default: npm
==> default:
==> default: ERR!
==> default:
==> default: npm
==> default: v3.10.10
==> default: npm
==> default:
==> default: ERR!
==> default:
==> default: path
==> default: ../acorn/bin/acorn
==> default: npm
==> default:
==> default: ERR!
==> default:
==> default: code
==> default: EPROTO
==> default: npm
==> default:
==> default: ERR!
==> default:
==> default: errno
==> default: -71
==> default: npm
==> default:
==> default: ERR!
==> default:
==> default: syscall
==> default: symlink
==> default: npm
==> default:
==> default: ERR!
==> default: EPROTO: protocol error, symlink '../acorn/bin/acorn' -> '/vagrant/node_modules/.bin/acorn'
==> default: npm
==> default:
==> default: ERR!
==> default:
==> default: npm
==> default:
==> default: ERR!
==> default: If you need help, you may report this error at:
==> default: npm
==> default:
==> default: ERR!
==> default: https://github.com/npm/npm/issues
==> default: npm
==> default:
==> default: ERR!
==> default: Please include the following file with any support request:
==> default: npm
==> default:
==> default: ERR!
==> default: /vagrant/npm-debug.log
==> default: npm
==> default:
==> default: ERR!
==> default: Linux 3.13.0-105-generic
==> default: npm
==> default:
==> default: ERR!
==> default:
==> default: argv
==> default: "/home/vagrant/.nvm/versions/node/v7.3.0/bin/node" "/home/vagrant/.nvm/versions/node/v7.3.0/bin/npm" "shrinkwrap" "--dev"
==> default: npm
==> default:
==> default: ERR!
==> default:
==> default: node
==> default: v7.3.0
==> default: npm
==> default:
==> default: ERR!
==> default:
==> default: npm
==> default: v3.10.10
==> default: npm
==> default:
==> default: ERR!
==> default: Problems were encountered
==> default: npm
==> default:
==> default: ERR!
==> default: Please correct and try again.
==> default: npm
==> default:
==> default: ERR!
==> default: extraneous: [email protected] /vagrant/node_modules/align-text
==> default: npm
==> default:
==> default: ERR!
==> default: extraneous: [email protected] /vagrant/node_modules/anymatch
==> default: npm
==> default:
==> default: ERR!
==> default: extraneous: [email protected] /vagrant/node_modules/assert
==> default: npm
==> default:
==> default: ERR!
==> default: extraneous: [email protected] /vagrant/node_modules/async-each
==> default: npm
==> default:
==> default: ERR!
==> default: peer invalid: webpack@1 || 2 || ^2.1.0-beta || ^2.2.0-rc, required by [email protected]
==> default: npm
==> default:
==> default: ERR!
==> default: extraneous: [email protected] /vagrant/node_modules/base64-js
==> default: npm
==> default:
==> default: ERR!
==> default: extraneous: [email protected] /vagrant/node_modules/binary-extensions
==> default: npm
==> default:
==> default: ERR!
==> default: extraneous: [email protected] /vagrant/node_modules/browserify-aes
==> default: npm
==> default:
==> default: ERR!
==> default: extraneous: [email protected] /vagrant/node_modules/browserify-zlib
==> default: npm
==> default:
==> default: ERR!
==> default: extraneous: [email protected] /vagrant/node_modules/buffer
==> default: npm
==> default:
==> default: ERR!
==> default: extraneous: [email protected] /vagrant/node_modules/builtin-status-codes
==> default: npm
==> default:
==> default: ERR!
==> default: extraneous: [email protected] /vagrant/node_modules/camelcase
==> default: npm
==> default:
==> default: ERR! extraneous: [email protected] /vagrant/node_modules/center-align
==> default: npm ERR! extraneous: [email protected] /vagrant/node_modules/chokidar
==> default: npm ERR! extraneous: [email protected] /vagrant/node_modules/cliui
==> default: npm ERR! extraneous: [email protected] /vagrant/node_modules/cliui/node_modules/wordwrap
==> default: npm ERR! extraneous: [email protected] /vagrant/node_modules/console-browserify
==> default: npm ERR! extraneous: [email protected] /vagrant/node_modules/constants-browserify
==> default: npm ERR! extraneous: [email protected] /vagrant/node_modules/crypto-browserify
==> default: npm
==> default: ERR!
==> default: extraneous: [email protected] /vagrant/node_modules/date-now
==> default: npm
==> default:
==> default: ERR!
==> default: extraneous: [email protected] /vagrant/node_modules/domain-browser
==> default: npm
==> default:
==> default: ERR!
==> default: extraneous: [email protected] /vagrant/node_modules/enhanced-resolve
==> default: npm
==> default:
==> default: ERR!
==> default: extraneous: [email protected] /vagrant/node_modules/enhanced-resolve/node_modules/memory-fs
==> default: npm
==> default:
==> default: ERR! extraneous: [email protected] /vagrant/node_modules/events
==> default: npm ERR! peer invalid: webpack@^1.9.11, required by [email protected]
==> default: npm ERR! extraneous: [email protected] /vagrant/node_modules/https-browserify
==> default: npm ERR! extraneous: [email protected] /vagrant/node_modules/ieee754
==> default: npm ERR! extraneous: [email protected] /vagrant/node_modules/indexof
==> default: npm ERR! extraneous: [email protected] /vagrant/node_modules/interpret
==> default: npm ERR! extraneous: [email protected] /vagrant/node_modules/is-binary-path
==> default: npm ERR! extraneous: [email protected] /vagrant/node_modules/lazy-cache
==> default: npm ERR! extraneous: [email protected] /vagrant/node_modules/longest
==> default: npm ERR! extraneous: [email protected] /vagrant/node_modules/memory-fs
==> default: npm ERR! extraneous: [email protected] /vagrant/node_modules/node-libs-browser
==> default: npm ERR! extraneous: [email protected] /vagrant/node_modules/os-browserify
==> default: npm ERR! extraneous: [email protected] /vagrant/node_modules/pako
==> default: npm ERR! extraneous: [email protected] /vagrant/node_modules/path-browserify
==> default: npm ERR! extraneous: [email protected] /vagrant/node_modules/pbkdf2-compat
==> default: npm ERR! extraneous: [email protected] /vagrant/node_modules/punycode
==> default: npm ERR! extraneous: [email protected] /vagrant/node_modules/querystring
==> default: npm ERR! extraneous: [email protected] /vagrant/node_modules/querystring-es3
==> default: npm ERR! extraneous: [email protected] /vagrant/node_modules/readdirp
==> default: npm ERR! extraneous: [email protected] /vagrant/node_modules/right-align
==> default: npm ERR! extraneous: [email protected] /vagrant/node_modules/ripemd160
==> default: npm ERR! extraneous: [email protected] /vagrant/node_modules/set-immediate-shim
==> default: npm ERR! extraneous: [email protected] /vagrant/node_modules/setimmediate
==> default: npm ERR! extraneous: [email protected] /vagrant/node_modules/sha.js
==> default: npm ERR! extraneous: [email protected] /vagrant/node_modules/stream-browserify
==> default: npm ERR! extraneous: [email protected] /vagrant/node_modules/stream-http
==> default: npm ERR! extraneous: [email protected] /vagrant/node_modules/tapable
==> default: npm ERR! extraneous: [email protected] /vagrant/node_modules/timers-browserify
==> default: npm ERR! extraneous: [email protected] /vagrant/node_modules/to-arraybuffer
==> default: npm ERR! extraneous: [email protected] /vagrant/node_modules/tty-browserify
==> default: npm ERR! extraneous: [email protected] /vagrant/node_modules/uglify-js
==> default: npm ERR! extraneous: [email protected] /vagrant/node_modules/uglify-js/node_modules/async
==> default: npm ERR! extraneous: [email protected] /vagrant/node_modules/uglify-to-browserify
==> default: npm ERR! extraneous: [email protected] /vagrant/node_modules/url
==> default: npm ERR! extraneous: [email protected] /vagrant/node_modules/url/node_modules/punycode
==> default: npm ERR! extraneous: [email protected] /vagrant/node_modules/vm-browserify
==> default: npm ERR! extraneous: [email protected] /vagrant/node_modules/watchpack
==> default: npm ERR! extraneous: [email protected] /vagrant/node_modules/watchpack/node_modules/async
==> default: npm ERR! extraneous: [email protected] /vagrant/node_modules/webpack-core
==> default: npm ERR! extraneous: [email protected] /vagrant/node_modules/webpack-core/node_modules/source-map
==> default: npm ERR! peer invalid: webpack@1 || ^2.1.0-beta || ^2.2.0-rc.0, required by [email protected]
==> default: npm ERR! peer invalid: webpack@>=1.3.0 <3, required by [email protected]
==> default: npm ERR! extraneous: [email protected] /vagrant/node_modules/window-size
==> default: npm ERR! extraneous: [email protected] /vagrant/node_modules/xtend
==> default: npm ERR! extraneous: [email protected] /vagrant/node_modules/yargs
==> default: npm ERR!
==> default: npm ERR! If you need help, you may report this error at:
==> default: npm ERR! https://github.com/npm/npm/issues
==> default: npm
==> default:
==> default: ERR!
==> default: Please include the following file with any support request:
==> default: npm
==> default:
==> default: ERR!
==> default: /vagrant/npm-debug.log
Any thoughts?
@dmaciasSS I had similar problems on Windows 8; out of all those error messages it spits out, the key bit is:
EPROTO: protocol error, symlink '../acorn/bin/acorn' -> '/vagrant/node_modules/.bin/acorn'
Symlinks don't work on shared folders within Windows hosts. (This seems to be a common issue, not just for npm). I resolved this by logging in to my vagrant box and rerunning the failed provisioning step with the --no-bin-links flag:
> cd /vagrant
> npm install --no-bin-links
> npm shrinkwrap --dev
I assume this solution was what caused my next problem, namely that npm start could not find webpack-dev-server. I worked around that one by manually creating a symlink somewhere in my executable search path but not in a shared folder:
> sudo ln -s /vagrant/node_modules/webpack-dev-server/bin/webpack-dev-server.js /usr/local/bin/webpack-dev-server
Now everything seems to work fine!