keybase / keybase/keybase-issues

Keybase installation instructions are wrong/incomplete, and installation fails (OS X 10.10.1)

Open
#1,288 3 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
No language data
Stars
899
Forks
40
PR merge metrics
No merged PRs in 30d

Description

Hi

I would like to raise some issues with the installation instructions. I understand that this is not even a beta, but an alpha, but nevertheless I followed these instructions to install it on my system (OS X 10.10.1) to try it out, but failed at the first hurdle:

srm@localhost:~$ node
> npm install -g keybase-installer
npm should be run outside of the node repl, in your normal shell.
(Press Control-D to exit.)

I didn't realise that although I had installed Node.js (using Macports) I did not install npm (Javascript package manager), which seems to be a prerequisite for installing keybase-installer, but is not listed as such on the Prerequisites page. It appears npm includes Node.js anyway. I have never used Node.js and knew nothing about npm prior to this.

So the issues I am raising (in relation to the installation instructions, which are clearly wrong) are as follows.

  1. The user should be asked to download and install npm first (via Macports or directly from https://www.npmjs.com/, it shouldn't make any difference I think). This will automatically install the latest version of Node.js (v. 0.10.35) - I have checked that this is the case.
  2. Then the user should be asked to install the "keybase-installer" via npm using sudo (otherwise it fails, because it needs su access to make directories in /usr/bin/lib/ etc.).
  3. I think you have a naming issue, which makes it hard to understand the keybase architecture - you have an installer for keybase which is referred to in your repo as the node-installer for the node client [?] , and you have keybase itself which is referred to as the node client / terminal client for keybase.

In my case the keybase-installer installation fails, just after the unpacking stage it appears - here is my bash session output

srm@localhost:~$ sudo npm install -g keybase-installer
Password:
/usr/local/bin/keybase-installer -> /usr/local/lib/node_modules/keybase-installer/bin/main.js
keybase-installer@1.0.1 /usr/local/lib/node_modules/keybase-installer
srm@localhost:~$ keybase-installer
info: Made temporary directory: /var/folders/md/qy7y7r3d2zn7wfmcpvc2mtk80000gn/T/keybase_install_7kfhuv7CkdVeukhD-QbV2g
info: Creating permanent keyring dir: /Users/srm/.keybase-installer/keyring
warn: No code-signing key (code@keybase.io) in GPG keychain
info: Fetching URL https://dist.keybase.io/sig/files/1/keyset.json
info: Installing keyset version 1
info: Using keyset version v1
info: Fetching URL https://dist.keybase.io/sig/files/1/index.asc
info: Fetching URL https://dist.keybase.io/pkg/stable
Download /pkg/files/keybase-0.7.3.tgz [=================================================] 100% 0.0s (3594189 bytes total)
info: Fetching URL https://dist.keybase.io/sig/files/1/keybase-0.7.3.tgz.asc
info: verified signature of keybase-0.7.3.tgz against keybase-0.7.3.tgz.asc
info: Running npm install keybase-0.7.3.tgz: this may take a minute, please be patient
npm ERR! Error: EACCES, mkdir '/usr/local/lib/node_modules/keybase'
npm ERR!  { [Error: EACCES, mkdir '/usr/local/lib/node_modules/keybase']
npm ERR!   errno: 3,
npm ERR!   code: 'EACCES',
npm ERR!   path: '/usr/local/lib/node_modules/keybase',
npm ERR!   fstream_type: 'Directory',
npm ERR!   fstream_path: '/usr/local/lib/node_modules/keybase',
npm ERR!   fstream_class: 'DirWriter',
npm ERR!   fstream_stack: 
npm ERR!    [ '/usr/local/lib/node_modules/npm/node_modules/fstream/lib/dir-writer.js:36:23',
npm ERR!      '/usr/local/lib/node_modules/npm/node_modules/mkdirp/index.js:46:53',
npm ERR!      'Object.oncomplete (fs.js:108:15)' ] }
npm ERR!
npm ERR! Please try running this command again as root/Administrator.

npm ERR! System Darwin 14.0.0
npm ERR! command "node" "/usr/local/bin/npm" "install" "-g" "/var/folders    /md/qy7y7r3d2zn7wfmcpvc2mtk80000gn/T/keybase_install_7kfhuv7CkdVeukhD-QbV2g/keybase-0.7.3.tgz"
npm ERR! cwd /Users/srm
npm ERR! node -v v0.10.35
npm ERR! npm -v 1.4.28
npm ERR! path /usr/local/lib/node_modules/keybase
npm ERR! fstream_path /usr/local/lib/node_modules/keybase
npm ERR! fstream_type Directory
npm ERR! fstream_class DirWriter
npm ERR! code EACCES
npm ERR! errno 3
npm ERR! stack Error: EACCES, mkdir '/usr/local/lib/node_modules/keybase'
npm ERR! fstream_stack /usr/local/lib/node_modules/npm/node_modules/fstream/lib/dir-writer.js:36:23
npm ERR! fstream_stack /usr/local/lib/node_modules/npm/node_modules/mkdirp/index.js:46:53
npm ERR! fstream_stack Object.oncomplete (fs.js:108:15)
npm ERR! 
npm ERR! Additional logging details can be found in:
npm ERR!     /Users/srm/npm-debug.log
npm ERR! not ok code 0
info: cleaning up tmpdir /var/folders/md/qy7y7r3d2zn7wfmcpvc2mtk80000gn    /T/keybase_install_7kfhuv7CkdVeukhD-QbV2g
error: exit code 3

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Review the command-line installation and prerequisites pages linked in the issue, then compare their Node.js/npm steps with the reported macOS session. Check the keybase-installer flow around the npm EACCES failure and naming confusion; done means the prerequisites, installation commands, and installer terminology accurately describe a working path or its required permissions.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript, node.js
Domain
cli, documentation
Issue type
Documentation
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.