Files: fca7e884b005b72ad936e12d9186829ea5e7d0df / server-process.js
1421 bytesRaw
1 | var fs = require('fs') |
2 | var Path = require('path') |
3 | var electron = require('electron') |
4 | var spawn = require('child_process').spawn |
5 | var fixPath = require('fix-path') |
6 | |
7 | var createSbot = require('scuttlebot') |
8 | .use(require('scuttlebot/plugins/master')) |
9 | .use(require('scuttlebot/plugins/gossip')) |
10 | .use(require('scuttlebot/plugins/replicate')) |
11 | .use(require('ssb-friends')) |
12 | .use(require('ssb-blobs')) |
13 | .use(require('ssb-backlinks')) |
14 | .use(require('ssb-private')) |
15 | .use(require('scuttlebot/plugins/invite')) |
16 | .use(require('scuttlebot/plugins/local')) |
17 | .use(require('scuttlebot/plugins/logging')) |
18 | .use(require('ssb-query')) |
19 | .use(require('ssb-about')) |
20 | .use(require('ssb-search')) |
21 | .use(require('ssb-ws')) |
22 | // .use(require('ssb-ebt')) // enable at your own risk! |
23 | .use(require('./sbot')) |
24 | |
25 | fixPath() |
26 | |
27 | module.exports = function (ssbConfig) { |
28 | var context = { |
29 | sbot: createSbot(ssbConfig), |
30 | config: ssbConfig |
31 | } |
32 | ssbConfig.manifest = context.sbot.getManifest() |
33 | fs.writeFileSync(Path.join(ssbConfig.path, 'manifest.json'), JSON.stringify(ssbConfig.manifest)) |
34 | electron.ipcRenderer.send('server-started', ssbConfig) |
35 | |
36 | // attempt to run git-ssb if it is installed and in path |
37 | var gitSsb = spawn('git-ssb', [ 'web' ], { |
38 | stdio: 'inherit' |
39 | }) |
40 | gitSsb.on('error', () => { |
41 | console.log('git-ssb is not installed, or not available in path') |
42 | }) |
43 | process.on('exit', () => { |
44 | gitSsb.kill() |
45 | }) |
46 | } |
47 |
Built with git-ssb-web