1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/mirrors_brave-brave-browser

Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

Brave Browser

Обзор

Этот репозиторий содержит средства сборки, необходимые для сборки десктопного браузера Brave для macOS, Windows и Linux. В частности, он загружает и синхронизирует код из проектов, определённых в package.json и src/brave/DEPS:

  • Chromium
    • Загружает код через depot_tools.
    • Устанавливает ветку для Chromium (например: 65.0.3325.181).
  • brave-core
    • Монтируется в src/brave.
    • Поддерживает патчи для кода Chromium от сторонних разработчиков.
  • adblock-rust
    • Реализует движок блокировки рекламы Brave.
    • Связан через brave/adblock-rust-ffi.

Скачивание

Вы можете посетить наш сайт, чтобы получить последнюю стабильную версию.

Вклад

Пожалуйста, ознакомьтесь с руководством по вкладу.

Наш Wiki также содержит полезную техническую информацию.

Сообщество

Присоединяйтесь к сообществу Q&A, если вы хотите больше участвовать в разработке Brave. Вы можете запросить помощь, обсудить функции, которые вы хотели бы видеть, и многое другое. Мы будем рады вашей помощи, чтобы продолжать улучшать Brave.

Помогите нам перевести Brave на ваш язык, отправив переводы по адресу https://explore.transifex.com/brave/brave_en/.Подпишитесь на @brave на X для получения важных новостей и объявлений.

Установка предварительных условий

Следуйте инструкциям для вашей платформы:

Клонирование и инициализация репозитория

После установки предварительных условий вы можете получить код и инициализировать среду сборки.

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

# исходный код Chromium загружается, который имеет большой объем истории (гигабайты данных)
# это может занять очень много времени в зависимости от скорости интернета

npm run init

android-строения на основе brave-core должны использовать npm run init -- --target_os=android --target_arch=arm (или любой другой тип процессора, который вы хотите использовать для сборки)

iOS-строения на основе brave-core должны использовать npm run init -- --target_os=ios

Вы также можете установить target_os и target_arch для init и build следующим образом:

npm config set target_os android
npm config set target_arch arm

Дополнительные параметры, необходимые для сборки, документируются по адресу https://github.com/brave/brave-browser/wiki/Build-configurationВнутренние разработчики могут найти больше информации по адресу https://github.com/brave/devops/wiki/%60.env%60-config-for-Brave-Developers

Сборка Brave

По умолчанию используется тип сборки component.

# запуск сборки component
npm run build

Для выполнения сборки для выпуска:

# запуск сборки для выпуска
npm run build Release

android-строения на основе brave-core должны использовать npm run build -- --target_os=android --target_arch=arm или установить npm config переменные, как указано выше для init

iOS-строения на основе brave-core должны использовать проект Xcode, найденный в ios/brave-ios/App. Вы можете открыть этот проект напрямую или запустить npm run ios_bootstrap -- --open_xcodeproj для открытия его в Xcode. См. iOS Developer Environment для получения дополнительной информации о сборке iOS.

Конфигурации сборки

Запуск сборки для выпуска с npm run build Release может быть очень медленным и использовать большое количество оперативной памяти, особенно на Linux с плагином Gold LLVM.

Для запуска статически связанных сборок (занимают больше времени для сборки, но запускаются быстрее):

npm run build -- Static

Для запуска отладочной сборки (Component сборка с is_debug=true):

npm run build -- Debug

Примечание: сборка может занять некоторое время для завершения. В зависимости от вашего процессора и памяти, это может занять несколько часов.## Запуск Brave Для запуска сборки:

npm start [Release|Component|Static|Debug]

Обновление Brave

npm run sync -- [--force] [--init] [--create] [brave_core_ref]Это попытается сохранить ваши локальные изменения в brave-core, но безопаснее всего заранее сделать коммит локальных изменений перед запуском этого скрипта

npm run sync выполнит следующие действия (в зависимости от указанных ниже флагов):

  1. 📥 Обновит подпроекты (chromium, brave-core) до последнего коммита git ref (например, тега или ветки)
  2. 🤕 Применит патчи
  3. 🔄 Обновит зависимости gclient DEPS
  4. ⏩ Выполнит хуки (например, выполнит npm install для дочерних проектов)| флаг | Описание | |---|---| |[без флагов]|обновит Chromium, если необходимо, и переприметет патчи. Если версия Chromium не изменилась, он переприметет только те патчи, которые изменились. Обновит зависимости дочерних проектов только если какой-либо проект требовал обновления во время выполнения этого скрипта.
    Используйте это, если вы хотите, чтобы скрипт автоматически поддерживал актуальность вместо ручного переключения веток или выполнения команд pull. | |--force|обновит как Chromium, так и brave-core до последнего коммита на текущей ветке brave-core и указанной в brave-browser/package.json Chromium ref (например, master или 74.0.0.103). Переприметет все патчи. Принудительно обновит все зависимости дочерних проектов.
    Используйте это, если у вас возникли проблемы и вы хотите принудительно вернуть ветки в известное состояние. | |--init|принудительно обновит как Chromium, так и brave-core до версий, указанных в brave-browser/package.json, и принудительно обновит все зависимые репозитории - аналогично npm run init| |--sync_chromium (true/false)|Принудительно обновит или пропустит обновление версии Chromium, если необходимо. Полезно, если вы хотите избежать небольшого обновления, которое может привести к увеличенному времени сборки из-за обновления Chromium. Будет выведено предупреждение о текущем состоянии кода, ожидании другой версии Chromium. Ваша сборка может завершиться неудачно. ||-D, --delete_unused_deps|Удалит из рабочей копии зависимости, которые были удалены с момента последнего синка. Аналогично gclient sync -D. |Запустите npm run sync brave_core_ref, чтобы переключиться на указанный brave-core ref и обновить все зависимые репозитории, включая chromium, если необходимо.

Сценарии

Создание новой ветки:

brave-browser> cd src/brave
brave-browser/src/brave> git checkout -b branch_name

Переключение на существующую ветку или тег:

brave-browser/src/brave> git fetch origin
brave-browser/src/brave> git checkout [-b] branch_name
brave-browser/src/brave> npm run sync
...Обновление 2 патчей...
...Обновление зависимостей дочерних проектов...
...Выполнение хуков...

Обновление текущей ветки до последней удаленной:

brave-browser/src/brave> git pull
brave-browser/src/brave> npm run sync
...Обновление 2 патчей...
...Обновление дочерних зависимостей...
...Выполнение хуков...

Возврат к последней ветке master для 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-browser/src/brave> git checkout featureB
brave-browser/src/brave> git pull
brave-browser/src/brave> cd ../..
brave-browser> npm run apply_patches
...Применение 2 патчей...

Включение сторонних API:

  1. Google Safe Browsing: Получите ключ API с включенным SafeBrowsing API с https://console.developers.google.com/. Обновите переменную окружения GOOGLE_API_KEY своим ключом в соответствии с https://www.chromium.org/developers/how-tos/api-keys для включения Google SafeBrowsing.# Разработка

Устранение неполадок

См. Устранение неполадок для решения общих проблем.

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

Браузерный обозреватель Brave для настольных компьютеров macOS, Windows и Linux. Развернуть Свернуть
MPL-2.0
Отмена

Обновления

Пока нет обновлений

Участники

все

Язык

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/mirrors_brave-brave-browser.git
git@api.gitlife.ru:oschina-mirror/mirrors_brave-brave-browser.git
oschina-mirror
mirrors_brave-brave-browser
mirrors_brave-brave-browser
master