brave-browser - Android、Linux、macOS、Windows用の次世代Braveブラウザ。

(Next generation Brave browser for Android, Linux, macOS, Windows.)

Created at: 2017-11-10 07:44:38
Language: JavaScript
License: MPL-2.0

ブレイブブラウザ

概要

このリポジトリには、macOS、Windows、およびLinux用のBraveデスクトップブラウザをビルドするために必要なビルドツールが含まれています。特に、およびで定義されたプロジェクトからコードをフェッチして同期し

package.json
ます
src/brave/DEPS

  • クロム
    • を介してコードをフェッチします
      depot_tools
    • Chromiumのブランチを設定します(例:65.0.3325.181)。
  • ブレイブコア
    • にマウントされてい
      src/brave
      ます。
    • サードパーティのChromiumコードのパッチを維持します。
  • adblock-rust
    • ブレイブの広告ブロックエンジンを実装します。
    • brave/adblock-rust-ffiを介してリンクされています。

ダウンロード

最新の安定版リリースを入手するには、当社のWebサイトにアクセスしてください。

その他のリポジトリ

他のバージョンのブラウザについては、以下を参照してください。

貢献

寄稿ガイドラインをご覧ください。

コミュニティ

ブレイブにもっと関わりたい場合は、Q&Aコミュニティに参加してください。ヘルプを求めたり見たい機能について話し合ったり、その他たくさんのことができます。ブレイブを継続的に改善できるよう、皆様のご協力をお待ちしております。

https://www.transifex.com/brave/brave/で翻訳を送信して、Braveをあなたの言語に翻訳するのを手伝ってください。

重要なニュースや発表については、Twitterで@braveをフォローしてください。

前提条件をインストールする

プラットフォームの指示に従ってください。

リポジトリのクローンを作成して初期化します

前提条件をインストールしたら、コードを取得してビルド環境を初期化できます。

git clone git@github.com:brave/brave-core.git path-to-your-project-folder/src/brave
cd path-to-your-project-folder/src/brave
npm install

# the Chromium source is downloaded, which has a large history
# this might take really long to finish

npm run init

ブレイブコアベースのAndroidビルドで使用する必要があります

npm run init -- --target_os=android --target_arch=arm
(またはビルドするCPUタイプ)

次を使用して、initおよびbuildのtarget_osおよびtarget_archを設定することもできます。

npm config set target_os android
npm config set target_arch arm

ブレイブを構築する

デフォルトのビルドタイプはcomponentです。

# start the component build compile
npm run build

リリースビルドを行うには:

# start the release compile
npm run build Release

ブレイブコアベースのAndroidビルドでは

npm run build -- --target_os=android --target_arch=arm
、上記で指定したnpm構成変数を使用または設定する必要があります。
init

ビルド構成

でリリースビルドを実行すると

npm run build Release
、特にGold LLVMプラグインを使用するLinuxで、非常に遅くなり、大量のRAMを使用する可能性があります。

静的にリンクされたビルドを実行するには(ビルドに時間がかかりますが、起動が速くなります):

npm run build -- Static

デバッグビルドを実行するには(is_debug = trueを使用したコンポーネントビルド):

npm run build -- Debug

勇敢なスタッフは、より高速なビルドのためにGomaを試してみることもできます。

ブレイブを実行

ビルドを開始するには:

npm start [Release|Component|Static|Debug]

ブレイブを更新

npm run sync -- [--force] [--init] [--create] [brave_core_ref]

これにより、ローカルの変更をブレイブコアに隠そうとしますが、これを実行する前にローカルの変更をコミットする方が安全です。

npm run sync
意志(以下のフラグに応じて):

  1. 📥サブプロジェクト(chromium、brave-core)をgit refの最新のコミット(タグやブランチなど)に更新します
  2. 🤕パッチを適用する
  3. 🔄gclientDEPSの依存関係を更新する
  4. フックを実行
    npm install
    します(たとえば、子プロジェクトで実行するため)
国旗 説明
[no flags]
必要に応じてクロムを更新し、パッチを再適用します。クロムのバージョンが変更されていない場合は、変更されたパッチのみが再適用されます。このスクリプトの実行中にプロジェクトを更新する必要がある場合にのみ、子の依存関係を更新します。
**ブランチを手動でプルまたは切り替えるのではなく、スクリプトで最新の状態に保つように管理する場合は、これを使用します。****
--force
Chromiumbrave-coreの両方を、現在のbrave-coreブランチとbrave-browser / package.json(egまたは)で指定されたChromiumrefの最新のリモートコミットに更新します。すべてのパッチを再適用します。すべての子の依存関係を強制的に更新します。**問題が発生していて、ブランチを強制的に既知の状態に戻したい場合は、これを使用します。****
master
74.0.0.103

--init
Chromiumbrave-coreの両方をbrave-browser/package.jsonで指定されたバージョンに強制的に更新し、すべての依存リポジトリを強制的に更新します-と同じ
npm run init
--ignore_chromium
該当する場合、クロムバージョンは更新されません。より長いビルド時間の準備ができていないときにマイナーアップデートを回避したい場合に便利です。クロムアップデートは結果として生じる可能性があります。異なるクロムバージョンを期待する現在のコード状態に関する警告が出力されます。その結果、ビルドが失敗する可能性があります。

実行

npm run sync brave_core_ref
して、指定されたブレイブコア参照をチェックアウトし、必要に応じてクロムを含むすべての依存リポジトリを更新します。

シナリオ

新しいブランチを作成します。

brave-core> git checkout -b branch_name

既存のブランチまたはタグをチェックアウトします。

brave-core> git fetch origin
brave-core> git checkout [-b] branch_name
brave-core> npm run sync
...Updating 2 patches...
...Updating child dependencies...
...Running hooks...

現在のブランチを最新のリモートに更新します。

brave-core> git pull
brave-core> npm run sync
...Updating 2 patches...
...Updating child dependencies...
...Running hooks...

最新のbrave-browserマスターとbrave-coreマスターにリセットします(を介して
init
、常にビルドが長くなり、brave-core作業ディレクトリで保留中の変更が削除されます):

brave-browser> git checkout master
brave-browser> git pull
brave-browser> npm run sync -- --init

DEPSが変更されていないことがわかっているが、.patchファイルは変更されている場合(ビルド前にミニ同期を実行する最も速い試み):

brave-core> git checkout featureB
brave-core> git pull
brave-browser> npm run apply_patches
...Applying 2 patches...

サードパーティAPIの有効化:

  1. Googleセーフブラウジング: https: //console.developers.google.com/からSafeBrowsingAPIを有効にしてAPIキーを取得します。https://www.chromium.org/developers/how-tos/api-keys
    GOOGLE_API_KEY
    に従って環境変数をキーで更新し、GoogleSafeBrowsingを有効にします。

発達

トラブルシューティング

一般的な問題の解決策については、トラブルシューティングを参照してください。