GithubHelp home page GithubHelp logo

risyandi / browser-laptop Goto Github PK

View Code? Open in Web Editor NEW

This project forked from brave/browser-laptop

0.0 2.0 0.0 30.5 MB

Brave browser for Desktop and Laptop computers running Windows, OSX, and Linux

Home Page: https://www.brave.com

License: Mozilla Public License 2.0

JavaScript 82.35% CSS 10.55% HTML 6.21% NSIS 0.76% Smarty 0.06% Ruby 0.05% Shell 0.02%

browser-laptop's Introduction

Build Status

Brave Browser

Desktop browser for macOS, Windows, and Linux.

Follow @brave on Twitter for important news and announcements.

For other versions of our browser, please see:

Downloads

To download the latest release, see our releases page.

For a more user-friendly download page, please visit our website.

Useful documentation

Build prerequisites

You'll need certain packages installed before you can build and run Brave locally.

Windows

Please see the Building on Windows wiki entry

All other platforms

  1. nodejs >= 6.1

    Install from your package manager or download from https://nodejs.org

  2. node-gyp 3.3.1

     sudo npm install -g [email protected]
    

Linux

  • apt-get install libgnome-keyring-dev build-essential

Installation

After installing the prerequisites:

  1. Clone the git repository from GitHub:

     # For beta testers:
     git clone --depth 1 https://github.com/brave/browser-laptop
    
     # For devs over HTTPS:
     git clone https://github.com/brave/browser-laptop
    
     # For devs over SSH:
     git clone [email protected]:brave/browser-laptop.git
    
  2. Open the working directory:

     cd browser-laptop
    
  3. Install the Node (v5+) dependencies:

     npm install
    

If this fails on Linux with an error related to abp-filter-parser-cpp, try updating to Node 6.1 and node-gyp 3.3.1 (see discussion at brave#214)

Troubleshooting

Additional notes on troubleshooting installation issues are in the Troubleshooting page in the Wiki.

Preconfigured VMs

Some platforms are available as pre-configured VMs. See the readme for details.

Development

You will also have to have two terminal tabs up to run Brave. One for Brave to watch for changes to the code, and one to run Brave.

To run a development version of the browser, run the following on the command line:

npm run watch

npm start

To run the tests:

npm run watch-test  or  npm run watch-all

npm test

Some errors related to brave/electron update can be fixed by doing a clean install:

rm -rf node_modules/
npm install

If this does not work, please clear out your ~/.electron first and try again.

Port

Brave uses port 8080 to communicate between its client and server sides by default. If you are using port 8080 for something else (e.g. a web proxy) then you can set the node config to make it use a different one.

e.g. npm config set brave:port 9001

Additional notes on troubleshooting development issues are in the Troubleshooting page in the Wiki.

Running inside of a development version of Brave's Electron fork

We are using a fork of Electron with some minor modifications. We try to upstream everything to electron/electron but forking allows us to take patches before upstreaming.

By default, we provide pre-built binaries when you npm install with our own fork of electron-prebuilt.

If you want to modify the code to Electron itself, then you'll need to build it. An example of why you might do that would be exposing a new event to the webview from Electron.

Build instructions:

Once you're happy with the changes you've made in the electron fork, you can test the changes locally by building and then copying the output files over the node_modules/electron-prebuilt for browser-laptop.

Assuming you have your directories in a structure such as this:

projects/
    electron/
    browser-laptop/

You can simply run an npm task to build and install your local electron instance:

npm run install

If your directory structure isn't side by side, you can run the following (altering the rsync as needed):

npm run build
rsync -avz --delete out/D/Brave.app {{path-to-browser-laptop}}/node_modules/electron-prebuilt/dist/

Packaging for bundles, installers, and updates

In order do run any build commands, you'll need an environment variable set for CHANNEL (set to 'dev', 'beta', or 'stable').

For more information, see docs/buildingReleases.md which has a more detailed overview of our release process.

OSX:

From within brave-browser you can create a .app file for distribution:

CHANNEL=dev npm run build-package

After the .app file is built you can create a dmg and update zip with:

IDENTIFIER=XYZ npm run build-installer

Where XYZ is your signing identifier.

Windows 7,8,10 x64:

You'll also need to set the CERT and CERT_PASSWORD environment variables with your authenticode signing cert and password if you want to build an installer.

To set these values, you can either set the environment on a per-session basis ($env:CHANNEL="dev") or update your system/user environment variables.

You must also have NSIS 3.0rc2 or later installed and makensis's folder must be in your PATH.

To create a folder with the app .exe and all dependencies you can run:

CHANNEL=dev npm run build-package

After the above folder is created, you can create a setup (exe, msi, RELEASES file and update nupkg) with:

npm run build-installer

Linux:

To create a package:

CHANNEL=dev npm run build-package

To create a dev package:

CHANNEL=dev npm run build-package

browser-laptop's People

Contributors

aekeus avatar alexwykoff avatar ayumi avatar bbondy avatar bennyschmidt avatar bradleyrichter avatar brendaneich avatar bridiver avatar bsclifton avatar cezaraugusto avatar charbelrami avatar craigmichaelmartin avatar darkdh avatar diracdeltas avatar edouard-lopez avatar empact avatar francisturner avatar jerisbrisk avatar jkup avatar jmalonzo avatar kevingrandon avatar luixxiul avatar mrose17 avatar psimyn avatar rob-blasetti avatar seeam avatar twisterghost avatar vrde avatar williamboman avatar willy-b avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.