Files: ec2cfa20da9cb844e2d27ddebc9686389de38874 / README.md
Scuttle Shell
This is a Secure Scuttlebutt system tray application. It provides an always-running sbot for your local system.
This app also setups itself as a Native Host App that can be used by authorized Firefox Add-ons such as Patchfox.
Dependencies
You must have Git and Node installed.
Install globally
$ npm install -g scuttle-shell
or if you cloned this repo (run from the repo folder itself):
$ npm install -g
You can run the app by executing scuttleshell
on your terminal.
Using it programmatically
Right now, there is only one feature exported by the scuttle-shell
module which is the ability to start a server. Example:
let scuttleshell = require("scuttle-shell")
console.log("Starting sbot, quitting after 30 seconds")
scuttleshell.start()
setTimeout(scuttleshell.stop, 30000)
Setup
This application is built with NodeJS. To set it up run:
$ npm install
This should set it up. If anything fails you can check your setup with
Checking your setup
Depending on your running operating system, you can check the configuration using:
$ npm run check
or
$ npm run check-win
Running Setup (again)
If anything went wrong during the setup or if you rename the folder this app is in, you can redo the setup with:
$ npm install
Plugins
scuttle-shell supports mutliple ways to extend the sbot that it runs with pluigns (like ssb-chess-db or ssb-query).
First of all, it supports and loads the plugins that were installed by running sbot plugins.install ...
.
These are stored under $HOME/.ssb/node_modules
.
Additonally, you can either pass the file paths to the API constructor by adding a plugins
field to the object you pass to .start()
. Check out examples/launch_sbot_custom_plugin.js
to see it in action.
Alternativly you can use the command-line flag of scuttleshell
, named --extra-plugins
. i.e. scuttleshell --extra-plugin path/to/plugin1 --extra-plugin path/to/plugin2
. Please not that these are not installed or persisted, you need to take care of that.
If you don't want to store them in the $HOME/.ssb
folder, there is also the option to create a scuttleshell.json
file next to your custom scuttle-shell and set a plugins
array inside it.
{
'plugins': ['path/to/plug1','path/to/plug2','path/to/plug3']
}
Built with git-ssb-web