grover / homebridge-dacp

Remotely control Apple TV and iTunes via HomeKit.
MIT License
153 stars 15 forks source link

Error: The requested platform 'DACP' was not registered by any plugin. #12

Closed aporzio1 closed 6 years ago

aporzio1 commented 6 years ago

When I try to run homebridge I get the following error,

Error: The requested platform 'DACP' was not registered by any plugin.

I have installed dacp through npm and added it to my config but I can not figure out why I am getting this error.

I am on node 9.4.0

toshibochan commented 6 years ago

What is your config.json?

grover commented 6 years ago

Also please post the full homebridge startup log. Thanks.

TommyCardello commented 6 years ago

I have the same issue. I've just installed your plugin on macOS. Successfully. But I get the same error while installing it on Raspberry Pi.

I have inserted only part which affects your plugin because remaining config works well without homebridge-DACP.

Node.js Latest stable 8.9.4

[2018-1-16 19:04:05] Loaded config.json with 5 accessories and 3 platforms.
[2018-1-16 19:04:05] ---
[2018-1-16 19:04:05] Loading 3 platforms...
[2018-1-16 19:04:06] [YamahaAVR] Initializing YamahaAVR platform...
[2018-1-16 19:04:06] [YamahaAVR] Getting Yamaha AVR devices.
/usr/lib/node_modules/homebridge/lib/api.js:122
      throw new Error("The requested platform '" + name + "' was not registered by any plugin.");
      ^

Error: The requested platform 'DACP' was not registered by any plugin.
    at API.platform (/usr/lib/node_modules/homebridge/lib/api.js:122:13)
    at Server._loadPlatforms (/usr/lib/node_modules/homebridge/lib/server.js:294:45)
    at Server.run (/usr/lib/node_modules/homebridge/lib/server.js:85:36)
    at module.exports (/usr/lib/node_modules/homebridge/lib/cli.js:40:10)
    at Object.<anonymous> (/usr/lib/node_modules/homebridge/bin/homebridge:17:22)
    at Module._compile (module.js:643:30)
    at Object.Module._extensions..js (module.js:654:10)
    at Module.load (module.js:556:32)
    at tryModuleLoad (module.js:499:12)
    at Function.Module._load (module.js:491:3)
    at Function.Module.runMain (module.js:684:10)
    at startup (bootstrap_node.js:187:16)
    at bootstrap_node.js:608:3

Config.json `

 "platforms": [
{
  "platform": "YamahaAVR",
  "min_volume" : -65,
  "max_volume" : -10,
  "setMainInputTo": "HDMI1",
  "zones_as_accessories": {
    "YAMAHA_AV": {
      "1": {
        "name": "Main"
      },
      "2": {
        "name": "Zone2"
      }

    }
  }
},
{
    "platform": "DACP",
    "devices": [
      {
        "name": "Apple TV Music"
      }
    ]
  },

`

TommyCardello commented 6 years ago

Okay, I have no idea what exactly I have done but it works now.

I tried to update versions of Node, NPM, Homebridge. Also, I have reinstalled your plugin couple times. Make sure you install it globally.

Probably my answer is not very helpful, but it works now. Thanks!

aporzio1 commented 6 years ago

config.json

{
    "bridge": {
        "name": "Homebridge",
        "username": "CC:22:3D:E3:CE:30",
        "port": 51826,
        "pin": "031-45-154"
    },

    "description": "This is an example configuration file with one fake accessory and one fake platform. You can use this as a template for creating your own conf$

    "accessories": [
        {
        }
    ],

    "platforms": [
        {
                  "platform": "homebridge-dacp",
                  "devices": [
                              {
                              "name": "New Remote Control"
        }
    ]
}
                  ]
                  } 

Startup from Homebridge

root@Homebridge:~# homebridge
*** WARNING *** The program 'node' uses the Apple Bonjour compatibility layer of Avahi.
*** WARNING *** Please fix your application to use the native API of Avahi!
*** WARNING *** For more information see <http://0pointer.de/avahi-compat?s=libdns_sd&e=node>
*** WARNING *** The program 'node' called 'DNSServiceRegister()' which is not supported (or only supported partially) in the Apple Bonjour compatibility layer of Avahi.
*** WARNING *** Please fix your application to use the native API of Avahi!
*** WARNING *** For more information see <http://0pointer.de/avahi-compat?s=libdns_sd&e=node&f=DNSServiceRegister>
[2018-1-17 05:57:34] No plugins found. See the README for information on installing plugins.
[2018-1-17 05:57:34] Loaded config.json with 1 accessories and 1 platforms.
[2018-1-17 05:57:34] ---
[2018-1-17 05:57:34] Loading 1 platforms...
/usr/lib/node_modules/homebridge/lib/api.js:122
      throw new Error("The requested platform '" + name + "' was not registered by any plugin.");
      ^

Error: The requested platform 'homebridge-dacp' was not registered by any plugin.
    at API.platform (/usr/lib/node_modules/homebridge/lib/api.js:122:13)
    at Server._loadPlatforms (/usr/lib/node_modules/homebridge/lib/server.js:294:45)
    at Server.run (/usr/lib/node_modules/homebridge/lib/server.js:85:36)
    at module.exports (/usr/lib/node_modules/homebridge/lib/cli.js:40:10)
    at Object.<anonymous> (/usr/lib/node_modules/homebridge/bin/homebridge:17:22)
    at Module._compile (module.js:660:30)
    at Object.Module._extensions..js (module.js:671:10)
    at Module.load (module.js:573:32)
    at tryModuleLoad (module.js:513:12)
    at Function.Module._load (module.js:505:3)
grover commented 6 years ago

Hi @aporzio1,

This line:

[2018-1-17 05:57:34] No plugins found.

says that you didn’t install homebridge-dacp properly. Please make sure to install it globally with:

npm install -g homebridge-dacp

You might need sudo for that to succeed.

aporzio1 commented 6 years ago

I have removed and installed multiple times with that. Still no luck. It even shows as installed by npm

On Jan 17, 2018, at 2:44 AM, Michael Fröhlich notifications@github.com wrote:

Hi @aporzio1,

This line:

[2018-1-17 05:57:34] No plugins found.

says that you didn’t install homebridge-dacp properly. Please make sure to install it globally with:

npm install -g homebridge-dacp

You might need sudo for that to succeed.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or mute the thread.

aporzio1 commented 6 years ago
screen shot 2018-01-17 at 8 46 27 am
grover commented 6 years ago

Please try npm list -g

npm list without -g and npm install without -g only shows the local node_modules cache. This is not a question of root or not. It really is a question of the node modules location.

Please run the following (seperate commands on seperate lines)

which node
npm list -g

and post the output here. Thanks.

aporzio1 commented 6 years ago

which node /usr/bin/node

npm list -g

/usr/lib
+-- homebridge@0.4.36
| +-- chalk@1.1.3
| | +-- ansi-styles@2.2.1
| | +-- escape-string-regexp@1.0.5
| | +-- has-ansi@2.0.0
| | | `-- ansi-regex@2.1.1
| | +-- strip-ansi@3.0.1
| | | `-- ansi-regex@2.1.1 deduped
| | `-- supports-color@2.0.0
| +-- commander@2.8.1
| | `-- graceful-readlink@1.0.1
| +-- hap-nodejs@0.4.39
| | +-- buffer-shims@1.0.0
| | +-- curve25519-n2@1.1.3
| | | +-- bindings@1.2.1
| | | `-- nan@2.8.0
| | +-- debug@2.6.9
| | | `-- ms@2.0.0
| | +-- decimal.js@7.5.1
| | +-- ed25519@0.0.4
| | | +-- bindings@1.2.1 deduped
| | | `-- nan@2.8.0 deduped
| | +-- fast-srp-hap@1.0.1
| | +-- ip@1.1.5
| | +-- mdns@2.3.4
| | | +-- bindings@1.2.1 deduped
| | | `-- nan@2.3.5
| | `-- node-persist@0.0.11
| |   +-- mkdirp@0.5.1
| |   | `-- minimist@0.0.8
| |   `-- q@1.1.2 deduped
| +-- node-persist@0.0.8
| | +-- mkdirp@0.3.5
| | `-- q@1.1.2
| +-- qrcode-terminal@0.11.0
| `-- semver@5.0.3
+-- homebridge-dacp@0.7.6
| +-- backoff@2.5.0
| | `-- precond@0.2.3
| +-- mdns@2.3.4
| | +-- bindings@1.2.1
| | `-- nan@2.3.5
| +-- moment@2.20.1
| `-- request@2.83.0
|   +-- aws-sign2@0.7.0
|   +-- aws4@1.6.0
|   +-- caseless@0.12.0
|   +-- combined-stream@1.0.5
|   | `-- delayed-stream@1.0.0
|   +-- extend@3.0.1
|   +-- forever-agent@0.6.1
|   +-- form-data@2.3.1
|   | +-- asynckit@0.4.0
|   | +-- combined-stream@1.0.5 deduped
|   | `-- mime-types@2.1.17 deduped
|   +-- har-validator@5.0.3
|   | +-- ajv@5.5.2
|   | | +-- co@4.6.0
|   | | +-- fast-deep-equal@1.0.0
|   | | +-- fast-json-stable-stringify@2.0.0
|   | | `-- json-schema-traverse@0.3.1
|   | `-- har-schema@2.0.0
|   +-- hawk@6.0.2
|   | +-- boom@4.3.1
|   | | `-- hoek@4.2.0 deduped
|   | +-- cryptiles@3.1.2
|   | | `-- boom@5.2.0
|   | |   `-- hoek@4.2.0 deduped
|   | +-- hoek@4.2.0
|   | `-- sntp@2.1.0
|   |   `-- hoek@4.2.0 deduped
|   +-- http-signature@1.2.0
|   | +-- assert-plus@1.0.0
|   | +-- jsprim@1.4.1
|   | | +-- assert-plus@1.0.0 deduped
|   | | +-- extsprintf@1.3.0
|   | | +-- json-schema@0.2.3
|   | | `-- verror@1.10.0
|   | |   +-- assert-plus@1.0.0 deduped
|   | |   +-- core-util-is@1.0.2
|   | |   `-- extsprintf@1.3.0 deduped
|   | `-- sshpk@1.13.1
|   |   +-- asn1@0.2.3
|   |   +-- assert-plus@1.0.0 deduped
|   |   +-- bcrypt-pbkdf@1.0.1
|   |   | `-- tweetnacl@0.14.5 deduped
|   |   +-- dashdash@1.14.1
|   |   | `-- assert-plus@1.0.0 deduped
|   |   +-- ecc-jsbn@0.1.1
|   |   | `-- jsbn@0.1.1 deduped
|   |   +-- getpass@0.1.7
|   |   | `-- assert-plus@1.0.0 deduped
|   |   +-- jsbn@0.1.1
|   |   `-- tweetnacl@0.14.5
|   +-- is-typedarray@1.0.0
|   +-- isstream@0.1.2
|   +-- json-stringify-safe@5.0.1
|   +-- mime-types@2.1.17
|   | `-- mime-db@1.30.0
|   +-- oauth-sign@0.8.2
|   +-- performance-now@2.1.0
|   +-- qs@6.5.1
|   +-- safe-buffer@5.1.1
|   +-- stringstream@0.0.5
|   +-- tough-cookie@2.3.3
|   | `-- punycode@1.4.1
|   +-- tunnel-agent@0.6.0
|   | `-- safe-buffer@5.1.1 deduped
|   `-- uuid@3.2.1
`-- npm@5.6.0
  +-- abbrev@1.1.1
  +-- ansi-regex@3.0.0
  +-- ansicolors@0.3.2
  +-- ansistyles@0.1.3
  +-- aproba@1.2.0
  +-- archy@1.0.0
  +-- bin-links@1.1.0
  | +-- bluebird@3.5.1 deduped
  | +-- cmd-shim@2.0.2 deduped
  | +-- fs-write-stream-atomic@1.0.10 deduped
  | +-- gentle-fs@2.0.1 deduped
  | +-- graceful-fs@4.1.11 deduped
  | `-- slide@1.1.6 deduped
  +-- bluebird@3.5.1
  +-- cacache@10.0.1
  | +-- bluebird@3.5.1 deduped
  | +-- chownr@1.0.1 deduped
  | +-- glob@7.1.2 deduped
  | +-- graceful-fs@4.1.11 deduped
  | +-- lru-cache@4.1.1 deduped
  | +-- mississippi@1.3.0 deduped
  | +-- mkdirp@0.5.1 deduped
  | +-- move-concurrently@1.0.1 deduped
  | +-- promise-inflight@1.0.1 deduped
  | +-- rimraf@2.6.2 deduped
  | +-- ssri@5.0.0
  | | `-- safe-buffer@5.1.1 deduped
  | +-- unique-filename@1.1.0 deduped
  | `-- y18n@3.2.1
  +-- call-limit@1.1.0
  +-- chownr@1.0.1
  +-- cli-table2@0.2.0
  | +-- colors@1.1.2
  | +-- lodash@3.10.1
  | `-- string-width@1.0.2
  |   +-- code-point-at@1.1.0
  |   +-- is-fullwidth-code-point@1.0.0
  |   | `-- number-is-nan@1.0.1
  |   `-- strip-ansi@3.0.1
  |     `-- ansi-regex@2.1.1
  +-- cmd-shim@2.0.2
  | +-- graceful-fs@4.1.11 deduped
  | `-- mkdirp@0.5.1 deduped
  +-- columnify@1.5.4
  | +-- strip-ansi@3.0.1
  | | `-- ansi-regex@2.1.1
  | `-- wcwidth@1.0.1
  |   `-- defaults@1.0.3
  |     `-- clone@1.0.2
  +-- config-chain@1.1.11
  | +-- ini@1.3.4 deduped
  | `-- proto-list@1.2.4
  +-- debuglog@1.0.1
  +-- detect-indent@5.0.0
  +-- dezalgo@1.0.3
  | +-- asap@2.0.5
  | `-- wrappy@1.0.2 deduped
  +-- editor@1.0.0
  +-- find-npm-prefix@1.0.1
  +-- fs-vacuum@1.2.10
  | +-- graceful-fs@4.1.11 deduped
  | +-- path-is-inside@1.0.2 deduped
  | `-- rimraf@2.6.2 deduped
  +-- fs-write-stream-atomic@1.0.10
  | +-- graceful-fs@4.1.11 deduped
  | +-- iferr@0.1.5 deduped
  | +-- imurmurhash@0.1.4 deduped
  | `-- readable-stream@2.3.3 deduped
  +-- gentle-fs@2.0.1
  | +-- aproba@1.2.0 deduped
  | +-- fs-vacuum@1.2.10 deduped
  | +-- graceful-fs@4.1.11 deduped
  | +-- iferr@0.1.5 deduped
  | +-- mkdirp@0.5.1 deduped
  | +-- path-is-inside@1.0.2 deduped
  | +-- read-cmd-shim@1.0.1 deduped
  | `-- slide@1.1.6 deduped
  +-- glob@7.1.2
  | +-- fs.realpath@1.0.0
  | +-- inflight@1.0.6 deduped
  | +-- inherits@2.0.3 deduped
  | +-- minimatch@3.0.4
  | | `-- brace-expansion@1.1.8
  | |   +-- balanced-match@1.0.0
  | |   `-- concat-map@0.0.1
  | +-- once@1.4.0 deduped
  | `-- path-is-absolute@1.0.1
  +-- graceful-fs@4.1.11
  +-- has-unicode@2.0.1
  +-- hosted-git-info@2.5.0
  +-- iferr@0.1.5
  +-- imurmurhash@0.1.4
  +-- inflight@1.0.6
  | +-- once@1.4.0 deduped
  | `-- wrappy@1.0.2 deduped
  +-- inherits@2.0.3
  +-- ini@1.3.4
  +-- init-package-json@1.10.1
  | +-- glob@7.1.2 deduped
  | +-- npm-package-arg@5.1.2
  | | +-- hosted-git-info@2.5.0 deduped
  | | +-- osenv@0.1.4 deduped
  | | +-- semver@5.4.1 deduped
  | | `-- validate-npm-package-name@3.0.0 deduped
  | +-- promzard@0.3.0
  | | `-- read@1.0.7 deduped
  | +-- read@1.0.7 deduped
  | +-- read-package-json@2.0.12 deduped
  | +-- semver@5.4.1 deduped
  | +-- validate-npm-package-license@3.0.1 deduped
  | `-- validate-npm-package-name@3.0.0 deduped
  +-- is-cidr@1.0.0
  | `-- cidr-regex@1.0.6
  +-- JSONStream@1.3.1
  | +-- jsonparse@1.3.1
  | `-- through@2.3.8
  +-- lazy-property@1.0.0
  +-- libnpx@9.7.1
  | +-- dotenv@4.0.0
  | +-- npm-package-arg@5.1.2
  | | +-- hosted-git-info@2.5.0 deduped
  | | +-- osenv@0.1.4 deduped
  | | +-- semver@5.4.1 deduped
  | | `-- validate-npm-package-name@3.0.0 deduped
  | +-- rimraf@2.6.2 deduped
  | +-- safe-buffer@5.1.1 deduped
  | +-- update-notifier@2.3.0 deduped
  | +-- which@1.3.0 deduped
  | +-- y18n@3.2.1
  | `-- yargs@8.0.2
  |   +-- camelcase@4.1.0
  |   +-- cliui@3.2.0
  |   | +-- string-width@1.0.2
  |   | | +-- code-point-at@1.1.0
  |   | | +-- is-fullwidth-code-point@1.0.0
  |   | | | `-- number-is-nan@1.0.1
  |   | | `-- strip-ansi@3.0.1 deduped
  |   | +-- strip-ansi@3.0.1
  |   | | `-- ansi-regex@2.1.1
  |   | `-- wrap-ansi@2.1.0
  |   |   +-- string-width@1.0.2 deduped
  |   |   `-- strip-ansi@3.0.1 deduped
  |   +-- decamelize@1.2.0
  |   +-- get-caller-file@1.0.2
  |   +-- os-locale@2.1.0
  |   | +-- execa@0.7.0
  |   | | +-- cross-spawn@5.1.0
  |   | | | +-- lru-cache@4.1.1 deduped
  |   | | | +-- shebang-command@1.2.0
  |   | | | | `-- shebang-regex@1.0.0
  |   | | | `-- which@1.3.0 deduped
  |   | | +-- get-stream@3.0.0
  |   | | +-- is-stream@1.1.0
  |   | | +-- npm-run-path@2.0.2
  |   | | | `-- path-key@2.0.1
  |   | | +-- p-finally@1.0.0
  |   | | +-- signal-exit@3.0.2
  |   | | `-- strip-eof@1.0.0
  |   | +-- lcid@1.0.0
  |   | | `-- invert-kv@1.0.0
  |   | `-- mem@1.1.0
  |   |   `-- mimic-fn@1.1.0
  |   +-- read-pkg-up@2.0.0
  |   | +-- find-up@2.1.0
  |   | | `-- locate-path@2.0.0
  |   | |   +-- p-locate@2.0.0
  |   | |   | `-- p-limit@1.1.0
  |   | |   `-- path-exists@3.0.0
  |   | `-- read-pkg@2.0.0
  |   |   +-- load-json-file@2.0.0
  |   |   | +-- graceful-fs@4.1.11 deduped
  |   |   | +-- parse-json@2.2.0
  |   |   | | `-- error-ex@1.3.1
  |   |   | |   `-- is-arrayish@0.2.1
  |   |   | +-- pify@2.3.0
  |   |   | `-- strip-bom@3.0.0
  |   |   +-- normalize-package-data@2.4.0 deduped
  |   |   `-- path-type@2.0.0
  |   |     `-- pify@2.3.0
  |   +-- require-directory@2.1.1
  |   +-- require-main-filename@1.0.1
  |   +-- set-blocking@2.0.0
  |   +-- string-width@2.1.1
  |   | +-- is-fullwidth-code-point@2.0.0
  |   | `-- strip-ansi@4.0.0 deduped
  |   +-- which-module@2.0.0
  |   +-- y18n@3.2.1 deduped
  |   `-- yargs-parser@7.0.0
  |     `-- camelcase@4.1.0 deduped
  +-- lockfile@1.0.3
  +-- lodash._baseindexof@3.1.0
  +-- lodash._baseuniq@4.6.0
  | +-- lodash._createset@4.0.3
  | `-- lodash._root@3.0.1
  +-- lodash._bindcallback@3.0.1
  +-- lodash._cacheindexof@3.0.2
  +-- lodash._createcache@3.1.2
  | `-- lodash._getnative@3.9.1 deduped
  +-- lodash._getnative@3.9.1
  +-- lodash.clonedeep@4.5.0
  +-- lodash.restparam@3.6.1
  +-- lodash.union@4.6.0
  +-- lodash.uniq@4.5.0
  +-- lodash.without@4.4.0
  +-- lru-cache@4.1.1
  | +-- pseudomap@1.0.2
  | `-- yallist@2.1.2
  +-- meant@1.0.1
  +-- mississippi@1.3.0
  | +-- concat-stream@1.6.0
  | | +-- inherits@2.0.3 deduped
  | | +-- readable-stream@2.3.3 deduped
  | | `-- typedarray@0.0.6
  | +-- duplexify@3.5.0
  | | +-- end-of-stream@1.0.0
  | | | `-- once@1.3.3
  | | |   `-- wrappy@1.0.2 deduped
  | | +-- inherits@2.0.3 deduped
  | | +-- readable-stream@2.3.3 deduped
  | | `-- stream-shift@1.0.0
  | +-- end-of-stream@1.4.0
  | | `-- once@1.4.0 deduped
  | +-- flush-write-stream@1.0.2
  | | +-- inherits@2.0.3 deduped
  | | `-- readable-stream@2.3.3 deduped
  | +-- from2@2.3.0
  | | +-- inherits@2.0.3 deduped
  | | `-- readable-stream@2.3.3 deduped
  | +-- parallel-transform@1.1.0
  | | +-- cyclist@0.2.2
  | | +-- inherits@2.0.3 deduped
  | | `-- readable-stream@2.3.3 deduped
  | +-- pump@1.0.2
  | | +-- end-of-stream@1.4.0 deduped
  | | `-- once@1.4.0 deduped
  | +-- pumpify@1.3.5
  | | +-- duplexify@3.5.0 deduped
  | | +-- inherits@2.0.3 deduped
  | | `-- pump@1.0.2 deduped
  | +-- stream-each@1.2.0
  | | +-- end-of-stream@1.4.0 deduped
  | | `-- stream-shift@1.0.0
  | `-- through2@2.0.3
  |   +-- readable-stream@2.3.3 deduped
  |   `-- xtend@4.0.1
  +-- mkdirp@0.5.1
  | `-- minimist@0.0.8
  +-- move-concurrently@1.0.1
  | +-- aproba@1.2.0 deduped
  | +-- copy-concurrently@1.0.5
  | | +-- aproba@1.2.0 deduped
  | | +-- fs-write-stream-atomic@1.0.10 deduped
  | | +-- iferr@0.1.5 deduped
  | | +-- mkdirp@0.5.1 deduped
  | | +-- rimraf@2.6.2 deduped
  | | `-- run-queue@1.0.3 deduped
  | +-- fs-write-stream-atomic@1.0.10 deduped
  | +-- mkdirp@0.5.1 deduped
  | +-- rimraf@2.6.2 deduped
  | `-- run-queue@1.0.3
  |   `-- aproba@1.2.0 deduped
  +-- nopt@4.0.1
  | +-- abbrev@1.1.1 deduped
  | `-- osenv@0.1.4 deduped
  +-- normalize-package-data@2.4.0
  | +-- hosted-git-info@2.5.0 deduped
  | +-- is-builtin-module@1.0.0
  | | `-- builtin-modules@1.1.1
  | +-- semver@5.4.1 deduped
  | `-- validate-npm-package-license@3.0.1 deduped
  +-- npm-cache-filename@1.0.2
  +-- npm-install-checks@3.0.0
  | `-- semver@5.4.1 deduped
  +-- npm-lifecycle@2.0.0
  | +-- byline@5.0.0
  | +-- graceful-fs@4.1.11 deduped
  | +-- node-gyp@3.6.2
  | | +-- fstream@1.0.11
  | | | +-- graceful-fs@4.1.11 deduped
  | | | +-- inherits@2.0.3 deduped
  | | | +-- mkdirp@0.5.1 deduped
  | | | `-- rimraf@2.6.2 deduped
  | | +-- glob@7.1.2 deduped
  | | +-- graceful-fs@4.1.11 deduped
  | | +-- minimatch@3.0.4
  | | | `-- brace-expansion@1.1.8
  | | |   +-- balanced-match@1.0.0
  | | |   `-- concat-map@0.0.1
  | | +-- mkdirp@0.5.1 deduped
  | | +-- nopt@3.0.6
  | | | `-- abbrev@1.1.1 deduped
  | | +-- npmlog@4.1.2 deduped
  | | +-- osenv@0.1.4 deduped
  | | +-- request@2.83.0 deduped
  | | +-- rimraf@2.6.2 deduped
  | | +-- semver@5.3.0
  | | +-- tar@2.2.1
  | | | +-- block-stream@0.0.9
  | | | | `-- inherits@2.0.3 deduped
  | | | +-- fstream@1.0.11 deduped
  | | | `-- inherits@2.0.3 deduped
  | | `-- which@1.3.0 deduped
  | +-- resolve-from@4.0.0
  | +-- slide@1.1.6 deduped
  | +-- uid-number@0.0.6 deduped
  | +-- umask@1.1.0 deduped
  | `-- which@1.3.0 deduped
  +-- npm-package-arg@6.0.0
  | +-- hosted-git-info@2.5.0 deduped
  | +-- osenv@0.1.4 deduped
  | +-- semver@5.4.1 deduped
  | `-- validate-npm-package-name@3.0.0 deduped
  +-- npm-packlist@1.1.10
  | +-- ignore-walk@3.0.1
  | | `-- minimatch@3.0.4
  | |   `-- brace-expansion@1.1.8
  | |     +-- balanced-match@1.0.0
  | |     `-- concat-map@0.0.1
  | `-- npm-bundled@1.0.3
  +-- npm-profile@2.0.5
  | +-- aproba@1.2.0 deduped
  | `-- make-fetch-happen@2.5.0
  |   +-- agentkeepalive@3.3.0
  |   | `-- humanize-ms@1.2.1
  |   |   `-- ms@2.0.0
  |   +-- cacache@9.3.0
  |   | +-- bluebird@3.5.1 deduped
  |   | +-- chownr@1.0.1 deduped
  |   | +-- glob@7.1.2 deduped
  |   | +-- graceful-fs@4.1.11 deduped
  |   | +-- lru-cache@4.1.1 deduped
  |   | +-- mississippi@1.3.0 deduped
  |   | +-- mkdirp@0.5.1 deduped
  |   | +-- move-concurrently@1.0.1 deduped
  |   | +-- promise-inflight@1.0.1 deduped
  |   | +-- rimraf@2.6.2 deduped
  |   | +-- ssri@4.1.6 deduped
  |   | +-- unique-filename@1.1.0 deduped
  |   | `-- y18n@3.2.1
  |   +-- http-cache-semantics@3.8.0
  |   +-- http-proxy-agent@2.0.0
  |   | +-- agent-base@4.1.1
  |   | | `-- es6-promisify@5.0.0
  |   | |   `-- es6-promise@4.1.1
  |   | `-- debug@2.6.9
  |   |   `-- ms@2.0.0
  |   +-- https-proxy-agent@2.1.0
  |   | +-- agent-base@4.1.1
  |   | | `-- es6-promisify@5.0.0
  |   | |   `-- es6-promise@4.1.1
  |   | `-- debug@2.6.9
  |   |   `-- ms@2.0.0
  |   +-- lru-cache@4.1.1 deduped
  |   +-- mississippi@1.3.0 deduped
  |   +-- node-fetch-npm@2.0.2
  |   | +-- encoding@0.1.12
  |   | | `-- iconv-lite@0.4.19
  |   | +-- json-parse-better-errors@1.0.1
  |   | `-- safe-buffer@5.1.1 deduped
  |   +-- promise-retry@1.1.1
  |   | +-- err-code@1.1.2
  |   | `-- retry@0.10.1 deduped
  |   +-- socks-proxy-agent@3.0.1
  |   | +-- agent-base@4.1.1
  |   | | `-- es6-promisify@5.0.0
  |   | |   `-- es6-promise@4.1.1
  |   | `-- socks@1.1.10
  |   |   +-- ip@1.1.5
  |   |   `-- smart-buffer@1.1.15
  |   `-- ssri@4.1.6
  |     `-- safe-buffer@5.1.1 deduped
  +-- npm-registry-client@8.5.0
  | +-- concat-stream@1.6.0
  | | +-- inherits@2.0.3 deduped
  | | +-- readable-stream@2.3.3 deduped
  | | `-- typedarray@0.0.6
  | +-- graceful-fs@4.1.11 deduped
  | +-- normalize-package-data@2.4.0 deduped
  | +-- npm-package-arg@5.1.2
  | | +-- hosted-git-info@2.5.0 deduped
  | | +-- osenv@0.1.4 deduped
  | | +-- semver@5.4.1 deduped
  | | `-- validate-npm-package-name@3.0.0 deduped
  | +-- npmlog@4.1.2 deduped
  | +-- once@1.4.0 deduped
  | +-- request@2.83.0 deduped
  | +-- retry@0.10.1 deduped
  | +-- semver@5.4.1 deduped
  | +-- slide@1.1.6 deduped
  | `-- ssri@4.1.6
  |   `-- safe-buffer@5.1.1 deduped
  +-- npm-user-validate@1.0.0
  +-- npmlog@4.1.2
  | +-- are-we-there-yet@1.1.4
  | | +-- delegates@1.0.0
  | | `-- readable-stream@2.3.3 deduped
  | +-- console-control-strings@1.1.0
  | +-- gauge@2.7.4
  | | +-- aproba@1.2.0 deduped
  | | +-- console-control-strings@1.1.0 deduped
  | | +-- has-unicode@2.0.1 deduped
  | | +-- object-assign@4.1.1
  | | +-- signal-exit@3.0.2
  | | +-- string-width@1.0.2
  | | | +-- code-point-at@1.1.0
  | | | +-- is-fullwidth-code-point@1.0.0
  | | | | `-- number-is-nan@1.0.1
  | | | `-- strip-ansi@3.0.1 deduped
  | | +-- strip-ansi@3.0.1
  | | | `-- ansi-regex@2.1.1
  | | `-- wide-align@1.1.2
  | |   `-- string-width@1.0.2 deduped
  | `-- set-blocking@2.0.0
  +-- once@1.4.0
  | `-- wrappy@1.0.2 deduped
  +-- opener@1.4.3
  +-- osenv@0.1.4
  | +-- os-homedir@1.0.2
  | `-- os-tmpdir@1.0.2
  +-- pacote@7.0.2
  | +-- bluebird@3.5.1 deduped
  | +-- cacache@10.0.1 deduped
  | +-- get-stream@3.0.0
  | +-- glob@7.1.2 deduped
  | +-- lru-cache@4.1.1 deduped
  | +-- make-fetch-happen@2.6.0
  | | +-- agentkeepalive@3.3.0
  | | | `-- humanize-ms@1.2.1
  | | |   `-- ms@2.0.0
  | | +-- cacache@10.0.1 deduped
  | | +-- http-cache-semantics@3.8.0
  | | +-- http-proxy-agent@2.0.0
  | | | +-- agent-base@4.1.2
  | | | | `-- es6-promisify@5.0.0
  | | | |   `-- es6-promise@4.1.1
  | | | `-- debug@2.6.9
  | | |   `-- ms@2.0.0
  | | +-- https-proxy-agent@2.1.0
  | | | +-- agent-base@4.1.2
  | | | | `-- es6-promisify@5.0.0
  | | | |   `-- es6-promise@4.1.1
  | | | `-- debug@2.6.9
  | | |   `-- ms@2.0.0
  | | +-- lru-cache@4.1.1 deduped
  | | +-- mississippi@1.3.0 deduped
  | | +-- node-fetch-npm@2.0.2
  | | | +-- encoding@0.1.12
  | | | | `-- iconv-lite@0.4.19
  | | | +-- json-parse-better-errors@1.0.1
  | | | `-- safe-buffer@5.1.1 deduped
  | | +-- promise-retry@1.1.1 deduped
  | | +-- socks-proxy-agent@3.0.1
  | | | +-- agent-base@4.1.2
  | | | | `-- es6-promisify@5.0.0
  | | | |   `-- es6-promise@4.1.1
  | | | `-- socks@1.1.10
  | | |   +-- ip@1.1.5
  | | |   `-- smart-buffer@1.1.15
  | | `-- ssri@5.0.0 deduped
  | +-- minimatch@3.0.4
  | | `-- brace-expansion@1.1.8
  | |   +-- balanced-match@1.0.0
  | |   `-- concat-map@0.0.1
  | +-- mississippi@1.3.0 deduped
  | +-- normalize-package-data@2.4.0 deduped
  | +-- npm-package-arg@6.0.0 deduped
  | +-- npm-packlist@1.1.10 deduped
  | +-- npm-pick-manifest@2.1.0
  | | +-- npm-package-arg@6.0.0 deduped
  | | `-- semver@5.4.1 deduped
  | +-- osenv@0.1.4 deduped
  | +-- promise-inflight@1.0.1 deduped
  | +-- promise-retry@1.1.1
  | | +-- err-code@1.1.2
  | | `-- retry@0.10.1 deduped
  | +-- protoduck@4.0.0
  | | `-- genfun@4.0.1
  | +-- safe-buffer@5.1.1 deduped
  | +-- semver@5.4.1 deduped
  | +-- ssri@5.0.0 deduped
  | +-- tar@4.0.2 deduped
  | +-- unique-filename@1.1.0 deduped
  | `-- which@1.3.0 deduped
  +-- path-is-inside@1.0.2
  +-- promise-inflight@1.0.1
  +-- qrcode-terminal@0.11.0
  +-- query-string@5.0.1
  | +-- decode-uri-component@0.2.0
  | +-- object-assign@4.1.1
  | `-- strict-uri-encode@1.1.0
  +-- qw@1.0.1
  +-- read@1.0.7
  | `-- mute-stream@0.0.7
  +-- read-cmd-shim@1.0.1
  | `-- graceful-fs@4.1.11 deduped
  +-- read-installed@4.0.3
  | +-- debuglog@1.0.1 deduped
  | +-- graceful-fs@4.1.11 deduped
  | +-- read-package-json@2.0.12 deduped
  | +-- readdir-scoped-modules@1.0.2 deduped
  | +-- semver@5.4.1 deduped
  | +-- slide@1.1.6 deduped
  | `-- util-extend@1.0.3
  +-- read-package-json@2.0.12
  | +-- glob@7.1.2 deduped
  | +-- graceful-fs@4.1.11 deduped
  | +-- json-parse-better-errors@1.0.1
  | +-- normalize-package-data@2.4.0 deduped
  | `-- slash@1.0.0
  +-- read-package-tree@5.1.6
  | +-- debuglog@1.0.1 deduped
  | +-- dezalgo@1.0.3 deduped
  | +-- once@1.4.0 deduped
  | +-- read-package-json@2.0.12 deduped
  | `-- readdir-scoped-modules@1.0.2 deduped
  +-- readable-stream@2.3.3
  | +-- core-util-is@1.0.2
  | +-- inherits@2.0.3 deduped
  | +-- isarray@1.0.0
  | +-- process-nextick-args@1.0.7
  | +-- safe-buffer@5.1.1 deduped
  | +-- string_decoder@1.0.3
  | | `-- safe-buffer@5.1.1 deduped
  | `-- util-deprecate@1.0.2
  +-- readdir-scoped-modules@1.0.2
  | +-- debuglog@1.0.1 deduped
  | +-- dezalgo@1.0.3 deduped
  | +-- graceful-fs@4.1.11 deduped
  | `-- once@1.4.0 deduped
  +-- request@2.83.0
  | +-- aws-sign2@0.7.0
  | +-- aws4@1.6.0
  | +-- caseless@0.12.0
  | +-- combined-stream@1.0.5
  | | `-- delayed-stream@1.0.0
  | +-- extend@3.0.1
  | +-- forever-agent@0.6.1
  | +-- form-data@2.3.1
  | | +-- asynckit@0.4.0
  | | +-- combined-stream@1.0.5 deduped
  | | `-- mime-types@2.1.17 deduped
  | +-- har-validator@5.0.3
  | | +-- ajv@5.2.3
  | | | +-- co@4.6.0
  | | | +-- fast-deep-equal@1.0.0
  | | | +-- json-schema-traverse@0.3.1
  | | | `-- json-stable-stringify@1.0.1
  | | |   `-- jsonify@0.0.0
  | | `-- har-schema@2.0.0
  | +-- hawk@6.0.2
  | | +-- boom@4.3.1
  | | | `-- hoek@4.2.0 deduped
  | | +-- cryptiles@3.1.2
  | | | `-- boom@5.2.0
  | | |   `-- hoek@4.2.0 deduped
  | | +-- hoek@4.2.0
  | | `-- sntp@2.0.2
  | |   `-- hoek@4.2.0 deduped
  | +-- http-signature@1.2.0
  | | +-- assert-plus@1.0.0
  | | +-- jsprim@1.4.1
  | | | +-- assert-plus@1.0.0 deduped
  | | | +-- extsprintf@1.3.0
  | | | +-- json-schema@0.2.3
  | | | `-- verror@1.10.0
  | | |   +-- assert-plus@1.0.0 deduped
  | | |   +-- core-util-is@1.0.2
  | | |   `-- extsprintf@1.3.0 deduped
  | | `-- sshpk@1.13.1
  | |   +-- asn1@0.2.3
  | |   +-- assert-plus@1.0.0 deduped
  | |   +-- bcrypt-pbkdf@1.0.1
  | |   | `-- tweetnacl@0.14.5 deduped
  | |   +-- dashdash@1.14.1
  | |   | `-- assert-plus@1.0.0 deduped
  | |   +-- ecc-jsbn@0.1.1
  | |   | `-- jsbn@0.1.1 deduped
  | |   +-- getpass@0.1.7
  | |   | `-- assert-plus@1.0.0 deduped
  | |   +-- jsbn@0.1.1
  | |   `-- tweetnacl@0.14.5
  | +-- is-typedarray@1.0.0
  | +-- isstream@0.1.2
  | +-- json-stringify-safe@5.0.1
  | +-- mime-types@2.1.17
  | | `-- mime-db@1.30.0
  | +-- oauth-sign@0.8.2
  | +-- performance-now@2.1.0
  | +-- qs@6.5.1
  | +-- safe-buffer@5.1.1 deduped
  | +-- stringstream@0.0.5
  | +-- tough-cookie@2.3.3
  | | `-- punycode@1.4.1
  | +-- tunnel-agent@0.6.0
  | | `-- safe-buffer@5.1.1 deduped
  | `-- uuid@3.1.0 deduped
  +-- retry@0.10.1
  +-- rimraf@2.6.2
  | `-- glob@7.1.2 deduped
  +-- safe-buffer@5.1.1
  +-- semver@5.4.1
  +-- sha@2.0.1
  | +-- graceful-fs@4.1.11 deduped
  | `-- readable-stream@2.3.3 deduped
  +-- slide@1.1.6
  +-- sorted-object@2.0.1
  +-- sorted-union-stream@2.1.3
  | +-- from2@1.3.0
  | | +-- inherits@2.0.3 deduped
  | | `-- readable-stream@1.1.14
  | |   +-- core-util-is@1.0.2
  | |   +-- inherits@2.0.3 deduped
  | |   +-- isarray@0.0.1
  | |   `-- string_decoder@0.10.31
  | `-- stream-iterate@1.2.0
  |   +-- readable-stream@2.3.3 deduped
  |   `-- stream-shift@1.0.0
  +-- ssri@5.0.0
  | `-- safe-buffer@5.1.1 deduped
  +-- strip-ansi@4.0.0
  | `-- ansi-regex@3.0.0
  +-- tar@4.0.2
  | +-- chownr@1.0.1 deduped
  | +-- minipass@2.2.1
  | | `-- yallist@3.0.2 deduped
  | +-- minizlib@1.0.4
  | | `-- minipass@2.2.1 deduped
  | +-- mkdirp@0.5.1 deduped
  | `-- yallist@3.0.2
  +-- text-table@0.2.0
  +-- uid-number@0.0.6
  +-- umask@1.1.0
  +-- unique-filename@1.1.0
  | `-- unique-slug@2.0.0
  |   `-- imurmurhash@0.1.4 deduped
  +-- unpipe@1.0.0
  +-- update-notifier@2.3.0
  | +-- boxen@1.2.1
  | | +-- ansi-align@2.0.0
  | | | `-- string-width@2.1.1 deduped
  | | +-- camelcase@4.1.0
  | | +-- chalk@2.1.0 deduped
  | | +-- cli-boxes@1.0.0
  | | +-- string-width@2.1.1
  | | | +-- is-fullwidth-code-point@2.0.0
  | | | `-- strip-ansi@4.0.0 deduped
  | | +-- term-size@1.2.0
  | | | `-- execa@0.7.0
  | | |   +-- cross-spawn@5.1.0
  | | |   | +-- lru-cache@4.1.1 deduped
  | | |   | +-- shebang-command@1.2.0
  | | |   | | `-- shebang-regex@1.0.0
  | | |   | `-- which@1.3.0 deduped
  | | |   +-- get-stream@3.0.0
  | | |   +-- is-stream@1.1.0
  | | |   +-- npm-run-path@2.0.2
  | | |   | `-- path-key@2.0.1
  | | |   +-- p-finally@1.0.0
  | | |   +-- signal-exit@3.0.2
  | | |   `-- strip-eof@1.0.0
  | | `-- widest-line@1.0.0
  | |   `-- string-width@1.0.2
  | |     +-- code-point-at@1.1.0
  | |     +-- is-fullwidth-code-point@1.0.0
  | |     | `-- number-is-nan@1.0.1
  | |     `-- strip-ansi@3.0.1
  | |       `-- ansi-regex@2.1.1
  | +-- chalk@2.1.0
  | | +-- ansi-styles@3.2.0
  | | | `-- color-convert@1.9.0
  | | |   `-- color-name@1.1.3
  | | +-- escape-string-regexp@1.0.5
  | | `-- supports-color@4.4.0
  | |   `-- has-flag@2.0.0
  | +-- configstore@3.1.1
  | | +-- dot-prop@4.2.0
  | | | `-- is-obj@1.0.1
  | | +-- graceful-fs@4.1.11 deduped
  | | +-- make-dir@1.0.0
  | | | `-- pify@2.3.0
  | | +-- unique-string@1.0.0
  | | | `-- crypto-random-string@1.0.0
  | | +-- write-file-atomic@2.1.0 deduped
  | | `-- xdg-basedir@3.0.0 deduped
  | +-- import-lazy@2.1.0
  | +-- is-installed-globally@0.1.0
  | | +-- global-dirs@0.1.0
  | | | `-- ini@1.3.4 deduped
  | | `-- is-path-inside@1.0.0
  | |   `-- path-is-inside@1.0.2 deduped
  | +-- is-npm@1.0.0
  | +-- latest-version@3.1.0
  | | `-- package-json@4.0.1
  | |   +-- got@6.7.1
  | |   | +-- create-error-class@3.0.2
  | |   | | `-- capture-stack-trace@1.0.0
  | |   | +-- duplexer3@0.1.4
  | |   | +-- get-stream@3.0.0
  | |   | +-- is-redirect@1.0.0
  | |   | +-- is-retry-allowed@1.1.0
  | |   | +-- is-stream@1.1.0
  | |   | +-- lowercase-keys@1.0.0
  | |   | +-- safe-buffer@5.1.1 deduped
  | |   | +-- timed-out@4.0.1
  | |   | +-- unzip-response@2.0.1
  | |   | `-- url-parse-lax@1.0.0
  | |   |   `-- prepend-http@1.0.4
  | |   +-- registry-auth-token@3.3.1
  | |   | +-- rc@1.2.1
  | |   | | +-- deep-extend@0.4.2
  | |   | | +-- ini@1.3.4 deduped
  | |   | | +-- minimist@1.2.0
  | |   | | `-- strip-json-comments@2.0.1
  | |   | `-- safe-buffer@5.1.1 deduped
  | |   +-- registry-url@3.1.0
  | |   | `-- rc@1.2.1
  | |   |   +-- deep-extend@0.4.2
  | |   |   +-- ini@1.3.4 deduped
  | |   |   +-- minimist@1.2.0
  | |   |   `-- strip-json-comments@2.0.1
  | |   `-- semver@5.4.1 deduped
  | +-- semver-diff@2.1.0
  | | `-- semver@5.4.1 deduped
  | `-- xdg-basedir@3.0.0
  +-- uuid@3.1.0
  +-- validate-npm-package-license@3.0.1
  | +-- spdx-correct@1.0.2
  | | `-- spdx-license-ids@1.2.2
  | `-- spdx-expression-parse@1.0.4
  +-- validate-npm-package-name@3.0.0
  | `-- builtins@1.0.3
  +-- which@1.3.0
  | `-- isexe@2.0.0
  +-- worker-farm@1.5.1
  | +-- errno@0.1.4
  | | `-- prr@0.0.0
  | `-- xtend@4.0.1
  +-- wrappy@1.0.2
  `-- write-file-atomic@2.1.0
    +-- graceful-fs@4.1.11 deduped
    +-- imurmurhash@0.1.4 deduped
    `-- slide@1.1.6 deduped
grover commented 6 years ago

Did you get this to work?