fraction / oasis

Free, open-source, peer-to-peer social application that helps you follow friends and discover new ones on Secure Scuttlebutt (SSB).
http://oasis-demo.fraction.io
GNU Affero General Public License v3.0
287 stars 42 forks source link

Dependencies documentation #424

Closed hamnox closed 4 years ago

hamnox commented 4 years ago

What's the problem you want solved?

On my new laptop which hadn't had any of the patch* things installed already, I got a stack trace

oasis No configuration file found at /home/hamnox/.config/oasis/default.json, using built-in default values. +0ms
error loading sodium bindings: Cannot find module 'sodium-native'
Require stack:
- /home/hamnox/.yarn/lib/node_modules/chloride/bindings.js
- /home/hamnox/.yarn/lib/node_modules/chloride/index.js
- /home/hamnox/.yarn/lib/node_modules/ssb-keys/index.js
- /home/hamnox/.yarn/lib/node_modules/ssb-client/index.js
- /home/hamnox/.yarn/lib/node_modules/@fraction/oasis/src/ssb.js
- /home/hamnox/.yarn/lib/node_modules/@fraction/oasis/src/index.js
falling back to javascript version.
  oasis Listening on http://localhost:3000 +403ms
  oasis Starting Scuttlebutt service +0ms

This does not strictly seem like an error, given there is a javascript fallback. but it went away when I global-installed sodium-native, so :shrug:

Is there a solution you'd like to recommend?

add to package.json or have a note in the README

christianbundy commented 4 years ago

Could you post the output of npm ci? This should've come with Oasis, we don't have any undeclared dependencies that I'm aware of. Sodium-native is an optional dependency we get from chloride (package.json), it looks to me like npm install didn't pull it correctly.

hamnox commented 4 years ago

Ah, I have the --ignore-optional command set on my global install alias. forgot I'd done that.