facebookarchive / nuclide

An open IDE for web and native mobile development, built on top of Atom
https://nuclide.io
Other
7.79k stars 683 forks source link

Uncaught Error: Command failed: /bin/sh -c watchman get-sockname/bin/sh: 1: watchman: not found #226

Open ghost opened 8 years ago

ghost commented 8 years ago

[Enter steps to reproduce below:]

  1. I start Atom
  2. I am greeted with two error messages: This and #224.

Atom Version: 1.0.19 System: Ubuntu 14.04.3 Thrown From: Atom Core

Stack Trace

Uncaught Error: Command failed: /bin/sh -c watchman get-sockname /bin/sh: 1: watchman: not found

At events.js:141

Error: Command failed: /bin/sh -c watchman get-sockname
/bin/sh: 1: watchman: not found

  at ChildProcess.exithandler (child_process.js:208:12)
  at emitTwo (events.js:87:13)
  at ChildProcess.emit (events.js:172:7)
  at maybeClose (internal/child_process.js:764:16)
  at Socket.<anonymous> (internal/child_process.js:319:11)
  at emitOne (events.js:77:13)
  at Socket.emit (events.js:169:7)
  at Pipe._onclose (net.js:467:12)
  at EventEmitter.ipc.sendSync (/usr/share/atom/resources/atom.asar/renderer/api/lib/ipc.js:21:31)
  at BrowserWindow.RemoteMemberFunction [as getPosition] (/usr/share/atom/resources/atom.asar/renderer/api/lib/remote.js:140:29)
  at Atom.module.exports.Atom.getWindowDimensions (/usr/share/atom/resources/app.asar/src/atom.js:555:29)
  at Atom.module.exports.Atom.storeDefaultWindowDimensions (/usr/share/atom/resources/app.asar/src/atom.js:588:25)
  at /usr/share/atom/resources/app.asar/src/window-event-handler.js:104:21
  at handler (/usr/share/atom/resources/app.asar/src/space-pen-extensions.js:115:32)
  at jQuery.event.dispatch (/usr/share/atom/resources/app.asar/node_modules/space-pen/vendor/jquery.js:4681:9)
  at elemData.handle (/usr/share/atom/resources/app.asar/node_modules/space-pen/vendor/jquery.js:4359:46)

Commands

Config

{
  "core": {
    "autoHideMenuBar": true,
    "disabledPackages": [
      "tree-view"
    ]
  },
  "editor": {
    "invisibles": {},
    "fontSize": 13,
    "softWrapAtPreferredLineLength": true,
    "softWrap": true,
    "showIndentGuide": true,
    "showInvisibles": true
  }
}

Installed Packages

# User
hyperclick, v0.0.32
language-cuda, v0.1.0
language-glsl, v2.0.1
language-hlsl, v1.2.0
language-latex, v0.6.1
language-lua, v0.9.4
language-opencl, v0.1.1
language-rust, v0.4.5
language-tmux, v0.4.0
latex, v0.28.0
latexer, v0.2.7
linter, v1.9.1
linter-csslint, v1.1.0
linter-gcc, v0.3.8
linter-htmlhint, v0.2.1
linter-lua, v1.0.0
linter-lua-findglobals, v1.0.0
linter-luacheck, v1.1.3
linter-php, v1.0.5
linter-rust, v0.2.10
linter-tidy, v1.0.1
minimap, v4.15.0
nuclide-arcanist, v0.0.32
nuclide-blame, v0.0.32
nuclide-blame-provider-hg, v0.0.32
nuclide-blame-ui, v0.0.32
nuclide-buck-files, v0.0.32
nuclide-clang-atom, v0.0.32
nuclide-code-format, v0.0.32
nuclide-debugger-atom, v0.0.32
nuclide-debugger-hhvm, v0.0.32
nuclide-debugger-lldb, v0.0.32
nuclide-diagnostics-store, v0.0.32
nuclide-diagnostics-ui, v0.0.32
nuclide-diff-view, v0.0.32
nuclide-file-tree, v0.0.32
nuclide-file-tree-deux, v0.0.32
nuclide-file-watcher, v0.0.32
nuclide-find-references, v0.0.32
nuclide-flow, v0.0.32
nuclide-fuzzy-filename-provider, v0.0.32
nuclide-hack, v0.0.32
nuclide-hack-symbol-provider, v0.0.32
nuclide-hg-repository, v0.0.32
nuclide-installer, v0.0.32
nuclide-language-hack, v0.0.32
nuclide-objc, v0.0.32
nuclide-ocaml, v0.0.32
nuclide-open-filenames-provider, v0.0.32
nuclide-quick-open, v0.0.32
nuclide-remote-projects, v0.0.32
nuclide-test-runner, v0.0.32
nuclide-toolbar, v0.0.32
nuclide-type-hint, v0.0.32
pdf-view, v0.34.0

# Dev
No dev packages

This issue was originally reported against Atom (atom/atom#9306), but closed there, as it is not caused by Atom itself.

Maybe related: I am also experiencing #224 and #225.

ssorallen commented 8 years ago

Watchman is required for watching for file system changes and for Mercurial support. Do you have that installed?

I notice now that Watchman is not listed on the setup page. I will add that to the page.

ghost commented 8 years ago

I just ran apm install nuclide-installer and I have Mercurial installed. I did not follow any other instructions.

Would it be possible to have a first-run health-check, that tells me what packages are missing (or misconfigured) on my system?

Node (and thus Atom) can install binaries, as I understand it. Would it be possible to ship Watchman with Nuclide? Otherwise: How can I configure the location of the watchman binary? (I cannot install it system-wide.)

ssorallen commented 8 years ago

Are you able to install via the instructions on Watchman's install page?

ghost commented 8 years ago

That page requests me to run sudo make install, which I cannot do here. I tried installing it with ./configure --prefix=${HOME}/.local, $HOME/.local being in my $PATH, but Nuclide did not seem to pick up the watchman binary. (I confirmed that I can call it from a terminal, outside of Atom.)