WHAT'S NEW?
Loading...

Compile Beaker Browser to run on Windows 10

Beaker Browser is a peer-to-peer browser with tools to create and host websites. 

https://beakerbrowser.com/docs/install/ 

At the moment, there is no simple setup for Windows 10.

This blog post is a step by step simple guide that will help you to build Beaker Browser from source code in a Windows 10 environment

System requirements


Install Python 2.7 in c:\
https://www.python.org/downloads/release/python-2711/

Install Visual Studio 2015 or 2017
https://www.visualstudio.com/it/downloads/

Install Node JS
https://nodejs.org/it/download/

Open PowerShell with Admin power and start in C:\


git clone https://github.com/beakerbrowser/beaker.git
cd beaker
npm i -g npm

npm config set python c:/python27
npm config set msvs_version 2015

npm install -g node-gyp

npm unistall gulp

npm install gulp

npm install hyperdrive

npm install electron-rebuild

npm install

After npm install wait and you will have this error message

Error: `C:\Program Files (x86)\MSBuild\14.0\bin\msbuild.exe` failed with exit code: 1

The problem depends on syntax of some C files related to the DAT PROJECT that use the C99 dialect

[C:\beaker\app\node_modules\utp-native\build\utp.vcxproj]

C99 is a past version of the C programming language standard.  Microsoft Visual Studio's C compiler is not C99-compliant, so it will not be able to compile that code. The solution could be to convert the code to use C89 or C++ (for example see this https://github.com/libav/c99-to-c89/ ), or use a different compiler which supports C99.

The utp-native module isn't strictly required for anything to work. So we are still be able to run and continue the installation. To continue the installation, you must be inside C:\beaker\ and open the 'app' dir and ignore the errors



cd app

(put this all in one line)

npm rebuild --runtime=electron --target=1.5.0 --disturl=https://atom.io/download/atom-shell --build-from-source

gulp build

cd node_modules/sqlite3

npm run prepublish

(put this all in one line)
node-gyp configure --module_name=node_sqlite3 --module_path=../lib/binding/electron-v1.7-win32-x64
(put this all in one line)
node-gyp rebuild --target=1.7.0 --arch=x64 --target_platform=win32 --dist-url=https://atom.io/download/atom-shell --module_name=node_sqlite3 --module_path=../lib/binding/electron-v1.7-win32-x64 cd.. cd.. cd.. npm start
Beaker Browser will start without utp-native but with success!

> beakerbrowser@ start C:\beaker
> gulp start

[12:28:47] Using gulpfile C:\beaker\gulpfile.js
[12:28:47] Starting 'start'...
Spawning electron C:\beaker\node_modules\electron\dist\electron.exe
[12:28:48] Finished 'start' after 7.89 ms

Failed to load utp-native. Peer-to-peer connectivity may be degraded. { Error: Cannot find module 'utp-native'
    at Module._resolveFilename (module.js:470:15)
    at Function.Module._resolveFilename (C:\beaker\node_modules\electron\dist\resources\electron.asar\common\reset-searc
h-paths.js:35:12)
    at Function.Module._load (module.js:418:25)
    at Module.require (module.js:498:17)
    at require (internal/module.js:20:19)
    at C:\beaker\app\background-process.build.js:5059:3
    at Object.<anonymous> (C:\beaker\app\background-process.build.js:5458:2)
    at Object.<anonymous> (C:\beaker\app\background-process.build.js:5459:3)

    at Module._compile (module.js:571:32)
    at Object.Module._extensions..js (module.js:580:10) code: 'MODULE_NOT_FOUND' }

You are ready to use it!

https://beakerbrowser.com/docs/using-beaker/

https://beakerbrowser.com/docs/tutorials/

Watch some examples


Learn more


Read more
https://medium.com/@taravancil

2 comments: Leave Your Comments

  1. App threw an error during load
    Error: Cannot find module 'C:\Users\sebas\Desktop\Developing\beaker\app\node_modules\sqlite3\lib\binding\electron-v1.7-win32-x64\node_sqlite3.node'

    ReplyDelete
  2. "npm prepublish" doesn't seem to exist in sqlite3.

    ReplyDelete