├── .github ├── FUNDING.yml ├── ISSUE_TEMPLATE │ ├── bug_report.yml │ └── feature_request.yml ├── PULL_REQUEST_TEMPLATE.md └── workflows │ ├── build-images.yaml │ ├── build_cromite.yaml │ ├── check-git-apply.yaml │ ├── execute-tests.yaml │ └── release.yaml ├── .gitignore ├── CHANGELOG.md ├── FAQ.md ├── LICENSE ├── README.md ├── build ├── LASTCHANGE ├── RELEASE ├── RELEASE_COMMIT ├── bromite.gn_args ├── bromite_patches_list.txt ├── chromium.gn_args ├── chromium_patches_list.txt ├── patches │ ├── 00114-temp-disable-find-bad-constructs-external-repo.patch │ ├── 00115-temp-fix-build.patch │ ├── 00Add-a-flag-to-disable-GamePad-API.patch │ ├── 00Add-setting-to-clear-data-on-exit.patch │ ├── 00Add-setting-to-invert-tap-and-long-tap.patch │ ├── 00Always-open-browser-controls-in-new-tab.patch │ ├── 00Clear-CORS-Preflight-Cache-on-clearing-data.patch │ ├── 00Compress-libchrome-to-free-up-some-space.patch │ ├── 00Cromite-Branding.patch │ ├── 00Deprecate-Data-URL-in-SVGUseElement.patch │ ├── 00Disable-BackForwardCache.patch │ ├── 00Disable-Component-Updates.patch │ ├── 00Disable-Compression-Dictionary-Transport.patch │ ├── 00Disable-FedCm.patch │ ├── 00Disable-Feeback-Collector.patch │ ├── 00Disable-FirstPartySets-and-StorageAccessAPI.patch │ ├── 00Disable-GSA-by-default.patch │ ├── 00Disable-GetInstalledRelatedApps-API.patch │ ├── 00Disable-PrivateStateTokens-API.patch │ ├── 00Disable-SHA1-Server-Signature.patch │ ├── 00Disable-WebGPU.patch │ ├── 00Disable-csp-reports.patch │ ├── 00Disable-devtools-remote-and-custom-protocols.patch │ ├── 00Disable-privacy-issues-in-password-manager.patch │ ├── 00Disable-remote-altsvc-for-h3-connections.patch │ ├── 00Disable-speechSynthesis-getVoices-API.patch │ ├── 00Disable-visited-pseudo-class.patch │ ├── 00Disallow-Android-App-Scheme-as-referrer.patch │ ├── 00Disallowing-MIDI-permission-by-default.patch │ ├── 00Enable-Document-Open-Inheritance-Removal.patch │ ├── 00Evict-the-entire-FrameTree-like-desktop.patch │ ├── 00Eyeo-Adblock-Remove-Privacy-Issues.patch │ ├── 00Fonts-fingerprinting-mitigation.patch │ ├── 00Internal-firewall.patch │ ├── 00Keep-Side-Panel-Companion-disabled.patch │ ├── 00Keyboard-protection-flag.patch │ ├── 00Lock-Profile-Cookie-Database.patch │ ├── 00Log-dangling-attributes-in-some-html-elements.patch │ ├── 00Multi-Screen-Window-Placement-API-fix.patch │ ├── 00Partition-HSTS-cache-by-NAK.patch │ ├── 00Partitioning-all-cookies-by-top-frame-domain.patch │ ├── 00Remove-ChromiumNetworkAdapter.patch │ ├── 00Remove-auth-header-upon-cross-origin-redirect.patch │ ├── 00Remove-detection-of-captive-portals.patch │ ├── 00Remove-experimental-relative-c---abi-vtables.patch │ ├── 00Remove-https-connection-from-chrome-discards.patch │ ├── 00Remove-support-for-device-memory-and-cpu-recovery.patch │ ├── 00Restore-LastTabStandingTracker.patch │ ├── 00Show-warnings-on-downloads-over-HTTP.patch │ ├── 00TEMP-Add-a-log-to-track-strange-behavior.patch │ ├── 00Temp-Disable-kAutomaticLazyFrameLoadingToEmbeds.patch │ ├── 00WIN-ADDTO-AImageReader-CFI-crash-mitigations.patch │ ├── 00WIN-ADDTO-Add-AllowUserCertificates-flag.patch │ ├── 00WIN-ADDTO-Add-a-proxy-configuration-page.patch │ ├── 00WIN-ADDTO-Add-bookmark-import-export-actions.patch │ ├── 00WIN-ADDTO-Add-lifetime-options-for-permissions.patch │ ├── 00WIN-ADDTO-Disable-requests-for-single-word-Omni.patch │ ├── 00WIN-ADDTO-Disable-various-metrics.patch │ ├── 00WIN-ADDTO-Do-not-build-API-keys-infobar.patch │ ├── 00WIN-ADDTO-Experimental-user-scripts-support.patch │ ├── 00WIN-ADDTO-Logcat-crash-reports-UI.patch │ ├── 00WIN-ADDTO-Remove-binary-blob-integrations.patch │ ├── 00WIN-ADDTO-Restore-Search-Ready-Omnibox-flag.patch │ ├── 00WIN-ADDTO-Revert-flags--remove-num-raster-thre.patch │ ├── 00WIN-ADDTO-openH264--enable-ARM-ARM64-optimizati.patch │ ├── 00WIN-ADDTO-ungoogled-chr--Disable-profile-avatar.patch │ ├── 00WIN-Add-some-prefs-to-secure-preferences.patch │ ├── 00WIN-Disable-TabHoverCard-images.patch │ ├── 00WIN-Disable-first-run.patch │ ├── 00WIN-Disable-search-for-image.patch │ ├── 00WIN-Disable-sharing-hub.patch │ ├── 00WIN-Disable-updater.patch │ ├── 00WIN-Enable-Network-Service-Sandbox-and-CIG.patch │ ├── 00WIN-Fix-log-to-file.patch │ ├── 00WIN-disable-annotate-downloads.patch │ ├── 00WIN-enable-HighEfficiencyMode-by-default.patch │ ├── 00WIN-enable-file-system-access-blocklist.patch │ ├── 00WIN-enable-pdf-plugin.patch │ ├── 00WIN-minimum-data-to-enable-install-extensions.patch │ ├── 00Warning-message-for-unsupported-hardware-aes.patch │ ├── 00add-browser-policy.patch │ ├── 00do-not-block-build-incompatible-profiles.patch │ ├── 00v113-temp-fix-build.patch │ ├── AImageReader-CFI-crash-mitigations.patch │ ├── Add-AllowUserCertificates-flag.patch │ ├── Add-Alt-D-hotkey-to-focus-address-bar.patch │ ├── Add-DuckDuckGo-Lite-search-engine.patch │ ├── Add-English-only-search-engine.patch │ ├── Add-IsCleartextPermitted-flag.patch │ ├── Add-a-proxy-configuration-page.patch │ ├── Add-an-always-incognito-mode.patch │ ├── Add-autoplay-site-setting.patch │ ├── Add-bookmark-import-export-actions.patch │ ├── Add-custom-tab-intents-privacy-option.patch │ ├── Add-exit-menu-item.patch │ ├── Add-flag-for-omnibox-autocomplete-filtering.patch │ ├── Add-flag-for-save-data-header.patch │ ├── Add-flag-to-configure-maximum-connections-per-host.patch │ ├── Add-flag-to-control-video-playback-resume-feature.patch │ ├── Add-flag-to-disable-IPv6-probes.patch │ ├── Add-flag-to-disable-external-intent-requests.patch │ ├── Add-flag-to-disable-vibration.patch │ ├── Add-kill-switch-for-unsupported-clangd-flags.patch │ ├── Add-lifetime-options-for-permissions.patch │ ├── Add-menu-item-to-bookmark-all-tabs.patch │ ├── Add-menu-item-to-view-source.patch │ ├── Add-option-to-force-tablet-UI.patch │ ├── Add-option-to-not-persist-tabs-across-sessions.patch │ ├── Add-option-to-use-home-page-as-NTP.patch │ ├── Add-site-engagement-flag.patch │ ├── Add-support-for-ISupportHelpAndFeedback.patch │ ├── Add-support-for-writing-URIs.patch │ ├── Add-webGL-site-setting.patch │ ├── Add-webRTC-site-settings.patch │ ├── Allow-building-without-enable_reporting.patch │ ├── Allow-building-without-supervised-users.patch │ ├── Allow-playing-audio-in-background.patch │ ├── Always-use-new-tab-page-for-default-home-page.patch │ ├── AudioBuffer-AnalyserNode-fp-mitigations.patch │ ├── Battery-API-return-nothing.patch │ ├── Block-gateway-attacks-via-websockets.patch │ ├── Block-qjz9zk-or-trk-requests.patch │ ├── Bookmarks-select-all-menu-entry.patch │ ├── Bromite-auto-updater.patch │ ├── Bromite-package-name.patch │ ├── Bromite-subresource-adblocker.patch │ ├── Client-hints-overrides.patch │ ├── Content-settings-infrastructure.patch │ ├── Dictionary-suggestions-for-the-Omnibox.patch │ ├── Disable-Accessibility-service-by-default.patch │ ├── Disable-AsyncDNS-by-default.patch │ ├── Disable-DRM-media-origin-IDs-preprovisioning.patch │ ├── Disable-FLoC-and-privacy-sandbox.patch │ ├── Disable-NTP-remote-suggestions-by-default.patch │ ├── Disable-PrivacyGuide.patch │ ├── Disable-StartSurface-feature.patch │ ├── Disable-TLS-resumption.patch │ ├── Disable-UA-full-version.patch │ ├── Disable-add-to-home-screen-prompt.patch │ ├── Disable-all-predictors-code.patch │ ├── Disable-all-promo-dialogs.patch │ ├── Disable-conversion-measurement-api.patch │ ├── Disable-crash-reporting.patch │ ├── Disable-feeds-support-by-default.patch │ ├── Disable-fetching-of-all-field-trials.patch │ ├── Disable-idle-detection.patch │ ├── Disable-lock-icon-in-address-bar-by-default.patch │ ├── Disable-media-router-and-remoting-by-default.patch │ ├── Disable-minidump-upload-scheduling.patch │ ├── Disable-offline-pages-in-CCT.patch │ ├── Disable-omission-of-URL-elements-in-Omnibox.patch │ ├── Disable-plugins-enumeration.patch │ ├── Disable-references-to-fonts.googleapis.com.patch │ ├── Disable-requests-for-single-word-Omnibar-searches.patch │ ├── Disable-safety-check.patch │ ├── Disable-smart-selection-by-default.patch │ ├── Disable-some-signed-exchange-features.patch │ ├── Disable-support-for-RAR-files-inspection.patch │ ├── Disable-text-fragments-by-default.patch │ ├── Disable-the-DIAL-repeating-discovery.patch │ ├── Disable-third-party-origin-trials.patch │ ├── Disable-update-scheduler.patch │ ├── Disable-various-metrics.patch │ ├── Do-not-build-API-keys-infobar.patch │ ├── Do-not-compile-QR-code-sharing.patch │ ├── Do-not-hide-component-extensions.patch │ ├── Do-not-ignore-download-location-prompt-setting.patch │ ├── Do-not-link-with-libatomic.patch │ ├── Do-not-store-passwords-by-default.patch │ ├── DoH-improvements.patch │ ├── Enable-Certificate-Transparency.patch │ ├── Enable-ECH-by-default.patch │ ├── Enable-HEVC-by-default.patch │ ├── Enable-PermuteTLSExtensions-by-default.patch │ ├── Enable-SPPI-for-devices-with-enough-memory.patch │ ├── Enable-StrictOriginIsolation-and-SitePerProcess.patch │ ├── Enable-darken-websites-checkbox-in-themes.patch │ ├── Enable-fwrapv-in-Clang-for-non-UBSan-builds.patch │ ├── Enable-native-Android-autofill.patch │ ├── Enable-network-isolation-features.patch │ ├── Enable-prefetch-privacy-changes-by-default.patch │ ├── Enable-share-intent.patch │ ├── Enable-third-party-storage-partitioning.patch │ ├── Experimental-user-scripts-support.patch │ ├── Follow-only-system-dark-mode.patch │ ├── Guard-for-user-agent-reduction.patch │ ├── Hardening-against-incognito-mode-detection.patch │ ├── History-number-of-days-privacy-setting.patch │ ├── Ignore-enterprise-policies-for-secure-DNS.patch │ ├── Improve-plain-text-rendering-on-mobile.patch │ ├── Increase-number-of-autocomplete-matches-to-10.patch │ ├── Inject-scripts-for-AMP-tracking-ads-and-video.patch │ ├── Invalidate-components-public-key.patch │ ├── JIT-site-settings.patch │ ├── Keep-empty-tabs-between-sessions.patch │ ├── Keep-flag-to-allow-screenshots-in-Incognito-mode.patch │ ├── Logcat-crash-reports-UI.patch │ ├── Modify-default-preferences.patch │ ├── Move-navigation-bar-to-bottom.patch │ ├── Move-some-account-settings-back-to-privacy-settings.patch │ ├── Multiple-fingerprinting-mitigations.patch │ ├── Never-fetch-popular-sites.patch │ ├── Never-use-HTTP-probes-for-connection-detection.patch │ ├── Offer-builtin-autocomplete-for-chrome-flags.patch │ ├── OpenSearch-miscellaneous.patch │ ├── Override-Navigator-Language.patch │ ├── Partition-Blink-memory-cache.patch │ ├── Partition-blobs-by-top-frame-URL.patch │ ├── Re-introduce-modal-dialog-flag-to-close-all-tabs.patch │ ├── Re-introduce-override_build_timestamp.patch │ ├── Reduce-HTTP-headers-in-DoH-requests-to-bare-minimum.patch │ ├── Remove-EV-certificates.patch │ ├── Remove-HTTP-referrals-in-cross-origin-navigation.patch │ ├── Remove-SMS-integration.patch │ ├── Remove-binary-blob-integrations.patch │ ├── Remove-blocklisted-URLs-upon-bookmark-creation.patch │ ├── Remove-help-menu-item.patch │ ├── Remove-navigator.connection-info.patch │ ├── Remove-preload-of-com.google.android.gms.fonts.patch │ ├── Remove-segmentation-platform.patch │ ├── Remove-voice-recognition-integration.patch │ ├── Remove-window-name-on-cross-origin-navigation.patch │ ├── Replace-DoH-probe-domain-with-RIPE-domain.patch │ ├── Restore-Search-Ready-Omnibox-flag.patch │ ├── Restore-Simplified-NTP-launch.patch │ ├── Restore-adaptive-button-in-top-toolbar-customization.patch │ ├── Restore-classic-new-tab-page.patch │ ├── Restore-offline-indicator-v2-flag.patch │ ├── Revert-Delete-block-external-form-redirects.patch │ ├── Revert-Permit-blocking-of-view-source.patch │ ├── Revert-flags-remove-disable-pull-to-refresh-effect.patch │ ├── Revert-flags-remove-num-raster-threads.patch │ ├── Revert-removal-of-execution-context-address-space.patch │ ├── Samsung-Note-9-SDK27-crazylinker-workaround.patch │ ├── Show-site-settings-for-cookies-javascript-and-ads.patch │ ├── Site-setting-for-images.patch │ ├── Switch-to-fstack-protector-strong.patch │ ├── Timezone-customization.patch │ ├── Use-4-tile-rows-never-show-logo.patch │ ├── Use-64-bit-WebView-processes.patch │ ├── Use-dummy-DFM-installer.patch │ ├── User-agent-customization.patch │ ├── Viewport-Protection-Site-Setting.patch │ ├── Viewport-Protection-flag.patch │ ├── Welcome-screen.patch │ ├── autofill-miscellaneous.patch │ ├── bromite-build-utils.patch │ ├── build-remove-calling-untrusted-hooks.patch │ ├── disable-AdsBlockedInfoBar.patch │ ├── disable-WebView-variations-support.patch │ ├── disable-appending-variations-header.patch │ ├── disable-battery-status-updater.patch │ ├── dns-send-IPv6-connectivity-probes-to-RIPE-DNS.patch │ ├── do-not-add-suffix-to-package-name.patch │ ├── do-not-hide-.orig-files.patch │ ├── enable-ftrivial-auto-var-init-zero.patch │ ├── exit-on-failure-of-inclusion.patch │ ├── eyeo-beta-114.0.5735.53-v1-android_settings.patch │ ├── eyeo-beta-114.0.5735.53-v1-base.patch │ ├── eyeo-beta-114.0.5735.53-v1-extension_api.patch │ ├── first_run-deactivate-autoupdate-globally.patch │ ├── kill-Auth.patch │ ├── kill-Location-fall-back-to-system.patch │ ├── kill-Vision.patch │ ├── mime_util-force-text-x-suse-ymp-to-be-downloaded.patch │ ├── net-cert-increase-default-key-length.patch │ ├── openH264-enable-ARM-ARM64-optimizations.patch │ ├── prefs-always-prompt-for-download-directory.patch │ ├── profile-resetter-disable-send-settings.patch │ ├── sharing-hub-always-use-visible-URL.patch │ ├── translate-disable-fetching-of-languages-from-server.patch │ ├── ungoogled-chromium-Disable-Gaia.patch │ ├── ungoogled-chromium-Disable-Network-Time-Tracker.patch │ ├── ungoogled-chromium-Disable-intranet-detector.patch │ ├── ungoogled-chromium-Disable-profile-avatar.patch │ ├── ungoogled-chromium-Disable-translate-integration.patch │ ├── ungoogled-chromium-Disable-untraceable-URLs.patch │ ├── ungoogled-chromium-Disable-webRTC-log-uploader.patch │ ├── ungoogled-chromium-no-special-hosts-domains.patch │ ├── updater-disable-updater-pings.patch │ ├── webRTC-do-not-expose-local-IP-addresses.patch │ └── webview-Hard-no-to-persistent-histograms.patch └── ruleset_converter.gn_args ├── csagan5.asc └── tools ├── .gitignore ├── LICENSE ├── README.md ├── apply-all-patch.sh ├── apply-single-patch.sh ├── create-from-patch.sh ├── depot_tools.diff ├── export-all-patch.sh ├── export-patch-list.sh ├── export-single-patch.sh ├── goma_auth.py ├── images ├── bromite-build │ ├── Dockerfile │ ├── action.yaml │ ├── build_args.gni │ ├── casupload │ ├── generic_android31.textpb │ ├── goma_auth.py │ ├── pre-start.sh │ └── start-build.sh ├── bromite-source │ ├── Dockerfile │ ├── action.yaml │ └── apply-bromite-patches.sh ├── build-deps │ ├── Dockerfile │ └── action.yaml ├── buildstack.env.example ├── buildstack.yml ├── chr-source │ ├── Dockerfile │ ├── action.yaml │ ├── depot_tools.diff │ ├── prepare-build.sh │ └── remove_ninja_uploader.diff ├── docker-host │ └── Dockerfile ├── github-runner │ ├── .env.example │ ├── Dockerfile │ ├── docker.default │ ├── patched │ │ ├── RunnerService.js │ │ └── runsvc.sh │ ├── proxy.conf │ ├── start-runner.sh │ └── startup.sh ├── image-downloader │ └── check_and_download.sh ├── registry │ └── docker-compose.yml ├── remote-index │ ├── Dockerfile │ ├── entry_point.sh │ └── generate.sh ├── squid │ ├── Dockerfile │ ├── squid.conf │ ├── start-proxy.sh │ └── whitelist ├── terraform-buildgrid │ ├── buildgrid.tf │ ├── buildgrid.yml │ └── variables.tf └── test32bit │ ├── Dockerfile │ ├── bytecode_builtins_list_generator │ ├── gen-regexp-special-case │ └── torque └── ninja-one-target-for-compdb.patch /.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | # These are supported funding model platforms 2 | 3 | liberapay: csagan5 4 | custom: https://www.bromite.org/#donate 5 | -------------------------------------------------------------------------------- /.github/PULL_REQUEST_TEMPLATE.md: -------------------------------------------------------------------------------- 1 | ## Description 2 | 3 | *Please explain here what feature or bugfix these changes are addressing and why they should be included* 4 | 5 | ## All submissions 6 | 7 | * [ ] there are no other open [Pull Requests](../../../pulls) for the same update/change 8 | * [ ] Bromite can be built with these changes 9 | * [ ] I have tested that the new change works as intended (AVD or physical device will do) 10 | 11 | ### Format 12 | 13 | * [ ] patch subject and filename match (e.g. `Subject: Alternative cache (NIK-based)` -> `Alternative-cache-NIK-based.patch`) 14 | * [ ] patch description contains explanation of changes 15 | * [ ] no unnecessary whitespace or unrelated changes 16 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | ################################################################################ 2 | # This .gitignore file was automatically created by Microsoft(R) Visual Studio. 3 | ################################################################################ 4 | 5 | /.vs 6 | /temp 7 | -------------------------------------------------------------------------------- /build/LASTCHANGE: -------------------------------------------------------------------------------- 1 | e3a3a1fe718bf559be801d14660fb6f9dc9bf603- -------------------------------------------------------------------------------- /build/RELEASE: -------------------------------------------------------------------------------- 1 | 115.0.5790.171 2 | -------------------------------------------------------------------------------- /build/RELEASE_COMMIT: -------------------------------------------------------------------------------- 1 | 5923fa90d4e3587c130983442b9cf90f4c76e851 -------------------------------------------------------------------------------- /build/bromite.gn_args: -------------------------------------------------------------------------------- 1 | android_channel="stable" 2 | blink_symbol_level=1 3 | build_contextual_search=false 4 | build_with_tflite_lib=false 5 | chrome_pgo_phase=0 6 | dcheck_always_on=false 7 | debuggable_apks=false 8 | dfmify_dev_ui=false 9 | disable_android_lint=true 10 | disable_autofill_assistant_dfm=true 11 | disable_fieldtrial_testing_config=true 12 | disable_tab_ui_dfm=true 13 | enable_av1_decoder=true 14 | enable_dav1d_decoder=true 15 | enable_gvr_services=false 16 | enable_hangout_services_extension=false 17 | enable_iterator_debugging=false 18 | enable_mdns=false 19 | enable_mse_mpeg2ts_stream_parser=true 20 | enable_nacl=false 21 | enable_platform_dolby_vision=true 22 | enable_platform_hevc=true 23 | enable_remoting=false 24 | enable_reporting=false 25 | enable_vr=false 26 | exclude_unwind_tables=false 27 | ffmpeg_branding="Chrome" 28 | icu_use_data_file=true 29 | is_cfi=true 30 | is_component_build=false 31 | is_debug=false 32 | is_official_build=true 33 | proprietary_codecs=true 34 | rtc_build_examples=false 35 | symbol_level=1 36 | system_webview_package_name="org.bromite.webview" 37 | target_os="android" 38 | treat_warnings_as_errors=true 39 | use_cfi_cast=true 40 | use_debug_fission=true 41 | use_errorprone_java_compiler=false 42 | use_gnome_keyring=false 43 | use_official_google_api_keys=false 44 | use_rtti=false 45 | use_sysroot=false 46 | webview_includes_weblayer=false 47 | enable_arcore=false 48 | enable_openxr=false 49 | enable_gvr_services=false 50 | -------------------------------------------------------------------------------- /build/chromium.gn_args: -------------------------------------------------------------------------------- 1 | android_channel="stable" 2 | blink_symbol_level=1 3 | build_contextual_search=false 4 | build_with_tflite_lib=false 5 | chrome_pgo_phase=0 6 | dcheck_always_on=false 7 | debuggable_apks=false 8 | dfmify_dev_ui=false 9 | disable_android_lint=true 10 | disable_autofill_assistant_dfm=true 11 | disable_fieldtrial_testing_config=true 12 | disable_tab_ui_dfm=true 13 | enable_av1_decoder=true 14 | enable_dav1d_decoder=true 15 | enable_gvr_services=false 16 | enable_hangout_services_extension=false 17 | enable_iterator_debugging=false 18 | enable_mdns=false 19 | enable_mse_mpeg2ts_stream_parser=true 20 | enable_nacl=false 21 | enable_platform_dolby_vision=true 22 | enable_platform_hevc=true 23 | enable_remoting=false 24 | enable_reporting=true 25 | enable_supervised_users=false 26 | enable_vr=false 27 | exclude_unwind_tables=false 28 | ffmpeg_branding="Chrome" 29 | icu_use_data_file=true 30 | is_cfi=true 31 | is_component_build=false 32 | is_debug=false 33 | is_official_build=true 34 | proprietary_codecs=true 35 | rtc_build_examples=false 36 | safe_browsing_mode=2 37 | symbol_level=1 38 | system_webview_package_name="com.android.webview" 39 | target_os="android" 40 | treat_warnings_as_errors=true 41 | use_cfi_cast=true 42 | use_debug_fission=true 43 | use_errorprone_java_compiler=false 44 | use_gnome_keyring=false 45 | use_official_google_api_keys=false 46 | use_rtti=false 47 | use_sysroot=false 48 | webview_includes_weblayer=false 49 | -------------------------------------------------------------------------------- /build/chromium_patches_list.txt: -------------------------------------------------------------------------------- 1 | AV1-codec-support.patch 2 | exit-on-failure-of-inclusion.patch 3 | Reintroduce-override_build_timestamp.patch 4 | do-not-hide-.orig-files.patch 5 | Do-not-link-with-libatomic.patch 6 | do-not-add-suffix-to-package-name.patch 7 | Switch-to-fstack-protector-strong.patch 8 | Enable-fwrapv-in-Clang-for-non-UBSan-builds.patch 9 | enable-ftrivial-auto-var-init-zero.patch 10 | Disable-feeds-support-by-default.patch 11 | Chromium-package-name.patch 12 | -------------------------------------------------------------------------------- /build/patches/00114-temp-disable-find-bad-constructs-external-repo.patch: -------------------------------------------------------------------------------- 1 | From: uazo 2 | Date: Tue, 30 May 2023 15:45:59 +0000 3 | Subject: 114 temp disable find_bad_constructs external repo 4 | 5 | --- 6 | build/config/android/rules.gni | 1 + 7 | crypto/BUILD.gn | 1 + 8 | net/BUILD.gn | 1 + 9 | third_party/libevent/BUILD.gn | 2 ++ 10 | 4 files changed, 5 insertions(+) 11 | 12 | diff --git a/build/config/android/rules.gni b/build/config/android/rules.gni 13 | --- a/build/config/android/rules.gni 14 | +++ b/build/config/android/rules.gni 15 | @@ -5128,6 +5128,7 @@ if (enable_java_templates && is_android) { 16 | _module_build_config = _module.build_config 17 | _module_build_config_target = _module.build_config_target 18 | _module_target_name = get_label_info(_module_target, "name") 19 | + not_needed(["_module_target_name"]) 20 | 21 | if (!_proguard_enabled) { 22 | _dex_target = "${_module_target_name}__final_dex" 23 | diff --git a/crypto/BUILD.gn b/crypto/BUILD.gn 24 | --- a/crypto/BUILD.gn 25 | +++ b/crypto/BUILD.gn 26 | @@ -14,6 +14,7 @@ buildflag_header("buildflags") { 27 | } 28 | 29 | component("crypto") { 30 | + configs -= [ "//build/config/clang:find_bad_constructs" ] 31 | output_name = "crcrypto" # Avoid colliding with OpenSSL's libcrypto. 32 | sources = [ 33 | "aead.cc", 34 | diff --git a/net/BUILD.gn b/net/BUILD.gn 35 | --- a/net/BUILD.gn 36 | +++ b/net/BUILD.gn 37 | @@ -1634,6 +1634,7 @@ component("net") { 38 | configs -= [ "//build/config/compiler:default_optimization" ] 39 | configs += [ "//build/config/compiler:optimize_max" ] 40 | } 41 | + configs -= [ "//build/config/clang:find_bad_constructs" ] 42 | } 43 | 44 | # net_export.h has its own build target so that code (eg 45 | diff --git a/third_party/libevent/BUILD.gn b/third_party/libevent/BUILD.gn 46 | --- a/third_party/libevent/BUILD.gn 47 | +++ b/third_party/libevent/BUILD.gn 48 | @@ -69,6 +69,8 @@ static_library("libevent") { 49 | configs += [ "//build/config/compiler:optimize_max" ] 50 | } 51 | 52 | + configs -= [ "//build/config/clang:find_bad_constructs" ] 53 | + 54 | configs -= [ "//build/config/compiler:chromium_code" ] 55 | configs += [ "//build/config/compiler:no_chromium_code" ] 56 | } 57 | -- 58 | 2.25.1 59 | -------------------------------------------------------------------------------- /build/patches/00115-temp-fix-build.patch: -------------------------------------------------------------------------------- 1 | From: uazo 2 | Date: Tue, 18 Jul 2023 05:36:06 +0000 3 | Subject: 115 temp fix build 4 | 5 | Fix rust toolchain builder 6 | --- 7 | build/toolchain/gcc_toolchain.gni | 1 + 8 | 1 file changed, 1 insertion(+) 9 | 10 | diff --git a/build/toolchain/gcc_toolchain.gni b/build/toolchain/gcc_toolchain.gni 11 | --- a/build/toolchain/gcc_toolchain.gni 12 | +++ b/build/toolchain/gcc_toolchain.gni 13 | @@ -855,6 +855,7 @@ template("gcc_toolchain") { 14 | is_debug = false 15 | is_component_build = false 16 | is_official_build = false 17 | + generate_linker_map = false 18 | } 19 | } 20 | } 21 | -- 22 | 2.25.1 23 | -------------------------------------------------------------------------------- /build/patches/00Compress-libchrome-to-free-up-some-space.patch: -------------------------------------------------------------------------------- 1 | From: uazo 2 | Date: Wed, 19 Jul 2023 09:32:36 +0000 3 | Subject: Compress libchrome to free up some space 4 | 5 | upstream removed ModernLinker support for developer build (apk releases). 6 | see https://bugs.chromium.org/p/chromium/issues/detail?id=1383210 7 | --- 8 | chrome/android/chrome_public_apk_tmpl.gni | 1 + 9 | 1 file changed, 1 insertion(+) 10 | 11 | diff --git a/chrome/android/chrome_public_apk_tmpl.gni b/chrome/android/chrome_public_apk_tmpl.gni 12 | --- a/chrome/android/chrome_public_apk_tmpl.gni 13 | +++ b/chrome/android/chrome_public_apk_tmpl.gni 14 | @@ -636,6 +636,7 @@ template("chrome_common_apk_or_module_tmpl") { 15 | [ "//components/crash/core/app:chrome_crashpad_handler_named_as_so" ] 16 | loadable_modules += [ "$root_out_dir/libchrome_crashpad_handler.so" ] 17 | library_always_compress += [ "libchrome_crashpad_handler.so" ] 18 | + library_always_compress += [ "libchrome.so" ] 19 | } else if (!_is_trichrome) { 20 | # Crashpad trampoline lives in TrichromeLibrary.apk. 21 | # https://chromium.googlesource.com/chromium/src/+/main/docs/android_native_libraries.md#Crashpad-Packaging 22 | -- 23 | 2.25.1 24 | -------------------------------------------------------------------------------- /build/patches/00Deprecate-Data-URL-in-SVGUseElement.patch: -------------------------------------------------------------------------------- 1 | From: uazo 2 | Date: Mon, 5 Jun 2023 17:02:33 +0000 3 | Subject: Deprecate Data URL in SVGUseElement 4 | 5 | --- 6 | .../blink/renderer/platform/runtime_enabled_features.json5 | 5 ++--- 7 | 1 file changed, 2 insertions(+), 3 deletions(-) 8 | 9 | diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5 b/third_party/blink/renderer/platform/runtime_enabled_features.json5 10 | --- a/third_party/blink/renderer/platform/runtime_enabled_features.json5 11 | +++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5 12 | @@ -2944,9 +2944,8 @@ 13 | status: "stable", 14 | }, 15 | { 16 | - name: "RemoveDataUrlInSvgUse", 17 | - status: "experimental", 18 | - base_feature: "none", 19 | + name: "RemoveDataUrlInSvgUse", // enabled by default 20 | + status: "stable", 21 | }, 22 | { 23 | name: "RemoveLegacySizeComputation", 24 | -- 25 | 2.25.1 26 | -------------------------------------------------------------------------------- /build/patches/00Disable-BackForwardCache.patch: -------------------------------------------------------------------------------- 1 | From: Your Name 2 | Date: Tue, 14 Feb 2023 16:29:12 +0000 3 | Subject: Disable BackForwardCache 4 | 5 | --- 6 | content/public/common/content_features.cc | 6 +++--- 7 | 1 file changed, 3 insertions(+), 3 deletions(-) 8 | 9 | diff --git a/content/public/common/content_features.cc b/content/public/common/content_features.cc 10 | --- a/content/public/common/content_features.cc 11 | +++ b/content/public/common/content_features.cc 12 | @@ -97,9 +97,9 @@ BASE_FEATURE(kBackgroundFetch, 13 | base::FEATURE_ENABLED_BY_DEFAULT); 14 | 15 | // Enable using the BackForwardCache. 16 | -BASE_FEATURE(kBackForwardCache, 17 | - "BackForwardCache", 18 | - base::FEATURE_ENABLED_BY_DEFAULT); 19 | +BASE_FEATURE(kBackForwardCache, // **** 20 | + "BackForwardCache", // always disabled 21 | + base::FEATURE_DISABLED_BY_DEFAULT); // in bromite 22 | 23 | // Enable showing a page preview during back/forward navigations. 24 | BASE_FEATURE(kBackForwardTransitions, 25 | -- 26 | 2.25.1 27 | -------------------------------------------------------------------------------- /build/patches/00Disable-Component-Updates.patch: -------------------------------------------------------------------------------- 1 | From: Your Name 2 | Date: Tue, 8 Nov 2022 12:41:22 +0000 3 | Subject: Disable Component Updates 4 | 5 | --- 6 | chrome/browser/component_updater/registration.cc | 1 + 7 | components/component_updater/component_installer.cc | 1 + 8 | components/component_updater/component_updater_service.cc | 2 +- 9 | 3 files changed, 3 insertions(+), 1 deletion(-) 10 | 11 | diff --git a/chrome/browser/component_updater/registration.cc b/chrome/browser/component_updater/registration.cc 12 | --- a/chrome/browser/component_updater/registration.cc 13 | +++ b/chrome/browser/component_updater/registration.cc 14 | @@ -101,6 +101,7 @@ 15 | namespace component_updater { 16 | 17 | void RegisterComponentsForUpdate() { 18 | + if ((true)) return; 19 | auto* const cus = g_browser_process->component_updater(); 20 | 21 | #if BUILDFLAG(IS_WIN) 22 | diff --git a/components/component_updater/component_installer.cc b/components/component_updater/component_installer.cc 23 | --- a/components/component_updater/component_installer.cc 24 | +++ b/components/component_updater/component_installer.cc 25 | @@ -88,6 +88,7 @@ void ComponentInstaller::Register(RegisterCallback register_callback, 26 | base::OnceClosure callback, 27 | base::TaskPriority task_priority, 28 | const base::Version& registered_version) { 29 | + if ((true)) return; 30 | DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); 31 | 32 | task_runner_ = base::ThreadPool::CreateSequencedTaskRunner( 33 | diff --git a/components/component_updater/component_updater_service.cc b/components/component_updater/component_updater_service.cc 34 | --- a/components/component_updater/component_updater_service.cc 35 | +++ b/components/component_updater/component_updater_service.cc 36 | @@ -521,7 +521,7 @@ std::unique_ptr ComponentUpdateServiceFactory( 37 | // Register prefs required by the component update service. 38 | void RegisterComponentUpdateServicePrefs(PrefRegistrySimple* registry) { 39 | // The component updates are enabled by default, if the preference is not set. 40 | - registry->RegisterBooleanPref(prefs::kComponentUpdatesEnabled, true); 41 | + registry->RegisterBooleanPref(prefs::kComponentUpdatesEnabled, false); 42 | } 43 | 44 | } // namespace component_updater 45 | -- 46 | 2.25.1 47 | -------------------------------------------------------------------------------- /build/patches/00Disable-Compression-Dictionary-Transport.patch: -------------------------------------------------------------------------------- 1 | From: uazo 2 | Date: Sat, 3 Jun 2023 15:04:55 +0000 3 | Subject: Disable Compression Dictionary Transport 4 | 5 | --- 6 | .../renderer/platform/runtime_enabled_features.json5 | 8 ++++---- 7 | 1 file changed, 4 insertions(+), 4 deletions(-) 8 | 9 | diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5 b/third_party/blink/renderer/platform/runtime_enabled_features.json5 10 | --- a/third_party/blink/renderer/platform/runtime_enabled_features.json5 11 | +++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5 12 | @@ -677,16 +677,16 @@ 13 | status: "experimental", 14 | }, 15 | { 16 | - name: "CompressionDictionaryTransport", 17 | - base_feature_status: "enabled", 18 | - copied_from_base_feature_if: "overridden", 19 | + name: "CompressionDictionaryTransport", // need to be disabled 20 | origin_trial_feature_name: "CompressionDictionaryTransport", 21 | public: true, 22 | + status: "experimental", 23 | }, 24 | { 25 | - name: "CompressionDictionaryTransportBackend", 26 | + name: "CompressionDictionaryTransportBackend", // need to be disabled 27 | base_feature_status: "disabled", 28 | public: true, 29 | + status: "experimental", 30 | }, 31 | { 32 | name: "ComputedAccessibilityInfo", 33 | -- 34 | 2.25.1 35 | -------------------------------------------------------------------------------- /build/patches/00Disable-FedCm.patch: -------------------------------------------------------------------------------- 1 | From: Your Name 2 | Date: Tue, 14 Feb 2023 16:26:17 +0000 3 | Subject: Disable FedCm 4 | 5 | --- 6 | content/public/common/content_features.cc | 2 +- 7 | .../blink/renderer/platform/runtime_enabled_features.json5 | 2 +- 8 | 2 files changed, 2 insertions(+), 2 deletions(-) 9 | 10 | diff --git a/content/public/common/content_features.cc b/content/public/common/content_features.cc 11 | --- a/content/public/common/content_features.cc 12 | +++ b/content/public/common/content_features.cc 13 | @@ -395,7 +395,7 @@ BASE_FEATURE(kExtraSafelistedRequestHeadersForOutOfBlinkCors, 14 | // by the flag in RuntimeEnabledFeatures on the blink side. See also 15 | // the use of kSetOnlyIfOverridden in content/child/runtime_features.cc. 16 | // We enable it here by default to support use in origin trials. 17 | -BASE_FEATURE(kFedCm, "FedCm", base::FEATURE_ENABLED_BY_DEFAULT); 18 | +BASE_FEATURE(kFedCm, "FedCm", base::FEATURE_DISABLED_BY_DEFAULT); 19 | 20 | // Field trial boolean parameter which indicates whether FedCM IDP sign-out 21 | // is enabled. 22 | diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5 b/third_party/blink/renderer/platform/runtime_enabled_features.json5 23 | --- a/third_party/blink/renderer/platform/runtime_enabled_features.json5 24 | +++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5 25 | @@ -1574,7 +1574,7 @@ 26 | { 27 | name: "FedCm", 28 | public: true, 29 | - status: "stable", 30 | + status: "test", 31 | base_feature: "none", 32 | }, 33 | { 34 | -- 35 | 2.25.1 36 | -------------------------------------------------------------------------------- /build/patches/00Disable-FirstPartySets-and-StorageAccessAPI.patch: -------------------------------------------------------------------------------- 1 | From: uazo 2 | Date: Tue, 2 May 2023 15:26:46 +0000 3 | Subject: Disable FirstPartySets and StorageAccessAPI 4 | 5 | --- 6 | components/privacy_sandbox/privacy_sandbox_prefs.cc | 2 +- 7 | content/public/common/content_features.cc | 6 +++--- 8 | 2 files changed, 4 insertions(+), 4 deletions(-) 9 | 10 | diff --git a/components/privacy_sandbox/privacy_sandbox_prefs.cc b/components/privacy_sandbox/privacy_sandbox_prefs.cc 11 | --- a/components/privacy_sandbox/privacy_sandbox_prefs.cc 12 | +++ b/components/privacy_sandbox/privacy_sandbox_prefs.cc 13 | @@ -155,7 +155,7 @@ void RegisterProfilePrefs(PrefRegistrySimple* registry) { 14 | registry->RegisterBooleanPref( 15 | prefs::kPrivacySandboxFirstPartySetsDataAccessAllowedInitialized, false); 16 | registry->RegisterBooleanPref( 17 | - prefs::kPrivacySandboxFirstPartySetsEnabled, true, 18 | + prefs::kPrivacySandboxFirstPartySetsEnabled, false, 19 | user_prefs::PrefRegistrySyncable::SYNCABLE_PREF); 20 | 21 | registry->RegisterBooleanPref(prefs::kPrivacySandboxTopicsConsentGiven, 22 | diff --git a/content/public/common/content_features.cc b/content/public/common/content_features.cc 23 | --- a/content/public/common/content_features.cc 24 | +++ b/content/public/common/content_features.cc 25 | @@ -474,9 +474,9 @@ BASE_FEATURE(kWebIdentityMDocs, 26 | base::FEATURE_DISABLED_BY_DEFAULT); 27 | 28 | // Enables usage of First Party Sets to determine cookie availability. 29 | -BASE_FEATURE(kFirstPartySets, 30 | - "FirstPartySets", 31 | - base::FEATURE_DISABLED_BY_DEFAULT); 32 | +BASE_FEATURE(kFirstPartySets, // always 33 | + "FirstPartySets", // disabled 34 | + base::FEATURE_DISABLED_BY_DEFAULT); // in bromite 35 | 36 | // Controls whether to clear sites data on FPS transitions. 37 | const base::FeatureParam kFirstPartySetsClearSiteDataOnChangedSets{ 38 | -- 39 | 2.25.1 40 | -------------------------------------------------------------------------------- /build/patches/00Disable-PrivateStateTokens-API.patch: -------------------------------------------------------------------------------- 1 | From: uazo 2 | Date: Mon, 15 May 2023 12:33:18 +0000 3 | Subject: Disable PrivateStateTokens API 4 | 5 | --- 6 | services/network/public/cpp/features.cc | 6 +++--- 7 | 1 file changed, 3 insertions(+), 3 deletions(-) 8 | 9 | diff --git a/services/network/public/cpp/features.cc b/services/network/public/cpp/features.cc 10 | --- a/services/network/public/cpp/features.cc 11 | +++ b/services/network/public/cpp/features.cc 12 | @@ -147,12 +147,12 @@ BASE_FEATURE(kAttributionReportingCrossAppWeb, 13 | // set, and handling their responses, according to the protocol. 14 | // (See https://github.com/WICG/trust-token-api.) 15 | BASE_FEATURE(kPrivateStateTokens, 16 | - "PrivateStateTokens", 17 | - base::FEATURE_DISABLED_BY_DEFAULT); 18 | + "PrivateStateTokens", // must be disabled 19 | + base::FEATURE_DISABLED_BY_DEFAULT); // in bromite 20 | 21 | // Secondary flag used by the FLEDGE ads experiment in the interim before 22 | // PSTs are fully rolled out to stable. 23 | -BASE_FEATURE(kFledgePst, "TrustTokens", base::FEATURE_DISABLED_BY_DEFAULT); 24 | +BASE_FEATURE(kFledgePst, "TrustTokens", base::FEATURE_DISABLED_BY_DEFAULT); // must be disabled 25 | 26 | // Determines which Trust Tokens operations require the TrustTokens origin trial 27 | // active in order to be used. This is runtime-configurable so that the Trust 28 | -- 29 | 2.25.1 30 | -------------------------------------------------------------------------------- /build/patches/00Disable-SHA1-Server-Signature.patch: -------------------------------------------------------------------------------- 1 | From: uazo 2 | Date: Tue, 18 Apr 2023 14:17:19 +0000 3 | Subject: Disable SHA1 Server Signature 4 | 5 | --- 6 | net/base/features.cc | 4 ++-- 7 | 1 file changed, 2 insertions(+), 2 deletions(-) 8 | 9 | diff --git a/net/base/features.cc b/net/base/features.cc 10 | --- a/net/base/features.cc 11 | +++ b/net/base/features.cc 12 | @@ -79,8 +79,8 @@ BASE_FEATURE(kUseDnsHttpsSvcbAlpn, 13 | base::FEATURE_DISABLED_BY_DEFAULT); 14 | 15 | BASE_FEATURE(kSHA1ServerSignature, 16 | - "SHA1ServerSignature", 17 | - base::FEATURE_ENABLED_BY_DEFAULT); 18 | + "SHA1ServerSignature", // disabled 19 | + base::FEATURE_DISABLED_BY_DEFAULT); // in bromite 20 | 21 | BASE_FEATURE(kEnableTLS13EarlyData, 22 | "EnableTLS13EarlyData", 23 | -- 24 | 2.25.1 25 | -------------------------------------------------------------------------------- /build/patches/00Disable-WebGPU.patch: -------------------------------------------------------------------------------- 1 | From: uazo 2 | Date: Mon, 1 May 2023 12:07:49 +0000 3 | Subject: Disable WebGPU 4 | 5 | --- 6 | gpu/config/gpu_finch_features.cc | 2 +- 7 | .../blink/renderer/platform/runtime_enabled_features.json5 | 2 +- 8 | 2 files changed, 2 insertions(+), 2 deletions(-) 9 | 10 | diff --git a/gpu/config/gpu_finch_features.cc b/gpu/config/gpu_finch_features.cc 11 | --- a/gpu/config/gpu_finch_features.cc 12 | +++ b/gpu/config/gpu_finch_features.cc 13 | @@ -267,7 +267,7 @@ BASE_FEATURE(kEnableDrDcVulkan, 14 | BASE_FEATURE(kWebGPUService, 15 | "WebGPUService", 16 | #if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_CHROMEOS_ASH) 17 | - base::FEATURE_ENABLED_BY_DEFAULT 18 | + base::FEATURE_DISABLED_BY_DEFAULT 19 | #else 20 | base::FEATURE_DISABLED_BY_DEFAULT 21 | #endif 22 | diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5 b/third_party/blink/renderer/platform/runtime_enabled_features.json5 23 | --- a/third_party/blink/renderer/platform/runtime_enabled_features.json5 24 | +++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5 25 | @@ -3962,7 +3962,7 @@ 26 | // Note that this isn't enough to enable WebGPU and that access to 27 | // WebGPU is further gated on the "WebGPUService" feature exposing GPU 28 | // process access to WebGPU to the renderer process. 29 | - status: "stable", 30 | + status: "test", 31 | }, 32 | { 33 | // WebGPU developer features are deliberately not enabled by experimental 34 | -- 35 | 2.25.1 36 | -------------------------------------------------------------------------------- /build/patches/00Disable-csp-reports.patch: -------------------------------------------------------------------------------- 1 | From: Your Name 2 | Date: Sun, 26 Feb 2023 19:46:04 +0000 3 | Subject: Disable csp reports 4 | 5 | --- 6 | third_party/blink/renderer/core/loader/ping_loader.cc | 3 +++ 7 | 1 file changed, 3 insertions(+) 8 | 9 | diff --git a/third_party/blink/renderer/core/loader/ping_loader.cc b/third_party/blink/renderer/core/loader/ping_loader.cc 10 | --- a/third_party/blink/renderer/core/loader/ping_loader.cc 11 | +++ b/third_party/blink/renderer/core/loader/ping_loader.cc 12 | @@ -68,6 +68,7 @@ bool SendBeaconCommon(const ScriptState& state, 13 | LocalFrame* frame, 14 | const KURL& url, 15 | const BeaconData& beacon) { 16 | + if ((true)) return true; 17 | if (!frame->DomWindow() 18 | ->GetContentSecurityPolicyForWorld(&state.World()) 19 | ->AllowConnectToSource(url, url, RedirectStatus::kNoRedirect)) { 20 | @@ -103,6 +104,7 @@ bool SendBeaconCommon(const ScriptState& state, 21 | void PingLoader::SendLinkAuditPing(LocalFrame* frame, 22 | const KURL& ping_url, 23 | const KURL& destination_url) { 24 | + if ((true)) return; 25 | if (!ping_url.ProtocolIsInHTTPFamily()) 26 | return; 27 | 28 | @@ -139,6 +141,7 @@ void PingLoader::SendLinkAuditPing(LocalFrame* frame, 29 | void PingLoader::SendViolationReport(ExecutionContext* execution_context, 30 | const KURL& report_url, 31 | scoped_refptr report) { 32 | + if ((true)) return; 33 | ResourceRequest request(report_url); 34 | request.SetHttpMethod(http_names::kPOST); 35 | request.SetHTTPContentType("application/csp-report"); 36 | -- 37 | 2.25.1 38 | -------------------------------------------------------------------------------- /build/patches/00Disable-devtools-remote-and-custom-protocols.patch: -------------------------------------------------------------------------------- 1 | From: uazo 2 | Date: Mon, 17 Apr 2023 12:38:44 +0000 3 | Subject: Disable devtools remote and custom protocols 4 | 5 | --- 6 | chrome/browser/ui/webui/devtools_ui_data_source.cc | 4 ++-- 7 | 1 file changed, 2 insertions(+), 2 deletions(-) 8 | 9 | diff --git a/chrome/browser/ui/webui/devtools_ui_data_source.cc b/chrome/browser/ui/webui/devtools_ui_data_source.cc 10 | --- a/chrome/browser/ui/webui/devtools_ui_data_source.cc 11 | +++ b/chrome/browser/ui/webui/devtools_ui_data_source.cc 12 | @@ -175,7 +175,7 @@ void DevToolsDataSource::StartDataRequest( 13 | // Serve request to devtools://remote from remote location. 14 | std::string remote_path_prefix(chrome::kChromeUIDevToolsRemotePath); 15 | remote_path_prefix += "/"; 16 | - if (base::StartsWith(path, remote_path_prefix, 17 | + if ((false) && base::StartsWith(path, remote_path_prefix, 18 | base::CompareCase::INSENSITIVE_ASCII)) { 19 | if (MaybeHandleCustomRequest(path.substr(remote_path_prefix.length()), 20 | &callback)) { 21 | @@ -198,7 +198,7 @@ void DevToolsDataSource::StartDataRequest( 22 | // Serve request to devtools://custom from custom URL. 23 | std::string custom_path_prefix(chrome::kChromeUIDevToolsCustomPath); 24 | custom_path_prefix += "/"; 25 | - if (base::StartsWith(path, custom_path_prefix, 26 | + if ((false) && base::StartsWith(path, custom_path_prefix, 27 | base::CompareCase::INSENSITIVE_ASCII)) { 28 | GURL custom_devtools_frontend = GetCustomDevToolsFrontendURL(); 29 | if (!custom_devtools_frontend.is_empty()) { 30 | -- 31 | 2.25.1 32 | -------------------------------------------------------------------------------- /build/patches/00Disallow-Android-App-Scheme-as-referrer.patch: -------------------------------------------------------------------------------- 1 | From: uazo 2 | Date: Sat, 3 Jun 2023 15:09:26 +0000 3 | Subject: Disallow Android App Scheme as referrer 4 | 5 | --- 6 | chrome/renderer/chrome_content_renderer_client.cc | 5 ----- 7 | 1 file changed, 5 deletions(-) 8 | 9 | diff --git a/chrome/renderer/chrome_content_renderer_client.cc b/chrome/renderer/chrome_content_renderer_client.cc 10 | --- a/chrome/renderer/chrome_content_renderer_client.cc 11 | +++ b/chrome/renderer/chrome_content_renderer_client.cc 12 | @@ -525,11 +525,6 @@ void ChromeContentRendererClient::RenderThreadStarted() { 13 | // TODO(nyquist): Add test to ensure this happens when the flag is set. 14 | WebSecurityPolicy::RegisterURLSchemeAsDisplayIsolated(dom_distiller_scheme); 15 | 16 | -#if BUILDFLAG(IS_ANDROID) 17 | - WebSecurityPolicy::RegisterURLSchemeAsAllowedForReferrer( 18 | - WebString::FromUTF8(content::kAndroidAppScheme)); 19 | -#endif 20 | - 21 | // chrome-search: pages should not be accessible by bookmarklets 22 | // or javascript: URLs typed in the omnibox. 23 | WebSecurityPolicy::RegisterURLSchemeAsNotAllowingJavascriptURLs( 24 | -- 25 | 2.25.1 26 | -------------------------------------------------------------------------------- /build/patches/00Disallowing-MIDI-permission-by-default.patch: -------------------------------------------------------------------------------- 1 | From: uazo 2 | Date: Sat, 3 Jun 2023 13:11:22 +0000 3 | Subject: Disallowing MIDI permission by default 4 | 5 | --- 6 | components/permissions/features.cc | 2 +- 7 | 1 file changed, 1 insertion(+), 1 deletion(-) 8 | 9 | diff --git a/components/permissions/features.cc b/components/permissions/features.cc 10 | --- a/components/permissions/features.cc 11 | +++ b/components/permissions/features.cc 12 | @@ -145,7 +145,7 @@ BASE_FEATURE(kWindowManagementPermissionAlias, 13 | // Enables disallowing MIDI permission by default. 14 | BASE_FEATURE(kBlockMidiByDefault, 15 | "BlockMidiByDefault", 16 | - base::FEATURE_DISABLED_BY_DEFAULT); 17 | + base::FEATURE_ENABLED_BY_DEFAULT); 18 | 19 | } // namespace features 20 | namespace feature_params { 21 | -- 22 | 2.25.1 23 | -------------------------------------------------------------------------------- /build/patches/00Evict-the-entire-FrameTree-like-desktop.patch: -------------------------------------------------------------------------------- 1 | From: Your Name 2 | Date: Tue, 14 Feb 2023 16:23:08 +0000 3 | Subject: Evict the entire FrameTree like desktop 4 | 5 | --- 6 | components/viz/common/features.cc | 2 +- 7 | content/public/common/content_features.cc | 4 ++-- 8 | 2 files changed, 3 insertions(+), 3 deletions(-) 9 | 10 | diff --git a/components/viz/common/features.cc b/components/viz/common/features.cc 11 | --- a/components/viz/common/features.cc 12 | +++ b/components/viz/common/features.cc 13 | @@ -233,7 +233,7 @@ BASE_FEATURE(kRendererAllocatesImages, 14 | // evicts itself. This differs from Destkop platforms which evict the entire 15 | // FrameTree along with the topmost viz::Surface. When this feature is enabled, 16 | // Android will begin also evicting the entire FrameTree. 17 | -BASE_FEATURE(kEvictSubtree, "EvictSubtree", base::FEATURE_DISABLED_BY_DEFAULT); 18 | +BASE_FEATURE(kEvictSubtree, "EvictSubtree", base::FEATURE_ENABLED_BY_DEFAULT); 19 | 20 | // If enabled, CompositorFrameSinkClient::OnBeginFrame is also treated as the 21 | // DidReceiveCompositorFrameAck. Both in providing the Ack for the previous 22 | diff --git a/content/public/common/content_features.cc b/content/public/common/content_features.cc 23 | --- a/content/public/common/content_features.cc 24 | +++ b/content/public/common/content_features.cc 25 | @@ -569,8 +569,8 @@ BASE_FEATURE(kInMemoryCodeCache, 26 | // frames. Otherwise only toplevel frames and OOPIF are handled, and other 27 | // cases, e.g. PDF tiles are ignored. See https://crbug.com/1360351 for details. 28 | BASE_FEATURE(kInnerFrameCompositorSurfaceEviction, 29 | - "InnerFrameCompositorSurfaceEviction", 30 | - base::FEATURE_ENABLED_BY_DEFAULT); 31 | + "InnerFrameCompositorSurfaceEviction", // guard this 32 | + base::FEATURE_ENABLED_BY_DEFAULT); // guard this 33 | 34 | // Kill switch for the GetInstalledRelatedApps API. 35 | BASE_FEATURE(kInstalledApp, "InstalledApp", base::FEATURE_ENABLED_BY_DEFAULT); 36 | -- 37 | 2.25.1 38 | -------------------------------------------------------------------------------- /build/patches/00Keep-Side-Panel-Companion-disabled.patch: -------------------------------------------------------------------------------- 1 | From: uazo 2 | Date: Mon, 17 Jul 2023 15:24:16 +0000 3 | Subject: Keep Side Panel Companion disabled 4 | 5 | --- 6 | chrome/browser/companion/core/features.cc | 13 +++++++------ 7 | 1 file changed, 7 insertions(+), 6 deletions(-) 8 | 9 | diff --git a/chrome/browser/companion/core/features.cc b/chrome/browser/companion/core/features.cc 10 | --- a/chrome/browser/companion/core/features.cc 11 | +++ b/chrome/browser/companion/core/features.cc 12 | @@ -19,14 +19,14 @@ namespace features { 13 | namespace internal { 14 | // This differs from the search companion by providing a separate WebUI that 15 | // contains untrusted content in an iframe. 16 | -BASE_FEATURE(kSidePanelCompanion, 17 | - "SidePanelCompanion", 18 | - base::FEATURE_DISABLED_BY_DEFAULT); 19 | +BASE_FEATURE(kSidePanelCompanion, // keep 20 | + "SidePanelCompanion", // disabled 21 | + base::FEATURE_DISABLED_BY_DEFAULT); // in bromite 22 | // Dynamically enables the search companion if the user has experiments 23 | // enabled. 24 | -BASE_FEATURE(kCompanionEnabledByObservingExpsNavigations, 25 | - "CompanionEnabledByObservingExpsNavigations", 26 | - base::FEATURE_DISABLED_BY_DEFAULT); 27 | +BASE_FEATURE(kCompanionEnabledByObservingExpsNavigations, // keep 28 | + "CompanionEnabledByObservingExpsNavigations", // disabled 29 | + base::FEATURE_DISABLED_BY_DEFAULT); // in bromite 30 | } // namespace internal 31 | 32 | } // namespace features 33 | @@ -39,6 +39,7 @@ const char kDisableCheckUserPermissionsForCompanion[] = 34 | const char kForceCompanionPinnedState[] = "force-companion-pinned-state"; 35 | 36 | bool ShouldOverrideCheckingUserPermissionsForCompanion() { 37 | + if ((true)) return false; 38 | base::CommandLine* command_line = base::CommandLine::ForCurrentProcess(); 39 | return command_line->HasSwitch(kDisableCheckUserPermissionsForCompanion); 40 | } 41 | -- 42 | 2.25.1 43 | -------------------------------------------------------------------------------- /build/patches/00Lock-Profile-Cookie-Database.patch: -------------------------------------------------------------------------------- 1 | From: uazo 2 | Date: Mon, 17 Jul 2023 15:24:54 +0000 3 | Subject: Lock Profile Cookie Database 4 | 5 | --- 6 | chrome/browser/browser_features.cc | 2 +- 7 | 1 file changed, 1 insertion(+), 1 deletion(-) 8 | 9 | diff --git a/chrome/browser/browser_features.cc b/chrome/browser/browser_features.cc 10 | --- a/chrome/browser/browser_features.cc 11 | +++ b/chrome/browser/browser_features.cc 12 | @@ -201,7 +201,7 @@ BASE_FEATURE(kAppBoundEncryptionMetrics, 13 | // TODO(crbug.com/1430226): Remove after fully launched. 14 | BASE_FEATURE(kLockProfileCookieDatabase, 15 | "LockProfileCookieDatabase", 16 | - base::FEATURE_DISABLED_BY_DEFAULT); 17 | + base::FEATURE_ENABLED_BY_DEFAULT); 18 | #endif 19 | 20 | // Enables showing the email of the flex org admin that setup CBCM in the 21 | -- 22 | 2.25.1 23 | -------------------------------------------------------------------------------- /build/patches/00Remove-auth-header-upon-cross-origin-redirect.patch: -------------------------------------------------------------------------------- 1 | From: uazo 2 | Date: Wed, 19 Apr 2023 06:53:19 +0000 3 | Subject: Remove auth header upon cross origin redirect 4 | 5 | --- 6 | .../blink/renderer/platform/loader/fetch/resource_loader.cc | 3 +++ 7 | .../platform/loader/fetch/url_loader/sync_load_context.cc | 3 +++ 8 | 2 files changed, 6 insertions(+) 9 | 10 | diff --git a/third_party/blink/renderer/platform/loader/fetch/resource_loader.cc b/third_party/blink/renderer/platform/loader/fetch/resource_loader.cc 11 | --- a/third_party/blink/renderer/platform/loader/fetch/resource_loader.cc 12 | +++ b/third_party/blink/renderer/platform/loader/fetch/resource_loader.cc 13 | @@ -837,6 +837,9 @@ bool ResourceLoader::WillFollowRedirect( 14 | new_url)) { 15 | fetcher_->GetUseCounter().CountUse( 16 | mojom::WebFeature::kAuthorizationCrossOrigin); 17 | + if (removed_headers) { 18 | + removed_headers->push_back(net::HttpRequestHeaders::kAuthorization); 19 | + } 20 | } 21 | 22 | if (removed_headers) { 23 | diff --git a/third_party/blink/renderer/platform/loader/fetch/url_loader/sync_load_context.cc b/third_party/blink/renderer/platform/loader/fetch/url_loader/sync_load_context.cc 24 | --- a/third_party/blink/renderer/platform/loader/fetch/url_loader/sync_load_context.cc 25 | +++ b/third_party/blink/renderer/platform/loader/fetch/url_loader/sync_load_context.cc 26 | @@ -172,6 +172,9 @@ bool SyncLoadContext::OnReceivedRedirect( 27 | if (has_authorization_header_ && 28 | !url::IsSameOriginWith(response_->url, redirect_info.new_url)) { 29 | response_->has_authorization_header_between_cross_origin_redirect_ = true; 30 | + if (removed_headers) { 31 | + removed_headers->push_back(net::HttpRequestHeaders::kAuthorization); 32 | + } 33 | } 34 | 35 | if (removed_headers) { 36 | -- 37 | 2.25.1 38 | -------------------------------------------------------------------------------- /build/patches/00Remove-detection-of-captive-portals.patch: -------------------------------------------------------------------------------- 1 | From: uazo 2 | Date: Mon, 17 Apr 2023 12:43:19 +0000 3 | Subject: Remove detection of captive portals 4 | 5 | --- 6 | chrome/browser/net/profile_network_context_service.cc | 2 +- 7 | 1 file changed, 1 insertion(+), 1 deletion(-) 8 | 9 | diff --git a/chrome/browser/net/profile_network_context_service.cc b/chrome/browser/net/profile_network_context_service.cc 10 | --- a/chrome/browser/net/profile_network_context_service.cc 11 | +++ b/chrome/browser/net/profile_network_context_service.cc 12 | @@ -389,7 +389,7 @@ void ProfileNetworkContextService::UpdateAdditionalCertificates() { 13 | void ProfileNetworkContextService::RegisterProfilePrefs( 14 | user_prefs::PrefRegistrySyncable* registry) { 15 | registry->RegisterBooleanPref( 16 | - embedder_support::kAlternateErrorPagesEnabled, true, 17 | + embedder_support::kAlternateErrorPagesEnabled, false, 18 | user_prefs::PrefRegistrySyncable::SYNCABLE_PREF); 19 | registry->RegisterBooleanPref(prefs::kQuicAllowed, true); 20 | registry->RegisterBooleanPref(prefs::kGloballyScopeHTTPAuthCacheEnabled, 21 | -- 22 | 2.25.1 23 | -------------------------------------------------------------------------------- /build/patches/00Remove-experimental-relative-c---abi-vtables.patch: -------------------------------------------------------------------------------- 1 | From: Your Name 2 | Date: Mon, 30 Jan 2023 15:20:53 +0000 3 | Subject: Remove experimental-relative-c++-abi-vtables 4 | 5 | --- 6 | build/config/compiler/BUILD.gn | 5 ----- 7 | 1 file changed, 5 deletions(-) 8 | 9 | diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn 10 | --- a/build/config/compiler/BUILD.gn 11 | +++ b/build/config/compiler/BUILD.gn 12 | @@ -679,11 +679,6 @@ config("compiler") { 13 | cflags_cc += [ "-Wno-trigraphs" ] 14 | } 15 | 16 | - if (use_relative_vtables_abi) { 17 | - cflags_cc += [ "-fexperimental-relative-c++-abi-vtables" ] 18 | - ldflags += [ "-fexperimental-relative-c++-abi-vtables" ] 19 | - } 20 | - 21 | # Add flags for link-time optimization. These flags enable 22 | # optimizations/transformations that require whole-program visibility at link 23 | # time, so they need to be applied to all translation units, and we may end up 24 | -- 25 | 2.25.1 26 | -------------------------------------------------------------------------------- /build/patches/00Remove-https-connection-from-chrome-discards.patch: -------------------------------------------------------------------------------- 1 | From: uazo 2 | Date: Thu, 20 Apr 2023 15:03:56 +0000 3 | Subject: Remove https connection from chrome://discards 4 | 5 | --- 6 | chrome/browser/resources/discards/graph_doc_template.html | 4 ---- 7 | 1 file changed, 4 deletions(-) 8 | 9 | diff --git a/chrome/browser/resources/discards/graph_doc_template.html b/chrome/browser/resources/discards/graph_doc_template.html 10 | --- a/chrome/browser/resources/discards/graph_doc_template.html 11 | +++ b/chrome/browser/resources/discards/graph_doc_template.html 12 | @@ -82,10 +82,6 @@ URL. As result, this document needs to be self-contained, hence inline scripts. 13 | } 14 | 15 | 16 | - 20 | 23 | -- 24 | 2.25.1 25 | -------------------------------------------------------------------------------- /build/patches/00Show-warnings-on-downloads-over-HTTP.patch: -------------------------------------------------------------------------------- 1 | From: uazo 2 | Date: Mon, 17 Jul 2023 15:26:11 +0000 3 | Subject: Show warnings on downloads over HTTP 4 | 5 | --- 6 | chrome/common/chrome_features.cc | 6 +++--- 7 | 1 file changed, 3 insertions(+), 3 deletions(-) 8 | 9 | diff --git a/chrome/common/chrome_features.cc b/chrome/common/chrome_features.cc 10 | --- a/chrome/common/chrome_features.cc 11 | +++ b/chrome/common/chrome_features.cc 12 | @@ -1136,9 +1136,9 @@ BASE_FEATURE(kTreatUnsafeDownloadsAsActive, 13 | base::FEATURE_ENABLED_BY_DEFAULT); 14 | 15 | // Show warnings on downloads not delivered over HTTPS. 16 | -BASE_FEATURE(kInsecureDownloadWarnings, 17 | - "InsecureDownloadWarnings", 18 | - base::FEATURE_DISABLED_BY_DEFAULT); 19 | +BASE_FEATURE(kInsecureDownloadWarnings, // enabled by 20 | + "InsecureDownloadWarnings", // default 21 | + base::FEATURE_ENABLED_BY_DEFAULT); // in bromite 22 | 23 | // TrustSafetySentimentSurvey 24 | #if !BUILDFLAG(IS_ANDROID) 25 | -- 26 | 2.25.1 27 | -------------------------------------------------------------------------------- /build/patches/00TEMP-Add-a-log-to-track-strange-behavior.patch: -------------------------------------------------------------------------------- 1 | From: uazo 2 | Date: Fri, 19 May 2023 12:26:37 +0000 3 | Subject: TEMP Add a log to track strange behavior 4 | 5 | --- 6 | net/spdy/spdy_session.cc | 1 + 7 | 1 file changed, 1 insertion(+) 8 | 9 | diff --git a/net/spdy/spdy_session.cc b/net/spdy/spdy_session.cc 10 | --- a/net/spdy/spdy_session.cc 11 | +++ b/net/spdy/spdy_session.cc 12 | @@ -3262,6 +3262,7 @@ void SpdySession::OnHeaders(spdy::SpdyStreamId stream_id, 13 | if (it == active_streams_.end()) { 14 | // NOTE: it may just be that the stream was cancelled. 15 | LOG(WARNING) << "Received HEADERS for invalid stream " << stream_id; 16 | + LOG(WARNING) << "--- " << headers.DebugString(); 17 | return; 18 | } 19 | 20 | -- 21 | 2.25.1 22 | -------------------------------------------------------------------------------- /build/patches/00Temp-Disable-kAutomaticLazyFrameLoadingToEmbeds.patch: -------------------------------------------------------------------------------- 1 | From: Your Name 2 | Date: Tue, 20 Dec 2022 15:09:46 +0000 3 | Subject: Temp Disable kAutomaticLazyFrameLoadingToEmbeds 4 | 5 | --- 6 | third_party/blink/common/features.cc | 2 +- 7 | 1 file changed, 1 insertion(+), 1 deletion(-) 8 | 9 | diff --git a/third_party/blink/common/features.cc b/third_party/blink/common/features.cc 10 | --- a/third_party/blink/common/features.cc 11 | +++ b/third_party/blink/common/features.cc 12 | @@ -65,7 +65,7 @@ const base::FeatureParam kSkipFrameCountForLazyAds( 13 | // Vitals. 14 | BASE_FEATURE(kAutomaticLazyFrameLoadingToEmbeds, 15 | "AutomaticLazyFrameLoadingToEmbeds", // must be enabled 16 | - base::FEATURE_ENABLED_BY_DEFAULT); // in Bromite 17 | + base::FEATURE_DISABLED_BY_DEFAULT); // in Bromite 18 | 19 | // The timeout value that forces loading iframes that are lazy loaded by 20 | // LazyEmbeds. After this timeout, the frame loading is triggered even when the 21 | -- 22 | 2.25.1 23 | -------------------------------------------------------------------------------- /build/patches/00WIN-ADDTO-AImageReader-CFI-crash-mitigations.patch: -------------------------------------------------------------------------------- 1 | From: Your Name 2 | Date: Wed, 12 Oct 2022 11:36:56 +0000 3 | Subject: WIN ADDTO AImageReader CFI crash mitigations 4 | 5 | --- 6 | gpu/ipc/service/gpu_init.cc | 2 ++ 7 | 1 file changed, 2 insertions(+) 8 | 9 | diff --git a/gpu/ipc/service/gpu_init.cc b/gpu/ipc/service/gpu_init.cc 10 | --- a/gpu/ipc/service/gpu_init.cc 11 | +++ b/gpu/ipc/service/gpu_init.cc 12 | @@ -614,10 +614,12 @@ bool GpuInit::InitializeAndStartSandbox(base::CommandLine* command_line, 13 | } 14 | #endif // BUILDFLAG(IS_WIN) 15 | 16 | +#if BUILDFLAG(IS_ANDROID) 17 | // Disable AImageReader if the workaround is enabled. 18 | if (gpu_feature_info_.IsWorkaroundEnabled(DISABLE_AIMAGEREADER)) { 19 | base::android::AndroidImageReader::DisableSupport(); 20 | } 21 | +#endif 22 | 23 | if (gpu_feature_info_.status_values[GPU_FEATURE_TYPE_VULKAN] != 24 | kGpuFeatureStatusEnabled || 25 | -- 26 | 2.25.1 27 | -------------------------------------------------------------------------------- /build/patches/00WIN-ADDTO-Add-AllowUserCertificates-flag.patch: -------------------------------------------------------------------------------- 1 | From: Your Name 2 | Date: Mon, 19 Dec 2022 11:23:10 +0000 3 | Subject: WIN ADDTO Add AllowUserCertificates flag 4 | 5 | --- 6 | chrome/browser/about_flags.cc | 2 ++ 7 | 1 file changed, 2 insertions(+) 8 | 9 | diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc 10 | --- a/chrome/browser/about_flags.cc 11 | +++ b/chrome/browser/about_flags.cc 12 | @@ -9226,10 +9226,12 @@ const FeatureEntry kFeatureEntries[] = { 13 | flag_descriptions::kHttpsUpgradesDescription, kOsDesktop | kOsAndroid, 14 | FEATURE_VALUE_TYPE(features::kHttpsUpgrades)}, 15 | 16 | +#if BUILDFLAG(IS_ANDROID) 17 | {"allow-user-certificates", 18 | flag_descriptions::kAllowUserCertificatesName, 19 | flag_descriptions::kAllowUserCertificatesDescription, kOsAndroid, 20 | FEATURE_VALUE_TYPE(chrome::android::kAllowUserCertificates)}, 21 | +#endif 22 | {"omnibox-updated-connection-security-indicators", 23 | flag_descriptions::kOmniboxUpdatedConnectionSecurityIndicatorsName, 24 | flag_descriptions::kOmniboxUpdatedConnectionSecurityIndicatorsDescription, 25 | -- 26 | 2.25.1 27 | -------------------------------------------------------------------------------- /build/patches/00WIN-ADDTO-Add-a-proxy-configuration-page.patch: -------------------------------------------------------------------------------- 1 | From: Your Name 2 | Date: Wed, 12 Oct 2022 10:59:27 +0000 3 | Subject: WIN ADDTO Add a proxy configuration page 4 | 5 | --- 6 | chrome/browser/browser_resources.grd | 6 ++---- 7 | chrome/browser/extensions/api/proxy/proxy_api_helpers.cc | 2 +- 8 | 2 files changed, 3 insertions(+), 5 deletions(-) 9 | 10 | diff --git a/chrome/browser/browser_resources.grd b/chrome/browser/browser_resources.grd 11 | --- a/chrome/browser/browser_resources.grd 12 | +++ b/chrome/browser/browser_resources.grd 13 | @@ -293,10 +293,8 @@ 14 | 15 | 16 | 17 | - 18 | - 19 | - 20 | - 21 | + 22 | + 23 | 24 | 25 | 26 | diff --git a/chrome/browser/extensions/api/proxy/proxy_api_helpers.cc b/chrome/browser/extensions/api/proxy/proxy_api_helpers.cc 27 | --- a/chrome/browser/extensions/api/proxy/proxy_api_helpers.cc 28 | +++ b/chrome/browser/extensions/api/proxy/proxy_api_helpers.cc 29 | @@ -388,7 +388,7 @@ absl::optional CreateProxyConfigDict( 30 | return absl::nullopt; 31 | } 32 | return ProxyConfigDictionary::CreateFixedServers(proxy_rules_string, 33 | - bypass_list); 34 | + bypass_list, /*reverse_bypass*/false); 35 | } 36 | case ProxyPrefs::MODE_SYSTEM: 37 | return ProxyConfigDictionary::CreateSystem(); 38 | -- 39 | 2.25.1 40 | -------------------------------------------------------------------------------- /build/patches/00WIN-ADDTO-Add-lifetime-options-for-permissions.patch: -------------------------------------------------------------------------------- 1 | From: Your Name 2 | Date: Wed, 12 Oct 2022 11:52:11 +0000 3 | Subject: WIN ADDTO Add lifetime options for permissions 4 | 5 | --- 6 | .../ui/views/permissions/permission_prompt_bubble_base_view.cc | 2 +- 7 | 1 file changed, 1 insertion(+), 1 deletion(-) 8 | 9 | diff --git a/chrome/browser/ui/views/permissions/permission_prompt_bubble_base_view.cc b/chrome/browser/ui/views/permissions/permission_prompt_bubble_base_view.cc 10 | --- a/chrome/browser/ui/views/permissions/permission_prompt_bubble_base_view.cc 11 | +++ b/chrome/browser/ui/views/permissions/permission_prompt_bubble_base_view.cc 12 | @@ -336,7 +336,7 @@ void PermissionPromptBubbleBaseView::RunButtonCallbacks( 13 | delegate_->Accept(); 14 | return; 15 | case PermissionDialogButton::kAcceptOnce: 16 | - delegate_->AcceptThisTime(); 17 | + delegate_->AcceptThisTime(content_settings::LifetimeMode::Always); 18 | return; 19 | case PermissionDialogButton::kDeny: 20 | delegate_->Deny(); 21 | -- 22 | 2.25.1 23 | -------------------------------------------------------------------------------- /build/patches/00WIN-ADDTO-Disable-requests-for-single-word-Omni.patch: -------------------------------------------------------------------------------- 1 | From: Your Name 2 | Date: Wed, 12 Oct 2022 12:02:16 +0000 3 | Subject: WIN ADDTO Disable requests for single-word Omni 4 | 5 | --- 6 | chrome/browser/ui/omnibox/chrome_omnibox_navigation_observer.cc | 2 ++ 7 | 1 file changed, 2 insertions(+) 8 | 9 | diff --git a/chrome/browser/ui/omnibox/chrome_omnibox_navigation_observer.cc b/chrome/browser/ui/omnibox/chrome_omnibox_navigation_observer.cc 10 | --- a/chrome/browser/ui/omnibox/chrome_omnibox_navigation_observer.cc 11 | +++ b/chrome/browser/ui/omnibox/chrome_omnibox_navigation_observer.cc 12 | @@ -76,6 +76,7 @@ bool OnlyChangeIsFromHTTPToHTTPS(const GURL& origin, const GURL& destination) { 13 | return origin_with_https == destination; 14 | } 15 | 16 | +#if BUILDFLAG(IS_ANDROID) 17 | // Choose the appropriate URLLoaderFactory: either an explicitly specified or a 18 | // default for the given profile. 19 | network::mojom::URLLoaderFactory* GetURLLoaderFactory( 20 | @@ -87,6 +88,7 @@ network::mojom::URLLoaderFactory* GetURLLoaderFactory( 21 | ->GetURLLoaderFactoryForBrowserProcess() 22 | .get(); 23 | } 24 | +#endif 25 | 26 | // Helper to keep ChromeOmniboxNavigationObserver alive while the initiated 27 | // navigation is pending. 28 | -- 29 | 2.25.1 30 | -------------------------------------------------------------------------------- /build/patches/00WIN-ADDTO-Disable-various-metrics.patch: -------------------------------------------------------------------------------- 1 | From: Your Name 2 | Date: Wed, 12 Oct 2022 11:53:36 +0000 3 | Subject: WIN ADDTO Disable various metrics 4 | 5 | --- 6 | chrome/browser/ui/search/ntp_user_data_logger.cc | 4 ---- 7 | components/ntp_tiles/custom_links_manager_impl.cc | 1 - 8 | 2 files changed, 5 deletions(-) 9 | 10 | diff --git a/chrome/browser/ui/search/ntp_user_data_logger.cc b/chrome/browser/ui/search/ntp_user_data_logger.cc 11 | --- a/chrome/browser/ui/search/ntp_user_data_logger.cc 12 | +++ b/chrome/browser/ui/search/ntp_user_data_logger.cc 13 | @@ -394,8 +394,6 @@ void NTPUserDataLogger::LogMostVisitedImpression( 14 | 15 | void NTPUserDataLogger::LogMostVisitedNavigation( 16 | const ntp_tiles::NTPTileImpression& impression) { 17 | - ntp_tiles::metrics::RecordTileClick(impression); 18 | - 19 | // Records the action. This will be available as a time-stamped stream 20 | // server-side and can be used to compute time-to-long-dwell. 21 | base::RecordAction(base::UserMetricsAction("MostVisited_Clicked")); 22 | @@ -424,10 +422,8 @@ void NTPUserDataLogger::EmitNtpStatistics(base::TimeDelta load_time, 23 | if (!impression.has_value()) { 24 | break; 25 | } 26 | - ntp_tiles::metrics::RecordTileImpression(*impression); 27 | ++tiles_count; 28 | } 29 | - ntp_tiles::metrics::RecordPageImpression(tiles_count); 30 | 31 | DVLOG(1) << "Emitting NTP load time: " << load_time << ", " 32 | << "number of tiles: " << tiles_count; 33 | diff --git a/components/ntp_tiles/custom_links_manager_impl.cc b/components/ntp_tiles/custom_links_manager_impl.cc 34 | --- a/components/ntp_tiles/custom_links_manager_impl.cc 35 | +++ b/components/ntp_tiles/custom_links_manager_impl.cc 36 | @@ -203,7 +203,6 @@ void CustomLinksManagerImpl::RemoveCustomLinksForPreinstalledApps() { 37 | } 38 | } 39 | if (default_app_links_deleted) { 40 | - metrics::RecordsMigratedDefaultAppDeleted(DeletedTileType::kCustomLink); 41 | prefs_->SetBoolean(prefs::kCustomLinksForPreinstalledAppsRemoved, true); 42 | } 43 | } 44 | -- 45 | 2.25.1 46 | -------------------------------------------------------------------------------- /build/patches/00WIN-ADDTO-Do-not-build-API-keys-infobar.patch: -------------------------------------------------------------------------------- 1 | From: Your Name 2 | Date: Wed, 12 Oct 2022 11:58:29 +0000 3 | Subject: WIN ADDTO Do not build API keys infobar 4 | 5 | --- 6 | chrome/browser/ui/startup/infobar_utils.cc | 3 --- 7 | 1 file changed, 3 deletions(-) 8 | 9 | diff --git a/chrome/browser/ui/startup/infobar_utils.cc b/chrome/browser/ui/startup/infobar_utils.cc 10 | --- a/chrome/browser/ui/startup/infobar_utils.cc 11 | +++ b/chrome/browser/ui/startup/infobar_utils.cc 12 | @@ -133,9 +133,6 @@ void AddInfoBarsIfNecessary(Browser* browser, 13 | infobars::ContentInfoBarManager* infobar_manager = 14 | infobars::ContentInfoBarManager::FromWebContents(web_contents); 15 | 16 | - if (!google_apis::HasAPIKeyConfigured()) 17 | - GoogleApiKeysInfoBarDelegate::Create(infobar_manager); 18 | - 19 | if (ObsoleteSystem::IsObsoleteNowOrSoon()) { 20 | PrefService* local_state = g_browser_process->local_state(); 21 | if (!local_state || 22 | -- 23 | 2.25.1 24 | -------------------------------------------------------------------------------- /build/patches/00WIN-ADDTO-Remove-binary-blob-integrations.patch: -------------------------------------------------------------------------------- 1 | From: Your Name 2 | Date: Wed, 12 Oct 2022 11:41:35 +0000 3 | Subject: WIN ADDTO Remove binary blob integrations 4 | 5 | --- 6 | components/gcm_driver/gcm_client_impl.cc | 8 ++++---- 7 | 1 file changed, 4 insertions(+), 4 deletions(-) 8 | 9 | diff --git a/components/gcm_driver/gcm_client_impl.cc b/components/gcm_driver/gcm_client_impl.cc 10 | --- a/components/gcm_driver/gcm_client_impl.cc 11 | +++ b/components/gcm_driver/gcm_client_impl.cc 12 | @@ -450,7 +450,7 @@ void GCMClientImpl::StartGCM() { 13 | 14 | void GCMClientImpl::InitializeMCSClient() { 15 | DCHECK(network_connection_tracker_); 16 | - return; 17 | + if ((true)) return; 18 | std::vector endpoints; 19 | endpoints.push_back(gservices_settings_.GetMCSMainEndpoint()); 20 | GURL fallback_endpoint = gservices_settings_.GetMCSFallbackEndpoint(); 21 | @@ -644,7 +644,7 @@ void GCMClientImpl::AddHeartbeatInterval(const std::string& scope, 22 | int interval_ms) { 23 | DCHECK(io_task_runner_->RunsTasksInCurrentSequence()); 24 | DCHECK(mcs_client_); 25 | - return; 26 | + if ((true)) return; 27 | mcs_client_->AddHeartbeatInterval(scope, interval_ms); 28 | } 29 | 30 | @@ -656,7 +656,7 @@ void GCMClientImpl::RemoveHeartbeatInterval(const std::string& scope) { 31 | 32 | void GCMClientImpl::StartCheckin() { 33 | DCHECK(io_task_runner_->RunsTasksInCurrentSequence()); 34 | - return; 35 | + if ((true)) return; 36 | 37 | // Make sure no checkin is in progress. 38 | if (checkin_request_) 39 | @@ -739,7 +739,7 @@ void GCMClientImpl::SetGServicesSettingsCallback(bool success) { 40 | 41 | void GCMClientImpl::SchedulePeriodicCheckin() { 42 | DCHECK(io_task_runner_->RunsTasksInCurrentSequence()); 43 | - return; 44 | + if ((true)) return; 45 | 46 | // Make sure no checkin is in progress. 47 | if (checkin_request_.get() || !device_checkin_info_.accounts_set) 48 | -- 49 | 2.25.1 50 | -------------------------------------------------------------------------------- /build/patches/00WIN-ADDTO-Restore-Search-Ready-Omnibox-flag.patch: -------------------------------------------------------------------------------- 1 | From: Your Name 2 | Date: Wed, 12 Oct 2022 12:01:37 +0000 3 | Subject: WIN ADDTO Restore Search Ready Omnibox flag 4 | 5 | --- 6 | chrome/browser/about_flags.cc | 2 ++ 7 | 1 file changed, 2 insertions(+) 8 | 9 | diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc 10 | --- a/chrome/browser/about_flags.cc 11 | +++ b/chrome/browser/about_flags.cc 12 | @@ -9423,9 +9423,11 @@ const FeatureEntry kFeatureEntries[] = { 13 | flag_descriptions::kDesksTemplatesDescription, kOsCrOS, 14 | FEATURE_VALUE_TYPE(ash::features::kDesksTemplates)}, 15 | #endif 16 | +#if BUILDFLAG(IS_ANDROID) 17 | {"enable-search-ready-omnibox", flag_descriptions::kSearchReadyOmniboxName, 18 | flag_descriptions::kSearchReadyOmniboxDescription, kOsAndroid, 19 | FEATURE_VALUE_TYPE(chrome::android::kSearchReadyOmniboxFeature)}, 20 | +#endif 21 | 22 | {"large-favicon-from-google", 23 | flag_descriptions::kLargeFaviconFromGoogleName, 24 | -- 25 | 2.25.1 26 | -------------------------------------------------------------------------------- /build/patches/00WIN-ADDTO-Revert-flags--remove-num-raster-thre.patch: -------------------------------------------------------------------------------- 1 | From: Your Name 2 | Date: Wed, 12 Oct 2022 11:59:30 +0000 3 | Subject: WIN ADDTO Revert flags: remove num-raster-thre 4 | 5 | --- 6 | chrome/browser/about_flags.cc | 2 ++ 7 | 1 file changed, 2 insertions(+) 8 | 9 | diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc 10 | --- a/chrome/browser/about_flags.cc 11 | +++ b/chrome/browser/about_flags.cc 12 | @@ -383,6 +383,7 @@ const FeatureEntry::Choice kOverlayStrategiesChoices[] = { 13 | "single-fullscreen,single-on-top,underlay"}, 14 | }; 15 | 16 | +#if BUILDFLAG(IS_ANDROID) 17 | const FeatureEntry::Choice kNumRasterThreadsChoices[] = { 18 | {flags_ui::kGenericExperimentChoiceDefault, "", ""}, 19 | {flag_descriptions::kNumRasterThreadsOne, cc::switches::kNumRasterThreads, "1"}, 20 | @@ -391,6 +392,7 @@ const FeatureEntry::Choice kNumRasterThreadsChoices[] = { 21 | "3"}, 22 | {flag_descriptions::kNumRasterThreadsFour, cc::switches::kNumRasterThreads, 23 | "4"}}; 24 | +#endif 25 | 26 | const FeatureEntry::Choice kTouchTextSelectionStrategyChoices[] = { 27 | {flags_ui::kGenericExperimentChoiceDefault, "", ""}, 28 | -- 29 | 2.25.1 30 | -------------------------------------------------------------------------------- /build/patches/00WIN-ADDTO-openH264--enable-ARM-ARM64-optimizati.patch: -------------------------------------------------------------------------------- 1 | From: Your Name 2 | Date: Wed, 12 Oct 2022 11:31:11 +0000 3 | Subject: WIN ADDTO openH264: enable ARM/ARM64 optimizati 4 | 5 | --- 6 | .../blink/renderer/modules/mediarecorder/h264_encoder.cc | 6 +++--- 7 | 1 file changed, 3 insertions(+), 3 deletions(-) 8 | 9 | diff --git a/third_party/blink/renderer/modules/mediarecorder/h264_encoder.cc b/third_party/blink/renderer/modules/mediarecorder/h264_encoder.cc 10 | --- a/third_party/blink/renderer/modules/mediarecorder/h264_encoder.cc 11 | +++ b/third_party/blink/renderer/modules/mediarecorder/h264_encoder.cc 12 | @@ -213,9 +213,9 @@ bool H264Encoder::ConfigureEncoder(const gfx::Size& size) { 13 | init_params.iRCMode = RC_OFF_MODE; 14 | } 15 | 16 | -#if BUILDFLAG(OS_MACOSX) 17 | - // Threading model: Set to 1 due to https://crbug.com/583348. 18 | - init_params.iMultipleThreadIdc = 1; 19 | +#if BUILDFLAG(IS_MAC) 20 | + // Threading model: Set to 1 due to https://crbug.com/583348. 21 | + init_params.iMultipleThreadIdc = 1; 22 | #else 23 | init_params.iMultipleThreadIdc = 0; 24 | #endif 25 | -- 26 | 2.25.1 27 | -------------------------------------------------------------------------------- /build/patches/00WIN-ADDTO-ungoogled-chr--Disable-profile-avatar.patch: -------------------------------------------------------------------------------- 1 | From: Your Name 2 | Date: Wed, 12 Oct 2022 10:04:39 +0000 3 | Subject: WIN ADDTO ungoogled-chr: Disable profile avatar 4 | 5 | --- 6 | chrome/browser/profiles/profile_attributes_storage.cc | 2 +- 7 | 1 file changed, 1 insertion(+), 1 deletion(-) 8 | 9 | diff --git a/chrome/browser/profiles/profile_attributes_storage.cc b/chrome/browser/profiles/profile_attributes_storage.cc 10 | --- a/chrome/browser/profiles/profile_attributes_storage.cc 11 | +++ b/chrome/browser/profiles/profile_attributes_storage.cc 12 | @@ -845,7 +845,7 @@ void ProfileAttributesStorage::DownloadHighResAvatarIfNeeded( 13 | void ProfileAttributesStorage::DownloadHighResAvatar( 14 | size_t icon_index, 15 | const base::FilePath& profile_path) { 16 | -#if !BUILDFLAG(IS_ANDROID) 17 | +#if false 18 | const char* file_name = 19 | profiles::GetDefaultAvatarIconFileNameAtIndex(icon_index); 20 | DCHECK(file_name); 21 | -- 22 | 2.25.1 23 | -------------------------------------------------------------------------------- /build/patches/00WIN-Add-some-prefs-to-secure-preferences.patch: -------------------------------------------------------------------------------- 1 | From: uazo 2 | Date: Mon, 15 May 2023 13:35:24 +0000 3 | Subject: WIN Add some prefs to secure preferences 4 | 5 | --- 6 | chrome/browser/prefs/chrome_pref_service_factory.cc | 8 ++++++++ 7 | 1 file changed, 8 insertions(+) 8 | 9 | diff --git a/chrome/browser/prefs/chrome_pref_service_factory.cc b/chrome/browser/prefs/chrome_pref_service_factory.cc 10 | --- a/chrome/browser/prefs/chrome_pref_service_factory.cc 11 | +++ b/chrome/browser/prefs/chrome_pref_service_factory.cc 12 | @@ -117,6 +117,14 @@ bool g_disable_domain_check_for_testing = false; 13 | // See CleanupDeprecatedTrackedPreferences() in pref_hash_filter.cc to remove a 14 | // deprecated tracked preference. 15 | const prefs::TrackedPreferenceMetadata kTrackedPrefs[] = { 16 | +#if BUILDFLAG(IS_WIN) 17 | + {200, prefs::kFileOrDirectoryPickerWithoutGestureAllowedForOrigins, EnforcementLevel::ENFORCE_ON_LOAD, 18 | + PrefTrackingStrategy::ATOMIC, ValueType::IMPERSONAL}, 19 | + {201, prefs::kAutoplayAllowlist, EnforcementLevel::ENFORCE_ON_LOAD, 20 | + PrefTrackingStrategy::ATOMIC, ValueType::IMPERSONAL}, 21 | + {202, prefs::kScreenCaptureWithoutGestureAllowedForOrigins, EnforcementLevel::ENFORCE_ON_LOAD, 22 | + PrefTrackingStrategy::ATOMIC, ValueType::IMPERSONAL}, 23 | +#endif 24 | {0, prefs::kShowHomeButton, EnforcementLevel::ENFORCE_ON_LOAD, 25 | PrefTrackingStrategy::ATOMIC, ValueType::IMPERSONAL}, 26 | {1, prefs::kHomePageIsNewTabPage, EnforcementLevel::ENFORCE_ON_LOAD, 27 | -- 28 | 2.25.1 29 | -------------------------------------------------------------------------------- /build/patches/00WIN-Disable-TabHoverCard-images.patch: -------------------------------------------------------------------------------- 1 | From: uazo 2 | Date: Tue, 14 Mar 2023 15:58:00 +0000 3 | Subject: WIN Disable TabHoverCard images 4 | 5 | --- 6 | chrome/browser/ui/ui_features.cc | 4 ---- 7 | 1 file changed, 4 deletions(-) 8 | 9 | diff --git a/chrome/browser/ui/ui_features.cc b/chrome/browser/ui/ui_features.cc 10 | --- a/chrome/browser/ui/ui_features.cc 11 | +++ b/chrome/browser/ui/ui_features.cc 12 | @@ -212,11 +212,7 @@ BASE_FEATURE(kTabGroupsSaveSyncIntegration, 13 | // https://crbug.com/928954 14 | BASE_FEATURE(kTabHoverCardImages, 15 | "TabHoverCardImages", 16 | -#if BUILDFLAG(IS_MAC) 17 | base::FEATURE_DISABLED_BY_DEFAULT 18 | -#else 19 | - base::FEATURE_ENABLED_BY_DEFAULT 20 | -#endif 21 | ); 22 | 23 | const char kTabHoverCardImagesNotReadyDelayParameterName[] = 24 | -- 25 | 2.25.1 26 | -------------------------------------------------------------------------------- /build/patches/00WIN-Disable-first-run.patch: -------------------------------------------------------------------------------- 1 | From: uazo 2 | Date: Sun, 7 May 2023 14:18:46 +0000 3 | Subject: WIN Disable first run 4 | 5 | --- 6 | chrome/browser/ui/startup/first_run_service.cc | 2 +- 7 | 1 file changed, 1 insertion(+), 1 deletion(-) 8 | 9 | diff --git a/chrome/browser/ui/startup/first_run_service.cc b/chrome/browser/ui/startup/first_run_service.cc 10 | --- a/chrome/browser/ui/startup/first_run_service.cc 11 | +++ b/chrome/browser/ui/startup/first_run_service.cc 12 | @@ -177,7 +177,7 @@ bool IsFirstRunMarkedFinishedInPrefs() { 13 | 14 | // static 15 | void FirstRunService::RegisterLocalStatePrefs(PrefRegistrySimple* registry) { 16 | - registry->RegisterBooleanPref(prefs::kFirstRunFinished, false); 17 | + registry->RegisterBooleanPref(prefs::kFirstRunFinished, true); 18 | registry->RegisterStringPref(prefs::kFirstRunStudyGroup, ""); 19 | } 20 | 21 | -- 22 | 2.25.1 23 | -------------------------------------------------------------------------------- /build/patches/00WIN-Disable-search-for-image.patch: -------------------------------------------------------------------------------- 1 | From: uazo 2 | Date: Sat, 3 Jun 2023 15:39:31 +0000 3 | Subject: WIN Disable search for image 4 | 5 | --- 6 | components/renderer_context_menu/context_menu_content_type.cc | 2 +- 7 | 1 file changed, 1 insertion(+), 1 deletion(-) 8 | 9 | diff --git a/components/renderer_context_menu/context_menu_content_type.cc b/components/renderer_context_menu/context_menu_content_type.cc 10 | --- a/components/renderer_context_menu/context_menu_content_type.cc 11 | +++ b/components/renderer_context_menu/context_menu_content_type.cc 12 | @@ -99,7 +99,7 @@ bool ContextMenuContentType::SupportsGroupInternal(int group) { 13 | 14 | case ITEM_GROUP_SEARCHWEBFORIMAGE: 15 | // Image menu items imply search web for image item. 16 | - return SupportsGroupInternal(ITEM_GROUP_MEDIA_IMAGE); 17 | + return false; 18 | 19 | case ITEM_GROUP_MEDIA_VIDEO: 20 | return params_.media_type == ContextMenuDataMediaType::kVideo; 21 | -- 22 | 2.25.1 23 | -------------------------------------------------------------------------------- /build/patches/00WIN-Enable-Network-Service-Sandbox-and-CIG.patch: -------------------------------------------------------------------------------- 1 | From: Your Name 2 | Date: Fri, 17 Feb 2023 16:23:20 +0000 3 | Subject: WIN Enable Network Service Sandbox and CIG 4 | 5 | --- 6 | chrome/browser/chrome_content_browser_client.cc | 2 +- 7 | sandbox/policy/features.cc | 6 +++++- 8 | 2 files changed, 6 insertions(+), 2 deletions(-) 9 | 10 | diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/chrome_content_browser_client.cc 11 | --- a/chrome/browser/chrome_content_browser_client.cc 12 | +++ b/chrome/browser/chrome_content_browser_client.cc 13 | @@ -769,7 +769,7 @@ BASE_FEATURE(kRendererCodeIntegrity, 14 | // https://blogs.windows.com/blog/tag/code-integrity-guard/. 15 | BASE_FEATURE(kNetworkServiceCodeIntegrity, 16 | "NetworkServiceCodeIntegrity", 17 | - base::FEATURE_DISABLED_BY_DEFAULT); 18 | + base::FEATURE_ENABLED_BY_DEFAULT); 19 | 20 | #endif // BUILDFLAG(IS_WIN) && !defined(COMPONENT_BUILD) && 21 | // !defined(ADDRESS_SANITIZER) 22 | diff --git a/sandbox/policy/features.cc b/sandbox/policy/features.cc 23 | --- a/sandbox/policy/features.cc 24 | +++ b/sandbox/policy/features.cc 25 | @@ -14,8 +14,12 @@ namespace sandbox::policy::features { 26 | // Enables network service sandbox. 27 | // (Only causes an effect when feature kNetworkServiceInProcess is disabled.) 28 | BASE_FEATURE(kNetworkServiceSandbox, 29 | - "NetworkServiceSandbox", 30 | + "NetworkServiceSandbox", // enabled only in windows 31 | +#if BUILDFLAG(IS_WIN) 32 | + base::FEATURE_ENABLED_BY_DEFAULT); 33 | +#else 34 | base::FEATURE_DISABLED_BY_DEFAULT); 35 | +#endif 36 | 37 | #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) 38 | // Enables a fine-grained seccomp-BPF syscall filter for the network service. 39 | -- 40 | 2.25.1 41 | -------------------------------------------------------------------------------- /build/patches/00WIN-disable-annotate-downloads.patch: -------------------------------------------------------------------------------- 1 | From: Your Name 2 | Date: Wed, 28 Dec 2022 15:46:59 +0000 3 | Subject: WIN disable annotate downloads 4 | 5 | --- 6 | components/download/internal/common/download_file_impl.cc | 4 ++-- 7 | 1 file changed, 2 insertions(+), 2 deletions(-) 8 | 9 | diff --git a/components/download/internal/common/download_file_impl.cc b/components/download/internal/common/download_file_impl.cc 10 | --- a/components/download/internal/common/download_file_impl.cc 11 | +++ b/components/download/internal/common/download_file_impl.cc 12 | @@ -358,8 +358,8 @@ void DownloadFileImpl::RenameAndAnnotate( 13 | std::unique_ptr parameters(new RenameParameters( 14 | ANNOTATE_WITH_SOURCE_INFORMATION, full_path, std::move(callback))); 15 | parameters->client_guid = client_guid; 16 | - parameters->source_url = source_url; 17 | - parameters->referrer_url = referrer_url; 18 | + parameters->source_url = GURL(); 19 | + parameters->referrer_url = GURL(); 20 | parameters->remote_quarantine = std::move(remote_quarantine); 21 | RenameWithRetryInternal(std::move(parameters)); 22 | } 23 | -- 24 | 2.25.1 25 | -------------------------------------------------------------------------------- /build/patches/00WIN-enable-HighEfficiencyMode-by-default.patch: -------------------------------------------------------------------------------- 1 | From: Your Name 2 | Date: Wed, 28 Dec 2022 15:47:58 +0000 3 | Subject: WIN enable HighEfficiencyMode by default 4 | 5 | --- 6 | components/performance_manager/user_tuning/prefs.cc | 4 ++-- 7 | 1 file changed, 2 insertions(+), 2 deletions(-) 8 | 9 | diff --git a/components/performance_manager/user_tuning/prefs.cc b/components/performance_manager/user_tuning/prefs.cc 10 | --- a/components/performance_manager/user_tuning/prefs.cc 11 | +++ b/components/performance_manager/user_tuning/prefs.cc 12 | @@ -35,13 +35,13 @@ const char kManagedTabDiscardingExceptions[] = 13 | "performance_tuning.tab_discarding.exceptions_managed"; 14 | 15 | void RegisterLocalStatePrefs(PrefRegistrySimple* registry) { 16 | - registry->RegisterBooleanPref(kHighEfficiencyModeEnabled, false); 17 | + registry->RegisterBooleanPref(kHighEfficiencyModeEnabled, true); 18 | registry->RegisterIntegerPref( 19 | kHighEfficiencyModeTimeBeforeDiscardInMinutes, 20 | kDefaultHighEfficiencyModeTimeBeforeDiscardInMinutes); 21 | registry->RegisterIntegerPref( 22 | kHighEfficiencyModeState, 23 | - static_cast(HighEfficiencyModeState::kDisabled)); 24 | + static_cast(HighEfficiencyModeState::kEnabled)); 25 | registry->RegisterIntegerPref( 26 | kBatterySaverModeState, 27 | static_cast(BatterySaverModeState::kEnabledBelowThreshold)); 28 | -- 29 | 2.25.1 30 | -------------------------------------------------------------------------------- /build/patches/00WIN-enable-file-system-access-blocklist.patch: -------------------------------------------------------------------------------- 1 | From: Your Name 2 | Date: Tue, 14 Feb 2023 16:32:30 +0000 3 | Subject: WIN enable file system access blocklist 4 | 5 | --- 6 | content/browser/file_system_access/features.cc | 6 +++--- 7 | 1 file changed, 3 insertions(+), 3 deletions(-) 8 | 9 | diff --git a/content/browser/file_system_access/features.cc b/content/browser/file_system_access/features.cc 10 | --- a/content/browser/file_system_access/features.cc 11 | +++ b/content/browser/file_system_access/features.cc 12 | @@ -15,7 +15,7 @@ namespace content::features { 13 | // some applications. 14 | BASE_FEATURE(kFileSystemAccessDragAndDropCheckBlocklist, 15 | "FileSystemAccessDragAndDropCheckBlocklist", 16 | - base::FEATURE_DISABLED_BY_DEFAULT); 17 | + base::FEATURE_ENABLED_BY_DEFAULT); 18 | 19 | // TODO(crbug.com/1381621): Remove this flag eventually. 20 | // When enabled, move() will result in a promise rejection when the specified 21 | @@ -51,8 +51,8 @@ BASE_FEATURE(kFileSystemAccessRemoveEntryExclusiveLock, 22 | // When enabled, a user gesture is required to rename a file if the site does 23 | // not have write access to the parent. See http://b/254157070 for more context. 24 | BASE_FEATURE(kFileSystemAccessRenameWithoutParentAccessRequiresUserActivation, 25 | - "FileSystemAccessRenameWithoutParentAccessRequiresUserActivation", 26 | - base::FEATURE_ENABLED_BY_DEFAULT); 27 | + "FileSystemAccessRenameWithoutParentAccessRequiresUserActivation", // enabled by default 28 | + base::FEATURE_ENABLED_BY_DEFAULT); // in bromite 29 | 30 | // TODO(crbug.com/1247850): Remove this flag eventually. 31 | // When enabled, move operations within the same file system that do not change 32 | -- 33 | 2.25.1 34 | -------------------------------------------------------------------------------- /build/patches/00WIN-enable-pdf-plugin.patch: -------------------------------------------------------------------------------- 1 | From: Your Name 2 | Date: Wed, 28 Dec 2022 15:46:38 +0000 3 | Subject: WIN enable pdf plugin 4 | 5 | --- 6 | third_party/blink/renderer/core/frame/local_frame.cc | 2 ++ 7 | 1 file changed, 2 insertions(+) 8 | 9 | diff --git a/third_party/blink/renderer/core/frame/local_frame.cc b/third_party/blink/renderer/core/frame/local_frame.cc 10 | --- a/third_party/blink/renderer/core/frame/local_frame.cc 11 | +++ b/third_party/blink/renderer/core/frame/local_frame.cc 12 | @@ -2005,7 +2005,9 @@ WebContentSettingsClient* LocalFrame::GetContentSettingsClient() { 13 | } 14 | 15 | PluginData* LocalFrame::GetPluginData() const { 16 | + if (!Loader().AllowPlugins()) 17 | return nullptr; 18 | + return GetPage()->GetPluginData(); 19 | } 20 | 21 | void LocalFrame::SetAdTrackerForTesting(AdTracker* ad_tracker) { 22 | -- 23 | 2.25.1 24 | -------------------------------------------------------------------------------- /build/patches/00do-not-block-build-incompatible-profiles.patch: -------------------------------------------------------------------------------- 1 | From: uazo 2 | Date: Wed, 2 Aug 2023 15:15:48 +0000 3 | Subject: Do not block the build for incompatible profiles 4 | 5 | --- 6 | .gitignore | 1 - 7 | v8/BUILD.gn | 2 +- 8 | 2 files changed, 1 insertion(+), 2 deletions(-) 9 | 10 | diff --git a/.gitignore b/.gitignore 11 | --- a/.gitignore 12 | +++ b/.gitignore 13 | @@ -344,7 +344,6 @@ vs-chromium-project.txt 14 | /ui/surface/surface.xml 15 | /ui/surface/surface_gpu_tests.xml 16 | /ui/webui/internal 17 | -/v8 18 | /webkit/data 19 | /webpagereplay_logs/ 20 | /x86-generic_out/ 21 | diff --git a/v8/BUILD.gn b/v8/BUILD.gn 22 | --- a/v8/BUILD.gn 23 | +++ b/v8/BUILD.gn 24 | @@ -2271,7 +2271,7 @@ template("run_mksnapshot") { 25 | 26 | # Replace this with --warn-about-builtin-profile-data to see the full 27 | # list of builtins with incompatible profiles. 28 | - "--abort-on-bad-builtin-profile-data", 29 | + "--warn-about-builtin-profile-data", 30 | ] 31 | } 32 | 33 | -- 34 | 2.25.1 35 | -------------------------------------------------------------------------------- /build/patches/00v113-temp-fix-build.patch: -------------------------------------------------------------------------------- 1 | From: uazo 2 | Date: Mon, 1 May 2023 12:08:46 +0000 3 | Subject: v113 temp fix build 4 | 5 | --- 6 | android_webview/system_webview_bundle.gni | 4 ++++ 7 | chrome/browser/safe_browsing/BUILD.gn | 1 + 8 | 2 files changed, 5 insertions(+) 9 | 10 | diff --git a/android_webview/system_webview_bundle.gni b/android_webview/system_webview_bundle.gni 11 | --- a/android_webview/system_webview_bundle.gni 12 | +++ b/android_webview/system_webview_bundle.gni 13 | @@ -84,6 +84,10 @@ template("system_webview_bundle") { 14 | custom_assertion_handler = crash_reporting_assertion_handler 15 | } 16 | } 17 | + } else { 18 | + not_needed(["_base_target_name", "_base_target_gen_dir", 19 | + "_base_module_build_config", "_rebased_base_module_build_config", 20 | + "_base_module_version_code"]) 21 | } 22 | 23 | android_app_bundle(target_name) { 24 | diff --git a/chrome/browser/safe_browsing/BUILD.gn b/chrome/browser/safe_browsing/BUILD.gn 25 | --- a/chrome/browser/safe_browsing/BUILD.gn 26 | +++ b/chrome/browser/safe_browsing/BUILD.gn 27 | @@ -210,6 +210,7 @@ static_library("safe_browsing") { 28 | "//components/version_info", 29 | "//content/public/browser", 30 | "//services/preferences/public/mojom:mojom", 31 | + "//third_party/flatbuffers:flatbuffers", 32 | ] 33 | if (safe_browsing_mode == 1) { 34 | # "Safe Browsing Full" files in addition to the "basic" ones to use for 35 | -- 36 | 2.25.1 37 | -------------------------------------------------------------------------------- /build/patches/Add-Alt-D-hotkey-to-focus-address-bar.patch: -------------------------------------------------------------------------------- 1 | From: csagan5 <32685696+csagan5@users.noreply.github.com> 2 | Date: Tue, 9 Mar 2021 19:43:00 +0100 3 | Subject: Add Alt+D hotkey to focus address bar 4 | 5 | License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html 6 | --- 7 | .../java/src/org/chromium/chrome/browser/KeyboardShortcuts.java | 2 ++ 8 | 1 file changed, 2 insertions(+) 9 | 10 | diff --git a/chrome/android/java/src/org/chromium/chrome/browser/KeyboardShortcuts.java b/chrome/android/java/src/org/chromium/chrome/browser/KeyboardShortcuts.java 11 | --- a/chrome/android/java/src/org/chromium/chrome/browser/KeyboardShortcuts.java 12 | +++ b/chrome/android/java/src/org/chromium/chrome/browser/KeyboardShortcuts.java 13 | @@ -151,6 +151,8 @@ public class KeyboardShortcuts { 14 | KeyEvent.KEYCODE_F, KeyEvent.META_CTRL_ON); 15 | addShortcut(context, chromeFeatureShortcutGroup, R.string.keyboard_shortcut_address_bar, 16 | KeyEvent.KEYCODE_L, KeyEvent.META_CTRL_ON); 17 | + addShortcut(context, chromeFeatureShortcutGroup, R.string.keyboard_shortcut_address_bar, 18 | + KeyEvent.KEYCODE_D, KeyEvent.META_ALT_ON); 19 | shortcutGroups.add(chromeFeatureShortcutGroup); 20 | 21 | KeyboardShortcutGroup webpageShortcutGroup = new KeyboardShortcutGroup( 22 | -- 23 | 2.25.1 24 | -------------------------------------------------------------------------------- /build/patches/Add-kill-switch-for-unsupported-clangd-flags.patch: -------------------------------------------------------------------------------- 1 | From: Your Name 2 | Date: Thu, 20 Oct 2022 09:34:48 +0000 3 | Subject: Add kill switch for unsupported clangd flags 4 | 5 | Allows build with clangd by suppressing unsupported parameters 6 | 7 | Original License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html 8 | License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html 9 | --- 10 | build/config/compiler/BUILD.gn | 5 +++++ 11 | build_overrides/build.gni | 3 +++ 12 | 2 files changed, 8 insertions(+) 13 | 14 | diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn 15 | --- a/build/config/compiler/BUILD.gn 16 | +++ b/build/config/compiler/BUILD.gn 17 | @@ -1748,6 +1748,11 @@ config("default_warnings") { 18 | # TODO(crbug.com/1412713) Evaluate and possibly enable. 19 | "-Wno-deprecated-this-capture", 20 | ] 21 | + if (skip_clangd_unsupported_options) { 22 | + cflags -= [ 23 | + "-Wno-deprecated-builtins", 24 | + ] 25 | + } 26 | } 27 | } 28 | } 29 | diff --git a/build_overrides/build.gni b/build_overrides/build.gni 30 | --- a/build_overrides/build.gni 31 | +++ b/build_overrides/build.gni 32 | @@ -58,6 +58,9 @@ declare_args() { 33 | # Allows third-party repositories to use C++17 for MSVC builds 34 | # TODO(https://crbug.com/pdfium/1932) Remove once pdfium builds on MSVC C++20 35 | msvc_use_cxx17 = false 36 | + 37 | + # Allows clangd builds by suppressing unsupported parameters 38 | + skip_clangd_unsupported_options = false 39 | } 40 | 41 | # Allows different projects to specify their own suppression/ignore lists for 42 | -- 43 | 2.25.1 44 | -------------------------------------------------------------------------------- /build/patches/Always-use-new-tab-page-for-default-home-page.patch: -------------------------------------------------------------------------------- 1 | From: csagan5 <32685696+csagan5@users.noreply.github.com> 2 | Date: Wed, 27 Jun 2018 11:02:38 +0200 3 | Subject: Always use new tab page for default home page 4 | 5 | Ignore any partner-provided home page. 6 | 7 | License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html 8 | --- 9 | .../org/chromium/chrome/browser/homepage/HomepageManager.java | 4 ---- 10 | 1 file changed, 4 deletions(-) 11 | 12 | diff --git a/chrome/android/java/src/org/chromium/chrome/browser/homepage/HomepageManager.java b/chrome/android/java/src/org/chromium/chrome/browser/homepage/HomepageManager.java 13 | --- a/chrome/android/java/src/org/chromium/chrome/browser/homepage/HomepageManager.java 14 | +++ b/chrome/android/java/src/org/chromium/chrome/browser/homepage/HomepageManager.java 15 | @@ -151,10 +151,6 @@ public class HomepageManager implements HomepagePolicyManager.HomepagePolicyStat 16 | * if the homepage button is force enabled via flag. 17 | */ 18 | public static String getDefaultHomepageUri() { 19 | - if (PartnerBrowserCustomizations.getInstance().isHomepageProviderAvailableAndEnabled()) { 20 | - return PartnerBrowserCustomizations.getInstance().getHomePageUrl().getSpec(); 21 | - } 22 | - 23 | String homepagePartnerDefaultUri; 24 | String homepagePartnerDefaultGurlSerialized = 25 | SharedPreferencesManager.getInstance().readString( 26 | -- 27 | 2.25.1 28 | -------------------------------------------------------------------------------- /build/patches/Bromite-package-name.patch: -------------------------------------------------------------------------------- 1 | From: csagan5 <32685696+csagan5@users.noreply.github.com> 2 | Date: Sat, 8 Jan 2022 19:42:34 +0100 3 | Subject: Bromite package name 4 | 5 | License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html 6 | --- 7 | chrome/android/chrome_public_apk_tmpl.gni | 2 +- 8 | 1 file changed, 1 insertion(+), 1 deletion(-) 9 | 10 | diff --git a/chrome/android/chrome_public_apk_tmpl.gni b/chrome/android/chrome_public_apk_tmpl.gni 11 | --- a/chrome/android/chrome_public_apk_tmpl.gni 12 | +++ b/chrome/android/chrome_public_apk_tmpl.gni 13 | @@ -27,7 +27,7 @@ declare_args() { 14 | # WebView providers which declare one of a handful of package names. See 15 | # https://chromium.googlesource.com/chromium/src/+/HEAD/android_webview/docs/build-instructions.md#Changing-package-name 16 | # for details. 17 | - chrome_public_manifest_package = "org.chromium.chrome" 18 | + chrome_public_manifest_package = "org.bromite.bromite" 19 | if (use_stable_package_name_for_trichrome) { 20 | chrome_public_manifest_package += ".stable" 21 | } else if (android_channel != "default" && android_channel != "stable") { 22 | -- 23 | 2.25.1 24 | -------------------------------------------------------------------------------- /build/patches/Disable-AsyncDNS-by-default.patch: -------------------------------------------------------------------------------- 1 | From: csagan5 <32685696+csagan5@users.noreply.github.com> 2 | Date: Sat, 26 Mar 2022 16:41:55 +0100 3 | Subject: Disable AsyncDNS by default 4 | 5 | This feature is detrimental to privacy, see also: 6 | * https://bugs.chromium.org/p/chromium/issues/detail?id=805020 7 | 8 | License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html 9 | --- 10 | chrome/common/chrome_features.cc | 9 ++------- 11 | 1 file changed, 2 insertions(+), 7 deletions(-) 12 | 13 | diff --git a/chrome/common/chrome_features.cc b/chrome/common/chrome_features.cc 14 | --- a/chrome/common/chrome_features.cc 15 | +++ b/chrome/common/chrome_features.cc 16 | @@ -72,13 +72,8 @@ BASE_FEATURE(kAppShimNewCloseBehavior, 17 | 18 | // Enables the built-in DNS resolver. 19 | BASE_FEATURE(kAsyncDns, 20 | - "AsyncDns", 21 | -#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_ANDROID) || \ 22 | - BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) 23 | - base::FEATURE_ENABLED_BY_DEFAULT 24 | -#else 25 | - base::FEATURE_DISABLED_BY_DEFAULT 26 | -#endif 27 | + "AsyncDns", // disabled by default 28 | + base::FEATURE_DISABLED_BY_DEFAULT // in Bromite 29 | ); 30 | 31 | #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ 32 | -- 33 | 2.25.1 34 | -------------------------------------------------------------------------------- /build/patches/Disable-DRM-media-origin-IDs-preprovisioning.patch: -------------------------------------------------------------------------------- 1 | From: csagan5 <32685696+csagan5@users.noreply.github.com> 2 | Date: Fri, 24 Jan 2020 09:46:48 +0100 3 | Subject: Disable DRM media origin IDs preprovisioning 4 | 5 | License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html 6 | --- 7 | media/base/media_switches.cc | 4 ++-- 8 | 1 file changed, 2 insertions(+), 2 deletions(-) 9 | 10 | diff --git a/media/base/media_switches.cc b/media/base/media_switches.cc 11 | --- a/media/base/media_switches.cc 12 | +++ b/media/base/media_switches.cc 13 | @@ -1016,8 +1016,8 @@ BASE_FEATURE(kMediaDrmPersistentLicense, 14 | // MediaDrmBridge. If disabled, MediaDrmBridge will get unprovisioned origin IDs 15 | // which will trigger provisioning process after MediaDrmBridge is created. 16 | BASE_FEATURE(kMediaDrmPreprovisioning, 17 | - "MediaDrmPreprovisioning", 18 | - base::FEATURE_ENABLED_BY_DEFAULT); 19 | + "MediaDrmPreprovisioning", // must be disabled 20 | + base::FEATURE_DISABLED_BY_DEFAULT); // in Bromite 21 | 22 | // Determines if MediaDrmOriginIdManager should attempt to pre-provision origin 23 | // IDs at startup (whenever a profile is loaded). Also used by tests that 24 | -- 25 | 2.25.1 26 | -------------------------------------------------------------------------------- /build/patches/Disable-NTP-remote-suggestions-by-default.patch: -------------------------------------------------------------------------------- 1 | From: csagan5 <32685696+csagan5@users.noreply.github.com> 2 | Date: Thu, 12 Oct 2017 08:15:17 +0200 3 | Subject: Disable NTP remote suggestions by default 4 | 5 | License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html 6 | --- 7 | components/feed/core/shared_prefs/pref_names.cc | 4 ++-- 8 | 1 file changed, 2 insertions(+), 2 deletions(-) 9 | 10 | diff --git a/components/feed/core/shared_prefs/pref_names.cc b/components/feed/core/shared_prefs/pref_names.cc 11 | --- a/components/feed/core/shared_prefs/pref_names.cc 12 | +++ b/components/feed/core/shared_prefs/pref_names.cc 13 | @@ -20,8 +20,8 @@ const char kArticlesListVisible[] = "ntp_snippets.list_visible"; 14 | const char kVideoPreviewsType[] = "ntp_snippets.video_previews_type"; 15 | 16 | void RegisterFeedSharedProfilePrefs(PrefRegistrySimple* registry) { 17 | - registry->RegisterBooleanPref(kEnableSnippets, true); 18 | - registry->RegisterBooleanPref(kArticlesListVisible, true); 19 | + registry->RegisterBooleanPref(kEnableSnippets, false); 20 | + registry->RegisterBooleanPref(kArticlesListVisible, false); 21 | registry->RegisterIntegerPref(kVideoPreviewsType, 1); 22 | } 23 | 24 | -- 25 | 2.25.1 26 | -------------------------------------------------------------------------------- /build/patches/Disable-PrivacyGuide.patch: -------------------------------------------------------------------------------- 1 | From: csagan5 <32685696+csagan5@users.noreply.github.com> 2 | Date: Sun, 31 Jul 2022 22:13:11 +0200 3 | Subject: Disable PrivacyGuide 4 | 5 | License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html 6 | --- 7 | chrome/common/chrome_features.cc | 8 ++++---- 8 | 1 file changed, 4 insertions(+), 4 deletions(-) 9 | 10 | diff --git a/chrome/common/chrome_features.cc b/chrome/common/chrome_features.cc 11 | --- a/chrome/common/chrome_features.cc 12 | +++ b/chrome/common/chrome_features.cc 13 | @@ -483,8 +483,8 @@ BASE_FEATURE(kHaTSDesktopDevToolsIssuesCSP, 14 | 15 | // Enables or disables the Happiness Tracking System for Desktop Privacy Guide. 16 | BASE_FEATURE(kHappinessTrackingSurveysForDesktopPrivacyGuide, 17 | - "HappinessTrackingSurveysForDesktopPrivacyGuide", 18 | - base::FEATURE_DISABLED_BY_DEFAULT); 19 | + "HappinessTrackingSurveysForDesktopPrivacyGuide", // must be disabled 20 | + base::FEATURE_DISABLED_BY_DEFAULT); // in Bromite 21 | const base::FeatureParam 22 | kHappinessTrackingSurveysForDesktopPrivacyGuideTime{ 23 | &kHappinessTrackingSurveysForDesktopPrivacyGuide, "settings-time", 24 | @@ -957,8 +957,8 @@ BASE_FEATURE(kPrerenderFallbackToPreconnect, 25 | base::FEATURE_DISABLED_BY_DEFAULT); 26 | 27 | BASE_FEATURE(kPrivacyGuideAndroid, 28 | - "PrivacyGuideAndroid", 29 | - base::FEATURE_DISABLED_BY_DEFAULT); 30 | + "PrivacyGuideAndroid", // always disabled 31 | + base::FEATURE_DISABLED_BY_DEFAULT); // in Bromite 32 | 33 | // Enables or disables push subscriptions keeping Chrome running in the 34 | // background when closed. 35 | -- 36 | 2.25.1 37 | -------------------------------------------------------------------------------- /build/patches/Disable-StartSurface-feature.patch: -------------------------------------------------------------------------------- 1 | From: csagan5 <32685696+csagan5@users.noreply.github.com> 2 | Date: Wed, 16 Nov 2022 11:18:07 +0100 3 | Subject: Disable StartSurface feature 4 | 5 | This feature would normally show a search box but leads to crashes. 6 | 7 | License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html 8 | --- 9 | chrome/browser/flags/android/chrome_feature_list.cc | 4 ++-- 10 | 1 file changed, 2 insertions(+), 2 deletions(-) 11 | 12 | diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browser/flags/android/chrome_feature_list.cc 13 | --- a/chrome/browser/flags/android/chrome_feature_list.cc 14 | +++ b/chrome/browser/flags/android/chrome_feature_list.cc 15 | @@ -1095,8 +1095,8 @@ BASE_FEATURE(kResizeOnlyActiveTab, 16 | BASE_FEATURE(kSpareTab, "SpareTab", base::FEATURE_ENABLED_BY_DEFAULT); 17 | 18 | BASE_FEATURE(kStartSurfaceAndroid, 19 | - "StartSurfaceAndroid", 20 | - base::FEATURE_ENABLED_BY_DEFAULT); 21 | + "StartSurfaceAndroid", // must be disabled 22 | + base::FEATURE_DISABLED_BY_DEFAULT); // in Bromite 23 | 24 | BASE_FEATURE(kFeedPositionAndroid, 25 | "FeedPositionAndroid", 26 | -- 27 | 2.25.1 28 | -------------------------------------------------------------------------------- /build/patches/Disable-add-to-home-screen-prompt.patch: -------------------------------------------------------------------------------- 1 | From: csagan5 <32685696+csagan5@users.noreply.github.com> 2 | Date: Wed, 28 Sep 2022 00:54:10 +0200 3 | Subject: Disable add to home screen prompt 4 | 5 | License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html 6 | --- 7 | .../webapps/AddToHomescreenMostVisitedTileClickObserver.java | 5 +---- 8 | 1 file changed, 1 insertion(+), 4 deletions(-) 9 | 10 | diff --git a/chrome/android/java/src/org/chromium/chrome/browser/webapps/AddToHomescreenMostVisitedTileClickObserver.java b/chrome/android/java/src/org/chromium/chrome/browser/webapps/AddToHomescreenMostVisitedTileClickObserver.java 11 | --- a/chrome/android/java/src/org/chromium/chrome/browser/webapps/AddToHomescreenMostVisitedTileClickObserver.java 12 | +++ b/chrome/android/java/src/org/chromium/chrome/browser/webapps/AddToHomescreenMostVisitedTileClickObserver.java 13 | @@ -43,10 +43,7 @@ public class AddToHomescreenMostVisitedTileClickObserver implements MostVisitedT 14 | ntp.addMostVisitedTileClickObserver( 15 | AddToHomescreenMostVisitedTileClickObserver.this); 16 | } else { 17 | - // If it is a regular web page, and started from a most visited tile, show IPH. 18 | - if (url.getOrigin().equals(mLastClickedMostVisitedTileUrl)) { 19 | - addToHomescreenIPHController.showAddToHomescreenIPH(tab); 20 | - } 21 | + // do not show any add to home screen IPH in Bromite 22 | removeObserver(tab); 23 | } 24 | mLastClickedMostVisitedTileUrl = null; 25 | -- 26 | 2.25.1 27 | -------------------------------------------------------------------------------- /build/patches/Disable-all-promo-dialogs.patch: -------------------------------------------------------------------------------- 1 | From: uazo 2 | Date: Tue, 12 Jun 2018 15:09:26 +0200 3 | Subject: Disable all promo dialogs 4 | 5 | --- 6 | .../chrome/browser/tabbed_mode/TabbedRootUiCoordinator.java | 1 + 7 | components/user_education/common/feature_promo_registry.cc | 1 + 8 | 2 files changed, 2 insertions(+) 9 | 10 | diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedRootUiCoordinator.java b/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedRootUiCoordinator.java 11 | --- a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedRootUiCoordinator.java 12 | +++ b/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedRootUiCoordinator.java 13 | @@ -943,6 +943,7 @@ public class TabbedRootUiCoordinator extends RootUiCoordinator { 14 | } 15 | 16 | private boolean maybeShowPromo() { 17 | + if ((true)) return false; 18 | // Only one promo can be shown in one run to avoid nagging users too much. 19 | if (FullScreenSyncPromoUtil.launchPromoIfNeeded(mActivity, 20 | SyncConsentActivityLauncherImpl.get(), VersionInfo.getProductMajorVersion())) { 21 | diff --git a/components/user_education/common/feature_promo_registry.cc b/components/user_education/common/feature_promo_registry.cc 22 | --- a/components/user_education/common/feature_promo_registry.cc 23 | +++ b/components/user_education/common/feature_promo_registry.cc 24 | @@ -26,6 +26,7 @@ const FeaturePromoSpecification* FeaturePromoRegistry::GetParamsForFeature( 25 | } 26 | 27 | void FeaturePromoRegistry::RegisterFeature(FeaturePromoSpecification spec) { 28 | + if ((true)) return; 29 | const base::Feature* const iph_feature = spec.feature(); 30 | CHECK(iph_feature); 31 | const auto result = feature_promo_data_.emplace(iph_feature, std::move(spec)); 32 | -- 33 | 2.25.1 34 | -------------------------------------------------------------------------------- /build/patches/Disable-crash-reporting.patch: -------------------------------------------------------------------------------- 1 | From: uazo 2 | Date: Sat, 9 Apr 2022 21:43:35 +0200 3 | Subject: Disable crash reporting 4 | 5 | --- 6 | chrome/browser/chrome_content_browser_client.cc | 1 + 7 | content/public/common/content_features.cc | 4 ++-- 8 | 2 files changed, 3 insertions(+), 2 deletions(-) 9 | 10 | diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/chrome_content_browser_client.cc 11 | --- a/chrome/browser/chrome_content_browser_client.cc 12 | +++ b/chrome/browser/chrome_content_browser_client.cc 13 | @@ -2623,6 +2623,7 @@ void ChromeContentBrowserClient::AppendExtraCommandLineSwitches( 14 | base::NumberToString(pid)); 15 | } 16 | #endif 17 | + enable_crash_reporter = false; 18 | if (enable_crash_reporter) { 19 | std::string switch_value; 20 | std::unique_ptr client_info = 21 | diff --git a/content/public/common/content_features.cc b/content/public/common/content_features.cc 22 | --- a/content/public/common/content_features.cc 23 | +++ b/content/public/common/content_features.cc 24 | @@ -281,8 +281,8 @@ BASE_FEATURE(kCooperativeScheduling, 25 | // Enables crash reporting via Reporting API. 26 | // https://www.w3.org/TR/reporting/#crash-report 27 | BASE_FEATURE(kCrashReporting, 28 | - "CrashReporting", 29 | - base::FEATURE_ENABLED_BY_DEFAULT); 30 | + "CrashReporting", // disabled by default 31 | + base::FEATURE_DISABLED_BY_DEFAULT); // in Bromite 32 | 33 | // Enables support for the `Critical-CH` response header. 34 | // https://github.com/WICG/client-hints-infrastructure/blob/master/reliability.md#critical-ch 35 | -- 36 | 2.25.1 37 | -------------------------------------------------------------------------------- /build/patches/Disable-idle-detection.patch: -------------------------------------------------------------------------------- 1 | From: csagan5 <32685696+csagan5@users.noreply.github.com> 2 | Date: Sat, 19 Feb 2022 12:01:33 +0100 3 | Subject: Disable idle detection 4 | 5 | License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html 6 | --- 7 | content/public/common/content_features.cc | 2 +- 8 | 1 file changed, 1 insertion(+), 1 deletion(-) 9 | 10 | diff --git a/content/public/common/content_features.cc b/content/public/common/content_features.cc 11 | --- a/content/public/common/content_features.cc 12 | +++ b/content/public/common/content_features.cc 13 | @@ -557,7 +557,7 @@ BASE_FEATURE(kHandleRendererThreadTypeChangesInBrowser, 14 | // This is intended as a kill switch for the Idle Detection feature. To enable 15 | // this feature, the experimental web platform features flag should be set, 16 | // or the site should obtain an Origin Trial token. 17 | -BASE_FEATURE(kIdleDetection, "IdleDetection", base::FEATURE_ENABLED_BY_DEFAULT); 18 | +BASE_FEATURE(kIdleDetection, "IdleDetection", base::FEATURE_DISABLED_BY_DEFAULT); 19 | 20 | // A feature flag for the memory-backed code cache. 21 | BASE_FEATURE(kInMemoryCodeCache, 22 | -- 23 | 2.25.1 24 | -------------------------------------------------------------------------------- /build/patches/Disable-lock-icon-in-address-bar-by-default.patch: -------------------------------------------------------------------------------- 1 | From: csagan5 <32685696+csagan5@users.noreply.github.com> 2 | Date: Fri, 8 Oct 2021 00:30:26 +0200 3 | Subject: Disable lock icon in address bar by default 4 | 5 | License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html 6 | --- 7 | components/omnibox/common/omnibox_features.cc | 4 ++-- 8 | 1 file changed, 2 insertions(+), 2 deletions(-) 9 | 10 | diff --git a/components/omnibox/common/omnibox_features.cc b/components/omnibox/common/omnibox_features.cc 11 | --- a/components/omnibox/common/omnibox_features.cc 12 | +++ b/components/omnibox/common/omnibox_features.cc 13 | @@ -605,8 +605,8 @@ BASE_FEATURE(kSiteSearchStarterPack, 14 | 15 | // Experiment to introduce new security indicators for HTTPS. 16 | BASE_FEATURE(kUpdatedConnectionSecurityIndicators, 17 | - "OmniboxUpdatedConnectionSecurityIndicators", 18 | - base::FEATURE_DISABLED_BY_DEFAULT); 19 | + "OmniboxUpdatedConnectionSecurityIndicators", // enabled by default 20 | + base::FEATURE_ENABLED_BY_DEFAULT); // in Bromite 21 | 22 | // Feature used to default typed navigations to use HTTPS instead of HTTP. 23 | // This only applies to navigations that don't have a scheme such as 24 | -- 25 | 2.25.1 26 | -------------------------------------------------------------------------------- /build/patches/Disable-minidump-upload-scheduling.patch: -------------------------------------------------------------------------------- 1 | From: csagan5 <32685696+csagan5@users.noreply.github.com> 2 | Date: Sun, 27 Feb 2022 23:58:22 +0100 3 | Subject: Disable minidump upload scheduling 4 | 5 | License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html 6 | --- 7 | components/endpoint_fetcher/endpoint_fetcher.cc | 2 +- 8 | .../minidump_uploader/MinidumpUploadJobService.java | 5 ++++- 9 | 2 files changed, 5 insertions(+), 2 deletions(-) 10 | 11 | diff --git a/components/endpoint_fetcher/endpoint_fetcher.cc b/components/endpoint_fetcher/endpoint_fetcher.cc 12 | --- a/components/endpoint_fetcher/endpoint_fetcher.cc 13 | +++ b/components/endpoint_fetcher/endpoint_fetcher.cc 14 | @@ -355,7 +355,7 @@ void EndpointFetcher::OnResponseFetched( 15 | } 16 | } else { 17 | std::string net_error = net::ErrorToString(net_error_code); 18 | - VLOG(1) << __func__ << " with response error: " << net_error; 19 | + LOG(ERROR) << __func__ << " with response error: " << net_error; 20 | response->response = "There was a response error"; 21 | std::move(endpoint_fetcher_callback).Run(std::move(response)); 22 | } 23 | diff --git a/components/minidump_uploader/android/java/src/org/chromium/components/minidump_uploader/MinidumpUploadJobService.java b/components/minidump_uploader/android/java/src/org/chromium/components/minidump_uploader/MinidumpUploadJobService.java 24 | --- a/components/minidump_uploader/android/java/src/org/chromium/components/minidump_uploader/MinidumpUploadJobService.java 25 | +++ b/components/minidump_uploader/android/java/src/org/chromium/components/minidump_uploader/MinidumpUploadJobService.java 26 | @@ -50,7 +50,10 @@ public abstract class MinidumpUploadJobService 27 | * to build an upload job for scheduling. 28 | */ 29 | public static void scheduleUpload(JobInfo.Builder jobInfoBuilder) { 30 | - Log.i(TAG, "Scheduling upload of all pending minidumps."); 31 | + Log.i(TAG, "Scheduling upload of all pending minidumps is disabled."); 32 | + if ((true)) { 33 | + return; 34 | + } 35 | JobScheduler scheduler = 36 | (JobScheduler) ContextUtils.getApplicationContext().getSystemService( 37 | Context.JOB_SCHEDULER_SERVICE); 38 | -- 39 | 2.25.1 40 | -------------------------------------------------------------------------------- /build/patches/Disable-offline-pages-in-CCT.patch: -------------------------------------------------------------------------------- 1 | From: csagan5 <32685696+csagan5@users.noreply.github.com> 2 | Date: Thu, 30 May 2019 03:37:45 +0200 3 | Subject: Disable offline pages in CCT 4 | 5 | License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html 6 | --- 7 | components/offline_pages/core/offline_page_feature.cc | 4 ++-- 8 | 1 file changed, 2 insertions(+), 2 deletions(-) 9 | 10 | diff --git a/components/offline_pages/core/offline_page_feature.cc b/components/offline_pages/core/offline_page_feature.cc 11 | --- a/components/offline_pages/core/offline_page_feature.cc 12 | +++ b/components/offline_pages/core/offline_page_feature.cc 13 | @@ -37,8 +37,8 @@ BASE_FEATURE(kOfflinePagesDescriptivePendingStatusFeature, 14 | base::FEATURE_ENABLED_BY_DEFAULT); 15 | 16 | BASE_FEATURE(kOfflinePagesInDownloadHomeOpenInCctFeature, 17 | - "OfflinePagesInDownloadHomeOpenInCct", 18 | - base::FEATURE_ENABLED_BY_DEFAULT); 19 | + "OfflinePagesInDownloadHomeOpenInCct", // disabled by default 20 | + base::FEATURE_DISABLED_BY_DEFAULT); // in Bromite 21 | 22 | BASE_FEATURE(kOfflinePagesNetworkStateLikelyUnknown, 23 | "OfflinePagesNetworkStateLikelyUnknown", 24 | -- 25 | 2.25.1 26 | -------------------------------------------------------------------------------- /build/patches/Disable-plugins-enumeration.patch: -------------------------------------------------------------------------------- 1 | From: csagan5 <32685696+csagan5@users.noreply.github.com> 2 | Date: Thu, 22 Mar 2018 22:38:00 +0100 3 | Subject: Disable plugins enumeration 4 | 5 | License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html 6 | --- 7 | third_party/blink/renderer/core/frame/local_frame.cc | 2 -- 8 | 1 file changed, 2 deletions(-) 9 | 10 | diff --git a/third_party/blink/renderer/core/frame/local_frame.cc b/third_party/blink/renderer/core/frame/local_frame.cc 11 | --- a/third_party/blink/renderer/core/frame/local_frame.cc 12 | +++ b/third_party/blink/renderer/core/frame/local_frame.cc 13 | @@ -2004,9 +2004,7 @@ WebContentSettingsClient* LocalFrame::GetContentSettingsClient() { 14 | } 15 | 16 | PluginData* LocalFrame::GetPluginData() const { 17 | - if (!Loader().AllowPlugins()) 18 | return nullptr; 19 | - return GetPage()->GetPluginData(); 20 | } 21 | 22 | void LocalFrame::SetAdTrackerForTesting(AdTracker* ad_tracker) { 23 | -- 24 | 2.25.1 25 | -------------------------------------------------------------------------------- /build/patches/Disable-requests-for-single-word-Omnibar-searches.patch: -------------------------------------------------------------------------------- 1 | From: csagan5 <32685696+csagan5@users.noreply.github.com> 2 | Date: Sun, 27 Oct 2019 10:21:19 +0100 3 | Subject: Disable requests for single-word Omnibar searches 4 | 5 | Patch from https://github.com/Eloston/ungoogled-chromium/issues/814#issuecomment-526873727 6 | 7 | License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html 8 | --- 9 | .../ui/omnibox/chrome_omnibox_navigation_observer.cc | 7 ------- 10 | 1 file changed, 7 deletions(-) 11 | 12 | diff --git a/chrome/browser/ui/omnibox/chrome_omnibox_navigation_observer.cc b/chrome/browser/ui/omnibox/chrome_omnibox_navigation_observer.cc 13 | --- a/chrome/browser/ui/omnibox/chrome_omnibox_navigation_observer.cc 14 | +++ b/chrome/browser/ui/omnibox/chrome_omnibox_navigation_observer.cc 15 | @@ -252,13 +252,6 @@ ChromeOmniboxNavigationObserver::ChromeOmniboxNavigationObserver( 16 | profile_(profile), 17 | show_infobar_(std::move(show_infobar)) { 18 | NavigationUserData::CreateForNavigationHandle(navigation, this); 19 | - if (alternative_nav_match_.destination_url.is_valid()) { 20 | - loader_ = std::make_unique( 21 | - alternative_nav_match.destination_url, this, 22 | - base::BindOnce( 23 | - &ChromeOmniboxNavigationObserver::OnAlternativeLoaderDone, this), 24 | - GetURLLoaderFactory(loader_factory, profile)); 25 | - } 26 | } 27 | 28 | ChromeOmniboxNavigationObserver::~ChromeOmniboxNavigationObserver() { 29 | -- 30 | 2.25.1 31 | -------------------------------------------------------------------------------- /build/patches/Disable-some-signed-exchange-features.patch: -------------------------------------------------------------------------------- 1 | From: csagan5 <32685696+csagan5@users.noreply.github.com> 2 | Date: Sat, 2 Nov 2019 16:22:56 +0100 3 | Subject: Disable some signed exchange features 4 | 5 | License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html 6 | --- 7 | content/public/common/content_features.cc | 8 ++++---- 8 | 1 file changed, 4 insertions(+), 4 deletions(-) 9 | 10 | diff --git a/content/public/common/content_features.cc b/content/public/common/content_features.cc 11 | --- a/content/public/common/content_features.cc 12 | +++ b/content/public/common/content_features.cc 13 | @@ -1171,14 +1171,14 @@ BASE_FEATURE(kShouldAllowFirstPartyStorageKeyOverrideFromEmbedder, 14 | // Signed Exchange Reporting for distributors 15 | // https://www.chromestatus.com/feature/5687904902840320 16 | BASE_FEATURE(kSignedExchangeReportingForDistributors, 17 | - "SignedExchangeReportingForDistributors", 18 | - base::FEATURE_ENABLED_BY_DEFAULT); 19 | + "SignedExchangeReportingForDistributors", // must be disabled 20 | + base::FEATURE_DISABLED_BY_DEFAULT); // in Bromite 21 | 22 | // Origin-Signed HTTP Exchanges (for WebPackage Loading) 23 | // https://www.chromestatus.com/feature/5745285984681984 24 | BASE_FEATURE(kSignedHTTPExchange, 25 | - "SignedHTTPExchange", 26 | - base::FEATURE_ENABLED_BY_DEFAULT); 27 | + "SignedHTTPExchange", // must be disabled 28 | + base::FEATURE_DISABLED_BY_DEFAULT); // in Bromite 29 | 30 | // Delays RenderProcessHost shutdown by a few seconds to allow the subframe's 31 | // process to be potentially reused. This aims to reduce process churn in 32 | -- 33 | 2.25.1 34 | -------------------------------------------------------------------------------- /build/patches/Disable-the-DIAL-repeating-discovery.patch: -------------------------------------------------------------------------------- 1 | From: Blaise 2 | Date: Sun, 23 Aug 2020 14:32:55 -0500 3 | Subject: Disable the DIAL repeating discovery 4 | 5 | This causes unnecessary SSDP network spam 6 | 7 | License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html 8 | --- 9 | chrome/browser/media/router/discovery/dial/dial_registry.cc | 6 ------ 10 | 1 file changed, 6 deletions(-) 11 | 12 | diff --git a/chrome/browser/media/router/discovery/dial/dial_registry.cc b/chrome/browser/media/router/discovery/dial/dial_registry.cc 13 | --- a/chrome/browser/media/router/discovery/dial/dial_registry.cc 14 | +++ b/chrome/browser/media/router/discovery/dial/dial_registry.cc 15 | @@ -155,10 +155,6 @@ void DialRegistry::StartPeriodicDiscovery() { 16 | return; 17 | 18 | dial_ = CreateDialService(); 19 | - DoDiscovery(); 20 | - repeating_timer_ = std::make_unique(); 21 | - repeating_timer_->Start(FROM_HERE, refresh_interval_delta_, this, 22 | - &DialRegistry::DoDiscovery); 23 | // Always send the current device list with the next discovery request. This 24 | // may not be necessary, but is done to match previous behavior. 25 | ++registry_generation_; 26 | @@ -175,8 +171,6 @@ void DialRegistry::StopPeriodicDiscovery() { 27 | if (!dial_) 28 | return; 29 | 30 | - repeating_timer_->Stop(); 31 | - repeating_timer_.reset(); 32 | ClearDialService(); 33 | } 34 | 35 | -- 36 | 2.25.1 37 | -------------------------------------------------------------------------------- /build/patches/Disable-update-scheduler.patch: -------------------------------------------------------------------------------- 1 | From: csagan5 <32685696+csagan5@users.noreply.github.com> 2 | Date: Sat, 27 Oct 2018 17:54:01 +0200 3 | Subject: Disable update scheduler 4 | 5 | License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html 6 | --- 7 | .../background_task_scheduler/ChromeBackgroundTaskFactory.java | 2 +- 8 | 1 file changed, 1 insertion(+), 1 deletion(-) 9 | 10 | diff --git a/chrome/android/java/src/org/chromium/chrome/browser/background_task_scheduler/ChromeBackgroundTaskFactory.java b/chrome/android/java/src/org/chromium/chrome/browser/background_task_scheduler/ChromeBackgroundTaskFactory.java 11 | --- a/chrome/android/java/src/org/chromium/chrome/browser/background_task_scheduler/ChromeBackgroundTaskFactory.java 12 | +++ b/chrome/android/java/src/org/chromium/chrome/browser/background_task_scheduler/ChromeBackgroundTaskFactory.java 13 | @@ -63,7 +63,7 @@ public class ChromeBackgroundTaskFactory implements BackgroundTaskFactory { 14 | case TaskIds.WEBAPK_UPDATE_JOB_ID: 15 | return new WebApkUpdateTask(); 16 | case TaskIds.COMPONENT_UPDATE_JOB_ID: 17 | - return new UpdateTask(); 18 | + return null; 19 | case TaskIds.BACKGROUND_SYNC_ONE_SHOT_JOB_ID: 20 | return new BackgroundSyncBackgroundTask(); 21 | case TaskIds.NOTIFICATION_SCHEDULER_JOB_ID: 22 | -- 23 | 2.25.1 24 | -------------------------------------------------------------------------------- /build/patches/Do-not-build-API-keys-infobar.patch: -------------------------------------------------------------------------------- 1 | From: csagan5 <32685696+csagan5@users.noreply.github.com> 2 | Date: Fri, 23 Jul 2021 15:05:19 +0200 3 | Subject: Do not build API keys infobar 4 | 5 | License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html 6 | --- 7 | chrome/browser/ui/BUILD.gn | 2 -- 8 | 1 file changed, 2 deletions(-) 9 | 10 | diff --git a/chrome/browser/ui/BUILD.gn b/chrome/browser/ui/BUILD.gn 11 | --- a/chrome/browser/ui/BUILD.gn 12 | +++ b/chrome/browser/ui/BUILD.gn 13 | @@ -1398,8 +1398,6 @@ static_library("ui") { 14 | "singleton_tabs.h", 15 | "startup/automation_infobar_delegate.cc", 16 | "startup/automation_infobar_delegate.h", 17 | - "startup/google_api_keys_infobar_delegate.cc", 18 | - "startup/google_api_keys_infobar_delegate.h", 19 | "startup/infobar_utils.cc", 20 | "startup/infobar_utils.h", 21 | "startup/launch_mode_recorder.cc", 22 | -- 23 | 2.25.1 24 | -------------------------------------------------------------------------------- /build/patches/Do-not-hide-component-extensions.patch: -------------------------------------------------------------------------------- 1 | From: csagan5 <32685696+csagan5@users.noreply.github.com> 2 | Date: Thu, 12 Oct 2017 08:09:24 +0200 3 | Subject: Do not hide component extensions 4 | 5 | License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html 6 | --- 7 | extensions/browser/api/management/management_api.cc | 3 ++- 8 | 1 file changed, 2 insertions(+), 1 deletion(-) 9 | 10 | diff --git a/extensions/browser/api/management/management_api.cc b/extensions/browser/api/management/management_api.cc 11 | --- a/extensions/browser/api/management/management_api.cc 12 | +++ b/extensions/browser/api/management/management_api.cc 13 | @@ -70,7 +70,8 @@ AutoConfirmForTest auto_confirm_for_test = DO_NOT_SKIP; 14 | // Returns true if the extension should be exposed via the chrome.management 15 | // API. 16 | bool ShouldExposeViaManagementAPI(const Extension& extension) { 17 | - return !Manifest::IsComponentLocation(extension.location()); 18 | + // do not hide component extensions 19 | + return true; 20 | } 21 | 22 | std::vector CreateWarningsList(const Extension* extension) { 23 | -- 24 | 2.25.1 25 | -------------------------------------------------------------------------------- /build/patches/Do-not-link-with-libatomic.patch: -------------------------------------------------------------------------------- 1 | From: uazo 2 | Date: Tue, 11 Jan 2022 13:59:32 +0000 3 | Subject: Do not link with libatomic 4 | 5 | Compiler has built-in support thus libatomic linking is no more needed 6 | This patch allows building with use_sysroot=false 7 | 8 | Original License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html 9 | License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html 10 | --- 11 | base/BUILD.gn | 2 +- 12 | 1 file changed, 1 insertion(+), 1 deletion(-) 13 | 14 | diff --git a/base/BUILD.gn b/base/BUILD.gn 15 | --- a/base/BUILD.gn 16 | +++ b/base/BUILD.gn 17 | @@ -1101,7 +1101,7 @@ component("base") { 18 | # more robust check for this. 19 | if (!use_sysroot && (is_android || is_chromeos || (is_linux && !is_castos)) && 20 | host_toolchain != "//build/toolchain/cros:host") { 21 | - libs += [ "atomic" ] 22 | + #libs += [ "atomic" ] 23 | } 24 | 25 | if (use_allocator_shim) { 26 | -- 27 | 2.25.1 28 | -------------------------------------------------------------------------------- /build/patches/Do-not-store-passwords-by-default.patch: -------------------------------------------------------------------------------- 1 | From: csagan5 <32685696+csagan5@users.noreply.github.com> 2 | Date: Wed, 11 Oct 2017 23:17:17 +0200 3 | Subject: Do not store passwords by default 4 | 5 | License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html 6 | --- 7 | .../password_manager/core/browser/password_manager.cc | 8 ++++---- 8 | 1 file changed, 4 insertions(+), 4 deletions(-) 9 | 10 | diff --git a/components/password_manager/core/browser/password_manager.cc b/components/password_manager/core/browser/password_manager.cc 11 | --- a/components/password_manager/core/browser/password_manager.cc 12 | +++ b/components/password_manager/core/browser/password_manager.cc 13 | @@ -257,14 +257,14 @@ base::CallbackListSubscription AddSyncEnabledOrDisabledCallback( 14 | void PasswordManager::RegisterProfilePrefs( 15 | user_prefs::PrefRegistrySyncable* registry) { 16 | registry->RegisterBooleanPref( 17 | - prefs::kCredentialsEnableService, true, 18 | + prefs::kCredentialsEnableService, false, 19 | user_prefs::PrefRegistrySyncable::SYNCABLE_PRIORITY_PREF); 20 | #if BUILDFLAG(IS_IOS) 21 | registry->RegisterBooleanPref(prefs::kCredentialProviderEnabledOnStartup, 22 | false); 23 | #endif 24 | registry->RegisterBooleanPref( 25 | - prefs::kCredentialsEnableAutosignin, true, 26 | + prefs::kCredentialsEnableAutosignin, false, 27 | user_prefs::PrefRegistrySyncable::SYNCABLE_PRIORITY_PREF); 28 | registry->RegisterStringPref(prefs::kSyncPasswordHash, std::string(), 29 | PrefRegistry::NO_REGISTRATION_FLAGS); 30 | @@ -307,9 +307,9 @@ void PasswordManager::RegisterProfilePrefs( 31 | user_prefs::PrefRegistrySyncable::SYNCABLE_PREF); 32 | registry->RegisterBooleanPref(prefs::kPasswordsPrefWithNewLabelUsed, false); 33 | #if BUILDFLAG(IS_ANDROID) 34 | - registry->RegisterBooleanPref(prefs::kOfferToSavePasswordsEnabledGMS, true); 35 | + registry->RegisterBooleanPref(prefs::kOfferToSavePasswordsEnabledGMS, false); 36 | registry->RegisterBooleanPref(prefs::kSavePasswordsSuspendedByError, false); 37 | - registry->RegisterBooleanPref(prefs::kAutoSignInEnabledGMS, true); 38 | + registry->RegisterBooleanPref(prefs::kAutoSignInEnabledGMS, false); 39 | registry->RegisterBooleanPref(prefs::kSettingsMigratedToUPM, false); 40 | registry->RegisterIntegerPref( 41 | prefs::kCurrentMigrationVersionToGoogleMobileServices, 0); 42 | -- 43 | 2.25.1 44 | -------------------------------------------------------------------------------- /build/patches/Enable-ECH-by-default.patch: -------------------------------------------------------------------------------- 1 | From: csagan5 <32685696+csagan5@users.noreply.github.com> 2 | Date: Sun, 30 Oct 2022 18:11:19 +0100 3 | Subject: Enable ECH by default 4 | 5 | License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html 6 | --- 7 | net/base/features.cc | 8 ++++---- 8 | 1 file changed, 4 insertions(+), 4 deletions(-) 9 | 10 | diff --git a/net/base/features.cc b/net/base/features.cc 11 | --- a/net/base/features.cc 12 | +++ b/net/base/features.cc 13 | @@ -87,12 +87,12 @@ BASE_FEATURE(kEnableTLS13EarlyData, 14 | base::FEATURE_DISABLED_BY_DEFAULT); 15 | 16 | BASE_FEATURE(kEncryptedClientHello, 17 | - "EncryptedClientHello", 18 | - base::FEATURE_DISABLED_BY_DEFAULT); 19 | + "EncryptedClientHello", // enabled 20 | + base::FEATURE_ENABLED_BY_DEFAULT); // in Bromite 21 | 22 | BASE_FEATURE(kEncryptedClientHelloQuic, 23 | - "EncryptedClientHelloQuic", 24 | - base::FEATURE_ENABLED_BY_DEFAULT); 25 | + "EncryptedClientHelloQuic", // enabled 26 | + base::FEATURE_ENABLED_BY_DEFAULT); // in Bromite 27 | 28 | BASE_FEATURE(kNetworkQualityEstimator, 29 | "NetworkQualityEstimator", 30 | -- 31 | 2.25.1 32 | -------------------------------------------------------------------------------- /build/patches/Enable-HEVC-by-default.patch: -------------------------------------------------------------------------------- 1 | From: csagan5 <32685696+csagan5@users.noreply.github.com> 2 | Date: Tue, 27 Sep 2022 23:39:54 +0200 3 | Subject: Enable HEVC by default 4 | 5 | Add a guard to avoid setting to be disabled upstream. 6 | 7 | License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html 8 | --- 9 | media/base/media_switches.cc | 4 ++-- 10 | 1 file changed, 2 insertions(+), 2 deletions(-) 11 | 12 | diff --git a/media/base/media_switches.cc b/media/base/media_switches.cc 13 | --- a/media/base/media_switches.cc 14 | +++ b/media/base/media_switches.cc 15 | @@ -333,8 +333,8 @@ BASE_FEATURE(kEnableTabMuting, 16 | #if BUILDFLAG(ENABLE_PLATFORM_HEVC) 17 | // Enables HEVC hardware accelerated decoding. 18 | BASE_FEATURE(kPlatformHEVCDecoderSupport, 19 | - "PlatformHEVCDecoderSupport", 20 | - base::FEATURE_ENABLED_BY_DEFAULT); 21 | + "PlatformHEVCDecoderSupport", // must be enabled 22 | + base::FEATURE_ENABLED_BY_DEFAULT); // in Bromite 23 | 24 | #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) 25 | // Enables HEVC hardware accelerated encoding for Windows and Mac. 26 | -- 27 | 2.25.1 28 | -------------------------------------------------------------------------------- /build/patches/Enable-PermuteTLSExtensions-by-default.patch: -------------------------------------------------------------------------------- 1 | From: csagan5 <32685696+csagan5@users.noreply.github.com> 2 | Date: Fri, 2 Dec 2022 01:18:14 +0100 3 | Subject: Enable PermuteTLSExtensions by default 4 | 5 | License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html 6 | --- 7 | net/base/features.cc | 4 ++-- 8 | 1 file changed, 2 insertions(+), 2 deletions(-) 9 | 10 | diff --git a/net/base/features.cc b/net/base/features.cc 11 | --- a/net/base/features.cc 12 | +++ b/net/base/features.cc 13 | @@ -143,8 +143,8 @@ BASE_FEATURE(kTLS13KeyUpdate, 14 | base::FEATURE_DISABLED_BY_DEFAULT); 15 | 16 | BASE_FEATURE(kPermuteTLSExtensions, 17 | - "PermuteTLSExtensions", 18 | - base::FEATURE_ENABLED_BY_DEFAULT); 19 | + "PermuteTLSExtensions", // enabled by default 20 | + base::FEATURE_ENABLED_BY_DEFAULT); // in Bromite 21 | 22 | BASE_FEATURE(kPostQuantumKyber, 23 | "PostQuantumKyber", 24 | -- 25 | 2.25.1 26 | -------------------------------------------------------------------------------- /build/patches/Enable-SPPI-for-devices-with-enough-memory.patch: -------------------------------------------------------------------------------- 1 | From: csagan5 <32685696+csagan5@users.noreply.github.com> 2 | Date: Sun, 17 Mar 2019 19:09:00 +0100 3 | Subject: Enable SPPI for devices with enough memory 4 | 5 | License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html 6 | --- 7 | chrome/common/chrome_features.cc | 8 ++------ 8 | components/site_isolation/features.cc | 4 ++-- 9 | 2 files changed, 4 insertions(+), 8 deletions(-) 10 | 11 | diff --git a/chrome/common/chrome_features.cc b/chrome/common/chrome_features.cc 12 | --- a/chrome/common/chrome_features.cc 13 | +++ b/chrome/common/chrome_features.cc 14 | @@ -1083,12 +1083,8 @@ BASE_FEATURE(kSecurityKeyAttestationPrompt, 15 | // TODO(alexmos): Move this and the other site isolation features below to 16 | // browser_features, as they are only used on the browser side. 17 | BASE_FEATURE(kSitePerProcess, 18 | - "SitePerProcess", 19 | -#if BUILDFLAG(IS_ANDROID) 20 | - base::FEATURE_DISABLED_BY_DEFAULT 21 | -#else 22 | - base::FEATURE_ENABLED_BY_DEFAULT 23 | -#endif 24 | + "SitePerProcess", // enabled by default 25 | + base::FEATURE_ENABLED_BY_DEFAULT // in Bromite 26 | ); 27 | 28 | #if BUILDFLAG(IS_CHROMEOS_ASH) 29 | diff --git a/components/site_isolation/features.cc b/components/site_isolation/features.cc 30 | --- a/components/site_isolation/features.cc 31 | +++ b/components/site_isolation/features.cc 32 | @@ -60,8 +60,8 @@ BASE_FEATURE(kSiteIsolationForOAuthSites, 33 | // kSitePerProcess won't be checked at all, and field trials won't activate 34 | // either the control or the experiment group. 35 | BASE_FEATURE(kSiteIsolationMemoryThresholds, 36 | - "SiteIsolationMemoryThresholds", 37 | - base::FEATURE_DISABLED_BY_DEFAULT); 38 | + "SiteIsolationMemoryThresholds", // must be enabled 39 | + base::FEATURE_ENABLED_BY_DEFAULT); // in Bromite 40 | const char kStrictSiteIsolationMemoryThresholdParamName[] = 41 | "strict_site_isolation_threshold_mb"; 42 | const char kPartialSiteIsolationMemoryThresholdParamName[] = 43 | -- 44 | 2.25.1 45 | -------------------------------------------------------------------------------- /build/patches/Enable-darken-websites-checkbox-in-themes.patch: -------------------------------------------------------------------------------- 1 | From: csagan5 <32685696+csagan5@users.noreply.github.com> 2 | Date: Thu, 20 Aug 2020 20:15:34 +0200 3 | Subject: Enable darken websites checkbox in themes 4 | 5 | Unexpire #darken-websites-checkbox-in-themes-setting 6 | 7 | License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html 8 | --- 9 | chrome/browser/flag-metadata.json | 6 +++--- 10 | components/content_settings/core/common/features.cc | 4 ++-- 11 | 2 files changed, 5 insertions(+), 5 deletions(-) 12 | 13 | diff --git a/chrome/browser/flag-metadata.json b/chrome/browser/flag-metadata.json 14 | --- a/chrome/browser/flag-metadata.json 15 | +++ b/chrome/browser/flag-metadata.json 16 | @@ -1348,9 +1348,9 @@ 17 | "expiry_milestone": 120 18 | }, 19 | { 20 | - "name": "darken-websites-checkbox-in-themes-setting", 21 | - "owners": [ "nemco@google.com", "wenyufu@google.com", "twellington" ], 22 | - "expiry_milestone": 115 23 | + "name": "darken-websites-checkbox-in-themes-setting", // this is always enabled in Bromite 24 | + "owners": [ "nemco@google.com", "wenyufu@google.com", "twellington" ], // - 25 | + "expiry_milestone": -1 26 | }, 27 | { 28 | "name": "data-retention-policies-disable-sync-types-needed", 29 | diff --git a/components/content_settings/core/common/features.cc b/components/content_settings/core/common/features.cc 30 | --- a/components/content_settings/core/common/features.cc 31 | +++ b/components/content_settings/core/common/features.cc 32 | @@ -19,8 +19,8 @@ BASE_FEATURE(kImprovedCookieControls, 33 | // Enables auto dark feature in theme settings. 34 | #if BUILDFLAG(IS_ANDROID) 35 | BASE_FEATURE(kDarkenWebsitesCheckboxInThemesSetting, 36 | - "DarkenWebsitesCheckboxInThemesSetting", 37 | - base::FEATURE_DISABLED_BY_DEFAULT); 38 | + "DarkenWebsitesCheckboxInThemesSetting", // must be enabled 39 | + base::FEATURE_ENABLED_BY_DEFAULT); // in Bromite 40 | constexpr base::FeatureParam kDarkenWebsitesCheckboxOptOut{ 41 | &kDarkenWebsitesCheckboxInThemesSetting, "opt_out", true}; 42 | #endif // BUILDFLAG(IS_ANDROID) 43 | -- 44 | 2.25.1 45 | -------------------------------------------------------------------------------- /build/patches/Enable-prefetch-privacy-changes-by-default.patch: -------------------------------------------------------------------------------- 1 | From: csagan5 <32685696+csagan5@users.noreply.github.com> 2 | Date: Fri, 31 Jul 2020 08:27:26 +0200 3 | Subject: Enable prefetch-privacy-changes by default 4 | 5 | License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html 6 | --- 7 | third_party/blink/common/features.cc | 4 ++-- 8 | 1 file changed, 2 insertions(+), 2 deletions(-) 9 | 10 | diff --git a/third_party/blink/common/features.cc b/third_party/blink/common/features.cc 11 | --- a/third_party/blink/common/features.cc 12 | +++ b/third_party/blink/common/features.cc 13 | @@ -509,8 +509,8 @@ BASE_FEATURE(kAllowSyncXHRInPageDismissal, 14 | // Prefetch request properties are updated to be privacy-preserving. See 15 | // crbug.com/988956. 16 | BASE_FEATURE(kPrefetchPrivacyChanges, 17 | - "PrefetchPrivacyChanges", 18 | - base::FEATURE_DISABLED_BY_DEFAULT); 19 | + "PrefetchPrivacyChanges", // must be enabled 20 | + base::FEATURE_ENABLED_BY_DEFAULT); // in Bromite 21 | 22 | // Decodes jpeg 4:2:0 formatted images to YUV instead of RGBX and stores in this 23 | // format in the image decode cache. See crbug.com/919627 for details on the 24 | -- 25 | 2.25.1 26 | -------------------------------------------------------------------------------- /build/patches/Enable-third-party-storage-partitioning.patch: -------------------------------------------------------------------------------- 1 | From: csagan5 <32685696+csagan5@users.noreply.github.com> 2 | Date: Sat, 3 Dec 2022 12:02:20 +0100 3 | Subject: Enable third-party storage partitioning 4 | 5 | License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html 6 | --- 7 | net/base/features.cc | 4 ++-- 8 | 1 file changed, 2 insertions(+), 2 deletions(-) 9 | 10 | diff --git a/net/base/features.cc b/net/base/features.cc 11 | --- a/net/base/features.cc 12 | +++ b/net/base/features.cc 13 | @@ -273,8 +273,8 @@ BASE_FEATURE(kBlockSetCookieHeader, 14 | // Enables partitioning of third party storage (IndexedDB, CacheStorage, etc.) 15 | // by the top level site to reduce fingerprinting. 16 | BASE_FEATURE(kThirdPartyStoragePartitioning, 17 | - "ThirdPartyStoragePartitioning", 18 | - base::FEATURE_DISABLED_BY_DEFAULT); 19 | + "ThirdPartyStoragePartitioning", // must be enabled 20 | + base::FEATURE_ENABLED_BY_DEFAULT); // in Bromite 21 | // Whether to use the new code paths needed to support partitioning Blob URLs. 22 | // This exists as a kill-switch in case an issue is identified with the Blob 23 | // URL implementation that causes breakage. 24 | -- 25 | 2.25.1 26 | -------------------------------------------------------------------------------- /build/patches/Follow-only-system-dark-mode.patch: -------------------------------------------------------------------------------- 1 | From: krlvm <51774833+krlvm@users.noreply.github.com> 2 | Date: Mon, 4 Jul 2022 16:14:37 +0300 3 | Subject: Follow only system dark mode 4 | 5 | Follow only system dark mode preference when theme is set to system default 6 | 7 | License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html 8 | --- 9 | .../browser/night_mode/GlobalNightModeStateController.java | 2 +- 10 | 1 file changed, 1 insertion(+), 1 deletion(-) 11 | 12 | diff --git a/chrome/browser/ui/android/night_mode/java/src/org/chromium/chrome/browser/night_mode/GlobalNightModeStateController.java b/chrome/browser/ui/android/night_mode/java/src/org/chromium/chrome/browser/night_mode/GlobalNightModeStateController.java 13 | --- a/chrome/browser/ui/android/night_mode/java/src/org/chromium/chrome/browser/night_mode/GlobalNightModeStateController.java 14 | +++ b/chrome/browser/ui/android/night_mode/java/src/org/chromium/chrome/browser/night_mode/GlobalNightModeStateController.java 15 | @@ -126,7 +126,7 @@ class GlobalNightModeStateController implements NightModeStateProvider, 16 | } 17 | 18 | private void updateNightMode() { 19 | - boolean powerSaveModeOn = mPowerSaveModeMonitor.powerSavingIsOn(); 20 | + boolean powerSaveModeOn = false; 21 | final int theme = NightModeUtils.getThemeSetting(); 22 | final boolean newNightModeOn = theme == ThemeType.SYSTEM_DEFAULT 23 | && (powerSaveModeOn || mSystemNightModeMonitor.isSystemNightModeOn()) 24 | -- 25 | 2.25.1 26 | -------------------------------------------------------------------------------- /build/patches/Hardening-against-incognito-mode-detection.patch: -------------------------------------------------------------------------------- 1 | From: csagan5 <32685696+csagan5@users.noreply.github.com> 2 | Date: Sat, 5 Sep 2020 21:38:15 +0200 3 | Subject: Hardening against incognito mode detection 4 | 5 | License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html 6 | --- 7 | storage/browser/quota/quota_settings.cc | 2 +- 8 | 1 file changed, 1 insertion(+), 1 deletion(-) 9 | 10 | diff --git a/storage/browser/quota/quota_settings.cc b/storage/browser/quota/quota_settings.cc 11 | --- a/storage/browser/quota/quota_settings.cc 12 | +++ b/storage/browser/quota/quota_settings.cc 13 | @@ -60,7 +60,7 @@ absl::optional CalculateNominalDynamicSettings( 14 | base::ScopedBlockingCall scoped_blocking_call(FROM_HERE, 15 | base::BlockingType::MAY_BLOCK); 16 | 17 | - if (is_incognito) { 18 | + if ((false) && is_incognito) { 19 | return CalculateIncognitoDynamicSettings( 20 | device_info_helper->AmountOfPhysicalMemory()); 21 | } 22 | -- 23 | 2.25.1 24 | -------------------------------------------------------------------------------- /build/patches/Ignore-enterprise-policies-for-secure-DNS.patch: -------------------------------------------------------------------------------- 1 | From: csagan5 <32685696+csagan5@users.noreply.github.com> 2 | Date: Tue, 26 Jan 2021 00:21:51 +0100 3 | Subject: Ignore enterprise policies for secure DNS 4 | 5 | License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html 6 | --- 7 | .../chrome/browser/enterprise/util/EnterpriseInfo.java | 8 +------- 8 | 1 file changed, 1 insertion(+), 7 deletions(-) 9 | 10 | diff --git a/chrome/browser/enterprise/util/android/java/src/org/chromium/chrome/browser/enterprise/util/EnterpriseInfo.java b/chrome/browser/enterprise/util/android/java/src/org/chromium/chrome/browser/enterprise/util/EnterpriseInfo.java 11 | --- a/chrome/browser/enterprise/util/android/java/src/org/chromium/chrome/browser/enterprise/util/EnterpriseInfo.java 12 | +++ b/chrome/browser/enterprise/util/android/java/src/org/chromium/chrome/browser/enterprise/util/EnterpriseInfo.java 13 | @@ -81,13 +81,7 @@ public abstract class EnterpriseInfo { 14 | @CalledByNative 15 | public static void getManagedStateForNative() { 16 | Callback callback = (result) -> { 17 | - if (result == null) { 18 | - // Unable to determine the owned state, assume it's not owned. 19 | - EnterpriseInfoJni.get().updateNativeOwnedState(false, false); 20 | - } else { 21 | - EnterpriseInfoJni.get().updateNativeOwnedState( 22 | - result.mDeviceOwned, result.mProfileOwned); 23 | - } 24 | + EnterpriseInfoJni.get().updateNativeOwnedState(false, false); 25 | }; 26 | 27 | EnterpriseInfo.getInstance().getDeviceEnterpriseInfo(callback); 28 | -- 29 | 2.25.1 30 | -------------------------------------------------------------------------------- /build/patches/Improve-plain-text-rendering-on-mobile.patch: -------------------------------------------------------------------------------- 1 | From: mauve 2 | Date: Mon, 30 May 2022 22:25:04 -0400 3 | Subject: Improve plain text rendering on mobile 4 | 5 | License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html 6 | --- 7 | .../renderer/core/html/parser/text_document_parser.cc | 11 ++++++++++- 8 | 1 file changed, 10 insertions(+), 1 deletion(-) 9 | 10 | diff --git a/third_party/blink/renderer/core/html/parser/text_document_parser.cc b/third_party/blink/renderer/core/html/parser/text_document_parser.cc 11 | --- a/third_party/blink/renderer/core/html/parser/text_document_parser.cc 12 | +++ b/third_party/blink/renderer/core/html/parser/text_document_parser.cc 13 | @@ -63,9 +63,18 @@ void TextDocumentParser::InsertFakePreElement() { 14 | TreeBuilder()->ConstructTree(&fake_meta); 15 | attributes.clear(); 16 | 17 | + // Scale up text to look good on Mobile 18 | + attributes.push_back(Attribute(html_names::kNameAttr, "viewport")); 19 | + attributes.push_back(Attribute(html_names::kContentAttr, 20 | + "width=device-width, initial-scale=1.0, maximum-scale=1.0")); 21 | + AtomicHTMLToken viewport_meta(HTMLToken::kStartTag, 22 | + html_names::HTMLTag::kMeta, attributes); 23 | + TreeBuilder()->ConstructTree(&viewport_meta); 24 | + attributes.clear(); 25 | + 26 | // Wrap the actual contents of the text file in
.
27 |    attributes.push_back(Attribute(
28 | -      html_names::kStyleAttr, "word-wrap: break-word; white-space: pre-wrap;"));
29 | +      html_names::kStyleAttr, "word-wrap: break-word; white-space: pre-wrap; font-family: system-ui;"));
30 |    AtomicHTMLToken fake_pre(HTMLToken::kStartTag, html_names::HTMLTag::kPre,
31 |                             attributes);
32 |    TreeBuilder()->ConstructTree(&fake_pre);
33 | --
34 | 2.25.1
35 | 


--------------------------------------------------------------------------------
/build/patches/Invalidate-components-public-key.patch:
--------------------------------------------------------------------------------
 1 | From: csagan5 <32685696+csagan5@users.noreply.github.com>
 2 | Date: Fri, 10 Jun 2022 14:21:13 +0200
 3 | Subject: Invalidate components public key
 4 | 
 5 | This prevents usage of any signed component
 6 | 
 7 | License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
 8 | ---
 9 |  .../component_updater/pki_metadata_component_installer.cc      | 3 ++-
10 |  1 file changed, 2 insertions(+), 1 deletion(-)
11 | 
12 | diff --git a/chrome/browser/component_updater/pki_metadata_component_installer.cc b/chrome/browser/component_updater/pki_metadata_component_installer.cc
13 | --- a/chrome/browser/component_updater/pki_metadata_component_installer.cc
14 | +++ b/chrome/browser/component_updater/pki_metadata_component_installer.cc
15 | @@ -72,7 +72,8 @@ const char kGoogleOperatorName[] = "Google";
16 |  // The extension id is: efniojlnjndmcbiieegkicadnoecjjef
17 |  const uint8_t kPKIMetadataPublicKeySHA256[32] = {
18 |      0x45, 0xd8, 0xe9, 0xbd, 0x9d, 0x3c, 0x21, 0x88, 0x44, 0x6a, 0x82,
19 | -    0x03, 0xde, 0x42, 0x99, 0x45, 0x66, 0x25, 0xfe, 0xb3, 0xd1, 0xf8,
20 | +    // this fingerprint is changed on purpose in Bromite
21 | +    0x01, 0x02, 0x03, 0x04, 0x05, 0x66, 0x25, 0xfe, 0xb3, 0xd1, 0xf8,
22 |      0x11, 0x65, 0xb4, 0x6f, 0xd3, 0x1b, 0x21, 0x89, 0xbe, 0x9c};
23 |  
24 |  const base::FilePath::CharType kCTConfigProtoFileName[] =
25 | --
26 | 2.25.1
27 | 


--------------------------------------------------------------------------------
/build/patches/Keep-flag-to-allow-screenshots-in-Incognito-mode.patch:
--------------------------------------------------------------------------------
 1 | From: csagan5 <32685696+csagan5@users.noreply.github.com>
 2 | Date: Sat, 9 May 2020 08:33:15 +0200
 3 | Subject: Keep flag to allow screenshots in Incognito mode
 4 | 
 5 | See also:
 6 | * https://github.com/bromite/bromite/issues/551
 7 | * https://github.com/bromite/bromite/issues/1816
 8 | * https://bugs.chromium.org/p/chromium/issues/detail?id=920762
 9 | 
10 | License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
11 | ---
12 |  chrome/browser/flag-metadata.json | 6 +++---
13 |  1 file changed, 3 insertions(+), 3 deletions(-)
14 | 
15 | diff --git a/chrome/browser/flag-metadata.json b/chrome/browser/flag-metadata.json
16 | --- a/chrome/browser/flag-metadata.json
17 | +++ b/chrome/browser/flag-metadata.json
18 | @@ -4556,9 +4556,9 @@
19 |      "expiry_milestone": 120
20 |    },
21 |    {
22 | -    "name": "incognito-screenshot",
23 | -    "owners": [ "roagarwal", "sideyilmaz", "chrome-incognito@google.com" ],
24 | -    "expiry_milestone": 120
25 | +    "name": "incognito-screenshot",                                          // Bromite: guard this feature flag
26 | +    "owners": [ "roagarwal", "sideyilmaz", "chrome-incognito@google.com" ],  // -
27 | +    "expiry_milestone": -1                                                   // -
28 |    },
29 |    {
30 |      "name": "indicate-account-storage-error-in-account-cell",
31 | --
32 | 2.25.1
33 | 


--------------------------------------------------------------------------------
/build/patches/Never-fetch-popular-sites.patch:
--------------------------------------------------------------------------------
 1 | From: csagan5 <32685696+csagan5@users.noreply.github.com>
 2 | Date: Wed, 14 Feb 2018 12:56:01 +0100
 3 | Subject: Never fetch popular sites
 4 | 
 5 | License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
 6 | ---
 7 |  components/ntp_tiles/popular_sites_impl.cc | 10 +++++++---
 8 |  1 file changed, 7 insertions(+), 3 deletions(-)
 9 | 
10 | diff --git a/components/ntp_tiles/popular_sites_impl.cc b/components/ntp_tiles/popular_sites_impl.cc
11 | --- a/components/ntp_tiles/popular_sites_impl.cc
12 | +++ b/components/ntp_tiles/popular_sites_impl.cc
13 | @@ -63,7 +63,6 @@ const char kPopularSitesDefaultDirectory[] = "chrome/ntp/";
14 |  const char kPopularSitesDefaultCountryCode[] = "DEFAULT";
15 |  const char kPopularSitesDefaultVersion[] = "5";
16 |  const int kSitesExplorationStartVersion = 6;
17 | -const int kPopularSitesRedownloadIntervalHours = 24;
18 |  #if BUILDFLAG(IS_IOS)
19 |  const char kIOSDefaultPopularSitesLocaleUS[] =
20 |      "https://www.gstatic.com/chrome/ntp/ios/"
21 | @@ -329,7 +328,12 @@ bool PopularSitesImpl::MaybeStartFetch(bool force_download,
22 |    DCHECK(!callback_);
23 |    callback_ = std::move(callback);
24 |  
25 | -  const base::Time last_download_time = base::Time::FromInternalValue(
26 | +  if (force_download) {
27 | +    std::move(callback_).Run(true);
28 | +    return true;
29 | +  }
30 | +
31 | +/*  const base::Time last_download_time = base::Time::FromInternalValue(
32 |        prefs_->GetInt64(prefs::kPopularSitesLastDownloadPref));
33 |    const base::TimeDelta time_since_last_download =
34 |        base::Time::Now() - last_download_time;
35 | @@ -346,7 +350,7 @@ bool PopularSitesImpl::MaybeStartFetch(bool force_download,
36 |        (time_since_last_download > redownload_interval) || url_changed) {
37 |      FetchPopularSites();
38 |      return true;
39 | -  }
40 | +  }*/
41 |    return false;
42 |  }
43 |  
44 | --
45 | 2.25.1
46 | 


--------------------------------------------------------------------------------
/build/patches/Never-use-HTTP-probes-for-connection-detection.patch:
--------------------------------------------------------------------------------
 1 | From: csagan5 <32685696+csagan5@users.noreply.github.com>
 2 | Date: Sat, 6 Nov 2021 09:46:24 +0100
 3 | Subject: Never use HTTP probes for connection detection
 4 | 
 5 | This patch disables the use of HTTP probes on Android < M devices
 6 | Connection will be always considered valid on such devices
 7 | 
 8 | License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
 9 | ---
10 |  .../browser/net/connectivitydetector/ConnectivityDetector.java | 3 ++-
11 |  1 file changed, 2 insertions(+), 1 deletion(-)
12 | 
13 | diff --git a/chrome/android/java/src/org/chromium/chrome/browser/net/connectivitydetector/ConnectivityDetector.java b/chrome/android/java/src/org/chromium/chrome/browser/net/connectivitydetector/ConnectivityDetector.java
14 | --- a/chrome/android/java/src/org/chromium/chrome/browser/net/connectivitydetector/ConnectivityDetector.java
15 | +++ b/chrome/android/java/src/org/chromium/chrome/browser/net/connectivitydetector/ConnectivityDetector.java
16 | @@ -174,7 +174,8 @@ public class ConnectivityDetector implements NetworkChangeNotifier.ConnectionTyp
17 |  
18 |          @Override
19 |          public boolean shouldSkipHttpProbes() {
20 | -            return false;
21 | +            // always assume that connection is valid on Android < M
22 | +            return true;
23 |          }
24 |      }
25 |  
26 | --
27 | 2.25.1
28 | 


--------------------------------------------------------------------------------
/build/patches/Offer-builtin-autocomplete-for-chrome-flags.patch:
--------------------------------------------------------------------------------
 1 | From: csagan5 <32685696+csagan5@users.noreply.github.com>
 2 | Date: Sun, 28 Oct 2018 14:11:50 +0100
 3 | Subject: Offer builtin autocomplete for chrome://flags
 4 | 
 5 | License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
 6 | ---
 7 |  .../browser/autocomplete/chrome_autocomplete_provider_client.cc | 2 ++
 8 |  1 file changed, 2 insertions(+)
 9 | 
10 | diff --git a/chrome/browser/autocomplete/chrome_autocomplete_provider_client.cc b/chrome/browser/autocomplete/chrome_autocomplete_provider_client.cc
11 | --- a/chrome/browser/autocomplete/chrome_autocomplete_provider_client.cc
12 | +++ b/chrome/browser/autocomplete/chrome_autocomplete_provider_client.cc
13 | @@ -296,6 +296,8 @@ std::vector ChromeAutocompleteProviderClient::GetBuiltinURLs() {
14 |  std::vector
15 |  ChromeAutocompleteProviderClient::GetBuiltinsToProvideAsUserTypes() {
16 |    std::vector builtins_to_provide;
17 | +  builtins_to_provide.push_back(
18 | +      base::ASCIIToUTF16(chrome::kChromeUIFlagsURL));
19 |    builtins_to_provide.push_back(
20 |        base::ASCIIToUTF16(chrome::kChromeUIChromeURLsURL));
21 |    builtins_to_provide.push_back(
22 | --
23 | 2.25.1
24 | 


--------------------------------------------------------------------------------
/build/patches/Re-introduce-override_build_timestamp.patch:
--------------------------------------------------------------------------------
 1 | From: csagan5 <32685696+csagan5@users.noreply.github.com>
 2 | Date: Sun, 30 Dec 2018 09:26:12 +0100
 3 | Subject: Re-introduce override_build_timestamp
 4 | 
 5 | Revert "Remove override_build_date gn arg."
 6 | 
 7 | This reverts commit e335101eedd3ab28d16dcb4b22e5ee0b60044b89.
 8 | Use (overriden) build timestamp for chrome_version_id
 9 | 
10 | License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
11 | ---
12 |  base/BUILD.gn             | 7 ++++++-
13 |  build_overrides/build.gni | 5 +++++
14 |  2 files changed, 11 insertions(+), 1 deletion(-)
15 | 
16 | diff --git a/base/BUILD.gn b/base/BUILD.gn
17 | --- a/base/BUILD.gn
18 | +++ b/base/BUILD.gn
19 | @@ -4030,8 +4030,13 @@ action("build_date") {
20 |  
21 |    args = [
22 |      rebase_path("$target_gen_dir/generated_build_date.h", root_build_dir),
23 | -    build_timestamp,
24 |    ]
25 | +
26 | +  if (override_build_timestamp != "N/A") {
27 | +    args += [ override_build_timestamp ]
28 | +  } else {
29 | +    args += [ build_timestamp ]
30 | +  }
31 |  }
32 |  
33 |  if (enable_nocompile_tests) {
34 | diff --git a/build_overrides/build.gni b/build_overrides/build.gni
35 | --- a/build_overrides/build.gni
36 | +++ b/build_overrides/build.gni
37 | @@ -46,6 +46,11 @@ declare_args() {
38 |    # //third_party/robolectric .
39 |    limit_android_deps = false
40 |  
41 | +  # Override this value to give a specific build date.
42 | +  # See //base/build_time.cc and //build/write_build_date_header.py for more
43 | +  # details; expected format is Unix Epoch time in seconds.
44 | +  override_build_timestamp = "N/A"
45 | +
46 |    # Allows googletest to pretty-print various absl types.  Disabled for nacl due
47 |    # to lack of toolchain support.
48 |    gtest_enable_absl_printers = !is_nacl
49 | --
50 | 2.25.1
51 | 


--------------------------------------------------------------------------------
/build/patches/Remove-EV-certificates.patch:
--------------------------------------------------------------------------------
 1 | From: Jan Engelhardt 
 2 | Date: Thu, 2 Apr 2015 12:44:23 +0200
 3 | Subject: Remove EV certificates
 4 | 
 5 | The team chose to let EV certificates appear just like normal
 6 | certificates. The web of trust is considered a failure in itself, so
 7 | do not give users a false sense of extra security with EV certs.
 8 | Instead, let them appear just like regular ones.
 9 | 
10 | License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
11 | ---
12 |  net/cert/ev_root_ca_metadata.cc | 15 +++++++++++++--
13 |  net/cert/ev_root_ca_metadata.h  |  2 +-
14 |  2 files changed, 14 insertions(+), 3 deletions(-)
15 | 
16 | diff --git a/net/cert/ev_root_ca_metadata.cc b/net/cert/ev_root_ca_metadata.cc
17 | --- a/net/cert/ev_root_ca_metadata.cc
18 | +++ b/net/cert/ev_root_ca_metadata.cc
19 | @@ -36,7 +36,19 @@ struct EVMetadata {
20 |    const base::StringPiece policy_oids[kMaxOIDsPerCA];
21 |  };
22 |  
23 | -#include "net/data/ssl/chrome_root_store/chrome-ev-roots-inc.cc"
24 | +static const EVMetadata kEvRootCaMetadata[] = {
25 | +    // need some dummy data to make compiler happy, because
26 | +    // arraysize() is implemented as a convoluted template rather than
27 | +    // the traditional sizeof(x)/sizeof(*x)
28 | +    {
29 | +       {{0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
30 | +        0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff}},
31 | +        {
32 | +            "1.3.159.1.17.1",
33 | +            "",
34 | +        },
35 | +    }
36 | +};
37 |  
38 |  #endif  // defined(PLATFORM_USES_CHROMIUM_EV_METADATA)
39 |  }  // namespace
40 | @@ -115,7 +127,6 @@ bool EVRootCAMetadata::RemoveEVCA(const SHA256HashValue& fingerprint) {
41 |  //
42 |  
43 |  bool EVRootCAMetadata::IsEVPolicyOID(der::Input policy_oid) const {
44 | -  LOG(WARNING) << "Not implemented";
45 |    return false;
46 |  }
47 |  
48 | diff --git a/net/cert/ev_root_ca_metadata.h b/net/cert/ev_root_ca_metadata.h
49 | --- a/net/cert/ev_root_ca_metadata.h
50 | +++ b/net/cert/ev_root_ca_metadata.h
51 | @@ -20,7 +20,7 @@
52 |      BUILDFLAG(IS_FUCHSIA)
53 |  // When not defined, the EVRootCAMetadata singleton is a dumb placeholder
54 |  // implementation that will fail all EV lookup operations.
55 | -#define PLATFORM_USES_CHROMIUM_EV_METADATA
56 | +//#define PLATFORM_USES_CHROMIUM_EV_METADATA
57 |  #endif
58 |  
59 |  namespace base {
60 | --
61 | 2.25.1
62 | 


--------------------------------------------------------------------------------
/build/patches/Remove-window-name-on-cross-origin-navigation.patch:
--------------------------------------------------------------------------------
 1 | From: uazo 
 2 | Date: Sat, 9 Jul 2022 06:59:18 +0000
 3 | Subject: Remove window name on cross origin navigation
 4 | 
 5 | See also: https://trac.webkit.org/changeset/209076/webkit
 6 | 
 7 | Original License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
 8 | License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
 9 | ---
10 |  third_party/blink/renderer/core/loader/document_loader.cc | 3 ++-
11 |  1 file changed, 2 insertions(+), 1 deletion(-)
12 | 
13 | diff --git a/third_party/blink/renderer/core/loader/document_loader.cc b/third_party/blink/renderer/core/loader/document_loader.cc
14 | --- a/third_party/blink/renderer/core/loader/document_loader.cc
15 | +++ b/third_party/blink/renderer/core/loader/document_loader.cc
16 | @@ -2547,7 +2547,7 @@ void DocumentLoader::CommitNavigation() {
17 |      // that the name would be nulled and if the name is accessed after we will
18 |      // fire a UseCounter. If we decide to move forward with this change, we'd
19 |      // actually clean the name here.
20 | -    // frame_->tree().setName(g_null_atom);
21 | +    frame_->Tree().SetName(g_null_atom);
22 |      frame_->Tree().ExperimentalSetNulledName();
23 |    }
24 |  
25 | @@ -2558,6 +2558,7 @@ void DocumentLoader::CommitNavigation() {
26 |      // TODO(shuuran): CrossSiteCrossBrowsingContextGroupSetNulledName will just
27 |      // record the fact that the name would be nulled and if the name is accessed
28 |      // after we will fire a UseCounter.
29 | +    frame_->Tree().SetName(g_null_atom);
30 |      frame_->Tree().CrossSiteCrossBrowsingContextGroupSetNulledName();
31 |    }
32 |  
33 | --
34 | 2.25.1
35 | 


--------------------------------------------------------------------------------
/build/patches/Replace-DoH-probe-domain-with-RIPE-domain.patch:
--------------------------------------------------------------------------------
 1 | From: csagan5 <32685696+csagan5@users.noreply.github.com>
 2 | Date: Sun, 27 Oct 2019 10:00:13 +0100
 3 | Subject: Replace DoH probe domain with RIPE domain
 4 | 
 5 | Replace known good hostname
 6 | 
 7 | License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
 8 | ---
 9 |  chrome/browser/net/dns_probe_runner.cc | 2 +-
10 |  net/dns/dns_transaction.h              | 2 +-
11 |  2 files changed, 2 insertions(+), 2 deletions(-)
12 | 
13 | diff --git a/chrome/browser/net/dns_probe_runner.cc b/chrome/browser/net/dns_probe_runner.cc
14 | --- a/chrome/browser/net/dns_probe_runner.cc
15 | +++ b/chrome/browser/net/dns_probe_runner.cc
16 | @@ -18,7 +18,7 @@
17 |  
18 |  namespace chrome_browser_net {
19 |  
20 | -const char DnsProbeRunner::kKnownGoodHostname[] = "google.com";
21 | +const char DnsProbeRunner::kKnownGoodHostname[] = "www.ripe.net";
22 |  
23 |  namespace {
24 |  
25 | diff --git a/net/dns/dns_transaction.h b/net/dns/dns_transaction.h
26 | --- a/net/dns/dns_transaction.h
27 | +++ b/net/dns/dns_transaction.h
28 | @@ -29,7 +29,7 @@ class NetLogWithSource;
29 |  class ResolveContext;
30 |  
31 |  // The hostname probed by CreateDohProbeRunner().
32 | -inline constexpr base::StringPiece kDohProbeHostname = "www.gstatic.com";
33 | +inline constexpr base::StringPiece kDohProbeHostname = "www.ripe.net";
34 |  
35 |  // DnsTransaction implements a stub DNS resolver as defined in RFC 1034.
36 |  // The DnsTransaction takes care of retransmissions, name server fallback (or
37 | --
38 | 2.25.1
39 | 


--------------------------------------------------------------------------------
/build/patches/Switch-to-fstack-protector-strong.patch:
--------------------------------------------------------------------------------
 1 | From: Daniel Micay 
 2 | Date: Wed, 26 Dec 2018 10:20:24 -0500
 3 | Subject: Switch to -fstack-protector-strong
 4 | 
 5 | This compiler option is already used for ChromeOS, but not yet on other
 6 | platforms because there is push back against enabling an option resulting in
 7 | ~1-2% lower performance and ~2-3% larger binaries.
 8 | 
 9 | The size increase on Android is something they care a lot about since some
10 | devices have very little storage space. That also means ever so slightly
11 | higher memory/cache usage but not by the full 2-3%.
12 | 
13 | Original License: MIT - https://spdx.org/licenses/MIT.html
14 | License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
15 | ---
16 |  build/config/compiler/BUILD.gn | 8 +-------
17 |  1 file changed, 1 insertion(+), 7 deletions(-)
18 | 
19 | diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
20 | --- a/build/config/compiler/BUILD.gn
21 | +++ b/build/config/compiler/BUILD.gn
22 | @@ -360,18 +360,12 @@ config("compiler") {
23 |            cflags += [ "-fstack-protector" ]
24 |          }
25 |        } else if ((is_posix && !is_chromeos && !is_nacl) || is_fuchsia) {
26 | -        # TODO(phajdan.jr): Use -fstack-protector-strong when our gcc supports it.
27 | -        # See also https://crbug.com/533294
28 | -        if (current_os != "zos") {
29 | -          cflags += [ "--param=ssp-buffer-size=4" ]
30 | -        }
31 | -
32 |          # The x86 toolchain currently has problems with stack-protector.
33 |          if (is_android && current_cpu == "x86") {
34 |            cflags += [ "-fno-stack-protector" ]
35 |          } else if (current_os != "aix") {
36 |            # Not available on aix.
37 | -          cflags += [ "-fstack-protector" ]
38 | +          cflags += [ "-fstack-protector-strong" ]
39 |          }
40 |        }
41 |      }
42 | --
43 | 2.25.1
44 | 


--------------------------------------------------------------------------------
/build/patches/Use-64-bit-WebView-processes.patch:
--------------------------------------------------------------------------------
 1 | From: Daniel Micay 
 2 | Date: Thu, 26 Jan 2017 01:30:12 -0500
 3 | Subject: Use 64-bit WebView processes
 4 | 
 5 | 64-bit processes introduce 10% or so higher memory consumption.
 6 | The reason for preferring 64-bit processes is providing substantially better
 7 | exploit mitigations at the expense of slightly more memory usage.
 8 | 
 9 | In addition to the standard mitigations, it also enables usage of
10 | https://github.com/AndroidHardening/hardened_malloc (where available).
11 | 
12 | It will provide high entropy ASLR (24-bit to 32-bit depending on whether the
13 | kernel uses 3 or 4 level page tables rather than 16-bit for 32-bit processes),
14 | high entropy stack canaries (56/64-bit instead of 24/32-bit depending on
15 | whether a zero byte is used) and also features like pointer authentication and
16 | memory tagging when those are made available in the future.
17 | 
18 | The reason why upstream started preferring 32-bit processes is to save memory,
19 | particularly since saving memory makes it feasible to use finer-grained
20 | sandboxing.
21 | 
22 | Original License: MIT - https://spdx.org/licenses/MIT.html
23 | License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
24 | ---
25 |  android_webview/nonembedded/java/AndroidManifest.xml | 3 ---
26 |  1 file changed, 3 deletions(-)
27 | 
28 | diff --git a/android_webview/nonembedded/java/AndroidManifest.xml b/android_webview/nonembedded/java/AndroidManifest.xml
29 | --- a/android_webview/nonembedded/java/AndroidManifest.xml
30 | +++ b/android_webview/nonembedded/java/AndroidManifest.xml
31 | @@ -41,9 +41,6 @@ by a child template that "extends" this file.
32 |                   android:icon="@{{manifest_package|default('com.android.webview')}}:drawable/icon_webview"
33 |                   android:name="{{ application_name|default('org.chromium.android_webview.nonembedded.WebViewApkApplication') }}"
34 |                   android:multiArch="true"
35 | -                 {% if force_32_bit is defined and force_32_bit == 'true' %}
36 | -                 android:use32bitAbi="true"
37 | -                 {% endif %}
38 |                   android:extractNativeLibs="false">
39 |          {# This part is shared between stand-alone WebView and Monochrome #}
40 |          {% macro common(manifest_package, webview_lib) %}
41 | --
42 | 2.25.1
43 | 


--------------------------------------------------------------------------------
/build/patches/disable-WebView-variations-support.patch:
--------------------------------------------------------------------------------
 1 | From: Daniel Micay 
 2 | Date: Thu, 10 Dec 2020 10:09:18 -0500
 3 | Subject: disable WebView variations support
 4 | 
 5 | Original License: MIT - https://spdx.org/licenses/MIT.html
 6 | License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
 7 | ---
 8 |  .../com/android/webview/chromium/WebViewChromiumAwInit.java | 6 ------
 9 |  .../webview/chromium/WebViewChromiumFactoryProvider.java    | 4 ----
10 |  2 files changed, 10 deletions(-)
11 | 
12 | diff --git a/android_webview/glue/java/src/com/android/webview/chromium/WebViewChromiumAwInit.java b/android_webview/glue/java/src/com/android/webview/chromium/WebViewChromiumAwInit.java
13 | --- a/android_webview/glue/java/src/com/android/webview/chromium/WebViewChromiumAwInit.java
14 | +++ b/android_webview/glue/java/src/com/android/webview/chromium/WebViewChromiumAwInit.java
15 | @@ -202,12 +202,6 @@ public class WebViewChromiumAwInit {
16 |  
17 |              AwBrowserProcess.configureChildProcessLauncher();
18 |  
19 | -            // finishVariationsInitLocked() must precede native initialization so the seed is
20 | -            // available when AwFeatureListCreator::SetUpFieldTrials() runs.
21 | -            if (!FastVariationsSeedSafeModeAction.hasRun()) {
22 | -                finishVariationsInitLocked();
23 | -            }
24 | -
25 |              AwBrowserProcess.start();
26 |              AwBrowserProcess.handleMinidumpsAndSetMetricsConsent(true /* updateMetricsConsent */);
27 |  
28 | diff --git a/android_webview/glue/java/src/com/android/webview/chromium/WebViewChromiumFactoryProvider.java b/android_webview/glue/java/src/com/android/webview/chromium/WebViewChromiumFactoryProvider.java
29 | --- a/android_webview/glue/java/src/com/android/webview/chromium/WebViewChromiumFactoryProvider.java
30 | +++ b/android_webview/glue/java/src/com/android/webview/chromium/WebViewChromiumFactoryProvider.java
31 | @@ -474,10 +474,6 @@ public class WebViewChromiumFactoryProvider implements WebViewFactoryProvider {
32 |                  }
33 |              }
34 |  
35 | -            if (!FastVariationsSeedSafeModeAction.hasRun()) {
36 | -                mAwInit.startVariationsInit();
37 | -            }
38 | -
39 |              mShouldDisableThreadChecking = shouldDisableThreadChecking(ctx);
40 |  
41 |              setSingleton(this);
42 | --
43 | 2.25.1
44 | 


--------------------------------------------------------------------------------
/build/patches/disable-appending-variations-header.patch:
--------------------------------------------------------------------------------
 1 | From: Zoraver Kang 
 2 | Date: Sat, 15 Jan 2022 13:34:33 -0500
 3 | Subject: disable appending variations header
 4 | 
 5 | License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
 6 | ---
 7 |  components/variations/net/variations_http_headers.cc | 5 +----
 8 |  1 file changed, 1 insertion(+), 4 deletions(-)
 9 | 
10 | diff --git a/components/variations/net/variations_http_headers.cc b/components/variations/net/variations_http_headers.cc
11 | --- a/components/variations/net/variations_http_headers.cc
12 | +++ b/components/variations/net/variations_http_headers.cc
13 | @@ -118,10 +118,7 @@ URLValidationResult GetUrlValidationResult(const GURL& url) {
14 |  // Also, logs the result of validating |url| in histograms, one of which ends in
15 |  // |suffix|.
16 |  bool ShouldAppendVariationsHeader(const GURL& url, const std::string& suffix) {
17 | -  URLValidationResult result = GetUrlValidationResult(url);
18 | -  base::UmaHistogramEnumeration(
19 | -      "Variations.Headers.URLValidationResult." + suffix, result);
20 | -  return result == URLValidationResult::kShouldAppend;
21 | +  return false;
22 |  }
23 |  
24 |  // Returns true if the request is sent from a Google web property, i.e. from a
25 | --
26 | 2.25.1
27 | 


--------------------------------------------------------------------------------
/build/patches/disable-battery-status-updater.patch:
--------------------------------------------------------------------------------
 1 | From: Joachim Bauch 
 2 | Date: Tue, 4 Aug 2015 15:15:53 +0200
 3 | Subject: disable battery status updater
 4 | 
 5 | The W3C Battery Status API[1] has quite a laughable statement:
 6 | 
 7 | "The information disclosed has minimal impact on privacy or
 8 | fingerprinting, and therefore is exposed without permission grants".
 9 | 
10 | Along comes a paper "The leaking battery, A privacy analysis of the
11 | HTML5 Battery Status API."
12 | 
13 | Clean up after the W3C and disable the battery status updater which
14 | could be used to identity users[2].
15 | 
16 | [1] http://www.w3.org/TR/battery-status/
17 | [2] https://eprint.iacr.org/2015/616.pdf
18 | 
19 | References: https://github.com/iridium-browser/iridium-browser/issues/40
20 | 
21 | License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
22 | ---
23 |  services/device/battery/battery_status_service.cc | 2 ++
24 |  1 file changed, 2 insertions(+)
25 | 
26 | diff --git a/services/device/battery/battery_status_service.cc b/services/device/battery/battery_status_service.cc
27 | --- a/services/device/battery/battery_status_service.cc
28 | +++ b/services/device/battery/battery_status_service.cc
29 | @@ -43,6 +43,7 @@ base::CallbackListSubscription BatteryStatusService::AddCallback(
30 |    if (!battery_fetcher_)
31 |      battery_fetcher_ = BatteryStatusManager::Create(update_callback_);
32 |  
33 | +#if 0
34 |    if (callback_list_.empty()) {
35 |      bool success = battery_fetcher_->StartListeningBatteryChange();
36 |      // On failure pass the default values back.
37 | @@ -54,6 +55,7 @@ base::CallbackListSubscription BatteryStatusService::AddCallback(
38 |      // Send recent status to the new callback if already available.
39 |      callback.Run(status_);
40 |    }
41 | +#endif
42 |  
43 |    return callback_list_.Add(callback);
44 |  }
45 | --
46 | 2.25.1
47 | 


--------------------------------------------------------------------------------
/build/patches/dns-send-IPv6-connectivity-probes-to-RIPE-DNS.patch:
--------------------------------------------------------------------------------
 1 | From: Jan Engelhardt 
 2 | Date: Mon, 15 Sep 2014 10:58:42 +0200
 3 | Subject: dns: send IPv6 connectivity probes to RIPE DNS
 4 | 
 5 | Short of disabling the code (we may do that in a subsequent patch
 6 | anyway), avoid sending to Google.
 7 | 
 8 | Increase probe period from 1s to 15s
 9 | 
10 | License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
11 | ---
12 |  net/dns/host_resolver_manager.cc | 10 +++++-----
13 |  1 file changed, 5 insertions(+), 5 deletions(-)
14 | 
15 | diff --git a/net/dns/host_resolver_manager.cc b/net/dns/host_resolver_manager.cc
16 | --- a/net/dns/host_resolver_manager.cc
17 | +++ b/net/dns/host_resolver_manager.cc
18 | @@ -155,12 +155,12 @@ const unsigned kMinimumTTLSeconds = kCacheEntryTTLSeconds;
19 |  
20 |  // Time between IPv6 probes, i.e. for how long results of each IPv6 probe are
21 |  // cached.
22 | -const int kIPv6ProbePeriodMs = 1000;
23 | +const int kIPv6ProbePeriodMs = 15000;
24 |  
25 | -// Google DNS address used for IPv6 probes.
26 | -const uint8_t kIPv6ProbeAddress[] = {0x20, 0x01, 0x48, 0x60, 0x48, 0x60,
27 | -                                     0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
28 | -                                     0x00, 0x00, 0x88, 0x88};
29 | +// RIPE NCC k.root-servers.net. 2001:7fd::1 (anycasted)
30 | +const uint8_t kIPv6ProbeAddress[] =
31 | +    { 0x20, 0x01, 0x07, 0xfd, 0x00, 0x00, 0x00, 0x00,
32 | +      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01 };
33 |  
34 |  // ICANN uses this localhost address to indicate a name collision.
35 |  //
36 | --
37 | 2.25.1
38 | 


--------------------------------------------------------------------------------
/build/patches/do-not-add-suffix-to-package-name.patch:
--------------------------------------------------------------------------------
 1 | From: csagan5 <32685696+csagan5@users.noreply.github.com>
 2 | Date: Sat, 11 Jul 2020 15:00:13 +0200
 3 | Subject: do not add suffix to package name
 4 | 
 5 | License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
 6 | ---
 7 |  chrome/android/chrome_public_apk_tmpl.gni | 2 +-
 8 |  1 file changed, 1 insertion(+), 1 deletion(-)
 9 | 
10 | diff --git a/chrome/android/chrome_public_apk_tmpl.gni b/chrome/android/chrome_public_apk_tmpl.gni
11 | --- a/chrome/android/chrome_public_apk_tmpl.gni
12 | +++ b/chrome/android/chrome_public_apk_tmpl.gni
13 | @@ -30,7 +30,7 @@ declare_args() {
14 |    chrome_public_manifest_package = "org.chromium.chrome"
15 |    if (use_stable_package_name_for_trichrome) {
16 |      chrome_public_manifest_package += ".stable"
17 | -  } else if (android_channel != "default") {
18 | +  } else if (android_channel != "default" && android_channel != "stable") {
19 |      chrome_public_manifest_package += "." + android_channel
20 |    }
21 |  }
22 | --
23 | 2.25.1
24 | 


--------------------------------------------------------------------------------
/build/patches/do-not-hide-.orig-files.patch:
--------------------------------------------------------------------------------
 1 | From: csagan5 <32685696+csagan5@users.noreply.github.com>
 2 | Date: Mon, 21 Jan 2019 09:17:05 +0100
 3 | Subject: do not hide .orig files
 4 | 
 5 | License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
 6 | ---
 7 |  .gitignore | 2 +-
 8 |  1 file changed, 1 insertion(+), 1 deletion(-)
 9 | 
10 | diff --git a/.gitignore b/.gitignore
11 | --- a/.gitignore
12 | +++ b/.gitignore
13 | @@ -5,7 +5,7 @@
14 |  *.mk
15 |  *.ncb
16 |  *.opensdf
17 | -*.orig
18 | +# *.orig
19 |  *.pdb
20 |  *.props
21 |  *.pyc
22 | --
23 | 2.25.1
24 | 


--------------------------------------------------------------------------------
/build/patches/enable-ftrivial-auto-var-init-zero.patch:
--------------------------------------------------------------------------------
 1 | From: Daniel Micay 
 2 | Date: Wed, 8 Apr 2020 20:48:17 -0400
 3 | Subject: enable -ftrivial-auto-var-init=zero
 4 | 
 5 | Original License: MIT - https://spdx.org/licenses/MIT.html
 6 | License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
 7 | ---
 8 |  build/config/compiler/BUILD.gn | 4 ++++
 9 |  1 file changed, 4 insertions(+)
10 | 
11 | diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
12 | --- a/build/config/compiler/BUILD.gn
13 | +++ b/build/config/compiler/BUILD.gn
14 | @@ -381,6 +381,10 @@ config("compiler") {
15 |        cflags += [ "-fwrapv" ]
16 |      }
17 |  
18 | +    if (is_clang) {
19 | +      cflags += [ "-ftrivial-auto-var-init=zero", "-enable-trivial-auto-var-init-zero-knowing-it-will-be-removed-from-clang", "-Wno-unused-command-line-argument" ]
20 | +    }
21 | +
22 |      # Linker warnings.
23 |      if (fatal_linker_warnings && !is_apple && current_os != "aix" &&
24 |          current_os != "zos") {
25 | --
26 | 2.25.1
27 | 


--------------------------------------------------------------------------------
/build/patches/exit-on-failure-of-inclusion.patch:
--------------------------------------------------------------------------------
 1 | From: csagan5 <32685696+csagan5@users.noreply.github.com>
 2 | Date: Fri, 6 Apr 2018 10:29:05 +0200
 3 | Subject: exit on failure of inclusion
 4 | 
 5 | License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
 6 | ---
 7 |  chrome/installer/linux/debian/build.sh | 6 +++---
 8 |  1 file changed, 3 insertions(+), 3 deletions(-)
 9 | 
10 | diff --git a/chrome/installer/linux/debian/build.sh b/chrome/installer/linux/debian/build.sh
11 | --- a/chrome/installer/linux/debian/build.sh
12 | +++ b/chrome/installer/linux/debian/build.sh
13 | @@ -239,15 +239,15 @@ DEB_CHANGELOG="${TMPFILEDIR}/changelog"
14 |  DEB_FILES="${TMPFILEDIR}/files"
15 |  DEB_CONTROL="${TMPFILEDIR}/control"
16 |  
17 | -source ${OUTPUTDIR}/installer/common/installer.include
18 | +source ${OUTPUTDIR}/installer/common/installer.include || exit $?
19 |  
20 |  get_version_info
21 |  VERSIONFULL="${VERSION}-${PACKAGE_RELEASE}"
22 |  
23 |  if [ "$BRANDING" = "google_chrome" ]; then
24 | -  source "${OUTPUTDIR}/installer/common/google-chrome.info"
25 | +  source "${OUTPUTDIR}/installer/common/google-chrome.info" || exit $?
26 |  else
27 | -  source "${OUTPUTDIR}/installer/common/chromium-browser.info"
28 | +  source "${OUTPUTDIR}/installer/common/chromium-browser.info" || exit $?
29 |  fi
30 |  eval $(sed -e "s/^\([^=]\+\)=\(.*\)$/export \1='\2'/" \
31 |    "${OUTPUTDIR}/installer/theme/BRANDING")
32 | --
33 | 2.25.1
34 | 


--------------------------------------------------------------------------------
/build/patches/first_run-deactivate-autoupdate-globally.patch:
--------------------------------------------------------------------------------
 1 | From: Jan Engelhardt 
 2 | Date: Sat, 13 Sep 2014 17:12:43 +0200
 3 | Subject: first_run: deactivate autoupdate globally
 4 | 
 5 | We currently do not have any update service infrastructure in place
 6 | (i.e. on our webserver), and sending update requests to Google also
 7 | sounds meh (wrong provider, after all).
 8 | 
 9 | Also, there is no tunable in chrome://settings (or similar) yet to
10 | turn it back on.
11 | 
12 | License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
13 | ---
14 |  chrome/browser/extensions/extension_system_impl.cc | 3 +--
15 |  1 file changed, 1 insertion(+), 2 deletions(-)
16 | 
17 | diff --git a/chrome/browser/extensions/extension_system_impl.cc b/chrome/browser/extensions/extension_system_impl.cc
18 | --- a/chrome/browser/extensions/extension_system_impl.cc
19 | +++ b/chrome/browser/extensions/extension_system_impl.cc
20 | @@ -201,8 +201,7 @@ void ExtensionSystemImpl::Shared::Init(bool extensions_enabled) {
21 |  
22 |    user_script_manager_ = std::make_unique(profile_);
23 |  
24 | -  bool autoupdate_enabled = !profile_->IsGuestSession() &&
25 | -                            !profile_->IsSystemProfile();
26 | +  bool autoupdate_enabled = false;
27 |  #if BUILDFLAG(IS_CHROMEOS_ASH)
28 |    if (!extensions_enabled ||
29 |        ash::ProfileHelper::IsLockScreenAppProfile(profile_)) {
30 | --
31 | 2.25.1
32 | 


--------------------------------------------------------------------------------
/build/patches/kill-Location-fall-back-to-system.patch:
--------------------------------------------------------------------------------
 1 | From: thermatk 
 2 | Date: Fri, 22 Jun 2018 17:05:17 +0200
 3 | Subject: kill Location, fall back to system
 4 | 
 5 | License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
 6 | ---
 7 |  services/device/geolocation/BUILD.gn                   |  1 -
 8 |  .../device/geolocation/LocationProviderFactory.java    | 10 ++--------
 9 |  2 files changed, 2 insertions(+), 9 deletions(-)
10 | 
11 | diff --git a/services/device/geolocation/BUILD.gn b/services/device/geolocation/BUILD.gn
12 | --- a/services/device/geolocation/BUILD.gn
13 | +++ b/services/device/geolocation/BUILD.gn
14 | @@ -161,7 +161,6 @@ if (is_android) {
15 |        "android/java/src/org/chromium/device/geolocation/LocationProviderAdapter.java",
16 |        "android/java/src/org/chromium/device/geolocation/LocationProviderAndroid.java",
17 |        "android/java/src/org/chromium/device/geolocation/LocationProviderFactory.java",
18 | -      "android/java/src/org/chromium/device/geolocation/LocationProviderGmsCore.java",
19 |      ]
20 |  
21 |      deps = [
22 | diff --git a/services/device/geolocation/android/java/src/org/chromium/device/geolocation/LocationProviderFactory.java b/services/device/geolocation/android/java/src/org/chromium/device/geolocation/LocationProviderFactory.java
23 | --- a/services/device/geolocation/android/java/src/org/chromium/device/geolocation/LocationProviderFactory.java
24 | +++ b/services/device/geolocation/android/java/src/org/chromium/device/geolocation/LocationProviderFactory.java
25 | @@ -27,19 +27,13 @@ public class LocationProviderFactory {
26 |  
27 |      @CalledByNative
28 |      public static void useGmsCoreLocationProvider() {
29 | -        sUseGmsCoreLocationProvider = true;
30 | +        sUseGmsCoreLocationProvider = false;
31 |      }
32 |  
33 |      public static LocationProvider create() {
34 |          if (sProviderImpl != null) return sProviderImpl;
35 |  
36 | -        if (sUseGmsCoreLocationProvider
37 | -                && LocationProviderGmsCore.isGooglePlayServicesAvailable(
38 | -                           ContextUtils.getApplicationContext())) {
39 | -            sProviderImpl = new LocationProviderGmsCore(ContextUtils.getApplicationContext());
40 | -        } else {
41 | -            sProviderImpl = new LocationProviderAndroid();
42 | -        }
43 | +        sProviderImpl = new LocationProviderAndroid();
44 |          return sProviderImpl;
45 |      }
46 |  }
47 | --
48 | 2.25.1
49 | 


--------------------------------------------------------------------------------
/build/patches/mime_util-force-text-x-suse-ymp-to-be-downloaded.patch:
--------------------------------------------------------------------------------
 1 | From: Jan Engelhardt 
 2 | Date: Thu, 29 Jan 2015 10:46:40 +0100
 3 | Subject: mime_util: force text/x-suse-ymp to be downloaded
 4 | 
 5 | YMP files (YaST One Click Install) are plaintext XML, but also not
 6 | very interesting in themselves. Force them to be stored.
 7 | 
 8 | License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
 9 | ---
10 |  third_party/blink/common/mime_util/mime_util.cc | 1 +
11 |  1 file changed, 1 insertion(+)
12 | 
13 | diff --git a/third_party/blink/common/mime_util/mime_util.cc b/third_party/blink/common/mime_util/mime_util.cc
14 | --- a/third_party/blink/common/mime_util/mime_util.cc
15 | +++ b/third_party/blink/common/mime_util/mime_util.cc
16 | @@ -82,6 +82,7 @@ static const char* const kUnsupportedTextTypes[] = {
17 |      "text/x-csv",
18 |      "text/x-vcf",
19 |      "text/rtf",
20 | +    "text/x-suse-ymp",
21 |      "text/comma-separated-values",
22 |      "text/csv",
23 |      "text/tab-separated-values",
24 | --
25 | 2.25.1
26 | 


--------------------------------------------------------------------------------
/build/patches/net-cert-increase-default-key-length.patch:
--------------------------------------------------------------------------------
 1 | From: Jan Engelhardt 
 2 | Date: Mon, 15 Sep 2014 10:52:32 +0200
 3 | Subject: net/cert: increase default key length
 4 | 
 5 | Should we add something for chrome://settings, or just leave
 6 | it as hidden as it was before?
 7 | 
 8 | License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
 9 | ---
10 |  net/cert/x509_util.cc | 2 +-
11 |  1 file changed, 1 insertion(+), 1 deletion(-)
12 | 
13 | diff --git a/net/cert/x509_util.cc b/net/cert/x509_util.cc
14 | --- a/net/cert/x509_util.cc
15 | +++ b/net/cert/x509_util.cc
16 | @@ -248,7 +248,7 @@ bool GetTLSServerEndPointChannelBinding(const X509Certificate& certificate,
17 |  }
18 |  
19 |  // RSA keys created by CreateKeyAndSelfSignedCert will be of this length.
20 | -static const uint16_t kRSAKeyLength = 1024;
21 | +static const uint16_t kRSAKeyLength = 2048;
22 |  
23 |  // Certificates made by CreateKeyAndSelfSignedCert will be signed using this
24 |  // digest algorithm.
25 | --
26 | 2.25.1
27 | 


--------------------------------------------------------------------------------
/build/patches/prefs-always-prompt-for-download-directory.patch:
--------------------------------------------------------------------------------
 1 | From: Jan Engelhardt 
 2 | Date: Fri, 13 Feb 2015 01:04:21 +0100
 3 | Subject: prefs: always prompt for download directory
 4 | 
 5 | If the user opens a link, one of two things might happen. The URI
 6 | resolves to a "web page" and will be displayed, then everything is
 7 | good. Or it has a MIME type like application/* or so that causes the
 8 | browser to consider it a file download instead.
 9 | 
10 | In that case, one of two things might happen. The browser may display
11 | a dialog box asking explicitly for an action, then everything is
12 | good. Or it does not and instead readily stores the file on disk.
13 | 
14 | (Modern browsers also download the file in the background when waiting
15 | for the dialog box confirmation, but that is a separate tuning knob.)
16 | 
17 | When the file is chosen to be immediately stored on disk without user
18 | interaction, the visual feedback for this may be rather miniscule.
19 | 
20 | And then, you have to open a terminal or file manager again just to
21 | move the file to the location you wanted it to be in in the first
22 | place.
23 | 
24 | TLDR: Do not let files sneak onto the disk too easily.
25 | 
26 | License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
27 | ---
28 |  chrome/browser/download/download_prefs.cc | 2 +-
29 |  1 file changed, 1 insertion(+), 1 deletion(-)
30 | 
31 | diff --git a/chrome/browser/download/download_prefs.cc b/chrome/browser/download/download_prefs.cc
32 | --- a/chrome/browser/download/download_prefs.cc
33 | +++ b/chrome/browser/download/download_prefs.cc
34 | @@ -282,7 +282,7 @@ void DownloadPrefs::RegisterProfilePrefs(
35 |      user_prefs::PrefRegistrySyncable* registry) {
36 |    registry->RegisterBooleanPref(
37 |        prefs::kPromptForDownload,
38 | -      false,
39 | +      true,
40 |        user_prefs::PrefRegistrySyncable::SYNCABLE_PREF);
41 |    registry->RegisterStringPref(prefs::kDownloadExtensionsToOpen, std::string());
42 |    registry->RegisterListPref(prefs::kDownloadExtensionsToOpenByPolicy, {});
43 | --
44 | 2.25.1
45 | 


--------------------------------------------------------------------------------
/build/patches/profile-resetter-disable-send-settings.patch:
--------------------------------------------------------------------------------
 1 | From: Jan Engelhardt 
 2 | Date: Tue, 28 Oct 2014 18:45:19 +0100
 3 | Subject: profile-resetter: disable send-settings
 4 | 
 5 | When the user wishes to reset his preferences, Chromium would suggest
 6 | to send over the old settings to Google. I presume that this is for
 7 | Google to investigate into the setting combinations that led the user
 8 | to issue a rest.
 9 | 
10 | Of course, we cannot let that happen by default. Google is not to get
11 | any information.
12 | 
13 | License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
14 | ---
15 |  chrome/browser/profile_resetter/reset_report_uploader.cc | 2 +-
16 |  1 file changed, 1 insertion(+), 1 deletion(-)
17 | 
18 | diff --git a/chrome/browser/profile_resetter/reset_report_uploader.cc b/chrome/browser/profile_resetter/reset_report_uploader.cc
19 | --- a/chrome/browser/profile_resetter/reset_report_uploader.cc
20 | +++ b/chrome/browser/profile_resetter/reset_report_uploader.cc
21 | @@ -20,7 +20,7 @@
22 |  
23 |  namespace {
24 |  const char kResetReportUrl[] =
25 | -    "https://sb-ssl.google.com/safebrowsing/clientreport/chrome-reset";
26 | +    "about:blank"; //https://sb-ssl.google.com/safebrowsing/clientreport/chrome-reset";
27 |  
28 |  GURL GetClientReportUrl(const std::string& report_url) {
29 |    GURL url(report_url);
30 | --
31 | 2.25.1
32 | 


--------------------------------------------------------------------------------
/build/patches/sharing-hub-always-use-visible-URL.patch:
--------------------------------------------------------------------------------
 1 | From: csagan5 <32685696+csagan5@users.noreply.github.com>
 2 | Date: Sun, 14 Aug 2022 00:53:52 +0200
 3 | Subject: sharing hub: always use visible URL
 4 | 
 5 | License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
 6 | ---
 7 |  .../chrome/browser/share/ShareDelegateImpl.java        | 10 ++--------
 8 |  1 file changed, 2 insertions(+), 8 deletions(-)
 9 | 
10 | diff --git a/chrome/android/java/src/org/chromium/chrome/browser/share/ShareDelegateImpl.java b/chrome/android/java/src/org/chromium/chrome/browser/share/ShareDelegateImpl.java
11 | --- a/chrome/android/java/src/org/chromium/chrome/browser/share/ShareDelegateImpl.java
12 | +++ b/chrome/android/java/src/org/chromium/chrome/browser/share/ShareDelegateImpl.java
13 | @@ -184,14 +184,8 @@ public class ShareDelegateImpl implements ShareDelegate {
14 |  
15 |      @VisibleForTesting
16 |      static boolean shouldFetchCanonicalUrl(final Tab currentTab) {
17 | -        WebContents webContents = currentTab.getWebContents();
18 | -        if (webContents == null) return false;
19 | -        if (webContents.getMainFrame() == null) return false;
20 | -        if (currentTab.getUrl().isEmpty()) return false;
21 | -        if (currentTab.isShowingErrorPage() || SadTab.isShowing(currentTab)) {
22 | -            return false;
23 | -        }
24 | -        return true;
25 | +        // Bromite always uses the visible URL
26 | +	    return false;
27 |      }
28 |  
29 |      private static void logCanonicalUrlResult(GURL visibleUrl, GURL canonicalUrl) {
30 | --
31 | 2.25.1
32 | 


--------------------------------------------------------------------------------
/build/patches/translate-disable-fetching-of-languages-from-server.patch:
--------------------------------------------------------------------------------
 1 | From: Simon Eisenmann 
 2 | Date: Mon, 26 Oct 2015 14:18:05 +0100
 3 | Subject: translate: disable fetching of languages from server
 4 | 
 5 | License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
 6 | ---
 7 |  components/translate/core/browser/translate_language_list.cc | 2 ++
 8 |  1 file changed, 2 insertions(+)
 9 | 
10 | diff --git a/components/translate/core/browser/translate_language_list.cc b/components/translate/core/browser/translate_language_list.cc
11 | --- a/components/translate/core/browser/translate_language_list.cc
12 | +++ b/components/translate/core/browser/translate_language_list.cc
13 | @@ -229,6 +229,7 @@ GURL TranslateLanguageList::TranslateLanguageUrl() {
14 |  }
15 |  
16 |  void TranslateLanguageList::RequestLanguageList() {
17 | +#if 0
18 |    // If resource requests are not allowed, we'll get a callback when they are.
19 |    if (!resource_requests_allowed_) {
20 |      request_pending_ = true;
21 | @@ -258,6 +259,7 @@ void TranslateLanguageList::RequestLanguageList() {
22 |      if (!result)
23 |        NotifyEvent(__LINE__, "Request is omitted due to retry limit");
24 |    }
25 | +#endif
26 |  }
27 |  
28 |  void TranslateLanguageList::SetResourceRequestsAllowed(bool allowed) {
29 | --
30 | 2.25.1
31 | 


--------------------------------------------------------------------------------
/build/patches/ungoogled-chromium-Disable-Gaia.patch:
--------------------------------------------------------------------------------
 1 | From: csagan5 <32685696+csagan5@users.noreply.github.com>
 2 | Date: Mon, 12 Feb 2018 21:37:52 +0100
 3 | Subject: ungoogled-chromium: Disable Gaia
 4 | 
 5 | Disables Gaia code.
 6 | Somehow it is still being activated even without being signed-in.
 7 | 
 8 | See also: https://github.com/Eloston/ungoogled-chromium/issues/104
 9 | 
10 | License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
11 | ---
12 |  google_apis/gaia/gaia_auth_fetcher.cc | 4 +++-
13 |  1 file changed, 3 insertions(+), 1 deletion(-)
14 | 
15 | diff --git a/google_apis/gaia/gaia_auth_fetcher.cc b/google_apis/gaia/gaia_auth_fetcher.cc
16 | --- a/google_apis/gaia/gaia_auth_fetcher.cc
17 | +++ b/google_apis/gaia/gaia_auth_fetcher.cc
18 | @@ -41,7 +41,7 @@
19 |  
20 |  namespace {
21 |  
22 | -const size_t kMaxMessageSize = 1024 * 1024;  // 1MB
23 | +//const size_t kMaxMessageSize = 1024 * 1024;  // 1MB
24 |  
25 |  constexpr char kBadAuthenticationError[] = "BadAuthentication";
26 |  constexpr char kBadAuthenticationShortError[] = "badauth";
27 | @@ -272,6 +272,7 @@ void GaiaAuthFetcher::CreateAndStartGaiaFetcher(
28 |      const net::NetworkTrafficAnnotationTag& traffic_annotation) {
29 |    DCHECK(!fetch_pending_) << "Tried to fetch two things at once!";
30 |  
31 | +/*
32 |    auto resource_request = std::make_unique();
33 |    resource_request->url = gaia_gurl;
34 |    original_url_ = gaia_gurl;
35 | @@ -326,6 +327,7 @@ void GaiaAuthFetcher::CreateAndStartGaiaFetcher(
36 |        base::BindOnce(&GaiaAuthFetcher::OnURLLoadComplete,
37 |                       base::Unretained(this)),
38 |        kMaxMessageSize);
39 | +*/
40 |  }
41 |  
42 |  // static
43 | --
44 | 2.25.1
45 | 


--------------------------------------------------------------------------------
/build/patches/ungoogled-chromium-Disable-Network-Time-Tracker.patch:
--------------------------------------------------------------------------------
 1 | From: csagan5 <32685696+csagan5@users.noreply.github.com>
 2 | Date: Mon, 17 Sep 2018 21:50:15 +0200
 3 | Subject: ungoogled-chromium: Disable Network Time Tracker
 4 | 
 5 | This connects to Google to check if the system time is correct when a website certificate
 6 | date seems incorrect, according to https://bugs.chromium.org/p/chromium/issues/detail?id=725232
 7 | 
 8 | Fixes https://github.com/Eloston/ungoogled-chromium/issues/302
 9 | 
10 | License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
11 | ---
12 |  components/network_time/network_time_tracker.cc | 2 +-
13 |  1 file changed, 1 insertion(+), 1 deletion(-)
14 | 
15 | diff --git a/components/network_time/network_time_tracker.cc b/components/network_time/network_time_tracker.cc
16 | --- a/components/network_time/network_time_tracker.cc
17 | +++ b/components/network_time/network_time_tracker.cc
18 | @@ -292,7 +292,7 @@ void NetworkTimeTracker::UpdateNetworkTime(base::Time network_time,
19 |  }
20 |  
21 |  bool NetworkTimeTracker::AreTimeFetchesEnabled() const {
22 | -  return base::FeatureList::IsEnabled(kNetworkTimeServiceQuerying);
23 | +  return false;
24 |  }
25 |  
26 |  NetworkTimeTracker::FetchBehavior NetworkTimeTracker::GetFetchBehavior() const {
27 | --
28 | 2.25.1
29 | 


--------------------------------------------------------------------------------
/build/patches/ungoogled-chromium-Disable-intranet-detector.patch:
--------------------------------------------------------------------------------
 1 | From: csagan5 <32685696+csagan5@users.noreply.github.com>
 2 | Date: Mon, 12 Feb 2018 21:30:30 +0100
 3 | Subject: ungoogled-chromium: Disable intranet detector
 4 | 
 5 | Disables the intranet redirect detector. It generates extra DNS requests and the functionality using this is disabled.
 6 | 
 7 | See this page for more information: https://mikewest.org/2012/02/chrome-connects-to-three-random-domains-at-startup
 8 | 
 9 | License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
10 | ---
11 |  chrome/browser/intranet_redirect_detector.cc | 4 +---
12 |  1 file changed, 1 insertion(+), 3 deletions(-)
13 | 
14 | diff --git a/chrome/browser/intranet_redirect_detector.cc b/chrome/browser/intranet_redirect_detector.cc
15 | --- a/chrome/browser/intranet_redirect_detector.cc
16 | +++ b/chrome/browser/intranet_redirect_detector.cc
17 | @@ -117,9 +117,7 @@ void IntranetRedirectDetector::FinishSleep() {
18 |    simple_loaders_.clear();
19 |    resulting_origins_.clear();
20 |  
21 | -  const base::CommandLine* cmd_line = base::CommandLine::ForCurrentProcess();
22 | -  if (cmd_line->HasSwitch(switches::kDisableBackgroundNetworking))
23 | -    return;
24 | +  return;
25 |  
26 |    DCHECK(simple_loaders_.empty() && resulting_origins_.empty());
27 |  
28 | --
29 | 2.25.1
30 | 


--------------------------------------------------------------------------------
/build/patches/ungoogled-chromium-Disable-profile-avatar.patch:
--------------------------------------------------------------------------------
 1 | From: csagan5 <32685696+csagan5@users.noreply.github.com>
 2 | Date: Mon, 12 Feb 2018 21:29:30 +0100
 3 | Subject: ungoogled-chromium: Disable profile avatar
 4 | 
 5 | Added some Bromite-specific further improvements
 6 | 
 7 | License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
 8 | ---
 9 |  chrome/browser/BUILD.gn                             | 2 --
10 |  chrome/browser/profiles/profile_attributes_entry.cc | 6 ------
11 |  2 files changed, 8 deletions(-)
12 | 
13 | diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
14 | --- a/chrome/browser/BUILD.gn
15 | +++ b/chrome/browser/BUILD.gn
16 | @@ -1411,8 +1411,6 @@ static_library("browser") {
17 |      "profiles/profile_attributes_storage.cc",
18 |      "profiles/profile_attributes_storage.h",
19 |      "profiles/profile_attributes_storage_observer.h",
20 | -    "profiles/profile_avatar_downloader.cc",
21 | -    "profiles/profile_avatar_downloader.h",
22 |      "profiles/profile_avatar_icon_util.cc",
23 |      "profiles/profile_avatar_icon_util.h",
24 |      "profiles/profile_destroyer.cc",
25 | diff --git a/chrome/browser/profiles/profile_attributes_entry.cc b/chrome/browser/profiles/profile_attributes_entry.cc
26 | --- a/chrome/browser/profiles/profile_attributes_entry.cc
27 | +++ b/chrome/browser/profiles/profile_attributes_entry.cc
28 | @@ -329,12 +329,6 @@ std::u16string ProfileAttributesEntry::GetUserName() const {
29 |  gfx::Image ProfileAttributesEntry::GetAvatarIcon(
30 |      int size_for_placeholder_avatar,
31 |      bool use_high_res_file) const {
32 | -  if (IsUsingGAIAPicture()) {
33 | -    const gfx::Image* image = GetGAIAPicture();
34 | -    if (image)
35 | -      return *image;
36 | -  }
37 | -
38 |  #if !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_CHROMEOS_ASH)
39 |    // TODO(crbug.com/1100835): After launch, remove the treatment of placeholder
40 |    // avatars from GetHighResAvatar() and from any other places.
41 | --
42 | 2.25.1
43 | 


--------------------------------------------------------------------------------
/build/patches/webview-Hard-no-to-persistent-histograms.patch:
--------------------------------------------------------------------------------
 1 | From: "Kevin F. Haggerty" 
 2 | Date: Sun, 27 Dec 2020 09:42:54 -0700
 3 | Subject: webview: Hard no to persistent histograms
 4 | 
 5 | * It's probably some kind of bug somewhere that these are never
 6 |   deleted, but they don't really add value to us in the first
 7 |   place.
 8 | * Stop eating 4MB every single time any app that uses webview
 9 |   ever opens.
10 | * These were guarded by a feature check before
11 |   https://chromium.googlesource.com/chromium/src/+/b86102f2a243
12 | 
13 | License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
14 | ---
15 |  android_webview/browser/aw_field_trials.cc | 7 -------
16 |  1 file changed, 7 deletions(-)
17 | 
18 | diff --git a/android_webview/browser/aw_field_trials.cc b/android_webview/browser/aw_field_trials.cc
19 | --- a/android_webview/browser/aw_field_trials.cc
20 | +++ b/android_webview/browser/aw_field_trials.cc
21 | @@ -11,11 +11,4 @@
22 |  #include "components/metrics/persistent_histograms.h"
23 |  
24 |  void AwFieldTrials::OnVariationsSetupComplete() {
25 | -  // Persistent histograms must be enabled ASAP, but depends on Features.
26 | -  base::FilePath metrics_dir;
27 | -  if (base::PathService::Get(base::DIR_ANDROID_APP_DATA, &metrics_dir)) {
28 | -    InstantiatePersistentHistogramsWithFeaturesAndCleanup(metrics_dir);
29 | -  } else {
30 | -    NOTREACHED();
31 | -  }
32 |  }
33 | --
34 | 2.25.1
35 | 


--------------------------------------------------------------------------------
/build/ruleset_converter.gn_args:
--------------------------------------------------------------------------------
 1 | android_channel="stable"
 2 | blink_symbol_level=1
 3 | build_contextual_search=false
 4 | build_with_tflite_lib=false
 5 | chrome_pgo_phase=0
 6 | dcheck_always_on=false
 7 | dfmify_dev_ui=false
 8 | disable_android_lint=true
 9 | disable_autofill_assistant_dfm=true
10 | disable_fieldtrial_testing_config=true
11 | disable_tab_ui_dfm=true
12 | enable_av1_decoder=true
13 | enable_dav1d_decoder=true
14 | enable_gvr_services=false
15 | enable_hangout_services_extension=false
16 | enable_iterator_debugging=false
17 | enable_mdns=false
18 | enable_mse_mpeg2ts_stream_parser=true
19 | enable_nacl=false
20 | enable_platform_dolby_vision=true
21 | enable_platform_hevc=true
22 | enable_remoting=false
23 | enable_reporting=false
24 | enable_supervised_users=false
25 | enable_vr=false
26 | exclude_unwind_tables=false
27 | ffmpeg_branding="Chrome"
28 | icu_use_data_file=true
29 | is_cfi=true
30 | is_component_build=false
31 | is_debug=false
32 | is_official_build=true
33 | proprietary_codecs=true
34 | rtc_build_examples=false
35 | safe_browsing_mode=0
36 | symbol_level=1
37 | system_webview_package_name="com.android.webview"
38 | target_os="linux"
39 | treat_warnings_as_errors=true
40 | use_cfi_cast=true
41 | use_debug_fission=true
42 | use_errorprone_java_compiler=false
43 | use_gnome_keyring=false
44 | use_official_google_api_keys=false
45 | use_rtti=false
46 | use_sysroot=false
47 | webview_includes_weblayer=false
48 | 


--------------------------------------------------------------------------------
/csagan5.asc:
--------------------------------------------------------------------------------
 1 | -----BEGIN PGP PUBLIC KEY BLOCK-----
 2 | Version: GnuPG v2
 3 | 
 4 | mQENBFphnJwBCAC1qSMaPR5Nq9sEHa9ZePwoGLFafjOBcApz7IYW7dIsQYXVUHlo
 5 | lbBwwfFUjnnIf/wzZ42ck/QGRKJ18qA9VybWyT8as0Sz26Tmxah31vI7kzlBZCYY
 6 | /ZER5N3onQFVVVoynYxmep5HdK7enAXOtLBOogbJ/x2Q9ITPuJ+Pv3b4R5E2ui/i
 7 | hFAruUh+oifPBzh3fjBTTr0uvDqbsnsczQptFghKxYyJiPTblCD51Ou11a3uNt1y
 8 | PuG1bR5jImgt33T6zjdFac6kQ2Zalxa/URU/FQPiYJ1X2J1jCgdEgRKlK70ha+oN
 9 | mnVWhFzjecuCw180HCZh1OQho+LPWbtMFyvtABEBAAG0M2NzYWdhbjUgPDMyNjg1
10 | Njk2K2NzYWdhbjVAdXNlcnMubm9yZXBseS5naXRodWIuY29tPokBIgQTAQgAFgUC
11 | WmGcnAkQZBkKUdhdwMUCGwsCGQEAADpDB/4zlnDg1gToKqtz994jLzUM7PJOPTWa
12 | c8xGCj7l8BpGcCOK0fk7fOQ+bDYT0OSHZ1OCR7Gbm6ENu03wNLQ7W9Tr0uf/yDIP
13 | mItcFk6nYmMKPnK6bd7QWLMsT9mK6mYb02zt6Ql8D7EsWGxifQVQG85ETObhoSqw
14 | EH6zqZvflxJLmN+vh/Orm1ipzEvw7cjvpSloDwypjY6x9MGEE9utFcGySx726gKu
15 | Wmz417QZc/TpylCd1p72G9pCqv1Si+y+P9tSEdjWSM6EqEwMr5W+IJ1O6BZQ7A9p
16 | 0l2FZqYC2WkRDJZqWiYoYltP6z1SEbbVI5rQaaVAesS1Ae8OOR9EmlK8
17 | =6Hsd
18 | -----END PGP PUBLIC KEY BLOCK-----
19 | 


--------------------------------------------------------------------------------
/tools/.gitignore:
--------------------------------------------------------------------------------
 1 | ################################################################################
 2 | # This .gitignore file was automatically created by Microsoft(R) Visual Studio.
 3 | ################################################################################
 4 | 
 5 | /.vs
 6 | images/github-runner/.env
 7 | images/privoxy/privoxy.conf.save
 8 | images/remote-index/bromite.idx
 9 | /images/terraform-buildgrid/.terraform
10 | /images/terraform-buildgrid/.vs
11 | /images/terraform-buildgrid/.terraform.lock.hcl
12 | /images/terraform-buildgrid/terraform.auto.tfvars
13 | /images/terraform-buildgrid/ssh-key-2021-06-01.key.pub
14 | /images/terraform-buildgrid/ssh-key-2021-06-01.key
15 | /images/terraform-buildgrid/private_key.pem
16 | 


--------------------------------------------------------------------------------
/tools/create-from-patch.sh:
--------------------------------------------------------------------------------
 1 | #!/bin/bash
 2 | 
 3 | PATCH=$1
 4 | 
 5 | PLEASEWAIT=0
 6 | if [[ $PATCH =~ ^+.* ]]; then
 7 |         PLEASEWAIT=1
 8 |         PATCH=${PATCH:1}
 9 | fi
10 | 
11 | if [ -z "$2" ]
12 | then
13 |         PATCH_NEW_PATH=~/cromite/build/patches-new
14 | else
15 |         PATCH_NEW_PATH=$2
16 | fi
17 | 
18 | echo "  Creating new patch"
19 | git add .
20 | 
21 | HEAD=$(sed -n '1,/---/ p' $PATCH | sed '/^---/d')
22 | CONTENT=$(git -C ~/chromium/src/ diff --cached --binary)
23 | 
24 | PATCH_FILE=$PATCH_NEW_PATH/$(basename $PATCH)
25 | test -f $PATCH_FILE && rm $PATCH_FILE
26 | echo "$HEAD" >$PATCH_FILE
27 | 
28 | NEWLINE=$(tail -n 1 "$PATCH_FILE")
29 | #echo $NEWLINE
30 | if [[ "$NEWLINE" == Subject:* ]]; then
31 |         echo "" >>$PATCH_FILE
32 | else
33 |         NEWLINE=$(tail -n 2 "$PATCH_FILE" | head -n 1)
34 |         if [[ "$NEWLINE" == Subject:* ]]; then
35 |                 echo "" >>$PATCH_FILE
36 |         fi
37 | fi
38 | 
39 | echo "FILE:$(basename $PATCH)" >>$PATCH_FILE
40 | echo "---" >>$PATCH_FILE
41 | echo "$CONTENT" >>$PATCH_FILE
42 | 
43 | #echo press return
44 | #read  -n 1
45 | 
46 | git reset --hard
47 | git clean -f -d
48 | 
49 | echo "  Applying new patch"
50 | OK=1
51 | git am $PATCH_FILE || OK=0
52 | 
53 | if [[ OK -eq 0 ]]; then
54 | 	if [ -n "$SILENT" ]; then
55 | 	   exit 1
56 | 	fi
57 |         echo "---> Failed to apply. Press return"
58 |         read  -n 1
59 | fi
60 | 


--------------------------------------------------------------------------------
/tools/export-all-patch.sh:
--------------------------------------------------------------------------------
 1 | #!/bin/bash
 2 | 
 3 | VERSION=$(cat ~/cromite/build/RELEASE)
 4 | CURRENT_RELEASE=$(git -C ~/chromium/src/ rev-parse --verify refs/tags/$VERSION)
 5 | 
 6 | ALLPATCHS_E=$(git -C ~/chromium/src/ rev-list HEAD...$CURRENT_RELEASE)
 7 | 
 8 | mkdir ~/cromite/build/patches-new
 9 | 
10 | NO_NAME=1
11 | 
12 | for patch in $ALLPATCHS_E; do
13 | 
14 | 	PATCH_FILE=$(git -C ~/chromium/src/ show -s $patch | grep FILE: | sed 's/FILE://g' | sed 's/^[ \t]*//;s/[ \t]*$//')
15 | 	if [[ "$PATCH_FILE" == *"Automated-domain-substitution"* ]]; then
16 | 		continue
17 | 	fi
18 | 
19 | 	if [ -z "$PATCH_FILE" ]
20 | 	then
21 | 		PATCH_FILE=$(git -C ~/chromium/src/ show -s $patch | tail -n 1)
22 | 		if [[ "$PATCH_FILE" != *".patch" ]]; then
23 | 			PATCH_FILE=00$(git -C ~/chromium/src/ show -s $patch | head -n 5 | tail -n 1 | xargs | tr " " - | tr [:punct:] -).patch
24 | 			echo New Patch: ${PATCH_FILE}
25 | 		fi
26 | 	fi
27 | 
28 | 	bash ~/cromite/tools/export-single-patch.sh $patch $PATCH_FILE
29 | 
30 | done
31 | 
32 | PATCH_LIST=~/cromite/build/bromite_patches_list.txt
33 | mkdir ~/cromite/build/patches-new/changed
34 | mkdir ~/cromite/build/patches-new/contrib
35 | for current_file in $(cat $PATCH_LIST); do
36 | 	if [[ "$current_file" == *".patch" ]]; then
37 | 		if [[ $current_file =~ ^changed/.* ]]; then
38 | 			mv ~/cromite/build/patches-new/$(basename $current_file) ~/cromite/build/patches-new/changed
39 | 		elif [[ $current_file =~ ^contrib/.* ]]; then
40 | 			mv ~/cromite/build/patches-new/$(basename $current_file) ~/cromite/build/patches-new/contrib || true
41 | 		fi
42 | 	fi
43 | done
44 | 


--------------------------------------------------------------------------------
/tools/export-patch-list.sh:
--------------------------------------------------------------------------------
 1 | #!/bin/bash
 2 | 
 3 | VERSION=$(cat ~/cromite/build/RELEASE)
 4 | CURRENT_RELEASE=$(git -C ~/chromium/src/ rev-parse --verify refs/tags/$VERSION)
 5 | 
 6 | ALLPATCHS_E=$(git -C ~/chromium/src/ rev-list HEAD...$CURRENT_RELEASE)
 7 | 
 8 | mkdir ~/cromite/build/patches-new
 9 | rm ~/cromite/build/patches-new/patch-list
10 | 
11 | NO_NAME=1
12 | 
13 | for patch in $ALLPATCHS_E; do
14 | 
15 | 	PATCH_FILE=$(git -C ~/chromium/src/ show -s $patch | grep FILE: | sed 's/FILE://g' | sed 's/^[ \t]*//;s/[ \t]*$//')
16 | 	if [[ "$PATCH_FILE" == *"Automated-domain-substitution"* ]]; then
17 | 		continue
18 | 	fi
19 | 	PATCH_MESSAGE=$(git -C ~/chromium/src/ show -s $patch)
20 | 	if [[ $PATCH_MESSAGE == *NOEXPORT:* ]] ;
21 | 	then
22 | 		continue
23 | 	fi
24 | 	if [[ -z "$PATCH_FILE" ]]; then
25 | 		PATCH_FILE=00$(git -C ~/chromium/src/ show -s $patch | head -n 5 | tail -n 1 | xargs | tr " " - | tr [:punct:] -).patch
26 | 	fi
27 | 
28 | 	echo $PATCH_FILE >>~/cromite/build/patches-new/patch-list
29 | 
30 | done
31 | 
32 | tac ~/cromite/build/patches-new/patch-list >~/cromite/build/patches-new/zz-patch-list.txt
33 | rm ~/cromite/build/patches-new/patch-list
34 | 


--------------------------------------------------------------------------------
/tools/export-single-patch.sh:
--------------------------------------------------------------------------------
 1 | #!/bin/bash
 2 | 
 3 | patch=$1
 4 | output=$2
 5 | 
 6 | PATCH_FILE=$(git -C ~/chromium/src/ show -s $patch | grep FILE: | sed 's/FILE://g' | sed 's/^[ \t]*//;s/[ \t]*$//')
 7 | if [ -z "$output" ]
 8 | then
 9 | 	PATCH_FILE=$(git -C ~/chromium/src/ show -s $patch | tail -n 1 | xargs)
10 | 	echo Exporting $patch ~/cromite/build/patches-new/$PATCH_FILE
11 | else
12 | 	PATCH_FILE=$output
13 | 	echo Exporting new $patch ~/cromite/build/patches-new/$PATCH_FILE
14 | fi
15 | 
16 | PATCH_MESSAGE=$(git -C ~/chromium/src/ show -s $patch)
17 | if [[ $PATCH_MESSAGE == *NOEXPORT:* ]] ;
18 | then
19 |     echo Request NO export
20 | 	exit 0
21 | fi
22 | 
23 | git -C ~/chromium/src/ format-patch -1 --keep-subject --stdout --full-index --zero-commit --no-signature $patch >~/cromite/build/patches-new/$PATCH_FILE
24 | echo "   exported"
25 | 
26 | CHANGE_REF=""
27 | while read line; do
28 | 	for i in {1..5}
29 | 	do
30 | 		if [[ "$line" == index* ]]; then
31 | 			read next_line
32 | 			if [[ "$next_line" != "GIT binary patch" ]]; then
33 | 				CHANGE_REF=${CHANGE_REF}"/^${line}/d;"
34 | 				break
35 | 			else
36 | 				line=$next_line
37 | 				continue
38 | 			fi
39 | 		else
40 | 			break
41 | 		fi
42 | 	done
43 | done <~/cromite/build/patches-new/$PATCH_FILE
44 | 
45 | if [ "$CHANGE_REF" ]
46 | then
47 | 	sed -i "$CHANGE_REF" ~/cromite/build/patches-new/$PATCH_FILE
48 | fi
49 | sed -i '/^From 0000000000000000000000000000000000000000/d' ~/cromite/build/patches-new/$PATCH_FILE
50 | sed -i '/^FILE:/d' ~/cromite/build/patches-new/$PATCH_FILE
51 | sed -i '/^ mode change/d' ~/cromite/build/patches-new/$PATCH_FILE
52 | sed -i '/^old mode /d' ~/cromite/build/patches-new/$PATCH_FILE
53 | sed -i '/^new mode /d' ~/cromite/build/patches-new/$PATCH_FILE
54 | 
55 | echo "--" >> ~/cromite/build/patches-new/$PATCH_FILE
56 | echo "2.25.1" >> ~/cromite/build/patches-new/$PATCH_FILE
57 | #echo "" >> ~/cromite/build/patches-new/$PATCH_FILE
58 | 
59 | echo "   done."
60 | echo ""
61 | 


--------------------------------------------------------------------------------
/tools/goma_auth.py:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env python
2 | def main():
3 |   return 0
4 | 


--------------------------------------------------------------------------------
/tools/images/bromite-build/Dockerfile:
--------------------------------------------------------------------------------
 1 | ARG BROMITE_SHA
 2 | ARG VERSION
 3 | 
 4 | FROM uazo/cromite:$VERSION-$BROMITE_SHA
 5 | 
 6 | ARG HTTP_PROXY
 7 | ENV HTTP_PROXY=$HTTP_PROXY
 8 | ENV HTTPS_PROXY=$HTTP_PROXY
 9 | ENV https_proxy=$HTTP_PROXY
10 | 
11 | USER lg
12 | WORKDIR /home/lg/working_dir
13 | 
14 | COPY pre-start.sh .
15 | COPY start-build.sh .
16 | COPY goma_auth.py .
17 | COPY casupload .
18 | COPY build_args.gni .
19 | 
20 | COPY generic_android31.textpb .
21 | 
22 | ENV CIPD_CACHE_DIR=/home/lg/working_dir/.cipd_cache
23 | ENV VPYTHON_VIRTUALENV_ROOT=/home/lg/vpython_root
24 | 
25 | RUN sudo chmod +x ./start-build.sh \
26 |     && \
27 |     sudo chmod +x ./pre-start.sh \
28 |     && \
29 |     sudo chmod 775 ./goma_auth.py \
30 |     && \
31 |     ./pre-start.sh
32 | 
33 | 


--------------------------------------------------------------------------------
/tools/images/bromite-build/action.yaml:
--------------------------------------------------------------------------------
 1 | name: 'Prepare Bromite Builder Image'
 2 | description: 'Check and build Bromite builder image by sha'
 3 | 
 4 | inputs:
 5 |   sha:
 6 |     description: 'Bromite sha ref'
 7 |     required: true
 8 | 
 9 | runs:
10 |   using: "composite"
11 |   steps:
12 |     - name: Checking image for "${{ inputs.sha }}"
13 |       shell: bash
14 |       run: |
15 |         BROMITE_SHA="${{ inputs.sha }}"
16 |         
17 |         IS_PRESENT=$(docker inspect --type=image uazo/bromite-build:$BROMITE_SHA > /dev/null ; echo $?)
18 |         if [ $IS_PRESENT -ne "0" ]; then
19 |           IS_PRESENT=$(docker manifest inspect uazo/bromite-build:$BROMITE_SHA > /dev/null ; echo $?)
20 |           if [ $IS_PRESENT -ne "0" ]; then
21 |             echo "Image not found"
22 |           
23 |             mkdir bromite-source
24 |             pushd bromite-source/
25 |             git clone https://github.com/uazo/bromite-buildtools
26 |           
27 |             cd bromite-buildtools/images/bromite-build/
28 |             DOCKER_BUILDKIT=1 docker build -t uazo/bromite-build:$BROMITE_SHA --progress plain \
29 |               --build-arg BROMITE_SHA=$BROMITE_SHA \
30 |               .
31 |           
32 |             popd
33 |           fi
34 |         fi
35 | 


--------------------------------------------------------------------------------
/tools/images/bromite-build/build_args.gni:
--------------------------------------------------------------------------------
 1 | 
 2 | declare_args() {
 3 |   _is_debug_build = ""
 4 | }
 5 | 
 6 | not_needed(["_target_build", "_is_debug_build"])
 7 | 
 8 | if (getenv("TARGET_CPU") != "") {
 9 |   target_cpu = getenv("TARGET_CPU")
10 | }
11 | 
12 | if (target_os == "android") {
13 |   target_os = "android" # fix traffic annotation auditor
14 |   #enable_kythe_annotations = true
15 |   chrome_public_manifest_package = "org.cromite.cromite"
16 | 
17 |   if (getenv("USE_KEYSTORE") != "") {
18 |     android_keystore_path = "/home/lg/working_dir/cromite.keystore"
19 |     android_keystore_name = "cromite"
20 |     android_keystore_password = getenv("KEYSTORE_PASSWORD")
21 |   }
22 | 
23 |   cromite_pref_hash_seed_bin = getenv("CROMITE_PREF_HASH_SEED_BIN")
24 | 
25 |   _is_debug_build = getenv("TARGET_ISDEBUG")
26 |   if(_is_debug_build == "true") {
27 |     # print("Debug build on")
28 |     is_debug = true
29 |     is_official_build = false
30 |     dcheck_always_on = true
31 |     symbol_level = 1
32 |     strip_debug_info = false
33 |     generate_linker_map = false
34 | 
35 |     # since is_cfi require use_thin_lto
36 |     # but not work in debug mode
37 |     is_cfi = false # disable it
38 |     use_cfi_cast = false # disable it
39 |   } else {
40 |     generate_linker_map = true
41 |     use_relative_vtables_abi = false
42 |   }
43 | }
44 | 
45 | if (target_os == "win") {
46 |   target_os = "win" # fix traffic annotation auditor
47 |   target_cpu = "x64"
48 |   symbol_level = 0
49 |   use_large_pdbs = true
50 | 
51 |   enable_pdf = true
52 |   pdf_is_complete_lib = true
53 |   enable_plugins = true
54 |   enable_ppapi = false
55 | 
56 |   chrome_pgo_phase = 2 # enable pgo
57 | 
58 |   is_cfi = false # disable it
59 |   use_cfi_cast = false # disable it
60 | }
61 | 


--------------------------------------------------------------------------------
/tools/images/bromite-build/casupload:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/emtee40/cromite/8a2cda29ee7355d26f7c1344dbedc2e6bd34ab4b/tools/images/bromite-build/casupload


--------------------------------------------------------------------------------
/tools/images/bromite-build/generic_android31.textpb:
--------------------------------------------------------------------------------
 1 | # Copyright 2021 The Chromium Authors. All rights reserved.
 2 | # Use of this source code is governed by a BSD-style license that can be
 3 | # found in the LICENSE file.
 4 | 
 5 | # Configuration for a generic x86_64 android-12 AVD (userdebug build).
 6 | 
 7 | emulator_package {
 8 |   package_name: "chromium/third_party/android_sdk/public/emulator"
 9 |   version: "gMHhUuoQRKfxr-MBn3fNNXZtkAVXtOwMwT7kfx8jkIgC"  # 30.7.5
10 |   dest_path: ".emulator_sdk"
11 | }
12 | 
13 | system_image_package {
14 |   package_name: "chromium/third_party/android_sdk/public/system-images/android-31/google_apis/x86_64"
15 |   version: "R6Jh5_P21Euu-kdb11zcNjdJKN4vV1mdQTb8t4gph4IC"  # 6
16 |   dest_path: ".emulator_sdk"
17 | }
18 | system_image_name: "system-images;android-31;google_apis;x86_64"
19 | 
20 | avd_package {
21 |   package_name: "chromium/third_party/android_sdk/public/avds/android-31/google_apis/x86_64"
22 |   version: "Ur_zl6_BRKRkf_9X3SMZ3eH2auoOyJ2kLslpTZZwi3gC"  # created in bb_id 8841388797862621664
23 |   dest_path: ".android"
24 | }
25 | avd_name: "android_31_google_apis_x86_64"
26 | 


--------------------------------------------------------------------------------
/tools/images/bromite-build/goma_auth.py:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env python
2 | def main():
3 |   return 0
4 | 


--------------------------------------------------------------------------------
/tools/images/bromite-source/Dockerfile:
--------------------------------------------------------------------------------
 1 | ARG VERSION
 2 | 
 3 | FROM uazo/chromium:$VERSION
 4 | 
 5 | ARG BROMITE_SHA
 6 | ENV BROMITE_SHA=$BROMITE_SHA
 7 | 
 8 | ARG HTTP_PROXY
 9 | ENV HTTP_PROXY=$HTTP_PROXY
10 | ENV HTTPS_PROXY=$HTTP_PROXY
11 | ENV https_proxy=$HTTP_PROXY
12 | 
13 | #USER lg
14 | WORKDIR /home/lg/working_dir
15 | 
16 | RUN sudo chown lg /etc/apt/apt.conf.d/proxy.conf
17 | RUN sudo echo "Acquire::http::Proxy \"$HTTP_PROXY\";" >/etc/apt/apt.conf.d/proxy.conf
18 | RUN sudo apt-get update
19 | 
20 | COPY apply-bromite-patches.sh .
21 | 
22 | RUN sudo chmod +x ./apply-bromite-patches.sh && \
23 |     mkdir bromite && \
24 |     cd bromite && \
25 |     git init && \
26 |     git remote add origin https://github.com/uazo/cromite && \
27 |     git fetch origin $BROMITE_SHA && \
28 |     git reset --hard FETCH_HEAD && \
29 |     cd ..
30 | 
31 | RUN ./apply-bromite-patches.sh
32 | 
33 | 


--------------------------------------------------------------------------------
/tools/images/bromite-source/action.yaml:
--------------------------------------------------------------------------------
 1 | name: 'Prepare Bromite Source Image'
 2 | description: 'Check and build Bromite sources image by version'
 3 | 
 4 | inputs:
 5 |   version:
 6 |     description: 'Chromium Version (example 91.0.4472.146)'
 7 |     required: true
 8 | 
 9 |   sha:
10 |     description: 'Bromite sha ref'
11 |     required: true
12 | 
13 | runs:
14 |   using: "composite"
15 |   steps:
16 |     - name: Checking image for "${{ inputs.sha }}"
17 |       shell: bash
18 |       run: |
19 |         BROMITE_SHA="${{ inputs.sha }}"
20 |         VERSION="${{ inputs.version }}"
21 |         
22 |         IS_PRESENT=$(docker inspect --type=image uazo/bromite:$BROMITE_SHA > /dev/null ; echo $?)
23 |         if [ $IS_PRESENT -ne "0" ]; then
24 |           IS_PRESENT=$(docker manifest inspect uazo/bromite:$BROMITE_SHA > /dev/null ; echo $?)
25 |             if [ $IS_PRESENT -ne "0" ]; then
26 |             echo "Image not found"
27 |           
28 |             mkdir bromite-source
29 |             pushd bromite-source/
30 | 
31 |             git clone https://github.com/uazo/bromite-buildtools
32 |           
33 |             cd bromite-buildtools/images/bromite-source/
34 |             DOCKER_BUILDKIT=1 docker build -t uazo/bromite:$BROMITE_SHA --progress plain \
35 |               --build-arg BROMITE_SHA=$BROMITE_SHA \
36 |               --build-arg VERSION=$VERSION \
37 |               .
38 |           
39 |             popd
40 |           fi
41 |         fi
42 | 


--------------------------------------------------------------------------------
/tools/images/bromite-source/apply-bromite-patches.sh:
--------------------------------------------------------------------------------
 1 | #!/bin/bash
 2 | 
 3 | RED='\033[0;31m'
 4 | NC='\033[0m' # No Color
 5 | 
 6 | sudo apt install sed
 7 | 
 8 | cd chromium/src
 9 | 
10 | echo -e ${RED} ------- remove v8 subrepo ${NC}
11 | rm -rf v8/.git
12 | git add -f v8 >/dev/null
13 | git commit -m ":NOEXPORT: v8 repo" >/dev/null
14 | 
15 | echo -e ${RED} ------- patches ${NC}
16 | cat ../../bromite/build/bromite_patches_list.txt
17 | echo
18 | 
19 | echo -e ${RED} ------- apply patches ${NC}
20 | for file in $(cat ../../bromite/build/bromite_patches_list.txt) ; do
21 | 
22 |    if [[ "$file" == *".patch" ]]; then
23 | 	#if [[ "$file" == *"Automated-domain-substitution"* ]]; then
24 | 	#	echo -e ${RED} " -> Excluding $file" ${NC}
25 | 	#	continue
26 | 	#fi
27 | 	
28 | 	echo -e ${RED} " -> Apply $file" ${NC}
29 | 
30 | 	REPL="0,/^---/s//FILE:"$(basename $file)"\n---/"
31 | 	cat ../../bromite/build/patches/$file | sed $REPL | git am
32 | 
33 | 	if [ $? -ne 0 ]
34 | 	then
35 |             echo -e "Error on ../../bromite/build/patches/${file}"
36 |             exit 1
37 | 	fi
38 | 
39 | 	echo " "
40 |     fi
41 |     
42 | done
43 | 


--------------------------------------------------------------------------------
/tools/images/build-deps/Dockerfile:
--------------------------------------------------------------------------------
 1 | FROM ubuntu:20.04
 2 | ARG VERSION
 3 | 
 4 | ARG HTTP_PROXY
 5 | 
 6 | ENV HTTP_PROXY=$HTTP_PROXY
 7 | ENV http_proxy=$HTTP_PROXY
 8 | 
 9 | ENV HTTPS_PROXY=$HTTP_PROXY
10 | ENV https_proxy=$HTTP_PROXY
11 | 
12 | RUN touch /etc/apt/apt.conf.d/proxy.conf && \
13 |     echo "Acquire::http::Proxy \"$HTTP_PROXY\";" >/etc/apt/apt.conf.d/proxy.conf
14 | 
15 | RUN dpkg --add-architecture i386
16 | 
17 | RUN apt-get update &&\
18 |     DEBIAN_FRONTEND=noninteractive \
19 |     apt-get -f -y install sudo lsb-release cl-base64 bash wget apt-utils python sed tzdata build-essential lib32gcc-9-dev g++-multilib dos2unix wiggle
20 | 
21 | ENV user lg
22 | 
23 | RUN useradd -m -d /home/${user} ${user} && \
24 |     chown -R ${user} /home/${user} && \
25 |     adduser ${user} sudo && \
26 |     chmod 4755 /usr/bin/sudo && \
27 |     echo '%sudo ALL=(ALL) NOPASSWD:ALL' >> /etc/sudoers
28 | USER ${user}
29 | 
30 | #RUN mkdir -p /home/${user} && \
31 | #    echo '%sudo ALL=(ALL) NOPASSWD:ALL' >> /etc/sudoers
32 | 
33 | WORKDIR /home/${user}
34 | 
35 | RUN wget https://raw.githubusercontent.com/chromium/chromium/$VERSION/build/install-build-deps.sh && \
36 |     wget https://raw.githubusercontent.com/chromium/chromium/$VERSION/build/install-build-deps.py && \
37 |     sed -i 's/snapcraft/wget/' install-build-deps.sh && \
38 |     chmod +x ./install-build-deps.sh && \
39 |     chmod +x ./install-build-deps.py && \
40 |     sudo ./install-build-deps.sh --no-prompt --lib32 --no-chromeos-fonts && \
41 |     sudo ./install-build-deps.sh --android --no-prompt --no-chromeos-fonts && \
42 |     sudo mkdir -p /github/home/.vscode-server && \
43 |     sudo chown lg /github/home/.vscode-server
44 | 
45 | 


--------------------------------------------------------------------------------
/tools/images/build-deps/action.yaml:
--------------------------------------------------------------------------------
 1 | name: 'Prepare Build Deps Image'
 2 | description: 'Check and build build deps image by version'
 3 | 
 4 | inputs:
 5 |   version:
 6 |     description: 'Chromium Version (example 91.0.4472.146)'
 7 |     required: true
 8 | 
 9 | runs:
10 |   using: "composite"
11 |   steps:
12 |     - name: Checking image for "${{ inputs.version }}"
13 |       shell: bash
14 |       run: |
15 |         VERSION="${{ inputs.version }}"
16 |         IS_PRESENT=$(docker inspect --type=image uazo/build-deps:$VERSION > /dev/null ; echo $?)
17 |         if [ $IS_PRESENT -ne "0" ]; then
18 |           IS_PRESENT=$(docker manifest inspect uazo/build-deps:$VERSION > /dev/null ; echo $?)
19 |           if [ $IS_PRESENT -ne "0" ]; then
20 |             echo "Image not found"
21 |           
22 |             mkdir build-repo
23 |             pushd build-repo/
24 |           
25 |             git clone https://github.com/uazo/bromite-buildtools
26 |             cd bromite-buildtools/images/build-deps/
27 |             DOCKER_BUILDKIT=1 docker build -t uazo/build-deps:$VERSION --progress plain .
28 | 
29 |             popd
30 |             rm -rf build-repo
31 |           fi
32 |         fi
33 | 


--------------------------------------------------------------------------------
/tools/images/buildstack.env.example:
--------------------------------------------------------------------------------
1 | REMOTEEXEC_ADDR=:50051
2 | 


--------------------------------------------------------------------------------
/tools/images/chr-source/Dockerfile:
--------------------------------------------------------------------------------
 1 | ARG VERSION
 2 | 
 3 | FROM uazo/build-deps:$VERSION
 4 | ARG VERSION
 5 | ENV VERSION=$VERSION
 6 | 
 7 | #USER lg
 8 | WORKDIR /home/lg/working_dir
 9 | 
10 | COPY prepare-build.sh .
11 | COPY depot_tools.diff .
12 | COPY remove_ninja_uploader.diff .
13 | 
14 | RUN sudo chmod +x ./prepare-build.sh \
15 |     && \
16 |     ./prepare-build.sh
17 | 
18 | 


--------------------------------------------------------------------------------
/tools/images/chr-source/action.yaml:
--------------------------------------------------------------------------------
 1 | name: 'Prepare Chromium Sources Image'
 2 | description: 'Check and build chromium source image by version'
 3 | 
 4 | inputs:
 5 |   version:
 6 |     description: 'Chromium Version (example 91.0.4472.146)'
 7 |     required: true
 8 | 
 9 | runs:
10 |   using: "composite"
11 |   steps:
12 |     - name: Checking image for "${{ inputs.version }}"
13 |       shell: bash
14 |       run: |
15 |         VERSION="${{ inputs.version }}"
16 |         IS_PRESENT=$(docker inspect --type=image uazo/chromium:$VERSION > /dev/null ; echo $?)
17 |         if [ $IS_PRESENT -ne "0" ]; then
18 |           IS_PRESENT=$(docker manifest inspect uazo/chromium:$VERSION > /dev/null ; echo $?)
19 |           if [ $IS_PRESENT -ne "0" ]; then
20 |             echo "Image not found"
21 |           
22 |             mkdir chr-source
23 |             pushd chr-sourced/
24 |           
25 |             git clone https://github.com/uazo/bromite-buildtools
26 |             cd bromite-buildtools/images/chr-source/
27 |             DOCKER_BUILDKIT=1 docker build -t uazo/chromium:$VERSION --progress plain --build-arg VERSION=$VERSION .
28 | 
29 |             popd
30 |             rm -rf chr-source
31 |           fi
32 |         fi
33 | 


--------------------------------------------------------------------------------
/tools/images/chr-source/remove_ninja_uploader.diff:
--------------------------------------------------------------------------------
 1 | diff --git a/ninjalog_uploader_wrapper.py b/ninjalog_uploader_wrapper.py
 2 | index fbfca3f2..3cd9e9b1 100755
 3 | --- a/ninjalog_uploader_wrapper.py
 4 | +++ b/ninjalog_uploader_wrapper.py
 5 | @@ -75,6 +75,7 @@ You can find a more detailed explanation in
 6 | 
 7 | 
 8 |  def main():
 9 | +  return 0
10 |    config = LoadConfig()
11 | 
12 |    if len(sys.argv) == 2 and sys.argv[1] == 'opt-in':
13 | 


--------------------------------------------------------------------------------
/tools/images/github-runner/.env.example:
--------------------------------------------------------------------------------
1 | RUNNER_NAME=pd-gh-runner
2 | GITHUB_PERSONAL_TOKEN=
3 | GITHUB_OWNER=
4 | GITHUB_REPOSITORY=
5 | RUNNER_LABELS=