diff --git a/www/chromium/Makefile b/www/chromium/Makefile index 95be3ac2e170..49c767781360 100644 --- a/www/chromium/Makefile +++ b/www/chromium/Makefile @@ -1,389 +1,387 @@ PORTNAME= chromium -PORTVERSION= 138.0.7204.96 -PORTREVISION= 2 +PORTVERSION= 139.0.7258.66 PULSEMV= 16 PULSEV= ${PULSEMV}.1 CATEGORIES= www wayland MASTER_SITES= https://commondatastorage.googleapis.com/chromium-browser-official/ \ https://nerd.hu/distfiles/:external \ https://freedesktop.org/software/pulseaudio/releases/:pulseaudio DISTFILES= ${DISTNAME}${EXTRACT_SUFX} \ pulseaudio-${PULSEV}.tar.gz:pulseaudio MAINTAINER= chromium@FreeBSD.org COMMENT= Google web browser based on WebKit WWW= https://www.chromium.org/Home LICENSE= BSD3CLAUSE LGPL21 MPL11 LICENSE_COMB= multi ONLY_FOR_ARCHS= aarch64 amd64 BUILD_DEPENDS= bash:shells/bash \ ${PYTHON_PKGNAMEPREFIX}Jinja2>0:devel/py-Jinja2@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}ply>0:devel/py-ply@${PY_FLAVOR} \ bindgen:devel/rust-bindgen-cli \ gperf:devel/gperf \ flock:sysutils/flock \ node:www/node \ rustc:lang/rust \ xcb-proto>0:x11/xcb-proto \ ${LOCALBASE}/include/linux/videodev2.h:multimedia/v4l_compat \ ${LOCALBASE}/share/usbids/usb.ids:misc/usbids \ ${PYTHON_PKGNAMEPREFIX}html5lib>0:www/py-html5lib@${PY_FLAVOR} \ ${LOCALBASE}/include/va/va.h:multimedia/libva \ ${LOCALBASE}/libdata/pkgconfig/dri.pc:graphics/mesa-dri \ ${LOCALBASE}/libdata/pkgconfig/Qt5Core.pc:devel/qt5-core \ ${LOCALBASE}/libdata/pkgconfig/Qt5Widgets.pc:x11-toolkits/qt5-widgets LIB_DEPENDS= libatk-bridge-2.0.so:accessibility/at-spi2-core \ libatspi.so:accessibility/at-spi2-core \ libspeechd.so:accessibility/speech-dispatcher \ libFLAC.so:audio/flac \ libopus.so:audio/opus \ libspeex.so:audio/speex \ libdbus-1.so:devel/dbus \ libdbus-glib-1.so:devel/dbus-glib \ libepoll-shim.so:devel/libepoll-shim \ libevent.so:devel/libevent \ libffi.so:devel/libffi \ libicuuc.so:devel/icu \ libjsoncpp.so:devel/jsoncpp \ libpci.so:devel/libpci \ libnspr4.so:devel/nspr \ libre2.so:devel/re2 \ libcairo.so:graphics/cairo \ libdrm.so:graphics/libdrm \ libexif.so:graphics/libexif \ libpng.so:graphics/png \ libwebp.so:graphics/webp \ libdav1d.so:multimedia/dav1d \ libopenh264.so:multimedia/openh264 \ libfreetype.so:print/freetype2 \ libharfbuzz.so:print/harfbuzz \ libharfbuzz-icu.so:print/harfbuzz-icu \ libgcrypt.so:security/libgcrypt \ libsecret-1.so:security/libsecret \ libnss3.so:security/nss \ libexpat.so:textproc/expat2 \ libfontconfig.so:x11-fonts/fontconfig \ libwayland-client.so:graphics/wayland \ libxkbcommon.so:x11/libxkbcommon \ libxshmfence.so:x11/libxshmfence RUN_DEPENDS= xdg-open:devel/xdg-utils \ noto-basic>0:x11-fonts/noto-basic USES= bison compiler:c++17-lang cpe desktop-file-utils gl gmake gnome \ iconv:wchar_t jpeg localbase:ldflags ninja perl5 pkgconfig \ python:build qt:5 shebangfix tar:xz xorg CPE_VENDOR= google CPE_PRODUCT= chrome USE_GL= gbm gl USE_GNOME= atk dconf gdkpixbuf glib20 gtk30 libxml2 libxslt USE_LDCONFIG= ${DATADIR} USE_PERL5= build USE_XORG= x11 xcb xcomposite xcursor xext xdamage xfixes xi \ xorgproto xrandr xrender xscrnsaver xtst USE_QT= buildtools:build SHEBANG_FILES= chrome/tools/build/linux/chrome-wrapper #buildtools/linux64/clang-format MAKE_ARGS= -C out/${BUILDTYPE} ALL_TARGET= chrome BINARY_ALIAS= python3=${PYTHON_CMD} # TODO bz@ : install libwidevinecdm.so (see third_party/widevine/cdm/BUILD.gn) # # Run "./out/${BUILDTYPE}/gn args out/${BUILDTYPE} --list" for all variables. # Some parts don't have use_system_* flag, and can be turned on/off by using # replace_gn_files.py script, some parts just turned on/off for target host # OS "target_os == is_bsd", like libusb, libpci. GN_ARGS+= clang_use_chrome_plugins=false \ enable_backup_ref_ptr_support=false \ enable_hangout_services_extension=true \ - enable_nacl=false \ enable_remoting=false \ enable_widevine=true \ fatal_linker_warnings=false \ icu_use_data_file=false \ is_clang=true \ moc_qt5_path="${QT_TOOLDIR}/moc" \ optimize_webui=true \ toolkit_views=true \ treat_warnings_as_errors=false \ use_allocator_shim=false \ use_aura=true \ use_custom_libcxx=true \ use_custom_libunwind=true \ use_lld=true \ use_partition_alloc=true \ use_partition_alloc_as_malloc=false \ use_qt5=true \ use_sysroot=false \ use_system_freetype=false \ use_system_harfbuzz=true \ use_system_libffi=true \ use_system_libjpeg=true \ use_udev=false \ extra_cxxflags="${CXXFLAGS} -I${LOCALBASE}/include/libepoll-shim ${PINCLUDES}" \ extra_ldflags="${LDFLAGS}" \ ffmpeg_branding="${FFMPEG_BRAND}" # TODO: investigate building with these options: # use_system_minigbm GN_BOOTSTRAP_FLAGS= --no-clean --no-rebuild --skip-generate-buildfiles # FreeBSD Chromium Api Key # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys . # Note: these are for FreeBSD use ONLY. For your own distribution, # please get your own set of keys. GN_ARGS+= google_api_key="AIzaSyBsp9n41JLW8jCokwn7vhoaMejDFRd1mp8" SUB_FILES= chromium-browser.desktop chrome SUB_LIST+= COMMENT="${COMMENT}" OPTIONS_DEFINE= CODECS CUPS DEBUG DRIVER KERBEROS LTO PIPEWIRE TEST WIDEVINE OPTIONS_DEFAULT= CODECS CUPS DRIVER KERBEROS PIPEWIRE SNDIO ALSA PULSEAUDIO OPTIONS_EXCLUDE_aarch64=LTO OPTIONS_GROUP= AUDIO OPTIONS_GROUP_AUDIO= ALSA PULSEAUDIO SNDIO OPTIONS_RADIO= KERBEROS OPTIONS_RADIO_KERBEROS= HEIMDAL HEIMDAL_BASE MIT OPTIONS_SUB= yes CODECS_DESC= Compile and enable patented codecs like H.264 DRIVER_DESC= Install chromedriver HEIMDAL_BASE_DESC= Heimdal Kerberos (base) HEIMDAL_DESC= Heimdal Kerberos (security/heimdal) MIT_DESC= MIT Kerberos (security/krb5) ALSA_LIB_DEPENDS= libasound.so:audio/alsa-lib ALSA_RUN_DEPENDS= ${LOCALBASE}/lib/alsa-lib/libasound_module_pcm_oss.so:audio/alsa-plugins \ alsa-lib>=1.1.1_1:audio/alsa-lib ALSA_VARS= GN_ARGS+=use_alsa=true ALSA_VARS_OFF= GN_ARGS+=use_alsa=false CODECS_VARS= GN_ARGS+=proprietary_codecs=true \ FFMPEG_BRAND="Chrome" CODECS_VARS_OFF= GN_ARGS+=proprietary_codecs=false \ FFMPEG_BRAND="Chromium" CUPS_LIB_DEPENDS= libcups.so:print/cups CUPS_VARS= GN_ARGS+=use_cups=true CUPS_VARS_OFF= GN_ARGS+=use_cups=false DEBUG_BUILD_DEPENDS= esbuild:devel/esbuild DEBUG_VARS= BUILDTYPE=Debug \ GN_ARGS+=is_debug=true \ GN_ARGS+=is_component_build=false \ GN_ARGS+=symbol_level=1 \ GN_BOOTSTRAP_FLAGS+=--debug \ WANTSPACE="60 GB" \ WANTMEM="32 GB" DEBUG_VARS_OFF= BUILDTYPE=Release \ GN_ARGS+=blink_symbol_level=0 \ GN_ARGS+=is_debug=false \ GN_ARGS+=is_official_build=true \ GN_ARGS+=symbol_level=0 \ WANTSPACE="35 GB" \ WANTMEM="8 GB" DRIVER_MAKE_ARGS= chromedriver HEIMDAL_LIB_DEPENDS= libkrb.so.26:security/heimdal KERBEROS_VARS= GN_ARGS+=use_kerberos=true KERBEROS_VARS_OFF= GN_ARGS+=use_kerberos=false LTO_VARS= GN_ARGS+=use_thin_lto=true \ GN_ARGS+=thin_lto_enable_optimizations=true \ WANTSPACE="40 GB" \ WANTMEM="16 GB" LTO_VARS_OFF= GN_ARGS+=use_thin_lto=false MIT_LIB_DEPENDS= libkrb.so.3:security/krb5 PIPEWIRE_DESC= Screen capture via PipeWire PIPEWIRE_LIB_DEPENDS= libpipewire-0.3.so:multimedia/pipewire PIPEWIRE_VARS= GN_ARGS+=rtc_use_pipewire=true \ GN_ARGS+=rtc_link_pipewire=true PIPEWIRE_VARS_OFF= GN_ARGS+=rtc_use_pipewire=false \ GN_ARGS+=rtc_link_pipewire=false PULSEAUDIO_VARS= GN_ARGS+=use_pulseaudio=true \ PINCLUDES="-I${WRKDIR}/pulseaudio-${PULSEV}/src -DPA_MAJOR=${PULSEMV}" PULSEAUDIO_VARS_OFF= GN_ARGS+=use_pulseaudio=false SNDIO_LIB_DEPENDS= libsndio.so:audio/sndio SNDIO_VARS= GN_ARGS+=use_sndio=true SNDIO_VARS_OFF= GN_ARGS+=use_sndio=false WIDEVINE_DESC= Depend on foreign-cdm to enable playback of DRM content WIDEVINE_RUN_DEPENDS= foreign-cdm>0:www/foreign-cdm .include "Makefile.tests" TEST_DISTFILES= ${PORTNAME}-${DISTVERSION}-testdata${EXTRACT_SUFX} TEST_ALL_TARGET= ${TEST_TARGETS} .include .include # for COMPILER_VERSION .if ${PORT_OPTIONS:MHEIMDAL_BASE} && !exists(/usr/lib/libkrb5.so) IGNORE= you have selected HEIMDAL_BASE but do not have Heimdal installed in base .endif LLVM_DEFAULT= 19 BUILD_DEPENDS+= clang${LLVM_DEFAULT}:devel/llvm${LLVM_DEFAULT} BINARY_ALIAS+= cpp=${LOCALBASE}/bin/clang-cpp${LLVM_DEFAULT} \ cc=${LOCALBASE}/bin/clang${LLVM_DEFAULT} \ c++=${LOCALBASE}/bin/clang++${LLVM_DEFAULT} \ ar=${LOCALBASE}/bin/llvm-ar${LLVM_DEFAULT} \ nm=${LOCALBASE}/bin/llvm-nm${LLVM_DEFAULT} \ ld=${LOCALBASE}/bin/ld.lld${LLVM_DEFAULT} # - swiftshader/lib/{libEGL.so,libGLESv2.so} is x86 only # - map ffmpeg target to ${ARCH} .if ${ARCH} == aarch64 PLIST_SUB+= NOT_AARCH64="@comment " FFMPEG_TARGET= arm64 .elif ${ARCH} == amd64 BUILD_DEPENDS+= nasm:devel/nasm PLIST_SUB+= NOT_AARCH64="" FFMPEG_TARGET= x64 .elif ${ARCH} == i386 BUILD_DEPENDS+= nasm:devel/nasm PLIST_SUB+= NOT_AARCH64="" FFMPEG_TARGET= ia32 .endif FFMPEG_BDIR= ${WRKSRC}/third_party/ffmpeg/build.${FFMPEG_TARGET}.freebsd/${FFMPEG_BRAND} FFMPEG_CDIR= ${WRKSRC}/third_party/ffmpeg/chromium/config/${FFMPEG_BRAND}/freebsd/${FFMPEG_TARGET} # Allow relocations against read-only segments (override lld default) LDFLAGS_i386= -Wl,-znotext # TODO: -isystem, would be just as ugly as this approach, but more reliably # build would fail without C_INCLUDE_PATH/CPLUS_INCLUDE_PATH env var set. MAKE_ENV+= C_INCLUDE_PATH=${LOCALBASE}/include \ CPLUS_INCLUDE_PATH=${LOCALBASE}/include # rust RUSTC_VERSION!= rustc -V 2>/dev/null || true MAKE_ENV+= RUSTC_BOOTSTRAP=1 GN_ARGS+= enable_rust=true \ rust_sysroot_absolute="${LOCALBASE}" \ rustc_version="${RUSTC_VERSION}" pre-everything:: @${ECHO_MSG} @${ECHO_MSG} "To build ${PORTNAME}, you should have at least:" @${ECHO_MSG} "- ${WANTMEM} of memory" @${ECHO_MSG} "- ${WANTSPACE} of free disk space" @${ECHO_MSG} "- 1.5 million free inodes" @${ECHO_MSG} pre-configure: # We used to remove bundled libraries to be sure that chromium uses # system libraries and not shipped ones. # cd ${WRKSRC} && ${PYTHON_CMD} \ #./build/linux/unbundle/remove_bundled_libraries.py [list of preserved] cd ${WRKSRC} && ${SETENV} ${CONFIGURE_ENV} ${PYTHON_CMD} \ ./build/linux/unbundle/replace_gn_files.py --system-libraries \ dav1d flac fontconfig harfbuzz-ng libdrm libpng \ libusb libwebp libxml libxslt openh264 opus || ${FALSE} # Chromium uses an unreleased version of FFmpeg, so configure it cd ${WRKSRC}/media/ffmpeg && \ ${PYTHON_CMD} scripts/build_ffmpeg.py freebsd ${FFMPEG_TARGET} \ --config-only --branding=${FFMPEG_BRAND} cd ${FFMPEG_BDIR} && ${GMAKE} ffversion.h ${MKDIR} ${FFMPEG_CDIR} .for _e in config.h config.asm config_components.h libavcodec libavformat libavutil -${CP} -pR ${FFMPEG_BDIR}/${_e} ${FFMPEG_CDIR} .endfor touch ${WRKDIR}/pulseaudio-${PULSEV}/src/pulse/version.h @${REINPLACE_CMD} -e 's|$${LOCALBASE}|${LOCALBASE}|;s|$${MODCLANG_VERSION}|${LLVM_DEFAULT}|' \ ${WRKSRC}/build/rust/rust_bindgen.gni \ ${WRKSRC}/build/rust/rust_bindgen_generator.gni do-configure: # GN generator bootstrapping and generating ninja files cd ${WRKSRC} && ${SETENV} ${CONFIGURE_ENV} CC=${CC} CXX=${CXX} LD=${CXX} \ READELF=${READELF} AR=${AR} NM=${NM} ${PYTHON_CMD} \ ./tools/gn/bootstrap/bootstrap.py ${GN_BOOTSTRAP_FLAGS} cd ${WRKSRC} && ${SETENV} ${CONFIGURE_ENV} ./out/${BUILDTYPE}/gn \ gen --args='${GN_ARGS}' out/${BUILDTYPE} # Setup nodejs dependency @${MKDIR} ${WRKSRC}/third_party/node/freebsd/node-freebsd/bin ${LN} -sf ${LOCALBASE}/bin/node ${WRKSRC}/third_party/node/freebsd/node-freebsd/bin/node # Setup buildtools/freebsd @${MKDIR} ${WRKSRC}/buildtools/freebsd ${LN} -sf ${WRKSRC}/buildtools/linux64/clang-format ${WRKSRC}/buildtools/freebsd ${LN} -sf ${WRKSRC}/out/${BUILDTYPE}/gn ${WRKSRC}/buildtools/freebsd ${LN} -sf /usr/bin/strip ${WRKSRC}/buildtools/freebsd/strip do-install: @${MKDIR} ${STAGEDIR}${DATADIR} ${INSTALL_MAN} ${WRKSRC}/chrome/app/resources/manpage.1.in \ ${STAGEDIR}${PREFIX}/share/man/man1/chrome.1 @${SED} -i "" -e 's,\@\@PACKAGE\@\@,chromium,g;s,\@\@MENUNAME\@\@,Chromium Web Browser,g' \ ${STAGEDIR}${PREFIX}/share/man/man1/chrome.1 ${CP} ${WRKSRC}/chrome/app/theme/chromium/product_logo_22_mono.png ${WRKSRC}/chrome/app/theme/chromium/product_logo_22.png .for s in 22 24 48 64 128 256 @${MKDIR} ${STAGEDIR}${PREFIX}/share/icons/hicolor/${s}x${s}/apps ${INSTALL_DATA} ${WRKSRC}/chrome/app/theme/chromium/product_logo_${s}.png \ ${STAGEDIR}${PREFIX}/share/icons/hicolor/${s}x${s}/apps/chrome.png .endfor ${INSTALL_DATA} ${WRKSRC}/out/${BUILDTYPE}/*.png ${STAGEDIR}${DATADIR} ${INSTALL_DATA} ${WRKSRC}/out/${BUILDTYPE}/*.pak ${STAGEDIR}${DATADIR} .for d in protoc mksnapshot ${INSTALL_PROGRAM} ${WRKSRC}/out/${BUILDTYPE}/${d} ${STAGEDIR}${DATADIR} .endfor .for d in snapshot_blob.bin v8_context_snapshot.bin ${INSTALL_DATA} ${WRKSRC}/out/${BUILDTYPE}/${d} ${STAGEDIR}${DATADIR} .endfor ${INSTALL_PROGRAM} ${WRKSRC}/out/${BUILDTYPE}/chrome \ ${STAGEDIR}${DATADIR} cd ${WRKSRC}/out/${BUILDTYPE} && \ ${COPYTREE_SHARE} "locales resources" ${STAGEDIR}${DATADIR} @${MKDIR} ${STAGEDIR}${DESKTOPDIR} ${INSTALL_DATA} ${WRKDIR}/chromium-browser.desktop \ ${STAGEDIR}${DESKTOPDIR} ${INSTALL_SCRIPT} ${WRKDIR}/chrome ${STAGEDIR}${PREFIX}/bin ${INSTALL_SCRIPT} ${WRKSRC}/chrome/tools/build/linux/chrome-wrapper \ ${STAGEDIR}${DATADIR} # ANGLE, EGL, Vk .for f in libEGL.so libGLESv2.so libVkICD_mock_icd.so ${INSTALL_LIB} ${WRKSRC}/out/${BUILDTYPE}/${f} ${STAGEDIR}${DATADIR} .endfor ${INSTALL_LIB} ${WRKSRC}/out/${BUILDTYPE}/libvulkan.so.1 \ ${STAGEDIR}${DATADIR}/libvulkan.so .if ${BUILDTYPE} == Debug ${INSTALL_LIB} ${WRKSRC}/out/${BUILDTYPE}/libVkLayer_khronos_validation.so ${STAGEDIR}${DATADIR} .endif # SwiftShader .if ${ARCH} != aarch64 ${INSTALL_LIB} ${WRKSRC}/out/${BUILDTYPE}/libvk_swiftshader.so ${STAGEDIR}${DATADIR} ${INSTALL_DATA} ${WRKSRC}/out/${BUILDTYPE}/vk_swiftshader_icd.json ${STAGEDIR}${DATADIR} .endif post-install-DEBUG-on: ${INSTALL_LIB} ${WRKSRC}/out/${BUILDTYPE}/*.so \ ${STAGEDIR}${DATADIR} ${INSTALL_PROGRAM} ${WRKSRC}/out/${BUILDTYPE}/character_data_generator \ ${STAGEDIR}${DATADIR} post-install-DRIVER-on: ${INSTALL_PROGRAM} ${WRKSRC}/out/${BUILDTYPE}/chromedriver.unstripped \ ${STAGEDIR}${PREFIX}/bin/chromedriver do-test-TEST-on: .for t in ${TEST_TARGETS} cd ${WRKSRC}/out/${BUILDTYPE} && ${SETENV} LC_ALL=en_US.UTF-8 \ ./${t} --gtest_filter=-${EXCLUDE_${t}:ts:} || ${TRUE} .endfor .include diff --git a/www/chromium/distinfo b/www/chromium/distinfo index 19705b90adc1..c3c23f2c2140 100644 --- a/www/chromium/distinfo +++ b/www/chromium/distinfo @@ -1,7 +1,7 @@ -TIMESTAMP = 1751436716 -SHA256 (chromium-138.0.7204.96.tar.xz) = bfc53392a6ba34241dab16aa954b045ceb6a0bc1273c36dedc2eaa068ec6d5ac -SIZE (chromium-138.0.7204.96.tar.xz) = 7271479656 +TIMESTAMP = 1754550395 +SHA256 (chromium-139.0.7258.66.tar.xz) = 5abd8ab0189d686789f7c7c61c98800a9962b79c12305bdec0d16fc76929fcb7 +SIZE (chromium-139.0.7258.66.tar.xz) = 7263962432 SHA256 (pulseaudio-16.1.tar.gz) = 027266c62f2a84422ac45fa721a649508f0f1628fb1fd9242315ac54ce2d7c92 SIZE (pulseaudio-16.1.tar.gz) = 2763111 -SHA256 (chromium-138.0.7204.96-testdata.tar.xz) = e9dbadb897f674ecc534657ff1f22bc29323f460e9485fde5513ad274e670abe -SIZE (chromium-138.0.7204.96-testdata.tar.xz) = 922983984 +SHA256 (chromium-139.0.7258.66-testdata.tar.xz) = a2e6df36e8610387ec08d69f1113e5f4da93eb68e88963ef4256546e0915f1c4 +SIZE (chromium-139.0.7258.66-testdata.tar.xz) = 925126424 diff --git a/www/chromium/files/patch-BUILD.gn b/www/chromium/files/patch-BUILD.gn index 54c68fcb2332..cd7d9fcdd2cb 100644 --- a/www/chromium/files/patch-BUILD.gn +++ b/www/chromium/files/patch-BUILD.gn @@ -1,98 +1,98 @@ ---- BUILD.gn.orig 2025-07-02 06:08:04 UTC +--- BUILD.gn.orig 2025-08-07 06:57:29 UTC +++ BUILD.gn @@ -71,7 +71,7 @@ declare_args() { root_extra_deps = [] } -if (is_official_build) { +if (is_official_build && !is_bsd) { # An official (maximally optimized!) component (optimized for build times) # build doesn't make sense and usually doesn't work. assert(!is_component_build) @@ -103,7 +103,6 @@ group("gn_all") { "//codelabs", "//components:components_unittests", "//components/gwp_asan:gwp_asan_unittests", - "//infra/orchestrator:orchestrator_all", "//net:net_unittests", "//sandbox:sandbox_unittests", "//services:services_unittests", @@ -448,7 +447,7 @@ group("gn_all") { } } - if (is_linux || is_chromeos || is_android) { + if ((is_linux && !is_bsd) || is_chromeos || is_android) { deps += [ "//third_party/breakpad:breakpad_unittests", "//third_party/breakpad:core-2-minidump", @@ -635,6 +634,15 @@ group("gn_all") { } } + if (is_bsd) { + deps -= [ + "//third_party/breakpad:dump_syms($host_system_allocator_toolchain)", + "//third_party/breakpad:microdump_stackwalk($host_system_allocator_toolchain)", + "//third_party/breakpad:minidump_dump($host_system_allocator_toolchain)", + "//third_party/breakpad:minidump_stackwalk($host_system_allocator_toolchain)", + ] + } + if (is_mac) { deps += [ "//third_party/breakpad:dump_syms($host_system_allocator_toolchain)", @@ -683,7 +691,7 @@ group("gn_all") { } } - if (!is_fuchsia) { + if (!is_fuchsia && !is_bsd) { # The official builders use this binary from the default toolchain's # output directory after building in order to upload the symbols of that # binary. They build the binary like `ninja symupload` which requires the @@ -718,7 +726,7 @@ group("gn_all") { ] } - if (is_mac || is_win || is_android || is_linux || is_chromeos) { + if (!is_bsd && (is_mac || is_win || is_android || is_linux || is_chromeos)) { deps += [ "//third_party/crashpad/crashpad:crashpad_tests", "//third_party/crashpad/crashpad/handler:crashpad_handler", -@@ -1127,7 +1135,7 @@ if (use_blink && !is_cronet_build) { +@@ -1126,7 +1134,7 @@ if (use_blink && !is_cronet_build) { "//third_party/blink/public:all_blink", ] - if (!is_chromeos && !is_ios && !is_fuchsia && !is_android && !is_castos) { + if (!is_chromeos && !is_ios && !is_fuchsia && !is_android && !is_castos && !is_bsd) { deps += [ ":chrome_wpt_tests", ":headless_shell_wpt", -@@ -1274,7 +1282,7 @@ if (use_blink && !is_cronet_build) { +@@ -1279,7 +1287,7 @@ if (use_blink && !is_cronet_build) { data_deps += [ "//content/web_test:web_test_common_mojom_js_data_deps" ] } - if (!is_win && !is_android) { + if (!is_win && !is_android && !is_bsd) { # Using the default toolchain for this tool, as it's run during tests not # during the build. This places a symlink in the root_build_dir for scrips # to use. -@@ -1288,7 +1296,7 @@ if (use_blink && !is_cronet_build) { +@@ -1293,7 +1301,7 @@ if (use_blink && !is_cronet_build) { data_deps += [ "//third_party/breakpad:dump_syms" ] } - if (is_linux || is_chromeos) { + if ((is_linux && !is_bsd) || is_chromeos) { # Using the default toolchain for this tool, as it's run during tests not # during the build. This places a symlink in the root_build_dir for scrips # to use. -@@ -1742,7 +1750,7 @@ group("chromium_builder_perf") { +@@ -1744,7 +1752,7 @@ group("chromium_builder_perf") { data_deps += [ "//chrome/test:performance_browser_tests" ] } - if (!is_win) { + if (!is_win && !is_bsd) { data_deps += [ "//third_party/breakpad:minidump_stackwalk($host_system_allocator_toolchain)" ] } } diff --git a/www/chromium/files/patch-ash_display_mirror__window__controller.cc b/www/chromium/files/patch-ash_display_mirror__window__controller.cc deleted file mode 100644 index c5461906602e..000000000000 --- a/www/chromium/files/patch-ash_display_mirror__window__controller.cc +++ /dev/null @@ -1,14 +0,0 @@ ---- ash/display/mirror_window_controller.cc.orig 2024-11-14 07:57:23 UTC -+++ ash/display/mirror_window_controller.cc -@@ -295,7 +295,11 @@ void MirrorWindowController::UpdateWindow( - if (!base::Contains(display_info_list, iter->first, - &display::ManagedDisplayInfo::id)) { - CloseAndDeleteHost(iter->second, true); -+#if defined(__llvm__) -+ mirroring_host_info_map_.erase(iter++); -+#else - iter = mirroring_host_info_map_.erase(iter); -+#endif - } else { - ++iter; - } diff --git a/www/chromium/files/patch-base_BUILD.gn b/www/chromium/files/patch-base_BUILD.gn index 8b460ebbffe1..e92a9d180ccb 100644 --- a/www/chromium/files/patch-base_BUILD.gn +++ b/www/chromium/files/patch-base_BUILD.gn @@ -1,150 +1,150 @@ ---- base/BUILD.gn.orig 2025-07-02 06:08:04 UTC +--- base/BUILD.gn.orig 2025-08-07 06:57:29 UTC +++ base/BUILD.gn -@@ -1107,11 +1107,26 @@ component("base") { +@@ -1102,11 +1102,26 @@ component("base") { # Needed for if using newer C++ library than sysroot, except if # building inside the cros_sdk environment - use host_toolchain as a # more robust check for this. - if (!use_sysroot && (is_android || is_chromeos || (is_linux && !is_castos)) && + if (!use_sysroot && (is_android || is_chromeos || (is_linux && !is_castos && !is_bsd)) && host_toolchain != "//build/toolchain/cros:host") { libs += [ "atomic" ] } + # *BSD needs libkvm + if (is_bsd) { + libs += [ + "kvm", + "epoll-shim", + ] + } + + if (is_freebsd) { + libs += [ + "execinfo", + "util", + ] + } + if (use_allocator_shim) { if (is_apple) { sources += [ "allocator/early_zone_registration_apple.h" ] -@@ -1131,7 +1146,7 @@ component("base") { +@@ -1126,7 +1141,7 @@ component("base") { # Allow more direct string conversions on platforms with native utf8 # strings - if (is_apple || is_chromeos || is_castos || is_cast_android || is_fuchsia) { + if (is_apple || is_chromeos || is_castos || is_cast_android || is_fuchsia || is_bsd) { defines += [ "SYSTEM_NATIVE_UTF8" ] } -@@ -2172,6 +2187,22 @@ component("base") { +@@ -2137,6 +2152,22 @@ component("base") { ] } + if (is_openbsd) { + sources += [ + "process/process_handle_openbsd.cc", + "process/process_iterator_openbsd.cc", + "process/process_metrics_openbsd.cc", + "system/sys_info_openbsd.cc", + ] + } else if (is_freebsd) { + sources += [ + "process/process_handle_freebsd.cc", + "process/process_iterator_freebsd.cc", + "process/process_metrics_freebsd.cc", + "system/sys_info_freebsd.cc", + ] + } + # iOS if (is_ios) { sources += [ -@@ -2340,6 +2371,33 @@ component("base") { +@@ -2305,6 +2336,33 @@ component("base") { } } + if (is_bsd) { + sources -= [ + "files/file_path_watcher_inotify.cc", + "files/scoped_file_linux.cc", + "process/set_process_title_linux.cc", + "process/set_process_title_linux.h", + "system/sys_info_linux.cc", + "process/process_iterator_linux.cc", + "process/process_linux.cc", + "process/process_metrics_linux.cc", + "process/process_handle_linux.cc", + "profiler/stack_copier_signal.cc", + "profiler/stack_copier_signal.h", + "profiler/thread_delegate_posix.cc", + "profiler/thread_delegate_posix.h", + "threading/platform_thread_linux.cc", + "stack_canary_linux.cc", + "stack_canary_linux.h", + ] + sources += [ + "files/file_path_watcher_kqueue.cc", + "files/file_path_watcher_kqueue.h", + "files/file_path_watcher_bsd.cc", + "threading/platform_thread_bsd.cc", + ] + } + if (use_blink) { sources += [ "files/file_path_watcher.cc", -@@ -2735,7 +2793,7 @@ buildflag_header("protected_memory_buildflags") { +@@ -2694,7 +2752,7 @@ buildflag_header("protected_memory_buildflags") { header = "protected_memory_buildflags.h" header_dir = "base/memory" - protected_memory_enabled = !is_component_build && is_clang && + protected_memory_enabled = !is_openbsd && !is_component_build && is_clang && (is_win || is_linux || is_android || is_mac) flags = [ "PROTECTED_MEMORY_ENABLED=$protected_memory_enabled" ] -@@ -3242,7 +3300,7 @@ if (is_apple) { +@@ -3200,7 +3258,7 @@ if (is_apple) { } } --if (!is_nacl && (is_linux || is_chromeos)) { -+if (!is_nacl && !is_bsd && (is_linux || is_chromeos)) { +-if (is_linux || is_chromeos) { ++if (!is_bsd && (is_linux || is_chromeos)) { # This test must compile with -fstack-protector-all source_set("stack_canary_linux_unittests") { testonly = true -@@ -3931,7 +3989,7 @@ test("base_unittests") { +@@ -3885,7 +3943,7 @@ test("base_unittests") { ] } - if (is_linux || is_chromeos) { + if (!is_bsd && (is_linux || is_chromeos)) { sources += [ "debug/proc_maps_linux_unittest.cc", "files/scoped_file_linux_unittest.cc", -@@ -3959,7 +4017,7 @@ test("base_unittests") { +@@ -3909,7 +3967,7 @@ test("base_unittests") { "posix/file_descriptor_shuffle_unittest.cc", "posix/unix_domain_socket_unittest.cc", ] -- if (!is_nacl && !is_apple) { -+ if (!is_nacl && !is_apple && !is_bsd) { +- if (!is_apple) { ++ if (!is_apple && !is_bsd) { sources += [ "profiler/stack_base_address_posix_unittest.cc", "profiler/stack_copier_signal_unittest.cc", -@@ -3970,7 +4028,7 @@ test("base_unittests") { +@@ -3920,7 +3978,7 @@ test("base_unittests") { # Allow more direct string conversions on platforms with native utf8 # strings - if (is_apple || is_chromeos || is_castos || is_cast_android || is_fuchsia) { + if (is_apple || is_chromeos || is_castos || is_cast_android || is_fuchsia || is_bsd) { defines += [ "SYSTEM_NATIVE_UTF8" ] } -@@ -4158,7 +4216,7 @@ test("base_unittests") { +@@ -4108,7 +4166,7 @@ test("base_unittests") { deps += [ ":base_profiler_test_support_library" ] } - if (is_fuchsia || is_linux || is_chromeos) { + if ((is_fuchsia || is_linux || is_chromeos) && !is_bsd) { sources += [ "debug/elf_reader_unittest.cc", "debug/test_elf_image_builder.cc", diff --git a/www/chromium/files/patch-base_allocator_partition__alloc__features.cc b/www/chromium/files/patch-base_allocator_partition__alloc__features.cc index 57c523f43129..82100b068dd4 100644 --- a/www/chromium/files/patch-base_allocator_partition__alloc__features.cc +++ b/www/chromium/files/patch-base_allocator_partition__alloc__features.cc @@ -1,11 +1,20 @@ ---- base/allocator/partition_alloc_features.cc.orig 2025-05-28 14:55:43 UTC +--- base/allocator/partition_alloc_features.cc.orig 2025-08-07 06:57:29 UTC +++ base/allocator/partition_alloc_features.cc @@ -164,7 +164,7 @@ BASE_FEATURE(kPartitionAllocEventuallyZeroFreedMemory, // disabled elsewhere (for now). Does not apply to Windows. BASE_FEATURE(kPartitionAllocFewerMemoryRegions, "PartitionAllocFewerMemoryRegions", -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) FEATURE_ENABLED_BY_DEFAULT); #else FEATURE_DISABLED_BY_DEFAULT); +@@ -489,7 +489,7 @@ BASE_FEATURE(kPartitionAllocAdjustSizeWhenInForeground + #if PA_CONFIG(ENABLE_SHADOW_METADATA) + BASE_FEATURE(kPartitionAllocShadowMetadata, + "PartitionAllocShadowMetadata", +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + FEATURE_ENABLED_BY_DEFAULT); + #else + FEATURE_DISABLED_BY_DEFAULT); diff --git a/www/chromium/files/patch-base_allocator_partition__allocator_partition__alloc.gni b/www/chromium/files/patch-base_allocator_partition__allocator_partition__alloc.gni index f279b52b32c6..6ccf86bde414 100644 --- a/www/chromium/files/patch-base_allocator_partition__allocator_partition__alloc.gni +++ b/www/chromium/files/patch-base_allocator_partition__allocator_partition__alloc.gni @@ -1,29 +1,29 @@ ---- base/allocator/partition_allocator/partition_alloc.gni.orig 2025-07-02 06:08:04 UTC +--- base/allocator/partition_allocator/partition_alloc.gni.orig 2025-08-07 06:57:29 UTC +++ base/allocator/partition_allocator/partition_alloc.gni -@@ -91,7 +91,7 @@ if (is_nacl) { +@@ -87,7 +87,7 @@ if (current_cpu == "x64" || current_cpu == "arm64" || # TODO(crbug.com/329199197): Clean this up when experiments are complete. use_large_empty_slot_span_ring = true -has_memory_tagging = current_cpu == "arm64" && is_clang && !is_asan && +has_memory_tagging = current_cpu == "arm64" && is_clang && !is_asan && !is_bsd && !is_hwasan && (is_linux || is_android) declare_args() { -@@ -351,7 +351,7 @@ declare_args() { +@@ -340,7 +340,7 @@ declare_args() { declare_args() { # Shadow metadata is still under development and only supports Linux # for now. - enable_shadow_metadata = is_linux && has_64_bit_pointers + enable_shadow_metadata = !is_bsd && is_linux && has_64_bit_pointers } declare_args() { -@@ -494,7 +494,7 @@ assert(!use_asan_backup_ref_ptr || use_raw_ptr_hookabl +@@ -483,7 +483,7 @@ assert(!use_asan_backup_ref_ptr || use_raw_ptr_hookabl # dependencies that use partition_allocator are compiled in AOSP against a # version of glibc that does not include pkeys syscall numbers. is_pkeys_available = - (is_linux || is_chromeos) && current_cpu == "x64" && !is_cronet_build + !is_bsd && (is_linux || is_chromeos) && current_cpu == "x64" && !is_cronet_build declare_args() { enable_pkeys = is_pkeys_available } diff --git a/www/chromium/files/patch-base_allocator_partition__allocator_src_partition__alloc_BUILD.gn b/www/chromium/files/patch-base_allocator_partition__allocator_src_partition__alloc_BUILD.gn index 4e4d827927f3..90dd58e8082d 100644 --- a/www/chromium/files/patch-base_allocator_partition__allocator_src_partition__alloc_BUILD.gn +++ b/www/chromium/files/patch-base_allocator_partition__allocator_src_partition__alloc_BUILD.gn @@ -1,11 +1,11 @@ ---- base/allocator/partition_allocator/src/partition_alloc/BUILD.gn.orig 2025-07-02 06:08:04 UTC +--- base/allocator/partition_allocator/src/partition_alloc/BUILD.gn.orig 2025-08-07 06:57:29 UTC +++ base/allocator/partition_allocator/src/partition_alloc/BUILD.gn -@@ -892,7 +892,7 @@ if (is_clang_or_gcc) { +@@ -893,7 +893,7 @@ if (is_clang_or_gcc) { configs -= [ partition_alloc_enable_arc_config ] } } - if (is_chromeos || is_linux) { + if ((is_chromeos || is_linux) && !is_bsd) { shim_headers += [ "shim/allocator_shim_override_cpp_symbols.h", "shim/allocator_shim_override_glibc_weak_symbols.h", diff --git a/www/chromium/files/patch-base_allocator_partition__allocator_src_partition__alloc_page__allocator.h b/www/chromium/files/patch-base_allocator_partition__allocator_src_partition__alloc_page__allocator.h index 027b2c44fd46..45292e4e1220 100644 --- a/www/chromium/files/patch-base_allocator_partition__allocator_src_partition__alloc_page__allocator.h +++ b/www/chromium/files/patch-base_allocator_partition__allocator_src_partition__alloc_page__allocator.h @@ -1,11 +1,11 @@ ---- base/allocator/partition_allocator/src/partition_alloc/page_allocator.h.orig 2024-08-26 12:06:38 UTC +--- base/allocator/partition_allocator/src/partition_alloc/page_allocator.h.orig 2025-08-07 06:57:29 UTC +++ base/allocator/partition_allocator/src/partition_alloc/page_allocator.h -@@ -269,7 +269,7 @@ bool DecommitAndZeroSystemPages(void* address, +@@ -273,7 +273,7 @@ bool DecommitAndZeroSystemPages(void* address, // recommitted. Do not assume that this will not change over time. constexpr PA_COMPONENT_EXPORT( PARTITION_ALLOC) bool DecommittedMemoryIsAlwaysZeroed() { -#if PA_BUILDFLAG(IS_APPLE) +#if PA_BUILDFLAG(IS_APPLE) || PA_BUILDFLAG(IS_BSD) return false; #else return true; diff --git a/www/chromium/files/patch-base_allocator_partition__allocator_src_partition__alloc_partition__root.cc b/www/chromium/files/patch-base_allocator_partition__allocator_src_partition__alloc_partition__root.cc index 1516d9efd50d..42f6820e2049 100644 --- a/www/chromium/files/patch-base_allocator_partition__allocator_src_partition__alloc_partition__root.cc +++ b/www/chromium/files/patch-base_allocator_partition__allocator_src_partition__alloc_partition__root.cc @@ -1,29 +1,29 @@ ---- base/allocator/partition_allocator/src/partition_alloc/partition_root.cc.orig 2025-07-02 06:08:04 UTC +--- base/allocator/partition_allocator/src/partition_alloc/partition_root.cc.orig 2025-08-07 06:57:29 UTC +++ base/allocator/partition_allocator/src/partition_alloc/partition_root.cc -@@ -45,7 +45,7 @@ +@@ -47,7 +47,7 @@ #include "wow64apiset.h" #endif -#if PA_BUILDFLAG(IS_LINUX) || PA_BUILDFLAG(IS_CHROMEOS) +#if PA_BUILDFLAG(IS_LINUX) || PA_BUILDFLAG(IS_CHROMEOS) || PA_BUILDFLAG(IS_BSD) #include #if PA_CONFIG(ENABLE_SHADOW_METADATA) #include -@@ -298,7 +298,7 @@ void PartitionAllocMallocInitOnce() { +@@ -301,7 +301,7 @@ void PartitionAllocMallocInitOnce() { return; } -#if PA_BUILDFLAG(IS_LINUX) || PA_BUILDFLAG(IS_CHROMEOS) +#if PA_BUILDFLAG(IS_LINUX) || PA_BUILDFLAG(IS_CHROMEOS) || PA_BUILDFLAG(IS_BSD) // When fork() is called, only the current thread continues to execute in the // child process. If the lock is held, but *not* by this thread when fork() is // called, we have a deadlock. -@@ -1110,7 +1110,7 @@ void PartitionRoot::Init(PartitionOptions opts) { +@@ -1073,7 +1073,7 @@ void PartitionRoot::Init(PartitionOptions opts) { // apple OSes. PA_CHECK((internal::SystemPageSize() == (size_t{1} << 12)) || (internal::SystemPageSize() == (size_t{1} << 14))); -#elif PA_BUILDFLAG(IS_LINUX) && PA_BUILDFLAG(PA_ARCH_CPU_ARM64) +#elif (PA_BUILDFLAG(IS_LINUX) || PA_BUILDFLAG(IS_BSD)) && PA_BUILDFLAG(PA_ARCH_CPU_ARM64) // Check runtime pagesize. Though the code is currently the same, it is // not merged with the IS_APPLE case above as a 1 << 16 case is only // supported on Linux on AArch64. diff --git a/www/chromium/files/patch-base_i18n_icu__util.cc b/www/chromium/files/patch-base_i18n_icu__util.cc index bc89b666a1e1..c9eab0a16a44 100644 --- a/www/chromium/files/patch-base_i18n_icu__util.cc +++ b/www/chromium/files/patch-base_i18n_icu__util.cc @@ -1,20 +1,20 @@ ---- base/i18n/icu_util.cc.orig 2025-05-05 10:57:53 UTC +--- base/i18n/icu_util.cc.orig 2025-08-07 06:57:29 UTC +++ base/i18n/icu_util.cc -@@ -53,7 +53,7 @@ +@@ -52,7 +52,7 @@ #include "third_party/icu/source/common/unicode/unistr.h" #endif -#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_FUCHSIA) || \ +#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) || \ BUILDFLAG(IS_CHROMEOS) || (BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CASTOS)) #include "third_party/icu/source/i18n/unicode/timezone.h" #endif -@@ -329,7 +329,7 @@ void InitializeIcuTimeZone() { +@@ -318,7 +318,7 @@ void InitializeIcuTimeZone() { FuchsiaIntlProfileWatcher::GetPrimaryTimeZoneIdForIcuInitialization(); icu::TimeZone::adoptDefault( icu::TimeZone::createTimeZone(icu::UnicodeString::fromUTF8(zone_id))); --#elif BUILDFLAG(IS_CHROMEOS) || (BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CASTOS)) -+#elif BUILDFLAG(IS_CHROMEOS) || (BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CASTOS)) || BUILDFLAG(IS_BSD) +-#elif BUILDFLAG(IS_CHROMEOS) || \ ++#elif BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) || \ + (BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CASTOS)) || BUILDFLAG(IS_ANDROID) // To respond to the time zone change properly, the default time zone // cache in ICU has to be populated on starting up. - // See TimeZoneMonitorLinux::NotifyClientsFromImpl(). diff --git a/www/chromium/files/patch-base_memory_madv__free__discardable__memory__posix.cc b/www/chromium/files/patch-base_memory_madv__free__discardable__memory__posix.cc index f71dae216868..053d16324c91 100644 --- a/www/chromium/files/patch-base_memory_madv__free__discardable__memory__posix.cc +++ b/www/chromium/files/patch-base_memory_madv__free__discardable__memory__posix.cc @@ -1,21 +1,21 @@ ---- base/memory/madv_free_discardable_memory_posix.cc.orig 2025-02-19 07:43:18 UTC +--- base/memory/madv_free_discardable_memory_posix.cc.orig 2025-08-07 06:57:29 UTC +++ base/memory/madv_free_discardable_memory_posix.cc -@@ -305,6 +305,10 @@ void MadvFreeDiscardableMemoryPosix::SetKeepMemoryForT +@@ -298,6 +298,10 @@ void MadvFreeDiscardableMemoryPosix::SetKeepMemoryForT bool MadvFreeDiscardableMemoryPosix::IsResident() const { DFAKE_SCOPED_RECURSIVE_LOCK(thread_collision_warner_); +// XXX mincore +#if BUILDFLAG(IS_BSD) + return false; +#else #if BUILDFLAG(IS_APPLE) std::vector vec(allocated_pages_); #else -@@ -321,6 +325,7 @@ bool MadvFreeDiscardableMemoryPosix::IsResident() cons +@@ -314,6 +318,7 @@ bool MadvFreeDiscardableMemoryPosix::IsResident() cons } } return true; +#endif } bool MadvFreeDiscardableMemoryPosix::IsDiscarded() const { diff --git a/www/chromium/files/patch-base_memory_platform__shared__memory__region__posix.cc b/www/chromium/files/patch-base_memory_platform__shared__memory__region__posix.cc index 9b0d02ebffa8..6195304dc099 100644 --- a/www/chromium/files/patch-base_memory_platform__shared__memory__region__posix.cc +++ b/www/chromium/files/patch-base_memory_platform__shared__memory__region__posix.cc @@ -1,29 +1,29 @@ ---- base/memory/platform_shared_memory_region_posix.cc.orig 2025-07-02 06:08:04 UTC +--- base/memory/platform_shared_memory_region_posix.cc.orig 2025-08-07 06:57:29 UTC +++ base/memory/platform_shared_memory_region_posix.cc -@@ -61,7 +61,7 @@ std::optional CheckFDAccessMode(int +@@ -59,7 +59,7 @@ std::optional CheckFDAccessMode(int } // namespace -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // static ScopedFD PlatformSharedMemoryRegion::ExecutableRegion::CreateFD(size_t size) { PlatformSharedMemoryRegion region = -@@ -186,7 +186,7 @@ bool PlatformSharedMemoryRegion::ConvertToUnsafe() { +@@ -184,7 +184,7 @@ bool PlatformSharedMemoryRegion::ConvertToUnsafe() { // static PlatformSharedMemoryRegion PlatformSharedMemoryRegion::Create(Mode mode, size_t size -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) , bool executable #endif -@@ -215,7 +215,7 @@ PlatformSharedMemoryRegion PlatformSharedMemoryRegion: +@@ -209,7 +209,7 @@ PlatformSharedMemoryRegion PlatformSharedMemoryRegion: // flag. FilePath directory; if (!GetShmemTempDir( -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) executable, #else false /* executable */, diff --git a/www/chromium/files/patch-base_message__loop_message__pump__epoll.cc b/www/chromium/files/patch-base_message__loop_message__pump__epoll.cc index 3e769273a4b1..1e0a43213331 100644 --- a/www/chromium/files/patch-base_message__loop_message__pump__epoll.cc +++ b/www/chromium/files/patch-base_message__loop_message__pump__epoll.cc @@ -1,11 +1,11 @@ ---- base/message_loop/message_pump_epoll.cc.orig 2025-03-05 08:14:56 UTC +--- base/message_loop/message_pump_epoll.cc.orig 2025-08-07 06:57:29 UTC +++ base/message_loop/message_pump_epoll.cc -@@ -47,7 +47,7 @@ std::atomic_bool g_use_batched_version = false; +@@ -49,7 +49,7 @@ std::atomic_bool g_use_batched_version = false; std::atomic_bool g_use_poll = false; constexpr std::pair kEpollToPollEvents[] = { - {EPOLLIN, POLLIN}, {EPOLLOUT, POLLOUT}, {EPOLLRDHUP, POLLRDHUP}, + {EPOLLIN, POLLIN}, {EPOLLOUT, POLLOUT}, {EPOLLPRI, POLLPRI}, {EPOLLERR, POLLERR}, {EPOLLHUP, POLLHUP}}; void SetEventsForPoll(const uint32_t epoll_events, struct pollfd* poll_entry) { diff --git a/www/chromium/files/patch-base_posix_unix__domain__socket.cc b/www/chromium/files/patch-base_posix_unix__domain__socket.cc index a773bacd01a9..8cdd9418e0fd 100644 --- a/www/chromium/files/patch-base_posix_unix__domain__socket.cc +++ b/www/chromium/files/patch-base_posix_unix__domain__socket.cc @@ -1,57 +1,65 @@ ---- base/posix/unix_domain_socket.cc.orig 2025-02-19 07:43:18 UTC +--- base/posix/unix_domain_socket.cc.orig 2025-08-07 06:57:29 UTC +++ base/posix/unix_domain_socket.cc -@@ -47,7 +47,7 @@ bool CreateSocketPair(ScopedFD* one, ScopedFD* two) { +@@ -20,6 +20,7 @@ + #include "base/files/scoped_file.h" + #include "base/logging.h" + #include "base/notreached.h" ++#include "base/notimplemented.h" + #include "base/numerics/safe_conversions.h" + #include "base/pickle.h" + #include "base/posix/eintr_wrapper.h" +@@ -47,7 +48,7 @@ bool CreateSocketPair(ScopedFD* one, ScopedFD* two) { // static bool UnixDomainSocket::EnableReceiveProcessId(int fd) { -#if !BUILDFLAG(IS_APPLE) +#if !BUILDFLAG(IS_APPLE) && !BUILDFLAG(IS_BSD) const int enable = 1; return setsockopt(fd, SOL_SOCKET, SO_PASSCRED, &enable, sizeof(enable)) == 0; #else -@@ -73,7 +73,7 @@ bool UnixDomainSocket::SendMsg(int fd, +@@ -73,7 +74,7 @@ bool UnixDomainSocket::SendMsg(int fd, struct cmsghdr* cmsg; msg.msg_control = control_buffer; -#if BUILDFLAG(IS_APPLE) +#if BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_BSD) msg.msg_controllen = checked_cast(control_len); #else msg.msg_controllen = control_len; -@@ -81,7 +81,7 @@ bool UnixDomainSocket::SendMsg(int fd, +@@ -81,7 +82,7 @@ bool UnixDomainSocket::SendMsg(int fd, cmsg = CMSG_FIRSTHDR(&msg); cmsg->cmsg_level = SOL_SOCKET; cmsg->cmsg_type = SCM_RIGHTS; -#if BUILDFLAG(IS_APPLE) +#if BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_BSD) cmsg->cmsg_len = checked_cast(CMSG_LEN(sizeof(int) * fds.size())); #else cmsg->cmsg_len = CMSG_LEN(sizeof(int) * fds.size()); -@@ -133,7 +133,7 @@ ssize_t UnixDomainSocket::RecvMsgWithFlags(int fd, +@@ -133,7 +134,7 @@ ssize_t UnixDomainSocket::RecvMsgWithFlags(int fd, const size_t kControlBufferSize = CMSG_SPACE(sizeof(int) * kMaxFileDescriptors) -#if !BUILDFLAG(IS_APPLE) +#if !BUILDFLAG(IS_APPLE) && !BUILDFLAG(IS_BSD) // macOS does not support ucred. // macOS supports xucred, but this structure is insufficient. + CMSG_SPACE(sizeof(struct ucred)) -@@ -162,7 +162,7 @@ ssize_t UnixDomainSocket::RecvMsgWithFlags(int fd, +@@ -162,7 +163,7 @@ ssize_t UnixDomainSocket::RecvMsgWithFlags(int fd, wire_fds = reinterpret_cast(CMSG_DATA(cmsg)); wire_fds_len = payload_len / sizeof(int); } -#if !BUILDFLAG(IS_APPLE) +#if !BUILDFLAG(IS_APPLE) && !BUILDFLAG(IS_BSD) // macOS does not support SCM_CREDENTIALS. if (cmsg->cmsg_level == SOL_SOCKET && cmsg->cmsg_type == SCM_CREDENTIALS) { -@@ -199,6 +199,9 @@ ssize_t UnixDomainSocket::RecvMsgWithFlags(int fd, +@@ -199,6 +200,9 @@ ssize_t UnixDomainSocket::RecvMsgWithFlags(int fd, if (getsockopt(fd, SOL_LOCAL, LOCAL_PEERPID, &pid, &pid_size) != 0) { pid = -1; } +#elif BUILDFLAG(IS_BSD) + NOTIMPLEMENTED(); + pid = -1; #else // |pid| will legitimately be -1 if we read EOF, so only DCHECK if we // actually received a message. Unfortunately, Linux allows sending zero diff --git a/www/chromium/files/patch-base_process_launch__posix.cc b/www/chromium/files/patch-base_process_launch__posix.cc index 7421bfc19c8e..3aa1bafc42c1 100644 --- a/www/chromium/files/patch-base_process_launch__posix.cc +++ b/www/chromium/files/patch-base_process_launch__posix.cc @@ -1,12 +1,12 @@ ---- base/process/launch_posix.cc.orig 2025-04-04 08:52:13 UTC +--- base/process/launch_posix.cc.orig 2025-08-07 06:57:29 UTC +++ base/process/launch_posix.cc -@@ -62,6 +62,9 @@ +@@ -61,6 +61,9 @@ #error "macOS should use launch_mac.cc" #endif +#if defined(OS_FREEBSD) +#pragma weak environ +#endif extern char** environ; namespace base { diff --git a/www/chromium/files/patch-base_process_process__metrics__freebsd.cc b/www/chromium/files/patch-base_process_process__metrics__freebsd.cc index d3f664f95e5a..5eb60b3d9b11 100644 --- a/www/chromium/files/patch-base_process_process__metrics__freebsd.cc +++ b/www/chromium/files/patch-base_process_process__metrics__freebsd.cc @@ -1,283 +1,283 @@ ---- base/process/process_metrics_freebsd.cc.orig 2025-02-19 07:43:18 UTC +--- base/process/process_metrics_freebsd.cc.orig 2025-08-07 06:57:29 UTC +++ base/process/process_metrics_freebsd.cc @@ -3,41 +3,92 @@ // found in the LICENSE file. #include "base/process/process_metrics.h" -+#include "base/notreached.h" ++#include "base/notimplemented.h" #include +#include #include #include #include +#include /* O_RDONLY */ +#include +#include + #include "base/memory/ptr_util.h" +#include "base/values.h" namespace base { +namespace { +int GetPageShift() { + int pagesize = getpagesize(); + int pageshift = 0; -ProcessMetrics::ProcessMetrics(ProcessHandle process) - : process_(process), last_cpu_(0) {} + while (pagesize > 1) { + pageshift++; + pagesize >>= 1; + } + return pageshift; +} +} + +ProcessMetrics::ProcessMetrics(ProcessHandle process) : process_(process) {} + // static std::unique_ptr ProcessMetrics::CreateProcessMetrics( ProcessHandle process) { return WrapUnique(new ProcessMetrics(process)); } -base::expected -ProcessMetrics::GetPlatformIndependentCPUUsage() { - struct kinfo_proc info; - int mib[] = {CTL_KERN, KERN_PROC, KERN_PROC_PID, process_}; - size_t length = sizeof(info); +base::expected +ProcessMetrics::GetMemoryInfo() const { + ProcessMemoryInfo memory_info; + kvm_t *kd = kvm_open(nullptr, "/dev/null", nullptr, O_RDONLY, "kvm_open"); + struct kinfo_proc *pp; + int nproc; - if (sysctl(mib, std::size(mib), &info, &length, NULL, 0) < 0) { - return base::unexpected(ProcessCPUUsageError::kSystemError); + if (kd == nullptr) { + return base::unexpected(ProcessUsageError::kSystemError); } - return base::ok(double{info.ki_pctcpu} / FSCALE * 100.0); + if ((pp = kvm_getprocs(kd, KERN_PROC_PID, process_, &nproc)) == nullptr) { + kvm_close(kd); + return base::unexpected(ProcessUsageError::kProcessNotFound); + } + + if (nproc > 0) { + memory_info.resident_set_bytes = pp->ki_rssize << GetPageShift(); + } else { + kvm_close(kd); + return base::unexpected(ProcessUsageError::kProcessNotFound); + } + + kvm_close(kd); + return memory_info; } base::expected ProcessMetrics::GetCumulativeCPUUsage() { - NOTREACHED(); + struct kinfo_proc info; + size_t length = sizeof(struct kinfo_proc); + struct timeval tv; + + int mib[] = { CTL_KERN, KERN_PROC, KERN_PROC_PID, process_ }; + + if (process_ == 0) { + return base::unexpected(ProcessCPUUsageError::kSystemError); + } + + if (sysctl(mib, std::size(mib), &info, &length, NULL, 0) < 0) { + return base::unexpected(ProcessCPUUsageError::kSystemError); + } + + if (length == 0) { + return base::unexpected(ProcessCPUUsageError::kProcessNotFound); + } + + return base::ok(Microseconds(info.ki_runtime)); } size_t GetSystemCommitCharge() { @@ -64,6 +115,176 @@ size_t GetSystemCommitCharge() { pagesize = getpagesize(); return mem_total - (mem_free * pagesize) - (mem_inactive * pagesize); +} + +int64_t GetNumberOfThreads(ProcessHandle process) { + // Taken from FreeBSD top (usr.bin/top/machine.c) + + kvm_t* kd = kvm_open(NULL, "/dev/null", NULL, O_RDONLY, "kvm_open"); + if (kd == NULL) + return 0; + + struct kinfo_proc* pbase; + int nproc; + pbase = kvm_getprocs(kd, KERN_PROC_PID, process, &nproc); + if (pbase == NULL) + return 0; + + if (kvm_close(kd) == -1) + return 0; + + return nproc; +} + +bool GetSystemMemoryInfo(SystemMemoryInfoKB *meminfo) { + unsigned int mem_total, mem_free, swap_total, swap_used; + size_t length; + int pagesizeKB; + + pagesizeKB = getpagesize() / 1024; + + length = sizeof(mem_total); + if (sysctlbyname("vm.stats.vm.v_page_count", &mem_total, + &length, NULL, 0) != 0 || length != sizeof(mem_total)) + return false; + + length = sizeof(mem_free); + if (sysctlbyname("vm.stats.vm.v_free_count", &mem_free, &length, NULL, 0) + != 0 || length != sizeof(mem_free)) + return false; + + length = sizeof(swap_total); + if (sysctlbyname("vm.swap_size", &swap_total, &length, NULL, 0) + != 0 || length != sizeof(swap_total)) + return false; + + length = sizeof(swap_used); + if (sysctlbyname("vm.swap_anon_use", &swap_used, &length, NULL, 0) + != 0 || length != sizeof(swap_used)) + return false; + + meminfo->total = mem_total * pagesizeKB; + meminfo->free = mem_free * pagesizeKB; + meminfo->swap_total = swap_total * pagesizeKB; + meminfo->swap_free = (swap_total - swap_used) * pagesizeKB; + + return true; +} + +int ProcessMetrics::GetOpenFdCount() const { + struct kinfo_file * kif; + int cnt; + + if ((kif = kinfo_getfile(process_, &cnt)) == NULL) + return -1; + + free(kif); + + return cnt; +} + +int ProcessMetrics::GetOpenFdSoftLimit() const { + size_t length; + int total_count = 0; + int mib[] = { CTL_KERN, KERN_MAXFILESPERPROC }; + + length = sizeof(total_count); + + if (sysctl(mib, std::size(mib), &total_count, &length, NULL, 0) < 0) { + total_count = -1; + } + + return total_count; +} + +int ProcessMetrics::GetIdleWakeupsPerSecond() { + NOTIMPLEMENTED(); + return 0; +} + +bool GetSystemDiskInfo(SystemDiskInfo* diskinfo) { + NOTIMPLEMENTED(); + return false; +} + +bool GetVmStatInfo(VmStatInfo* vmstat) { + NOTIMPLEMENTED(); + return false; +} + +SystemDiskInfo::SystemDiskInfo() { + reads = 0; + reads_merged = 0; + sectors_read = 0; + read_time = 0; + writes = 0; + writes_merged = 0; + sectors_written = 0; + write_time = 0; + io = 0; + io_time = 0; + weighted_io_time = 0; +} + +SystemDiskInfo::SystemDiskInfo(const SystemDiskInfo& other) = default; + +SystemDiskInfo& SystemDiskInfo::operator=(const SystemDiskInfo&) = default; + +Value::Dict SystemDiskInfo::ToDict() const { + Value::Dict res; + + // Write out uint64_t variables as doubles. + // Note: this may discard some precision, but for JS there's no other option. + res.Set("reads", static_cast(reads)); + res.Set("reads_merged", static_cast(reads_merged)); + res.Set("sectors_read", static_cast(sectors_read)); + res.Set("read_time", static_cast(read_time)); + res.Set("writes", static_cast(writes)); + res.Set("writes_merged", static_cast(writes_merged)); + res.Set("sectors_written", static_cast(sectors_written)); + res.Set("write_time", static_cast(write_time)); + res.Set("io", static_cast(io)); + res.Set("io_time", static_cast(io_time)); + res.Set("weighted_io_time", static_cast(weighted_io_time)); + + NOTIMPLEMENTED(); + + return res; +} + +Value::Dict SystemMemoryInfoKB::ToDict() const { + Value::Dict res; + res.Set("total", total); + res.Set("free", free); + res.Set("available", available); + res.Set("buffers", buffers); + res.Set("cached", cached); + res.Set("active_anon", active_anon); + res.Set("inactive_anon", inactive_anon); + res.Set("active_file", active_file); + res.Set("inactive_file", inactive_file); + res.Set("swap_total", swap_total); + res.Set("swap_free", swap_free); + res.Set("swap_used", swap_total - swap_free); + res.Set("dirty", dirty); + res.Set("reclaimable", reclaimable); + + NOTIMPLEMENTED(); + + return res; +} + +Value::Dict VmStatInfo::ToDict() const { + Value::Dict res; + // TODO(crbug.com/1334256): Make base::Value able to hold uint64_t and remove + // casts below. + res.Set("pswpin", static_cast(pswpin)); + res.Set("pswpout", static_cast(pswpout)); + res.Set("pgmajfault", static_cast(pgmajfault)); + + NOTIMPLEMENTED(); + + return res; } } // namespace base diff --git a/www/chromium/files/patch-base_process_process__metrics__openbsd.cc b/www/chromium/files/patch-base_process_process__metrics__openbsd.cc index 5bb5b1da2134..6919e9ea73e3 100644 --- a/www/chromium/files/patch-base_process_process__metrics__openbsd.cc +++ b/www/chromium/files/patch-base_process_process__metrics__openbsd.cc @@ -1,241 +1,241 @@ ---- base/process/process_metrics_openbsd.cc.orig 2025-02-25 07:06:47 UTC +--- base/process/process_metrics_openbsd.cc.orig 2025-08-07 06:57:29 UTC +++ base/process/process_metrics_openbsd.cc @@ -6,73 +6,85 @@ #include #include +#include #include #include +#include +#include + #include "base/memory/ptr_util.h" #include "base/types/expected.h" +#include "base/values.h" -+#include "base/notreached.h" ++#include "base/notimplemented.h" namespace base { -namespace { +ProcessMetrics::ProcessMetrics(ProcessHandle process) : process_(process) {} -base::expected GetProcessCPU(pid_t pid) { +base::expected +ProcessMetrics::GetMemoryInfo() const { + ProcessMemoryInfo memory_info; struct kinfo_proc info; - size_t length; - int mib[] = { - CTL_KERN, KERN_PROC, KERN_PROC_PID, pid, sizeof(struct kinfo_proc), 0}; + size_t length = sizeof(struct kinfo_proc); - if (sysctl(mib, std::size(mib), NULL, &length, NULL, 0) < 0) { - return base::unexpected(ProcessCPUUsageError::kSystemError); + int mib[] = { CTL_KERN, KERN_PROC, KERN_PROC_PID, process_, + sizeof(struct kinfo_proc), 1 }; + + if (process_ == 0) { + return base::unexpected(ProcessUsageError::kSystemError); } - mib[5] = (length / sizeof(struct kinfo_proc)); - if (sysctl(mib, std::size(mib), &info, &length, NULL, 0) < 0) { - return base::unexpected(ProcessCPUUsageError::kSystemError); + return base::unexpected(ProcessUsageError::kSystemError); } - return base::ok(info.p_pctcpu); -} + if (length == 0) { + return base::unexpected(ProcessUsageError::kProcessNotFound); + } -} // namespace + memory_info.resident_set_bytes = + checked_cast(info.p_vm_rssize * getpagesize()); -// static -std::unique_ptr ProcessMetrics::CreateProcessMetrics( - ProcessHandle process) { - return WrapUnique(new ProcessMetrics(process)); + return memory_info; } -base::expected -ProcessMetrics::GetPlatformIndependentCPUUsage() { - TimeTicks time = TimeTicks::Now(); +base::expected +ProcessMetrics::GetCumulativeCPUUsage() { + struct kinfo_proc info; + size_t length = sizeof(struct kinfo_proc); + struct timeval tv; - if (last_cpu_time_.is_zero()) { - // First call, just set the last values. - last_cpu_time_ = time; - return base::ok(0.0); + int mib[] = { CTL_KERN, KERN_PROC, KERN_PROC_PID, process_, + sizeof(struct kinfo_proc), 1 }; + + if (process_ == 0) { + return base::unexpected(ProcessCPUUsageError::kSystemError); } - const base::expected cpu = GetProcessCPU(process_); - if (!cpu.has_value()) { - return base::unexpected(cpu.error()); + if (sysctl(mib, std::size(mib), &info, &length, NULL, 0) < 0) { + return base::unexpected(ProcessCPUUsageError::kSystemError); } - last_cpu_time_ = time; - return base::ok(double{cpu.value()} / FSCALE * 100.0); + if (length == 0) { + return base::unexpected(ProcessCPUUsageError::kProcessNotFound); + } + + tv.tv_sec = info.p_rtime_sec; + tv.tv_usec = info.p_rtime_usec; + + return base::ok(Microseconds(TimeValToMicroseconds(tv))); } -base::expected -ProcessMetrics::GetCumulativeCPUUsage() { - NOTREACHED(); +// static +std::unique_ptr ProcessMetrics::CreateProcessMetrics( + ProcessHandle process) { + return WrapUnique(new ProcessMetrics(process)); } -ProcessMetrics::ProcessMetrics(ProcessHandle process) - : process_(process), last_cpu_(0) {} - size_t GetSystemCommitCharge() { int mib[] = {CTL_VM, VM_METER}; - int pagesize; + size_t pagesize; struct vmtotal vmtotal; unsigned long mem_total, mem_free, mem_inactive; size_t len = sizeof(vmtotal); @@ -85,9 +97,115 @@ size_t GetSystemCommitCharge() { mem_free = vmtotal.t_free; mem_inactive = vmtotal.t_vm - vmtotal.t_avm; - pagesize = getpagesize(); + pagesize = checked_cast(getpagesize()); return mem_total - (mem_free * pagesize) - (mem_inactive * pagesize); +} + +int ProcessMetrics::GetOpenFdCount() const { + return (process_ == getpid()) ? getdtablecount() : -1; +} + +int ProcessMetrics::GetOpenFdSoftLimit() const { + return getdtablesize(); +} + +bool ProcessMetrics::GetPageFaultCounts(PageFaultCounts* counts) const { + NOTIMPLEMENTED(); + return false; +} + +bool GetSystemMemoryInfo(SystemMemoryInfoKB* meminfo) { -+ NOTIMPLEMENTED_LOG_ONCE(); ++ NOTIMPLEMENTED(); + return false; +} + +bool GetSystemDiskInfo(SystemDiskInfo* diskinfo) { + NOTIMPLEMENTED(); + return false; +} + +bool GetVmStatInfo(VmStatInfo* vmstat) { + NOTIMPLEMENTED(); + return false; +} + +int ProcessMetrics::GetIdleWakeupsPerSecond() { + NOTIMPLEMENTED(); + return 0; +} + +Value::Dict SystemMemoryInfoKB::ToDict() const { + Value::Dict res; + res.Set("total", total); + res.Set("free", free); + res.Set("available", available); + res.Set("buffers", buffers); + res.Set("cached", cached); + res.Set("active_anon", active_anon); + res.Set("inactive_anon", inactive_anon); + res.Set("active_file", active_file); + res.Set("inactive_file", inactive_file); + res.Set("swap_total", swap_total); + res.Set("swap_free", swap_free); + res.Set("swap_used", swap_total - swap_free); + res.Set("dirty", dirty); + res.Set("reclaimable", reclaimable); + + NOTIMPLEMENTED(); + + return res; +} + +Value::Dict VmStatInfo::ToDict() const { + Value::Dict res; + res.Set("pswpin", static_cast(pswpin)); + res.Set("pswpout", static_cast(pswpout)); + res.Set("pgmajfault", static_cast(pgmajfault)); + + NOTIMPLEMENTED(); + + return res; +} + +SystemDiskInfo::SystemDiskInfo() { + reads = 0; + reads_merged = 0; + sectors_read = 0; + read_time = 0; + writes = 0; + writes_merged = 0; + sectors_written = 0; + write_time = 0; + io = 0; + io_time = 0; + weighted_io_time = 0; +} + +SystemDiskInfo::SystemDiskInfo(const SystemDiskInfo&) = default; + +SystemDiskInfo& SystemDiskInfo::operator=(const SystemDiskInfo&) = default; + +Value::Dict SystemDiskInfo::ToDict() const { + Value::Dict res; + + // Write out uint64_t variables as doubles. + // Note: this may discard some precision, but for JS there's no other option. + res.Set("reads", static_cast(reads)); + res.Set("reads_merged", static_cast(reads_merged)); + res.Set("sectors_read", static_cast(sectors_read)); + res.Set("read_time", static_cast(read_time)); + res.Set("writes", static_cast(writes)); + res.Set("writes_merged", static_cast(writes_merged)); + res.Set("sectors_written", static_cast(sectors_written)); + res.Set("write_time", static_cast(write_time)); + res.Set("io", static_cast(io)); + res.Set("io_time", static_cast(io_time)); + res.Set("weighted_io_time", static_cast(weighted_io_time)); + + NOTIMPLEMENTED(); + + return res; } } // namespace base diff --git a/www/chromium/files/patch-base_process_process__posix.cc b/www/chromium/files/patch-base_process_process__posix.cc index 7f022ca00cbb..02b9faa026af 100644 --- a/www/chromium/files/patch-base_process_process__posix.cc +++ b/www/chromium/files/patch-base_process_process__posix.cc @@ -1,94 +1,94 @@ ---- base/process/process_posix.cc.orig 2025-07-02 06:08:04 UTC +--- base/process/process_posix.cc.orig 2025-08-07 06:57:29 UTC +++ base/process/process_posix.cc @@ -25,10 +25,15 @@ - #include "base/trace_event/base_tracing.h" + #include "base/trace_event/trace_event.h" #include "build/build_config.h" -#if BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) #include #endif +#if BUILDFLAG(IS_BSD) +#include +#include +#endif + #if BUILDFLAG(CLANG_PROFILING) #include "base/test/clang_profiling.h" #endif @@ -104,7 +109,7 @@ bool WaitpidWithTimeout(base::ProcessHandle handle, } #endif -#if BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) // Using kqueue on Mac so that we can wait on non-child processes. // We can't use kqueues on child processes because we need to reap // our own children using wait. @@ -387,7 +392,7 @@ bool Process::WaitForExitWithTimeoutImpl(base::Process const bool exited = (parent_pid < 0); if (!exited && parent_pid != our_pid) { -#if BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) // On Mac we can wait on non child processes. return WaitForSingleNonChildProcess(handle, timeout); #else @@ -424,7 +429,56 @@ void Process::Exited(int exit_code) const { int Process::GetOSPriority() const { DCHECK(IsValid()); +// avoid pledge(2) violation +#if BUILDFLAG(IS_BSD) + return 0; +#else return getpriority(PRIO_PROCESS, static_cast(process_)); +#endif } + +Time Process::CreationTime() const { +// avoid ps pledge in the network process +#if !BUILDFLAG(IS_BSD) + int mib[] = { CTL_KERN, KERN_PROC, KERN_PROC_PID, getpid(), + sizeof(struct kinfo_proc), 0 }; + struct kinfo_proc *info = nullptr; + size_t info_size; +#endif + Time ct = Time(); + +#if !BUILDFLAG(IS_BSD) + if (sysctl(mib, std::size(mib), NULL, &info_size, NULL, 0) < 0) + goto out; + + mib[5] = (info_size / sizeof(struct kinfo_proc)); + if ((info = reinterpret_cast(malloc(info_size))) == NULL) + goto out; + + if (sysctl(mib, std::size(mib), info, &info_size, NULL, 0) < 0) + goto out; + + ct = Time::FromTimeT(info->p_ustart_sec); + +out: + if (info) + free(info); +#endif + return ct; +} + +#if BUILDFLAG(IS_BSD) +Process::Priority Process::GetPriority() const { + return Priority::kUserBlocking; +} + +bool Process::SetPriority(Priority priority) { + return false; +} + +bool Process::CanSetPriority() { + return false; +} +#endif } // namespace base diff --git a/www/chromium/files/patch-base_rand__util.h b/www/chromium/files/patch-base_rand__util.h index 239d6d1782af..e99ae5fb2272 100644 --- a/www/chromium/files/patch-base_rand__util.h +++ b/www/chromium/files/patch-base_rand__util.h @@ -1,11 +1,11 @@ ---- base/rand_util.h.orig 2025-05-05 10:57:53 UTC +--- base/rand_util.h.orig 2025-08-07 06:57:29 UTC +++ base/rand_util.h -@@ -213,7 +213,7 @@ void RandomShuffle(Itr first, Itr last) { +@@ -210,7 +210,7 @@ void RandomShuffle(Itr first, Itr last) { std::shuffle(first, last, RandomBitGenerator()); } -#if BUILDFLAG(IS_POSIX) +#if BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_BSD) BASE_EXPORT int GetUrandomFD(); #endif diff --git a/www/chromium/files/patch-base_rand__util__posix.cc b/www/chromium/files/patch-base_rand__util__posix.cc index 2fdaf4b8cc62..47e1b91ef1ad 100644 --- a/www/chromium/files/patch-base_rand__util__posix.cc +++ b/www/chromium/files/patch-base_rand__util__posix.cc @@ -1,62 +1,60 @@ ---- base/rand_util_posix.cc.orig 2025-05-05 10:57:53 UTC +--- base/rand_util_posix.cc.orig 2025-08-07 06:57:29 UTC +++ base/rand_util_posix.cc -@@ -29,7 +29,7 @@ - #include "base/time/time.h" +@@ -30,7 +30,7 @@ #include "build/build_config.h" + #include "third_party/boringssl/src/include/openssl/rand.h" --#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)) && !BUILDFLAG(IS_NACL) -+#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)) && !BUILDFLAG(IS_NACL) && !BUILDFLAG(IS_BSD) +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) ++#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)) && !BUILDFLAG(IS_BSD) #include "third_party/lss/linux_syscall_support.h" #elif BUILDFLAG(IS_MAC) // TODO(crbug.com/40641285): Waiting for this header to appear in the iOS SDK. -@@ -45,6 +45,7 @@ namespace base { +@@ -42,6 +42,7 @@ namespace base { namespace { +#if !BUILDFLAG(IS_BSD) #if BUILDFLAG(IS_AIX) // AIX has no 64-bit support for O_CLOEXEC. static constexpr int kOpenFlags = O_RDONLY; -@@ -69,10 +70,11 @@ class URandomFd { +@@ -66,8 +67,9 @@ class URandomFd { private: const int fd_; }; +#endif - #if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ - BUILDFLAG(IS_ANDROID)) && \ -- !BUILDFLAG(IS_NACL) -+ !BUILDFLAG(IS_NACL) && !BUILDFLAG(IS_BSD) +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) ++#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID)) && !BUILDFLAG(IS_BSD) bool KernelSupportsGetRandom() { return base::SysInfo::KernelVersionNumber::Current() >= -@@ -129,6 +131,7 @@ bool UseBoringSSLForRandBytes() { +@@ -122,6 +124,7 @@ bool UseBoringSSLForRandBytes() { namespace { void RandBytesInternal(span output, bool avoid_allocation) { +#if !BUILDFLAG(IS_BSD) - #if !BUILDFLAG(IS_NACL) // The BoringSSL experiment takes priority over everything else. if (!avoid_allocation && internal::UseBoringSSLForRandBytes()) { -@@ -163,6 +166,9 @@ void RandBytesInternal(span output, bool avoi + // BoringSSL's RAND_bytes always returns 1. Any error aborts the program. +@@ -152,6 +155,9 @@ void RandBytesInternal(span output, bool avoi const int urandom_fd = GetUrandomFD(); const bool success = ReadFromFD(urandom_fd, as_writable_chars(output)); CHECK(success); +#else + arc4random_buf(output.data(), output.size()); +#endif } } // namespace -@@ -182,9 +188,11 @@ void RandBytes(span output) { +@@ -171,9 +177,11 @@ void RandBytes(span output) { RandBytesInternal(output, /*avoid_allocation=*/false); } +#if !BUILDFLAG(IS_BSD) int GetUrandomFD() { static NoDestructor urandom_fd; return urandom_fd->fd(); } +#endif } // namespace base diff --git a/www/chromium/files/patch-base_system_sys__info.h b/www/chromium/files/patch-base_system_sys__info.h index 4da2a17d13d6..b0e4260375c2 100644 --- a/www/chromium/files/patch-base_system_sys__info.h +++ b/www/chromium/files/patch-base_system_sys__info.h @@ -1,20 +1,20 @@ ---- base/system/sys_info.h.orig 2025-05-05 10:57:53 UTC +--- base/system/sys_info.h.orig 2025-08-07 06:57:29 UTC +++ base/system/sys_info.h -@@ -355,6 +355,8 @@ class BASE_EXPORT SysInfo { +@@ -360,6 +360,8 @@ class BASE_EXPORT SysInfo { static void ResetCpuSecurityMitigationsEnabledForTesting(); #endif + static uint64_t MaxSharedMemorySize(); + private: friend class test::ScopedAmountOfPhysicalMemoryOverride; FRIEND_TEST_ALL_PREFIXES(SysInfoTest, AmountOfAvailablePhysicalMemory); -@@ -367,7 +369,7 @@ class BASE_EXPORT SysInfo { +@@ -372,7 +374,7 @@ class BASE_EXPORT SysInfo { static HardwareInfo GetHardwareInfoSync(); #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || \ - BUILDFLAG(IS_AIX) + BUILDFLAG(IS_AIX) || BUILDFLAG(IS_BSD) static uint64_t AmountOfAvailablePhysicalMemory( const SystemMemoryInfoKB& meminfo); #endif diff --git a/www/chromium/files/patch-base_task_thread__pool_environment__config__unittest.cc b/www/chromium/files/patch-base_task_thread__pool_environment__config__unittest.cc index 785c54eb3ae6..7e08e802f5cb 100644 --- a/www/chromium/files/patch-base_task_thread__pool_environment__config__unittest.cc +++ b/www/chromium/files/patch-base_task_thread__pool_environment__config__unittest.cc @@ -1,20 +1,20 @@ ---- base/task/thread_pool/environment_config_unittest.cc.orig 2025-05-05 10:57:53 UTC +--- base/task/thread_pool/environment_config_unittest.cc.orig 2025-08-07 06:57:29 UTC +++ base/task/thread_pool/environment_config_unittest.cc -@@ -21,7 +21,7 @@ TEST(ThreadPoolEnvironmentConfig, CanUseBackgroundPrio - base::FeatureList::IsEnabled( - FeatureControllingBackgroundPriorityWorkerThreads())); - #elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_FUCHSIA) || \ +@@ -14,7 +14,7 @@ TEST(ThreadPoolEnvironmentConfig, CanUseBackgroundPrio + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_APPLE) + EXPECT_TRUE(CanUseBackgroundThreadTypeForWorkerThread()); + #elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_ANDROID) || \ - BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_NACL) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_NACL) || BUILDFLAG(IS_BSD) EXPECT_FALSE(CanUseBackgroundThreadTypeForWorkerThread()); #else #error Platform doesn't match any block -@@ -30,7 +30,7 @@ TEST(ThreadPoolEnvironmentConfig, CanUseBackgroundPrio +@@ -23,7 +23,7 @@ TEST(ThreadPoolEnvironmentConfig, CanUseBackgroundPrio #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_ANDROID) EXPECT_TRUE(CanUseUtilityThreadTypeForWorkerThread()); #elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_FUCHSIA) || \ - BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_NACL) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_NACL) || BUILDFLAG(IS_BSD) EXPECT_FALSE(CanUseUtilityThreadTypeForWorkerThread()); #else #error Platform doesn't match any block diff --git a/www/chromium/files/patch-base_test_test__file__util__linux.cc b/www/chromium/files/patch-base_test_test__file__util__linux.cc index 8b96dde81baf..a1442a83da6b 100644 --- a/www/chromium/files/patch-base_test_test__file__util__linux.cc +++ b/www/chromium/files/patch-base_test_test__file__util__linux.cc @@ -1,14 +1,14 @@ ---- base/test/test_file_util_linux.cc.orig 2025-02-19 07:43:18 UTC +--- base/test/test_file_util_linux.cc.orig 2025-08-07 06:57:29 UTC +++ base/test/test_file_util_linux.cc -@@ -56,9 +56,11 @@ bool EvictFileFromSystemCache(const FilePath& file) { +@@ -57,9 +57,11 @@ bool EvictFileFromSystemCache(const FilePath& file) { if (fdatasync(fd.get()) != 0) { return false; } +#if !BUILDFLAG(IS_BSD) if (posix_fadvise(fd.get(), 0, 0, POSIX_FADV_DONTNEED) != 0) { return false; } +#endif return true; } diff --git a/www/chromium/files/patch-base_threading_platform__thread__internal__posix.cc b/www/chromium/files/patch-base_threading_platform__thread__internal__posix.cc index 3ac11735f210..d7eea4e02a09 100644 --- a/www/chromium/files/patch-base_threading_platform__thread__internal__posix.cc +++ b/www/chromium/files/patch-base_threading_platform__thread__internal__posix.cc @@ -1,11 +1,11 @@ ---- base/threading/platform_thread_internal_posix.cc.orig 2025-03-05 08:14:56 UTC +--- base/threading/platform_thread_internal_posix.cc.orig 2025-08-07 06:57:29 UTC +++ base/threading/platform_thread_internal_posix.cc -@@ -41,7 +41,7 @@ ThreadPriorityForTest NiceValueToThreadPriorityForTest +@@ -31,7 +31,7 @@ ThreadPriorityForTest NiceValueToThreadPriorityForTest } int GetCurrentThreadNiceValue() { -#if BUILDFLAG(IS_NACL) +#if BUILDFLAG(IS_NACL) || BUILDFLAG(IS_BSD) NOTIMPLEMENTED(); return 0; #else diff --git a/www/chromium/files/patch-base_threading_platform__thread__metrics.cc b/www/chromium/files/patch-base_threading_platform__thread__metrics.cc new file mode 100644 index 000000000000..ea159c22f2c4 --- /dev/null +++ b/www/chromium/files/patch-base_threading_platform__thread__metrics.cc @@ -0,0 +1,11 @@ +--- base/threading/platform_thread_metrics.cc.orig 2025-08-07 06:57:29 UTC ++++ base/threading/platform_thread_metrics.cc +@@ -26,7 +26,7 @@ PlatformThreadMetrics::CreateForCurrentThread() { + } + + #elif BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_CHROMEOS) || \ +- BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_LINUX) ++ BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + + // static + std::unique_ptr diff --git a/www/chromium/files/patch-base_threading_platform__thread__metrics.h b/www/chromium/files/patch-base_threading_platform__thread__metrics.h new file mode 100644 index 000000000000..862d78838577 --- /dev/null +++ b/www/chromium/files/patch-base_threading_platform__thread__metrics.h @@ -0,0 +1,20 @@ +--- base/threading/platform_thread_metrics.h.orig 2025-08-07 06:57:29 UTC ++++ base/threading/platform_thread_metrics.h +@@ -51,7 +51,7 @@ class BASE_EXPORT PlatformThreadMetrics { + PlatformThreadHandle handle); + #endif + +-#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_CHROMEOS) || \ ++#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) || \ + BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) + static std::unique_ptr CreateFromId( + PlatformThreadId tid); +@@ -93,7 +93,7 @@ class BASE_EXPORT PlatformThreadMetrics { + + PlatformThreadHandle handle_; + #elif BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_CHROMEOS) || \ +- BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_LINUX) ++ BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + explicit PlatformThreadMetrics(PlatformThreadId tid) : tid_(tid) {} + + PlatformThreadId tid_; diff --git a/www/chromium/files/patch-base_threading_platform__thread__posix.cc b/www/chromium/files/patch-base_threading_platform__thread__posix.cc index b8d88430f0d4..08739a1c693c 100644 --- a/www/chromium/files/patch-base_threading_platform__thread__posix.cc +++ b/www/chromium/files/patch-base_threading_platform__thread__posix.cc @@ -1,53 +1,53 @@ ---- base/threading/platform_thread_posix.cc.orig 2025-04-04 08:52:13 UTC +--- base/threading/platform_thread_posix.cc.orig 2025-08-07 06:57:29 UTC +++ base/threading/platform_thread_posix.cc @@ -79,11 +79,11 @@ void* ThreadFunc(void* params) { base::DisallowSingleton(); } -#if PA_BUILDFLAG(USE_PARTITION_ALLOC_AS_MALLOC) +#if PA_BUILDFLAG(USE_PARTITION_ALLOC_AS_MALLOC) && !BUILDFLAG(IS_BSD) partition_alloc::internal::StackTopRegistry::Get().NotifyThreadCreated(); #endif -#if !BUILDFLAG(IS_NACL) +#if !BUILDFLAG(IS_NACL) && !BUILDFLAG(IS_BSD) #if BUILDFLAG(IS_APPLE) PlatformThread::SetCurrentThreadRealtimePeriodValue( delegate->GetRealtimePeriod()); @@ -272,6 +272,8 @@ PlatformThreadId PlatformThreadBase::CurrentId() { return PlatformThreadId(reinterpret_cast(pthread_self())); #elif BUILDFLAG(IS_POSIX) && BUILDFLAG(IS_AIX) return PlatformThreadId(pthread_self()); +#elif BUILDFLAG(IS_BSD) + return PlatformThreadId(reinterpret_cast(pthread_self())); #elif BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_AIX) return PlatformThreadId(reinterpret_cast(pthread_self())); #endif @@ -365,7 +367,7 @@ void PlatformThreadBase::Detach(PlatformThreadHandle t // static bool PlatformThreadBase::CanChangeThreadType(ThreadType from, ThreadType to) { -#if BUILDFLAG(IS_NACL) +#if BUILDFLAG(IS_NACL) || BUILDFLAG(IS_BSD) return false; #else if (from >= to) { @@ -386,6 +388,9 @@ void SetCurrentThreadTypeImpl(ThreadType thread_type, MessagePumpType pump_type_hint) { #if BUILDFLAG(IS_NACL) NOTIMPLEMENTED(); +// avoid pledge(2) violation +#elif BUILDFLAG(IS_BSD) -+ NOTIMPLEMENTED(); ++ NOTIMPLEMENTED(); #else if (internal::SetCurrentThreadTypeForPlatform(thread_type, pump_type_hint)) { return; @@ -409,7 +414,7 @@ void SetCurrentThreadTypeImpl(ThreadType thread_type, // static ThreadPriorityForTest PlatformThreadBase::GetCurrentThreadPriorityForTest() { -#if BUILDFLAG(IS_NACL) +#if BUILDFLAG(IS_NACL) || BUILDFLAG(IS_BSD) NOTIMPLEMENTED(); return ThreadPriorityForTest::kNormal; #else diff --git a/www/chromium/files/patch-base_threading_platform__thread__unittest.cc b/www/chromium/files/patch-base_threading_platform__thread__unittest.cc index f0791854a0e8..f809c663a1c3 100644 --- a/www/chromium/files/patch-base_threading_platform__thread__unittest.cc +++ b/www/chromium/files/patch-base_threading_platform__thread__unittest.cc @@ -1,38 +1,38 @@ ---- base/threading/platform_thread_unittest.cc.orig 2025-07-02 06:08:04 UTC +--- base/threading/platform_thread_unittest.cc.orig 2025-08-07 06:57:29 UTC +++ base/threading/platform_thread_unittest.cc @@ -36,7 +36,7 @@ #include "base/time/time.h" #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include #include #include -@@ -369,7 +369,7 @@ TEST(PlatformThreadTest, +@@ -370,7 +370,7 @@ TEST(PlatformThreadTest, // and hardcodes what we know. Please inform scheduler-dev@chromium.org if this // proprerty changes for a given platform. TEST(PlatformThreadTest, CanChangeThreadType) { -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // On Ubuntu, RLIMIT_NICE and RLIMIT_RTPRIO are 0 by default, so we won't be // able to increase priority to any level unless we are root (euid == 0). bool kCanIncreasePriority = false; -@@ -606,12 +606,16 @@ INSTANTIATE_TEST_SUITE_P( +@@ -618,12 +618,16 @@ INSTANTIATE_TEST_SUITE_P( #endif // BUILDFLAG(IS_APPLE) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) namespace { bool IsTidCacheCorrect() { +#if BUILDFLAG(IS_BSD) + return PlatformThread::CurrentId().raw() == reinterpret_cast(pthread_self()); +#else return PlatformThread::CurrentId().raw() == syscall(__NR_gettid); +#endif } void* CheckTidCacheCorrectWrapper(void*) { diff --git a/www/chromium/files/patch-base_trace__event_malloc__dump__provider.cc b/www/chromium/files/patch-base_trace__event_malloc__dump__provider.cc index d16f0a13265a..e32383f7a0ab 100644 --- a/www/chromium/files/patch-base_trace__event_malloc__dump__provider.cc +++ b/www/chromium/files/patch-base_trace__event_malloc__dump__provider.cc @@ -1,30 +1,30 @@ ---- base/trace_event/malloc_dump_provider.cc.orig 2025-07-02 06:08:04 UTC +--- base/trace_event/malloc_dump_provider.cc.orig 2025-08-07 06:57:29 UTC +++ base/trace_event/malloc_dump_provider.cc @@ -31,6 +31,8 @@ #if BUILDFLAG(IS_APPLE) #include +#elif BUILDFLAG(IS_BSD) +#include #else #include #endif @@ -180,7 +182,7 @@ void ReportAppleAllocStats(size_t* total_virtual_size, #if (PA_BUILDFLAG(USE_PARTITION_ALLOC_AS_MALLOC) && BUILDFLAG(IS_ANDROID)) || \ (!PA_BUILDFLAG(USE_PARTITION_ALLOC_AS_MALLOC) && !BUILDFLAG(IS_WIN) && \ - !BUILDFLAG(IS_APPLE) && !BUILDFLAG(IS_FUCHSIA)) + !BUILDFLAG(IS_APPLE) && !BUILDFLAG(IS_FUCHSIA) && !BUILDFLAG(IS_BSD)) void ReportMallinfoStats(ProcessMemoryDump* pmd, size_t* total_virtual_size, size_t* resident_size, -@@ -367,6 +369,9 @@ bool MallocDumpProvider::OnMemoryDump(const MemoryDump +@@ -383,6 +385,9 @@ bool MallocDumpProvider::OnMemoryDump(const MemoryDump &allocated_objects_count); #elif BUILDFLAG(IS_FUCHSIA) // TODO(fuchsia): Port, see https://crbug.com/706592. +#elif BUILDFLAG(IS_BSD) + total_virtual_size = 0; + allocated_objects_size = 0; #else ReportMallinfoStats(/*pmd=*/nullptr, &total_virtual_size, &resident_size, &allocated_objects_size, &allocated_objects_count); diff --git a/www/chromium/files/patch-base_trace__event_process__memory__dump.cc b/www/chromium/files/patch-base_trace__event_process__memory__dump.cc index 4bb28bf4429c..375994964dc7 100644 --- a/www/chromium/files/patch-base_trace__event_process__memory__dump.cc +++ b/www/chromium/files/patch-base_trace__event_process__memory__dump.cc @@ -1,20 +1,29 @@ ---- base/trace_event/process_memory_dump.cc.orig 2025-03-05 08:14:56 UTC +--- base/trace_event/process_memory_dump.cc.orig 2025-08-07 06:57:29 UTC +++ base/trace_event/process_memory_dump.cc +@@ -47,7 +47,7 @@ + #include + #endif + +-#if BUILDFLAG(IS_FUCHSIA) ++#if BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) + #include + + #include "base/notreached.h" @@ -119,7 +119,7 @@ std::optional ProcessMemoryDump::CountResident #if BUILDFLAG(IS_WIN) auto vec = base::HeapArray::WithSize(max_vec_size); -#elif BUILDFLAG(IS_APPLE) +#elif BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_BSD) auto vec = base::HeapArray::WithSize(max_vec_size); #elif BUILDFLAG(IS_POSIX) || BUILDFLAG(IS_FUCHSIA) auto vec = base::HeapArray::WithSize(max_vec_size); @@ -143,7 +143,7 @@ std::optional ProcessMemoryDump::CountResident for (size_t i = 0; i < page_count; i++) { resident_page_count += vec[i].VirtualAttributes.Valid; } -#elif BUILDFLAG(IS_FUCHSIA) +#elif BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) // TODO(crbug.com/42050620): Implement counting resident bytes. // For now, log and avoid unused variable warnings. NOTIMPLEMENTED_LOG_ONCE(); diff --git a/www/chromium/files/patch-build_config_BUILDCONFIG.gn b/www/chromium/files/patch-build_config_BUILDCONFIG.gn index 3749850480a4..e52328c8c154 100644 --- a/www/chromium/files/patch-build_config_BUILDCONFIG.gn +++ b/www/chromium/files/patch-build_config_BUILDCONFIG.gn @@ -1,45 +1,45 @@ ---- build/config/BUILDCONFIG.gn.orig 2025-07-02 06:08:04 UTC +--- build/config/BUILDCONFIG.gn.orig 2025-08-07 06:57:29 UTC +++ build/config/BUILDCONFIG.gn @@ -136,7 +136,8 @@ declare_args() { is_official_build = false # Set to true when compiling with the Clang compiler. - is_clang = current_os != "linux" || + is_clang = current_os != "linux" || current_os == "openbsd" || + current_os == "freebsd" || (current_cpu != "s390x" && current_cpu != "s390" && current_cpu != "ppc64" && current_cpu != "ppc" && current_cpu != "mips" && current_cpu != "mips64" && -@@ -235,6 +236,10 @@ if (host_toolchain == "") { +@@ -242,6 +243,10 @@ if (host_toolchain == "") { host_toolchain = "//build/toolchain/aix:$host_cpu" } else if (host_os == "zos") { host_toolchain = "//build/toolchain/zos:$host_cpu" + } else if (host_os == "openbsd") { + host_toolchain = "//build/toolchain/openbsd:clang_$host_cpu" + } else if (host_os == "freebsd") { + host_toolchain = "//build/toolchain/freebsd:clang_$host_cpu" } else { assert(false, "Unsupported host_os: $host_os") } -@@ -284,6 +289,8 @@ if (target_os == "android") { +@@ -291,6 +296,8 @@ if (target_os == "android") { assert( false, "emscripten is not a supported target_os. It is available only as secondary toolchain.") +} else if (target_os == "openbsd" || target_os == "freebsd") { + _default_toolchain = host_toolchain } else { assert(false, "Unsupported target_os: $target_os") } -@@ -318,7 +325,11 @@ is_android = current_os == "android" +@@ -325,7 +332,11 @@ is_android = current_os == "android" is_chromeos = current_os == "chromeos" is_fuchsia = current_os == "fuchsia" is_ios = current_os == "ios" -is_linux = current_os == "linux" +is_linux = current_os == "linux" || current_os == "openbsd" || + current_os == "freebsd" +is_openbsd = current_os == "openbsd" +is_freebsd = current_os == "freebsd" +is_bsd = current_os == "openbsd" || current_os == "freebsd" is_mac = current_os == "mac" is_nacl = current_os == "nacl" is_wasm = current_os == "emscripten" diff --git a/www/chromium/files/patch-build_config_clang_BUILD.gn b/www/chromium/files/patch-build_config_clang_BUILD.gn index 00cd3dbbf1cb..d3d9282fe0d3 100644 --- a/www/chromium/files/patch-build_config_clang_BUILD.gn +++ b/www/chromium/files/patch-build_config_clang_BUILD.gn @@ -1,16 +1,16 @@ ---- build/config/clang/BUILD.gn.orig 2025-07-02 06:08:04 UTC +--- build/config/clang/BUILD.gn.orig 2025-08-07 06:57:29 UTC +++ build/config/clang/BUILD.gn -@@ -263,7 +263,12 @@ template("clang_lib") { +@@ -265,7 +265,12 @@ template("clang_lib") { # Adds a dependency on the Clang runtime library clang_rt.builtins. clang_lib("compiler_builtins") { - if (is_mac) { + if (is_bsd) { + # Since there's no Rust in the toolchain, there's no concern that we'll use + # the Rust stdlib's intrinsics here. + # + # Don't define libname which makes this target do nothing. + } else if (is_mac) { libname = "osx" } else if (is_ios) { if (target_platform == "iphoneos") { diff --git a/www/chromium/files/patch-build_config_compiler_BUILD.gn b/www/chromium/files/patch-build_config_compiler_BUILD.gn index dcf99de92f05..3791b3b71264 100644 --- a/www/chromium/files/patch-build_config_compiler_BUILD.gn +++ b/www/chromium/files/patch-build_config_compiler_BUILD.gn @@ -1,149 +1,149 @@ ---- build/config/compiler/BUILD.gn.orig 2025-07-02 06:08:04 UTC +--- build/config/compiler/BUILD.gn.orig 2025-08-07 06:57:29 UTC +++ build/config/compiler/BUILD.gn @@ -199,7 +199,7 @@ declare_args() { # This greatly reduces the size of debug builds, at the cost of # debugging information which is required by some specialized # debugging tools. - simple_template_names = is_clang && !is_nacl && !is_win && !is_apple + simple_template_names = is_clang && !is_nacl && !is_win && !is_apple && !is_bsd } declare_args() { -@@ -256,13 +256,16 @@ config("default_include_dirs") { +@@ -248,7 +248,7 @@ assert(!(llvm_force_head_revision && use_remoteexec && + # Since this is referenced both when passing the file and when deciding which + # warnings to enable, store it in a separate variable here. + use_clang_warning_suppression_file = +- !is_nacl && default_toolchain != "//build/toolchain/cros:target" && ++ !is_bsd && !is_nacl && default_toolchain != "//build/toolchain/cros:target" && + !llvm_android_mainline && is_clang && clang_warning_suppression_file != "" + + # default_include_dirs --------------------------------------------------------- +@@ -266,13 +266,16 @@ config("default_include_dirs") { # Compiler instrumentation can introduce dependencies in DSOs to symbols in # the executable they are loaded into, so they are unresolved at link-time. config("no_unresolved_symbols") { - if (!using_sanitizer && + if (!using_sanitizer && !is_bsd && (is_linux || is_chromeos || is_android || is_fuchsia)) { ldflags = [ "-Wl,-z,defs", "-Wl,--as-needed", ] } + if (current_cpu == "x86" && is_openbsd) { + ldflags = [ "-Wl,-z,notext", "-Wl,--strip-all" ] + } } # compiler --------------------------------------------------------------------- -@@ -521,6 +524,10 @@ config("compiler") { +@@ -531,6 +534,10 @@ config("compiler") { } } + if (is_openbsd) { + ldflags += [ "-Wl,-z,wxneeded" ] + } + # Linux-specific compiler flags setup. # ------------------------------------ if (use_icf && (!is_apple || use_lld)) { -@@ -581,7 +588,7 @@ config("compiler") { +@@ -602,7 +609,7 @@ config("compiler") { ldflags += [ "-Wl,-z,keep-text-section-prefix" ] } - if (is_clang && !is_nacl) { + if (is_clang && !is_nacl && !is_bsd) { cflags += [ "-fcrash-diagnostics-dir=" + clang_diagnostic_dir ] if (save_reproducers_on_lld_crash && use_lld) { ldflags += [ -@@ -1233,7 +1240,7 @@ config("compiler_cpu_abi") { +@@ -1254,7 +1261,7 @@ config("compiler_cpu_abi") { # simplicity we always explicitly set the architecture. if (current_cpu == "x64") { if (is_clang && !is_android && !is_nacl && !is_fuchsia && - !is_chromeos_device) { + !is_chromeos_device && !is_bsd) { cflags += [ "--target=x86_64-unknown-linux-gnu" ] ldflags += [ "--target=x86_64-unknown-linux-gnu" ] } else { -@@ -1242,7 +1249,7 @@ config("compiler_cpu_abi") { +@@ -1263,7 +1270,7 @@ config("compiler_cpu_abi") { } cflags += [ "-msse3" ] } else if (current_cpu == "x86") { - if (is_clang && !is_android && !is_nacl && !is_chromeos_device) { + if (is_clang && !is_android && !is_nacl && !is_chromeos_device && !is_bsd) { cflags += [ "--target=i386-unknown-linux-gnu" ] ldflags += [ "--target=i386-unknown-linux-gnu" ] } else { -@@ -1256,7 +1263,7 @@ config("compiler_cpu_abi") { +@@ -1277,7 +1284,7 @@ config("compiler_cpu_abi") { ] } } else if (current_cpu == "arm") { - if (is_clang && !is_android && !is_nacl && !is_chromeos_device) { + if (is_clang && !is_android && !is_nacl && !is_chromeos_device && !is_bsd) { cflags += [ "--target=arm-linux-gnueabihf" ] ldflags += [ "--target=arm-linux-gnueabihf" ] } -@@ -1271,7 +1278,7 @@ config("compiler_cpu_abi") { +@@ -1292,7 +1299,7 @@ config("compiler_cpu_abi") { } } else if (current_cpu == "arm64") { if (is_clang && !is_android && !is_nacl && !is_fuchsia && - !is_chromeos_device) { + !is_chromeos_device && !is_bsd) { cflags += [ "--target=aarch64-linux-gnu" ] ldflags += [ "--target=aarch64-linux-gnu" ] } -@@ -1617,7 +1624,7 @@ config("compiler_deterministic") { +@@ -1638,7 +1645,7 @@ config("compiler_deterministic") { # different build directory like "out/feature_a" and "out/feature_b" if # we build same files with same compile flag. # Other paths are already given in relative, no need to normalize them. - if (is_nacl) { + if (is_nacl || is_bsd) { # TODO(https://crbug.com/1231236): Use -ffile-compilation-dir= here. cflags += [ "-Xclang", -@@ -1683,7 +1690,7 @@ config("compiler_deterministic") { +@@ -1704,7 +1711,7 @@ config("compiler_deterministic") { } config("clang_revision") { - if (is_clang && clang_base_path == default_clang_base_path && + if (is_clang && !is_bsd && clang_base_path == default_clang_base_path && current_os != "zos") { _perform_consistency_checks = current_toolchain == default_toolchain if (llvm_force_head_revision) { -@@ -1775,7 +1782,7 @@ config("clang_revision") { - # e.g. by setting in the the project's .gn file. - config("clang_warning_suppression") { - # Some build configs use older versions of clang that don't support WSMs -- if (!is_nacl && default_toolchain != "//build/toolchain/cros:target" && -+ if (!is_bsd && !is_nacl && default_toolchain != "//build/toolchain/cros:target" && - !llvm_android_mainline && is_clang && - clang_warning_suppression_file != "") { - from_build_root = -@@ -2134,9 +2141,6 @@ config("default_warnings") { +@@ -2139,9 +2146,6 @@ config("default_warnings") { # TODO(crbug.com/40284799): Fix and re-enable. "-Wno-thread-safety-reference-return", - - # TODO(crbug.com/376641662): Fix and re-enable. - "-Wno-nontrivial-memcall", ] cflags_cc += [ -@@ -2920,7 +2924,7 @@ config("afdo_optimize_size") { +@@ -2946,7 +2950,7 @@ config("afdo_optimize_size") { # There are some targeted places that AFDO regresses, so we provide a separate # config to allow AFDO to be disabled per-target. config("afdo") { - if (is_clang) { + if (is_clang && !is_bsd) { cflags = [] if (clang_emit_debug_info_for_profiling) { # Add the following flags to generate debug info for profiling. -@@ -2947,7 +2951,7 @@ config("afdo") { +@@ -2973,7 +2977,7 @@ config("afdo") { cflags += [ "-Wno-backend-plugin" ] inputs = [ _clang_sample_profile ] } - } else if (auto_profile_path != "" && is_a_target_toolchain) { + } else if (auto_profile_path != "" && is_a_target_toolchain && !is_bsd) { cflags = [ "-fauto-profile=${auto_profile_path}" ] inputs = [ auto_profile_path ] } -@@ -3136,7 +3140,7 @@ config("symbols") { +@@ -3162,7 +3166,7 @@ config("symbols") { cflags += [ "-gomit-unreferenced-methods" ] } - if (is_clang && (!is_nacl || is_nacl_saigo)) { + if (is_clang && (!is_nacl || is_nacl_saigo) && !is_bsd) { if (is_apple) { # TODO(crbug.com/40117949): Investigate missing debug info on mac. # Make sure we don't use constructor homing on mac. diff --git a/www/chromium/files/patch-build_linux_strip__binary.py b/www/chromium/files/patch-build_linux_strip__binary.py index 9dd3c051630b..632f6ee31a47 100644 --- a/www/chromium/files/patch-build_linux_strip__binary.py +++ b/www/chromium/files/patch-build_linux_strip__binary.py @@ -1,10 +1,10 @@ ---- build/linux/strip_binary.py.orig 2022-02-07 13:39:41 UTC +--- build/linux/strip_binary.py.orig 2025-08-07 06:57:29 UTC +++ build/linux/strip_binary.py @@ -10,6 +10,7 @@ import sys - def main(): + def main() -> int: + return 0 - argparser = argparse.ArgumentParser(description='eu-strip binary.') - - argparser.add_argument('--eu-strip-binary-path', help='eu-strip path.') + parser = argparse.ArgumentParser(description="Strip binary using LLVM tools.") + parser.add_argument("--llvm-strip-binary-path", + help="Path to llvm-strip executable.") diff --git a/www/chromium/files/patch-chrome_app_chrome__main__delegate.cc b/www/chromium/files/patch-chrome_app_chrome__main__delegate.cc index 39a606b494bb..f1761d090bbe 100644 --- a/www/chromium/files/patch-chrome_app_chrome__main__delegate.cc +++ b/www/chromium/files/patch-chrome_app_chrome__main__delegate.cc @@ -1,147 +1,147 @@ ---- chrome/app/chrome_main_delegate.cc.orig 2025-07-02 06:08:04 UTC +--- chrome/app/chrome_main_delegate.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/app/chrome_main_delegate.cc -@@ -147,7 +147,7 @@ +@@ -146,7 +146,7 @@ #include "components/webui/about/credit_utils.h" #endif -#if BUILDFLAG(ENABLE_NACL) && (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)) +#if BUILDFLAG(ENABLE_NACL) && (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)) && !BUILDFLAG(IS_BSD) #include "components/nacl/common/nacl_paths.h" #include "components/nacl/zygote/nacl_fork_delegate_linux.h" #endif -@@ -187,17 +187,17 @@ +@@ -186,17 +186,17 @@ #include "v8/include/v8.h" #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "base/environment.h" #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "base/nix/scoped_xdg_activation_token_injector.h" #include "ui/linux/display_server_utils.h" #endif #if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_ANDROID) || \ - BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "chrome/browser/policy/policy_path_parser.h" #include "components/crash/core/app/crashpad.h" #endif -@@ -315,7 +315,7 @@ void AdjustLinuxOOMScore(const std::string& process_ty +@@ -314,7 +314,7 @@ void AdjustLinuxOOMScore(const std::string& process_ty // and resources loaded. bool SubprocessNeedsResourceBundle(const std::string& process_type) { return -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // The zygote process opens the resources for the renderers. process_type == switches::kZygoteProcess || #endif -@@ -398,7 +398,7 @@ bool HandleVersionSwitches(const base::CommandLine& co +@@ -397,7 +397,7 @@ bool HandleVersionSwitches(const base::CommandLine& co return false; } -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Show the man page if --help or -h is on the command line. void HandleHelpSwitches(const base::CommandLine& command_line) { if (command_line.HasSwitch(switches::kHelp) || -@@ -410,7 +410,7 @@ void HandleHelpSwitches(const base::CommandLine& comma +@@ -409,7 +409,7 @@ void HandleHelpSwitches(const base::CommandLine& comma } #endif // BUILDFLAG(IS_LINUX) -#if !BUILDFLAG(IS_MAC) && !BUILDFLAG(IS_ANDROID) +#if !BUILDFLAG(IS_MAC) && !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_BSD) void SIGTERMProfilingShutdown(int signal) { content::Profiling::Stop(); struct sigaction sigact; -@@ -492,7 +492,7 @@ std::optional AcquireProcessSingleton( +@@ -491,7 +491,7 @@ std::optional AcquireProcessSingleton( // process can be exited. ChromeProcessSingleton::CreateInstance(user_data_dir); -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Read the xdg-activation token and set it in the command line for the // duration of the notification in order to ensure this is propagated to an // already running browser process if it exists. -@@ -570,7 +570,7 @@ void InitializeUserDataDir(base::CommandLine* command_ +@@ -569,7 +569,7 @@ void InitializeUserDataDir(base::CommandLine* command_ std::string process_type = command_line->GetSwitchValueASCII(switches::kProcessType); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // On Linux, Chrome does not support running multiple copies under different // DISPLAYs, so the profile directory can be specified in the environment to // support the virtual desktop use-case. -@@ -668,7 +668,7 @@ void RecordMainStartupMetrics(const StartupTimestamps& +@@ -667,7 +667,7 @@ void RecordMainStartupMetrics(const StartupTimestamps& #endif #if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Record the startup process creation time on supported platforms. On Android // this is recorded in ChromeMainDelegateAndroid. startup_metric_utils::GetCommon().RecordStartupProcessCreationTime( -@@ -827,7 +827,7 @@ std::optional ChromeMainDelegate::PostEarlyInitia +@@ -826,7 +826,7 @@ std::optional ChromeMainDelegate::PostEarlyInitia #if BUILDFLAG(IS_OZONE) // Initialize Ozone platform and add required feature flags as per platform's // properties. -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) ui::SetOzonePlatformForLinuxIfNeeded(*base::CommandLine::ForCurrentProcess()); #endif ui::OzonePlatform::PreEarlyInitialization(); -@@ -982,7 +982,7 @@ void ChromeMainDelegate::CommonEarlyInitialization() { +@@ -981,7 +981,7 @@ void ChromeMainDelegate::CommonEarlyInitialization() { const bool is_canary_dev = IsCanaryDev(); const bool emit_crashes = #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_WIN) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) is_canary_dev; #else false; -@@ -1130,7 +1130,7 @@ std::optional ChromeMainDelegate::BasicStartupCom +@@ -1129,7 +1129,7 @@ std::optional ChromeMainDelegate::BasicStartupCom return 0; // Got a --credits switch; exit with a success error code. } -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // This will directly exit if the user asked for help. HandleHelpSwitches(command_line); #endif -@@ -1155,7 +1155,7 @@ std::optional ChromeMainDelegate::BasicStartupCom +@@ -1154,7 +1154,7 @@ std::optional ChromeMainDelegate::BasicStartupCom ash::RegisterPathProvider(); chromeos::dbus_paths::RegisterPathProvider(); #endif -#if BUILDFLAG(ENABLE_NACL) && (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)) +#if BUILDFLAG(ENABLE_NACL) && (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD)) nacl::RegisterPathProvider(); #endif -@@ -1439,7 +1439,7 @@ void ChromeMainDelegate::PreSandboxStartup() { +@@ -1445,7 +1445,7 @@ void ChromeMainDelegate::PreSandboxStartup() { CHECK(!loaded_locale.empty()) << "Locale could not be found for " << locale; } -#if BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_MAC) && !BUILDFLAG(IS_BSD) // Zygote needs to call InitCrashReporter() in RunZygote(). if (process_type != switches::kZygoteProcess && !command_line.HasSwitch(switches::kDisableCrashpadForTesting)) { -@@ -1527,13 +1527,13 @@ std::variant ChromeM +@@ -1533,13 +1533,13 @@ std::variant ChromeM #else #if BUILDFLAG(IS_MAC) || (BUILDFLAG(ENABLE_NACL) && !BUILDFLAG(IS_LINUX) && \ - !BUILDFLAG(IS_CHROMEOS)) + !BUILDFLAG(IS_CHROMEOS) && !BUILDFLAG(IS_BSD)) static const MainFunction kMainFunctions[] = { #if BUILDFLAG(IS_MAC) {switches::kRelauncherProcess, mac_relauncher::internal::RelauncherMain}, {switches::kCodeSignCloneCleanupProcess, code_sign_clone_manager::internal::ChromeCodeSignCloneCleanupMain}, -#elif BUILDFLAG(ENABLE_NACL) && !BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CHROMEOS) +#elif BUILDFLAG(ENABLE_NACL) && !BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CHROMEOS) && !BUILDFLAG(IS_BSD) // This entry is not needed on Linux, where the NaCl loader // process is launched via nacl_helper instead. {switches::kNaClLoaderProcess, NaClMain}, diff --git a/www/chromium/files/patch-chrome_browser_BUILD.gn b/www/chromium/files/patch-chrome_browser_BUILD.gn index a373b591fbb6..92d40613e379 100644 --- a/www/chromium/files/patch-chrome_browser_BUILD.gn +++ b/www/chromium/files/patch-chrome_browser_BUILD.gn @@ -1,16 +1,16 @@ ---- chrome/browser/BUILD.gn.orig 2025-07-02 06:08:04 UTC +--- chrome/browser/BUILD.gn.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/BUILD.gn -@@ -7008,6 +7008,13 @@ static_library("browser") { +@@ -7056,6 +7056,13 @@ static_library("browser") { [ "//third_party/webrtc/modules/desktop_capture:pipewire_config" ] } + if (is_bsd) { + sources -= [ + "metrics/bluetooth_metrics_provider.cc", + "metrics/bluetooth_metrics_provider.h", + ] + } + if (use_dbus) { sources += [ "dbus_memory_pressure_evaluator_linux.cc", diff --git a/www/chromium/files/patch-chrome_browser_about__flags.cc b/www/chromium/files/patch-chrome_browser_about__flags.cc index fc138c40b813..b559f20edefc 100644 --- a/www/chromium/files/patch-chrome_browser_about__flags.cc +++ b/www/chromium/files/patch-chrome_browser_about__flags.cc @@ -1,406 +1,415 @@ ---- chrome/browser/about_flags.cc.orig 2025-07-02 06:08:04 UTC +--- chrome/browser/about_flags.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/about_flags.cc -@@ -263,7 +263,7 @@ +@@ -265,7 +265,7 @@ #include "extensions/common/extension_features.h" #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "base/allocator/buildflags.h" #endif -@@ -353,7 +353,7 @@ +@@ -354,7 +354,7 @@ #include "device/vr/public/cpp/switches.h" #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "ui/ozone/public/ozone_switches.h" #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -@@ -363,7 +363,7 @@ +@@ -364,7 +364,7 @@ #include "chrome/browser/win/mica_titlebar.h" #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) #include "chrome/browser/contextual_cueing/contextual_cueing_features.h" // nogncheck #include "chrome/browser/enterprise/profile_management/profile_management_features.h" #include "chrome/browser/enterprise/webstore/features.h" -@@ -375,7 +375,7 @@ +@@ -376,7 +376,7 @@ #include "components/user_education/common/user_education_features.h" // nogncheck #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "chrome/browser/ui/ui_features.h" #include "ui/base/ui_base_features.h" #endif -@@ -427,7 +427,7 @@ const FeatureEntry::Choice kPullToRefreshChoices[] = { - #endif // USE_AURA - - #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || \ -- BUILDFLAG(IS_CHROMEOS) -+ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - - const FeatureEntry::FeatureParam kLocalNetworkAccessChecksBlock[] = { - {"LocalNetworkAccessChecksWarn", "false"}}; -@@ -543,7 +543,7 @@ const FeatureEntry::FeatureVariation kDXGIWaitableSwap +@@ -537,7 +537,7 @@ const FeatureEntry::FeatureVariation kDXGIWaitableSwap {"Max 3 Frames", &kDXGIWaitableSwapChain3Frames, 1, nullptr}}; #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) const FeatureEntry::Choice kOzonePlatformHintRuntimeChoices[] = { {flag_descriptions::kOzonePlatformHintChoiceDefault, "", ""}, {flag_descriptions::kOzonePlatformHintChoiceAuto, -@@ -900,6 +900,26 @@ const FeatureEntry::FeatureVariation +@@ -958,6 +958,26 @@ const FeatureEntry::FeatureVariation std::size(kWebIdentityDigitalIdentityCredentialHighRiskDialogParam), nullptr}}; +#if BUILDFLAG(IS_BSD) +const FeatureEntry::FeatureParam kAudioBackendPulseAudio[] = { + { "audio-backend", "pulseaudio" }}; +const FeatureEntry::FeatureParam kAudioBackendSndio[] = { + { "audio-backend", "sndio" }}; +const FeatureEntry::FeatureParam kAudioBackendAlsa[] = { + { "audio-backend", "alsa" }}; +const FeatureEntry::FeatureVariation + kAudioBackendVariations[] = { + {"using PulseAudio by default if available", kAudioBackendPulseAudio, + std::size(kAudioBackendPulseAudio), + nullptr}, + {"using sndio by default if available", kAudioBackendSndio, + std::size(kAudioBackendSndio), + nullptr}, + {"using ALSA by default if available", kAudioBackendAlsa, + std::size(kAudioBackendAlsa), + nullptr}}; +#endif + const FeatureEntry::FeatureParam kClipboardMaximumAge60Seconds[] = { {"UIClipboardMaximumAge", "60"}}; const FeatureEntry::FeatureParam kClipboardMaximumAge90Seconds[] = { -@@ -1292,7 +1312,7 @@ constexpr FeatureEntry::FeatureVariation +@@ -1331,7 +1351,7 @@ constexpr FeatureEntry::FeatureVariation #endif // !BUILDFLAG(IS_ANDROID) #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_WIN) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) const FeatureEntry::FeatureParam kHistoryEmbeddingsAtKeywordAcceleration[]{ {"AtKeywordAcceleration", "true"}, }; -@@ -1330,7 +1350,7 @@ const FeatureEntry::FeatureVariation kRemotePageMetada +@@ -1369,7 +1389,7 @@ const FeatureEntry::FeatureVariation kRemotePageMetada }; #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_WIN) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) // A limited number of combinations of the rich autocompletion params. const FeatureEntry::FeatureParam kOmniboxRichAutocompletionAggressive1[] = { -@@ -3826,7 +3846,7 @@ const FeatureEntry::FeatureVariation +@@ -3888,7 +3908,7 @@ const FeatureEntry::FeatureVariation #endif // BUILDFLAG(IS_ANDROID) #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) const flags_ui::FeatureEntry::FeatureParam kPwaNavigationCapturingDefaultOn[] = {{"link_capturing_state", "on_by_default"}}; const flags_ui::FeatureEntry::FeatureParam kPwaNavigationCapturingDefaultOff[] = -@@ -4261,7 +4281,7 @@ const FeatureEntry::FeatureVariation kSkiaGraphiteVari +@@ -4323,7 +4343,7 @@ const FeatureEntry::FeatureVariation kSkiaGraphiteVari std::size(kSkiaGraphite_DebugLabelsEnabled), nullptr}, }; -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) const FeatureEntry::FeatureParam kTranslationAPI_SkipLanguagePackLimit[] = { {"TranslationAPIAcceptLanguagesCheck", "false"}, {"TranslationAPILimitLanguagePackCount", "false"}}; -@@ -4321,7 +4341,7 @@ const FeatureEntry::FeatureVariation +@@ -4364,7 +4384,7 @@ const FeatureEntry::FeatureVariation 1, nullptr}, }; -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) const FeatureEntry::FeatureParam kContextualCueingEnabledNoEngagementCap[] = { {"BackoffTime", "0h"}, {"BackoffMultiplierBase", "0.0"}, -@@ -5264,7 +5284,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -5399,7 +5419,7 @@ const FeatureEntry kFeatureEntries[] = { }, #endif // BUILDFLAG(IS_WIN) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) { "fluent-overlay-scrollbars", flag_descriptions::kFluentOverlayScrollbarsName, -@@ -5555,7 +5575,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -5700,7 +5720,7 @@ const FeatureEntry kFeatureEntries[] = { flag_descriptions::kEnableIsolatedWebAppDevModeName, flag_descriptions::kEnableIsolatedWebAppDevModeDescription, kOsDesktop, FEATURE_VALUE_TYPE(features::kIsolatedWebAppDevMode)}, -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) {"enable-iwa-key-distribution-component", flag_descriptions::kEnableIwaKeyDistributionComponentName, flag_descriptions::kEnableIwaKeyDistributionComponentDescription, -@@ -5780,7 +5800,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -5920,7 +5940,7 @@ const FeatureEntry kFeatureEntries[] = { FEATURE_VALUE_TYPE(media::kUseSCContentSharingPicker)}, #endif // BUILDFLAG(IS_MAC) -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) {"pulseaudio-loopback-for-cast", flag_descriptions::kPulseaudioLoopbackForCastName, flag_descriptions::kPulseaudioLoopbackForCastDescription, kOsLinux, -@@ -5821,6 +5841,16 @@ const FeatureEntry kFeatureEntries[] = { +@@ -5961,6 +5981,16 @@ const FeatureEntry kFeatureEntries[] = { flag_descriptions::kWaylandSessionManagementName, flag_descriptions::kWaylandSessionManagementDescription, kOsLinux, FEATURE_VALUE_TYPE(features::kWaylandSessionManagement)}, + +#if BUILDFLAG(IS_BSD) + {"audio-backend", + flag_descriptions::kAudioBackendName, + flag_descriptions::kAudioBackendDescription, kOsLinux, + FEATURE_WITH_PARAMS_VALUE_TYPE( + media::kAudioBackend, + kAudioBackendVariations, + "AudioBackend")}, +#endif #endif // BUILDFLAG(IS_LINUX) #if BUILDFLAG(ENABLE_VR) -@@ -6709,7 +6739,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -6880,7 +6910,7 @@ const FeatureEntry kFeatureEntries[] = { "MlUrlScoring")}, #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_WIN) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) {"contextual-search-box-uses-contextual-search-provider", flag_descriptions::kContextualSearchBoxUsesContextualSearchProviderName, flag_descriptions:: -@@ -7061,7 +7091,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -7245,7 +7275,7 @@ const FeatureEntry kFeatureEntries[] = { kNumSrpZpsRelatedSearches, "PowerTools")}, #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_WIN) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) {"history-embeddings", flag_descriptions::kHistoryEmbeddingsName, flag_descriptions::kHistoryEmbeddingsDescription, kOsDesktop, FEATURE_WITH_PARAMS_VALUE_TYPE(history_embeddings::kHistoryEmbeddings, -@@ -7560,7 +7590,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -7761,7 +7791,7 @@ const FeatureEntry kFeatureEntries[] = { FEATURE_VALUE_TYPE(printing::features::kAddPrinterViaPrintscanmgr)}, #endif // BUILDFLAG(IS_CHROMEOS) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) {"cups-ipp-printing-backend", flag_descriptions::kCupsIppPrintingBackendName, flag_descriptions::kCupsIppPrintingBackendDescription, kOsDesktop, -@@ -7851,7 +7881,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -8061,7 +8091,7 @@ const FeatureEntry kFeatureEntries[] = { flag_descriptions::kSupportToolScreenshotDescription, kOsDesktop, FEATURE_VALUE_TYPE(features::kSupportToolScreenshot)}, -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) {"wasm-tts-component-updater-enabled", flag_descriptions::kWasmTtsComponentUpdaterEnabledName, flag_descriptions::kWasmTtsComponentUpdaterEnabledDescription, kOsDesktop, -@@ -8523,7 +8553,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -8750,7 +8780,7 @@ const FeatureEntry kFeatureEntries[] = { FEATURE_VALUE_TYPE(media::kGlobalMediaControlsUpdatedUI)}, #endif // !BUILDFLAG(IS_CHROMEOS) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) {"enable-network-service-sandbox", flag_descriptions::kEnableNetworkServiceSandboxName, flag_descriptions::kEnableNetworkServiceSandboxDescription, -@@ -9176,7 +9206,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -9400,7 +9430,7 @@ const FeatureEntry kFeatureEntries[] = { FEATURE_VALUE_TYPE(ash::features::kWallpaperGooglePhotosSharedAlbums)}, #endif // BUILDFLAG(IS_CHROMEOS) -#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) {"enable-get-all-screens-media", flag_descriptions::kGetAllScreensMediaName, flag_descriptions::kGetAllScreensMediaDescription, kOsCrOS | kOsLinux, FEATURE_VALUE_TYPE(blink::features::kGetAllScreensMedia)}, -@@ -9201,7 +9231,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -9425,7 +9455,7 @@ const FeatureEntry kFeatureEntries[] = { flag_descriptions::kGlobalVaapiLockDescription, kOsCrOS | kOsLinux, FEATURE_VALUE_TYPE(media::kGlobalVaapiLock)}, -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) { "ui-debug-tools", flag_descriptions::kUIDebugToolsName, -@@ -9668,7 +9698,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -9892,7 +9922,7 @@ const FeatureEntry kFeatureEntries[] = { #endif #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) {"media-session-enter-picture-in-picture", flag_descriptions::kMediaSessionEnterPictureInPictureName, flag_descriptions::kMediaSessionEnterPictureInPictureDescription, -@@ -9830,7 +9860,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -10065,7 +10095,7 @@ const FeatureEntry kFeatureEntries[] = { flag_descriptions::kReduceTransferSizeUpdatedIPCDescription, kOsAll, FEATURE_VALUE_TYPE(network::features::kReduceTransferSizeUpdatedIPC)}, -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) {"reduce-user-agent-data-linux-platform-version", flag_descriptions::kReduceUserAgentDataLinuxPlatformVersionName, flag_descriptions::kReduceUserAgentDataLinuxPlatformVersionDescription, -@@ -10334,7 +10364,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -10581,7 +10611,7 @@ const FeatureEntry kFeatureEntries[] = { kOsDesktop | kOsAndroid, FEATURE_VALUE_TYPE(features::kProcessPerSiteUpToMainFrameThreshold)}, -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) {"camera-mic-effects", flag_descriptions::kCameraMicEffectsName, flag_descriptions::kCameraMicEffectsDescription, static_cast(kOsMac | kOsWin | kOsLinux), -@@ -10458,7 +10488,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -10712,7 +10742,7 @@ const FeatureEntry kFeatureEntries[] = { FEATURE_VALUE_TYPE(chrome::android::kReadAloudTapToSeek)}, #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) {"third-party-profile-management", flag_descriptions::kThirdPartyProfileManagementName, flag_descriptions::kThirdPartyProfileManagementDescription, -@@ -10487,7 +10517,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -10741,7 +10771,7 @@ const FeatureEntry kFeatureEntries[] = { #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) {"enable-user-navigation-capturing-pwa", flag_descriptions::kPwaNavigationCapturingName, flag_descriptions::kPwaNavigationCapturingDescription, -@@ -11223,7 +11253,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -11481,7 +11511,7 @@ const FeatureEntry kFeatureEntries[] = { flag_descriptions::kCanvasHibernationDescription, kOsAll, FEATURE_VALUE_TYPE(blink::features::kCanvas2DHibernation)}, -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) {"enable-history-sync-optin", flag_descriptions::kEnableHistorySyncOptinName, flag_descriptions::kEnableHistorySyncOptinDescription, -@@ -11334,7 +11364,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -11592,7 +11622,7 @@ const FeatureEntry kFeatureEntries[] = { "HistoryOptInEducationalTipVariations")}, #endif // BUILDFLAG(IS_ANDROID) -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) {"supervised-profile-safe-search", flag_descriptions::kSupervisedProfileSafeSearchName, flag_descriptions::kSupervisedProfileSafeSearchDescription, -@@ -11586,7 +11616,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -11841,7 +11871,7 @@ const FeatureEntry kFeatureEntries[] = { segmentation_platform::features::kSegmentationSurveyPage)}, #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) {"autofill-enable-buy-now-pay-later", flag_descriptions::kAutofillEnableBuyNowPayLaterName, flag_descriptions::kAutofillEnableBuyNowPayLaterDescription, kOsDesktop, -@@ -11687,7 +11717,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -11942,7 +11972,7 @@ const FeatureEntry kFeatureEntries[] = { FEATURE_VALUE_TYPE( autofill::features::kAutofillEnableCardInfoRuntimeRetrieval)}, -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) {"translation-api", flag_descriptions::kTranslationAPIName, flag_descriptions::kTranslationAPIDescription, kOsMac | kOsWin | kOsLinux, FEATURE_WITH_PARAMS_VALUE_TYPE(blink::features::kTranslationAPI, -@@ -11721,7 +11751,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -11976,7 +12006,7 @@ const FeatureEntry kFeatureEntries[] = { FEATURE_VALUE_TYPE( password_manager::features::kPasswordFormClientsideClassifier)}, -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) {"contextual-cueing", flag_descriptions::kContextualCueingName, flag_descriptions::kContextualCueingDescription, kOsLinux | kOsMac | kOsWin, -@@ -12053,7 +12083,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -12310,7 +12340,7 @@ const FeatureEntry kFeatureEntries[] = { FEATURE_VALUE_TYPE(ui::kUseNewEtc1Encoder)}, #endif // !BUILDFLAG(IS_ANDROID) -#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) {"automatic-usb-detach", flag_descriptions::kAutomaticUsbDetachName, flag_descriptions::kAutomaticUsbDetachDescription, kOsAndroid | kOsLinux, FEATURE_VALUE_TYPE(features::kAutomaticUsbDetach)}, -@@ -12103,7 +12133,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -12354,7 +12384,7 @@ const FeatureEntry kFeatureEntries[] = { #endif // !BUILDFLAG(IS_ANDROID) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) {"autofill-enable-amount-extraction-desktop", flag_descriptions::kAutofillEnableAmountExtractionDesktopName, flag_descriptions::kAutofillEnableAmountExtractionDesktopDescription, -@@ -12123,7 +12153,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -12374,7 +12404,7 @@ const FeatureEntry kFeatureEntries[] = { FEATURE_VALUE_TYPE(blink::features::kClipboardContentsId)}, #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) {"autofill-enable-amount-extraction-allowlist-desktop", flag_descriptions::kAutofillEnableAmountExtractionAllowlistDesktopName, flag_descriptions:: -@@ -12241,7 +12271,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -12492,7 +12522,7 @@ const FeatureEntry kFeatureEntries[] = { apps::chrome_app_deprecation::kAllowUserInstalledChromeApps)}, #endif // BUILDFLAG(IS_CHROMEOS) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) {"chrome-web-store-navigation-throttle", flag_descriptions::kChromeWebStoreNavigationThrottleName, flag_descriptions::kChromeWebStoreNavigationThrottleDescription, -@@ -12277,7 +12307,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -12528,7 +12558,7 @@ const FeatureEntry kFeatureEntries[] = { #endif // BUILDFLAG(IS_ANDROID) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ -- BUILDFLAG(IS_CHROMEOS) -+ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - {"autofill-enable-amount-extraction-desktop-logging", - flag_descriptions::kAutofillEnableAmountExtractionDesktopLoggingName, - flag_descriptions:: -@@ -12300,7 +12330,7 @@ const FeatureEntry kFeatureEntries[] = { +- BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) + {"autofill-enable-amount-extraction-testing", + flag_descriptions::kAutofillEnableAmountExtractionTestingName, + flag_descriptions::kAutofillEnableAmountExtractionTestingDescription, +@@ -12543,7 +12573,7 @@ const FeatureEntry kFeatureEntries[] = { flag_descriptions::kEnableWebAppUpdateTokenParsingDescription, kOsAll, FEATURE_VALUE_TYPE(features::kWebAppEnableUpdateTokenParsing)}, -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) {"root-scrollbar-follows-browser-theme", flag_descriptions::kRootScrollbarFollowsTheme, flag_descriptions::kRootScrollbarFollowsThemeDescription, -@@ -12329,7 +12359,7 @@ const FeatureEntry kFeatureEntries[] = { - #endif // BUILDFLAG(IS_ANDROID) - - #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || \ -- BUILDFLAG(IS_CHROMEOS) -+ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - {"local-network-access-check", - flag_descriptions::kLocalNetworkAccessChecksName, - flag_descriptions::kLocalNetworkAccessChecksDescription, kOsDesktop, -@@ -12551,7 +12581,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -12792,7 +12822,7 @@ const FeatureEntry kFeatureEntries[] = { #endif // BUILDFLAG(IS_ANDROID) #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) {"tab-group-home", tabs::flag_descriptions::kTabGroupHomeName, tabs::flag_descriptions::kTabGroupHomeDescription, kOsDesktop, FEATURE_VALUE_TYPE(tabs::kTabGroupHome)}, -@@ -12629,7 +12659,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -12878,7 +12908,7 @@ const FeatureEntry kFeatureEntries[] = { #endif // BUILDFLAG(IS_ANDROID) #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) {"enable-site-search-allow-user-override-policy", flag_descriptions::kEnableSiteSearchAllowUserOverridePolicyName, flag_descriptions::kEnableSiteSearchAllowUserOverridePolicyDescription, +@@ -13008,7 +13038,7 @@ const FeatureEntry kFeatureEntries[] = { + FEATURE_VALUE_TYPE(blink::features::kWebAppInstallation)}, + + #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || \ +- BUILDFLAG(IS_WIN) ++ BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) + {"lens-search-side-panel-default-width-change", + flag_descriptions::kLensSearchSidePanelDefaultWidthChangeName, + flag_descriptions::kLensSearchSidePanelDefaultWidthChangeDescription, +@@ -13032,7 +13062,7 @@ const FeatureEntry kFeatureEntries[] = { + #endif // BUILDFLAG(IS_ANDROID) + + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_CHROMEOS) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + {"autofill-enable-buy-now-pay-later-for-klarna", + flag_descriptions::kAutofillEnableBuyNowPayLaterForKlarnaName, + flag_descriptions::kAutofillEnableBuyNowPayLaterForKlarnaDescription, +@@ -13073,7 +13103,7 @@ const FeatureEntry kFeatureEntries[] = { + autofill::features::kAutofillEnableDownstreamCardAwarenessIph)}, + + #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || \ +- BUILDFLAG(IS_WIN) ++ BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) + {"enable-lens-overlay-back-to-page", + flag_descriptions::kLensOverlayBackToPageName, + flag_descriptions::kLensOverlayBackToPageDescription, kOsDesktop, diff --git a/www/chromium/files/patch-chrome_browser_autocomplete_chrome__autocomplete__scheme__classifier.cc b/www/chromium/files/patch-chrome_browser_autocomplete_chrome__autocomplete__scheme__classifier.cc index a710b0db67b5..37a42422653b 100644 --- a/www/chromium/files/patch-chrome_browser_autocomplete_chrome__autocomplete__scheme__classifier.cc +++ b/www/chromium/files/patch-chrome_browser_autocomplete_chrome__autocomplete__scheme__classifier.cc @@ -1,11 +1,11 @@ ---- chrome/browser/autocomplete/chrome_autocomplete_scheme_classifier.cc.orig 2024-05-21 18:07:39 UTC +--- chrome/browser/autocomplete/chrome_autocomplete_scheme_classifier.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/autocomplete/chrome_autocomplete_scheme_classifier.cc -@@ -88,7 +88,7 @@ ChromeAutocompleteSchemeClassifier::GetInputTypeForSch +@@ -104,7 +104,7 @@ ChromeAutocompleteSchemeClassifier::GetInputTypeForSch return metrics::OmniboxInputType::QUERY; case ExternalProtocolHandler::UNKNOWN: { --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Linux impl of GetApplicationNameForScheme doesn't distinguish // between URL schemes with handers and those without. This will // make the default behaviour be search on Linux. diff --git a/www/chromium/files/patch-chrome_browser_background_extensions_background__mode__manager.cc b/www/chromium/files/patch-chrome_browser_background_extensions_background__mode__manager.cc index c34004f0c8b9..a0052fdad9c9 100644 --- a/www/chromium/files/patch-chrome_browser_background_extensions_background__mode__manager.cc +++ b/www/chromium/files/patch-chrome_browser_background_extensions_background__mode__manager.cc @@ -1,11 +1,11 @@ ---- chrome/browser/background/extensions/background_mode_manager.cc.orig 2025-04-04 08:52:13 UTC +--- chrome/browser/background/extensions/background_mode_manager.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/background/extensions/background_mode_manager.cc -@@ -893,7 +893,7 @@ gfx::ImageSkia GetStatusTrayIcon() { +@@ -879,7 +879,7 @@ gfx::ImageSkia GetStatusTrayIcon() { } return family->CreateExact(size).AsImageSkia(); -#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) return *ui::ResourceBundle::GetSharedInstance().GetImageSkiaNamed( IDR_PRODUCT_LOGO_128); #elif BUILDFLAG(IS_MAC) diff --git a/www/chromium/files/patch-chrome_browser_background_glic_glic__status__icon.cc b/www/chromium/files/patch-chrome_browser_background_glic_glic__status__icon.cc index e705413c540a..3b76127eb94b 100644 --- a/www/chromium/files/patch-chrome_browser_background_glic_glic__status__icon.cc +++ b/www/chromium/files/patch-chrome_browser_background_glic_glic__status__icon.cc @@ -1,38 +1,38 @@ ---- chrome/browser/background/glic/glic_status_icon.cc.orig 2025-05-28 14:55:43 UTC +--- chrome/browser/background/glic/glic_status_icon.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/background/glic/glic_status_icon.cc -@@ -86,7 +86,7 @@ GlicStatusIcon::GlicStatusIcon(GlicController* control +@@ -92,7 +92,7 @@ GlicStatusIcon::GlicStatusIcon(GlicController* control if (!status_icon_) { return; } -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Set a vector icon for proper themeing on Linux. status_icon_->SetIcon( GlicVectorIconManager::GetVectorIcon(IDR_GLIC_BUTTON_VECTOR_ICON)); -@@ -128,7 +128,7 @@ GlicStatusIcon::~GlicStatusIcon() { +@@ -134,7 +134,7 @@ GlicStatusIcon::~GlicStatusIcon() { context_menu_ = nullptr; if (status_icon_) { -#if !BUILDFLAG(IS_LINUX) +#if !BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_BSD) status_icon_->RemoveObserver(this); #endif std::unique_ptr removed_icon = -@@ -234,7 +234,7 @@ void GlicStatusIcon::UpdateHotkey(const ui::Accelerato +@@ -242,7 +242,7 @@ void GlicStatusIcon::UpdateHotkey(const ui::Accelerato } void GlicStatusIcon::UpdateVisibilityOfExitInContextMenu() { -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (context_menu_) { const bool is_visible = BrowserList::GetInstance()->empty(); const std::optional index = -@@ -284,7 +284,7 @@ std::unique_ptr GlicStatusIcon::C +@@ -292,7 +292,7 @@ std::unique_ptr GlicStatusIcon::C menu->AddItem(IDC_GLIC_STATUS_ICON_MENU_SETTINGS, l10n_util::GetStringUTF16(IDS_GLIC_STATUS_ICON_MENU_SETTINGS)); -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) menu->AddSeparator(ui::NORMAL_SEPARATOR); menu->AddItem(IDC_GLIC_STATUS_ICON_MENU_EXIT, l10n_util::GetStringUTF16(IDS_GLIC_STATUS_ICON_MENU_EXIT)); diff --git a/www/chromium/files/patch-chrome_browser_browser__process__impl.cc b/www/chromium/files/patch-chrome_browser_browser__process__impl.cc index c2a2cf579ab0..47611a600803 100644 --- a/www/chromium/files/patch-chrome_browser_browser__process__impl.cc +++ b/www/chromium/files/patch-chrome_browser_browser__process__impl.cc @@ -1,47 +1,47 @@ ---- chrome/browser/browser_process_impl.cc.orig 2025-07-02 06:08:04 UTC +--- chrome/browser/browser_process_impl.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/browser_process_impl.cc @@ -256,7 +256,7 @@ #include "components/enterprise/browser/controller/chrome_browser_cloud_management_controller.h" #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "chrome/browser/browser_features.h" #include "components/os_crypt/async/browser/fallback_linux_key_provider.h" #include "components/os_crypt/async/browser/freedesktop_secret_key_provider.h" @@ -268,7 +268,7 @@ #include "chrome/browser/safe_browsing/safe_browsing_service.h" #endif -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // How often to check if the persistent instance of Chrome needs to restart // to install an update. static const int kUpdateCheckIntervalHours = 6; @@ -1168,7 +1168,7 @@ void BrowserProcessImpl::RegisterPrefs(PrefRegistrySim GoogleUpdateSettings::GetCollectStatsConsent()); registry->RegisterBooleanPref(prefs::kDevToolsRemoteDebuggingAllowed, true); -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) os_crypt_async::SecretPortalKeyProvider::RegisterLocalPrefs(registry); #endif } @@ -1436,7 +1436,7 @@ void BrowserProcessImpl::PreMainMessageLoopRun() { local_state()))); #endif // BUILDFLAG(IS_WIN) -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) base::CommandLine* cmd_line = base::CommandLine::ForCurrentProcess(); if (cmd_line->GetSwitchValueASCII(password_manager::kPasswordStore) != "basic") { -@@ -1720,7 +1720,7 @@ void BrowserProcessImpl::Unpin() { +@@ -1716,7 +1716,7 @@ void BrowserProcessImpl::Unpin() { } // Mac is currently not supported. -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) bool BrowserProcessImpl::IsRunningInBackground() const { // Check if browser is in the background. diff --git a/www/chromium/files/patch-chrome_browser_chrome__browser__field__trials.cc b/www/chromium/files/patch-chrome_browser_chrome__browser__field__trials.cc index b47c86aa1ff6..69f247516c11 100644 --- a/www/chromium/files/patch-chrome_browser_chrome__browser__field__trials.cc +++ b/www/chromium/files/patch-chrome_browser_chrome__browser__field__trials.cc @@ -1,20 +1,20 @@ ---- chrome/browser/chrome_browser_field_trials.cc.orig 2025-05-28 14:55:43 UTC +--- chrome/browser/chrome_browser_field_trials.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/chrome_browser_field_trials.cc -@@ -38,7 +38,7 @@ +@@ -44,7 +44,7 @@ #include "chromeos/ash/services/multidevice_setup/public/cpp/first_run_field_trial.h" #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "base/nix/xdg_util.h" #include "ui/base/ui_base_features.h" #endif // BUILDFLAG(IS_LINUX) -@@ -118,7 +118,7 @@ void ChromeBrowserFieldTrials::RegisterSyntheticTrials - #endif // BUILDFLAG(IS_ANDROID) - } +@@ -100,7 +100,7 @@ void ChromeBrowserFieldTrials::RegisterFeatureOverride + base::FeatureList* feature_list) { + variations::FeatureOverrides feature_overrides(*feature_list); -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - // On Linux/Desktop platform variants, such as ozone/wayland, some features - // might need to be disabled as per OzonePlatform's runtime properties. - // OzonePlatform selection and initialization, in turn, depend on Chrome flags + // On Linux/Desktop platform variants, such as ozone/wayland, some features + // might need to be disabled as per OzonePlatform's runtime properties. + // OzonePlatform selection and initialization, in turn, depend on Chrome flags diff --git a/www/chromium/files/patch-chrome_browser_chrome__browser__field__trials.h b/www/chromium/files/patch-chrome_browser_chrome__browser__field__trials.h deleted file mode 100644 index 34f3d97dc933..000000000000 --- a/www/chromium/files/patch-chrome_browser_chrome__browser__field__trials.h +++ /dev/null @@ -1,11 +0,0 @@ ---- chrome/browser/chrome_browser_field_trials.h.orig 2024-11-14 07:57:23 UTC -+++ chrome/browser/chrome_browser_field_trials.h -@@ -33,7 +33,7 @@ class ChromeBrowserFieldTrials : public variations::Pl - const variations::EntropyProviders& entropy_providers, - base::FeatureList* feature_list) override; - void RegisterSyntheticTrials() override; --#if BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - void RegisterFeatureOverrides(base::FeatureList* feature_list) override; - #endif - diff --git a/www/chromium/files/patch-chrome_browser_chrome__browser__interface__binders.cc b/www/chromium/files/patch-chrome_browser_chrome__browser__interface__binders.cc index d91fb3607a88..60638f90f749 100644 --- a/www/chromium/files/patch-chrome_browser_chrome__browser__interface__binders.cc +++ b/www/chromium/files/patch-chrome_browser_chrome__browser__interface__binders.cc @@ -1,29 +1,29 @@ ---- chrome/browser/chrome_browser_interface_binders.cc.orig 2025-07-02 06:08:04 UTC +--- chrome/browser/chrome_browser_interface_binders.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/chrome_browser_interface_binders.cc -@@ -80,7 +80,7 @@ +@@ -82,7 +82,7 @@ #endif // BUILDFLAG(ENABLE_UNHANDLED_TAP) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "chrome/browser/screen_ai/screen_ai_service_router.h" #include "chrome/browser/screen_ai/screen_ai_service_router_factory.h" #include "chrome/browser/ui/web_applications/sub_apps_service_impl.h" -@@ -363,7 +363,7 @@ void BindMediaFoundationPreferences( +@@ -365,7 +365,7 @@ void BindMediaFoundationPreferences( #endif // BUILDFLAG(IS_WIN) #if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_WIN) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) void BindScreenAIAnnotator( content::RenderFrameHost* frame_host, mojo::PendingReceiver receiver) { -@@ -522,7 +522,7 @@ void PopulateChromeFrameBinders( +@@ -550,7 +550,7 @@ void PopulateChromeFrameBinders( #endif // BUILDFLAG(ENABLE_SPEECH_SERVICE) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) if (base::FeatureList::IsEnabled(blink::features::kDesktopPWAsSubApps) && !render_frame_host->GetParentOrOuterDocument()) { // The service binder will reject non-primary main frames, but we still need diff --git a/www/chromium/files/patch-chrome_browser_chrome__browser__interface__binders__webui.cc b/www/chromium/files/patch-chrome_browser_chrome__browser__interface__binders__webui.cc index 4084d2ee4ef6..1f69b16ef8ff 100644 --- a/www/chromium/files/patch-chrome_browser_chrome__browser__interface__binders__webui.cc +++ b/www/chromium/files/patch-chrome_browser_chrome__browser__interface__binders__webui.cc @@ -1,70 +1,70 @@ ---- chrome/browser/chrome_browser_interface_binders_webui.cc.orig 2025-07-02 06:08:04 UTC +--- chrome/browser/chrome_browser_interface_binders_webui.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/chrome_browser_interface_binders_webui.cc @@ -48,20 +48,20 @@ #include "content/public/browser/web_ui_controller_interface_binder.h" #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "chrome/browser/ui/webui/connectors_internals/connectors_internals.mojom.h" #include "chrome/browser/ui/webui/connectors_internals/connectors_internals_ui.h" #include "ui/webui/resources/cr_components/app_management/app_management.mojom.h" #endif #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_DESKTOP_ANDROID) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_DESKTOP_ANDROID) || BUILDFLAG(IS_BSD) #include "chrome/browser/ui/webui/discards/discards.mojom.h" #include "chrome/browser/ui/webui/discards/discards_ui.h" #include "chrome/browser/ui/webui/discards/site_data.mojom.h" #endif -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "chrome/browser/ui/webui/app_settings/web_app_settings_ui.h" #include "chrome/browser/ui/webui/on_device_translation_internals/on_device_translation_internals_ui.h" #include "chrome/browser/ui/webui/signin/history_sync_optin/history_sync_optin.mojom.h" -@@ -460,7 +460,7 @@ void PopulateChromeWebUIFrameBinders( +@@ -464,7 +464,7 @@ void PopulateChromeWebUIFrameBinders( #endif #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) RegisterWebUIControllerInterfaceBinder< connectors_internals::mojom::PageHandler, enterprise_connectors::ConnectorsInternalsUI>(map); -@@ -471,7 +471,7 @@ void PopulateChromeWebUIFrameBinders( +@@ -475,7 +475,7 @@ void PopulateChromeWebUIFrameBinders( policy::DlpInternalsUI>(map); #endif -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) RegisterWebUIControllerInterfaceBinder< app_management::mojom::PageHandlerFactory, WebAppSettingsUI>(map); -@@ -609,14 +609,14 @@ void PopulateChromeWebUIFrameBinders( +@@ -616,14 +616,14 @@ void PopulateChromeWebUIFrameBinders( HistoryClustersSidePanelUI, NewTabPageUI, BookmarksSidePanelUI>(map); } -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) RegisterWebUIControllerInterfaceBinder(map); #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) RegisterWebUIControllerInterfaceBinder< browser_command::mojom::CommandHandlerFactory, -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) WhatsNewUI, #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) NewTabPageUI>(map); -@@ -1154,7 +1154,7 @@ void PopulateChromeWebUIFrameBinders( +@@ -1166,7 +1166,7 @@ void PopulateChromeWebUIFrameBinders( #endif // BUILDFLAG(IS_CHROMEOS) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_DESKTOP_ANDROID) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_DESKTOP_ANDROID) || BUILDFLAG(IS_BSD) RegisterWebUIControllerInterfaceBinder(map); diff --git a/www/chromium/files/patch-chrome_browser_chrome__browser__main.cc b/www/chromium/files/patch-chrome_browser_chrome__browser__main.cc index 103089671434..5776a71a509c 100644 --- a/www/chromium/files/patch-chrome_browser_chrome__browser__main.cc +++ b/www/chromium/files/patch-chrome_browser_chrome__browser__main.cc @@ -1,115 +1,115 @@ ---- chrome/browser/chrome_browser_main.cc.orig 2025-07-02 06:08:04 UTC +--- chrome/browser/chrome_browser_main.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/chrome_browser_main.cc -@@ -150,7 +150,7 @@ +@@ -152,7 +152,7 @@ #endif #if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) + BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) #include "sql/database.h" #endif -@@ -176,11 +176,11 @@ +@@ -178,11 +178,11 @@ #include "components/enterprise/browser/controller/chrome_browser_cloud_management_controller.h" #endif // BUILDFLAG(IS_CHROMEOS) -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "chrome/browser/first_run/upgrade_util_linux.h" #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) #include "chrome/browser/headless/headless_mode_metrics.h" // nogncheck #include "chrome/browser/headless/headless_mode_util.h" // nogncheck #include "chrome/browser/metrics/desktop_session_duration/desktop_session_duration_tracker.h" -@@ -191,7 +191,7 @@ +@@ -193,7 +193,7 @@ #include "ui/gfx/switches.h" #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) #include "chrome/browser/first_run/upgrade_util.h" #endif -@@ -269,7 +269,7 @@ +@@ -271,7 +271,7 @@ #include "chrome/browser/chrome_process_singleton.h" #include "chrome/browser/ui/startup/startup_browser_creator.h" -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "base/nix/xdg_util.h" #endif #endif // BUILDFLAG(ENABLE_PROCESS_SINGLETON) -@@ -292,7 +292,7 @@ +@@ -294,7 +294,7 @@ namespace { #if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) + BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) constexpr base::FilePath::CharType kMediaHistoryDatabaseName[] = FILE_PATH_LITERAL("Media History"); -@@ -443,7 +443,7 @@ void ProcessSingletonNotificationCallbackImpl( +@@ -445,7 +445,7 @@ void ProcessSingletonNotificationCallbackImpl( } #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Set the global activation token sent as a command line switch by another // browser process. This also removes the switch after use to prevent any side // effects of leaving it in the command line after this point. -@@ -1006,7 +1006,7 @@ int ChromeBrowserMainParts::PreCreateThreadsImpl() { - browser_creator_->AddFirstRunTabs(master_prefs_->new_tabs); - } +@@ -1012,7 +1012,7 @@ int ChromeBrowserMainParts::PreCreateThreadsImpl() { --#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) -+#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) - // Create directory for user-level Native Messaging manifest files. This - // makes it less likely that the directory will be created by third-party - // software with incorrect owner or permission. See crbug.com/725513 . -@@ -1051,7 +1051,7 @@ int ChromeBrowserMainParts::PreCreateThreadsImpl() { + #if BUILDFLAG(ENABLE_EXTENSIONS_CORE) && \ + (BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \ +- BUILDFLAG(IS_ANDROID)) ++ BUILDFLAG(IS_ANDROID)) || BUILDFLAG(IS_BSD) + // Create directory for user-level Native Messaging manifest files. This + // makes it less likely that the directory will be created by third-party + // software with incorrect owner or permission. See crbug.com/725513 . +@@ -1056,7 +1056,7 @@ int ChromeBrowserMainParts::PreCreateThreadsImpl() { #endif // BUILDFLAG(IS_MAC) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) metrics::DesktopSessionDurationTracker::Initialize(); ProfileActivityMetricsRecorder::Initialize(); TouchModeStatsTracker::Initialize( -@@ -1247,7 +1247,7 @@ void ChromeBrowserMainParts::PostProfileInit(Profile* +@@ -1258,7 +1258,7 @@ void ChromeBrowserMainParts::PostProfileInit(Profile* #endif // BUILDFLAG(IS_WIN) #if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) + BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) // Delete the media history database if it still exists. // TODO(crbug.com/40177301): Remove this. base::ThreadPool::PostTask( -@@ -1295,7 +1295,7 @@ void ChromeBrowserMainParts::PostProfileInit(Profile* +@@ -1309,7 +1309,7 @@ void ChromeBrowserMainParts::PostProfileInit(Profile* *UrlLanguageHistogramFactory::GetForBrowserContext(profile)); #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) if (headless::IsHeadlessMode()) { headless::ReportHeadlessActionMetrics(); } -@@ -1404,7 +1404,7 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl( +@@ -1418,7 +1418,7 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl( // In headless mode provide alternate SelectFileDialog factory overriding // any platform specific SelectFileDialog implementation that may have been // set. -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) if (headless::IsHeadlessMode()) { headless::HeadlessSelectFileDialogFactory::SetUp(); } -@@ -1949,7 +1949,7 @@ bool ChromeBrowserMainParts::ProcessSingletonNotificat +@@ -1963,7 +1963,7 @@ bool ChromeBrowserMainParts::ProcessSingletonNotificat // Drop the request if headless mode is in effect or the request is from // a headless Chrome process. -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) if (headless::IsHeadlessMode() || command_line.HasSwitch(switches::kHeadless)) { return false; diff --git a/www/chromium/files/patch-chrome_browser_chrome__content__browser__client.cc b/www/chromium/files/patch-chrome_browser_chrome__content__browser__client.cc index f75ed139169f..86bb1887c3cc 100644 --- a/www/chromium/files/patch-chrome_browser_chrome__content__browser__client.cc +++ b/www/chromium/files/patch-chrome_browser_chrome__content__browser__client.cc @@ -1,147 +1,147 @@ ---- chrome/browser/chrome_content_browser_client.cc.orig 2025-07-02 06:08:04 UTC +--- chrome/browser/chrome_content_browser_client.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/chrome_content_browser_client.cc -@@ -468,7 +468,7 @@ +@@ -474,7 +474,7 @@ #include "components/user_manager/user_manager.h" #include "services/service_manager/public/mojom/interface_provider_spec.mojom.h" #include "storage/browser/file_system/external_mount_points.h" -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "chrome/browser/chrome_browser_main_linux.h" #include "chrome/browser/ui/views/chrome_browser_main_extra_parts_views_linux.h" #elif BUILDFLAG(IS_ANDROID) -@@ -563,7 +563,7 @@ +@@ -570,7 +570,7 @@ #include "services/network/public/mojom/permissions_policy/permissions_policy_feature.mojom.h" #endif // !BUILDFLAG(IS_ANDROID) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "components/crash/core/app/crash_switches.h" #include "components/crash/core/app/crashpad.h" #endif -@@ -572,7 +572,7 @@ +@@ -579,7 +579,7 @@ #include "components/crash/content/browser/crash_handler_host_linux.h" #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) #include "chrome/browser/enterprise/chrome_browser_main_extra_parts_enterprise.h" #endif -@@ -580,7 +580,7 @@ +@@ -587,7 +587,7 @@ #include "chrome/browser/ui/views/chrome_browser_main_extra_parts_views.h" #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "chrome/browser/chrome_browser_main_extra_parts_linux.h" #elif BUILDFLAG(IS_OZONE) #include "chrome/browser/chrome_browser_main_extra_parts_ozone.h" -@@ -1398,7 +1398,7 @@ void ChromeContentBrowserClient::RegisterLocalStatePre - registry->RegisterBooleanPref(prefs::kDeviceNativeClientForceAllowedCache, - false); - #endif // BUILDFLAG(IS_CHROMEOS) +@@ -1409,7 +1409,7 @@ void ChromeContentBrowserClient::RegisterLocalStatePre + registry->RegisterBooleanPref(prefs::kDataURLWhitespacePreservationEnabled, + true); + registry->RegisterBooleanPref(prefs::kEnableUnsafeSwiftShader, false); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) registry->RegisterBooleanPref(prefs::kOutOfProcessSystemDnsResolutionEnabled, true); #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID) -@@ -1617,7 +1617,7 @@ ChromeContentBrowserClient::CreateBrowserMainParts(boo +@@ -1622,7 +1622,7 @@ ChromeContentBrowserClient::CreateBrowserMainParts(boo #elif BUILDFLAG(IS_CHROMEOS) main_parts = std::make_unique( is_integration_test, &startup_data_); -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) main_parts = std::make_unique( is_integration_test, &startup_data_); #elif BUILDFLAG(IS_ANDROID) -@@ -1648,7 +1648,7 @@ ChromeContentBrowserClient::CreateBrowserMainParts(boo +@@ -1653,7 +1653,7 @@ ChromeContentBrowserClient::CreateBrowserMainParts(boo // Construct additional browser parts. Stages are called in the order in // which they are added. #if defined(TOOLKIT_VIEWS) -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) main_parts->AddParts( std::make_unique()); #else -@@ -1665,7 +1665,7 @@ ChromeContentBrowserClient::CreateBrowserMainParts(boo +@@ -1670,7 +1670,7 @@ ChromeContentBrowserClient::CreateBrowserMainParts(boo main_parts->AddParts(std::make_unique()); #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) main_parts->AddParts(std::make_unique()); #elif BUILDFLAG(IS_OZONE) main_parts->AddParts(std::make_unique()); -@@ -1684,7 +1684,7 @@ ChromeContentBrowserClient::CreateBrowserMainParts(boo +@@ -1689,7 +1689,7 @@ ChromeContentBrowserClient::CreateBrowserMainParts(boo chrome::AddMetricsExtraParts(main_parts.get()); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) main_parts->AddParts( std::make_unique< enterprise_util::ChromeBrowserMainExtraPartsEnterprise>()); -@@ -2628,7 +2628,9 @@ void MaybeAppendBlinkSettingsSwitchForFieldTrial( +@@ -2685,7 +2685,9 @@ void MaybeAppendBlinkSettingsSwitchForFieldTrial( void ChromeContentBrowserClient::AppendExtraCommandLineSwitches( base::CommandLine* command_line, int child_process_id) { +#ifdef notyet crash_keys::AppendStringAnnotationsCommandLineSwitch(command_line); +#endif #if BUILDFLAG(IS_MAC) std::unique_ptr client_info = GoogleUpdateSettings::LoadMetricsClientInfo(); -@@ -2637,7 +2639,7 @@ void ChromeContentBrowserClient::AppendExtraCommandLin +@@ -2694,7 +2696,7 @@ void ChromeContentBrowserClient::AppendExtraCommandLin client_info->client_id); } #elif BUILDFLAG(IS_POSIX) -#if !BUILDFLAG(IS_ANDROID) +#if !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_BSD) pid_t pid; if (crash_reporter::GetHandlerSocket(nullptr, &pid)) { command_line->AppendSwitchASCII( -@@ -3005,7 +3007,7 @@ void ChromeContentBrowserClient::AppendExtraCommandLin +@@ -3052,7 +3054,7 @@ void ChromeContentBrowserClient::AppendExtraCommandLin } } -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)) && !BUILDFLAG(IS_BSD) // Opt into a hardened stack canary mitigation if it hasn't already been // force-disabled. if (!browser_command_line.HasSwitch(switches::kChangeStackGuardOnFork)) { -@@ -3994,7 +3996,7 @@ bool UpdatePreferredColorScheme(WebPreferences* web_pr +@@ -4110,7 +4112,7 @@ bool UpdatePreferredColorScheme(WebPreferences* web_pr return old_preferred_color_scheme != web_prefs->preferred_color_scheme; } -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) // Sets the `root_scrollbar_theme_color` web pref if the user has enabled a // custom colored frame for the UI. void UpdateRootScrollbarThemeColor(Profile* profile, -@@ -4631,7 +4633,7 @@ void ChromeContentBrowserClient::OverrideWebPreference +@@ -4748,7 +4750,7 @@ void ChromeContentBrowserClient::OverrideWebPreference UpdatePreferredColorScheme(web_prefs, main_frame_site.GetSiteURL(), web_contents, GetWebTheme()); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) UpdateRootScrollbarThemeColor(profile, web_contents, web_prefs); #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) -@@ -4956,7 +4958,7 @@ void ChromeContentBrowserClient::GetAdditionalFileSyst +@@ -5085,7 +5087,7 @@ void ChromeContentBrowserClient::GetAdditionalFileSyst } } -#if BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_MAC) && !BUILDFLAG(IS_BSD) void ChromeContentBrowserClient::GetAdditionalMappedFilesForChildProcess( const base::CommandLine& command_line, int child_process_id, -@@ -7120,7 +7122,7 @@ bool ChromeContentBrowserClient::ShouldSandboxNetworkS +@@ -7232,7 +7234,7 @@ bool ChromeContentBrowserClient::ShouldSandboxNetworkS bool ChromeContentBrowserClient::ShouldRunOutOfProcessSystemDnsResolution() { // This enterprise policy is supported on Android, but the feature will not be // launched there. -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) // This is possibly called before `g_browser_process` is initialized. PrefService* local_state; if (g_browser_process) { diff --git a/www/chromium/files/patch-chrome_browser_chrome__content__browser__client.h b/www/chromium/files/patch-chrome_browser_chrome__content__browser__client.h index f0a2c6fd2ed0..de4dfee6665a 100644 --- a/www/chromium/files/patch-chrome_browser_chrome__content__browser__client.h +++ b/www/chromium/files/patch-chrome_browser_chrome__content__browser__client.h @@ -1,11 +1,11 @@ ---- chrome/browser/chrome_content_browser_client.h.orig 2025-07-02 06:08:04 UTC +--- chrome/browser/chrome_content_browser_client.h.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/chrome_content_browser_client.h -@@ -577,7 +577,7 @@ class ChromeContentBrowserClient : public content::Con +@@ -587,7 +587,7 @@ class ChromeContentBrowserClient : public content::Con bool IsPluginAllowedToUseDevChannelAPIs( content::BrowserContext* browser_context, const GURL& url) override; -#if BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_MAC) && !BUILDFLAG(IS_BSD) void GetAdditionalMappedFilesForChildProcess( const base::CommandLine& command_line, int child_process_id, diff --git a/www/chromium/files/patch-chrome_browser_chrome__content__browser__client__navigation__throttles.cc b/www/chromium/files/patch-chrome_browser_chrome__content__browser__client__navigation__throttles.cc index 0e9b92fa33a5..627ab33837d2 100644 --- a/www/chromium/files/patch-chrome_browser_chrome__content__browser__client__navigation__throttles.cc +++ b/www/chromium/files/patch-chrome_browser_chrome__content__browser__client__navigation__throttles.cc @@ -1,38 +1,38 @@ ---- chrome/browser/chrome_content_browser_client_navigation_throttles.cc.orig 2025-07-02 06:08:04 UTC +--- chrome/browser/chrome_content_browser_client_navigation_throttles.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/chrome_content_browser_client_navigation_throttles.cc @@ -123,7 +123,7 @@ #include "chrome/browser/captive_portal/captive_portal_service_factory.h" #endif // BUILDFLAG(ENABLE_CAPTIVE_PORTAL_DETECTION) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) #include "chrome/browser/browser_switcher/browser_switcher_navigation_throttle.h" #include "chrome/browser/enterprise/profile_management/oidc_auth_response_capture_navigation_throttle.h" #include "chrome/browser/enterprise/profile_management/profile_management_navigation_throttle.h" -@@ -407,7 +407,7 @@ void CreateAndAddChromeThrottlesForNavigation( +@@ -404,7 +404,7 @@ void CreateAndAddChromeThrottlesForNavigation( TypedNavigationUpgradeThrottle::MaybeCreateAndAdd(registry); } -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) WebAppSettingsNavigationThrottle::MaybeCreateAndAdd(registry); profile_management::ProfileManagementNavigationThrottle::MaybeCreateAndAdd( registry); -@@ -425,7 +425,7 @@ void CreateAndAddChromeThrottlesForNavigation( +@@ -422,7 +422,7 @@ void CreateAndAddChromeThrottlesForNavigation( #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) enterprise_connectors::DeviceTrustNavigationThrottle::MaybeCreateAndAdd( registry); #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || -@@ -457,7 +457,7 @@ void CreateAndAddChromeThrottlesForNavigation( +@@ -454,7 +454,7 @@ void CreateAndAddChromeThrottlesForNavigation( } #endif // BUILDFLAG(SAFE_BROWSING_AVAILABLE) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) browser_switcher::BrowserSwitcherNavigationThrottle::MaybeCreateAndAdd( registry); #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) diff --git a/www/chromium/files/patch-chrome_browser_component__updater_registration.cc b/www/chromium/files/patch-chrome_browser_component__updater_registration.cc index c47015903a39..558ba3715f29 100644 --- a/www/chromium/files/patch-chrome_browser_component__updater_registration.cc +++ b/www/chromium/files/patch-chrome_browser_component__updater_registration.cc @@ -1,35 +1,38 @@ ---- chrome/browser/component_updater/registration.cc.orig 2025-07-02 06:08:04 UTC +--- chrome/browser/component_updater/registration.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/component_updater/registration.cc -@@ -102,7 +102,7 @@ +@@ -96,7 +96,7 @@ #endif // BUILDFLAG(ENABLE_WIDEVINE_CDM_COMPONENT) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ -- BUILDFLAG(IS_CHROMEOS) -+ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) +- BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) #include "components/component_updater/installer_policies/amount_extraction_heuristic_regexes_component_installer.h" #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || - // BUILDFLAG(IS_CHROMEOS) -@@ -115,7 +115,7 @@ + // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) +@@ -109,7 +109,7 @@ #include "chrome/browser/component_updater/lacros_component_remover.h" #endif // BUILDFLAG(IS_CHROMEOS) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "chrome/browser/component_updater/wasm_tts_engine_component_installer.h" #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) -@@ -263,12 +263,12 @@ void RegisterComponentsForUpdate() { +@@ -253,7 +253,7 @@ void RegisterComponentsForUpdate() { RegisterCookieReadinessListComponent(cus); #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) RegisterAmountExtractionHeuristicRegexesComponent(cus); #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || // BUILDFLAG(IS_CHROMEOS) +@@ -265,7 +265,7 @@ void RegisterComponentsForUpdate() { + } + #endif // BUIDLFLAG(IS_ANDROID) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (features::IsWasmTtsComponentUpdaterEnabled()) { RegisterWasmTtsEngineComponent(cus); } diff --git a/www/chromium/files/patch-chrome_browser_component__updater_wasm__tts__engine__component__installer.cc b/www/chromium/files/patch-chrome_browser_component__updater_wasm__tts__engine__component__installer.cc index 7b0728bdadce..60944517f1bb 100644 --- a/www/chromium/files/patch-chrome_browser_component__updater_wasm__tts__engine__component__installer.cc +++ b/www/chromium/files/patch-chrome_browser_component__updater_wasm__tts__engine__component__installer.cc @@ -1,38 +1,56 @@ ---- chrome/browser/component_updater/wasm_tts_engine_component_installer.cc.orig 2025-05-28 14:55:43 UTC +--- chrome/browser/component_updater/wasm_tts_engine_component_installer.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/component_updater/wasm_tts_engine_component_installer.cc @@ -9,7 +9,7 @@ #include "base/logging.h" #include "content/public/browser/browser_thread.h" -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "chrome/browser/accessibility/embedded_a11y_extension_loader.h" #include "chrome/common/extensions/extension_constants.h" #include "ui/accessibility/accessibility_features.h" -@@ -41,7 +41,7 @@ constexpr std::array kWasmTtsEnginePublic +@@ -29,7 +29,7 @@ const base::FilePath::CharType kWorkletProcessorJsFile + FILE_PATH_LITERAL("streaming_worklet_processor.js"); + const base::FilePath::CharType kVoicesJsonFileName[] = + FILE_PATH_LITERAL("voices.json"); +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + const base::FilePath::CharType kManifestV3FileName[] = + FILE_PATH_LITERAL("wasm_tts_manifest_v3.json"); + const base::FilePath::CharType kOffscreenHtmlFileName[] = +@@ -49,7 +49,7 @@ constexpr std::array kWasmTtsEnginePublic const char kWasmTtsEngineManifestName[] = "WASM TTS Engine"; -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) class WasmTTSEngineDirectory { public: static WasmTTSEngineDirectory* Get() { -@@ -111,7 +111,7 @@ void WasmTtsEngineComponentInstallerPolicy::ComponentR +@@ -119,7 +119,7 @@ void WasmTtsEngineComponentInstallerPolicy::ComponentR VLOG(1) << "Component ready, version " << version.GetString() << " in " << install_dir.value(); -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (features::IsWasmTtsComponentUpdaterEnabled() && !features::IsWasmTtsEngineAutoInstallDisabled()) { // Instead of installing the component extension as soon as it is ready, -@@ -166,7 +166,7 @@ void RegisterWasmTtsEngineComponent(ComponentUpdateSer +@@ -137,7 +137,7 @@ void WasmTtsEngineComponentInstallerPolicy::ComponentR + bool WasmTtsEngineComponentInstallerPolicy::VerifyInstallation( + const base::Value::Dict& /* manifest */, + const base::FilePath& install_dir) const { +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + if (features::IsWasmTtsComponentUpdaterV3Enabled()) { + return base::PathExists(install_dir.Append(kManifestV3FileName)) && + base::PathExists(install_dir.Append(kBindingsMainWasmFileName)) && +@@ -186,7 +186,7 @@ void RegisterWasmTtsEngineComponent(ComponentUpdateSer void WasmTtsEngineComponentInstallerPolicy::GetWasmTTSEngineDirectory( base::OnceCallback callback) { -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) WasmTTSEngineDirectory* wasm_directory = WasmTTSEngineDirectory::Get(); wasm_directory->Get(std::move(callback)); #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) diff --git a/www/chromium/files/patch-chrome_browser_download_chrome__download__manager__delegate.cc b/www/chromium/files/patch-chrome_browser_download_chrome__download__manager__delegate.cc index cbfd429fc181..001d307537c3 100644 --- a/www/chromium/files/patch-chrome_browser_download_chrome__download__manager__delegate.cc +++ b/www/chromium/files/patch-chrome_browser_download_chrome__download__manager__delegate.cc @@ -1,29 +1,29 @@ ---- chrome/browser/download/chrome_download_manager_delegate.cc.orig 2025-07-02 06:08:04 UTC +--- chrome/browser/download/chrome_download_manager_delegate.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/download/chrome_download_manager_delegate.cc -@@ -1922,7 +1922,7 @@ void ChromeDownloadManagerDelegate::OnDownloadTargetDe +@@ -1925,7 +1925,7 @@ void ChromeDownloadManagerDelegate::OnDownloadTargetDe bool ChromeDownloadManagerDelegate::IsOpenInBrowserPreferredForFile( const base::FilePath& path) { #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ - BUILDFLAG(IS_MAC) + BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) if (path.MatchesExtension(FILE_PATH_LITERAL(".pdf"))) { return !download_prefs_->ShouldOpenPdfInSystemReader(); } -@@ -2058,7 +2058,7 @@ void ChromeDownloadManagerDelegate::CheckDownloadAllow +@@ -2061,7 +2061,7 @@ void ChromeDownloadManagerDelegate::CheckDownloadAllow content::CheckDownloadAllowedCallback check_download_allowed_cb) { DCHECK_CURRENTLY_ON(BrowserThread::UI); #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ - BUILDFLAG(IS_MAC) + BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) // Don't download pdf if it is a file URL, as that might cause an infinite // download loop if Chrome is not the system pdf viewer. if (url.SchemeIsFile() && download_prefs_->ShouldOpenPdfInSystemReader()) { -@@ -2140,7 +2140,7 @@ void ChromeDownloadManagerDelegate::CheckSavePackageAl +@@ -2143,7 +2143,7 @@ void ChromeDownloadManagerDelegate::CheckSavePackageAl DCHECK(download_item->IsSavePackageDownload()); #if (BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ - BUILDFLAG(IS_MAC)) && \ + BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD)) && \ BUILDFLAG(SAFE_BROWSING_AVAILABLE) std::optional settings = safe_browsing::ShouldUploadBinaryForDeepScanning(download_item); diff --git a/www/chromium/files/patch-chrome_browser_download_download__item__model.cc b/www/chromium/files/patch-chrome_browser_download_download__item__model.cc index b36398cd3df6..b323c54a1eb2 100644 --- a/www/chromium/files/patch-chrome_browser_download_download__item__model.cc +++ b/www/chromium/files/patch-chrome_browser_download_download__item__model.cc @@ -1,29 +1,29 @@ ---- chrome/browser/download/download_item_model.cc.orig 2025-05-28 14:55:43 UTC +--- chrome/browser/download/download_item_model.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/download/download_item_model.cc -@@ -772,7 +772,7 @@ bool DownloadItemModel::IsCommandChecked( +@@ -773,7 +773,7 @@ bool DownloadItemModel::IsCommandChecked( download_crx_util::IsExtensionDownload(*download_); case DownloadCommands::ALWAYS_OPEN_TYPE: #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ - BUILDFLAG(IS_MAC) + BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) if (download_commands->CanOpenPdfInSystemViewer()) { DownloadPrefs* prefs = DownloadPrefs::FromBrowserContext(profile()); return prefs->ShouldOpenPdfInSystemReader(); -@@ -820,7 +820,7 @@ void DownloadItemModel::ExecuteCommand(DownloadCommand +@@ -821,7 +821,7 @@ void DownloadItemModel::ExecuteCommand(DownloadCommand DownloadCommands::ALWAYS_OPEN_TYPE); DownloadPrefs* prefs = DownloadPrefs::FromBrowserContext(profile()); #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ - BUILDFLAG(IS_MAC) + BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) if (download_commands->CanOpenPdfInSystemViewer()) { prefs->SetShouldOpenPdfInSystemReader(!is_checked); SetShouldPreferOpeningInBrowser(is_checked); -@@ -1210,7 +1210,7 @@ void DownloadItemModel::DetermineAndSetShouldPreferOpe +@@ -1211,7 +1211,7 @@ void DownloadItemModel::DetermineAndSetShouldPreferOpe return; } -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) if (download_->GetOriginalMimeType() == "application/x-x509-user-cert") { SetShouldPreferOpeningInBrowser(true); return; diff --git a/www/chromium/files/patch-chrome_browser_download_download__prefs.cc b/www/chromium/files/patch-chrome_browser_download_download__prefs.cc index 7b23d163ccc3..ed6e18093eb0 100644 --- a/www/chromium/files/patch-chrome_browser_download_download__prefs.cc +++ b/www/chromium/files/patch-chrome_browser_download_download__prefs.cc @@ -1,90 +1,90 @@ ---- chrome/browser/download/download_prefs.cc.orig 2025-04-04 08:52:13 UTC +--- chrome/browser/download/download_prefs.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/download/download_prefs.cc @@ -11,6 +11,7 @@ #include #include "base/check.h" +#include "base/command_line.h" #include "base/feature_list.h" #include "base/files/file_util.h" #include "base/functional/bind.h" -@@ -61,6 +62,10 @@ +@@ -62,6 +63,10 @@ #include "components/safe_browsing/content/common/file_type_policies.h" #endif +#if BUILDFLAG(IS_BSD) +#include "sandbox/policy/sandbox.h" +#endif + using content::BrowserContext; using content::BrowserThread; using content::DownloadManager; -@@ -74,7 +79,7 @@ namespace { +@@ -75,7 +80,7 @@ namespace { // Consider downloads 'dangerous' if they go to the home directory on Linux and // to the desktop on any platform. bool DownloadPathIsDangerous(const base::FilePath& download_path) { -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) base::FilePath home_dir = base::GetHomeDir(); if (download_path == home_dir) { return true; -@@ -180,7 +185,7 @@ DownloadPrefs::DownloadPrefs(Profile* profile) : profi +@@ -181,7 +186,7 @@ DownloadPrefs::DownloadPrefs(Profile* profile) : profi #endif // BUILDFLAG(IS_CHROMEOS) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ - BUILDFLAG(IS_MAC) + BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) should_open_pdf_in_system_reader_ = prefs->GetBoolean(prefs::kOpenPdfDownloadInSystemReader); #endif -@@ -307,7 +312,7 @@ void DownloadPrefs::RegisterProfilePrefs( +@@ -308,7 +313,7 @@ void DownloadPrefs::RegisterProfilePrefs( registry->RegisterFilePathPref(prefs::kSaveFileDefaultDirectory, default_download_path); #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ - BUILDFLAG(IS_MAC) + BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) registry->RegisterBooleanPref(prefs::kOpenPdfDownloadInSystemReader, false); #endif #if BUILDFLAG(IS_ANDROID) -@@ -480,7 +485,7 @@ void DownloadPrefs::DisableAutoOpenByUserBasedOnExtens +@@ -481,7 +486,7 @@ void DownloadPrefs::DisableAutoOpenByUserBasedOnExtens } #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ - BUILDFLAG(IS_MAC) + BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) void DownloadPrefs::SetShouldOpenPdfInSystemReader(bool should_open) { if (should_open_pdf_in_system_reader_ == should_open) return; -@@ -506,7 +511,7 @@ bool DownloadPrefs::ShouldOpenPdfInSystemReader() cons +@@ -507,7 +512,7 @@ bool DownloadPrefs::ShouldOpenPdfInSystemReader() cons void DownloadPrefs::ResetAutoOpenByUser() { #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ - BUILDFLAG(IS_MAC) + BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) SetShouldOpenPdfInSystemReader(false); #endif auto_open_by_user_.clear(); -@@ -543,7 +548,7 @@ void DownloadPrefs::SaveAutoOpenState() { +@@ -544,7 +549,7 @@ void DownloadPrefs::SaveAutoOpenState() { bool DownloadPrefs::CanPlatformEnableAutoOpenForPdf() const { #if BUILDFLAG(IS_CHROMEOS) return false; // There is no UI for auto-open on ChromeOS. -#elif BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) +#elif BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) return ShouldOpenPdfInSystemReader(); #else return false; -@@ -625,7 +630,14 @@ base::FilePath DownloadPrefs::SanitizeDownloadTargetPa +@@ -626,7 +631,14 @@ base::FilePath DownloadPrefs::SanitizeDownloadTargetPa #else // If the stored download directory is an absolute path, we presume it's // correct; there's not really much more validation we can do here. +#if BUILDFLAG(IS_OPENBSD) + // If unveil(2) is used, force the file dialog directory to something we + // know is available. + auto* sandbox = sandbox::policy::SandboxLinux::GetInstance(); + if (!sandbox->unveil_initialized() && path.IsAbsolute()) +#else if (path.IsAbsolute()) +#endif return path; // When the default download directory is *not* an absolute path, we use the diff --git a/www/chromium/files/patch-chrome_browser_enterprise_browser__management_browser__management__service.cc b/www/chromium/files/patch-chrome_browser_enterprise_browser__management_browser__management__service.cc index e97709652b0b..c1daba7cde3d 100644 --- a/www/chromium/files/patch-chrome_browser_enterprise_browser__management_browser__management__service.cc +++ b/www/chromium/files/patch-chrome_browser_enterprise_browser__management_browser__management__service.cc @@ -1,47 +1,47 @@ ---- chrome/browser/enterprise/browser_management/browser_management_service.cc.orig 2025-07-02 06:08:04 UTC +--- chrome/browser/enterprise/browser_management/browser_management_service.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/enterprise/browser_management/browser_management_service.cc @@ -50,7 +50,7 @@ GetManagementStatusProviders(Profile* profile) { BrowserManagementService::BrowserManagementService(Profile* profile) : ManagementService(GetManagementStatusProviders(profile)) { -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) base::SequencedTaskRunner::GetCurrentDefault()->PostTask( FROM_HERE, base::BindOnce(&BrowserManagementService::UpdateManagementIconForProfile, @@ -74,7 +74,7 @@ BrowserManagementService::BrowserManagementService(Pro } ui::ImageModel* BrowserManagementService::GetManagementIconForProfile() { -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) return management_icon_for_profile_.IsEmpty() ? nullptr : &management_icon_for_profile_; #else @@ -83,7 +83,7 @@ ui::ImageModel* BrowserManagementService::GetManagemen } gfx::Image* BrowserManagementService::GetManagementIconForBrowser() { -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) return management_icon_for_browser_.IsEmpty() ? nullptr : &management_icon_for_browser_; #else @@ -96,7 +96,7 @@ void BrowserManagementService::TriggerPolicyStatusChan OnPolicyStatusChanged(); } -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) void BrowserManagementService::SetBrowserManagementIconForTesting( const gfx::Image& management_icon) { CHECK_IS_TEST(); -@@ -171,7 +171,7 @@ void BrowserManagementService::SetManagementIconForBro +@@ -183,7 +183,7 @@ void BrowserManagementService::SetManagementIconForBro #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) void BrowserManagementService::OnPolicyStatusChanged() { -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) NotifyEnterpriseLabelUpdated(); #endif } diff --git a/www/chromium/files/patch-chrome_browser_enterprise_connectors_reporting_crash__reporting__context.cc b/www/chromium/files/patch-chrome_browser_enterprise_connectors_reporting_crash__reporting__context.cc index f20b4a68911c..e97b19861f0a 100644 --- a/www/chromium/files/patch-chrome_browser_enterprise_connectors_reporting_crash__reporting__context.cc +++ b/www/chromium/files/patch-chrome_browser_enterprise_connectors_reporting_crash__reporting__context.cc @@ -1,11 +1,11 @@ ---- chrome/browser/enterprise/connectors/reporting/crash_reporting_context.cc.orig 2025-07-02 06:08:04 UTC +--- chrome/browser/enterprise/connectors/reporting/crash_reporting_context.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/enterprise/connectors/reporting/crash_reporting_context.cc -@@ -28,7 +28,7 @@ +@@ -29,7 +29,7 @@ namespace enterprise_connectors { -#if !BUILDFLAG(IS_CHROMEOS) +#if !BUILDFLAG(IS_CHROMEOS) && !BUILDFLAG(IS_BSD) namespace { diff --git a/www/chromium/files/patch-chrome_browser_enterprise_connectors_reporting_realtime__reporting__client.h b/www/chromium/files/patch-chrome_browser_enterprise_connectors_reporting_realtime__reporting__client.h index f8dbce911536..0056f483beea 100644 --- a/www/chromium/files/patch-chrome_browser_enterprise_connectors_reporting_realtime__reporting__client.h +++ b/www/chromium/files/patch-chrome_browser_enterprise_connectors_reporting_realtime__reporting__client.h @@ -1,29 +1,29 @@ ---- chrome/browser/enterprise/connectors/reporting/realtime_reporting_client.h.orig 2025-07-02 06:08:04 UTC +--- chrome/browser/enterprise/connectors/reporting/realtime_reporting_client.h.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/enterprise/connectors/reporting/realtime_reporting_client.h @@ -19,7 +19,7 @@ #include "components/keyed_service/core/keyed_service.h" #include "components/policy/core/common/cloud/cloud_policy_client.h" -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "components/device_signals/core/browser/signals_types.h" #endif -@@ -116,7 +116,7 @@ class RealtimeReportingClient : public RealtimeReporti +@@ -118,7 +118,7 @@ class RealtimeReportingClient : public RealtimeReporti const std::string& dm_token) override; #endif -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if (BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && defined(notyet) // DEPRECATED: Use MaybeCollectDeviceSignalsAndReportEvent(Event, ...). void MaybeCollectDeviceSignalsAndReportEventDeprecated( base::Value::Dict event, -@@ -166,7 +166,7 @@ class RealtimeReportingClient : public RealtimeReporti +@@ -168,7 +168,7 @@ class RealtimeReportingClient : public RealtimeReporti base::WeakPtrFactory weak_ptr_factory_{this}; }; -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Populate event dict with CrowdStrike signal values. If those signals are // available in `response`, this function returns a Dict with the following // fields added: diff --git a/www/chromium/files/patch-chrome_browser_enterprise_signin_interstitials_managed__profile__required__page.cc b/www/chromium/files/patch-chrome_browser_enterprise_signin_interstitials_managed__profile__required__page.cc index a7d58bbd898d..3ea0b66d5cf8 100644 --- a/www/chromium/files/patch-chrome_browser_enterprise_signin_interstitials_managed__profile__required__page.cc +++ b/www/chromium/files/patch-chrome_browser_enterprise_signin_interstitials_managed__profile__required__page.cc @@ -1,11 +1,11 @@ ---- chrome/browser/enterprise/signin/interstitials/managed_profile_required_page.cc.orig 2025-04-04 08:52:13 UTC +--- chrome/browser/enterprise/signin/interstitials/managed_profile_required_page.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/enterprise/signin/interstitials/managed_profile_required_page.cc -@@ -94,7 +94,7 @@ void ManagedProfileRequiredPage::CommandReceived(const +@@ -95,7 +95,7 @@ void ManagedProfileRequiredPage::CommandReceived(const switch (cmd) { case security_interstitials::CMD_DONT_PROCEED: -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (ManagedProfileRequiredNavigationThrottle::IsBlockingNavigations( web_contents()->GetBrowserContext())) { ManagedProfileRequiredNavigationThrottle::ShowBlockedWindow( diff --git a/www/chromium/files/patch-chrome_browser_enterprise_util_managed__browser__utils.cc b/www/chromium/files/patch-chrome_browser_enterprise_util_managed__browser__utils.cc index d94a8cc5ff77..2ada0ace0369 100644 --- a/www/chromium/files/patch-chrome_browser_enterprise_util_managed__browser__utils.cc +++ b/www/chromium/files/patch-chrome_browser_enterprise_util_managed__browser__utils.cc @@ -1,29 +1,29 @@ ---- chrome/browser/enterprise/util/managed_browser_utils.cc.orig 2025-07-02 06:08:04 UTC +--- chrome/browser/enterprise/util/managed_browser_utils.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/enterprise/util/managed_browser_utils.cc @@ -213,7 +213,7 @@ void SetUserAcceptedAccountManagement(Profile* profile // The updated consent screen also ask the user for consent to share device // signals. #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) if (accepted && base::FeatureList::IsEnabled( features::kEnterpriseUpdatedProfileCreationScreen)) { profile->GetPrefs()->SetBoolean( @@ -225,7 +225,7 @@ void SetUserAcceptedAccountManagement(Profile* profile profile_manager->GetProfileAttributesStorage() .GetProfileAttributesWithPath(profile->GetPath()); if (entry) { -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) SetEnterpriseProfileLabel(profile); #endif entry->SetUserAcceptedAccountManagement(accepted); @@ -344,7 +344,7 @@ bool CanShowEnterpriseProfileUI(Profile* profile) { } bool CanShowEnterpriseBadgingForNTPFooter(Profile* profile) { -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - - auto* management_service = - policy::ManagementServiceFactory::GetForProfile(profile); + if (!policy::ManagementServiceFactory::GetForProfile(profile) + ->IsBrowserManaged()) { + return false; diff --git a/www/chromium/files/patch-chrome_browser_extensions_BUILD.gn b/www/chromium/files/patch-chrome_browser_extensions_BUILD.gn index 2468ea83d223..8c90d2627296 100644 --- a/www/chromium/files/patch-chrome_browser_extensions_BUILD.gn +++ b/www/chromium/files/patch-chrome_browser_extensions_BUILD.gn @@ -1,13 +1,13 @@ ---- chrome/browser/extensions/BUILD.gn.orig 2025-07-02 06:08:04 UTC +--- chrome/browser/extensions/BUILD.gn.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/extensions/BUILD.gn -@@ -1479,6 +1479,10 @@ source_set("extensions") { +@@ -1493,6 +1493,10 @@ source_set("extensions") { deps += [ "//chrome/services/printing/public/mojom" ] } + if (is_bsd) { + sources -= [ "api/image_writer_private/removable_storage_provider_linux.cc" ] + } + if (enable_pdf) { deps += [ "//chrome/browser/pdf", diff --git a/www/chromium/files/patch-chrome_browser_extensions_api_image__writer__private_removable__storage__provider.cc b/www/chromium/files/patch-chrome_browser_extensions_api_image__writer__private_removable__storage__provider.cc index 96341b4fa00b..63c3f4cf684b 100644 --- a/www/chromium/files/patch-chrome_browser_extensions_api_image__writer__private_removable__storage__provider.cc +++ b/www/chromium/files/patch-chrome_browser_extensions_api_image__writer__private_removable__storage__provider.cc @@ -1,20 +1,29 @@ ---- chrome/browser/extensions/api/image_writer_private/removable_storage_provider.cc.orig 2023-09-13 12:11:42 UTC +--- chrome/browser/extensions/api/image_writer_private/removable_storage_provider.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/extensions/api/image_writer_private/removable_storage_provider.cc -@@ -20,6 +20,7 @@ static base::LazyInstancePostTask( FROM_HERE, -@@ -33,6 +34,9 @@ void RemovableStorageProvider::GetAllDevices(DeviceLis +@@ -33,6 +36,9 @@ void RemovableStorageProvider::GetAllDevices(DeviceLis base::TaskShutdownBehavior::SKIP_ON_SHUTDOWN}, base::BindOnce(&RemovableStorageProvider::PopulateDeviceList), std::move(callback)); +#else + NOTIMPLEMENTED(); +#endif } // static diff --git a/www/chromium/files/patch-chrome_browser_extensions_api_passwords__private_passwords__private__delegate__impl.cc b/www/chromium/files/patch-chrome_browser_extensions_api_passwords__private_passwords__private__delegate__impl.cc index 94e200529eb7..334bc33d1bad 100644 --- a/www/chromium/files/patch-chrome_browser_extensions_api_passwords__private_passwords__private__delegate__impl.cc +++ b/www/chromium/files/patch-chrome_browser_extensions_api_passwords__private_passwords__private__delegate__impl.cc @@ -1,11 +1,11 @@ ---- chrome/browser/extensions/api/passwords_private/passwords_private_delegate_impl.cc.orig 2025-03-05 08:14:56 UTC +--- chrome/browser/extensions/api/passwords_private/passwords_private_delegate_impl.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/extensions/api/passwords_private/passwords_private_delegate_impl.cc -@@ -634,7 +634,7 @@ void PasswordsPrivateDelegateImpl::OnFetchingFamilyMem +@@ -635,7 +635,7 @@ void PasswordsPrivateDelegateImpl::OnFetchingFamilyMem } void PasswordsPrivateDelegateImpl::OsReauthTimeoutCall() { -#if !BUILDFLAG(IS_LINUX) +#if !BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_BSD) PasswordsPrivateEventRouter* router = PasswordsPrivateEventRouterFactory::GetForProfile(profile_); if (router) { diff --git a/www/chromium/files/patch-chrome_browser_extensions_api_settings__private_prefs__util.cc b/www/chromium/files/patch-chrome_browser_extensions_api_settings__private_prefs__util.cc index 6280f7f7b71f..f16233cfe00a 100644 --- a/www/chromium/files/patch-chrome_browser_extensions_api_settings__private_prefs__util.cc +++ b/www/chromium/files/patch-chrome_browser_extensions_api_settings__private_prefs__util.cc @@ -1,29 +1,29 @@ ---- chrome/browser/extensions/api/settings_private/prefs_util.cc.orig 2025-05-28 14:55:43 UTC +--- chrome/browser/extensions/api/settings_private/prefs_util.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/extensions/api/settings_private/prefs_util.cc -@@ -196,7 +196,7 @@ const PrefsUtil::TypedPrefMap& PrefsUtil::GetAllowlist +@@ -197,7 +197,7 @@ const PrefsUtil::TypedPrefMap& PrefsUtil::GetAllowlist (*s_allowlist)[autofill::prefs::kAutofillPaymentCardBenefits] = settings_api::PrefType::kBoolean; #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) (*s_allowlist)[autofill::prefs::kAutofillBnplEnabled] = settings_api::PrefType::kBoolean; #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || -@@ -214,7 +214,7 @@ const PrefsUtil::TypedPrefMap& PrefsUtil::GetAllowlist +@@ -215,7 +215,7 @@ const PrefsUtil::TypedPrefMap& PrefsUtil::GetAllowlist (*s_allowlist)[tab_groups::prefs::kAutoPinNewTabGroups] = settings_api::PrefType::kBoolean; -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) (*s_allowlist)[::prefs::kUseCustomChromeFrame] = settings_api::PrefType::kBoolean; #endif -@@ -228,7 +228,7 @@ const PrefsUtil::TypedPrefMap& PrefsUtil::GetAllowlist +@@ -229,7 +229,7 @@ const PrefsUtil::TypedPrefMap& PrefsUtil::GetAllowlist (*s_allowlist)[::prefs::kCurrentThemeID] = settings_api::PrefType::kString; (*s_allowlist)[::prefs::kPinnedActions] = settings_api::PrefType::kList; (*s_allowlist)[::prefs::kPolicyThemeColor] = settings_api::PrefType::kNumber; -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) (*s_allowlist)[::prefs::kSystemTheme] = settings_api::PrefType::kNumber; #endif (*s_allowlist)[::prefs::kHomePage] = settings_api::PrefType::kUrl; diff --git a/www/chromium/files/patch-chrome_browser_extensions_api_tabs_tabs__api.cc b/www/chromium/files/patch-chrome_browser_extensions_api_tabs_tabs__api.cc index b4463d62ed95..b271ec72f156 100644 --- a/www/chromium/files/patch-chrome_browser_extensions_api_tabs_tabs__api.cc +++ b/www/chromium/files/patch-chrome_browser_extensions_api_tabs_tabs__api.cc @@ -1,11 +1,11 @@ ---- chrome/browser/extensions/api/tabs/tabs_api.cc.orig 2025-05-28 14:55:43 UTC +--- chrome/browser/extensions/api/tabs/tabs_api.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/extensions/api/tabs/tabs_api.cc -@@ -945,7 +945,7 @@ ExtensionFunction::ResponseAction WindowsCreateFunctio +@@ -992,7 +992,7 @@ ExtensionFunction::ResponseAction WindowsCreateFunctio // created as minimized. // TODO(crbug.com/40254339): Remove this workaround when linux is fixed. // TODO(crbug.com/40254339): Find a fix for wayland as well. -#if BUILDFLAG(IS_LINUX) && BUILDFLAG(IS_OZONE_X11) +#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && BUILDFLAG(IS_OZONE_X11) if (new_window->initial_show_state() == ui::mojom::WindowShowState::kMinimized) { new_window->window()->Minimize(); diff --git a/www/chromium/files/patch-chrome_browser_extensions_api_webrtc__logging__private_webrtc__logging__private__api.cc b/www/chromium/files/patch-chrome_browser_extensions_api_webrtc__logging__private_webrtc__logging__private__api.cc index 9dad62a236f8..e7e68fa30322 100644 --- a/www/chromium/files/patch-chrome_browser_extensions_api_webrtc__logging__private_webrtc__logging__private__api.cc +++ b/www/chromium/files/patch-chrome_browser_extensions_api_webrtc__logging__private_webrtc__logging__private__api.cc @@ -1,29 +1,29 @@ ---- chrome/browser/extensions/api/webrtc_logging_private/webrtc_logging_private_api.cc.orig 2024-11-14 07:57:23 UTC +--- chrome/browser/extensions/api/webrtc_logging_private/webrtc_logging_private_api.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/extensions/api/webrtc_logging_private/webrtc_logging_private_api.cc @@ -28,7 +28,7 @@ #include "extensions/browser/process_manager.h" #include "extensions/common/error_utils.h" --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) #include "extensions/common/permissions/permissions_data.h" #endif -@@ -37,7 +37,7 @@ namespace { +@@ -41,7 +41,7 @@ namespace { bool CanEnableAudioDebugRecordingsFromExtension( const extensions::Extension* extension) { bool enabled_by_permissions = false; --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) if (extension) { enabled_by_permissions = extension->permissions_data()->active_permissions().HasAPIPermission( -@@ -575,7 +575,7 @@ void WebrtcLoggingPrivateStartEventLoggingFunction::Fi +@@ -580,7 +580,7 @@ void WebrtcLoggingPrivateStartEventLoggingFunction::Fi ExtensionFunction::ResponseAction WebrtcLoggingPrivateGetLogsDirectoryFunction::Run() { --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) // Unlike other WebrtcLoggingPrivate functions that take a RequestInfo object, // this function shouldn't be called by a component extension on behalf of // some web code. It returns a DirectoryEntry for use directly in the calling diff --git a/www/chromium/files/patch-chrome_browser_extensions_api_webstore__private_webstore__private__api.cc b/www/chromium/files/patch-chrome_browser_extensions_api_webstore__private_webstore__private__api.cc index 51c91f333671..9ce5ba7d2de9 100644 --- a/www/chromium/files/patch-chrome_browser_extensions_api_webstore__private_webstore__private__api.cc +++ b/www/chromium/files/patch-chrome_browser_extensions_api_webstore__private_webstore__private__api.cc @@ -1,11 +1,11 @@ ---- chrome/browser/extensions/api/webstore_private/webstore_private_api.cc.orig 2025-07-02 06:08:04 UTC +--- chrome/browser/extensions/api/webstore_private/webstore_private_api.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/extensions/api/webstore_private/webstore_private_api.cc -@@ -911,7 +911,7 @@ void WebstorePrivateBeginInstallWithManifest3Function: +@@ -912,7 +912,7 @@ void WebstorePrivateBeginInstallWithManifest3Function: #if BUILDFLAG(IS_CHROMEOS) RequestExtensionApproval(contents); return; -#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) // Shows a parental permission dialog directly bypassing the extension // install dialog view. The parental permission dialog contains a superset // of data from the extension install dialog: requested extension diff --git a/www/chromium/files/patch-chrome_browser_flag__descriptions.cc b/www/chromium/files/patch-chrome_browser_flag__descriptions.cc index 5369ef1ca1b1..c23dd9f61720 100644 --- a/www/chromium/files/patch-chrome_browser_flag__descriptions.cc +++ b/www/chromium/files/patch-chrome_browser_flag__descriptions.cc @@ -1,183 +1,192 @@ ---- chrome/browser/flag_descriptions.cc.orig 2025-07-02 06:08:04 UTC +--- chrome/browser/flag_descriptions.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/flag_descriptions.cc -@@ -659,7 +659,7 @@ const char kAutofillEnableAllowlistForBmoCardCategoryB +@@ -694,7 +694,7 @@ const char kAutofillEnableAllowlistForBmoCardCategoryB "Autofill suggestions on the allowlisted merchant websites."; #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) const char kAutofillEnableAmountExtractionAllowlistDesktopName[] = "Enable loading and querying the checkout amount extraction allowlist on " "Chrome Desktop"; -@@ -683,7 +683,7 @@ const char kAutofillEnableAmountExtractionDesktopLoggi +@@ -712,7 +712,7 @@ const char kAutofillEnableAmountExtractionDesktopDescr // BUILDFLAG(IS_CHROMEOS) + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) + const char kAutofillEnableAmountExtractionTestingName[] = + "Enable amount extraction testing on Chrome desktop and Clank"; + const char kAutofillEnableAmountExtractionTestingDescription[] = +@@ -723,7 +723,7 @@ const char kAutofillEnableAmountExtractionTestingDescr + // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) const char kAutofillEnableBuyNowPayLaterName[] = "Enable buy now pay later on Autofill"; const char kAutofillEnableBuyNowPayLaterDescription[] = -@@ -1116,7 +1116,7 @@ const char kDevicePostureDescription[] = +@@ -1193,7 +1193,7 @@ const char kDevicePostureDescription[] = "Enables Device Posture API (foldable devices)"; #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) const char kDocumentPictureInPictureAnimateResizeName[] = "Document Picture-in-Picture Animate Resize"; const char kDocumentPictureInPictureAnimateResizeDescription[] = -@@ -1250,7 +1250,7 @@ const char kContextMenuEmptySpaceDescription[] = +@@ -1341,7 +1341,7 @@ const char kContextMenuEmptySpaceDescription[] = "space, a context menu containing page-related items will be shown."; #endif // BUILDFLAG(IS_ANDROID) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) const char kContextualCueingName[] = "Contextual cueing"; const char kContextualCueingDescription[] = "Enables the contextual cueing system to support showing actions."; -@@ -1633,7 +1633,7 @@ const char kEnableIsolatedWebAppDevModeName[] = +@@ -1735,7 +1735,7 @@ const char kEnableIsolatedWebAppDevModeName[] = const char kEnableIsolatedWebAppDevModeDescription[] = "Enables the installation of unverified Isolated Web Apps"; -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) const char kEnableIwaKeyDistributionComponentName[] = "Enable the Iwa Key Distribution component"; const char kEnableIwaKeyDistributionComponentDescription[] = -@@ -3596,7 +3596,7 @@ const char kReduceTransferSizeUpdatedIPCDescription[] +@@ -3725,7 +3725,7 @@ const char kReduceTransferSizeUpdatedIPCDescription[] "When enabled, the network service will send TransferSizeUpdatedIPC IPC " "only when DevTools is attached or the request is for an ad request."; -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) const char kReduceUserAgentDataLinuxPlatformVersionName[] = "Reduce Linux platform version Client Hint"; const char kReduceUserAgentDataLinuxPlatformVersionDescription[] = -@@ -3628,7 +3628,7 @@ const char kRetainOmniboxOnFocusDescription[] = +@@ -3757,7 +3757,7 @@ const char kRetainOmniboxOnFocusDescription[] = "exhibit a change in behavior."; #endif // BUILDFLAG(IS_ANDROID) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) const char kRootScrollbarFollowsTheme[] = "Make scrollbar follow theme"; const char kRootScrollbarFollowsThemeDescription[] = "If enabled makes the root scrollbar follow the browser's theme color."; -@@ -3887,7 +3887,7 @@ const char kDefaultSiteInstanceGroupsDescription[] = +@@ -4004,7 +4004,7 @@ const char kDefaultSiteInstanceGroupsDescription[] = "SiteInstance."; #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) const char kPwaNavigationCapturingName[] = "Desktop PWA Link Capturing"; const char kPwaNavigationCapturingDescription[] = "Enables opening links from Chrome in an installed PWA. Currently under " -@@ -4123,7 +4123,7 @@ const char kTranslateForceTriggerOnEnglishDescription[ +@@ -4273,7 +4273,7 @@ const char kTranslateForceTriggerOnEnglishDescription[ "Force the Translate Triggering on English pages experiment to be enabled " "with the selected language model active."; -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) const char kEnableHistorySyncOptinName[] = "History Sync Opt-in"; const char kEnableHistorySyncOptinDescription[] = "Enables the History Sync Opt-in screen on Desktop platforms. The screen " -@@ -5840,7 +5840,7 @@ const char kTranslateOpenSettingsDescription[] = +@@ -6060,7 +6060,7 @@ const char kTranslateOpenSettingsDescription[] = "Add an option to the translate bubble menu to open language settings."; #endif -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) const char kWasmTtsComponentUpdaterEnabledName[] = "Enable Wasm TTS Extension Component"; const char kWasmTtsComponentUpdaterEnabledDescription[] = -@@ -7871,7 +7871,7 @@ const char kTetheringExperimentalFunctionalityDescript +@@ -8103,7 +8103,7 @@ const char kTetheringExperimentalFunctionalityDescript #endif // BUILDFLAG(IS_CHROMEOS) -#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) const char kGetAllScreensMediaName[] = "GetAllScreensMedia API"; const char kGetAllScreensMediaDescription[] = "When enabled, the getAllScreensMedia API for capturing multiple screens " -@@ -8100,7 +8100,7 @@ const char kEnableArmHwdrmDescription[] = "Enable HW b +@@ -8332,7 +8332,7 @@ const char kEnableArmHwdrmDescription[] = "Enable HW b // Linux ----------------------------------------------------------------------- -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) const char kOzonePlatformHintChoiceDefault[] = "Default"; const char kOzonePlatformHintChoiceAuto[] = "Auto"; const char kOzonePlatformHintChoiceX11[] = "X11"; -@@ -8150,6 +8150,18 @@ const char kWaylandUiScalingDescription[] = +@@ -8382,6 +8382,18 @@ const char kWaylandUiScalingDescription[] = "Enable experimental support for text scaling in the Wayland backend " "backed by full UI scaling. Requires #wayland-per-window-scaling to be " "enabled too."; + +#if BUILDFLAG(IS_BSD) +const char kAudioBackendName[] = + "Audio Backend"; +const char kAudioBackendDescription[] = +#if BUILDFLAG(IS_OPENBSD) + "Select the desired audio backend to use. The default is sndio."; +#elif BUILDFLAG(IS_FREEBSD) + "Select the desired audio backend to use. The default will automatically " + "enumerate through the supported backends."; +#endif +#endif #endif // BUILDFLAG(IS_LINUX) // Random platform combinations ----------------------------------------------- -@@ -8162,7 +8174,7 @@ const char kZeroCopyVideoCaptureDescription[] = +@@ -8394,7 +8406,7 @@ const char kZeroCopyVideoCaptureDescription[] = #endif // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) const char kFollowingFeedSidepanelName[] = "Following feed in the sidepanel"; const char kFollowingFeedSidepanelDescription[] = "Enables the following feed in the sidepanel."; -@@ -8205,7 +8217,7 @@ const char kGroupPromoPrototypeName[] = "Group Promo P - const char kGroupPromoPrototypeDescription[] = - "Enables prototype for group promo."; +@@ -8444,7 +8456,7 @@ const char kGroupPromoPrototypeCpaDescription[] = + "Enables contextual toolbar button for group promo prototype."; + #endif // BUILDFLAG(IS_ANDROID) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) const char kEnableNetworkServiceSandboxName[] = "Enable the network service sandbox."; const char kEnableNetworkServiceSandboxDescription[] = -@@ -8226,7 +8238,7 @@ const char kWebBluetoothConfirmPairingSupportDescripti +@@ -8465,7 +8477,7 @@ const char kWebBluetoothConfirmPairingSupportDescripti "Bluetooth"; #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) #if BUILDFLAG(ENABLE_PRINTING) const char kCupsIppPrintingBackendName[] = "CUPS IPP Printing Backend"; const char kCupsIppPrintingBackendDescription[] = -@@ -8369,7 +8381,7 @@ const char kElementCaptureDescription[] = +@@ -8614,7 +8626,7 @@ const char kElementCaptureDescription[] = "media track into a track capturing just a specific DOM element."; #endif // !BUILDFLAG(IS_ANDROID) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) const char kUIDebugToolsName[] = "Debugging tools for UI"; const char kUIDebugToolsDescription[] = "Enables additional keyboard shortcuts to help debugging."; -@@ -8420,7 +8432,7 @@ const char kComposeUpfrontInputModesDescription[] = +@@ -8665,7 +8677,7 @@ const char kComposeUpfrontInputModesDescription[] = "Enables upfront input modes in the Compose dialog"; #endif // BUILDFLAG(ENABLE_COMPOSE) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) const char kThirdPartyProfileManagementName[] = "Third party profile management"; const char kThirdPartyProfileManagementDescription[] = -@@ -8538,7 +8550,7 @@ const char kSupervisedUserBlockInterstitialV3Name[] = +@@ -8783,7 +8795,7 @@ const char kSupervisedUserBlockInterstitialV3Name[] = const char kSupervisedUserBlockInterstitialV3Description[] = "Enables URL filter interstitial V3 for Family Link users."; -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) const char kSupervisedProfileHideGuestName[] = "Supervised Profile Hide Guest"; const char kSupervisedProfileHideGuestDescription[] = "Hides Guest Profile entry points for supervised users"; diff --git a/www/chromium/files/patch-chrome_browser_flag__descriptions.h b/www/chromium/files/patch-chrome_browser_flag__descriptions.h index 7a867c777655..244a7dd8f0ca 100644 --- a/www/chromium/files/patch-chrome_browser_flag__descriptions.h +++ b/www/chromium/files/patch-chrome_browser_flag__descriptions.h @@ -1,174 +1,182 @@ ---- chrome/browser/flag_descriptions.h.orig 2025-07-02 06:08:04 UTC +--- chrome/browser/flag_descriptions.h.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/flag_descriptions.h -@@ -413,7 +413,7 @@ extern const char +@@ -437,7 +437,7 @@ extern const char kAutofillEnableAllowlistForBmoCardCategoryBenefitsDescription[]; #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) extern const char kAutofillEnableAmountExtractionAllowlistDesktopName[]; extern const char kAutofillEnableAmountExtractionAllowlistDesktopDescription[]; extern const char kAutofillEnableAmountExtractionDesktopName[]; -@@ -424,7 +424,7 @@ extern const char kAutofillEnableAmountExtractionDeskt +@@ -446,14 +446,14 @@ extern const char kAutofillEnableAmountExtractionDeskt // BUILDFLAG(IS_CHROMEOS) + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) + extern const char kAutofillEnableAmountExtractionTestingName[]; + extern const char kAutofillEnableAmountExtractionTestingDescription[]; + #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || + // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) extern const char kAutofillEnableBuyNowPayLaterName[]; extern const char kAutofillEnableBuyNowPayLaterDescription[]; -@@ -656,7 +656,7 @@ extern const char kContextMenuEmptySpaceName[]; +@@ -703,7 +703,7 @@ extern const char kContextMenuEmptySpaceName[]; extern const char kContextMenuEmptySpaceDescription[]; #endif // BUILDFLAG(IS_ANDROID) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) extern const char kContextualCueingName[]; extern const char kContextualCueingDescription[]; extern const char kGlicZeroStateSuggestionsName[]; -@@ -847,7 +847,7 @@ extern const char kDevicePostureName[]; +@@ -892,7 +892,7 @@ extern const char kDevicePostureName[]; extern const char kDevicePostureDescription[]; #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) extern const char kDocumentPictureInPictureAnimateResizeName[]; extern const char kDocumentPictureInPictureAnimateResizeDescription[]; -@@ -1006,7 +1006,7 @@ extern const char kEnableIsolatedWebAppAllowlistDescri +@@ -1063,7 +1063,7 @@ extern const char kEnableIsolatedWebAppAllowlistDescri extern const char kEnableIsolatedWebAppDevModeName[]; extern const char kEnableIsolatedWebAppDevModeDescription[]; -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) extern const char kEnableIwaKeyDistributionComponentName[]; extern const char kEnableIwaKeyDistributionComponentDescription[]; #endif // BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) -@@ -2079,7 +2079,7 @@ extern const char kRetainOmniboxOnFocusName[]; +@@ -2139,7 +2139,7 @@ extern const char kRetainOmniboxOnFocusName[]; extern const char kRetainOmniboxOnFocusDescription[]; #endif // BUILDFLAG(IS_ANDROID) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) extern const char kRootScrollbarFollowsTheme[]; extern const char kRootScrollbarFollowsThemeDescription[]; #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) -@@ -2226,7 +2226,7 @@ extern const char kDefaultSiteInstanceGroupsName[]; +@@ -2280,7 +2280,7 @@ extern const char kDefaultSiteInstanceGroupsName[]; extern const char kDefaultSiteInstanceGroupsDescription[]; #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) extern const char kPwaNavigationCapturingName[]; extern const char kPwaNavigationCapturingDescription[]; #endif -@@ -2386,7 +2386,7 @@ extern const char kTouchTextEditingRedesignDescription +@@ -2457,7 +2457,7 @@ extern const char kTouchTextEditingRedesignDescription extern const char kTranslateForceTriggerOnEnglishName[]; extern const char kTranslateForceTriggerOnEnglishDescription[]; -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) extern const char kEnableHistorySyncOptinName[]; extern const char kEnableHistorySyncOptinDescription[]; -@@ -2641,7 +2641,7 @@ extern const char kReduceAcceptLanguageDescription[]; +@@ -2728,7 +2728,7 @@ extern const char kReduceAcceptLanguageDescription[]; extern const char kReduceTransferSizeUpdatedIPCName[]; extern const char kReduceTransferSizeUpdatedIPCDescription[]; -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) extern const char kReduceUserAgentDataLinuxPlatformVersionName[]; extern const char kReduceUserAgentDataLinuxPlatformVersionDescription[]; #endif // #if BUILDFLAG(IS_LINUX) -@@ -3430,7 +3430,7 @@ extern const char kTranslateOpenSettingsName[]; +@@ -3538,7 +3538,7 @@ extern const char kTranslateOpenSettingsName[]; extern const char kTranslateOpenSettingsDescription[]; #endif -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) extern const char kWasmTtsComponentUpdaterEnabledName[]; extern const char kWasmTtsComponentUpdaterEnabledDescription[]; #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) -@@ -4630,7 +4630,7 @@ extern const char kTetheringExperimentalFunctionalityD +@@ -4747,7 +4747,7 @@ extern const char kTetheringExperimentalFunctionalityD #endif // #if BUILDFLAG(IS_CHROMEOS) -#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) extern const char kGetAllScreensMediaName[]; extern const char kGetAllScreensMediaDescription[]; #endif // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) -@@ -4765,7 +4765,7 @@ extern const char kEnableArmHwdrmDescription[]; +@@ -4882,7 +4882,7 @@ extern const char kEnableArmHwdrmDescription[]; // Linux --------------------------------------------------------------------- -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) extern const char kOzonePlatformHintChoiceDefault[]; extern const char kOzonePlatformHintChoiceAuto[]; extern const char kOzonePlatformHintChoiceX11[]; -@@ -4796,6 +4796,9 @@ extern const char kWaylandTextInputV3Description[]; +@@ -4913,6 +4913,9 @@ extern const char kWaylandTextInputV3Description[]; extern const char kWaylandUiScalingName[]; extern const char kWaylandUiScalingDescription[]; + +extern const char kAudioBackendName[]; +extern const char kAudioBackendDescription[]; #endif // BUILDFLAG(IS_LINUX) // Random platform combinations ----------------------------------------------- -@@ -4810,7 +4813,7 @@ extern const char kWebBluetoothConfirmPairingSupportNa +@@ -4927,7 +4930,7 @@ extern const char kWebBluetoothConfirmPairingSupportNa extern const char kWebBluetoothConfirmPairingSupportDescription[]; #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) #if BUILDFLAG(ENABLE_PRINTING) extern const char kCupsIppPrintingBackendName[]; extern const char kCupsIppPrintingBackendDescription[]; -@@ -4823,7 +4826,7 @@ extern const char kScreenlockReauthCardDescription[]; +@@ -4940,7 +4943,7 @@ extern const char kScreenlockReauthCardDescription[]; #endif // BUILDFLAG(IS_CHROMEOS) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) extern const char kFollowingFeedSidepanelName[]; extern const char kFollowingFeedSidepanelDescription[]; - -@@ -4840,7 +4843,7 @@ extern const char kTaskManagerDesktopRefreshName[]; + #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || +@@ -4957,7 +4960,7 @@ extern const char kTaskManagerDesktopRefreshName[]; extern const char kTaskManagerDesktopRefreshDescription[]; #endif // BUILDFLAG(IS_ANDROID) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) extern const char kEnableNetworkServiceSandboxName[]; extern const char kEnableNetworkServiceSandboxDescription[]; -@@ -4932,7 +4935,7 @@ extern const char kElementCaptureName[]; +@@ -5054,7 +5057,7 @@ extern const char kElementCaptureName[]; extern const char kElementCaptureDescription[]; #endif // !BUILDFLAG(IS_ANDROID) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) extern const char kUIDebugToolsName[]; extern const char kUIDebugToolsDescription[]; #endif -@@ -4971,7 +4974,7 @@ extern const char kComposeUpfrontInputModesName[]; +@@ -5093,7 +5096,7 @@ extern const char kComposeUpfrontInputModesName[]; extern const char kComposeUpfrontInputModesDescription[]; #endif // BUILDFLAG(ENABLE_COMPOSE) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) extern const char kThirdPartyProfileManagementName[]; extern const char kThirdPartyProfileManagementDescription[]; -@@ -5045,7 +5048,7 @@ extern const char kEnablePolicyPromotionBannerDescript +@@ -5167,7 +5170,7 @@ extern const char kEnablePolicyPromotionBannerDescript extern const char kSupervisedUserBlockInterstitialV3Name[]; extern const char kSupervisedUserBlockInterstitialV3Description[]; -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) extern const char kSupervisedProfileHideGuestName[]; extern const char kSupervisedProfileHideGuestDescription[]; diff --git a/www/chromium/files/patch-chrome_browser_global__features.cc b/www/chromium/files/patch-chrome_browser_global__features.cc index 0fb41d80914c..a2f1e2544a78 100644 --- a/www/chromium/files/patch-chrome_browser_global__features.cc +++ b/www/chromium/files/patch-chrome_browser_global__features.cc @@ -1,29 +1,29 @@ ---- chrome/browser/global_features.cc.orig 2025-07-02 06:08:04 UTC +--- chrome/browser/global_features.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/global_features.cc @@ -24,7 +24,7 @@ #include "chrome/browser/glic/host/glic_synthetic_trial_manager.h" // nogncheck #endif -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // This causes a gn error on Android builds, because gn does not understand // buildflags, so we include it only on platforms where it is used. #include "chrome/browser/ui/webui/whats_new/whats_new_registrar.h" @@ -70,7 +70,7 @@ void GlobalFeatures::ReplaceGlobalFeaturesForTesting( void GlobalFeatures::Init() { system_permissions_platform_handle_ = CreateSystemPermissionsPlatformHandle(); -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) whats_new_registry_ = CreateWhatsNewRegistry(); #endif -@@ -120,7 +120,7 @@ GlobalFeatures::CreateSystemPermissionsPlatformHandle( +@@ -119,7 +119,7 @@ GlobalFeatures::CreateSystemPermissionsPlatformHandle( return system_permission_settings::PlatformHandle::Create(); } -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) std::unique_ptr GlobalFeatures::CreateWhatsNewRegistry() { return whats_new::CreateWhatsNewRegistry(); diff --git a/www/chromium/files/patch-chrome_browser_media_webrtc_chrome__screen__enumerator.cc b/www/chromium/files/patch-chrome_browser_media_webrtc_chrome__screen__enumerator.cc index 19bc22f3eeff..f066f90dbf13 100644 --- a/www/chromium/files/patch-chrome_browser_media_webrtc_chrome__screen__enumerator.cc +++ b/www/chromium/files/patch-chrome_browser_media_webrtc_chrome__screen__enumerator.cc @@ -1,47 +1,47 @@ ---- chrome/browser/media/webrtc/chrome_screen_enumerator.cc.orig 2025-04-04 08:52:13 UTC +--- chrome/browser/media/webrtc/chrome_screen_enumerator.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/media/webrtc/chrome_screen_enumerator.cc @@ -21,7 +21,7 @@ #if BUILDFLAG(IS_CHROMEOS) #include "ash/shell.h" #include "ui/aura/window.h" -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "base/functional/callback.h" #include "content/public/browser/desktop_capture.h" #endif @@ -32,7 +32,7 @@ base::LazyInstance>::DestructorAtExit g_desktop_capturer_for_testing = LAZY_INSTANCE_INITIALIZER; @@ -79,7 +79,7 @@ blink::mojom::StreamDevicesSetPtr EnumerateScreens( return stream_devices_set; } -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) blink::mojom::StreamDevicesSetPtr EnumerateScreens( blink::mojom::MediaStreamType stream_type) { DCHECK_CURRENTLY_ON(content::BrowserThread::UI); -@@ -130,7 +130,7 @@ void ChromeScreenEnumerator::SetRootWindowsForTesting( +@@ -132,7 +132,7 @@ void ChromeScreenEnumerator::SetRootWindowsForTesting( root_windows_for_testing_.Get() = std::move(root_windows); } -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) void ChromeScreenEnumerator::SetDesktopCapturerForTesting( std::unique_ptr capturer) { g_desktop_capturer_for_testing.Get() = std::move(capturer); -@@ -143,7 +143,7 @@ void ChromeScreenEnumerator::EnumerateScreens( +@@ -145,7 +145,7 @@ void ChromeScreenEnumerator::EnumerateScreens( ScreensCallback screens_callback) const { DCHECK_CURRENTLY_ON(content::BrowserThread::IO); -#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) content::GetUIThreadTaskRunner({})->PostTaskAndReplyWithResult( FROM_HERE, base::BindOnce(::EnumerateScreens, stream_type), base::BindOnce( diff --git a/www/chromium/files/patch-chrome_browser_media_webrtc_desktop__media__picker__controller.cc b/www/chromium/files/patch-chrome_browser_media_webrtc_desktop__media__picker__controller.cc index 3452d716158d..965a1feb7652 100644 --- a/www/chromium/files/patch-chrome_browser_media_webrtc_desktop__media__picker__controller.cc +++ b/www/chromium/files/patch-chrome_browser_media_webrtc_desktop__media__picker__controller.cc @@ -1,11 +1,11 @@ ---- chrome/browser/media/webrtc/desktop_media_picker_controller.cc.orig 2024-06-17 12:56:06 UTC +--- chrome/browser/media/webrtc/desktop_media_picker_controller.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/media/webrtc/desktop_media_picker_controller.cc -@@ -89,7 +89,7 @@ bool DesktopMediaPickerController::IsSystemAudioCaptur +@@ -93,7 +93,7 @@ bool DesktopMediaPickerController::IsSystemAudioCaptur #if BUILDFLAG(IS_MAC) return request_source == Params::RequestSource::kCast || base::FeatureList::IsEnabled(media::kMacLoopbackAudioForScreenShare); -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (request_source == Params::RequestSource::kCast) { return base::FeatureList::IsEnabled(media::kPulseaudioLoopbackForCast); } else { diff --git a/www/chromium/files/patch-chrome_browser_media_webrtc_webrtc__logging__controller.cc b/www/chromium/files/patch-chrome_browser_media_webrtc_webrtc__logging__controller.cc index 55b664967dee..0e1f7a8b3ff4 100644 --- a/www/chromium/files/patch-chrome_browser_media_webrtc_webrtc__logging__controller.cc +++ b/www/chromium/files/patch-chrome_browser_media_webrtc_webrtc__logging__controller.cc @@ -1,33 +1,20 @@ ---- chrome/browser/media/webrtc/webrtc_logging_controller.cc.orig 2025-04-04 08:52:13 UTC +--- chrome/browser/media/webrtc/webrtc_logging_controller.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/media/webrtc/webrtc_logging_controller.cc -@@ -25,10 +25,10 @@ +@@ -25,7 +25,7 @@ #include "components/webrtc_logging/browser/text_log_list.h" #include "content/public/browser/render_process_host.h" --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) #include "content/public/browser/child_process_security_policy.h" #include "storage/browser/file_system/isolated_context.h" --#endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -+#endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - - using webrtc_event_logging::WebRtcEventLogManager; - -@@ -304,7 +304,7 @@ void WebRtcLoggingController::StartEventLogging( + #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || +@@ -305,7 +305,7 @@ void WebRtcLoggingController::StartEventLogging( web_app_id, callback); } --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) void WebRtcLoggingController::GetLogsDirectory( LogsDirectoryCallback callback, LogsDirectoryErrorCallback error_callback) { -@@ -350,7 +350,7 @@ void WebRtcLoggingController::GrantLogsDirectoryAccess - FROM_HERE, - base::BindOnce(std::move(callback), file_system.id(), registered_name)); - } --#endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -+#endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - - void WebRtcLoggingController::OnRtpPacket( - base::HeapArray packet_header, diff --git a/www/chromium/files/patch-chrome_browser_media_webrtc_webrtc__logging__controller.h b/www/chromium/files/patch-chrome_browser_media_webrtc_webrtc__logging__controller.h index 4bb826cdf7f2..930613c234db 100644 --- a/www/chromium/files/patch-chrome_browser_media_webrtc_webrtc__logging__controller.h +++ b/www/chromium/files/patch-chrome_browser_media_webrtc_webrtc__logging__controller.h @@ -1,20 +1,20 @@ ---- chrome/browser/media/webrtc/webrtc_logging_controller.h.orig 2024-01-30 07:53:34 UTC +--- chrome/browser/media/webrtc/webrtc_logging_controller.h.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/media/webrtc/webrtc_logging_controller.h @@ -133,7 +133,7 @@ class WebRtcLoggingController size_t web_app_id, const StartEventLoggingCallback& callback); --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) // Ensures that the WebRTC Logs directory exists and then grants render // process access to the 'WebRTC Logs' directory, and invokes |callback| with // the ids necessary to create a DirectoryEntry object. @@ -197,7 +197,7 @@ class WebRtcLoggingController content::BrowserContext* GetBrowserContext() const; --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) // Grants the render process access to the 'WebRTC Logs' directory, and // invokes |callback| with the ids necessary to create a DirectoryEntry // object. If the |logs_path| couldn't be created or found, |error_callback| diff --git a/www/chromium/files/patch-chrome_browser_metrics_chrome__browser__main__extra__parts__metrics.cc b/www/chromium/files/patch-chrome_browser_metrics_chrome__browser__main__extra__parts__metrics.cc index 61509ed380e1..95418921eaf4 100644 --- a/www/chromium/files/patch-chrome_browser_metrics_chrome__browser__main__extra__parts__metrics.cc +++ b/www/chromium/files/patch-chrome_browser_metrics_chrome__browser__main__extra__parts__metrics.cc @@ -1,52 +1,52 @@ ---- chrome/browser/metrics/chrome_browser_main_extra_parts_metrics.cc.orig 2025-07-02 06:08:04 UTC +--- chrome/browser/metrics/chrome_browser_main_extra_parts_metrics.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/metrics/chrome_browser_main_extra_parts_metrics.cc -@@ -85,7 +85,7 @@ +@@ -86,7 +86,7 @@ #include "chrome/browser/flags/android/chrome_session_state.h" #endif // BUILDFLAG(IS_ANDROID) -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #if defined(__GLIBC__) #include #endif // defined(__GLIBC__) -@@ -110,7 +110,7 @@ +@@ -111,7 +111,7 @@ #include "chrome/installer/util/taskbar_util.h" #endif // BUILDFLAG(IS_WIN) -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "chrome/browser/metrics/pressure/pressure_metrics_reporter.h" #endif // BUILDFLAG(IS_LINUX) -@@ -119,7 +119,7 @@ +@@ -120,7 +120,7 @@ #include "components/user_manager/user_manager.h" #endif // BUILDFLAG(IS_CHROMEOS) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "components/power_metrics/system_power_monitor.h" #endif -@@ -899,7 +899,7 @@ void RecordStartupMetrics() { +@@ -900,7 +900,7 @@ void RecordStartupMetrics() { // Record whether Chrome is the default browser or not. // Disabled on Linux due to hanging browser tests, see crbug.com/1216328. -#if !BUILDFLAG(IS_LINUX) +#if !BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_BSD) shell_integration::DefaultWebClientState default_state = shell_integration::GetDefaultBrowser(); base::UmaHistogramEnumeration("DefaultBrowser.State", default_state, -@@ -1210,11 +1210,11 @@ void ChromeBrowserMainExtraPartsMetrics::PostBrowserSt +@@ -1211,11 +1211,11 @@ void ChromeBrowserMainExtraPartsMetrics::PostBrowserSt std::make_unique(); #endif // !BUILDFLAG(IS_ANDROID) -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) pressure_metrics_reporter_ = std::make_unique(); #endif // BUILDFLAG(IS_LINUX) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) base::trace_event::TraceLog::GetInstance()->AddEnabledStateObserver( power_metrics::SystemPowerMonitor::GetInstance()); #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) diff --git a/www/chromium/files/patch-chrome_browser_metrics_chrome__metrics__service__client.cc b/www/chromium/files/patch-chrome_browser_metrics_chrome__metrics__service__client.cc index c024d5dac097..0e731fcb4dec 100644 --- a/www/chromium/files/patch-chrome_browser_metrics_chrome__metrics__service__client.cc +++ b/www/chromium/files/patch-chrome_browser_metrics_chrome__metrics__service__client.cc @@ -1,97 +1,97 @@ ---- chrome/browser/metrics/chrome_metrics_service_client.cc.orig 2025-07-02 06:08:04 UTC +--- chrome/browser/metrics/chrome_metrics_service_client.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/metrics/chrome_metrics_service_client.cc @@ -202,11 +202,11 @@ #include "chrome/browser/metrics/google_update_metrics_provider_mac.h" #endif -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "components/metrics/motherboard_metrics_provider.h" #endif -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "chrome/browser/metrics/chrome_metrics_service_crash_reporter.h" #endif @@ -238,7 +238,7 @@ const int kMaxHistogramGatheringWaitDuration = 60000; // Needs to be kept in sync with the writer in // third_party/crashpad/crashpad/handler/handler_main.cc. const char kCrashpadHistogramAllocatorName[] = "CrashpadMetrics"; -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) base::LazyInstance::Leaky g_crash_reporter = LAZY_INSTANCE_INITIALIZER; #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) -@@ -542,7 +542,7 @@ void ChromeMetricsServiceClient::RegisterPrefs(PrefReg +@@ -546,7 +546,7 @@ void ChromeMetricsServiceClient::RegisterPrefs(PrefReg #endif // BUILDFLAG(IS_CHROMEOS) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ - BUILDFLAG(IS_MAC) + BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) metrics::structured::StructuredMetricsService::RegisterPrefs(registry); #if !BUILDFLAG(IS_CHROMEOS) -@@ -624,7 +624,7 @@ std::string ChromeMetricsServiceClient::GetVersionStri +@@ -628,7 +628,7 @@ std::string ChromeMetricsServiceClient::GetVersionStri void ChromeMetricsServiceClient::OnEnvironmentUpdate(std::string* environment) { // TODO(https://bugs.chromium.org/p/crashpad/issues/detail?id=135): call this // on Mac when the Crashpad API supports it. -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Register the environment with the crash reporter. Note that there is a // window from startup to this point during which crash reports will not have // an environment set. -@@ -726,7 +726,7 @@ void ChromeMetricsServiceClient::Initialize() { +@@ -730,7 +730,7 @@ void ChromeMetricsServiceClient::Initialize() { std::make_unique(this, local_state); } #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) metrics::structured::Recorder::GetInstance()->SetUiTaskRunner( base::SequencedTaskRunner::GetCurrentDefault()); #endif -@@ -786,7 +786,7 @@ void ChromeMetricsServiceClient::RegisterMetricsServic +@@ -790,7 +790,7 @@ void ChromeMetricsServiceClient::RegisterMetricsServic metrics_service_->RegisterMetricsProvider( std::make_unique()); -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) metrics_service_->RegisterMetricsProvider( std::make_unique()); #endif -@@ -875,7 +875,7 @@ void ChromeMetricsServiceClient::RegisterMetricsServic +@@ -879,7 +879,7 @@ void ChromeMetricsServiceClient::RegisterMetricsServic std::make_unique()); #endif -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) metrics_service_->RegisterMetricsProvider( std::make_unique()); #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) -@@ -984,7 +984,7 @@ void ChromeMetricsServiceClient::RegisterMetricsServic +@@ -985,7 +985,7 @@ void ChromeMetricsServiceClient::RegisterMetricsServic std::make_unique()); #endif -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) metrics_service_->RegisterMetricsProvider( metrics::CreateDesktopSessionMetricsProvider()); #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || (BUILDFLAG(IS_LINUX) -@@ -1175,7 +1175,7 @@ bool ChromeMetricsServiceClient::RegisterForProfileEve +@@ -1176,7 +1176,7 @@ bool ChromeMetricsServiceClient::RegisterForProfileEve } #endif -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // This creates the DesktopProfileSessionDurationsServices if it didn't exist // already. metrics::DesktopProfileSessionDurationsServiceFactory::GetForBrowserContext( -@@ -1524,7 +1524,7 @@ void ChromeMetricsServiceClient::CreateStructuredMetri +@@ -1525,7 +1525,7 @@ void ChromeMetricsServiceClient::CreateStructuredMetri recorder = base::MakeRefCounted( cros_system_profile_provider_.get()); -#elif BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) +#elif BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) // Make sure that Structured Metrics recording delegates have been created // before the service is created. This is handled in other places for ChromeOS diff --git a/www/chromium/files/patch-chrome_browser_net_profile__network__context__service.cc b/www/chromium/files/patch-chrome_browser_net_profile__network__context__service.cc index dea31282ac27..46770e040784 100644 --- a/www/chromium/files/patch-chrome_browser_net_profile__network__context__service.cc +++ b/www/chromium/files/patch-chrome_browser_net_profile__network__context__service.cc @@ -1,29 +1,29 @@ ---- chrome/browser/net/profile_network_context_service.cc.orig 2025-05-28 14:55:43 UTC +--- chrome/browser/net/profile_network_context_service.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/net/profile_network_context_service.cc -@@ -135,7 +135,7 @@ +@@ -136,7 +136,7 @@ #include "extensions/common/constants.h" #endif -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "chrome/browser/enterprise/client_certificates/certificate_provisioning_service_factory.h" #include "chrome/browser/policy/chrome_browser_policy_connector.h" #include "components/enterprise/browser/controller/chrome_browser_cloud_management_controller.h" -@@ -276,7 +276,7 @@ void UpdateCookieSettings(Profile* profile, ContentSet +@@ -277,7 +277,7 @@ void UpdateCookieSettings(Profile* profile, ContentSet }); } -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) std::unique_ptr GetWrappedCertStore( Profile* profile, std::unique_ptr platform_store) { -@@ -1224,7 +1224,7 @@ ProfileNetworkContextService::CreateClientCertStore() +@@ -1245,7 +1245,7 @@ ProfileNetworkContextService::CreateClientCertStore() std::make_unique( base::BindRepeating(&CreateCryptoModuleBlockingPasswordDelegate, kCryptoModulePasswordClientAuth)); -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) return GetWrappedCertStore(profile_, std::move(store)); #else return store; diff --git a/www/chromium/files/patch-chrome_browser_net_profile__network__context__service__factory.cc b/www/chromium/files/patch-chrome_browser_net_profile__network__context__service__factory.cc index fdc23610089e..1853b3231772 100644 --- a/www/chromium/files/patch-chrome_browser_net_profile__network__context__service__factory.cc +++ b/www/chromium/files/patch-chrome_browser_net_profile__network__context__service__factory.cc @@ -1,20 +1,20 @@ ---- chrome/browser/net/profile_network_context_service_factory.cc.orig 2025-03-05 08:14:56 UTC +--- chrome/browser/net/profile_network_context_service_factory.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/net/profile_network_context_service_factory.cc -@@ -24,7 +24,7 @@ +@@ -32,7 +32,7 @@ #include "chrome/browser/net/server_certificate_database_service_factory.h" // nogncheck #endif -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "chrome/browser/enterprise/client_certificates/certificate_provisioning_service_factory.h" #endif -@@ -68,7 +68,7 @@ ProfileNetworkContextServiceFactory::ProfileNetworkCon +@@ -76,7 +76,7 @@ ProfileNetworkContextServiceFactory::ProfileNetworkCon #if BUILDFLAG(CHROME_ROOT_STORE_CERT_MANAGEMENT_UI) DependsOn(net::ServerCertificateDatabaseServiceFactory::GetInstance()); #endif -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) DependsOn(client_certificates::CertificateProvisioningServiceFactory:: GetInstance()); #endif diff --git a/www/chromium/files/patch-chrome_browser_net_system__network__context__manager.cc b/www/chromium/files/patch-chrome_browser_net_system__network__context__manager.cc index a2d97eee0cab..d53897fdb8a2 100644 --- a/www/chromium/files/patch-chrome_browser_net_system__network__context__manager.cc +++ b/www/chromium/files/patch-chrome_browser_net_system__network__context__manager.cc @@ -1,138 +1,138 @@ ---- chrome/browser/net/system_network_context_manager.cc.orig 2025-07-02 06:08:04 UTC +--- chrome/browser/net/system_network_context_manager.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/net/system_network_context_manager.cc @@ -140,7 +140,7 @@ SystemNetworkContextManager* g_system_network_context_ // received a failed launch for a sandboxed network service. bool g_previously_failed_to_launch_sandboxed_service = false; -#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Whether kerberos library loading will work in the network service due to the // sandbox. bool g_network_service_will_allow_gssapi_library_load = false; @@ -148,7 +148,7 @@ bool g_network_service_will_allow_gssapi_library_load const char* kGssapiDesiredPref = #if BUILDFLAG(IS_CHROMEOS) prefs::kKerberosEnabled; -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) prefs::kReceivedHttpAuthNegotiateHeader; #endif #endif // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) @@ -194,7 +194,7 @@ network::mojom::HttpAuthDynamicParamsPtr CreateHttpAut auth_dynamic_params->basic_over_http_enabled = local_state->GetBoolean(prefs::kBasicAuthOverHttpEnabled); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) auth_dynamic_params->delegate_by_kdc_policy = local_state->GetBoolean(prefs::kAuthNegotiateDelegateByKdcPolicy); #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_CHROMEOS) @@ -209,7 +209,7 @@ network::mojom::HttpAuthDynamicParamsPtr CreateHttpAut local_state->GetString(prefs::kAuthAndroidNegotiateAccountType); #endif // BUILDFLAG(IS_ANDROID) -#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) auth_dynamic_params->allow_gssapi_library_load = local_state->GetBoolean(kGssapiDesiredPref); #endif // BUILDFLAG(IS_CHROMEOS) @@ -219,7 +219,7 @@ network::mojom::HttpAuthDynamicParamsPtr CreateHttpAut void OnNewHttpAuthDynamicParams( network::mojom::HttpAuthDynamicParamsPtr& params) { -#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // The kerberos library is incompatible with the network service sandbox, so // if library loading is now enabled, the network service needs to be // restarted. It will be restarted unsandboxed because is @@ -261,11 +261,11 @@ NetworkSandboxState IsNetworkSandboxEnabledInternal() if (g_previously_failed_to_launch_sandboxed_service) { return NetworkSandboxState::kDisabledBecauseOfFailedLaunch; } -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) auto* local_state = g_browser_process->local_state(); #endif -#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // The network service sandbox and the kerberos library are incompatible. // If kerberos is enabled by policy, disable the network service sandbox. if (g_network_service_will_allow_gssapi_library_load || @@ -281,7 +281,7 @@ NetworkSandboxState IsNetworkSandboxEnabledInternal() } #endif // BUILDFLAG(IS_WIN) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (local_state && local_state->HasPrefPath(prefs::kNetworkServiceSandboxEnabled)) { return local_state->GetBoolean(prefs::kNetworkServiceSandboxEnabled) @@ -527,7 +527,7 @@ void SystemNetworkContextManager::DeleteInstance() { g_system_network_context_manager = nullptr; } -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) SystemNetworkContextManager::GssapiLibraryLoadObserver:: GssapiLibraryLoadObserver(SystemNetworkContextManager* owner) : owner_(owner) {} @@ -585,7 +585,7 @@ SystemNetworkContextManager::SystemNetworkContextManag pref_change_registrar_.Add(prefs::kAllHttpAuthSchemesAllowedForOrigins, auth_pref_callback); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) pref_change_registrar_.Add(prefs::kAuthNegotiateDelegateByKdcPolicy, auth_pref_callback); #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_CHROMEOS) @@ -599,7 +599,7 @@ SystemNetworkContextManager::SystemNetworkContextManag auth_pref_callback); #endif // BUILDFLAG(IS_ANDROID) -#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) pref_change_registrar_.Add(kGssapiDesiredPref, auth_pref_callback); #endif // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) @@ -670,7 +670,7 @@ void SystemNetworkContextManager::RegisterPrefs(PrefRe registry->RegisterStringPref(prefs::kAuthNegotiateDelegateAllowlist, std::string()); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) registry->RegisterBooleanPref(prefs::kAuthNegotiateDelegateByKdcPolicy, false); #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_CHROMEOS) @@ -695,11 +695,11 @@ void SystemNetworkContextManager::RegisterPrefs(PrefRe registry->RegisterListPref(prefs::kExplicitlyAllowedNetworkPorts); -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) registry->RegisterBooleanPref(prefs::kNetworkServiceSandboxEnabled, true); #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) registry->RegisterBooleanPref(prefs::kReceivedHttpAuthNegotiateHeader, false); #endif // BUILDFLAG(IS_LINUX) @@ -753,7 +753,7 @@ void SystemNetworkContextManager::OnNetworkServiceCrea OnNewHttpAuthDynamicParams(http_auth_dynamic_params); network_service->ConfigureHttpAuthPrefs(std::move(http_auth_dynamic_params)); -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) gssapi_library_loader_observer_.Install(network_service); #endif // BUILDFLAG(IS_LINUX) -@@ -975,7 +975,7 @@ bool SystemNetworkContextManager::IsNetworkSandboxEnab +@@ -980,7 +980,7 @@ bool SystemNetworkContextManager::IsNetworkSandboxEnab break; } -#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (!enabled) { g_network_service_will_allow_gssapi_library_load = true; } diff --git a/www/chromium/files/patch-chrome_browser_net_system__network__context__manager.h b/www/chromium/files/patch-chrome_browser_net_system__network__context__manager.h index a7bca37bc021..938cca5d9553 100644 --- a/www/chromium/files/patch-chrome_browser_net_system__network__context__manager.h +++ b/www/chromium/files/patch-chrome_browser_net_system__network__context__manager.h @@ -1,20 +1,20 @@ ---- chrome/browser/net/system_network_context_manager.h.orig 2025-07-02 06:08:04 UTC +--- chrome/browser/net/system_network_context_manager.h.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/net/system_network_context_manager.h -@@ -198,7 +198,7 @@ class SystemNetworkContextManager { +@@ -202,7 +202,7 @@ class SystemNetworkContextManager { class URLLoaderFactoryForSystem; class NetworkProcessLaunchWatcher; -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) class GssapiLibraryLoadObserver : public network::mojom::GssapiLibraryLoadObserver { public: -@@ -281,7 +281,7 @@ class SystemNetworkContextManager { +@@ -285,7 +285,7 @@ class SystemNetworkContextManager { std::unique_ptr network_annotation_monitor_; #endif // BUILDFLAG(IS_CHROMEOS) -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) GssapiLibraryLoadObserver gssapi_library_loader_observer_{this}; #endif // BUILDFLAG(IS_LINUX) diff --git a/www/chromium/files/patch-chrome_browser_new__tab__page_modules_file__suggestion_drive__service.cc b/www/chromium/files/patch-chrome_browser_new__tab__page_modules_file__suggestion_drive__service.cc index 9c0aa3afd6c5..69fd887faf6d 100644 --- a/www/chromium/files/patch-chrome_browser_new__tab__page_modules_file__suggestion_drive__service.cc +++ b/www/chromium/files/patch-chrome_browser_new__tab__page_modules_file__suggestion_drive__service.cc @@ -1,11 +1,11 @@ ---- chrome/browser/new_tab_page/modules/file_suggestion/drive_service.cc.orig 2025-02-19 07:43:18 UTC +--- chrome/browser/new_tab_page/modules/file_suggestion/drive_service.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/new_tab_page/modules/file_suggestion/drive_service.cc -@@ -35,7 +35,7 @@ +@@ -36,7 +36,7 @@ #include "services/network/public/cpp/resource_request.h" namespace { -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) constexpr char kPlatform[] = "LINUX"; #elif BUILDFLAG(IS_WIN) constexpr char kPlatform[] = "WINDOWS"; diff --git a/www/chromium/files/patch-chrome_browser_new__tab__page_new__tab__page__util.cc b/www/chromium/files/patch-chrome_browser_new__tab__page_new__tab__page__util.cc index 31152f4d2ecd..f115662b6b2d 100644 --- a/www/chromium/files/patch-chrome_browser_new__tab__page_new__tab__page__util.cc +++ b/www/chromium/files/patch-chrome_browser_new__tab__page_new__tab__page__util.cc @@ -1,11 +1,11 @@ ---- chrome/browser/new_tab_page/new_tab_page_util.cc.orig 2025-07-02 06:08:04 UTC +--- chrome/browser/new_tab_page/new_tab_page_util.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/new_tab_page/new_tab_page_util.cc -@@ -29,7 +29,7 @@ bool IsOsSupportedForCart() { +@@ -32,7 +32,7 @@ bool IsOsSupportedForCart() { } bool IsOsSupportedForDrive() { -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) return true; #else return false; diff --git a/www/chromium/files/patch-chrome_browser_password__manager_chrome__password__manager__client.cc b/www/chromium/files/patch-chrome_browser_password__manager_chrome__password__manager__client.cc index 23ea9455b4fe..76b2d13bb7c9 100644 --- a/www/chromium/files/patch-chrome_browser_password__manager_chrome__password__manager__client.cc +++ b/www/chromium/files/patch-chrome_browser_password__manager_chrome__password__manager__client.cc @@ -1,38 +1,38 @@ ---- chrome/browser/password_manager/chrome_password_manager_client.cc.orig 2025-07-02 06:08:04 UTC +--- chrome/browser/password_manager/chrome_password_manager_client.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/password_manager/chrome_password_manager_client.cc -@@ -658,7 +658,7 @@ void ChromePasswordManagerClient:: +@@ -764,7 +764,7 @@ void ChromePasswordManagerClient:: bool ChromePasswordManagerClient::IsReauthBeforeFillingRequired( device_reauth::DeviceAuthenticator* authenticator) { #if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) if (!GetLocalStatePrefs() || !GetPrefs() || !authenticator) { return false; } -@@ -936,7 +936,7 @@ void ChromePasswordManagerClient::NotifyUserCredential +@@ -1043,7 +1043,7 @@ void ChromePasswordManagerClient::NotifyUserCredential } void ChromePasswordManagerClient::NotifyKeychainError() { -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) PasswordsClientUIDelegate* manage_passwords_ui_controller = PasswordsClientUIDelegateFromWebContents(web_contents()); if (manage_passwords_ui_controller) { -@@ -2043,7 +2043,7 @@ void ChromePasswordManagerClient::HideFillingUI() { +@@ -2101,7 +2101,7 @@ void ChromePasswordManagerClient::HideFillingUI() { bool ChromePasswordManagerClient::IsPasswordManagementEnabledForCurrentPage( const GURL& url) const { #if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) if (IsPasswordManagerForUrlDisallowedByPolicy(url)) { return false; } -@@ -2082,7 +2082,7 @@ bool ChromePasswordManagerClient::IsPasswordManagement +@@ -2140,7 +2140,7 @@ bool ChromePasswordManagerClient::IsPasswordManagement } #if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) bool ChromePasswordManagerClient::IsPasswordManagerForUrlDisallowedByPolicy( const GURL& url) const { if (!GetPrefs() || !GetPrefs()->HasPrefPath( diff --git a/www/chromium/files/patch-chrome_browser_policy_configuration__policy__handler__list__factory.cc b/www/chromium/files/patch-chrome_browser_policy_configuration__policy__handler__list__factory.cc index 0809f9f0139a..3baa9c6fc702 100644 --- a/www/chromium/files/patch-chrome_browser_policy_configuration__policy__handler__list__factory.cc +++ b/www/chromium/files/patch-chrome_browser_policy_configuration__policy__handler__list__factory.cc @@ -1,206 +1,206 @@ ---- chrome/browser/policy/configuration_policy_handler_list_factory.cc.orig 2025-07-02 06:08:04 UTC +--- chrome/browser/policy/configuration_policy_handler_list_factory.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/policy/configuration_policy_handler_list_factory.cc @@ -249,7 +249,7 @@ #include "components/spellcheck/browser/pref_names.h" #endif // BUILDFLAG(ENABLE_SPELLCHECK) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "chrome/browser/browser_switcher/browser_switcher_prefs.h" #include "chrome/browser/enterprise/idle/action.h" #include "chrome/browser/enterprise/signin/enterprise_signin_prefs.h" -@@ -570,7 +570,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = +@@ -574,7 +574,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = prefs::kManagedDefaultSmartCardConnectSetting, base::Value::Type::INTEGER }, #endif -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) { key::kDeletingUndecryptablePasswordsEnabled, password_manager::prefs::kDeletingUndecryptablePasswordsEnabled, base::Value::Type::BOOLEAN }, -@@ -939,7 +939,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = +@@ -945,7 +945,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = base::Value::Type::LIST }, #endif // BUILDFLAG(ENABLE_EXTENSIONS_CORE) #if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) \ - || BUILDFLAG(IS_MAC) + || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) { key::kRequireOnlineRevocationChecksForLocalAnchors, prefs::kCertRevocationCheckingRequiredLocalAnchors, base::Value::Type::BOOLEAN }, -@@ -951,7 +951,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = +@@ -957,7 +957,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = base::Value::Type::LIST }, #endif // #if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) // || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) -#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) { key::kFullscreenAllowed, prefs::kFullscreenAllowed, base::Value::Type::BOOLEAN }, -@@ -1830,7 +1830,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = +@@ -1839,7 +1839,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = base::Value::Type::INTEGER}, #endif // BUILDFLAG(IS_CHROMEOS) -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) { key::kGSSAPILibraryName, prefs::kGSSAPILibraryName, base::Value::Type::STRING }, -@@ -1889,7 +1889,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = +@@ -1898,7 +1898,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = base::Value::Type::BOOLEAN }, #endif // BUILDFLAG(IS_WIN) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) { key::kNetworkServiceSandboxEnabled, prefs::kNetworkServiceSandboxEnabled, base::Value::Type::BOOLEAN }, -@@ -1909,12 +1909,12 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = +@@ -1918,12 +1918,12 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = prefs::kTotalMemoryLimitMb, base::Value::Type::INTEGER }, #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) { key::kBackgroundModeEnabled, prefs::kBackgroundModeEnabled, base::Value::Type::BOOLEAN }, #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) { key::kUnmanagedDeviceSignalsConsentFlowEnabled, device_signals::prefs::kUnmanagedDeviceSignalsConsentFlowEnabled, base::Value::Type::BOOLEAN }, -@@ -1928,7 +1928,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = +@@ -1937,7 +1937,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = prefs::kLiveTranslateEnabled, base::Value::Type::BOOLEAN }, #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) { key::kDefaultBrowserSettingEnabled, prefs::kDefaultBrowserSettingEnabled, base::Value::Type::BOOLEAN }, -@@ -1940,7 +1940,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = +@@ -1949,7 +1949,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = base::Value::Type::BOOLEAN }, #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) \ - || BUILDFLAG(IS_CHROMEOS) + || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) { key::kAutoplayAllowed, prefs::kAutoplayAllowed, base::Value::Type::BOOLEAN }, -@@ -2041,7 +2041,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = +@@ -2050,7 +2050,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = base::Value::Type::BOOLEAN }, #endif // !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_CHROMEOS) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) { key::kAlternativeBrowserPath, browser_switcher::prefs::kAlternativeBrowserPath, base::Value::Type::STRING }, -@@ -2142,7 +2142,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = +@@ -2149,7 +2149,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = base::Value::Type::BOOLEAN }, #endif // BUILDFLAG(IS_CHROMEOS) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) { key::kAuthNegotiateDelegateByKdcPolicy, prefs::kAuthNegotiateDelegateByKdcPolicy, base::Value::Type::BOOLEAN }, -@@ -2216,7 +2216,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = +@@ -2223,7 +2223,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = ash::prefs::kUrlParameterToAutofillSAMLUsername, base::Value::Type::STRING }, #endif // BUILDFLAG(IS_CHROMEOS) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) { key::kNTPFooterExtensionAttributionEnabled, prefs::kNTPFooterExtensionAttributionEnabled, base::Value::Type::BOOLEAN }, -@@ -2248,7 +2248,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = +@@ -2255,7 +2255,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = prefs::kUiAutomationProviderEnabled, base::Value::Type::BOOLEAN }, #endif // BUILDFLAG(IS_WIN) -#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) { key::kOutOfProcessSystemDnsResolutionEnabled, prefs::kOutOfProcessSystemDnsResolutionEnabled, base::Value::Type::BOOLEAN }, -@@ -2285,7 +2285,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = +@@ -2286,7 +2286,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = base::Value::Type::INTEGER }, #endif #if BUILDFLAG(ENABLE_EXTENSIONS) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) { key::kExtensionInstallTypeBlocklist, extensions::pref_names::kExtensionInstallTypeBlocklist, base::Value::Type::LIST}, -@@ -2308,7 +2308,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = +@@ -2309,7 +2309,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = { key::kTabCompareSettings, optimization_guide::prefs::kProductSpecificationsEnterprisePolicyAllowed, base::Value::Type::INTEGER}, -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_ANDROID) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) { key::kChromeForTestingAllowed, prefs::kChromeForTestingAllowed, base::Value::Type::BOOLEAN }, -@@ -2382,7 +2382,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = +@@ -2390,7 +2390,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = policy_prefs::kBuiltInAIAPIsEnabled, base::Value::Type::BOOLEAN }, #endif // BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_FUCHSIA) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) { key::kNTPFooterManagementNoticeEnabled, prefs::kNTPFooterManagementNoticeEnabled, base::Value::Type::BOOLEAN }, -@@ -2520,7 +2520,7 @@ std::unique_ptr BuildH +@@ -2524,7 +2524,7 @@ std::unique_ptr BuildH // Policies for all platforms - End #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) handlers->AddHandler(std::make_unique( key::kMemorySaverModeSavings, performance_manager::user_tuning::prefs::kMemorySaverModeAggressiveness, -@@ -2794,7 +2794,7 @@ std::unique_ptr BuildH +@@ -2803,7 +2803,7 @@ std::unique_ptr BuildH key::kBrowsingDataLifetime, browsing_data::prefs::kBrowsingDataLifetime, chrome_schema)); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) handlers->AddHandler(std::make_unique()); handlers->AddHandler(std::make_unique()); handlers->AddHandler(std::make_unique()); -@@ -2894,7 +2894,7 @@ std::unique_ptr BuildH +@@ -2903,7 +2903,7 @@ std::unique_ptr BuildH std::vector> signin_legacy_policies; #if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || \ - BUILDFLAG(IS_LINUX) + BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) signin_legacy_policies.push_back(std::make_unique( key::kForceBrowserSignin, prefs::kForceBrowserSignin, base::Value::Type::BOOLEAN)); -@@ -3264,7 +3264,7 @@ std::unique_ptr BuildH +@@ -3269,7 +3269,7 @@ std::unique_ptr BuildH #endif #if BUILDFLAG(ENABLE_SPELLCHECK) -#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) handlers->AddHandler(std::make_unique()); handlers->AddHandler( std::make_unique( -@@ -3272,7 +3272,7 @@ std::unique_ptr BuildH +@@ -3277,7 +3277,7 @@ std::unique_ptr BuildH #endif // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) #endif // BUILDFLAG(ENABLE_SPELLCHECK) -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) handlers->AddHandler(std::make_unique( key::kAllowSystemNotifications, prefs::kAllowSystemNotifications, base::Value::Type::BOOLEAN)); -@@ -3325,7 +3325,7 @@ std::unique_ptr BuildH +@@ -3330,7 +3330,7 @@ std::unique_ptr BuildH std::vector gen_ai_default_policies; #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) gen_ai_default_policies.emplace_back( key::kAutofillPredictionSettings, optimization_guide::prefs:: diff --git a/www/chromium/files/patch-chrome_browser_prefs_browser__prefs.cc b/www/chromium/files/patch-chrome_browser_prefs_browser__prefs.cc index fbbf0601ee56..defc0b79da73 100644 --- a/www/chromium/files/patch-chrome_browser_prefs_browser__prefs.cc +++ b/www/chromium/files/patch-chrome_browser_prefs_browser__prefs.cc @@ -1,67 +1,67 @@ ---- chrome/browser/prefs/browser_prefs.cc.orig 2025-07-02 06:08:04 UTC +--- chrome/browser/prefs/browser_prefs.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/prefs/browser_prefs.cc -@@ -324,7 +324,7 @@ +@@ -327,7 +327,7 @@ #include "chrome/browser/devtools/devtools_window.h" #endif // BUILDFLAG(ENABLE_DEVTOOLS_FRONTEND) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "chrome/browser/ui/webui/whats_new/whats_new_ui.h" #endif -@@ -495,11 +495,11 @@ +@@ -494,11 +494,11 @@ #endif #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "components/device_signals/core/browser/pref_names.h" // nogncheck due to crbug.com/1125897 #endif -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "chrome/browser/browser_switcher/browser_switcher_prefs.h" #include "chrome/browser/enterprise/signin/enterprise_signin_prefs.h" #endif -@@ -527,7 +527,7 @@ +@@ -526,7 +526,7 @@ #include "chrome/browser/sessions/session_service_log.h" #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "ui/color/system_theme.h" #endif -@@ -1714,7 +1714,7 @@ void RegisterLocalState(PrefRegistrySimple* registry) +@@ -1791,7 +1791,7 @@ void RegisterLocalState(PrefRegistrySimple* registry) on_device_translation::RegisterLocalStatePrefs(registry); #endif // BUILDFLAG(ENABLE_ON_DEVICE_TRANSLATION) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) WhatsNewUI::RegisterLocalStatePrefs(registry); #endif -@@ -1871,7 +1871,7 @@ void RegisterLocalState(PrefRegistrySimple* registry) +@@ -1945,7 +1945,7 @@ void RegisterLocalState(PrefRegistrySimple* registry) #endif // BUILDFLAG(ENABLE_PDF) #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || \ - BUILDFLAG(IS_ANDROID) + BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) registry->RegisterBooleanPref(prefs::kChromeForTestingAllowed, true); #endif -@@ -2235,12 +2235,12 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySync +@@ -2310,12 +2310,12 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySync #endif #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) device_signals::RegisterProfilePrefs(registry); #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || // BUILDFLAG(IS_CHROMEOS) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) browser_switcher::BrowserSwitcherPrefs::RegisterProfilePrefs(registry); enterprise_signin::RegisterProfilePrefs(registry); #endif diff --git a/www/chromium/files/patch-chrome_browser_printing_print__backend__service__manager.cc b/www/chromium/files/patch-chrome_browser_printing_print__backend__service__manager.cc index 981de7b44b68..2c7f76b52fb9 100644 --- a/www/chromium/files/patch-chrome_browser_printing_print__backend__service__manager.cc +++ b/www/chromium/files/patch-chrome_browser_printing_print__backend__service__manager.cc @@ -1,29 +1,29 @@ ---- chrome/browser/printing/print_backend_service_manager.cc.orig 2025-07-02 06:08:04 UTC +--- chrome/browser/printing/print_backend_service_manager.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/printing/print_backend_service_manager.cc -@@ -35,7 +35,7 @@ +@@ -37,7 +37,7 @@ #include "printing/printing_context.h" #include "printing/printing_features.h" -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "content/public/common/content_switches.h" #include "ui/linux/linux_ui.h" #endif -@@ -879,7 +879,7 @@ PrintBackendServiceManager::GetServiceFromBundle( +@@ -909,7 +909,7 @@ PrintBackendServiceManager::GetServiceFromBundle( << remote_id << "`"; std::vector extra_switches; -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (auto* linux_ui = ui::LinuxUi::instance()) { extra_switches = linux_ui->GetCmdLineFlagsForCopy(); } -@@ -1065,7 +1065,7 @@ PrintBackendServiceManager::DetermineIdleTimeoutUpdate +@@ -1095,7 +1095,7 @@ PrintBackendServiceManager::DetermineIdleTimeoutUpdate return kNoClientsRegisteredResetOnIdleTimeout; case ClientType::kQueryWithUi: -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // No need to update if there were other query with UI clients. if (HasQueryWithUiClientForRemoteId(remote_id)) { return std::nullopt; diff --git a/www/chromium/files/patch-chrome_browser_profiles_chrome__browser__main__extra__parts__profiles.cc b/www/chromium/files/patch-chrome_browser_profiles_chrome__browser__main__extra__parts__profiles.cc index f86f86bfe42e..386d37a7ae7f 100644 --- a/www/chromium/files/patch-chrome_browser_profiles_chrome__browser__main__extra__parts__profiles.cc +++ b/www/chromium/files/patch-chrome_browser_profiles_chrome__browser__main__extra__parts__profiles.cc @@ -1,137 +1,137 @@ ---- chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc.orig 2025-07-02 06:08:04 UTC +--- chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc @@ -368,7 +368,7 @@ #endif #if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_WIN) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) #include "chrome/browser/enterprise/idle/idle_service_factory.h" #endif -@@ -410,7 +410,7 @@ +@@ -411,7 +411,7 @@ #endif #if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_WIN) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) #include "chrome/browser/enterprise/connectors/device_trust/device_trust_connector_service_factory.h" #include "chrome/browser/enterprise/connectors/device_trust/device_trust_service_factory.h" #include "chrome/browser/enterprise/signals/user_permission_service_factory.h" -@@ -418,7 +418,7 @@ +@@ -419,7 +419,7 @@ #include "chrome/browser/ui/tabs/saved_tab_groups/saved_tab_group_utils.h" #endif -#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) #include "chrome/browser/policy/messaging_layer/util/manual_test_heartbeat_event_factory.h" #endif -@@ -426,7 +426,7 @@ +@@ -427,7 +427,7 @@ #include "chrome/browser/history_embeddings/history_embeddings_service_factory.h" #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) #include "chrome/browser/browser_switcher/browser_switcher_service_factory.h" #include "chrome/browser/enterprise/client_certificates/certificate_provisioning_service_factory.h" #include "chrome/browser/enterprise/client_certificates/certificate_store_factory.h" -@@ -750,7 +750,7 @@ void ChromeBrowserMainExtraPartsProfiles:: +@@ -753,7 +753,7 @@ void ChromeBrowserMainExtraPartsProfiles:: DiceBoundSessionCookieServiceFactory::GetInstance(); #endif #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) browser_switcher::BrowserSwitcherServiceFactory::GetInstance(); #endif browser_sync::UserEventServiceFactory::GetInstance(); -@@ -805,13 +805,13 @@ void ChromeBrowserMainExtraPartsProfiles:: +@@ -812,13 +812,13 @@ void ChromeBrowserMainExtraPartsProfiles:: collaboration::CollaborationServiceFactory::GetInstance(); collaboration::messaging::MessagingBackendServiceFactory::GetInstance(); #if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_WIN) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) tab_groups::CollaborationMessagingObserverFactory::GetInstance(); #endif commerce::ShoppingServiceFactory::GetInstance(); ConsentAuditorFactory::GetInstance(); ContentIndexProviderFactory::GetInstance(); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) contextual_cueing::ContextualCueingServiceFactory::GetInstance(); #endif CookieControlsServiceFactory::GetInstance(); -@@ -873,31 +873,31 @@ void ChromeBrowserMainExtraPartsProfiles:: +@@ -880,31 +880,31 @@ void ChromeBrowserMainExtraPartsProfiles:: enterprise_connectors::ConnectorsServiceFactory::GetInstance(); enterprise_connectors::ReportingEventRouterFactory::GetInstance(); #if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_WIN) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) enterprise_connectors::DeviceTrustConnectorServiceFactory::GetInstance(); enterprise_connectors::DeviceTrustServiceFactory::GetInstance(); #endif -#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN)) && \ +#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD)) && \ BUILDFLAG(ENTERPRISE_LOCAL_CONTENT_ANALYSIS) && \ BUILDFLAG(SAFE_BROWSING_AVAILABLE) enterprise_connectors::LocalBinaryUploadServiceFactory::GetInstance(); #endif #if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_WIN) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) enterprise_idle::IdleServiceFactory::GetInstance(); #endif #if !BUILDFLAG(IS_CHROMEOS) enterprise_reporting::CloudProfileReportingServiceFactory::GetInstance(); #endif enterprise_reporting::LegacyTechServiceFactory::GetInstance(); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) enterprise_signals::SignalsAggregatorFactory::GetInstance(); #endif #if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_WIN) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) enterprise_signals::UserPermissionServiceFactory::GetInstance(); #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) enterprise_signin::EnterpriseSigninServiceFactory::GetInstance(); #endif #if BUILDFLAG(ENABLE_SESSION_SERVICE) -@@ -1029,7 +1029,7 @@ void ChromeBrowserMainExtraPartsProfiles:: +@@ -1036,7 +1036,7 @@ void ChromeBrowserMainExtraPartsProfiles:: #if BUILDFLAG(IS_ANDROID) MerchantViewerDataManagerFactory::GetInstance(); #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) metrics::DesktopProfileSessionDurationsServiceFactory::GetInstance(); #endif #if !BUILDFLAG(IS_ANDROID) -@@ -1156,7 +1156,7 @@ void ChromeBrowserMainExtraPartsProfiles:: +@@ -1163,7 +1163,7 @@ void ChromeBrowserMainExtraPartsProfiles:: #if BUILDFLAG(IS_CHROMEOS) policy::PolicyCertServiceFactory::GetInstance(); #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) policy::ProfileTokenPolicyWebSigninServiceFactory::GetInstance(); policy::UserPolicyOidcSigninServiceFactory::GetInstance(); #endif -@@ -1202,7 +1202,7 @@ void ChromeBrowserMainExtraPartsProfiles:: +@@ -1209,7 +1209,7 @@ void ChromeBrowserMainExtraPartsProfiles:: #if !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_CHROMEOS) ProfileStatisticsFactory::GetInstance(); #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) ProfileTokenWebSigninInterceptorFactory::GetInstance(); OidcAuthenticationSigninInterceptorFactory::GetInstance(); #endif -@@ -1222,7 +1222,7 @@ void ChromeBrowserMainExtraPartsProfiles:: +@@ -1229,7 +1229,7 @@ void ChromeBrowserMainExtraPartsProfiles:: ReduceAcceptLanguageFactory::GetInstance(); RendererUpdaterFactory::GetInstance(); regional_capabilities::RegionalCapabilitiesServiceFactory::GetInstance(); -#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) reporting::ManualTestHeartbeatEventFactory::GetInstance(); #endif #if !BUILDFLAG(IS_ANDROID) diff --git a/www/chromium/files/patch-chrome_browser_profiles_profile__impl.cc b/www/chromium/files/patch-chrome_browser_profiles_profile__impl.cc index dad6497ea5fa..5783e415663d 100644 --- a/www/chromium/files/patch-chrome_browser_profiles_profile__impl.cc +++ b/www/chromium/files/patch-chrome_browser_profiles_profile__impl.cc @@ -1,40 +1,40 @@ ---- chrome/browser/profiles/profile_impl.cc.orig 2025-07-02 06:08:04 UTC +--- chrome/browser/profiles/profile_impl.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/profiles/profile_impl.cc -@@ -269,6 +269,10 @@ +@@ -267,6 +267,10 @@ #include "chrome/browser/safe_browsing/safe_browsing_service.h" #endif +#if BUILDFLAG(IS_BSD) +#include "sandbox/policy/sandbox.h" +#endif + using bookmarks::BookmarkModel; using content::BrowserThread; using content::DownloadManagerDelegate; -@@ -593,7 +597,7 @@ void ProfileImpl::LoadPrefsForNormalStartup(bool async +@@ -601,7 +605,7 @@ void ProfileImpl::LoadPrefsForNormalStartup(bool async policy_provider = GetUserCloudPolicyManagerAsh(); #else // !BUILDFLAG(IS_CHROMEOS) { -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) ProfileManager* profile_manager = g_browser_process->profile_manager(); ProfileAttributesEntry* entry = profile_manager->GetProfileAttributesStorage() -@@ -889,7 +893,17 @@ void ProfileImpl::DoFinalInit(CreateMode create_mode) +@@ -884,7 +888,17 @@ void ProfileImpl::DoFinalInit(CreateMode create_mode) } base::FilePath ProfileImpl::last_selected_directory() { +#if BUILDFLAG(IS_OPENBSD) + // If unveil(2) is used, force the file dialog directory to something we + // know is available. + auto* sandbox = sandbox::policy::SandboxLinux::GetInstance(); + if (sandbox->unveil_initialized()) + return GetPrefs()->GetFilePath(prefs::kDownloadDefaultDirectory); + else + return GetPrefs()->GetFilePath(prefs::kSelectFileLastDirectory); +#else return GetPrefs()->GetFilePath(prefs::kSelectFileLastDirectory); +#endif } void ProfileImpl::set_last_selected_directory(const base::FilePath& path) { diff --git a/www/chromium/files/patch-chrome_browser_profiles_profiles__state.cc b/www/chromium/files/patch-chrome_browser_profiles_profiles__state.cc index 3a29a1dca29f..c1e87bc93edf 100644 --- a/www/chromium/files/patch-chrome_browser_profiles_profiles__state.cc +++ b/www/chromium/files/patch-chrome_browser_profiles_profiles__state.cc @@ -1,29 +1,29 @@ ---- chrome/browser/profiles/profiles_state.cc.orig 2025-03-05 08:14:56 UTC +--- chrome/browser/profiles/profiles_state.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/profiles/profiles_state.cc -@@ -188,7 +188,7 @@ bool IsGuestModeRequested(const base::CommandLine& com +@@ -191,7 +191,7 @@ bool IsGuestModeRequested(const base::CommandLine& com PrefService* local_state, bool show_warning) { #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_WIN) || \ - BUILDFLAG(IS_MAC) + BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) DCHECK(local_state); // Check if guest mode enforcement commandline switch or policy are provided. -@@ -224,7 +224,7 @@ bool IsGuestModeEnabled() { +@@ -227,7 +227,7 @@ bool IsGuestModeEnabled() { return false; } -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) // If there are any supervised profiles, disable guest mode. if (std::ranges::any_of(g_browser_process->profile_manager() ->GetProfileAttributesStorage() -@@ -240,7 +240,7 @@ bool IsGuestModeEnabled() { +@@ -243,7 +243,7 @@ bool IsGuestModeEnabled() { } bool IsGuestModeEnabled(const Profile& profile) { -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) ProfileAttributesEntry* profile_attributes = g_browser_process->profile_manager() ->GetProfileAttributesStorage() diff --git a/www/chromium/files/patch-chrome_browser_regional__capabilities_regional__capabilities__service__client.cc b/www/chromium/files/patch-chrome_browser_regional__capabilities_regional__capabilities__service__client.cc deleted file mode 100644 index aff313dad577..000000000000 --- a/www/chromium/files/patch-chrome_browser_regional__capabilities_regional__capabilities__service__client.cc +++ /dev/null @@ -1,11 +0,0 @@ ---- chrome/browser/regional_capabilities/regional_capabilities_service_client.cc.orig 2025-07-02 06:08:04 UTC -+++ chrome/browser/regional_capabilities/regional_capabilities_service_client.cc -@@ -133,7 +133,7 @@ void RegionalCapabilitiesServiceClient::FetchCountryId - base::android::AttachCurrentThread(), - reinterpret_cast(heap_callback.release())); - } --#elif BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) -+#elif BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - void RegionalCapabilitiesServiceClient::FetchCountryId( - CountryIdCallback on_country_id_fetched) { - std::move(on_country_id_fetched).Run(variations_latest_country_id_); diff --git a/www/chromium/files/patch-chrome_browser_regional__capabilities_regional__capabilities__service__factory.cc b/www/chromium/files/patch-chrome_browser_regional__capabilities_regional__capabilities__service__factory.cc new file mode 100644 index 000000000000..1e929597d277 --- /dev/null +++ b/www/chromium/files/patch-chrome_browser_regional__capabilities_regional__capabilities__service__factory.cc @@ -0,0 +1,20 @@ +--- chrome/browser/regional_capabilities/regional_capabilities_service_factory.cc.orig 2025-08-07 06:57:29 UTC ++++ chrome/browser/regional_capabilities/regional_capabilities_service_factory.cc +@@ -21,7 +21,7 @@ + #include "chrome/browser/regional_capabilities/regional_capabilities_service_client_chromeos.h" + #endif + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + #include "chrome/browser/regional_capabilities/regional_capabilities_service_client_linux.h" + #endif + +@@ -72,7 +72,7 @@ RegionalCapabilitiesServiceFactory::BuildServiceInstan + #elif BUILDFLAG(IS_CHROMEOS) + std::make_unique( + g_browser_process->variations_service()); +-#elif BUILDFLAG(IS_LINUX) ++#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + std::make_unique( + g_browser_process->variations_service()); + #else diff --git a/www/chromium/files/patch-chrome_browser_signin_signin__util.cc b/www/chromium/files/patch-chrome_browser_signin_signin__util.cc index 6283e56cc7dd..64c0a726911c 100644 --- a/www/chromium/files/patch-chrome_browser_signin_signin__util.cc +++ b/www/chromium/files/patch-chrome_browser_signin_signin__util.cc @@ -1,11 +1,20 @@ ---- chrome/browser/signin/signin_util.cc.orig 2025-04-04 08:52:13 UTC +--- chrome/browser/signin/signin_util.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/signin/signin_util.cc -@@ -80,7 +80,7 @@ CookiesMover::CookiesMover(base::WeakPtr sour +@@ -84,7 +84,7 @@ CookiesMover::CookiesMover(base::WeakPtr sour CookiesMover::~CookiesMover() = default; void CookiesMover::StartMovingCookies() { -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) bool allow_cookies_to_be_moved = base::FeatureList::IsEnabled( profile_management::features::kThirdPartyProfileManagement); #else +@@ -344,7 +344,7 @@ SignedInState GetSignedInState( + return SignedInState::kSignedOut; + } + +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) + bool ShouldShowHistorySyncOptinScreen(Profile& profile) { + if (GetSignedInState(IdentityManagerFactory::GetForProfile(&profile)) != + signin_util::SignedInState::kSignedIn) { diff --git a/www/chromium/files/patch-chrome_browser_signin_signin__util.h b/www/chromium/files/patch-chrome_browser_signin_signin__util.h new file mode 100644 index 000000000000..3e47f64318cb --- /dev/null +++ b/www/chromium/files/patch-chrome_browser_signin_signin__util.h @@ -0,0 +1,11 @@ +--- chrome/browser/signin/signin_util.h.orig 2025-08-07 06:57:29 UTC ++++ chrome/browser/signin/signin_util.h +@@ -168,7 +168,7 @@ bool IsSigninPending(signin::IdentityManager* identity + // Returns the current state of the primary account that is used in Chrome. + SignedInState GetSignedInState(const signin::IdentityManager* identity_manager); + +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) + // Returns if the necessary conditions to show the History Sync Optin screen + // are met. + // This method does not take into account any feature flags related to the above diff --git a/www/chromium/files/patch-chrome_browser_supervised__user_classify__url__navigation__throttle.cc b/www/chromium/files/patch-chrome_browser_supervised__user_classify__url__navigation__throttle.cc index 4a086d497e79..e338fa741c95 100644 --- a/www/chromium/files/patch-chrome_browser_supervised__user_classify__url__navigation__throttle.cc +++ b/www/chromium/files/patch-chrome_browser_supervised__user_classify__url__navigation__throttle.cc @@ -1,20 +1,20 @@ ---- chrome/browser/supervised_user/classify_url_navigation_throttle.cc.orig 2025-05-28 14:55:43 UTC +--- chrome/browser/supervised_user/classify_url_navigation_throttle.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/supervised_user/classify_url_navigation_throttle.cc -@@ -68,7 +68,7 @@ std::ostream& operator<<(std::ostream& stream, +@@ -70,7 +70,7 @@ std::ostream& operator<<(std::ostream& stream, } } -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) bool ShouldShowReAuthInterstitial( content::NavigationHandle& navigation_handle) { Profile* profile = Profile::FromBrowserContext( -@@ -229,7 +229,7 @@ void ClassifyUrlNavigationThrottle::OnInterstitialResu +@@ -232,7 +232,7 @@ void ClassifyUrlNavigationThrottle::OnInterstitialResu } case InterstitialResultCallbackActions::kCancelWithInterstitial: { CHECK(navigation_handle()); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) if (ShouldShowReAuthInterstitial(*navigation_handle())) { // Show the re-authentication interstitial if the user signed out of // the content area, as parent's approval requires authentication. diff --git a/www/chromium/files/patch-chrome_browser_supervised__user_supervised__user__metrics__service__factory.cc b/www/chromium/files/patch-chrome_browser_supervised__user_supervised__user__metrics__service__factory.cc index 11fb99e085af..18bc7c1e1c7e 100644 --- a/www/chromium/files/patch-chrome_browser_supervised__user_supervised__user__metrics__service__factory.cc +++ b/www/chromium/files/patch-chrome_browser_supervised__user_supervised__user__metrics__service__factory.cc @@ -1,20 +1,20 @@ ---- chrome/browser/supervised_user/supervised_user_metrics_service_factory.cc.orig 2025-01-15 09:18:26 UTC +--- chrome/browser/supervised_user/supervised_user_metrics_service_factory.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/supervised_user/supervised_user_metrics_service_factory.cc -@@ -14,7 +14,7 @@ - #include "components/supervised_user/core/browser/supervised_user_service.h" +@@ -15,7 +15,7 @@ #include "content/public/browser/browser_context.h" + #include "chrome/browser/supervised_user/metrics_service_accessor_delegate.h" -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "chrome/browser/supervised_user/linux_mac_windows/supervised_user_extensions_metrics_delegate_impl.h" #endif -@@ -62,7 +62,7 @@ SupervisedUserMetricsServiceFactory::BuildServiceInsta +@@ -63,7 +63,7 @@ SupervisedUserMetricsServiceFactory::BuildServiceInsta std::unique_ptr extensions_metrics_delegate = nullptr; -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) extensions_metrics_delegate = std::make_unique( extensions::ExtensionRegistry::Get(profile), profile); diff --git a/www/chromium/files/patch-chrome_browser_supervised__user_supervised__user__navigation__observer.cc b/www/chromium/files/patch-chrome_browser_supervised__user_supervised__user__navigation__observer.cc index 2678c8774eb1..669a7d482eb0 100644 --- a/www/chromium/files/patch-chrome_browser_supervised__user_supervised__user__navigation__observer.cc +++ b/www/chromium/files/patch-chrome_browser_supervised__user_supervised__user__navigation__observer.cc @@ -1,20 +1,20 @@ ---- chrome/browser/supervised_user/supervised_user_navigation_observer.cc.orig 2024-02-23 21:04:38 UTC +--- chrome/browser/supervised_user/supervised_user_navigation_observer.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/supervised_user/supervised_user_navigation_observer.cc -@@ -47,7 +47,7 @@ +@@ -48,7 +48,7 @@ #include "chrome/browser/supervised_user/android/supervised_user_web_content_handler_impl.h" #elif BUILDFLAG(IS_CHROMEOS) #include "chrome/browser/supervised_user/chromeos/supervised_user_web_content_handler_impl.h" -#elif BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) +#elif BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) #include "chrome/browser/supervised_user/linux_mac_windows/supervised_user_web_content_handler_impl.h" #endif -@@ -67,7 +67,7 @@ std::unique_ptr Cr +@@ -68,7 +68,7 @@ std::unique_ptr Cr #elif BUILDFLAG(IS_ANDROID) return std::make_unique( web_contents, frame_id, navigation_id); -#elif BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) +#elif BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) return std::make_unique( web_contents, frame_id, navigation_id); #endif diff --git a/www/chromium/files/patch-chrome_browser_sync_chrome__sync__controller__builder.cc b/www/chromium/files/patch-chrome_browser_sync_chrome__sync__controller__builder.cc index e96d944f1a86..1415d7789cbd 100644 --- a/www/chromium/files/patch-chrome_browser_sync_chrome__sync__controller__builder.cc +++ b/www/chromium/files/patch-chrome_browser_sync_chrome__sync__controller__builder.cc @@ -1,11 +1,11 @@ ---- chrome/browser/sync/chrome_sync_controller_builder.cc.orig 2025-04-04 08:52:13 UTC +--- chrome/browser/sync/chrome_sync_controller_builder.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/sync/chrome_sync_controller_builder.cc -@@ -280,7 +280,7 @@ ChromeSyncControllerBuilder::Build(syncer::SyncService +@@ -289,7 +289,7 @@ ChromeSyncControllerBuilder::Build(syncer::SyncService #if BUILDFLAG(ENABLE_SPELLCHECK) // Chrome prefers OS provided spell checkers where they exist. So only sync // the custom dictionary on platforms that typically don't provide one. -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) // Dictionary sync is enabled by default. if (spellcheck_service_.value()) { controllers.push_back( diff --git a/www/chromium/files/patch-chrome_browser_sync_sync__service__factory.cc b/www/chromium/files/patch-chrome_browser_sync_sync__service__factory.cc index 23ddb5a14286..a75f6c81df3f 100644 --- a/www/chromium/files/patch-chrome_browser_sync_sync__service__factory.cc +++ b/www/chromium/files/patch-chrome_browser_sync_sync__service__factory.cc @@ -1,38 +1,38 @@ ---- chrome/browser/sync/sync_service_factory.cc.orig 2025-05-28 14:55:43 UTC +--- chrome/browser/sync/sync_service_factory.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/sync/sync_service_factory.cc -@@ -110,7 +110,7 @@ +@@ -115,7 +115,7 @@ #endif // BUILDFLAG(IS_CHROMEOS) #if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_WIN) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) #include "chrome/browser/ui/tabs/saved_tab_groups/saved_tab_group_keyed_service.h" #include "chrome/browser/ui/tabs/saved_tab_groups/saved_tab_group_service_factory.h" #include "chrome/browser/ui/tabs/saved_tab_groups/saved_tab_group_utils.h" -@@ -137,7 +137,7 @@ namespace { +@@ -142,7 +142,7 @@ namespace { tab_groups::TabGroupSyncService* GetTabGroupSyncService(Profile* profile) { CHECK(profile); #if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_WIN) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) tab_groups::TabGroupSyncService* service = tab_groups::SavedTabGroupUtils::GetServiceForProfile(profile); CHECK(service); -@@ -381,7 +381,7 @@ std::unique_ptr BuildSyncService( +@@ -405,7 +405,7 @@ std::unique_ptr BuildSyncService( bool local_sync_backend_enabled = false; // Only check the local sync backend pref on the supported platforms of // Windows, Mac and Linux. -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) syncer::SyncPrefs prefs(profile->GetPrefs()); local_sync_backend_enabled = prefs.IsLocalSyncEnabled(); base::UmaHistogramBoolean("Sync.Local.Enabled2", local_sync_backend_enabled); -@@ -520,7 +520,7 @@ SyncServiceFactory::SyncServiceFactory() +@@ -544,7 +544,7 @@ SyncServiceFactory::SyncServiceFactory() DependsOn(ProfilePasswordStoreFactory::GetInstance()); DependsOn(PowerBookmarkServiceFactory::GetInstance()); #if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_WIN) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) DependsOn(tab_groups::SavedTabGroupServiceFactory::GetInstance()); #elif BUILDFLAG(IS_ANDROID) DependsOn(tab_groups::TabGroupSyncServiceFactory::GetInstance()); diff --git a/www/chromium/files/patch-chrome_browser_task__manager_sampling_task__manager__impl.cc b/www/chromium/files/patch-chrome_browser_task__manager_sampling_task__manager__impl.cc index 8fda8549035a..e585a82235c6 100644 --- a/www/chromium/files/patch-chrome_browser_task__manager_sampling_task__manager__impl.cc +++ b/www/chromium/files/patch-chrome_browser_task__manager_sampling_task__manager__impl.cc @@ -1,11 +1,11 @@ ---- chrome/browser/task_manager/sampling/task_manager_impl.cc.orig 2025-07-02 06:08:04 UTC +--- chrome/browser/task_manager/sampling/task_manager_impl.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/task_manager/sampling/task_manager_impl.cc -@@ -234,7 +234,7 @@ void TaskManagerImpl::GetUSERHandles(TaskId task_id, +@@ -235,7 +235,7 @@ void TaskManagerImpl::GetUSERHandles(TaskId task_id, } int TaskManagerImpl::GetOpenFdCount(TaskId task_id) const { -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) return GetTaskGroupByTaskId(task_id)->open_fd_count(); #else return -1; diff --git a/www/chromium/files/patch-chrome_browser_ui_actions_chrome__action__id.h b/www/chromium/files/patch-chrome_browser_ui_actions_chrome__action__id.h index cfb21d9103ec..4d0a296b0127 100644 --- a/www/chromium/files/patch-chrome_browser_ui_actions_chrome__action__id.h +++ b/www/chromium/files/patch-chrome_browser_ui_actions_chrome__action__id.h @@ -1,11 +1,11 @@ ---- chrome/browser/ui/actions/chrome_action_id.h.orig 2025-07-02 06:08:04 UTC +--- chrome/browser/ui/actions/chrome_action_id.h.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/ui/actions/chrome_action_id.h -@@ -503,7 +503,7 @@ +@@ -504,7 +504,7 @@ #if BUILDFLAG(IS_CHROMEOS) #define CHROME_PLATFORM_SPECIFIC_ACTION_IDS \ E(kToggleMultitaskMenu, IDC_TOGGLE_MULTITASK_MENU) -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #define CHROME_PLATFORM_SPECIFIC_ACTION_IDS \ E(kUseSystemTitleBar, IDC_USE_SYSTEM_TITLE_BAR) \ E(kRestoreWindow, IDC_RESTORE_WINDOW) diff --git a/www/chromium/files/patch-chrome_browser_ui_browser.h b/www/chromium/files/patch-chrome_browser_ui_browser.h index 61fb590b9476..a813b0fa3523 100644 --- a/www/chromium/files/patch-chrome_browser_ui_browser.h +++ b/www/chromium/files/patch-chrome_browser_ui_browser.h @@ -1,11 +1,11 @@ ---- chrome/browser/ui/browser.h.orig 2025-07-02 06:08:04 UTC +--- chrome/browser/ui/browser.h.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/ui/browser.h -@@ -300,7 +300,7 @@ class Browser : public TabStripModelObserver, +@@ -293,7 +293,7 @@ class Browser : public TabStripModelObserver, std::optional display_id; #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // When the browser window is shown, the desktop environment is notified // using this ID. In response, the desktop will stop playing the "waiting // for startup" animation (if any). diff --git a/www/chromium/files/patch-chrome_browser_ui_browser__command__controller.cc b/www/chromium/files/patch-chrome_browser_ui_browser__command__controller.cc index bd6c6a084f9e..aed4bbf6599e 100644 --- a/www/chromium/files/patch-chrome_browser_ui_browser__command__controller.cc +++ b/www/chromium/files/patch-chrome_browser_ui_browser__command__controller.cc @@ -1,74 +1,74 @@ ---- chrome/browser/ui/browser_command_controller.cc.orig 2025-07-02 06:08:04 UTC +--- chrome/browser/ui/browser_command_controller.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/ui/browser_command_controller.cc @@ -127,7 +127,7 @@ #include "components/user_manager/user_manager.h" #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "ui/base/ime/text_edit_commands.h" #include "ui/base/ime/text_input_flags.h" #include "ui/linux/linux_ui.h" @@ -137,7 +137,7 @@ #include "ui/ozone/public/ozone_platform.h" #endif -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) #include "chrome/browser/ui/shortcuts/desktop_shortcuts_utils.h" #endif // BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) @@ -363,7 +363,7 @@ bool BrowserCommandController::IsReservedCommandOrKey( #endif } -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // If this key was registered by the user as a content editing hotkey, then // it is not reserved. auto* linux_ui = ui::LinuxUi::instance(); @@ -632,7 +632,7 @@ bool BrowserCommandController::ExecuteCommandWithDispo break; #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) case IDC_MINIMIZE_WINDOW: browser_->window()->Minimize(); break; @@ -849,7 +849,7 @@ bool BrowserCommandController::ExecuteCommandWithDispo break; case IDC_CREATE_SHORTCUT: base::RecordAction(base::UserMetricsAction("CreateShortcut")); -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) chrome::CreateDesktopShortcutForActiveWebContents(browser_); #else web_app::CreateWebAppFromCurrentWebContents( -@@ -1015,7 +1015,7 @@ bool BrowserCommandController::ExecuteCommandWithDispo +@@ -1018,7 +1018,7 @@ bool BrowserCommandController::ExecuteCommandWithDispo #endif // BUILDFLAG(GOOGLE_CHROME_BRANDING) case IDC_CHROME_WHATS_NEW: #if BUILDFLAG(GOOGLE_CHROME_BRANDING) && \ - (BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX)) + (BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) ShowChromeWhatsNew(browser_); break; #else -@@ -1392,7 +1392,7 @@ void BrowserCommandController::InitCommandState() { +@@ -1395,7 +1395,7 @@ void BrowserCommandController::InitCommandState() { command_updater_.UpdateCommandEnabled(IDC_VISIT_DESKTOP_OF_LRU_USER_4, true); command_updater_.UpdateCommandEnabled(IDC_VISIT_DESKTOP_OF_LRU_USER_5, true); #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) command_updater_.UpdateCommandEnabled(IDC_MINIMIZE_WINDOW, true); command_updater_.UpdateCommandEnabled(IDC_MAXIMIZE_WINDOW, true); command_updater_.UpdateCommandEnabled(IDC_RESTORE_WINDOW, true); @@ -1747,7 +1747,7 @@ void BrowserCommandController::UpdateCommandsForTabSta bool can_create_web_app = web_app::CanCreateWebApp(browser_); command_updater_.UpdateCommandEnabled(IDC_INSTALL_PWA, can_create_web_app); -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) command_updater_.UpdateCommandEnabled( IDC_CREATE_SHORTCUT, shortcuts::CanCreateDesktopShortcut(current_web_contents)); diff --git a/www/chromium/files/patch-chrome_browser_ui_browser__commands.cc b/www/chromium/files/patch-chrome_browser_ui_browser__commands.cc index c9a34d01198b..c29b81db75fc 100644 --- a/www/chromium/files/patch-chrome_browser_ui_browser__commands.cc +++ b/www/chromium/files/patch-chrome_browser_ui_browser__commands.cc @@ -1,11 +1,11 @@ ---- chrome/browser/ui/browser_commands.cc.orig 2025-07-02 06:08:04 UTC +--- chrome/browser/ui/browser_commands.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/ui/browser_commands.cc -@@ -2185,7 +2185,7 @@ void OpenUpdateChromeDialog(Browser* browser) { +@@ -2195,7 +2195,7 @@ void OpenUpdateChromeDialog(Browser* browser) { } else if (UpgradeDetector::GetInstance()->is_outdated_install_no_au()) { UpgradeDetector::GetInstance()->NotifyOutdatedInstallNoAutoUpdate(); } else { -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (base::FeatureList::IsEnabled(features::kFewerUpdateConfirmations)) { chrome::AttemptRelaunch(); return; diff --git a/www/chromium/files/patch-chrome_browser_ui_passwords_manage__passwords__ui__controller.cc b/www/chromium/files/patch-chrome_browser_ui_passwords_manage__passwords__ui__controller.cc index 87425c047593..a629b57d28a8 100644 --- a/www/chromium/files/patch-chrome_browser_ui_passwords_manage__passwords__ui__controller.cc +++ b/www/chromium/files/patch-chrome_browser_ui_passwords_manage__passwords__ui__controller.cc @@ -1,20 +1,20 @@ ---- chrome/browser/ui/passwords/manage_passwords_ui_controller.cc.orig 2025-05-28 14:55:43 UTC +--- chrome/browser/ui/passwords/manage_passwords_ui_controller.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/ui/passwords/manage_passwords_ui_controller.cc -@@ -104,7 +104,7 @@ namespace { +@@ -108,7 +108,7 @@ namespace { using Logger = autofill::SavePasswordProgressLogger; -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Should be kept in sync with constant declared in // bubble_controllers/relaunch_chrome_bubble_controller.cc. constexpr int kMaxNumberOfTimesKeychainErrorBubbleIsShown = 3; -@@ -562,7 +562,7 @@ void ManagePasswordsUIController::OnBiometricAuthBefor +@@ -567,7 +567,7 @@ void ManagePasswordsUIController::OnBiometricAuthBefor } void ManagePasswordsUIController::OnKeychainError() { -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) CHECK(!dialog_controller_); PrefService* prefs = Profile::FromBrowserContext(web_contents()->GetBrowserContext()) diff --git a/www/chromium/files/patch-chrome_browser_ui_prefs_prefs__tab__helper.cc b/www/chromium/files/patch-chrome_browser_ui_prefs_prefs__tab__helper.cc index 4eb8e8132d6c..cc1c8807ea2e 100644 --- a/www/chromium/files/patch-chrome_browser_ui_prefs_prefs__tab__helper.cc +++ b/www/chromium/files/patch-chrome_browser_ui_prefs_prefs__tab__helper.cc @@ -1,11 +1,11 @@ ---- chrome/browser/ui/prefs/prefs_tab_helper.cc.orig 2025-05-05 10:57:53 UTC +--- chrome/browser/ui/prefs/prefs_tab_helper.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/ui/prefs/prefs_tab_helper.cc -@@ -66,7 +66,7 @@ - #include +@@ -68,7 +68,7 @@ #endif --#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + #if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(ENABLE_DESKTOP_ANDROID_EXTENSIONS) ++ BUILDFLAG(ENABLE_DESKTOP_ANDROID_EXTENSIONS) || BUILDFLAG(IS_BSD) // If a font name in prefs default values starts with a comma, consider it's a // comma-separated font list and resolve it to the first available font. #define PREFS_FONT_LIST 1 diff --git a/www/chromium/files/patch-chrome_browser_ui_signin_signin__view__controller.cc b/www/chromium/files/patch-chrome_browser_ui_signin_signin__view__controller.cc index a12645c7dbe2..4b8bbab8c233 100644 --- a/www/chromium/files/patch-chrome_browser_ui_signin_signin__view__controller.cc +++ b/www/chromium/files/patch-chrome_browser_ui_signin_signin__view__controller.cc @@ -1,20 +1,20 @@ ---- chrome/browser/ui/signin/signin_view_controller.cc.orig 2025-07-02 06:08:04 UTC +--- chrome/browser/ui/signin/signin_view_controller.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/ui/signin/signin_view_controller.cc -@@ -444,7 +444,7 @@ void SigninViewController::ShowModalSyncConfirmationDi +@@ -472,7 +472,7 @@ void SigninViewController::ShowModalSyncConfirmationDi GetOnModalDialogClosedCallback()); } -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) void SigninViewController::ShowModalHistorySyncOptInDialog() { CHECK(base::FeatureList::IsEnabled(switches::kEnableHistorySyncOptin)); CloseModalSignin(); -@@ -457,7 +457,7 @@ void SigninViewController::ShowModalHistorySyncOptInDi +@@ -486,7 +486,7 @@ void SigninViewController::ShowModalHistorySyncOptInDi void SigninViewController::ShowModalManagedUserNoticeDialog( std::unique_ptr create_param) { -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) CloseModalSignin(); dialog_ = std::make_unique( SigninViewControllerDelegate::CreateManagedUserNoticeDelegate( diff --git a/www/chromium/files/patch-chrome_browser_ui_signin_signin__view__controller.h b/www/chromium/files/patch-chrome_browser_ui_signin_signin__view__controller.h index 439c5891f96d..75c80d9e9346 100644 --- a/www/chromium/files/patch-chrome_browser_ui_signin_signin__view__controller.h +++ b/www/chromium/files/patch-chrome_browser_ui_signin_signin__view__controller.h @@ -1,11 +1,11 @@ ---- chrome/browser/ui/signin/signin_view_controller.h.orig 2025-07-02 06:08:04 UTC +--- chrome/browser/ui/signin/signin_view_controller.h.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/ui/signin/signin_view_controller.h -@@ -150,7 +150,7 @@ class SigninViewController { +@@ -166,7 +166,7 @@ class SigninViewController { void ShowModalSyncConfirmationDialog(bool is_signin_intercept, bool is_sync_promo); -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Shows the modal history sync opt in dialog as a browser-modal dialog on top // of the `browser_`'s window. void ShowModalHistorySyncOptInDialog(); diff --git a/www/chromium/files/patch-chrome_browser_ui_startup_bad__flags__prompt.cc b/www/chromium/files/patch-chrome_browser_ui_startup_bad__flags__prompt.cc index 8c49c2a1b83d..8f44393146a6 100644 --- a/www/chromium/files/patch-chrome_browser_ui_startup_bad__flags__prompt.cc +++ b/www/chromium/files/patch-chrome_browser_ui_startup_bad__flags__prompt.cc @@ -1,11 +1,11 @@ ---- chrome/browser/ui/startup/bad_flags_prompt.cc.orig 2025-05-05 10:57:53 UTC +--- chrome/browser/ui/startup/bad_flags_prompt.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/ui/startup/bad_flags_prompt.cc -@@ -95,7 +95,7 @@ const char* const kBadFlags[] = { - extensions::switches::kExtensionsOnChromeURLs, +@@ -96,7 +96,7 @@ const char* const kBadFlags[] = { + extensions::switches::kExtensionsOnExtensionURLs, #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Speech dispatcher is buggy, it can crash and it can make Chrome freeze. // http://crbug.com/327295 switches::kEnableSpeechDispatcher, diff --git a/www/chromium/files/patch-chrome_browser_ui_startup_startup__browser__creator.cc b/www/chromium/files/patch-chrome_browser_ui_startup_startup__browser__creator.cc index b7e43507def3..14b81d4506ae 100644 --- a/www/chromium/files/patch-chrome_browser_ui_startup_startup__browser__creator.cc +++ b/www/chromium/files/patch-chrome_browser_ui_startup_startup__browser__creator.cc @@ -1,38 +1,38 @@ ---- chrome/browser/ui/startup/startup_browser_creator.cc.orig 2025-07-02 06:08:04 UTC +--- chrome/browser/ui/startup/startup_browser_creator.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/ui/startup/startup_browser_creator.cc @@ -134,7 +134,7 @@ #include "chrome/credential_provider/common/gcp_strings.h" #endif // BUILDFLAG(IS_WIN) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) #include "chrome/browser/headless/headless_mode_util.h" #include "chrome/browser/ui/startup/web_app_info_recorder_utils.h" #include "components/headless/policy/headless_mode_policy.h" -@@ -984,7 +984,7 @@ bool StartupBrowserCreator::ProcessCmdLineImpl( +@@ -980,7 +980,7 @@ bool StartupBrowserCreator::ProcessCmdLineImpl( TRACE_EVENT0("startup", "StartupBrowserCreator::ProcessCmdLineImpl"); ComputeAndRecordLaunchMode(command_line); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) if (headless::IsHeadlessMode() && headless::HeadlessModePolicy::IsHeadlessModeDisabled( g_browser_process->local_state())) { -@@ -1087,7 +1087,7 @@ bool StartupBrowserCreator::ProcessCmdLineImpl( +@@ -1083,7 +1083,7 @@ bool StartupBrowserCreator::ProcessCmdLineImpl( silent_launch = true; } -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) // Writes open and installed web apps to the specified file without // launching a new browser window or tab. if (base::FeatureList::IsEnabled(features::kListWebAppsSwitch) && -@@ -1304,7 +1304,7 @@ bool StartupBrowserCreator::ProcessCmdLineImpl( +@@ -1300,7 +1300,7 @@ bool StartupBrowserCreator::ProcessCmdLineImpl( CHECK_EQ(profile_info.mode, StartupProfileMode::kBrowserWindow) << "Failed launch with app: couldn't pick a profile"; std::string app_id = command_line.GetSwitchValueASCII(switches::kAppId); -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // If Chrome Apps are deprecated and |app_id| is a Chrome App, display the // deprecation UI instead of launching the app. if (apps::OpenDeprecatedApplicationPrompt(privacy_safe_profile, app_id)) { diff --git a/www/chromium/files/patch-chrome_browser_ui_startup_startup__browser__creator__impl.cc b/www/chromium/files/patch-chrome_browser_ui_startup_startup__browser__creator__impl.cc index 1a918056de7c..bfc7d3ab690f 100644 --- a/www/chromium/files/patch-chrome_browser_ui_startup_startup__browser__creator__impl.cc +++ b/www/chromium/files/patch-chrome_browser_ui_startup_startup__browser__creator__impl.cc @@ -1,29 +1,29 @@ ---- chrome/browser/ui/startup/startup_browser_creator_impl.cc.orig 2025-05-05 10:57:53 UTC +--- chrome/browser/ui/startup/startup_browser_creator_impl.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/ui/startup/startup_browser_creator_impl.cc -@@ -76,7 +76,7 @@ +@@ -74,7 +74,7 @@ #include "components/app_restore/full_restore_utils.h" #endif -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "chrome/browser/ui/webui/whats_new/whats_new_fetcher.h" #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) -@@ -208,7 +208,7 @@ Browser* StartupBrowserCreatorImpl::OpenTabsInBrowser( +@@ -206,7 +206,7 @@ Browser* StartupBrowserCreatorImpl::OpenTabsInBrowser( // at the state of the MessageLoop. Browser::CreateParams params = Browser::CreateParams(profile_, false); params.creation_source = Browser::CreationSource::kStartupCreator; -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) params.startup_id = command_line_->GetSwitchValueASCII("desktop-startup-id"); #endif -@@ -238,7 +238,7 @@ Browser* StartupBrowserCreatorImpl::OpenTabsInBrowser( +@@ -236,7 +236,7 @@ Browser* StartupBrowserCreatorImpl::OpenTabsInBrowser( continue; } -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Start the What's New fetch but don't add the tab at this point. The tab // will open as the foreground tab only if the remote content can be // retrieved successfully. This prevents needing to automatically close the diff --git a/www/chromium/files/patch-chrome_browser_ui_tab__helpers.cc b/www/chromium/files/patch-chrome_browser_ui_tab__helpers.cc index 696199c53244..669e8ae2d303 100644 --- a/www/chromium/files/patch-chrome_browser_ui_tab__helpers.cc +++ b/www/chromium/files/patch-chrome_browser_ui_tab__helpers.cc @@ -1,26 +1,26 @@ ---- chrome/browser/ui/tab_helpers.cc.orig 2025-07-02 06:08:04 UTC +--- chrome/browser/ui/tab_helpers.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/ui/tab_helpers.cc @@ -218,7 +218,7 @@ #endif #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "chrome/browser/ui/blocked_content/framebust_block_tab_helper.h" - #include "chrome/browser/ui/browser_finder.h" #include "chrome/browser/ui/hats/hats_helper.h" -@@ -706,12 +706,12 @@ void TabHelpers::AttachTabHelpers(WebContents* web_con + #include "chrome/browser/ui/performance_controls/performance_controls_hats_service_factory.h" +@@ -702,12 +702,12 @@ void TabHelpers::AttachTabHelpers(WebContents* web_con webapps::PreRedirectionURLObserver::CreateForWebContents(web_contents); #endif -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) metrics::DesktopSessionDurationObserver::CreateForWebContents(web_contents); #endif #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) if (base::FeatureList::IsEnabled( features::kHappinessTrackingSurveysForDesktopDemo) || base::FeatureList::IsEnabled(features::kTrustSafetySentimentSurvey) || diff --git a/www/chromium/files/patch-chrome_browser_ui_tabs_features.cc b/www/chromium/files/patch-chrome_browser_ui_tabs_features.cc index c791b36bb2e5..b3e0f42afb55 100644 --- a/www/chromium/files/patch-chrome_browser_ui_tabs_features.cc +++ b/www/chromium/files/patch-chrome_browser_ui_tabs_features.cc @@ -1,11 +1,11 @@ ---- chrome/browser/ui/tabs/features.cc.orig 2025-07-02 06:08:04 UTC +--- chrome/browser/ui/tabs/features.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/ui/tabs/features.cc -@@ -53,7 +53,7 @@ bool CanShowTabSearchPositionSetting() { +@@ -59,7 +59,7 @@ bool CanShowTabSearchPositionSetting() { } // Mac and other platforms will always have the tab search position in the // correct location, cros/linux/win git the user the option to change. -#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) return base::FeatureList::IsEnabled(kTabSearchPositionSetting); #else return false; diff --git a/www/chromium/files/patch-chrome_browser_ui_tabs_tab__dialog__manager.cc b/www/chromium/files/patch-chrome_browser_ui_tabs_tab__dialog__manager.cc index 92996c165205..78836f7ae54f 100644 --- a/www/chromium/files/patch-chrome_browser_ui_tabs_tab__dialog__manager.cc +++ b/www/chromium/files/patch-chrome_browser_ui_tabs_tab__dialog__manager.cc @@ -1,11 +1,11 @@ ---- chrome/browser/ui/tabs/tab_dialog_manager.cc.orig 2025-03-05 08:14:56 UTC +--- chrome/browser/ui/tabs/tab_dialog_manager.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/ui/tabs/tab_dialog_manager.cc -@@ -83,7 +83,7 @@ bool SupportsGlobalScreenCoordinates() { +@@ -85,7 +85,7 @@ bool SupportsGlobalScreenCoordinates() { } bool PlatformClipsChildrenToViewport() { -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) return true; #else return false; diff --git a/www/chromium/files/patch-chrome_browser_ui_tabs_tab__features.cc b/www/chromium/files/patch-chrome_browser_ui_tabs_tab__features.cc index 459d29b1838a..62239a8b676a 100644 --- a/www/chromium/files/patch-chrome_browser_ui_tabs_tab__features.cc +++ b/www/chromium/files/patch-chrome_browser_ui_tabs_tab__features.cc @@ -1,11 +1,11 @@ ---- chrome/browser/ui/tabs/tab_features.cc.orig 2025-07-02 06:08:04 UTC +--- chrome/browser/ui/tabs/tab_features.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/ui/tabs/tab_features.cc -@@ -340,7 +340,7 @@ void TabFeatures::Init(TabInterface& tab, Profile* pro +@@ -338,7 +338,7 @@ void TabFeatures::Init(TabInterface& tab, Profile* pro task_manager::WebContentsTags::CreateForTabContents(tab.GetContents()); #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) inactive_window_mouse_event_controller_ = std::make_unique(); #endif diff --git a/www/chromium/files/patch-chrome_browser_ui_ui__features.cc b/www/chromium/files/patch-chrome_browser_ui_ui__features.cc index e5c96ff7b26b..4593528941ff 100644 --- a/www/chromium/files/patch-chrome_browser_ui_ui__features.cc +++ b/www/chromium/files/patch-chrome_browser_ui_ui__features.cc @@ -1,20 +1,20 @@ ---- chrome/browser/ui/ui_features.cc.orig 2025-07-02 06:08:04 UTC +--- chrome/browser/ui/ui_features.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/ui/ui_features.cc @@ -38,7 +38,7 @@ BASE_FEATURE(kCloseOmniboxPopupOnInactiveAreaClick, "CloseOmniboxPopupOnInactiveAreaClick", base::FEATURE_ENABLED_BY_DEFAULT); -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Enables the feature to remove the last confirmation dialog when relaunching // to update Chrome. BASE_FEATURE(kFewerUpdateConfirmations, -@@ -359,7 +359,7 @@ BASE_FEATURE(kViewsJSAppModalDialog, +@@ -320,7 +320,7 @@ BASE_FEATURE(kViewsJSAppModalDialog, base::FEATURE_DISABLED_BY_DEFAULT); #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) BASE_FEATURE(kUsePortalAccentColor, "UsePortalAccentColor", base::FEATURE_ENABLED_BY_DEFAULT); diff --git a/www/chromium/files/patch-chrome_browser_ui_ui__features.h b/www/chromium/files/patch-chrome_browser_ui_ui__features.h index f58df6b23b3d..2af4ee335833 100644 --- a/www/chromium/files/patch-chrome_browser_ui_ui__features.h +++ b/www/chromium/files/patch-chrome_browser_ui_ui__features.h @@ -1,20 +1,20 @@ ---- chrome/browser/ui/ui_features.h.orig 2025-07-02 06:08:04 UTC +--- chrome/browser/ui/ui_features.h.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/ui/ui_features.h @@ -28,7 +28,7 @@ BASE_DECLARE_FEATURE(kAllowEyeDropperWGCScreenCapture) BASE_DECLARE_FEATURE(kCloseOmniboxPopupOnInactiveAreaClick); -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) BASE_DECLARE_FEATURE(kFewerUpdateConfirmations); #endif -@@ -225,7 +225,7 @@ BASE_DECLARE_FEATURE(kViewsFirstRunDialog); +@@ -311,7 +311,7 @@ BASE_DECLARE_FEATURE(kViewsFirstRunDialog); BASE_DECLARE_FEATURE(kViewsJSAppModalDialog); #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) BASE_DECLARE_FEATURE(kUsePortalAccentColor); #endif diff --git a/www/chromium/files/patch-chrome_browser_ui_views_frame_browser__frame.cc b/www/chromium/files/patch-chrome_browser_ui_views_frame_browser__frame.cc index 7ee2e75debdd..90fcc8a23815 100644 --- a/www/chromium/files/patch-chrome_browser_ui_views_frame_browser__frame.cc +++ b/www/chromium/files/patch-chrome_browser_ui_views_frame_browser__frame.cc @@ -1,56 +1,65 @@ ---- chrome/browser/ui/views/frame/browser_frame.cc.orig 2025-05-28 14:55:43 UTC +--- chrome/browser/ui/views/frame/browser_frame.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/ui/views/frame/browser_frame.cc -@@ -52,7 +52,7 @@ +@@ -53,7 +53,7 @@ #include "ui/aura/window.h" #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "ui/display/screen.h" #include "ui/linux/linux_ui.h" #endif -@@ -87,7 +87,7 @@ class ThemeChangedObserver : public views::WidgetObser +@@ -68,7 +68,7 @@ namespace { + constexpr double kTitlePaddingWidthFraction = 0.1; + #endif + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + // These values are used for Linux/GTK. + constexpr int kIconTitleSpacing = 4; + constexpr int kCaptionSpacing = 5; +@@ -98,7 +98,7 @@ class ThemeChangedObserver : public views::WidgetObser }; bool IsUsingLinuxSystemTheme(Profile* profile) { -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) return ThemeServiceFactory::GetForProfile(profile)->UsingSystemTheme(); #else return false; -@@ -185,7 +185,7 @@ void BrowserFrame::InitBrowserFrame() { +@@ -196,7 +196,7 @@ void BrowserFrame::InitBrowserFrame() { Init(std::move(params)); -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) SelectNativeTheme(); #else SetNativeTheme(ui::NativeTheme::GetInstanceForNativeUi()); -@@ -371,7 +371,7 @@ void BrowserFrame::OnNativeWidgetWorkspaceChanged() { +@@ -434,7 +434,7 @@ void BrowserFrame::OnNativeWidgetWorkspaceChanged() { chrome::SaveWindowWorkspace(browser_view_->browser(), GetWorkspace()); chrome::SaveWindowVisibleOnAllWorkspaces(browser_view_->browser(), IsVisibleOnAllWorkspaces()); -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // If the window was sent to a different workspace, prioritize it if // it was sent to the current workspace and deprioritize it // otherwise. This is done by MoveBrowsersInWorkspaceToFront() -@@ -569,7 +569,7 @@ void BrowserFrame::OnMenuClosed() { +@@ -633,7 +633,7 @@ void BrowserFrame::OnMenuClosed() { } void BrowserFrame::SelectNativeTheme() { -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Use the regular NativeTheme instance if running incognito mode, regardless // of system theme (gtk, qt etc). ui::NativeTheme* native_theme = ui::NativeTheme::GetInstanceForNativeUi(); -@@ -610,7 +610,7 @@ void BrowserFrame::OnTouchUiChanged() { +@@ -674,7 +674,7 @@ void BrowserFrame::OnTouchUiChanged() { bool BrowserFrame::RegenerateFrameOnThemeChange( BrowserThemeChangeType theme_change_type) { bool need_regenerate = false; -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // System and user theme changes can both change frame buttons, so the frame // always needs to be regenerated on Linux. need_regenerate = true; diff --git a/www/chromium/files/patch-chrome_browser_ui_views_frame_browser__view.cc b/www/chromium/files/patch-chrome_browser_ui_views_frame_browser__view.cc index 7897da458f14..e0dae6b029c8 100644 --- a/www/chromium/files/patch-chrome_browser_ui_views_frame_browser__view.cc +++ b/www/chromium/files/patch-chrome_browser_ui_views_frame_browser__view.cc @@ -1,20 +1,20 @@ ---- chrome/browser/ui/views/frame/browser_view.cc.orig 2025-07-02 06:08:04 UTC +--- chrome/browser/ui/views/frame/browser_view.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/ui/views/frame/browser_view.cc -@@ -2740,7 +2740,7 @@ void BrowserView::ToolbarSizeChanged(bool is_animating +@@ -2608,7 +2608,7 @@ void BrowserView::ToolbarSizeChanged(bool is_animating } void BrowserView::TabDraggingStatusChanged(bool is_dragging) { -#if !BUILDFLAG(IS_LINUX) +#if !BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_BSD) GetContentsWebView()->SetFastResize(is_dragging); if (multi_contents_view_) { multi_contents_view_->GetInactiveContentsView()->SetFastResize(is_dragging); -@@ -6044,7 +6044,7 @@ void BrowserView::MaybeShowProfileSwitchIPH() { +@@ -6027,7 +6027,7 @@ void BrowserView::MaybeShowProfileSwitchIPH() { } void BrowserView::MaybeShowSupervisedUserProfileSignInIPH() { -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (!ShouldShowAvatarToolbarIPH()) { return; } diff --git a/www/chromium/files/patch-chrome_browser_ui_views_frame_opaque__browser__frame__view.cc b/www/chromium/files/patch-chrome_browser_ui_views_frame_opaque__browser__frame__view.cc index cea54b3aa06f..0e6f59864782 100644 --- a/www/chromium/files/patch-chrome_browser_ui_views_frame_opaque__browser__frame__view.cc +++ b/www/chromium/files/patch-chrome_browser_ui_views_frame_opaque__browser__frame__view.cc @@ -1,38 +1,38 @@ ---- chrome/browser/ui/views/frame/opaque_browser_frame_view.cc.orig 2025-02-19 07:43:18 UTC +--- chrome/browser/ui/views/frame/opaque_browser_frame_view.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/ui/views/frame/opaque_browser_frame_view.cc @@ -54,7 +54,7 @@ #include "ui/views/window/vector_icons/vector_icons.h" #include "ui/views/window/window_shape.h" -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "ui/views/controls/menu/menu_runner.h" #endif -@@ -572,7 +572,7 @@ bool OpaqueBrowserFrameView::EverHasVisibleBackgroundT +@@ -566,7 +566,7 @@ bool OpaqueBrowserFrameView::EverHasVisibleBackgroundT OpaqueBrowserFrameView::FrameButtonStyle OpaqueBrowserFrameView::GetFrameButtonStyle() const { -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) return FrameButtonStyle::kMdButton; #else return FrameButtonStyle::kImageButton; -@@ -591,7 +591,7 @@ bool OpaqueBrowserFrameView::ShouldDrawRestoredFrameSh +@@ -585,7 +585,7 @@ bool OpaqueBrowserFrameView::ShouldDrawRestoredFrameSh return false; } -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) bool OpaqueBrowserFrameView::IsTiled() const { return frame()->tiled(); } -@@ -794,7 +794,7 @@ gfx::Rect OpaqueBrowserFrameView::GetIconBounds() cons +@@ -788,7 +788,7 @@ gfx::Rect OpaqueBrowserFrameView::GetIconBounds() cons } void OpaqueBrowserFrameView::WindowIconPressed() { -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Chrome OS doesn't show the window icon, and Windows handles this on its own // due to the hit test being HTSYSMENU. menu_runner_ = std::make_unique( diff --git a/www/chromium/files/patch-chrome_browser_ui_views_frame_opaque__browser__frame__view.h b/www/chromium/files/patch-chrome_browser_ui_views_frame_opaque__browser__frame__view.h index 416d29c93ad9..da89bb89bbc5 100644 --- a/www/chromium/files/patch-chrome_browser_ui_views_frame_opaque__browser__frame__view.h +++ b/www/chromium/files/patch-chrome_browser_ui_views_frame_opaque__browser__frame__view.h @@ -1,20 +1,20 @@ ---- chrome/browser/ui/views/frame/opaque_browser_frame_view.h.orig 2025-01-15 09:18:26 UTC +--- chrome/browser/ui/views/frame/opaque_browser_frame_view.h.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/ui/views/frame/opaque_browser_frame_view.h -@@ -110,7 +110,7 @@ class OpaqueBrowserFrameView : public BrowserNonClient +@@ -108,7 +108,7 @@ class OpaqueBrowserFrameView : public BrowserNonClient FrameButtonStyle GetFrameButtonStyle() const override; void UpdateWindowControlsOverlay(const gfx::Rect& bounding_rect) override; bool ShouldDrawRestoredFrameShadow() const override; -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) bool IsTiled() const override; #endif int WebAppButtonHeight() const override; -@@ -227,7 +227,7 @@ class OpaqueBrowserFrameView : public BrowserNonClient +@@ -225,7 +225,7 @@ class OpaqueBrowserFrameView : public BrowserNonClient // Background painter for the window frame. std::unique_ptr frame_background_; -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) std::unique_ptr menu_runner_; #endif diff --git a/www/chromium/files/patch-chrome_browser_ui_views_frame_picture__in__picture__browser__frame__view.cc b/www/chromium/files/patch-chrome_browser_ui_views_frame_picture__in__picture__browser__frame__view.cc index 1def07674bef..1474a00cc564 100644 --- a/www/chromium/files/patch-chrome_browser_ui_views_frame_picture__in__picture__browser__frame__view.cc +++ b/www/chromium/files/patch-chrome_browser_ui_views_frame_picture__in__picture__browser__frame__view.cc @@ -1,11 +1,11 @@ ---- chrome/browser/ui/views/frame/picture_in_picture_browser_frame_view.cc.orig 2025-05-28 14:55:43 UTC +--- chrome/browser/ui/views/frame/picture_in_picture_browser_frame_view.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/ui/views/frame/picture_in_picture_browser_frame_view.cc -@@ -67,7 +67,7 @@ +@@ -69,7 +69,7 @@ // Windows, Mac and CrOS do not clip child widgets to their parents, so we // don't have to worry about resizing quite as much. -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #define PLATFORM_CLIPS_CHILD_WINDOWS #endif diff --git a/www/chromium/files/patch-chrome_browser_ui_views_new__tab__footer_footer__controller.cc b/www/chromium/files/patch-chrome_browser_ui_views_new__tab__footer_footer__controller.cc index dca33b2f538a..95e8f974ebce 100644 --- a/www/chromium/files/patch-chrome_browser_ui_views_new__tab__footer_footer__controller.cc +++ b/www/chromium/files/patch-chrome_browser_ui_views_new__tab__footer_footer__controller.cc @@ -1,11 +1,11 @@ ---- chrome/browser/ui/views/new_tab_footer/footer_controller.cc.orig 2025-07-02 06:08:04 UTC +--- chrome/browser/ui/views/new_tab_footer/footer_controller.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/ui/views/new_tab_footer/footer_controller.cc -@@ -55,7 +55,7 @@ NewTabFooterController::NewTabFooterController(Browser +@@ -37,7 +37,7 @@ NewTabFooterController::NewTabFooterController(Browser base::BindRepeating(&NewTabFooterController::UpdateFooterVisibility, weak_factory_.GetWeakPtr(), /*log_on_load_metric=*/false)); -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) local_state_pref_change_registrar_.Init(g_browser_process->local_state()); local_state_pref_change_registrar_.Add( prefs::kNTPFooterManagementNoticeEnabled, diff --git a/www/chromium/files/patch-chrome_browser_ui_views_omnibox_omnibox__view__views.cc b/www/chromium/files/patch-chrome_browser_ui_views_omnibox_omnibox__view__views.cc index 789ef71b5c88..05159671a385 100644 --- a/www/chromium/files/patch-chrome_browser_ui_views_omnibox_omnibox__view__views.cc +++ b/www/chromium/files/patch-chrome_browser_ui_views_omnibox_omnibox__view__views.cc @@ -1,11 +1,11 @@ ---- chrome/browser/ui/views/omnibox/omnibox_view_views.cc.orig 2025-07-02 06:08:04 UTC +--- chrome/browser/ui/views/omnibox/omnibox_view_views.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/ui/views/omnibox/omnibox_view_views.cc -@@ -2175,7 +2175,7 @@ void OmniboxViewViews::MaybeAddSendTabToSelfItem( +@@ -2191,7 +2191,7 @@ void OmniboxViewViews::MaybeAddSendTabToSelfItem( } void OmniboxViewViews::OnPopupOpened() { -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // It's not great for promos to overlap the omnibox if the user opens the // drop-down after showing the promo. This especially causes issues on Mac and // Linux due to z-order/rendering issues, see crbug.com/1225046 and diff --git a/www/chromium/files/patch-chrome_browser_ui_views_passwords_password__bubble__view__base.cc b/www/chromium/files/patch-chrome_browser_ui_views_passwords_password__bubble__view__base.cc index 957a08920b46..b42fed194d86 100644 --- a/www/chromium/files/patch-chrome_browser_ui_views_passwords_password__bubble__view__base.cc +++ b/www/chromium/files/patch-chrome_browser_ui_views_passwords_password__bubble__view__base.cc @@ -1,20 +1,20 @@ ---- chrome/browser/ui/views/passwords/password_bubble_view_base.cc.orig 2025-04-04 08:52:13 UTC +--- chrome/browser/ui/views/passwords/password_bubble_view_base.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/ui/views/passwords/password_bubble_view_base.cc @@ -42,7 +42,7 @@ #include "ui/base/metadata/metadata_impl_macros.h" #include "ui/views/controls/button/button.h" -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "chrome/browser/ui/views/passwords/password_relaunch_chrome_view.h" #endif -@@ -175,7 +175,7 @@ PasswordBubbleViewBase* PasswordBubbleViewBase::Create +@@ -163,7 +163,7 @@ PasswordBubbleViewBase* PasswordBubbleViewBase::Create } else if (model_state == password_manager::ui::NOTIFY_RECEIVED_SHARED_CREDENTIALS) { view = new SharedPasswordsNotificationView(web_contents, anchor_view); -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) } else if (model_state == password_manager::ui::KEYCHAIN_ERROR_STATE) { view = new RelaunchChromeView( web_contents, anchor_view, diff --git a/www/chromium/files/patch-chrome_browser_ui_views_profiles_avatar__toolbar__button.cc b/www/chromium/files/patch-chrome_browser_ui_views_profiles_avatar__toolbar__button.cc index 76671ba6b16a..a4c6840a69f3 100644 --- a/www/chromium/files/patch-chrome_browser_ui_views_profiles_avatar__toolbar__button.cc +++ b/www/chromium/files/patch-chrome_browser_ui_views_profiles_avatar__toolbar__button.cc @@ -1,11 +1,11 @@ ---- chrome/browser/ui/views/profiles/avatar_toolbar_button.cc.orig 2025-07-02 06:08:04 UTC +--- chrome/browser/ui/views/profiles/avatar_toolbar_button.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/ui/views/profiles/avatar_toolbar_button.cc -@@ -317,7 +317,7 @@ void AvatarToolbarButton::MaybeShowProfileSwitchIPH() +@@ -331,7 +331,7 @@ void AvatarToolbarButton::MaybeShowProfileSwitchIPH() } } -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) void AvatarToolbarButton::MaybeShowSupervisedUserSignInIPH() { if (!base::FeatureList::IsEnabled( feature_engagement::kIPHSupervisedUserProfileSigninFeature)) { diff --git a/www/chromium/files/patch-chrome_browser_ui_views_profiles_avatar__toolbar__button.h b/www/chromium/files/patch-chrome_browser_ui_views_profiles_avatar__toolbar__button.h index b437054a304d..0d054a0e5f93 100644 --- a/www/chromium/files/patch-chrome_browser_ui_views_profiles_avatar__toolbar__button.h +++ b/www/chromium/files/patch-chrome_browser_ui_views_profiles_avatar__toolbar__button.h @@ -1,11 +1,11 @@ ---- chrome/browser/ui/views/profiles/avatar_toolbar_button.h.orig 2025-07-02 06:08:04 UTC +--- chrome/browser/ui/views/profiles/avatar_toolbar_button.h.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/ui/views/profiles/avatar_toolbar_button.h -@@ -90,7 +90,7 @@ class AvatarToolbarButton : public ToolbarButton { +@@ -91,7 +91,7 @@ class AvatarToolbarButton : public ToolbarButton { // Attempts showing the In-Produce-Help for profile Switching. void MaybeShowProfileSwitchIPH(); -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Attempts showing the In-Produce-Help when a supervised user signs-in in a // profile. void MaybeShowSupervisedUserSignInIPH(); diff --git a/www/chromium/files/patch-chrome_browser_ui_views_profiles_profile__menu__coordinator.cc b/www/chromium/files/patch-chrome_browser_ui_views_profiles_profile__menu__coordinator.cc index b065e827a82a..928b37d51392 100644 --- a/www/chromium/files/patch-chrome_browser_ui_views_profiles_profile__menu__coordinator.cc +++ b/www/chromium/files/patch-chrome_browser_ui_views_profiles_profile__menu__coordinator.cc @@ -1,11 +1,11 @@ ---- chrome/browser/ui/views/profiles/profile_menu_coordinator.cc.orig 2025-07-02 06:08:04 UTC +--- chrome/browser/ui/views/profiles/profile_menu_coordinator.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/ui/views/profiles/profile_menu_coordinator.cc -@@ -46,7 +46,7 @@ void ProfileMenuCoordinator::Show( - browser.window()->NotifyFeaturePromoFeatureUsed( +@@ -47,7 +47,7 @@ void ProfileMenuCoordinator::Show( + user_education_->NotifyFeaturePromoFeatureUsed( feature_engagement::kIPHProfileSwitchFeature, FeaturePromoFeatureUsedAction::kClosePromoIfPresent); -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - browser.window()->NotifyFeaturePromoFeatureUsed( + user_education_->NotifyFeaturePromoFeatureUsed( feature_engagement::kIPHSupervisedUserProfileSigninFeature, FeaturePromoFeatureUsedAction::kClosePromoIfPresent); diff --git a/www/chromium/files/patch-chrome_browser_ui_views_profiles_profile__menu__view.cc b/www/chromium/files/patch-chrome_browser_ui_views_profiles_profile__menu__view.cc index 1e154ec51e6d..cb939771be8c 100644 --- a/www/chromium/files/patch-chrome_browser_ui_views_profiles_profile__menu__view.cc +++ b/www/chromium/files/patch-chrome_browser_ui_views_profiles_profile__menu__view.cc @@ -1,29 +1,29 @@ ---- chrome/browser/ui/views/profiles/profile_menu_view.cc.orig 2025-07-02 06:08:04 UTC +--- chrome/browser/ui/views/profiles/profile_menu_view.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/ui/views/profiles/profile_menu_view.cc -@@ -92,7 +92,7 @@ - #include "ui/strings/grit/ui_strings.h" +@@ -99,7 +99,7 @@ #include "ui/views/accessibility/view_accessibility.h" + #include "ui/views/widget/widget.h" -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "chrome/browser/enterprise/signin/enterprise_signin_prefs.h" #endif -@@ -418,7 +418,7 @@ void ProfileMenuView::OnSigninButtonClicked( +@@ -399,7 +399,7 @@ void ProfileMenuView::OnSigninButtonClicked( } GetWidget()->CloseWithReason(views::Widget::ClosedReason::kUnspecified); -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // TODO(crbug.com/404807488): Update the button and the dialog strings. if (base::FeatureList::IsEnabled(switches::kEnableHistorySyncOptin)) { - browser()->signin_view_controller()->ShowModalHistorySyncOptInDialog(); -@@ -555,7 +555,7 @@ void ProfileMenuView::SetMenuTitleForAccessibility() { + browser() +@@ -538,7 +538,7 @@ void ProfileMenuView::SetMenuTitleForAccessibility() { case signin_util::SignedInState::kSignedOut: case signin_util::SignedInState::kWebOnlySignedIn: { std::string profile_user_display_name, profile_user_email; -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - profile_user_display_name = profile->GetPrefs()->GetString( + profile_user_display_name = profile().GetPrefs()->GetString( enterprise_signin::prefs::kProfileUserDisplayName); - profile_user_email = profile->GetPrefs()->GetString( + profile_user_email = profile().GetPrefs()->GetString( diff --git a/www/chromium/files/patch-chrome_browser_ui_views_profiles_profile__menu__view__base.cc b/www/chromium/files/patch-chrome_browser_ui_views_profiles_profile__menu__view__base.cc deleted file mode 100644 index ca5852764981..000000000000 --- a/www/chromium/files/patch-chrome_browser_ui_views_profiles_profile__menu__view__base.cc +++ /dev/null @@ -1,11 +0,0 @@ ---- chrome/browser/ui/views/profiles/profile_menu_view_base.cc.orig 2025-07-02 06:08:04 UTC -+++ chrome/browser/ui/views/profiles/profile_menu_view_base.cc -@@ -464,7 +464,7 @@ void ProfileMenuViewBase::SetProfileIdentityInfo( - kIdentityImageBorder, - /*has_dotted_ring=*/false); - --#if BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - // crbug.com/1161166: Orca does not read the accessible window title of the - // bubble, so we duplicate it in the top-level menu item. To be revisited - // after considering other options, including fixes on the AT side. diff --git a/www/chromium/files/patch-chrome_browser_ui_views_profiles_signin__view__controller__delegate__views.cc b/www/chromium/files/patch-chrome_browser_ui_views_profiles_signin__view__controller__delegate__views.cc index ae3cda6f09f4..152d705f22f4 100644 --- a/www/chromium/files/patch-chrome_browser_ui_views_profiles_signin__view__controller__delegate__views.cc +++ b/www/chromium/files/patch-chrome_browser_ui_views_profiles_signin__view__controller__delegate__views.cc @@ -1,73 +1,73 @@ ---- chrome/browser/ui/views/profiles/signin_view_controller_delegate_views.cc.orig 2025-07-02 06:08:04 UTC +--- chrome/browser/ui/views/profiles/signin_view_controller_delegate_views.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/ui/views/profiles/signin_view_controller_delegate_views.cc -@@ -62,14 +62,14 @@ +@@ -63,14 +63,14 @@ #include "chrome/browser/ui/webui/signin/signout_confirmation/signout_confirmation_ui.h" #endif // BUILDFLAG(ENABLE_DICE_SUPPORT) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) #include "chrome/browser/ui/webui/signin/history_sync_optin/history_sync_optin_ui.h" #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) namespace { const int kModalDialogWidth = 448; -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) const int kManagedUserNoticeConfirmationDialogWidth = 512; const int kManagedUserNoticeConfirmationDialogHeight = 576; const int kManagedUserNoticeConfirmationUpdatedDialogWidth = 780; -@@ -138,7 +138,7 @@ SigninViewControllerDelegateViews::CreateSyncConfirmat +@@ -139,7 +139,7 @@ SigninViewControllerDelegateViews::CreateSyncConfirmat kSyncConfirmationDialogWidth, InitializeSigninWebDialogUI(true)); } -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) std::unique_ptr SigninViewControllerDelegateViews::CreateHistorySyncOptInWebView( Browser* browser) { -@@ -224,7 +224,7 @@ SigninViewControllerDelegateViews::CreateSignoutConfir +@@ -225,7 +225,7 @@ SigninViewControllerDelegateViews::CreateSignoutConfir } #endif // BUILDFLAG(ENABLE_DICE_SUPPORT) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // static std::unique_ptr SigninViewControllerDelegateViews::CreateManagedUserNoticeConfirmationWebView( -@@ -409,7 +409,7 @@ SigninViewControllerDelegateViews::SigninViewControlle +@@ -410,7 +410,7 @@ SigninViewControllerDelegateViews::SigninViewControlle SetButtons(static_cast(ui::mojom::DialogButton::kNone)); -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // On the local profile creation dialog, cancelling the dialog (for instance // through the VKEY_ESCAPE accelerator) should delete the profile. if (delete_profile_on_cancel) { -@@ -501,7 +501,7 @@ void SigninViewControllerDelegateViews::DisplayModal() +@@ -502,7 +502,7 @@ void SigninViewControllerDelegateViews::DisplayModal() content_view_->RequestFocus(); } -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) void SigninViewControllerDelegateViews::DeleteProfileOnCancel() { ProfileAttributesEntry* entry = g_browser_process->profile_manager() -@@ -541,7 +541,7 @@ SigninViewControllerDelegate::CreateSyncConfirmationDe +@@ -542,7 +542,7 @@ SigninViewControllerDelegate::CreateSyncConfirmationDe /*animate_on_resize=*/true); } -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // static SigninViewControllerDelegate* SigninViewControllerDelegate::CreateSyncHistoryOptInDelegate(Browser* browser) { -@@ -595,7 +595,7 @@ SigninViewControllerDelegate::CreateSignoutConfirmatio +@@ -596,7 +596,7 @@ SigninViewControllerDelegate::CreateSignoutConfirmatio } #endif // BUILDFLAG(ENABLE_DICE_SUPPORT) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // static SigninViewControllerDelegate* SigninViewControllerDelegate::CreateManagedUserNoticeDelegate( diff --git a/www/chromium/files/patch-chrome_browser_ui_views_tabs_tab.cc b/www/chromium/files/patch-chrome_browser_ui_views_tabs_tab.cc index 6ba6877a4874..41c8fd403b13 100644 --- a/www/chromium/files/patch-chrome_browser_ui_views_tabs_tab.cc +++ b/www/chromium/files/patch-chrome_browser_ui_views_tabs_tab.cc @@ -1,11 +1,11 @@ ---- chrome/browser/ui/views/tabs/tab.cc.orig 2025-05-28 14:55:43 UTC +--- chrome/browser/ui/views/tabs/tab.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/ui/views/tabs/tab.cc -@@ -644,7 +644,7 @@ void Tab::MaybeUpdateHoverStatus(const ui::MouseEvent& +@@ -657,7 +657,7 @@ void Tab::MaybeUpdateHoverStatus(const ui::MouseEvent& return; } -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Move the hit test area for hovering up so that it is not overlapped by tab // hover cards when they are shown. // TODO(crbug.com/41467565): Once Linux/CrOS widget transparency is solved, diff --git a/www/chromium/files/patch-chrome_browser_ui_views_tabs_tab__style__views.cc b/www/chromium/files/patch-chrome_browser_ui_views_tabs_tab__style__views.cc index 80f8ce5107db..3286b8c77bd5 100644 --- a/www/chromium/files/patch-chrome_browser_ui_views_tabs_tab__style__views.cc +++ b/www/chromium/files/patch-chrome_browser_ui_views_tabs_tab__style__views.cc @@ -1,11 +1,11 @@ ---- chrome/browser/ui/views/tabs/tab_style_views.cc.orig 2025-07-02 06:08:04 UTC +--- chrome/browser/ui/views/tabs/tab_style_views.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/ui/views/tabs/tab_style_views.cc -@@ -573,7 +573,7 @@ float TabStyleViewsImpl::GetCurrentActiveOpacity() con +@@ -574,7 +574,7 @@ float TabStyleViewsImpl::GetCurrentActiveOpacity() con if (!IsHoverAnimationActive()) { return base_opacity; } - return std::lerp(base_opacity, GetHoverOpacity(), GetHoverAnimationValue()); + return std::lerp(base_opacity, GetHoverOpacity(), static_cast(GetHoverAnimationValue())); } TabActive TabStyleViewsImpl::GetApparentActiveState() const { diff --git a/www/chromium/files/patch-chrome_browser_ui_views_user__education_browser__user__education__service.cc b/www/chromium/files/patch-chrome_browser_ui_views_user__education_browser__user__education__service.cc index f607ad0ca066..8f397040cd70 100644 --- a/www/chromium/files/patch-chrome_browser_ui_views_user__education_browser__user__education__service.cc +++ b/www/chromium/files/patch-chrome_browser_ui_views_user__education_browser__user__education__service.cc @@ -1,20 +1,20 @@ ---- chrome/browser/ui/views/user_education/browser_user_education_service.cc.orig 2025-07-02 06:08:04 UTC +--- chrome/browser/ui/views/user_education/browser_user_education_service.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/ui/views/user_education/browser_user_education_service.cc -@@ -1059,7 +1059,7 @@ void MaybeRegisterChromeFeaturePromos( +@@ -1054,7 +1054,7 @@ void MaybeRegisterChromeFeaturePromos( "Triggered when a shared tab becomes the active tab."))); } -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) // kIPHSupervisedUserProfileSigninFeature registry.RegisterFeature(std::move( FeaturePromoSpecification::CreateForCustomAction( -@@ -1317,7 +1317,7 @@ void MaybeRegisterChromeFeaturePromos( +@@ -1312,7 +1312,7 @@ void MaybeRegisterChromeFeaturePromos( "Triggered to inform users of the availability of the " "new translate screen feature on the Lens Overlay."))); -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) // kIPHDesktopPWAsLinkCapturingLaunch: registry.RegisterFeature(std::move( FeaturePromoSpecification::CreateForCustomAction( diff --git a/www/chromium/files/patch-chrome_browser_ui_views_web__apps_web__app__integration__test__driver.cc b/www/chromium/files/patch-chrome_browser_ui_views_web__apps_web__app__integration__test__driver.cc index ba7968b3da66..32d349559593 100644 --- a/www/chromium/files/patch-chrome_browser_ui_views_web__apps_web__app__integration__test__driver.cc +++ b/www/chromium/files/patch-chrome_browser_ui_views_web__apps_web__app__integration__test__driver.cc @@ -1,83 +1,83 @@ ---- chrome/browser/ui/views/web_apps/web_app_integration_test_driver.cc.orig 2025-07-02 06:08:04 UTC +--- chrome/browser/ui/views/web_apps/web_app_integration_test_driver.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/ui/views/web_apps/web_app_integration_test_driver.cc -@@ -511,7 +511,7 @@ std::string GetFileExtension(FileExtension file_extens +@@ -516,7 +516,7 @@ std::string GetFileExtension(FileExtension file_extens } #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) SiteConfig GetSiteConfigurationFromAppName(const std::string& app_name) { SiteConfig config; bool is_app_found = false; -@@ -2069,7 +2069,7 @@ void WebAppIntegrationTestDriver::DeletePlatformShortc +@@ -2078,7 +2078,7 @@ void WebAppIntegrationTestDriver::DeletePlatformShortc if (app_name.empty()) { app_name = GetSiteConfiguration(site).app_name; } -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) ASSERT_TRUE(override_registration_->test_override().IsShortcutCreated( profile(), app_id, app_name)); ASSERT_TRUE( -@@ -3389,7 +3389,7 @@ void WebAppIntegrationTestDriver::CheckRunOnOsLoginEna +@@ -3396,7 +3396,7 @@ void WebAppIntegrationTestDriver::CheckRunOnOsLoginEna app_state->id, app_state->name); ASSERT_TRUE(icon_color.has_value()); ASSERT_THAT(site_config.icon_color, testing::Eq(icon_color.value())); -#elif BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) ASSERT_TRUE(override_registration_->test_override().IsRunOnOsLoginEnabled( profile(), app_state->id, app_state->name)); #endif -@@ -3404,7 +3404,7 @@ void WebAppIntegrationTestDriver::CheckRunOnOsLoginDis +@@ -3411,7 +3411,7 @@ void WebAppIntegrationTestDriver::CheckRunOnOsLoginDis GetAppBySiteMode(after_state_change_action_state_.get(), profile(), site); ASSERT_TRUE(app_state); base::ScopedAllowBlockingForTesting allow_blocking; -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) ASSERT_FALSE(override_registration_->test_override().IsRunOnOsLoginEnabled( profile(), app_state->id, app_state->name)); #endif -@@ -3414,7 +3414,7 @@ void WebAppIntegrationTestDriver::CheckRunOnOsLoginDis +@@ -3421,7 +3421,7 @@ void WebAppIntegrationTestDriver::CheckRunOnOsLoginDis void WebAppIntegrationTestDriver::CheckSiteHandlesFile( Site site, FileExtension file_extension) { -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (!BeforeStateCheckAction(__FUNCTION__)) { return; } -@@ -3430,7 +3430,7 @@ void WebAppIntegrationTestDriver::CheckSiteHandlesFile +@@ -3437,7 +3437,7 @@ void WebAppIntegrationTestDriver::CheckSiteHandlesFile void WebAppIntegrationTestDriver::CheckSiteNotHandlesFile( Site site, FileExtension file_extension) { -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (!BeforeStateCheckAction(__FUNCTION__)) { return; } -@@ -4255,7 +4255,7 @@ base::FilePath WebAppIntegrationTestDriver::GetShortcu +@@ -4262,7 +4262,7 @@ base::FilePath WebAppIntegrationTestDriver::GetShortcu base::FilePath shortcut_dir, const std::string& app_name, const webapps::AppId& app_id) { -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) return override_registration_->test_override().GetShortcutPath( profile(), shortcut_dir, app_id, app_name); #else -@@ -4455,7 +4455,7 @@ bool WebAppIntegrationTestDriver::IsShortcutAndIconCre +@@ -4462,7 +4462,7 @@ bool WebAppIntegrationTestDriver::IsShortcutAndIconCre const webapps::AppId& id) { base::ScopedAllowBlockingForTesting allow_blocking; bool is_shortcut_and_icon_correct = false; -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) bool is_shortcut_correct = override_registration_->test_override().IsShortcutCreated(profile, id, name); -@@ -4499,7 +4499,7 @@ bool WebAppIntegrationTestDriver::DoIconColorsMatch(Pr +@@ -4506,7 +4506,7 @@ bool WebAppIntegrationTestDriver::DoIconColorsMatch(Pr do_icon_colors_match = (expected_icon_pixel_color == shortcut_pixel_color_apps_folder.value()); } -#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) SkColor expected_icon_pixel_color = GetSiteConfigurationFromAppName(name).icon_color; std::optional actual_color_install_icon_size = diff --git a/www/chromium/files/patch-chrome_browser_ui_web__applications_web__app__ui__manager__impl.cc b/www/chromium/files/patch-chrome_browser_ui_web__applications_web__app__ui__manager__impl.cc index 18054983ad6b..a344ebb76ed8 100644 --- a/www/chromium/files/patch-chrome_browser_ui_web__applications_web__app__ui__manager__impl.cc +++ b/www/chromium/files/patch-chrome_browser_ui_web__applications_web__app__ui__manager__impl.cc @@ -1,20 +1,20 @@ ---- chrome/browser/ui/web_applications/web_app_ui_manager_impl.cc.orig 2025-07-02 06:08:04 UTC +--- chrome/browser/ui/web_applications/web_app_ui_manager_impl.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/ui/web_applications/web_app_ui_manager_impl.cc -@@ -531,7 +531,7 @@ void WebAppUiManagerImpl::MaybeShowIPHPromoForAppsLaun +@@ -566,7 +566,7 @@ void WebAppUiManagerImpl::MaybeShowIPHPromoForAppsLaun Browser* browser, Profile* profile, const std::string& app_id) { -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) WebAppProvider* provider = WebAppProvider::GetForWebApps(profile); CHECK(provider); -@@ -760,7 +760,7 @@ void WebAppUiManagerImpl::ClearWebAppSiteDataIfNeeded( +@@ -795,7 +795,7 @@ void WebAppUiManagerImpl::ClearWebAppSiteDataIfNeeded( } } -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) const base::Feature& GetPromoFeatureEngagementFromBrowser( const Browser* browser) { diff --git a/www/chromium/files/patch-chrome_browser_ui_web__applications_web__app__ui__manager__impl.h b/www/chromium/files/patch-chrome_browser_ui_web__applications_web__app__ui__manager__impl.h index abfdb47b38af..069e168b5d2c 100644 --- a/www/chromium/files/patch-chrome_browser_ui_web__applications_web__app__ui__manager__impl.h +++ b/www/chromium/files/patch-chrome_browser_ui_web__applications_web__app__ui__manager__impl.h @@ -1,11 +1,11 @@ ---- chrome/browser/ui/web_applications/web_app_ui_manager_impl.h.orig 2025-07-02 06:08:04 UTC +--- chrome/browser/ui/web_applications/web_app_ui_manager_impl.h.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/ui/web_applications/web_app_ui_manager_impl.h -@@ -231,7 +231,7 @@ class WebAppUiManagerImpl : public BrowserListObserver +@@ -245,7 +245,7 @@ class WebAppUiManagerImpl : public BrowserListObserver UninstallCompleteCallback uninstall_complete_callback, webapps::UninstallResultCode uninstall_code); -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) void ShowIPHPromoForAppsLaunchedViaLinkCapturing(const Browser* browser, const webapps::AppId& app_id, bool is_activated); diff --git a/www/chromium/files/patch-chrome_browser_ui_webui_about_about__ui.cc b/www/chromium/files/patch-chrome_browser_ui_webui_about_about__ui.cc index d192a16ffb1f..671b2c222e05 100644 --- a/www/chromium/files/patch-chrome_browser_ui_webui_about_about__ui.cc +++ b/www/chromium/files/patch-chrome_browser_ui_webui_about_about__ui.cc @@ -1,29 +1,29 @@ ---- chrome/browser/ui/webui/about/about_ui.cc.orig 2025-07-02 06:08:04 UTC +--- chrome/browser/ui/webui/about/about_ui.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/ui/webui/about/about_ui.cc -@@ -416,7 +416,7 @@ using about_ui::AppendHeader; +@@ -415,7 +415,7 @@ using about_ui::AppendHeader; namespace { -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_OPENBSD) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) std::string AboutLinuxProxyConfig() { std::string data; AppendHeader(&data, -@@ -446,7 +446,7 @@ TermsUIConfig::TermsUIConfig() +@@ -445,7 +445,7 @@ TermsUIConfig::TermsUIConfig() : AboutUIConfigBase(chrome::kChromeUITermsHost) {} #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_OPENBSD) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) LinuxProxyConfigUI::LinuxProxyConfigUI() : AboutUIConfigBase(chrome::kChromeUILinuxProxyConfigHost) {} #endif -@@ -496,7 +496,7 @@ void AboutUIHTMLSource::StartDataRequest( +@@ -495,7 +495,7 @@ void AboutUIHTMLSource::StartDataRequest( response = ui::ResourceBundle::GetSharedInstance().LoadDataResourceString(idr); } -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_OPENBSD) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) } else if (source_name_ == chrome::kChromeUILinuxProxyConfigHost) { response = AboutLinuxProxyConfig(); #endif diff --git a/www/chromium/files/patch-chrome_browser_ui_webui_certificate__manager_certificate__manager__handler.cc b/www/chromium/files/patch-chrome_browser_ui_webui_certificate__manager_certificate__manager__handler.cc index 33b4bd9f04ea..c25bb76054e1 100644 --- a/www/chromium/files/patch-chrome_browser_ui_webui_certificate__manager_certificate__manager__handler.cc +++ b/www/chromium/files/patch-chrome_browser_ui_webui_certificate__manager_certificate__manager__handler.cc @@ -1,11 +1,11 @@ ---- chrome/browser/ui/webui/certificate_manager/certificate_manager_handler.cc.orig 2025-03-05 08:14:56 UTC +--- chrome/browser/ui/webui/certificate_manager/certificate_manager_handler.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/ui/webui/certificate_manager/certificate_manager_handler.cc -@@ -221,7 +221,7 @@ CertificateManagerPageHandler::GetCertSource( +@@ -219,7 +219,7 @@ CertificateManagerPageHandler::GetCertSource( CERTIFICATE_TRUST_TYPE_DISTRUSTED, profile_, &remote_client_); break; -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - case certificate_manager_v2::mojom::CertificateSource:: + case certificate_manager::mojom::CertificateSource:: kProvisionedClientCert: source_ptr = CreateProvisionedClientCertSource(profile_); diff --git a/www/chromium/files/patch-chrome_browser_ui_webui_certificate__manager_client__cert__sources.cc b/www/chromium/files/patch-chrome_browser_ui_webui_certificate__manager_client__cert__sources.cc index 7aaf7b187f85..53569c4c9d4e 100644 --- a/www/chromium/files/patch-chrome_browser_ui_webui_certificate__manager_client__cert__sources.cc +++ b/www/chromium/files/patch-chrome_browser_ui_webui_certificate__manager_client__cert__sources.cc @@ -1,65 +1,65 @@ ---- chrome/browser/ui/webui/certificate_manager/client_cert_sources.cc.orig 2025-07-02 06:08:04 UTC +--- chrome/browser/ui/webui/certificate_manager/client_cert_sources.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/ui/webui/certificate_manager/client_cert_sources.cc -@@ -54,7 +54,7 @@ +@@ -55,7 +55,7 @@ #include "net/ssl/client_cert_store_mac.h" #endif // BUILDFLAG(IS_MAC) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "chrome/browser/browser_process.h" #include "chrome/browser/enterprise/client_certificates/certificate_provisioning_service_factory.h" #include "chrome/browser/policy/chrome_browser_policy_connector.h" -@@ -177,7 +177,7 @@ class ClientCertStoreFactoryMac : public ClientCertSto +@@ -178,7 +178,7 @@ class ClientCertStoreFactoryMac : public ClientCertSto }; #endif -#if !BUILDFLAG(IS_CHROMEOS) && !BUILDFLAG(IS_LINUX) +#if !BUILDFLAG(IS_CHROMEOS) && !BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_BSD) std::unique_ptr CreatePlatformClientCertLoader( Profile* profile) { #if BUILDFLAG(IS_WIN) -@@ -192,7 +192,7 @@ std::unique_ptr CreatePlatformC +@@ -193,7 +193,7 @@ std::unique_ptr CreatePlatformC } #endif -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // ClientCertStore implementation that always returns an empty list. The // CertificateProvisioningService implementation expects to wrap a platform // cert store, but here we only want to get results from the provisioning -@@ -368,7 +368,7 @@ class ClientCertSource : public CertificateManagerPage +@@ -369,7 +369,7 @@ class ClientCertSource : public CertificateManagerPage std::optional certs_; }; -#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // ChromeOS currently can use either Kcer or NSS for listing client certs, and // Linux uses NSS only. This interface provides an abstraction to hide that // from WritableClientCertSource. Currently this class only handles reading @@ -1099,7 +1099,7 @@ CreatePlatformClientCertSource( - mojo::Remote* + mojo::Remote* remote_client, Profile* profile) { -#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) return std::make_unique(remote_client, profile); #else return std::make_unique( @@ -1107,7 +1107,7 @@ CreatePlatformClientCertSource( #endif } -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) std::unique_ptr CreateProvisionedClientCertSource(Profile* profile) { return std::make_unique( @@ -1157,7 +1157,7 @@ bool ClientCertManagementAccessControls::IsChangeAllow return client_cert_policy_ == ClientCertificateManagementPermission::kAll; } -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) ClientCertManagementAccessControls::ClientCertManagementAccessControls( Profile* profile) {} diff --git a/www/chromium/files/patch-chrome_browser_ui_webui_chrome__web__ui__configs.cc b/www/chromium/files/patch-chrome_browser_ui_webui_chrome__web__ui__configs.cc index 415b28486f88..75a1e5978d1b 100644 --- a/www/chromium/files/patch-chrome_browser_ui_webui_chrome__web__ui__configs.cc +++ b/www/chromium/files/patch-chrome_browser_ui_webui_chrome__web__ui__configs.cc @@ -1,85 +1,85 @@ ---- chrome/browser/ui/webui/chrome_web_ui_configs.cc.orig 2025-07-02 06:08:04 UTC +--- chrome/browser/ui/webui/chrome_web_ui_configs.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/ui/webui/chrome_web_ui_configs.cc -@@ -148,7 +148,7 @@ +@@ -144,7 +144,7 @@ #include "chrome/browser/ui/webui/conflicts/conflicts_ui.h" #endif // BUILDFLAG(IS_WIN) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "chrome/browser/ui/webui/app_settings/web_app_settings_ui.h" #include "chrome/browser/ui/webui/browser_switch/browser_switch_ui.h" #include "chrome/browser/ui/webui/signin/history_sync_optin/history_sync_optin_ui.h" -@@ -156,19 +156,19 @@ +@@ -152,19 +152,19 @@ #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ - BUILDFLAG(IS_ANDROID) + BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) #include "chrome/browser/ui/webui/sandbox/sandbox_internals_ui.h" #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || // BUILDFLAG(IS_ANDROID) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "chrome/browser/ui/webui/connectors_internals/connectors_internals_ui.h" #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || // BUILDFLAG(IS_CHROMEOS) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_DESKTOP_ANDROID) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_DESKTOP_ANDROID) || BUILDFLAG(IS_BSD) #include "chrome/browser/ui/webui/discards/discards_ui.h" #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_DESKTOP_ANDROID) -@@ -196,7 +196,7 @@ +@@ -192,7 +192,7 @@ #include "chrome/browser/ui/webui/signin/signin_error_ui.h" #endif // !BUILDFLAG(IS_CHROMEOS) && !BUILDFLAG(IS_ANDROID) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "chrome/browser/ui/webui/on_device_translation_internals/on_device_translation_internals_ui.h" #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) -@@ -340,7 +340,7 @@ void RegisterChromeWebUIConfigs() { +@@ -333,7 +333,7 @@ void RegisterChromeWebUIConfigs() { map.AddWebUIConfig(std::make_unique()); #endif // BUILDFLAG(IS_ANDROID) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_OPENBSD) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) map.AddWebUIConfig(std::make_unique()); #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || // BUILDFLAG(IS_OPENBSD) -@@ -370,7 +370,7 @@ void RegisterChromeWebUIConfigs() { +@@ -363,7 +363,7 @@ void RegisterChromeWebUIConfigs() { map.AddWebUIConfig(std::make_unique()); #endif // BUILDFLAG(IS_WIN) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) map.AddWebUIConfig(std::make_unique()); map.AddWebUIConfig(std::make_unique()); map.AddWebUIConfig(std::make_unique()); -@@ -379,20 +379,20 @@ void RegisterChromeWebUIConfigs() { +@@ -372,20 +372,20 @@ void RegisterChromeWebUIConfigs() { #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ - BUILDFLAG(IS_ANDROID) + BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) map.AddWebUIConfig(std::make_unique()); #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || // BUILDFLAG(IS_ANDROID) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) map.AddWebUIConfig( std::make_unique()); #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || // BUILDFLAG(IS_CHROMEOS) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_DESKTOP_ANDROID) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_DESKTOP_ANDROID) || BUILDFLAG(IS_BSD) map.AddWebUIConfig(std::make_unique()); #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_DESKTOP_ANDROID) diff --git a/www/chromium/files/patch-chrome_browser_ui_webui_connectors__internals_connectors__internals__page__handler.cc b/www/chromium/files/patch-chrome_browser_ui_webui_connectors__internals_connectors__internals__page__handler.cc index 6a928be33f93..ba9689f69e5e 100644 --- a/www/chromium/files/patch-chrome_browser_ui_webui_connectors__internals_connectors__internals__page__handler.cc +++ b/www/chromium/files/patch-chrome_browser_ui_webui_connectors__internals_connectors__internals__page__handler.cc @@ -1,20 +1,20 @@ ---- chrome/browser/ui/webui/connectors_internals/connectors_internals_page_handler.cc.orig 2025-05-28 14:55:43 UTC +--- chrome/browser/ui/webui/connectors_internals/connectors_internals_page_handler.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/ui/webui/connectors_internals/connectors_internals_page_handler.cc -@@ -81,7 +81,7 @@ connectors_internals::mojom::ClientIdentityPtr GetIden +@@ -82,7 +82,7 @@ connectors_internals::mojom::ClientIdentityPtr GetIden } #endif // BUILDFLAG(ENTERPRISE_CLIENT_CERTIFICATES) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) std::string GetStringFromTimestamp(base::Time timestamp) { return (timestamp == base::Time()) ? std::string() : base::UnlocalizedTimeFormatWithPattern( -@@ -190,7 +190,7 @@ void ConnectorsInternalsPageHandler::GetClientCertific +@@ -191,7 +191,7 @@ void ConnectorsInternalsPageHandler::GetClientCertific void ConnectorsInternalsPageHandler::GetSignalsReportingState( GetSignalsReportingStateCallback callback) { -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) auto* profile_prefs = profile_->GetPrefs(); std::string last_upload_attempt_time_string = diff --git a/www/chromium/files/patch-chrome_browser_ui_webui_new__tab__page_new__tab__page__handler.cc b/www/chromium/files/patch-chrome_browser_ui_webui_new__tab__page_new__tab__page__handler.cc new file mode 100644 index 000000000000..a9d4e10d8e92 --- /dev/null +++ b/www/chromium/files/patch-chrome_browser_ui_webui_new__tab__page_new__tab__page__handler.cc @@ -0,0 +1,11 @@ +--- chrome/browser/ui/webui/new_tab_page/new_tab_page_handler.cc.orig 2025-08-07 06:57:29 UTC ++++ chrome/browser/ui/webui/new_tab_page/new_tab_page_handler.cc +@@ -540,7 +540,7 @@ NewTabPageHandler::NewTabPageHandler( + prefs::kNtpFooterVisible, + base::BindRepeating(&NewTabPageHandler::OnFooterVisibilityUpdated, + base::Unretained(this))); +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + local_state_pref_change_registrar_.Init(g_browser_process->local_state()); + local_state_pref_change_registrar_.Add( + prefs::kNTPFooterManagementNoticeEnabled, diff --git a/www/chromium/files/patch-chrome_browser_ui_webui_searchbox_searchbox__handler.cc b/www/chromium/files/patch-chrome_browser_ui_webui_searchbox_searchbox__handler.cc index a349bf185a40..2568e587daec 100644 --- a/www/chromium/files/patch-chrome_browser_ui_webui_searchbox_searchbox__handler.cc +++ b/www/chromium/files/patch-chrome_browser_ui_webui_searchbox_searchbox__handler.cc @@ -1,29 +1,29 @@ ---- chrome/browser/ui/webui/searchbox/searchbox_handler.cc.orig 2025-07-02 06:08:04 UTC +--- chrome/browser/ui/webui/searchbox/searchbox_handler.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/ui/webui/searchbox/searchbox_handler.cc -@@ -120,7 +120,7 @@ const char* kMacShareIconResourceName = +@@ -128,7 +128,7 @@ const char* kMacShareIconResourceName = #elif BUILDFLAG(IS_WIN) const char* kWinShareIconResourceName = "//resources/cr_components/searchbox/icons/win_share.svg"; -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) const char* kLinuxShareIconResourceName = "//resources/cr_components/searchbox/icons/share.svg"; #else -@@ -180,7 +180,7 @@ static void DefineChromeRefreshRealboxIcons() { +@@ -188,7 +188,7 @@ static void DefineChromeRefreshRealboxIcons() { #elif BUILDFLAG(IS_WIN) kWinShareIconResourceName = "//resources/cr_components/searchbox/icons/win_share_cr23.svg"; -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) kLinuxShareIconResourceName = "//resources/cr_components/searchbox/icons/share_cr23.svg"; #else -@@ -634,7 +634,7 @@ std::string SearchboxHandler::ActionVectorIconToResour +@@ -656,7 +656,7 @@ std::string SearchboxHandler::ActionVectorIconToResour icon.name == omnibox::kShareWinChromeRefreshIcon.name) { return kWinShareIconResourceName; } -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (icon.name == omnibox::kShareIcon.name || icon.name == omnibox::kShareLinuxChromeRefreshIcon.name) { return kLinuxShareIconResourceName; diff --git a/www/chromium/files/patch-chrome_browser_ui_webui_settings_settings__localized__strings__provider.cc b/www/chromium/files/patch-chrome_browser_ui_webui_settings_settings__localized__strings__provider.cc index 4149426a1653..0099f41660a4 100644 --- a/www/chromium/files/patch-chrome_browser_ui_webui_settings_settings__localized__strings__provider.cc +++ b/www/chromium/files/patch-chrome_browser_ui_webui_settings_settings__localized__strings__provider.cc @@ -1,65 +1,65 @@ ---- chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc.orig 2025-07-02 06:08:04 UTC +--- chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc -@@ -139,7 +139,7 @@ +@@ -137,7 +137,7 @@ #include "chrome/browser/ui/webui/settings/system_handler.h" #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "ui/display/screen.h" #endif -@@ -154,7 +154,7 @@ +@@ -153,7 +153,7 @@ #endif // BUILDFLAG(GOOGLE_CHROME_BRANDING) #endif // BUILDFLAG(IS_WIN) -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "ui/linux/linux_ui_factory.h" #include "ui/ozone/public/ozone_platform.h" #endif -@@ -283,7 +283,7 @@ void AddA11yStrings(content::WebUIDataSource* html_sou +@@ -282,7 +282,7 @@ void AddA11yStrings(content::WebUIDataSource* html_sou {"toastAlertLevelDescription", IDS_SETTINGS_ACCESSIBILITY_TOAST_FREQUENCY_DESCRIPTION}, #endif -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) {"overscrollHistoryNavigationTitle", IDS_SETTINGS_OVERSCROLL_HISTORY_NAVIGATION_TITLE}, {"overscrollHistoryNavigationSubtitle", -@@ -553,7 +553,7 @@ void AddAppearanceStrings(content::WebUIDataSource* ht +@@ -551,7 +551,7 @@ void AddAppearanceStrings(content::WebUIDataSource* ht {"uiFeatureAlignLeft", IDS_SETTINGS_UI_FEATURE_ALIGN_LEFT}, {"uiFeatureAlignRight", IDS_SETTINGS_UI_FEATURE_ALIGN_RIGHT}, {"resetToDefault", IDS_SETTINGS_RESET_TO_DEFAULT}, -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) {"gtkTheme", IDS_SETTINGS_GTK_THEME}, {"useGtkTheme", IDS_SETTINGS_USE_GTK_THEME}, {"qtTheme", IDS_SETTINGS_QT_THEME}, -@@ -561,7 +561,7 @@ void AddAppearanceStrings(content::WebUIDataSource* ht +@@ -559,7 +559,7 @@ void AddAppearanceStrings(content::WebUIDataSource* ht {"classicTheme", IDS_SETTINGS_CLASSIC_THEME}, {"useClassicTheme", IDS_SETTINGS_USE_CLASSIC_THEME}, #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) {"showWindowDecorations", IDS_SHOW_WINDOW_DECORATIONS}, #endif #if BUILDFLAG(IS_MAC) -@@ -583,7 +583,7 @@ void AddAppearanceStrings(content::WebUIDataSource* ht +@@ -581,7 +581,7 @@ void AddAppearanceStrings(content::WebUIDataSource* ht html_source->AddBoolean("tabSearchIsRightAlignedAtStartup", tabs::GetTabSearchTrailingTabstrip(profile)); -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) bool show_custom_chrome_frame = ui::OzonePlatform::GetInstance() ->GetPlatformRuntimeProperties() .supports_server_side_window_decorations; -@@ -1513,7 +1513,7 @@ void AddSignOutDialogStrings(content::WebUIDataSource* +@@ -1556,7 +1556,7 @@ void AddSignOutDialogStrings(content::WebUIDataSource* g_browser_process->GetApplicationLocale()) .spec(); -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) html_source->AddString( "syncDisconnectManagedProfileExplanation", l10n_util::GetStringFUTF8( diff --git a/www/chromium/files/patch-chrome_browser_ui_webui_side__panel_customize__chrome_customize__chrome__page__handler.cc b/www/chromium/files/patch-chrome_browser_ui_webui_side__panel_customize__chrome_customize__chrome__page__handler.cc new file mode 100644 index 000000000000..3e3c79b61e7f --- /dev/null +++ b/www/chromium/files/patch-chrome_browser_ui_webui_side__panel_customize__chrome_customize__chrome__page__handler.cc @@ -0,0 +1,11 @@ +--- chrome/browser/ui/webui/side_panel/customize_chrome/customize_chrome_page_handler.cc.orig 2025-08-07 06:57:29 UTC ++++ chrome/browser/ui/webui/side_panel/customize_chrome/customize_chrome_page_handler.cc +@@ -145,7 +145,7 @@ CustomizeChromePageHandler::CustomizeChromePageHandler + base::BindRepeating(&CustomizeChromePageHandler::UpdateFooterSettings, + base::Unretained(this))); + +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + PrefService* local_state = g_browser_process->local_state(); + if (local_state) { + browser_pref_change_registrar_.Init(local_state); diff --git a/www/chromium/files/patch-chrome_browser_ui_webui_side__panel_customize__chrome_customize__chrome__page__handler.h b/www/chromium/files/patch-chrome_browser_ui_webui_side__panel_customize__chrome_customize__chrome__page__handler.h new file mode 100644 index 000000000000..319afd2525d1 --- /dev/null +++ b/www/chromium/files/patch-chrome_browser_ui_webui_side__panel_customize__chrome_customize__chrome__page__handler.h @@ -0,0 +1,11 @@ +--- chrome/browser/ui/webui/side_panel/customize_chrome/customize_chrome_page_handler.h.orig 2025-08-07 06:57:29 UTC ++++ chrome/browser/ui/webui/side_panel/customize_chrome/customize_chrome_page_handler.h +@@ -194,7 +194,7 @@ class CustomizeChromePageHandler + // value needs to be requeried by the page. + GURL last_source_url_{GURL(chrome::kChromeUINewTabPageURL)}; + +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + PrefChangeRegistrar browser_pref_change_registrar_; + #endif + PrefChangeRegistrar pref_change_registrar_; diff --git a/www/chromium/files/patch-chrome_browser_ui_webui_signin_profile__picker__handler.cc b/www/chromium/files/patch-chrome_browser_ui_webui_signin_profile__picker__handler.cc index a5d7e4950cde..3c9a6ac1f444 100644 --- a/www/chromium/files/patch-chrome_browser_ui_webui_signin_profile__picker__handler.cc +++ b/www/chromium/files/patch-chrome_browser_ui_webui_signin_profile__picker__handler.cc @@ -1,11 +1,11 @@ ---- chrome/browser/ui/webui/signin/profile_picker_handler.cc.orig 2025-05-05 10:57:53 UTC +--- chrome/browser/ui/webui/signin/profile_picker_handler.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/ui/webui/signin/profile_picker_handler.cc -@@ -165,7 +165,7 @@ base::Value::Dict CreateProfileEntry(const ProfileAttr +@@ -168,7 +168,7 @@ base::Value::Dict CreateProfileEntry(const ProfileAttr IDS_PROFILE_PICKER_PROFILE_CARD_LABEL, local_profile_name); - if (AccountInfo::IsManaged(entry->GetHostedDomain())) { + if (entry->GetIsManaged() == signin::Tribool::kTrue) { profile_entry.Set("avatarBadge", "cr:domain"); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) } else if (base::FeatureList::IsEnabled( supervised_user::kShowKiteForSupervisedUsers) && entry->IsSupervised()) { diff --git a/www/chromium/files/patch-chrome_browser_ui_webui_user__education__internals_user__education__internals__page__handler__impl.cc b/www/chromium/files/patch-chrome_browser_ui_webui_user__education__internals_user__education__internals__page__handler__impl.cc index 109de189f155..2cb8c20863b4 100644 --- a/www/chromium/files/patch-chrome_browser_ui_webui_user__education__internals_user__education__internals__page__handler__impl.cc +++ b/www/chromium/files/patch-chrome_browser_ui_webui_user__education__internals_user__education__internals__page__handler__impl.cc @@ -1,29 +1,29 @@ ---- chrome/browser/ui/webui/user_education_internals/user_education_internals_page_handler_impl.cc.orig 2025-07-02 06:08:04 UTC +--- chrome/browser/ui/webui/user_education_internals/user_education_internals_page_handler_impl.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/ui/webui/user_education_internals/user_education_internals_page_handler_impl.cc -@@ -45,7 +45,7 @@ +@@ -47,7 +47,7 @@ #include "ui/base/l10n/l10n_util.h" #include "ui/base/webui/resource_path.h" -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "chrome/browser/ui/browser_navigator.h" #include "chrome/browser/ui/browser_navigator_params.h" #include "net/base/url_util.h" -@@ -85,7 +85,7 @@ user_education::NewBadgeRegistry* GetNewBadgeRegistry( +@@ -87,7 +87,7 @@ user_education::NewBadgeRegistry* GetNewBadgeRegistry( } whats_new::WhatsNewRegistry* GetWhatsNewRegistry() { -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) return g_browser_process->GetFeatures()->whats_new_registry(); #else return nullptr; -@@ -821,7 +821,7 @@ void UserEducationInternalsPageHandlerImpl::ClearWhats +@@ -877,7 +877,7 @@ void UserEducationInternalsPageHandlerImpl::ClearWhats } void UserEducationInternalsPageHandlerImpl::LaunchWhatsNewStaging() { -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) GURL url = net::AppendQueryParameter(GURL(chrome::kChromeUIWhatsNewURL), "staging", "true"); NavigateParams params(profile_, url, ui::PAGE_TRANSITION_TYPED); diff --git a/www/chromium/files/patch-chrome_browser_web__applications_extensions_extension__status__utils.cc b/www/chromium/files/patch-chrome_browser_web__applications_extensions_extension__status__utils.cc index f587fdcba7b4..9e4bd5e72778 100644 --- a/www/chromium/files/patch-chrome_browser_web__applications_extensions_extension__status__utils.cc +++ b/www/chromium/files/patch-chrome_browser_web__applications_extensions_extension__status__utils.cc @@ -1,20 +1,11 @@ ---- chrome/browser/web_applications/extensions/extension_status_utils.cc.orig 2025-05-05 10:57:53 UTC +--- chrome/browser/web_applications/extensions/extension_status_utils.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/web_applications/extensions/extension_status_utils.cc -@@ -26,7 +26,7 @@ namespace { - - const char* g_preinstalled_app_for_testing = nullptr; - --#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - // TODO(b/268221237): Remove this allow-list. - const char kDefaultAllowedExtensionIds[] = - "alhngdkjgnedakdlnamimgfihgkmenbh," -@@ -105,7 +105,7 @@ bool IsExternalExtensionUninstalled(content::BrowserCo +@@ -94,7 +94,7 @@ bool IsExternalExtensionUninstalled(content::BrowserCo return prefs && prefs->IsExternalExtensionUninstalled(extension_id); } -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) bool IsExtensionUnsupportedDeprecatedApp(content::BrowserContext* context, const std::string& extension_id) { if (testing::g_enable_chrome_apps_for_testing) { diff --git a/www/chromium/files/patch-chrome_browser_web__applications_os__integration_os__integration__manager.cc b/www/chromium/files/patch-chrome_browser_web__applications_os__integration_os__integration__manager.cc index 5c54ea96019d..36cfcbcfc7ff 100644 --- a/www/chromium/files/patch-chrome_browser_web__applications_os__integration_os__integration__manager.cc +++ b/www/chromium/files/patch-chrome_browser_web__applications_os__integration_os__integration__manager.cc @@ -1,11 +1,11 @@ ---- chrome/browser/web_applications/os_integration/os_integration_manager.cc.orig 2025-05-05 10:57:53 UTC +--- chrome/browser/web_applications/os_integration/os_integration_manager.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/web_applications/os_integration/os_integration_manager.cc -@@ -662,7 +662,7 @@ std::unique_ptr OsIntegrationManager::Bu +@@ -663,7 +663,7 @@ std::unique_ptr OsIntegrationManager::Bu } } -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) const std::vector& shortcuts_menu_item_infos = app->shortcuts_menu_item_infos(); DCHECK_LE(shortcuts_menu_item_infos.size(), kMaxApplicationDockMenuItems); diff --git a/www/chromium/files/patch-chrome_browser_web__applications_policy_web__app__policy__manager.cc b/www/chromium/files/patch-chrome_browser_web__applications_policy_web__app__policy__manager.cc index 3aa180b6d795..6e92cc5ffafe 100644 --- a/www/chromium/files/patch-chrome_browser_web__applications_policy_web__app__policy__manager.cc +++ b/www/chromium/files/patch-chrome_browser_web__applications_policy_web__app__policy__manager.cc @@ -1,11 +1,11 @@ ---- chrome/browser/web_applications/policy/web_app_policy_manager.cc.orig 2025-07-02 06:08:04 UTC +--- chrome/browser/web_applications/policy/web_app_policy_manager.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/web_applications/policy/web_app_policy_manager.cc -@@ -111,7 +111,7 @@ namespace web_app { +@@ -136,7 +136,7 @@ namespace web_app { BASE_FEATURE(kDesktopPWAsForceUnregisterOSIntegration, "DesktopPWAsForceUnregisterOSIntegration", -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) base::FEATURE_ENABLED_BY_DEFAULT #else base::FEATURE_DISABLED_BY_DEFAULT diff --git a/www/chromium/files/patch-chrome_browser_webauthn_chrome__authenticator__request__delegate.cc b/www/chromium/files/patch-chrome_browser_webauthn_chrome__authenticator__request__delegate.cc index 079c5ea84035..284c5306fb0c 100644 --- a/www/chromium/files/patch-chrome_browser_webauthn_chrome__authenticator__request__delegate.cc +++ b/www/chromium/files/patch-chrome_browser_webauthn_chrome__authenticator__request__delegate.cc @@ -1,11 +1,11 @@ ---- chrome/browser/webauthn/chrome_authenticator_request_delegate.cc.orig 2025-07-02 06:08:04 UTC +--- chrome/browser/webauthn/chrome_authenticator_request_delegate.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/webauthn/chrome_authenticator_request_delegate.cc -@@ -578,7 +578,7 @@ void ChromeAuthenticatorRequestDelegate::ConfigureDisc +@@ -551,7 +551,7 @@ void ChromeAuthenticatorRequestDelegate::ConfigureDisc g_observer->ConfiguringCable(request_type); } -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // No caBLEv1 on Linux. It tends to crash bluez. if (base::Contains(pairings_from_extension, device::CableDiscoveryData::Version::V1, diff --git a/www/chromium/files/patch-chrome_browser_webauthn_enclave__manager.cc b/www/chromium/files/patch-chrome_browser_webauthn_enclave__manager.cc index bd45efaef0d3..26119bd8950a 100644 --- a/www/chromium/files/patch-chrome_browser_webauthn_enclave__manager.cc +++ b/www/chromium/files/patch-chrome_browser_webauthn_enclave__manager.cc @@ -1,20 +1,20 @@ ---- chrome/browser/webauthn/enclave_manager.cc.orig 2025-07-02 06:08:04 UTC +--- chrome/browser/webauthn/enclave_manager.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/browser/webauthn/enclave_manager.cc -@@ -687,7 +687,7 @@ base::flat_set GetGaiaIDs( +@@ -688,7 +688,7 @@ base::flat_set GetGaiaIDs( std::string UserVerifyingLabelToString(crypto::UserVerifyingKeyLabel label) { #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) return label; #else return std::string("placeholder"); -@@ -697,7 +697,7 @@ std::string UserVerifyingLabelToString(crypto::UserVer +@@ -698,7 +698,7 @@ std::string UserVerifyingLabelToString(crypto::UserVer std::optional UserVerifyingKeyLabelFromString( std::string saved_label) { #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) return saved_label; #else return std::nullopt; diff --git a/www/chromium/files/patch-chrome_common_chrome__features.cc b/www/chromium/files/patch-chrome_common_chrome__features.cc index 4c46706cda00..84511104b6d4 100644 --- a/www/chromium/files/patch-chrome_common_chrome__features.cc +++ b/www/chromium/files/patch-chrome_common_chrome__features.cc @@ -1,56 +1,56 @@ ---- chrome/common/chrome_features.cc.orig 2025-07-02 06:08:04 UTC +--- chrome/common/chrome_features.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/common/chrome_features.cc @@ -81,7 +81,7 @@ BASE_FEATURE(kUseAdHocSigningForWebAppShims, #endif // BUILDFLAG(IS_MAC) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Enables or disables the Autofill survey triggered by opening a prompt to // save address info. BASE_FEATURE(kAutofillAddressSurvey, @@ -99,7 +99,7 @@ BASE_FEATURE(kAutofillPasswordSurvey, base::FEATURE_DISABLED_BY_DEFAULT); #endif -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Enables the Restart background mode optimization. When all Chrome UI is // closed and it goes in the background, allows to restart the browser to // discard memory. -@@ -249,7 +249,7 @@ BASE_FEATURE(kDesktopPWAsElidedExtensionsMenu, +@@ -241,7 +241,7 @@ BASE_FEATURE(kDesktopPWAsElidedExtensionsMenu, BASE_FEATURE(kDesktopPWAsRunOnOsLogin, "DesktopPWAsRunOnOsLogin", #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) base::FEATURE_ENABLED_BY_DEFAULT #else base::FEATURE_DISABLED_BY_DEFAULT -@@ -282,7 +282,7 @@ BASE_FEATURE(kDisplayEdgeToEdgeFullscreen, +@@ -281,7 +281,7 @@ BASE_FEATURE(kEnableExclusiveAccessManager, base::FEATURE_DISABLED_BY_DEFAULT); #endif -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Controls whether Chrome Apps are supported. See https://crbug.com/1221251. // If the feature is disabled, Chrome Apps continue to work. If enabled, Chrome // Apps will not launch and will be marked in the UI as deprecated. -@@ -995,7 +995,7 @@ BASE_FEATURE(kKAnonymityServiceStorage, +@@ -1081,7 +1081,7 @@ BASE_FEATURE(kKAnonymityServiceStorage, "KAnonymityServiceStorage", base::FEATURE_ENABLED_BY_DEFAULT); -#if BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CHROMEOS) +#if (BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CHROMEOS)) || BUILDFLAG(IS_BSD) BASE_FEATURE(kLinuxLowMemoryMonitor, "LinuxLowMemoryMonitor", base::FEATURE_DISABLED_BY_DEFAULT); -@@ -1008,7 +1008,7 @@ constexpr base::FeatureParam kLinuxLowMemoryMonit +@@ -1094,7 +1094,7 @@ constexpr base::FeatureParam kLinuxLowMemoryMonit &kLinuxLowMemoryMonitor, "critical_level", 255}; #endif // BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CHROMEOS) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) BASE_FEATURE(kListWebAppsSwitch, "ListWebAppsSwitch", base::FEATURE_DISABLED_BY_DEFAULT); diff --git a/www/chromium/files/patch-chrome_common_chrome__features.h b/www/chromium/files/patch-chrome_common_chrome__features.h index d3a02a97ac4a..1188c0b5f864 100644 --- a/www/chromium/files/patch-chrome_common_chrome__features.h +++ b/www/chromium/files/patch-chrome_common_chrome__features.h @@ -1,45 +1,45 @@ ---- chrome/common/chrome_features.h.orig 2025-07-02 06:08:04 UTC +--- chrome/common/chrome_features.h.orig 2025-08-07 06:57:29 UTC +++ chrome/common/chrome_features.h @@ -50,13 +50,13 @@ BASE_DECLARE_FEATURE(kUseAdHocSigningForWebAppShims); #endif // BUILDFLAG(IS_MAC) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) COMPONENT_EXPORT(CHROME_FEATURES) BASE_DECLARE_FEATURE(kAutofillAddressSurvey); COMPONENT_EXPORT(CHROME_FEATURES) BASE_DECLARE_FEATURE(kAutofillCardSurvey); COMPONENT_EXPORT(CHROME_FEATURES) BASE_DECLARE_FEATURE(kAutofillPasswordSurvey); #endif -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) COMPONENT_EXPORT(CHROME_FEATURES) BASE_DECLARE_FEATURE(kBackgroundModeAllowRestart); #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -@@ -150,7 +150,7 @@ BASE_DECLARE_FEATURE(kDesktopPWAsPreventClose); +@@ -146,7 +146,7 @@ BASE_DECLARE_FEATURE(kDesktopPWAsPreventClose); COMPONENT_EXPORT(CHROME_FEATURES) BASE_DECLARE_FEATURE(kDesktopPWAsTabStripSettings); -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) COMPONENT_EXPORT(CHROME_FEATURES) BASE_DECLARE_FEATURE(kChromeAppsDeprecation); COMPONENT_EXPORT(CHROME_FEATURES) BASE_DECLARE_FEATURE(kShortcutsNotApps); -@@ -578,7 +578,7 @@ BASE_DECLARE_FEATURE(kKAnonymityServiceOHTTPRequests); +@@ -634,7 +634,7 @@ BASE_DECLARE_FEATURE(kKAnonymityServiceOHTTPRequests); COMPONENT_EXPORT(CHROME_FEATURES) BASE_DECLARE_FEATURE(kKAnonymityServiceStorage); -#if BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CHROMEOS) +#if (BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CHROMEOS)) || BUILDFLAG(IS_BSD) COMPONENT_EXPORT(CHROME_FEATURES) BASE_DECLARE_FEATURE(kLinuxLowMemoryMonitor); COMPONENT_EXPORT(CHROME_FEATURES) extern const base::FeatureParam kLinuxLowMemoryMonitorModerateLevel; -@@ -586,7 +586,7 @@ COMPONENT_EXPORT(CHROME_FEATURES) +@@ -642,7 +642,7 @@ COMPONENT_EXPORT(CHROME_FEATURES) extern const base::FeatureParam kLinuxLowMemoryMonitorCriticalLevel; #endif // BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CHROMEOS) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) COMPONENT_EXPORT(CHROME_FEATURES) BASE_DECLARE_FEATURE(kListWebAppsSwitch); #endif diff --git a/www/chromium/files/patch-chrome_common_chrome__paths.cc b/www/chromium/files/patch-chrome_common_chrome__paths.cc index a26f97e94a41..80947244bcc0 100644 --- a/www/chromium/files/patch-chrome_common_chrome__paths.cc +++ b/www/chromium/files/patch-chrome_common_chrome__paths.cc @@ -1,82 +1,82 @@ ---- chrome/common/chrome_paths.cc.orig 2025-05-05 10:57:53 UTC +--- chrome/common/chrome_paths.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/common/chrome_paths.cc @@ -32,7 +32,7 @@ #include "base/apple/foundation_util.h" #endif -#if BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_MAC) && !BUILDFLAG(IS_OPENBSD) +#if BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_MAC) #include "components/policy/core/common/policy_paths.h" #endif @@ -48,14 +48,14 @@ namespace { std::optional g_override_using_default_data_directory_for_testing; -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // The path to the external extension .json files. // /usr/share seems like a good choice, see: http://www.pathname.com/fhs/ const base::FilePath::CharType kFilepathSinglePrefExtensions[] = #if BUILDFLAG(GOOGLE_CHROME_BRANDING) - FILE_PATH_LITERAL("/usr/share/google-chrome/extensions"); + FILE_PATH_LITERAL("/usr/local/share/chromium/extensions"); #else - FILE_PATH_LITERAL("/usr/share/chromium/extensions"); + FILE_PATH_LITERAL("/usr/local/share/chromium/extensions"); #endif // BUILDFLAG(GOOGLE_CHROME_BRANDING) #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) @@ -212,7 +212,7 @@ bool PathProvider(int key, base::FilePath* result) { } break; case chrome::DIR_DEFAULT_DOWNLOADS_SAFE: -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) if (!GetUserDownloadsDirectorySafe(&cur)) { return false; } @@ -504,13 +504,13 @@ bool PathProvider(int key, base::FilePath* result) { break; } #endif -#if BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_MAC) && !BUILDFLAG(IS_OPENBSD) +#if BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_MAC) case chrome::DIR_POLICY_FILES: { cur = base::FilePath(policy::kPolicyPath); break; } #endif -#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || \ +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) || \ (BUILDFLAG(IS_LINUX) && BUILDFLAG(CHROMIUM_BRANDING)) case chrome::DIR_USER_EXTERNAL_EXTENSIONS: { if (!base::PathService::Get(chrome::DIR_USER_DATA, &cur)) { @@ -520,7 +520,7 @@ bool PathProvider(int key, base::FilePath* result) { break; } #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) case chrome::DIR_STANDALONE_EXTERNAL_EXTENSIONS: { cur = base::FilePath(kFilepathSinglePrefExtensions); break; -@@ -558,7 +558,7 @@ bool PathProvider(int key, base::FilePath* result) { - break; +@@ -559,7 +559,7 @@ bool PathProvider(int key, base::FilePath* result) { - #if BUILDFLAG(ENABLE_EXTENSIONS) && \ -- (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC)) -+ (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD)) + #if BUILDFLAG(ENABLE_EXTENSIONS_CORE) && \ + (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || \ +- BUILDFLAG(IS_ANDROID)) ++ BUILDFLAG(IS_ANDROID)) || BUILDFLAG(IS_BSD) case chrome::DIR_NATIVE_MESSAGING: #if BUILDFLAG(IS_MAC) #if BUILDFLAG(GOOGLE_CHROME_BRANDING) -@@ -572,6 +572,9 @@ bool PathProvider(int key, base::FilePath* result) { +@@ -573,6 +573,9 @@ bool PathProvider(int key, base::FilePath* result) { #if BUILDFLAG(GOOGLE_CHROME_BRANDING) cur = base::FilePath( FILE_PATH_LITERAL("/etc/opt/chrome/native-messaging-hosts")); +#elif BUILDFLAG(IS_FREEBSD) + cur = base::FilePath(FILE_PATH_LITERAL( + "/usr/local/etc/chromium/native-messaging-hosts")); #else cur = base::FilePath( FILE_PATH_LITERAL("/etc/chromium/native-messaging-hosts")); diff --git a/www/chromium/files/patch-chrome_common_chrome__paths.h b/www/chromium/files/patch-chrome_common_chrome__paths.h index 52b0f38757ed..de79a896dda9 100644 --- a/www/chromium/files/patch-chrome_common_chrome__paths.h +++ b/www/chromium/files/patch-chrome_common_chrome__paths.h @@ -1,29 +1,29 @@ ---- chrome/common/chrome_paths.h.orig 2025-04-04 08:52:13 UTC +--- chrome/common/chrome_paths.h.orig 2025-08-07 06:57:29 UTC +++ chrome/common/chrome_paths.h @@ -56,7 +56,7 @@ enum { // to set policies for chrome. This directory // contains subdirectories. #endif -#if BUILDFLAG(IS_CHROMEOS) || \ +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) || \ (BUILDFLAG(IS_LINUX) && BUILDFLAG(CHROMIUM_BRANDING)) || BUILDFLAG(IS_MAC) DIR_USER_EXTERNAL_EXTENSIONS, // Directory for per-user external extensions // on Chrome Mac and Chromium Linux. @@ -65,7 +65,7 @@ enum { // create it. #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) DIR_STANDALONE_EXTERNAL_EXTENSIONS, // Directory for 'per-extension' // definition manifest files that // describe extensions which are to be -@@ -112,7 +112,7 @@ enum { - +@@ -113,7 +113,7 @@ enum { #endif - #if BUILDFLAG(ENABLE_EXTENSIONS) && \ -- (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC)) -+ (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD)) + #if BUILDFLAG(ENABLE_EXTENSIONS_CORE) && \ + (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || \ +- BUILDFLAG(IS_ANDROID)) ++ BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD)) DIR_NATIVE_MESSAGING, // System directory where native messaging host // manifest files are stored. DIR_USER_NATIVE_MESSAGING, // Directory with Native Messaging Hosts diff --git a/www/chromium/files/patch-chrome_common_chrome__switches.cc b/www/chromium/files/patch-chrome_common_chrome__switches.cc index f34b78586fb6..2dc4cf39aa53 100644 --- a/www/chromium/files/patch-chrome_common_chrome__switches.cc +++ b/www/chromium/files/patch-chrome_common_chrome__switches.cc @@ -1,20 +1,20 @@ ---- chrome/common/chrome_switches.cc.orig 2025-07-02 06:08:04 UTC +--- chrome/common/chrome_switches.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/common/chrome_switches.cc -@@ -892,7 +892,7 @@ const char kAllowNaClSocketAPI[] = "allow-nacl-socket- +@@ -895,7 +895,7 @@ const char kAllowNaClSocketAPI[] = "allow-nacl-socket- #endif #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_WIN) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) const char kEnableNewAppMenuIcon[] = "enable-new-app-menu-icon"; // Causes the browser to launch directly in guest mode. -@@ -921,7 +921,7 @@ const char kGlicDev[] = "glic-dev"; +@@ -924,7 +924,7 @@ const char kGlicDev[] = "glic-dev"; const char kGlicHostLogging[] = "glic-host-logging"; #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) // Writes open and installed web apps for each profile to the specified file // without launching a new browser window or tab. Pass a absolute file path to // specify where to output the information. Can be used together with optional diff --git a/www/chromium/files/patch-chrome_common_chrome__switches.h b/www/chromium/files/patch-chrome_common_chrome__switches.h index bc899c2fadb7..62b38b29f62e 100644 --- a/www/chromium/files/patch-chrome_common_chrome__switches.h +++ b/www/chromium/files/patch-chrome_common_chrome__switches.h @@ -1,20 +1,20 @@ ---- chrome/common/chrome_switches.h.orig 2025-07-02 06:08:04 UTC +--- chrome/common/chrome_switches.h.orig 2025-08-07 06:57:29 UTC +++ chrome/common/chrome_switches.h -@@ -275,7 +275,7 @@ extern const char kAllowNaClSocketAPI[]; +@@ -276,7 +276,7 @@ extern const char kAllowNaClSocketAPI[]; #endif #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_WIN) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) extern const char kEnableNewAppMenuIcon[]; extern const char kGuest[]; extern const char kForceNtpMobilePromo[]; -@@ -293,7 +293,7 @@ extern const char kGlicDev[]; +@@ -294,7 +294,7 @@ extern const char kGlicDev[]; extern const char kGlicHostLogging[]; #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) extern const char kListApps[]; extern const char kProfileBaseName[]; extern const char kProfileManagementAttributes[]; diff --git a/www/chromium/files/patch-chrome_common_extensions_extension__constants.h b/www/chromium/files/patch-chrome_common_extensions_extension__constants.h index 89a9b4015664..27d4547063ae 100644 --- a/www/chromium/files/patch-chrome_common_extensions_extension__constants.h +++ b/www/chromium/files/patch-chrome_common_extensions_extension__constants.h @@ -1,11 +1,11 @@ ---- chrome/common/extensions/extension_constants.h.orig 2025-07-02 06:08:04 UTC +--- chrome/common/extensions/extension_constants.h.orig 2025-08-07 06:57:29 UTC +++ chrome/common/extensions/extension_constants.h -@@ -311,7 +311,7 @@ inline constexpr char kReadingModeGDocsHelperExtension +@@ -313,7 +313,7 @@ inline constexpr char kReadingModeGDocsHelperExtension inline constexpr base::FilePath::CharType kReadingModeGDocsHelperManifestFilename[] = FILE_PATH_LITERAL("reading_mode_gdocs_helper_manifest.json"); -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) // The extension id of the google tts engine extension to use on-device natural // Google voices. inline constexpr char kTTSEngineExtensionId[] = diff --git a/www/chromium/files/patch-chrome_common_media_cdm__host__file__path.cc b/www/chromium/files/patch-chrome_common_media_cdm__host__file__path.cc index fd67989842e5..f84dea1211b3 100644 --- a/www/chromium/files/patch-chrome_common_media_cdm__host__file__path.cc +++ b/www/chromium/files/patch-chrome_common_media_cdm__host__file__path.cc @@ -1,11 +1,11 @@ ---- chrome/common/media/cdm_host_file_path.cc.orig 2025-01-15 09:18:26 UTC +--- chrome/common/media/cdm_host_file_path.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/common/media/cdm_host_file_path.cc -@@ -90,7 +90,7 @@ void AddCdmHostFilePaths( +@@ -91,7 +91,7 @@ void AddCdmHostFilePaths( cdm_host_file_paths->emplace_back(chrome_framework_path, chrome_framework_sig_path); -#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) base::FilePath chrome_exe_dir; if (!base::PathService::Get(base::DIR_EXE, &chrome_exe_dir)) { diff --git a/www/chromium/files/patch-chrome_common_pref__names.h b/www/chromium/files/patch-chrome_common_pref__names.h index 13df9870ad50..0aed5cad617a 100644 --- a/www/chromium/files/patch-chrome_common_pref__names.h +++ b/www/chromium/files/patch-chrome_common_pref__names.h @@ -1,91 +1,91 @@ ---- chrome/common/pref_names.h.orig 2025-07-02 06:08:04 UTC +--- chrome/common/pref_names.h.orig 2025-08-07 06:57:29 UTC +++ chrome/common/pref_names.h @@ -1334,7 +1334,7 @@ inline constexpr char kGeminiSettings[] = "browser.gem inline constexpr char kAllowedDomainsForApps[] = "settings.allowed_domains_for_apps"; -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Linux specific preference on whether we should match the system theme. inline constexpr char kSystemTheme[] = "extensions.theme.system_theme"; #endif @@ -1504,7 +1504,7 @@ inline constexpr char kShowUpdatePromotionInfoBar[] = "browser.show_update_promotion_info_bar"; #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Boolean that is false if we should show window manager decorations. If // true, we draw a custom chrome frame (thicker title bar and blue border). inline constexpr char kUseCustomChromeFrame[] = "browser.custom_chrome_frame"; -@@ -2151,7 +2151,7 @@ inline constexpr char kDownloadDefaultDirectory[] = +@@ -2141,7 +2141,7 @@ inline constexpr char kDownloadDefaultDirectory[] = inline constexpr char kDownloadDirUpgraded[] = "download.directory_upgrade"; #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ - BUILDFLAG(IS_MAC) + BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) inline constexpr char kOpenPdfDownloadInSystemReader[] = "download.open_pdf_in_system_reader"; #endif -@@ -2654,14 +2654,14 @@ inline constexpr char kMediaStorageIdSalt[] = "media.s +@@ -2644,14 +2644,14 @@ inline constexpr char kMediaStorageIdSalt[] = "media.s inline constexpr char kMediaCdmOriginData[] = "media.cdm.origin_data"; #endif // BUILDFLAG(IS_WIN) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // A boolean pref to determine whether or not the network service is running // sandboxed. inline constexpr char kNetworkServiceSandboxEnabled[] = "net.network_service_sandbox"; #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Records whether the user has seen an HTTP auth "negotiate" header. inline constexpr char kReceivedHttpAuthNegotiateHeader[] = "net.received_http_auth_negotiate_headers"; -@@ -2753,7 +2753,7 @@ inline constexpr char kIsolatedWebAppInstallForceList[ +@@ -2743,7 +2743,7 @@ inline constexpr char kIsolatedWebAppInstallForceList[ inline constexpr char kIsolatedWebAppPendingInitializationCount[] = "profile.isolated_web_app.install.pending_initialization_count"; -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Boolean that specifies whether OK-AS-DELEGATE flag from KDC is respected // along with kAuthNegotiateDelegateAllowlist. inline constexpr char kAuthNegotiateDelegateByKdcPolicy[] = -@@ -3271,7 +3271,7 @@ inline constexpr char kKioskChromeAppsForceAllowed[] = +@@ -3266,7 +3266,7 @@ inline constexpr char kKioskApplicationLogCollectionEn #endif // BUILDFLAG(IS_CHROMEOS) #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || \ - BUILDFLAG(IS_ANDROID) + BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) // Defines administrator-set availability of Chrome for Testing. inline constexpr char kChromeForTestingAllowed[] = "chrome_for_testing.allowed"; #endif -@@ -3797,7 +3797,7 @@ inline constexpr char kScreenCaptureWithoutGestureAllo +@@ -3781,7 +3781,7 @@ inline constexpr char kScreenCaptureWithoutGestureAllo inline constexpr char kSandboxExternalProtocolBlocked[] = "profile.sandbox_external_protocol_blocked"; -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Boolean that indicates if system notifications are allowed to be used in // place of Chrome notifications. inline constexpr char kAllowSystemNotifications[] = -@@ -3995,7 +3995,7 @@ inline constexpr char kLensDesktopNTPSearchEnabled[] = +@@ -3979,7 +3979,7 @@ inline constexpr char kLensDesktopNTPSearchEnabled[] = "policy.lens_desktop_ntp_search_enabled"; #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) // A dict mapping the edition name with the major version it was shown. inline constexpr char kWhatsNewEditionUsed[] = "browser.whats_new.edition_used"; // A list containing the features of each module in order of when they -@@ -4092,7 +4092,7 @@ inline constexpr char kPrintingOAuth2AuthorizationServ +@@ -4076,7 +4076,7 @@ inline constexpr char kPrintingOAuth2AuthorizationServ "printing.oauth2_authorization_servers"; #endif -#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // If this exists and is true, Chrome may run system DNS resolution out of the // network process. If false, Chrome will run system DNS resolution in the // network process. If non-existent, Chrome will decide where to run system DNS diff --git a/www/chromium/files/patch-chrome_common_webui__url__constants.cc b/www/chromium/files/patch-chrome_common_webui__url__constants.cc index 505a9ed754d6..570f393aea4c 100644 --- a/www/chromium/files/patch-chrome_common_webui__url__constants.cc +++ b/www/chromium/files/patch-chrome_common_webui__url__constants.cc @@ -1,28 +1,28 @@ ---- chrome/common/webui_url_constants.cc.orig 2025-05-28 14:55:43 UTC +--- chrome/common/webui_url_constants.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/common/webui_url_constants.cc -@@ -193,21 +193,21 @@ base::span ChromeURLHosts() +@@ -194,21 +194,21 @@ base::span ChromeURLHosts() kChromeUIAssistantOptInHost, #endif #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) kChromeUIConnectorsInternalsHost, #endif #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_DESKTOP_ANDROID) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_DESKTOP_ANDROID) || BUILDFLAG(IS_BSD) kChromeUIDiscardsHost, #endif -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) kChromeUIWebAppSettingsHost, #endif #if BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_MAC) && !BUILDFLAG(IS_ANDROID) kChromeUILinuxProxyConfigHost, #endif #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ - BUILDFLAG(IS_ANDROID) + BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) kChromeUISandboxHost, #endif #if BUILDFLAG(IS_WIN) diff --git a/www/chromium/files/patch-chrome_common_webui__url__constants.h b/www/chromium/files/patch-chrome_common_webui__url__constants.h index a41e27245484..3f412f64083f 100644 --- a/www/chromium/files/patch-chrome_common_webui__url__constants.h +++ b/www/chromium/files/patch-chrome_common_webui__url__constants.h @@ -1,47 +1,47 @@ ---- chrome/common/webui_url_constants.h.orig 2025-07-02 06:08:04 UTC +--- chrome/common/webui_url_constants.h.orig 2025-08-07 06:57:29 UTC +++ chrome/common/webui_url_constants.h -@@ -540,18 +540,18 @@ inline constexpr char kChromeUIOsUrlAppURL[] = "chrome +@@ -541,18 +541,18 @@ inline constexpr char kChromeUIOsUrlAppURL[] = "chrome #endif // BUILDFLAG(IS_CHROMEOS) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) inline constexpr char kChromeUIConnectorsInternalsHost[] = "connectors-internals"; #endif #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_DESKTOP_ANDROID) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_DESKTOP_ANDROID) || BUILDFLAG(IS_BSD) inline constexpr char kChromeUIDiscardsHost[] = "discards"; inline constexpr char kChromeUIDiscardsURL[] = "chrome://discards/"; #endif -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) inline constexpr char kChromeUIWebAppSettingsHost[] = "app-settings"; inline constexpr char kChromeUIWebAppSettingsURL[] = "chrome://app-settings/"; inline constexpr char kChromeUIWhatsNewHost[] = "whats-new"; -@@ -563,11 +563,11 @@ inline constexpr char kChromeUILinuxProxyConfigHost[] +@@ -564,11 +564,11 @@ inline constexpr char kChromeUILinuxProxyConfigHost[] #endif #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ - BUILDFLAG(IS_ANDROID) + BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) inline constexpr char kChromeUISandboxHost[] = "sandbox"; #endif -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) inline constexpr char kChromeUIBrowserSwitchHost[] = "browser-switch"; inline constexpr char kChromeUIBrowserSwitchURL[] = "chrome://browser-switch/"; inline constexpr char kChromeUIIntroDefaultBrowserSubPage[] = "default-browser"; -@@ -592,7 +592,7 @@ inline constexpr char kChromeUIHistorySyncOptinURL[] = +@@ -593,7 +593,7 @@ inline constexpr char kChromeUIHistorySyncOptinURL[] = "chrome://history-sync-optin/"; #endif -#if ((BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)) && \ +#if ((BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD)) && \ defined(TOOLKIT_VIEWS)) || \ defined(USE_AURA) inline constexpr char kChromeUITabModalConfirmDialogHost[] = diff --git a/www/chromium/files/patch-chrome_services_printing_print__backend__service__impl.cc b/www/chromium/files/patch-chrome_services_printing_print__backend__service__impl.cc index 1934911d37a4..5202eb67163a 100644 --- a/www/chromium/files/patch-chrome_services_printing_print__backend__service__impl.cc +++ b/www/chromium/files/patch-chrome_services_printing_print__backend__service__impl.cc @@ -1,47 +1,47 @@ ---- chrome/services/printing/print_backend_service_impl.cc.orig 2025-07-02 06:08:04 UTC +--- chrome/services/printing/print_backend_service_impl.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/services/printing/print_backend_service_impl.cc @@ -48,7 +48,7 @@ #include "printing/backend/cups_connection_pool.h" #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "base/no_destructor.h" #include "ui/linux/linux_ui.h" #include "ui/linux/linux_ui_delegate_stub.h" @@ -75,7 +75,7 @@ namespace printing { namespace { -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) void InstantiateLinuxUiDelegate() { // TODO(crbug.com/40561724) Until a real UI can be used in a utility process, // need to use the stub version. @@ -84,7 +84,7 @@ void InstantiateLinuxUiDelegate() { #endif scoped_refptr GetPrintingTaskRunner() { -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Use task runner associated with equivalent of UI thread. Needed for calls // made through `PrintDialogLinuxInterface` to properly execute. CHECK(base::SequencedTaskRunner::HasCurrentDefault()); @@ -467,7 +467,7 @@ void PrintBackendServiceImpl::Init( // `InitCommon()`. InitializeProcessForPrinting(); print_backend_ = PrintBackend::CreateInstance(locale); -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Test framework already initializes the UI, so this should not go in // `InitCommon()`. Additionally, low-level Linux UI is not needed when tests // are using `TestPrintingContext`. -@@ -688,7 +688,7 @@ void PrintBackendServiceImpl::UpdatePrintSettings( +@@ -676,7 +676,7 @@ void PrintBackendServiceImpl::UpdatePrintSettings( crash_keys_ = std::make_unique( *printer_name, print_backend_->GetPrinterDriverInfo(*printer_name)); -#if BUILDFLAG(IS_LINUX) && BUILDFLAG(USE_CUPS) +#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && BUILDFLAG(USE_CUPS) // Try to fill in advanced settings based upon basic info options. PrinterBasicInfo basic_info; if (print_backend_->GetPrinterBasicInfo(*printer_name, &basic_info) == diff --git a/www/chromium/files/patch-chrome_test_chromedriver_chrome__launcher.cc b/www/chromium/files/patch-chrome_test_chromedriver_chrome__launcher.cc index a566027a861c..20ebe6548062 100644 --- a/www/chromium/files/patch-chrome_test_chromedriver_chrome__launcher.cc +++ b/www/chromium/files/patch-chrome_test_chromedriver_chrome__launcher.cc @@ -1,10 +1,10 @@ ---- chrome/test/chromedriver/chrome_launcher.cc.orig 2025-07-02 06:08:04 UTC +--- chrome/test/chromedriver/chrome_launcher.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/test/chromedriver/chrome_launcher.cc -@@ -74,6 +74,7 @@ +@@ -75,6 +75,7 @@ #include #include #include +#include #include #elif BUILDFLAG(IS_WIN) #include diff --git a/www/chromium/files/patch-chrome_updater_configurator.cc b/www/chromium/files/patch-chrome_updater_configurator.cc index 74b73c1460a4..66cc5755df7f 100644 --- a/www/chromium/files/patch-chrome_updater_configurator.cc +++ b/www/chromium/files/patch-chrome_updater_configurator.cc @@ -1,11 +1,11 @@ ---- chrome/updater/configurator.cc.orig 2025-07-02 06:08:04 UTC +--- chrome/updater/configurator.cc.orig 2025-08-07 06:57:29 UTC +++ chrome/updater/configurator.cc -@@ -91,7 +91,7 @@ Configurator::Configurator(scoped_refptr +@@ -105,7 +105,7 @@ Configurator::Configurator(scoped_refptr return std::nullopt; #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) }()) { -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // On Linux creating the NetworkFetcherFactory requires performing blocking IO // to load an external library. This should be done when the configurator is // created. diff --git a/www/chromium/files/patch-chromecast_browser_cast__content__browser__client.cc b/www/chromium/files/patch-chromecast_browser_cast__content__browser__client.cc index f736455c31eb..f272874f7b69 100644 --- a/www/chromium/files/patch-chromecast_browser_cast__content__browser__client.cc +++ b/www/chromium/files/patch-chromecast_browser_cast__content__browser__client.cc @@ -1,11 +1,11 @@ ---- chromecast/browser/cast_content_browser_client.cc.orig 2025-04-04 08:52:13 UTC +--- chromecast/browser/cast_content_browser_client.cc.orig 2025-08-07 06:57:29 UTC +++ chromecast/browser/cast_content_browser_client.cc -@@ -434,7 +434,7 @@ void CastContentBrowserClient::AppendExtraCommandLineS +@@ -433,7 +433,7 @@ void CastContentBrowserClient::AppendExtraCommandLineS switches::kAudioOutputChannels)); } } else if (process_type == switches::kGpuProcess) { -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Necessary for accelerated 2d canvas. By default on Linux, Chromium // assumes GLES2 contexts can be lost to a power-save mode, which breaks GPU // canvas apps. diff --git a/www/chromium/files/patch-components_BUILD.gn b/www/chromium/files/patch-components_BUILD.gn index 2b277a5e2219..1ff16a894532 100644 --- a/www/chromium/files/patch-components_BUILD.gn +++ b/www/chromium/files/patch-components_BUILD.gn @@ -1,28 +1,28 @@ ---- components/BUILD.gn.orig 2025-07-02 06:08:04 UTC +--- components/BUILD.gn.orig 2025-08-07 06:57:29 UTC +++ components/BUILD.gn -@@ -211,7 +211,6 @@ test("components_unittests") { +@@ -214,7 +214,6 @@ test("components_unittests") { "//components/content_settings/core/browser:unit_tests", "//components/content_settings/core/common:unit_tests", "//components/country_codes:unit_tests", - "//components/crash/core/common:unit_tests", "//components/cross_device/logging:unit_tests", "//components/crx_file:unit_tests", "//components/data_sharing:unit_tests", -@@ -616,7 +615,7 @@ test("components_unittests") { +@@ -623,7 +622,7 @@ test("components_unittests") { deps += [ "//components/cast:unit_tests" ] } - if (!is_fuchsia) { #!iOS and!Fuchsia + if (!is_fuchsia && !is_bsd) { #!iOS and!Fuchsia deps += [ "//components/crash/content/browser:unit_tests", "//components/crash/core/app:unit_tests", -@@ -780,7 +779,7 @@ test("components_unittests") { +@@ -784,7 +783,7 @@ test("components_unittests") { deps += [ "//components/constrained_window:unit_tests" ] } - if (is_win || is_linux || is_chromeos || is_mac) { + if (is_win || (is_linux && !is_bsd) || is_chromeos || is_mac) { deps += [ "//components/stability_report:unit_tests" ] } diff --git a/www/chromium/files/patch-components_autofill_core_browser_data__manager_payments_payments__data__manager.cc b/www/chromium/files/patch-components_autofill_core_browser_data__manager_payments_payments__data__manager.cc index e60d357bd42a..5bf04ab18043 100644 --- a/www/chromium/files/patch-components_autofill_core_browser_data__manager_payments_payments__data__manager.cc +++ b/www/chromium/files/patch-components_autofill_core_browser_data__manager_payments_payments__data__manager.cc @@ -1,47 +1,47 @@ ---- components/autofill/core/browser/data_manager/payments/payments_data_manager.cc.orig 2025-07-02 06:08:04 UTC +--- components/autofill/core/browser/data_manager/payments/payments_data_manager.cc.orig 2025-08-07 06:57:29 UTC +++ components/autofill/core/browser/data_manager/payments/payments_data_manager.cc @@ -472,7 +472,7 @@ void PaymentsDataManager::OnWebDataServiceRequestDone( bool PaymentsDataManager::ShouldShowBnplSettings() const { #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Check `kAutofillEnableBuyNowPayLater` only if the user has seen a BNPL // suggestion before, or there are already linked issuers present, to avoid // unnecessary feature flag checks. The linked issuer check is due to the fact -@@ -983,7 +983,7 @@ void PaymentsDataManager::SetPrefService(PrefService* +@@ -1001,7 +1001,7 @@ void PaymentsDataManager::SetPrefService(PrefService* &PaymentsDataManager::OnAutofillPaymentsCardBenefitsPrefChange, base::Unretained(this))); #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) pref_registrar_.Add( prefs::kAutofillBnplEnabled, base::BindRepeating(&PaymentsDataManager::OnBnplEnabledPrefChange, -@@ -1067,7 +1067,7 @@ void PaymentsDataManager::SetAutofillHasSeenIban() { +@@ -1075,7 +1075,7 @@ void PaymentsDataManager::SetAutofillHasSeenIban() { } #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) bool PaymentsDataManager::IsAutofillHasSeenBnplPrefEnabled() const { return prefs::HasSeenBnpl(pref_service_); } -@@ -2060,7 +2060,7 @@ bool PaymentsDataManager::AreEwalletAccountsSupported( +@@ -2078,7 +2078,7 @@ bool PaymentsDataManager::AreEwalletAccountsSupported( bool PaymentsDataManager::AreBnplIssuersSupported() const { #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) return app_locale_ == "en-US" && GetCountryCodeForExperimentGroup() == "US" && base::FeatureList::IsEnabled( features::kAutofillEnableBuyNowPayLaterSyncing); -@@ -2093,7 +2093,7 @@ void PaymentsDataManager::ClearAllCreditCardBenefits() +@@ -2111,7 +2111,7 @@ void PaymentsDataManager::ClearAllCreditCardBenefits() } #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) void PaymentsDataManager::OnBnplEnabledPrefChange() { // On pref change to `false`, clearing BNPL issuers is implicitly handled by // `GetBnplIssuers()`, since it returns an empty vector when diff --git a/www/chromium/files/patch-components_autofill_core_browser_data__manager_payments_payments__data__manager.h b/www/chromium/files/patch-components_autofill_core_browser_data__manager_payments_payments__data__manager.h index 39bd47289926..fdadd7a49e90 100644 --- a/www/chromium/files/patch-components_autofill_core_browser_data__manager_payments_payments__data__manager.h +++ b/www/chromium/files/patch-components_autofill_core_browser_data__manager_payments_payments__data__manager.h @@ -1,20 +1,20 @@ ---- components/autofill/core/browser/data_manager/payments/payments_data_manager.h.orig 2025-07-02 06:08:04 UTC +--- components/autofill/core/browser/data_manager/payments/payments_data_manager.h.orig 2025-08-07 06:57:29 UTC +++ components/autofill/core/browser/data_manager/payments/payments_data_manager.h -@@ -365,7 +365,7 @@ class PaymentsDataManager : public AutofillWebDataServ +@@ -370,7 +370,7 @@ class PaymentsDataManager : public AutofillWebDataServ void SetAutofillHasSeenIban(); #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Returns the value of the kAutofillHasSeenBnpl pref. bool IsAutofillHasSeenBnplPrefEnabled() const; -@@ -685,7 +685,7 @@ class PaymentsDataManager : public AutofillWebDataServ +@@ -693,7 +693,7 @@ class PaymentsDataManager : public AutofillWebDataServ void ClearAllCreditCardBenefits(); #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Monitors the `kAutofillBnplEnabled` preference for changes and controls the // clearing/loading of payment instruments accordingly. Will also log the // `Autofill.SettingsPage.BnplToggled` metric. diff --git a/www/chromium/files/patch-components_autofill_core_browser_foundations_browser__autofill__manager.cc b/www/chromium/files/patch-components_autofill_core_browser_foundations_browser__autofill__manager.cc index f63dc61e3a3c..5e0e49ce8924 100644 --- a/www/chromium/files/patch-components_autofill_core_browser_foundations_browser__autofill__manager.cc +++ b/www/chromium/files/patch-components_autofill_core_browser_foundations_browser__autofill__manager.cc @@ -1,11 +1,11 @@ ---- components/autofill/core/browser/foundations/browser_autofill_manager.cc.orig 2025-07-02 06:08:04 UTC +--- components/autofill/core/browser/foundations/browser_autofill_manager.cc.orig 2025-08-07 06:57:29 UTC +++ components/autofill/core/browser/foundations/browser_autofill_manager.cc -@@ -740,7 +740,7 @@ BrowserAutofillManager::GetCreditCardAccessManager() c +@@ -746,7 +746,7 @@ BrowserAutofillManager::GetCreditCardAccessManager() c payments::BnplManager* BrowserAutofillManager::GetPaymentsBnplManager() { #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) if (!bnpl_manager_) { bnpl_manager_ = std::make_unique(this); } diff --git a/www/chromium/files/patch-components_autofill_core_browser_integrators_optimization__guide_autofill__optimization__guide.cc b/www/chromium/files/patch-components_autofill_core_browser_integrators_optimization__guide_autofill__optimization__guide.cc index 947f4d1dedd7..5348943c31f2 100644 --- a/www/chromium/files/patch-components_autofill_core_browser_integrators_optimization__guide_autofill__optimization__guide.cc +++ b/www/chromium/files/patch-components_autofill_core_browser_integrators_optimization__guide_autofill__optimization__guide.cc @@ -1,11 +1,11 @@ ---- components/autofill/core/browser/integrators/optimization_guide/autofill_optimization_guide.cc.orig 2025-05-28 14:55:43 UTC +--- components/autofill/core/browser/integrators/optimization_guide/autofill_optimization_guide.cc.orig 2025-08-07 06:57:29 UTC +++ components/autofill/core/browser/integrators/optimization_guide/autofill_optimization_guide.cc -@@ -232,7 +232,7 @@ void AutofillOptimizationGuide::OnDidParseForm( +@@ -231,7 +231,7 @@ void AutofillOptimizationGuide::OnDidParseForm( } #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) auto bnpl_issuer_allowlist_can_be_loaded = [&payments_data_manager](BnplIssuer::IssuerId issuer_id) { return base::Contains(payments_data_manager.GetBnplIssuers(), issuer_id, diff --git a/www/chromium/files/patch-components_autofill_core_browser_payments_amount__extraction__manager.cc b/www/chromium/files/patch-components_autofill_core_browser_payments_amount__extraction__manager.cc index 5246dc8a8727..9915b307844d 100644 --- a/www/chromium/files/patch-components_autofill_core_browser_payments_amount__extraction__manager.cc +++ b/www/chromium/files/patch-components_autofill_core_browser_payments_amount__extraction__manager.cc @@ -1,38 +1,29 @@ ---- components/autofill/core/browser/payments/amount_extraction_manager.cc.orig 2025-07-02 06:08:04 UTC +--- components/autofill/core/browser/payments/amount_extraction_manager.cc.orig 2025-08-07 06:57:29 UTC +++ components/autofill/core/browser/payments/amount_extraction_manager.cc -@@ -109,7 +109,7 @@ AmountExtractionManager::GetEligibleFeatures(const Sug - } - - if constexpr (BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || -- BUILDFLAG(IS_CHROMEOS)) { -+ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD)) { - if (base::FeatureList::IsEnabled( - ::autofill::features:: - kAutofillEnableAmountExtractionDesktopLogging)) { -@@ -188,7 +188,7 @@ void AmountExtractionManager::OnCheckoutAmountReceived +@@ -177,7 +177,7 @@ void AmountExtractionManager::OnCheckoutAmountReceived bnpl_manager->OnAmountExtractionReturned(parsed_extracted_amount); } if constexpr (BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || -- BUILDFLAG(IS_CHROMEOS)) { -+ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD)) { +- BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID)) { ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD)) { if (base::FeatureList::IsEnabled( - ::autofill::features:: - kAutofillEnableAmountExtractionDesktopLogging)) { -@@ -212,7 +212,7 @@ void AmountExtractionManager::OnTimeoutReached() { + ::autofill::features::kAutofillEnableAmountExtractionTesting)) { + VLOG(3) << "The result of amount extraction on domain " +@@ -200,7 +200,7 @@ void AmountExtractionManager::OnTimeoutReached() { autofill_metrics::AmountExtractionResult::kTimeout); // TODO(crbug.com/378517983): Add BNPL flow action logic here. if constexpr (BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || -- BUILDFLAG(IS_CHROMEOS)) { -+ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD)) { +- BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID)) { ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD)) { if (base::FeatureList::IsEnabled( - ::autofill::features:: - kAutofillEnableAmountExtractionDesktopLogging)) { -@@ -232,7 +232,7 @@ AmountExtractionManager::CheckEligiblilityForFeaturesR + ::autofill::features::kAutofillEnableAmountExtractionTesting)) { + VLOG(3) << "The amount extraction on domain " +@@ -219,7 +219,7 @@ AmountExtractionManager::CheckEligibilityForFeaturesRe // Check eligibility of BNPL feature. // Currently, BNPL is only offered for desktop platforms. if constexpr (BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || - BUILDFLAG(IS_CHROMEOS)) { + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD)) { if (BnplManager* bnpl_manager = autofill_manager_->GetPaymentsBnplManager(); bnpl_manager && bnpl_manager->IsEligibleForBnpl()) { eligible_features.insert(EligibleFeature::kBnpl); diff --git a/www/chromium/files/patch-components_autofill_core_browser_payments_bnpl__manager.cc b/www/chromium/files/patch-components_autofill_core_browser_payments_bnpl__manager.cc index cf9b5a65ab0a..4dbdd1937824 100644 --- a/www/chromium/files/patch-components_autofill_core_browser_payments_bnpl__manager.cc +++ b/www/chromium/files/patch-components_autofill_core_browser_payments_bnpl__manager.cc @@ -1,11 +1,11 @@ ---- components/autofill/core/browser/payments/bnpl_manager.cc.orig 2025-05-28 14:55:43 UTC +--- components/autofill/core/browser/payments/bnpl_manager.cc.orig 2025-08-07 06:57:29 UTC +++ components/autofill/core/browser/payments/bnpl_manager.cc -@@ -466,7 +466,7 @@ void BnplManager::MaybeUpdateSuggestionsWithBnpl( +@@ -467,7 +467,7 @@ void BnplManager::MaybeUpdateSuggestionsWithBnpl( .OnBnplSuggestionShown(); #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) payments_autofill_client().GetPaymentsDataManager().SetAutofillHasSeenBnpl(); #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || // BUILDFLAG(IS_CHROMEOS) diff --git a/www/chromium/files/patch-components_autofill_core_browser_webdata_payments_payments__sync__bridge__util.cc b/www/chromium/files/patch-components_autofill_core_browser_webdata_payments_payments__sync__bridge__util.cc index 8310a08bf8b7..257fcdf99a59 100644 --- a/www/chromium/files/patch-components_autofill_core_browser_webdata_payments_payments__sync__bridge__util.cc +++ b/www/chromium/files/patch-components_autofill_core_browser_webdata_payments_payments__sync__bridge__util.cc @@ -1,11 +1,11 @@ ---- components/autofill/core/browser/webdata/payments/payments_sync_bridge_util.cc.orig 2025-07-02 06:08:04 UTC +--- components/autofill/core/browser/webdata/payments/payments_sync_bridge_util.cc.orig 2025-08-07 06:57:29 UTC +++ components/autofill/core/browser/webdata/payments/payments_sync_bridge_util.cc -@@ -1261,7 +1261,7 @@ bool AreMaskedBankAccountSupported() { +@@ -1262,7 +1262,7 @@ bool AreMaskedBankAccountSupported() { bool IsBnplIssuerSupported() { #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) return base::FeatureList::IsEnabled( features::kAutofillEnableBuyNowPayLaterSyncing); #else diff --git a/www/chromium/files/patch-components_autofill_core_common_autofill__payments__features.cc b/www/chromium/files/patch-components_autofill_core_common_autofill__payments__features.cc index 0c520495559d..af1ce2fb722e 100644 --- a/www/chromium/files/patch-components_autofill_core_common_autofill__payments__features.cc +++ b/www/chromium/files/patch-components_autofill_core_common_autofill__payments__features.cc @@ -1,11 +1,11 @@ ---- components/autofill/core/common/autofill_payments_features.cc.orig 2025-07-02 06:08:04 UTC +--- components/autofill/core/common/autofill_payments_features.cc.orig 2025-08-07 06:57:29 UTC +++ components/autofill/core/common/autofill_payments_features.cc -@@ -326,7 +326,7 @@ BASE_FEATURE(kAutofillSyncEwalletAccounts, - #endif // BUILDFLAG(IS_ANDROID) +@@ -365,7 +365,7 @@ BASE_FEATURE(kDisableAutofillStrikeSystem, + base::FEATURE_DISABLED_BY_DEFAULT); bool ShouldShowImprovedUserConsentForCreditCardSave() { -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // The new user consent UI is fully launched on MacOS, Windows and Linux. return true; #else diff --git a/www/chromium/files/patch-components_autofill_core_common_autofill__prefs.cc b/www/chromium/files/patch-components_autofill_core_common_autofill__prefs.cc index d22f8a1e7ba4..5828f3e62dad 100644 --- a/www/chromium/files/patch-components_autofill_core_common_autofill__prefs.cc +++ b/www/chromium/files/patch-components_autofill_core_common_autofill__prefs.cc @@ -1,38 +1,38 @@ ---- components/autofill/core/common/autofill_prefs.cc.orig 2025-07-02 06:08:04 UTC +--- components/autofill/core/common/autofill_prefs.cc.orig 2025-08-07 06:57:29 UTC +++ components/autofill/core/common/autofill_prefs.cc -@@ -101,7 +101,7 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySync +@@ -104,7 +104,7 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySync #endif #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) registry->RegisterBooleanPref( kAutofillBnplEnabled, true, user_prefs::PrefRegistrySyncable::SYNCABLE_PREF); -@@ -280,7 +280,7 @@ bool IsFacilitatedPaymentsEwalletEnabled(const PrefSer +@@ -298,7 +298,7 @@ bool IsFacilitatedPaymentsPixAccountLinkingEnabled(con } #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) void SetAutofillBnplEnabled(PrefService* prefs, bool value) { prefs->SetBoolean(kAutofillBnplEnabled, value); } -@@ -289,7 +289,7 @@ void SetAutofillBnplEnabled(PrefService* prefs, bool v +@@ -307,7 +307,7 @@ void SetAutofillBnplEnabled(PrefService* prefs, bool v bool IsAutofillBnplEnabled(const PrefService* prefs) { #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) return prefs->GetBoolean(kAutofillBnplEnabled); #else return false; -@@ -298,7 +298,7 @@ bool IsAutofillBnplEnabled(const PrefService* prefs) { +@@ -316,7 +316,7 @@ bool IsAutofillBnplEnabled(const PrefService* prefs) { } #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // If called, always sets the pref to true, and once true, it will follow the // user around forever. void SetAutofillHasSeenBnpl(PrefService* prefs) { diff --git a/www/chromium/files/patch-components_autofill_core_common_autofill__prefs.h b/www/chromium/files/patch-components_autofill_core_common_autofill__prefs.h index d179d2dcb9fb..acad2cc79fc2 100644 --- a/www/chromium/files/patch-components_autofill_core_common_autofill__prefs.h +++ b/www/chromium/files/patch-components_autofill_core_common_autofill__prefs.h @@ -1,29 +1,29 @@ ---- components/autofill/core/common/autofill_prefs.h.orig 2025-07-02 06:08:04 UTC +--- components/autofill/core/common/autofill_prefs.h.orig 2025-08-07 06:57:29 UTC +++ components/autofill/core/common/autofill_prefs.h @@ -32,7 +32,7 @@ inline constexpr std::string_view kAutofillAblationSee inline constexpr char kAutofillAiOptInStatus[] = "autofill.autofill_ai.opt_in_status"; #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Boolean that is true if BNPL on Autofill is enabled. inline constexpr char kAutofillBnplEnabled[] = "autofill.bnpl_enabled"; // Boolean that is true if the user has ever seen a BNPL suggestion. -@@ -220,7 +220,7 @@ void SetFacilitatedPaymentsEwallet(PrefService* prefs, - bool IsFacilitatedPaymentsEwalletEnabled(const PrefService* prefs); +@@ -226,7 +226,7 @@ void SetFacilitatedPaymentsPixAccountLinking(PrefServi + bool IsFacilitatedPaymentsPixAccountLinkingEnabled(const PrefService* prefs); #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) void SetAutofillBnplEnabled(PrefService* prefs, bool value); #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || // BUILDFLAG(IS_CHROMEOS) -@@ -228,7 +228,7 @@ void SetAutofillBnplEnabled(PrefService* prefs, bool v +@@ -234,7 +234,7 @@ void SetAutofillBnplEnabled(PrefService* prefs, bool v bool IsAutofillBnplEnabled(const PrefService* prefs); #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) void SetAutofillHasSeenBnpl(PrefService* prefs); bool HasSeenBnpl(const PrefService* prefs); diff --git a/www/chromium/files/patch-components_commerce_core_commerce__feature__list.cc b/www/chromium/files/patch-components_commerce_core_commerce__feature__list.cc index 71ddede40ea4..5343e85868fe 100644 --- a/www/chromium/files/patch-components_commerce_core_commerce__feature__list.cc +++ b/www/chromium/files/patch-components_commerce_core_commerce__feature__list.cc @@ -1,39 +1,39 @@ ---- components/commerce/core/commerce_feature_list.cc.orig 2025-07-02 06:08:04 UTC +--- components/commerce/core/commerce_feature_list.cc.orig 2025-08-07 06:57:29 UTC +++ components/commerce/core/commerce_feature_list.cc @@ -157,7 +157,8 @@ BASE_FEATURE(kPriceInsights, "PriceInsights", base::FEATURE_DISABLED_BY_DEFAULT); #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_IOS) || BUILDFLAG(IS_ANDROID) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_IOS) || BUILDFLAG(IS_ANDROID) || \ + BUILDFLAG(IS_BSD) BASE_FEATURE(kPriceInsightsRegionLaunched, "PriceInsightsRegionLaunched", base::FEATURE_ENABLED_BY_DEFAULT); -@@ -230,7 +231,7 @@ BASE_FEATURE(kEnableDiscountInfoApi, +@@ -235,7 +236,7 @@ BASE_FEATURE(kShoppingAlternateServer, const char kDiscountOnShoppyPageParam[] = "discount-on-shoppy-page"; #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) const base::FeatureParam kDiscountOnShoppyPage{ &kEnableDiscountInfoApi, kDiscountOnShoppyPageParam, true}; #else -@@ -239,7 +240,7 @@ const base::FeatureParam kDiscountOnShoppyPage{ +@@ -244,7 +245,7 @@ const base::FeatureParam kDiscountOnShoppyPage{ #endif #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) BASE_FEATURE(kEnableDiscountInfoApiRegionLaunched, "EnableDiscountInfoApiRegionLaunched", base::FEATURE_ENABLED_BY_DEFAULT); -@@ -254,7 +255,7 @@ const char kMerchantWideBehaviorParam[] = "merchant-wi +@@ -259,7 +260,7 @@ const char kMerchantWideBehaviorParam[] = "merchant-wi const char kNonMerchantWideBehaviorParam[] = "non-merchant-wide-behavior"; #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) BASE_FEATURE(kDiscountDialogAutoPopupBehaviorSetting, "DiscountDialogAutoPopupBehaviorSetting", base::FEATURE_ENABLED_BY_DEFAULT); diff --git a/www/chromium/files/patch-components_constrained__window_constrained__window__views.cc b/www/chromium/files/patch-components_constrained__window_constrained__window__views.cc index 28e32aa3ee58..bd3f9c4ce069 100644 --- a/www/chromium/files/patch-components_constrained__window_constrained__window__views.cc +++ b/www/chromium/files/patch-components_constrained__window_constrained__window__views.cc @@ -1,11 +1,11 @@ ---- components/constrained_window/constrained_window_views.cc.orig 2025-07-02 06:08:04 UTC +--- components/constrained_window/constrained_window_views.cc.orig 2025-08-07 06:57:29 UTC +++ components/constrained_window/constrained_window_views.cc -@@ -392,7 +392,7 @@ bool SupportsGlobalScreenCoordinates() { +@@ -380,7 +380,7 @@ bool SupportsGlobalScreenCoordinates() { } bool PlatformClipsChildrenToViewport() { -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) return true; #else return false; diff --git a/www/chromium/files/patch-components_device__signals_core_common_linux_platform__utils__linux.cc b/www/chromium/files/patch-components_device__signals_core_common_linux_platform__utils__linux.cc index 8a9d3dc9ea51..ac217e22428d 100644 --- a/www/chromium/files/patch-components_device__signals_core_common_linux_platform__utils__linux.cc +++ b/www/chromium/files/patch-components_device__signals_core_common_linux_platform__utils__linux.cc @@ -1,78 +1,78 @@ ---- components/device_signals/core/common/linux/platform_utils_linux.cc.orig 2025-05-28 14:55:43 UTC +--- components/device_signals/core/common/linux/platform_utils_linux.cc.orig 2025-08-07 06:57:29 UTC +++ components/device_signals/core/common/linux/platform_utils_linux.cc @@ -4,12 +4,23 @@ #include "components/device_signals/core/common/platform_utils.h" +#include "build/build_config.h" + #if defined(USE_GIO) #include #endif // defined(USE_GIO) #include +#if !BUILDFLAG(IS_BSD) #include +#endif +#if BUILDFLAG(IS_BSD) +#include +#include +#include +#include +#endif + #include #include #include -@@ -98,6 +109,7 @@ SettingValue GetScreenlockSecured() { +@@ -100,6 +111,7 @@ SettingValue GetScreenlockSecured() { // Implements the logic from the native host installation script. First find the // root device identifier, then locate its parent and get its type. SettingValue GetDiskEncrypted() { +#if !BUILDFLAG(IS_BSD) struct stat info; // First figure out the device identifier. Fail fast if this fails. if (stat("/", &info) != 0) { -@@ -120,11 +132,35 @@ SettingValue GetDiskEncrypted() { +@@ -122,11 +134,35 @@ SettingValue GetDiskEncrypted() { } return SettingValue::UNKNOWN; } +#endif return SettingValue::DISABLED; } std::vector GetMacAddresses() { std::vector result; +#if BUILDFLAG(IS_BSD) + struct ifaddrs* ifa = nullptr; + + if (getifaddrs(&ifa) != 0) + return result; + + struct ifaddrs* interface = ifa; + for (; interface != nullptr; interface = interface->ifa_next) { + if (interface->ifa_addr == nullptr || + interface->ifa_addr->sa_family != AF_LINK) { + continue; + } + struct sockaddr_dl* sdl = + reinterpret_cast(interface->ifa_addr); + if (!sdl || sdl->sdl_alen != 6) + continue; + char* link_address = static_cast(LLADDR(sdl)); + result.push_back(base::StringPrintf( + "%02x:%02x:%02x:%02x:%02x:%02x", link_address[0] & 0xff, + link_address[1] & 0xff, link_address[2] & 0xff, link_address[3] & 0xff, + link_address[4] & 0xff, link_address[5] & 0xff)); + } +#else base::DirReaderPosix reader("/sys/class/net"); if (!reader.IsValid()) { return result; -@@ -149,6 +185,7 @@ std::vector GetMacAddresses() { +@@ -151,6 +187,7 @@ std::vector GetMacAddresses() { &address); result.push_back(address); } +#endif return result; } diff --git a/www/chromium/files/patch-components_embedder__support_user__agent__utils.cc b/www/chromium/files/patch-components_embedder__support_user__agent__utils.cc index 6d5b1b90ad10..8e89efe8d771 100644 --- a/www/chromium/files/patch-components_embedder__support_user__agent__utils.cc +++ b/www/chromium/files/patch-components_embedder__support_user__agent__utils.cc @@ -1,56 +1,56 @@ ---- components/embedder_support/user_agent_utils.cc.orig 2025-05-28 14:55:43 UTC +--- components/embedder_support/user_agent_utils.cc.orig 2025-08-07 06:57:29 UTC +++ components/embedder_support/user_agent_utils.cc -@@ -318,7 +318,7 @@ std::string GetUserAgentPlatform() { +@@ -322,7 +322,7 @@ std::string GetUserAgentPlatform() { return ""; #elif BUILDFLAG(IS_MAC) return "Macintosh; "; -#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) return "X11; "; // strange, but that's what Firefox uses #elif BUILDFLAG(IS_ANDROID) return "Linux; "; -@@ -344,7 +344,7 @@ std::string GetUnifiedPlatform() { +@@ -348,7 +348,7 @@ std::string GetUnifiedPlatform() { return "Windows NT 10.0; Win64; x64"; #elif BUILDFLAG(IS_FUCHSIA) return "Fuchsia"; -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) return "X11; Linux x86_64"; #elif BUILDFLAG(IS_IOS) if (ui::GetDeviceFormFactor() == ui::DEVICE_FORM_FACTOR_TABLET) { -@@ -601,6 +601,9 @@ std::string GetPlatformForUAMetadata() { +@@ -605,6 +605,9 @@ std::string GetPlatformForUAMetadata() { #else return "Chromium OS"; #endif +#elif BUILDFLAG(IS_BSD) + // The internet is weird... + return "Linux"; #else return std::string(version_info::GetOSType()); #endif -@@ -660,7 +663,7 @@ blink::UserAgentMetadata GetUserAgentMetadata(const Pr +@@ -664,7 +667,7 @@ blink::UserAgentMetadata GetUserAgentMetadata(const Pr base::StringPrintf("%d.%d.%d", major, minor, bugfix); #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // TODO(crbug.com/40245146): Remove this Blink feature if (base::FeatureList::IsEnabled( blink::features::kReduceUserAgentDataLinuxPlatformVersion)) { -@@ -821,6 +824,16 @@ std::string BuildOSCpuInfoFromOSVersionAndCpuType(cons +@@ -827,6 +830,16 @@ std::string BuildOSCpuInfoFromOSVersionAndCpuType(cons "Android %s", os_version.c_str() #elif BUILDFLAG(IS_FUCHSIA) "Fuchsia" +#elif BUILDFLAG(IS_BSD) +#if defined(__x86_64__) + "Linux x86_64; %s %s", +#elif defined(__aarch64__) + "Linux aarch64; %s %s", +#else + "Linux i686; %s %s", +#endif + unixinfo.sysname, // e.g. Linux + cpu_type.c_str() // e.g. i686 #elif BUILDFLAG(IS_IOS) "CPU %s OS %s like Mac OS X", cpu_type.c_str(), os_version.c_str() diff --git a/www/chromium/files/patch-components_embedder__support_user__agent__utils__unittest.cc b/www/chromium/files/patch-components_embedder__support_user__agent__utils__unittest.cc index 8c8d17df3333..c1a01656aa07 100644 --- a/www/chromium/files/patch-components_embedder__support_user__agent__utils__unittest.cc +++ b/www/chromium/files/patch-components_embedder__support_user__agent__utils__unittest.cc @@ -1,29 +1,29 @@ ---- components/embedder_support/user_agent_utils_unittest.cc.orig 2025-05-28 14:55:43 UTC +--- components/embedder_support/user_agent_utils_unittest.cc.orig 2025-08-07 06:57:29 UTC +++ components/embedder_support/user_agent_utils_unittest.cc -@@ -148,7 +148,7 @@ void CheckUserAgentStringOrdering(bool mobile_device) +@@ -153,7 +153,7 @@ void CheckUserAgentStringOrdering(bool mobile_device) ASSERT_EQ("CrOS", pieces[0]); ASSERT_EQ("x86_64", pieces[1]); ASSERT_EQ("14541.0.0", pieces[2]); -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Post-UA Reduction there is a single value for Linux: // X11; Linux x86_64 ASSERT_EQ(2u, pieces.size()); -@@ -336,7 +336,7 @@ class UserAgentUtilsTest : public testing::Test, +@@ -341,7 +341,7 @@ class UserAgentUtilsTest : public testing::Test, "X11; CrOS x86_64 14541.0.0"; #elif BUILDFLAG(IS_FUCHSIA) "Fuchsia"; -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) "X11; Linux x86_64"; #elif BUILDFLAG(IS_MAC) "Macintosh; Intel Mac OS X 10_15_7"; -@@ -716,7 +716,7 @@ TEST_F(UserAgentUtilsTest, UserAgentMetadata) { +@@ -721,7 +721,7 @@ TEST_F(UserAgentUtilsTest, UserAgentMetadata) { #endif #elif BUILDFLAG(IS_ANDROID) EXPECT_EQ(metadata.platform, "Android"); -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) EXPECT_EQ(metadata.platform, "Linux"); #elif BUILDFLAG(IS_FREEBSD) EXPECT_EQ(metadata.platform, "FreeBSD"); diff --git a/www/chromium/files/patch-components_eye__dropper_eye__dropper__view.cc b/www/chromium/files/patch-components_eye__dropper_eye__dropper__view.cc index 3caf694fff16..979ae4ee6f10 100644 --- a/www/chromium/files/patch-components_eye__dropper_eye__dropper__view.cc +++ b/www/chromium/files/patch-components_eye__dropper_eye__dropper__view.cc @@ -1,11 +1,11 @@ ---- components/eye_dropper/eye_dropper_view.cc.orig 2025-05-28 14:55:43 UTC +--- components/eye_dropper/eye_dropper_view.cc.orig 2025-08-07 06:57:29 UTC +++ components/eye_dropper/eye_dropper_view.cc -@@ -206,7 +206,7 @@ EyeDropperView::EyeDropperView(gfx::NativeView parent, +@@ -215,7 +215,7 @@ EyeDropperView::EyeDropperView(gfx::NativeView parent, // EyeDropper/WidgetDelegate. set_owned_by_client(OwnedByClientPassKey()); SetPreferredSize(GetSize()); -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Use TYPE_MENU for Linux to ensure that the eye dropper view is displayed // above the color picker. views::Widget::InitParams params( diff --git a/www/chromium/files/patch-components_feature__engagement_public_feature__configurations.cc b/www/chromium/files/patch-components_feature__engagement_public_feature__configurations.cc index 3b623983a6d6..718e8c2614a5 100644 --- a/www/chromium/files/patch-components_feature__engagement_public_feature__configurations.cc +++ b/www/chromium/files/patch-components_feature__engagement_public_feature__configurations.cc @@ -1,30 +1,30 @@ ---- components/feature_engagement/public/feature_configurations.cc.orig 2025-07-02 06:08:04 UTC +--- components/feature_engagement/public/feature_configurations.cc.orig 2025-08-07 06:57:29 UTC +++ components/feature_engagement/public/feature_configurations.cc @@ -100,7 +100,7 @@ std::optional CreateNewUserGestureInPro std::optional GetClientSideFeatureConfig( const base::Feature* feature) { -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) // The IPH bubble for link capturing has a trigger set to ANY so that it // always shows up. The per app specific guardrails are independently stored @@ -119,7 +119,7 @@ std::optional GetClientSideFeatureConfi #endif // BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) if (kIPHPasswordsManagementBubbleAfterSaveFeature.name == feature->name) { FeatureConfig config; config.valid = true; -@@ -1885,7 +1885,8 @@ std::optional GetClientSideFeatureConfi +@@ -1924,7 +1924,8 @@ std::optional GetClientSideFeatureConfi #endif // BUILDFLAG(IS_ANDROID) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_FUCHSIA) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_FUCHSIA) || \ + BUILDFLAG(IS_BSD) if (kIPHAutofillCreditCardBenefitFeature.name == feature->name) { // The credit card benefit IPH appears up to three times over 10 years and diff --git a/www/chromium/files/patch-components_feature__engagement_public_feature__constants.cc b/www/chromium/files/patch-components_feature__engagement_public_feature__constants.cc index 357bf3681d78..8a2257203730 100644 --- a/www/chromium/files/patch-components_feature__engagement_public_feature__constants.cc +++ b/www/chromium/files/patch-components_feature__engagement_public_feature__constants.cc @@ -1,29 +1,29 @@ ---- components/feature_engagement/public/feature_constants.cc.orig 2025-07-02 06:08:04 UTC +--- components/feature_engagement/public/feature_constants.cc.orig 2025-08-07 06:57:29 UTC +++ components/feature_engagement/public/feature_constants.cc @@ -28,7 +28,7 @@ bool IsOnDeviceStorageEnabled() { } #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) #if BUILDFLAG(GOOGLE_CHROME_BRANDING) BASE_FEATURE(kEsbDownloadRowPromoFeature, "EsbDownloadRowPromo", -@@ -793,7 +793,7 @@ BASE_FEATURE(kDefaultBrowserTriggerCriteriaExperiment, +@@ -802,7 +802,7 @@ BASE_FEATURE(kDefaultBrowserTriggerCriteriaExperiment, #endif // BUILDFLAG(IS_IOS) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || \ +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) || \ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_FUCHSIA) BASE_FEATURE(kIPHAutofillBnplAffirmOrZipSuggestionFeature, "IPH_AutofillBnplAffirmOrZipSuggestion", -@@ -943,7 +943,7 @@ BASE_FEATURE(kIPHScalableIphGamingFeature, +@@ -958,7 +958,7 @@ BASE_FEATURE(kIPHScalableIphGamingFeature, base::FEATURE_DISABLED_BY_DEFAULT); #endif -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // This can be enabled by default, as the DesktopPWAsLinkCapturing // flag is needed for the IPH linked to this feature to work, and // use-cases to show the IPH are guarded by that flag. diff --git a/www/chromium/files/patch-components_feature__engagement_public_feature__constants.h b/www/chromium/files/patch-components_feature__engagement_public_feature__constants.h index 1722652f0e15..0c5e24565ace 100644 --- a/www/chromium/files/patch-components_feature__engagement_public_feature__constants.h +++ b/www/chromium/files/patch-components_feature__engagement_public_feature__constants.h @@ -1,29 +1,29 @@ ---- components/feature_engagement/public/feature_constants.h.orig 2025-07-02 06:08:04 UTC +--- components/feature_engagement/public/feature_constants.h.orig 2025-08-07 06:57:29 UTC +++ components/feature_engagement/public/feature_constants.h -@@ -30,7 +30,7 @@ FEATURE_CONSTANTS_DECLARE_FEATURE(kIPHDemoMode); +@@ -31,7 +31,7 @@ FEATURE_CONSTANTS_DECLARE_FEATURE(kIPHDemoMode); FEATURE_CONSTANTS_DECLARE_FEATURE(kIPHDummyFeature); #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) #if BUILDFLAG(GOOGLE_CHROME_BRANDING) FEATURE_CONSTANTS_DECLARE_FEATURE(kEsbDownloadRowPromoFeature); #endif -@@ -358,7 +358,7 @@ FEATURE_CONSTANTS_DECLARE_FEATURE(kDefaultBrowserTrigg +@@ -361,7 +361,7 @@ FEATURE_CONSTANTS_DECLARE_FEATURE(kDefaultBrowserTrigg #endif // BUILDFLAG(IS_IOS) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || \ +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) || \ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_FUCHSIA) FEATURE_CONSTANTS_DECLARE_FEATURE(kIPHAutofillBnplAffirmOrZipSuggestionFeature); FEATURE_CONSTANTS_DECLARE_FEATURE( -@@ -419,7 +419,7 @@ FEATURE_CONSTANTS_DECLARE_FEATURE(kIPHScalableIphHelpA +@@ -425,7 +425,7 @@ FEATURE_CONSTANTS_DECLARE_FEATURE(kIPHScalableIphHelpA FEATURE_CONSTANTS_DECLARE_FEATURE(kIPHScalableIphGamingFeature); #endif -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) FEATURE_CONSTANTS_DECLARE_FEATURE(kIPHDesktopPWAsLinkCapturingLaunch); FEATURE_CONSTANTS_DECLARE_FEATURE(kIPHDesktopPWAsLinkCapturingLaunchAppInTab); FEATURE_CONSTANTS_DECLARE_FEATURE(kIPHSupervisedUserProfileSigninFeature); diff --git a/www/chromium/files/patch-components_feature__engagement_public_feature__list.cc b/www/chromium/files/patch-components_feature__engagement_public_feature__list.cc index 7b3da6813e8e..df229613da9b 100644 --- a/www/chromium/files/patch-components_feature__engagement_public_feature__list.cc +++ b/www/chromium/files/patch-components_feature__engagement_public_feature__list.cc @@ -1,29 +1,29 @@ ---- components/feature_engagement/public/feature_list.cc.orig 2025-07-02 06:08:04 UTC +--- components/feature_engagement/public/feature_list.cc.orig 2025-08-07 06:57:29 UTC +++ components/feature_engagement/public/feature_list.cc -@@ -189,7 +189,7 @@ const base::Feature* const kAllFeatures[] = { - &kIPHIOSGLICPromoFeature, +@@ -193,7 +193,7 @@ const base::Feature* const kAllFeatures[] = { + &kIPHIOSPageActionMenu, #endif // BUILDFLAG(IS_IOS) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) #if BUILDFLAG(GOOGLE_CHROME_BRANDING) &kEsbDownloadRowPromoFeature, #endif -@@ -264,7 +264,7 @@ const base::Feature* const kAllFeatures[] = { +@@ -266,7 +266,7 @@ const base::Feature* const kAllFeatures[] = { #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || \ +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) || \ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_FUCHSIA) &kIPHAutofillAiOptInFeature, &kIPHAutofillBnplAffirmOrZipSuggestionFeature, -@@ -319,7 +319,7 @@ const base::Feature* const kAllFeatures[] = { +@@ -323,7 +323,7 @@ const base::Feature* const kAllFeatures[] = { &kIPHScalableIphGamingFeature, #endif // BUILDFLAG(IS_CHROMEOS) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) &kIPHDesktopPWAsLinkCapturingLaunch, &kIPHDesktopPWAsLinkCapturingLaunchAppInTab, &kIPHSupervisedUserProfileSigninFeature, diff --git a/www/chromium/files/patch-components_feature__engagement_public_feature__list.h b/www/chromium/files/patch-components_feature__engagement_public_feature__list.h index 8e3bc8cac25e..f5539fbbc9bb 100644 --- a/www/chromium/files/patch-components_feature__engagement_public_feature__list.h +++ b/www/chromium/files/patch-components_feature__engagement_public_feature__list.h @@ -1,58 +1,58 @@ ---- components/feature_engagement/public/feature_list.h.orig 2025-07-02 06:08:04 UTC +--- components/feature_engagement/public/feature_list.h.orig 2025-08-07 06:57:29 UTC +++ components/feature_engagement/public/feature_list.h -@@ -336,7 +336,7 @@ DEFINE_VARIATION_PARAM(kIPHIOSGLICPromoFeature, "IPH_I +@@ -342,7 +342,7 @@ DEFINE_VARIATION_PARAM(kIPHIOSPageActionMenu, "IPH_iOS #endif // BUILDFLAG(IS_IOS) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) #if BUILDFLAG(GOOGLE_CHROME_BRANDING) DEFINE_VARIATION_PARAM(kEsbDownloadRowPromoFeature, "EsbDownloadRowPromo"); #endif -@@ -458,7 +458,8 @@ DEFINE_VARIATION_PARAM(kIPHTabGroupsSharedTabFeedbackF +@@ -460,7 +460,8 @@ DEFINE_VARIATION_PARAM(kIPHTabGroupsSharedTabFeedbackF // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_FUCHSIA) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_FUCHSIA) || \ + BUILDFLAG(IS_BSD) DEFINE_VARIATION_PARAM(kIPHAutofillAiOptInFeature, "IPH_AutofillAiOptIn"); DEFINE_VARIATION_PARAM(kIPHAutofillBnplAffirmOrZipSuggestionFeature, "IPH_AutofillBnplAffirmOrZipSuggestion"); -@@ -554,7 +555,7 @@ DEFINE_VARIATION_PARAM(kIPHScalableIphHelpAppBasedTenF +@@ -560,7 +561,7 @@ DEFINE_VARIATION_PARAM(kIPHScalableIphHelpAppBasedTenF DEFINE_VARIATION_PARAM(kIPHScalableIphGamingFeature, "IPH_ScalableIphGaming"); #endif // BUILDFLAG(IS_CHROMEOS) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) DEFINE_VARIATION_PARAM(kIPHDesktopPWAsLinkCapturingLaunch, "IPH_DesktopPWAsLinkCapturingLaunch"); DEFINE_VARIATION_PARAM(kIPHDesktopPWAsLinkCapturingLaunchAppInTab, -@@ -742,7 +743,7 @@ inline constexpr flags_ui::FeatureEntry::FeatureVariat - VARIATION_ENTRY(kIPHiOSWelcomeBackFeature), - VARIATION_ENTRY(kIPHIOSGLICPromoFeature), +@@ -752,7 +753,7 @@ inline constexpr flags_ui::FeatureEntry::FeatureVariat + VARIATION_ENTRY(kIPHiOSSafariImportFeature), + VARIATION_ENTRY(kIPHIOSPageActionMenu), #elif BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) - VARIATION_ENTRY(kIPHAutofillEnableLoyaltyCardsFeature), VARIATION_ENTRY(kIPHBatterySaverModeFeature), VARIATION_ENTRY(kIPHCompanionSidePanelFeature), -@@ -804,7 +805,8 @@ inline constexpr flags_ui::FeatureEntry::FeatureVariat + VARIATION_ENTRY(kIPHCompanionSidePanelRegionSearchFeature), +@@ -812,7 +813,8 @@ inline constexpr flags_ui::FeatureEntry::FeatureVariat // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_FUCHSIA) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_FUCHSIA) || \ + BUILDFLAG(IS_BSD) VARIATION_ENTRY(kIPHAutofillAiOptInFeature), VARIATION_ENTRY(kIPHAutofillCreditCardBenefitFeature), VARIATION_ENTRY(kIPHAutofillCardInfoRetrievalSuggestionFeature), -@@ -857,7 +859,7 @@ inline constexpr flags_ui::FeatureEntry::FeatureVariat +@@ -866,7 +868,7 @@ inline constexpr flags_ui::FeatureEntry::FeatureVariat VARIATION_ENTRY(kIPHScalableIphGamingFeature), #endif // BUILDFLAG(IS_CHROMEOS) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) VARIATION_ENTRY(kIPHDesktopPWAsLinkCapturingLaunch), VARIATION_ENTRY(kIPHDesktopPWAsLinkCapturingLaunchAppInTab), VARIATION_ENTRY(kIPHSupervisedUserProfileSigninFeature), diff --git a/www/chromium/files/patch-components_feed_core_v2_feed__network__impl__unittest.cc b/www/chromium/files/patch-components_feed_core_v2_feed__network__impl__unittest.cc index 05d49cbe5e38..72c088bc837c 100644 --- a/www/chromium/files/patch-components_feed_core_v2_feed__network__impl__unittest.cc +++ b/www/chromium/files/patch-components_feed_core_v2_feed__network__impl__unittest.cc @@ -1,13 +1,13 @@ ---- components/feed/core/v2/feed_network_impl_unittest.cc.orig 2024-09-30 07:45:04 UTC +--- components/feed/core/v2/feed_network_impl_unittest.cc.orig 2025-08-07 06:57:29 UTC +++ components/feed/core/v2/feed_network_impl_unittest.cc -@@ -747,8 +747,8 @@ TEST_F(FeedNetworkTest, SendApiRequest_DecodesClientIn +@@ -746,8 +746,8 @@ TEST_F(FeedNetworkTest, SendApiRequest_DecodesClientIn EXPECT_EQ(feedwire::ClientInfo::CHROME_ANDROID, client_info.app_type()); EXPECT_EQ(feedwire::Version::RELEASE, client_info.app_version().build_type()); - EXPECT_EQ(1, client_info.app_version().major()); - EXPECT_EQ(2, client_info.app_version().minor()); + EXPECT_EQ(1, client_info.app_version().gmajor()); + EXPECT_EQ(2, client_info.app_version().gminor()); EXPECT_EQ(3, client_info.app_version().build()); EXPECT_EQ(4, client_info.app_version().revision()); EXPECT_FALSE(client_info.chrome_client_info().start_surface()); diff --git a/www/chromium/files/patch-components_gwp__asan_client_gwp__asan.cc b/www/chromium/files/patch-components_gwp__asan_client_gwp__asan.cc index e733ef46f884..063c8aef66f1 100644 --- a/www/chromium/files/patch-components_gwp__asan_client_gwp__asan.cc +++ b/www/chromium/files/patch-components_gwp__asan_client_gwp__asan.cc @@ -1,11 +1,11 @@ ---- components/gwp_asan/client/gwp_asan.cc.orig 2025-05-05 10:57:53 UTC +--- components/gwp_asan/client/gwp_asan.cc.orig 2025-08-07 06:57:29 UTC +++ components/gwp_asan/client/gwp_asan.cc -@@ -76,7 +76,7 @@ namespace { +@@ -81,7 +81,7 @@ namespace { // ProcessSamplingBoost is the multiplier to increase the // ProcessSamplingProbability in scenarios where we want to perform additional // testing (e.g., on canary/dev builds). -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) constexpr int kDefaultMaxAllocations = 50; constexpr int kDefaultMaxMetadata = 210; constexpr int kDefaultTotalPages = kCpuIs64Bit ? 2048 : kDefaultMaxMetadata * 2; diff --git a/www/chromium/files/patch-components_media__router_common_media__source.cc b/www/chromium/files/patch-components_media__router_common_media__source.cc index 62a615b35871..db829769475d 100644 --- a/www/chromium/files/patch-components_media__router_common_media__source.cc +++ b/www/chromium/files/patch-components_media__router_common_media__source.cc @@ -1,11 +1,11 @@ ---- components/media_router/common/media_source.cc.orig 2025-05-28 14:55:43 UTC +--- components/media_router/common/media_source.cc.orig 2025-08-07 06:57:29 UTC +++ components/media_router/common/media_source.cc -@@ -58,7 +58,7 @@ bool IsSystemAudioCaptureSupported() { +@@ -59,7 +59,7 @@ bool IsSystemAudioCaptureSupported() { if (!media::IsSystemLoopbackCaptureSupported()) { return false; } -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) return base::FeatureList::IsEnabled(media::kPulseaudioLoopbackForCast); #else return true; diff --git a/www/chromium/files/patch-components_metrics_metrics__log.cc b/www/chromium/files/patch-components_metrics_metrics__log.cc index b3c42657cd0b..2c02e92f0d2b 100644 --- a/www/chromium/files/patch-components_metrics_metrics__log.cc +++ b/www/chromium/files/patch-components_metrics_metrics__log.cc @@ -1,38 +1,38 @@ ---- components/metrics/metrics_log.cc.orig 2025-07-02 06:08:04 UTC +--- components/metrics/metrics_log.cc.orig 2025-08-07 06:57:29 UTC +++ components/metrics/metrics_log.cc @@ -58,7 +58,7 @@ #include "base/win/current_module.h" #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "base/environment.h" #include "base/nix/xdg_util.h" #endif @@ -154,7 +154,7 @@ void RecordCurrentTime( } } -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) metrics::SystemProfileProto::OS::XdgSessionType ToProtoSessionType( base::nix::SessionType session_type) { switch (session_type) { -@@ -437,7 +437,7 @@ void MetricsLog::RecordCoreSystemProfile( +@@ -439,7 +439,7 @@ void MetricsLog::RecordCoreSystemProfile( // OperatingSystemVersion refers to the ChromeOS release version. #if BUILDFLAG(IS_CHROMEOS) os->set_kernel_version(base::SysInfo::KernelVersion()); -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Linux operating system version is copied over into kernel version to be // consistent. os->set_kernel_version(base::SysInfo::OperatingSystemVersion()); -@@ -454,7 +454,7 @@ void MetricsLog::RecordCoreSystemProfile( +@@ -456,7 +456,7 @@ void MetricsLog::RecordCoreSystemProfile( os->set_build_number(base::SysInfo::GetIOSBuildNumber()); #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) std::unique_ptr env = base::Environment::Create(); os->set_xdg_session_type(ToProtoSessionType(base::nix::GetSessionType(*env))); os->set_xdg_current_desktop( diff --git a/www/chromium/files/patch-components_optimization__guide_core_optimization__guide__features.cc b/www/chromium/files/patch-components_optimization__guide_core_optimization__guide__features.cc index 08f09641c572..a66063097807 100644 --- a/www/chromium/files/patch-components_optimization__guide_core_optimization__guide__features.cc +++ b/www/chromium/files/patch-components_optimization__guide_core_optimization__guide__features.cc @@ -1,11 +1,11 @@ ---- components/optimization_guide/core/optimization_guide_features.cc.orig 2025-02-19 07:43:18 UTC +--- components/optimization_guide/core/optimization_guide_features.cc.orig 2025-08-07 06:57:29 UTC +++ components/optimization_guide/core/optimization_guide_features.cc -@@ -136,7 +136,7 @@ BASE_FEATURE(kOptimizationGuideModelExecution, +@@ -133,7 +133,7 @@ BASE_FEATURE(kOptimizationGuideModelExecution, // Whether to use the on device model service in optimization guide. BASE_FEATURE(kOptimizationGuideOnDeviceModel, "OptimizationGuideOnDeviceModel", -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) base::FEATURE_ENABLED_BY_DEFAULT); #else base::FEATURE_DISABLED_BY_DEFAULT); diff --git a/www/chromium/files/patch-components_os__crypt_sync_os__crypt.h b/www/chromium/files/patch-components_os__crypt_sync_os__crypt.h index b71296e7b06e..8789cff9b334 100644 --- a/www/chromium/files/patch-components_os__crypt_sync_os__crypt.h +++ b/www/chromium/files/patch-components_os__crypt_sync_os__crypt.h @@ -1,63 +1,63 @@ ---- components/os_crypt/sync/os_crypt.h.orig 2025-07-02 06:08:04 UTC +--- components/os_crypt/sync/os_crypt.h.orig 2025-08-07 06:57:29 UTC +++ components/os_crypt/sync/os_crypt.h -@@ -22,7 +22,7 @@ class AppleKeychain; +@@ -23,7 +23,7 @@ class AppleKeychain; } #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) class KeyStorageLinux; #endif // BUILDFLAG(IS_LINUX) -@@ -38,7 +38,7 @@ struct Config; +@@ -39,7 +39,7 @@ struct Config; // Temporary interface due to OSCrypt refactor. See OSCryptImpl for descriptions // of what each function does. namespace OSCrypt { -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) COMPONENT_EXPORT(OS_CRYPT) void SetConfig(std::unique_ptr config); #endif // BUILDFLAG(IS_LINUX) -@@ -83,7 +83,7 @@ COMPONENT_EXPORT(OS_CRYPT) void UseMockKeyForTesting(b +@@ -84,7 +84,7 @@ COMPONENT_EXPORT(OS_CRYPT) void UseMockKeyForTesting(b COMPONENT_EXPORT(OS_CRYPT) void SetLegacyEncryptionForTesting(bool legacy); COMPONENT_EXPORT(OS_CRYPT) void ResetStateForTesting(); #endif // BUILDFLAG(IS_WIN) -#if (BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CASTOS)) +#if (BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CASTOS)) || BUILDFLAG(IS_BSD) COMPONENT_EXPORT(OS_CRYPT) void UseMockKeyStorageForTesting( base::OnceCallback()> -@@ -117,7 +117,7 @@ class COMPONENT_EXPORT(OS_CRYPT) OSCryptImpl { +@@ -118,7 +118,7 @@ class COMPONENT_EXPORT(OS_CRYPT) OSCryptImpl { // Returns singleton instance of OSCryptImpl. static OSCryptImpl* GetInstance(); -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Set the configuration of OSCryptImpl. // This method, or SetRawEncryptionKey(), must be called before using // EncryptString() and DecryptString(). -@@ -213,7 +213,7 @@ class COMPONENT_EXPORT(OS_CRYPT) OSCryptImpl { +@@ -214,7 +214,7 @@ class COMPONENT_EXPORT(OS_CRYPT) OSCryptImpl { void ResetStateForTesting(); #endif -#if (BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CASTOS)) +#if (BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CASTOS)) || BUILDFLAG(IS_BSD) // For unit testing purposes, inject methods to be used. // |storage_provider_factory| provides the desired |KeyStorage| // implementation. If the provider returns |nullptr|, a hardcoded password -@@ -240,13 +240,13 @@ class COMPONENT_EXPORT(OS_CRYPT) OSCryptImpl { +@@ -241,13 +241,13 @@ class COMPONENT_EXPORT(OS_CRYPT) OSCryptImpl { bool DeriveKey(); #endif // BUILDFLAG(IS_APPLE) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_APPLE) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_BSD) // This lock is used to make the GetEncryptionKey and // GetRawEncryptionKey methods thread-safe. static base::Lock& GetLock(); #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_APPLE) -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) static constexpr size_t kDerivedKeyBytes = 16; crypto::SubtlePassKey MakeCryptoPassKey(); diff --git a/www/chromium/files/patch-components_password__manager_core_browser_features_password__features.cc b/www/chromium/files/patch-components_password__manager_core_browser_features_password__features.cc index 290372f263c1..e4b12166dbb9 100644 --- a/www/chromium/files/patch-components_password__manager_core_browser_features_password__features.cc +++ b/www/chromium/files/patch-components_password__manager_core_browser_features_password__features.cc @@ -1,20 +1,20 @@ ---- components/password_manager/core/browser/features/password_features.cc.orig 2025-07-02 06:08:04 UTC +--- components/password_manager/core/browser/features/password_features.cc.orig 2025-08-07 06:57:29 UTC +++ components/password_manager/core/browser/features/password_features.cc @@ -47,7 +47,7 @@ BASE_FEATURE(kClearUndecryptablePasswords, BASE_FEATURE(kClearUndecryptablePasswordsOnSync, "ClearUndecryptablePasswordsInSync", #if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_IOS) || \ - BUILDFLAG(IS_WIN) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) base::FEATURE_ENABLED_BY_DEFAULT #else base::FEATURE_DISABLED_BY_DEFAULT -@@ -120,7 +120,7 @@ BASE_FEATURE(kReuseDetectionBasedOnPasswordHashes, +@@ -124,7 +124,7 @@ BASE_FEATURE(kReuseDetectionBasedOnPasswordHashes, "ReuseDetectionBasedOnPasswordHashes", base::FEATURE_ENABLED_BY_DEFAULT); -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) BASE_FEATURE(kRestartToGainAccessToKeychain, "RestartToGainAccessToKeychain", #if BUILDFLAG(IS_MAC) diff --git a/www/chromium/files/patch-components_password__manager_core_browser_features_password__features.h b/www/chromium/files/patch-components_password__manager_core_browser_features_password__features.h index a47850fd900e..9bfdf2d8c128 100644 --- a/www/chromium/files/patch-components_password__manager_core_browser_features_password__features.h +++ b/www/chromium/files/patch-components_password__manager_core_browser_features_password__features.h @@ -1,11 +1,11 @@ ---- components/password_manager/core/browser/features/password_features.h.orig 2025-07-02 06:08:04 UTC +--- components/password_manager/core/browser/features/password_features.h.orig 2025-08-07 06:57:29 UTC +++ components/password_manager/core/browser/features/password_features.h -@@ -115,7 +115,7 @@ BASE_DECLARE_FEATURE(kPasswordManagerLogToTerminal); +@@ -118,7 +118,7 @@ BASE_DECLARE_FEATURE(kPasswordManagerLogToTerminal); // Detects password reuse based on hashed password values. BASE_DECLARE_FEATURE(kReuseDetectionBasedOnPasswordHashes); -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Enables "Needs access to keychain, restart chrome" bubble and banner. BASE_DECLARE_FEATURE(kRestartToGainAccessToKeychain); #endif // BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) diff --git a/www/chromium/files/patch-components_password__manager_core_browser_password__autofill__manager.cc b/www/chromium/files/patch-components_password__manager_core_browser_password__autofill__manager.cc new file mode 100644 index 000000000000..0058add31bcb --- /dev/null +++ b/www/chromium/files/patch-components_password__manager_core_browser_password__autofill__manager.cc @@ -0,0 +1,20 @@ +--- components/password_manager/core/browser/password_autofill_manager.cc.orig 2025-08-07 06:57:29 UTC ++++ components/password_manager/core/browser/password_autofill_manager.cc +@@ -288,7 +288,7 @@ void PasswordAutofillManager::DidAcceptSuggestion( + } + if (password_credential->is_grouped_affiliation) { + #if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_CHROMEOS) || \ +- BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID) ++ BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) + cross_domain_confirmation_controller_ = + password_client_->ShowCrossDomainConfirmationPopup( + last_popup_open_args_.element_bounds, +@@ -525,7 +525,7 @@ void PasswordAutofillManager::DidNavigateMainFrame() { + manual_fallback_metrics_recorder_ = + std::make_unique(); + #if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_CHROMEOS) || \ +- BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID) ++ BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) + cross_domain_confirmation_controller_.reset(); + #endif + wait_for_passkeys_timer_.Stop(); diff --git a/www/chromium/files/patch-components_password__manager_core_browser_password__autofill__manager.h b/www/chromium/files/patch-components_password__manager_core_browser_password__autofill__manager.h new file mode 100644 index 000000000000..ee1009f47c72 --- /dev/null +++ b/www/chromium/files/patch-components_password__manager_core_browser_password__autofill__manager.h @@ -0,0 +1,11 @@ +--- components/password_manager/core/browser/password_autofill_manager.h.orig 2025-08-07 06:57:29 UTC ++++ components/password_manager/core/browser/password_autofill_manager.h +@@ -267,7 +267,7 @@ class PasswordAutofillManager : public autofill::Autof + + // Stores the controller of warning popup UI on cross domain filling. + #if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_CHROMEOS) || \ +- BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID) ++ BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) + std::unique_ptr + cross_domain_confirmation_controller_; + #endif diff --git a/www/chromium/files/patch-components_password__manager_core_browser_password__form__manager.cc b/www/chromium/files/patch-components_password__manager_core_browser_password__form__manager.cc index 7d987e3f8dcd..0d2039dcf4a7 100644 --- a/www/chromium/files/patch-components_password__manager_core_browser_password__form__manager.cc +++ b/www/chromium/files/patch-components_password__manager_core_browser_password__form__manager.cc @@ -1,29 +1,29 @@ ---- components/password_manager/core/browser/password_form_manager.cc.orig 2025-05-05 10:57:53 UTC +--- components/password_manager/core/browser/password_form_manager.cc.orig 2025-08-07 06:57:29 UTC +++ components/password_manager/core/browser/password_form_manager.cc -@@ -64,7 +64,7 @@ +@@ -66,7 +66,7 @@ #include "components/webauthn/android/webauthn_cred_man_delegate.h" #endif // BUILDFLAG(IS_ANDROID) -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "components/os_crypt/sync/os_crypt.h" #endif -@@ -240,7 +240,7 @@ bool ShouldUploadCrowdsourcingVotes(const FormOrDigest +@@ -242,7 +242,7 @@ bool ShouldUploadCrowdsourcingVotes(const FormOrDigest return false; } -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) bool ShouldShowKeychainErrorBubble( std::optional backend_error) { if (!backend_error.has_value()) { -@@ -913,7 +913,7 @@ void PasswordFormManager::OnFetchCompleted() { +@@ -916,7 +916,7 @@ void PasswordFormManager::OnFetchCompleted() { error.value().type); } -#elif BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (ShouldShowKeychainErrorBubble( form_fetcher_->GetProfileStoreBackendError())) { client_->NotifyKeychainError(); diff --git a/www/chromium/files/patch-components_password__manager_core_browser_password__manager__client.h b/www/chromium/files/patch-components_password__manager_core_browser_password__manager__client.h index a2b83e110097..8e454dba845c 100644 --- a/www/chromium/files/patch-components_password__manager_core_browser_password__manager__client.h +++ b/www/chromium/files/patch-components_password__manager_core_browser_password__manager__client.h @@ -1,20 +1,20 @@ ---- components/password_manager/core/browser/password_manager_client.h.orig 2025-07-02 06:08:04 UTC +--- components/password_manager/core/browser/password_manager_client.h.orig 2025-08-07 06:57:29 UTC +++ components/password_manager/core/browser/password_manager_client.h -@@ -31,7 +31,7 @@ +@@ -30,7 +30,7 @@ #include "net/cert/cert_status_flags.h" #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "base/i18n/rtl.h" #include "components/password_manager/core/browser/password_cross_domain_confirmation_popup_controller.h" #include "ui/gfx/geometry/rect_f.h" -@@ -540,7 +540,7 @@ class PasswordManagerClient { +@@ -544,7 +544,7 @@ class PasswordManagerClient { virtual void TriggerSignIn(signin_metrics::AccessPoint access_point) const; #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Shows the bubble with the details of the `form`. virtual void OpenPasswordDetailsBubble( const password_manager::PasswordForm& form) = 0; diff --git a/www/chromium/files/patch-components_password__manager_core_browser_password__store_login__database.cc b/www/chromium/files/patch-components_password__manager_core_browser_password__store_login__database.cc index c750c21cb26a..e5e73c0154ae 100644 --- a/www/chromium/files/patch-components_password__manager_core_browser_password__store_login__database.cc +++ b/www/chromium/files/patch-components_password__manager_core_browser_password__store_login__database.cc @@ -1,20 +1,20 @@ ---- components/password_manager/core/browser/password_store/login_database.cc.orig 2025-05-05 10:57:53 UTC +--- components/password_manager/core/browser/password_store/login_database.cc.orig 2025-08-07 06:57:29 UTC +++ components/password_manager/core/browser/password_store/login_database.cc -@@ -1030,7 +1030,7 @@ bool ShouldDeleteUndecryptablePasswords( +@@ -1036,7 +1036,7 @@ bool ShouldDeleteUndecryptablePasswords( bool is_user_data_dir_policy_set, bool is_enabled_by_policy, IsAccountStore is_account_store) { -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) std::unique_ptr environment(base::Environment::Create()); // On Linux user data directory ca be specified using an env variable. If it // exists, passwords shouldn't be deleted. -@@ -1048,7 +1048,7 @@ bool ShouldDeleteUndecryptablePasswords( +@@ -1054,7 +1054,7 @@ bool ShouldDeleteUndecryptablePasswords( return false; } -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (command_line->HasSwitch(password_manager::kPasswordStore)) { RecordShouldDeleteUndecryptablePasswordsMetric( ShouldDeleteUndecryptablePasswordsResult:: diff --git a/www/chromium/files/patch-components_password__manager_core_browser_password__store_login__database__unittest.cc b/www/chromium/files/patch-components_password__manager_core_browser_password__store_login__database__unittest.cc index 34974871cb06..305558d21d3d 100644 --- a/www/chromium/files/patch-components_password__manager_core_browser_password__store_login__database__unittest.cc +++ b/www/chromium/files/patch-components_password__manager_core_browser_password__store_login__database__unittest.cc @@ -1,11 +1,11 @@ ---- components/password_manager/core/browser/password_store/login_database_unittest.cc.orig 2025-05-28 14:55:43 UTC +--- components/password_manager/core/browser/password_store/login_database_unittest.cc.orig 2025-08-07 06:57:29 UTC +++ components/password_manager/core/browser/password_store/login_database_unittest.cc -@@ -2303,7 +2303,7 @@ INSTANTIATE_TEST_SUITE_P(MigrationToVCurrent, +@@ -2305,7 +2305,7 @@ INSTANTIATE_TEST_SUITE_P(MigrationToVCurrent, testing::Bool())); #if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_IOS) || \ - BUILDFLAG(IS_WIN) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) class LoginDatabaseUndecryptableLoginsTest : public testing::Test { protected: LoginDatabaseUndecryptableLoginsTest() = default; diff --git a/www/chromium/files/patch-components_policy_core_common_cloud_cloud__policy__client.cc b/www/chromium/files/patch-components_policy_core_common_cloud_cloud__policy__client.cc index bc46407c78c3..0c0012414144 100644 --- a/www/chromium/files/patch-components_policy_core_common_cloud_cloud__policy__client.cc +++ b/www/chromium/files/patch-components_policy_core_common_cloud_cloud__policy__client.cc @@ -1,11 +1,11 @@ ---- components/policy/core/common/cloud/cloud_policy_client.cc.orig 2025-07-02 06:08:04 UTC +--- components/policy/core/common/cloud/cloud_policy_client.cc.orig 2025-08-07 06:57:29 UTC +++ components/policy/core/common/cloud/cloud_policy_client.cc -@@ -762,7 +762,7 @@ void CloudPolicyClient::FetchPolicy(PolicyFetchReason +@@ -756,7 +756,7 @@ void CloudPolicyClient::FetchPolicy(PolicyFetchReason fetch_request->set_invalidation_payload(invalidation_payload_); } } -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Only set browser device identifier for CBCM Chrome cloud policy on // desktop. if (type_to_fetch.first == diff --git a/www/chromium/files/patch-components_policy_core_common_policy__loader__common.cc b/www/chromium/files/patch-components_policy_core_common_policy__loader__common.cc index ae34bd0beb49..17cdb59f198f 100644 --- a/www/chromium/files/patch-components_policy_core_common_policy__loader__common.cc +++ b/www/chromium/files/patch-components_policy_core_common_policy__loader__common.cc @@ -1,20 +1,20 @@ ---- components/policy/core/common/policy_loader_common.cc.orig 2025-01-15 09:18:26 UTC +--- components/policy/core/common/policy_loader_common.cc.orig 2025-08-07 06:57:29 UTC +++ components/policy/core/common/policy_loader_common.cc @@ -46,7 +46,7 @@ const char* kSensitivePolicies[] = { key::kDefaultSearchProviderEnabled, key::kSafeBrowsingEnabled, #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) key::kAutoOpenFileTypes, key::kEnterpriseSearchAggregatorSettings, key::kHomepageIsNewTabPage, @@ -57,7 +57,7 @@ const char* kSensitivePolicies[] = { key::kSafeBrowsingAllowlistDomains, key::kSiteSearchSettings, #endif -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) key::kCommandLineFlagSecurityWarningsEnabled, - #endif - #if !BUILDFLAG(IS_IOS) + key::kEnterpriseCustomLabelForBrowser, + key::kEnterpriseLogoUrlForBrowser, diff --git a/www/chromium/files/patch-components_policy_core_common_policy__pref__names.cc b/www/chromium/files/patch-components_policy_core_common_policy__pref__names.cc index 45c534994983..88173690d1d0 100644 --- a/www/chromium/files/patch-components_policy_core_common_policy__pref__names.cc +++ b/www/chromium/files/patch-components_policy_core_common_policy__pref__names.cc @@ -1,11 +1,11 @@ ---- components/policy/core/common/policy_pref_names.cc.orig 2025-07-02 06:08:04 UTC +--- components/policy/core/common/policy_pref_names.cc.orig 2025-08-07 06:57:29 UTC +++ components/policy/core/common/policy_pref_names.cc -@@ -191,7 +191,7 @@ const char kFloatingWorkspaceEnabled[] = "ash.floating +@@ -186,7 +186,7 @@ const char kFloatingWorkspaceEnabled[] = "ash.floating // A boolean value indicating whether the built-in AI APIs are enabled. const char kBuiltInAIAPIsEnabled[] = "policy.built_in_ai_apis_enabled"; #if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || \ - BUILDFLAG(IS_MAC) + BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) // List of urls for which password manager is disabled/blocked. const char kPasswordManagerBlocklist[] = "policy.password_manager_blocklist"; #endif // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || diff --git a/www/chromium/files/patch-components_policy_core_common_policy__pref__names.h b/www/chromium/files/patch-components_policy_core_common_policy__pref__names.h index 3d3f80beb506..259b685103c1 100644 --- a/www/chromium/files/patch-components_policy_core_common_policy__pref__names.h +++ b/www/chromium/files/patch-components_policy_core_common_policy__pref__names.h @@ -1,11 +1,11 @@ ---- components/policy/core/common/policy_pref_names.h.orig 2025-07-02 06:08:04 UTC +--- components/policy/core/common/policy_pref_names.h.orig 2025-08-07 06:57:29 UTC +++ components/policy/core/common/policy_pref_names.h -@@ -91,7 +91,7 @@ extern const char kFloatingWorkspaceEnabled[]; +@@ -90,7 +90,7 @@ extern const char kFloatingWorkspaceEnabled[]; #endif extern const char kBuiltInAIAPIsEnabled[]; #if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || \ - BUILDFLAG(IS_MAC) + BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) extern const char kPasswordManagerBlocklist[]; #endif // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) diff --git a/www/chromium/files/patch-components_power__metrics_energy__metrics__provider.cc b/www/chromium/files/patch-components_power__metrics_energy__metrics__provider.cc index 65fa8d60dd78..34855d3e4f4e 100644 --- a/www/chromium/files/patch-components_power__metrics_energy__metrics__provider.cc +++ b/www/chromium/files/patch-components_power__metrics_energy__metrics__provider.cc @@ -1,21 +1,21 @@ ---- components/power_metrics/energy_metrics_provider.cc.orig 2023-08-17 07:33:31 UTC +--- components/power_metrics/energy_metrics_provider.cc.orig 2025-08-07 06:57:29 UTC +++ components/power_metrics/energy_metrics_provider.cc @@ -9,6 +9,8 @@ #include "components/power_metrics/energy_metrics_provider_win.h" #elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) #include "components/power_metrics/energy_metrics_provider_linux.h" +#elif BUILDFLAG(IS_BSD) -+#include "base/notreached.h" ++#include "base/notimplemented.h" #endif // BUILDFLAG(IS_WIN) namespace power_metrics { @@ -22,6 +24,9 @@ std::unique_ptr EnergyMetricsPr return EnergyMetricsProviderWin::Create(); #elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) return EnergyMetricsProviderLinux::Create(); +#elif BUILDFLAG(IS_BSD) + NOTIMPLEMENTED(); + return nullptr; #else return nullptr; #endif // BUILDFLAG(IS_WIN) diff --git a/www/chromium/files/patch-components_regional__capabilities_regional__capabilities__service.cc b/www/chromium/files/patch-components_regional__capabilities_regional__capabilities__service.cc index b3714212d457..79f417f89747 100644 --- a/www/chromium/files/patch-components_regional__capabilities_regional__capabilities__service.cc +++ b/www/chromium/files/patch-components_regional__capabilities_regional__capabilities__service.cc @@ -1,11 +1,11 @@ ---- components/regional_capabilities/regional_capabilities_service.cc.orig 2025-05-28 14:55:43 UTC +--- components/regional_capabilities/regional_capabilities_service.cc.orig 2025-08-07 06:57:29 UTC +++ components/regional_capabilities/regional_capabilities_service.cc -@@ -235,7 +235,7 @@ std::optional RegionalCapabilitiesService:: +@@ -234,7 +234,7 @@ std::optional RegionalCapabilitiesService:: return persisted_country_id; } -#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (base::FeatureList::IsEnabled(switches::kClearPrefForUnknownCountry)) { - profile_prefs_->ClearPref(country_codes::kCountryIDAtInstall); + profile_prefs_->ClearPref(prefs::kCountryIDAtInstall); base::UmaHistogramEnumeration(kUnknownCountryIdStored, diff --git a/www/chromium/files/patch-components_regional__capabilities_regional__capabilities__switches.cc b/www/chromium/files/patch-components_regional__capabilities_regional__capabilities__switches.cc index 14ed09484399..f0e216dbf66d 100644 --- a/www/chromium/files/patch-components_regional__capabilities_regional__capabilities__switches.cc +++ b/www/chromium/files/patch-components_regional__capabilities_regional__capabilities__switches.cc @@ -1,11 +1,18 @@ ---- components/regional_capabilities/regional_capabilities_switches.cc.orig 2025-05-05 10:57:53 UTC +--- components/regional_capabilities/regional_capabilities_switches.cc.orig 2025-08-07 06:57:29 UTC +++ components/regional_capabilities/regional_capabilities_switches.cc -@@ -6,7 +6,7 @@ +@@ -10,13 +10,13 @@ namespace switches { -#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) BASE_FEATURE(kClearPrefForUnknownCountry, "ClearCountryPrefForStoredUnknownCountry", base::FEATURE_ENABLED_BY_DEFAULT); + #endif + +-#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + BASE_FEATURE(kUseFinchPermanentCountryForFetchCountryId, + "UseFinchPermanentCountyForFetchCountryId", + base::FEATURE_DISABLED_BY_DEFAULT); diff --git a/www/chromium/files/patch-components_regional__capabilities_regional__capabilities__switches.h b/www/chromium/files/patch-components_regional__capabilities_regional__capabilities__switches.h index f29cd663c85b..27d425f9b3be 100644 --- a/www/chromium/files/patch-components_regional__capabilities_regional__capabilities__switches.h +++ b/www/chromium/files/patch-components_regional__capabilities_regional__capabilities__switches.h @@ -1,11 +1,19 @@ ---- components/regional_capabilities/regional_capabilities_switches.h.orig 2025-05-05 10:57:53 UTC +--- components/regional_capabilities/regional_capabilities_switches.h.orig 2025-08-07 06:57:29 UTC +++ components/regional_capabilities/regional_capabilities_switches.h -@@ -25,7 +25,7 @@ inline constexpr char kSearchEngineChoiceCountry[] = +@@ -26,14 +26,14 @@ inline constexpr char kSearchEngineChoiceCountry[] = inline constexpr char kDefaultListCountryOverride[] = "DEFAULT_EEA"; inline constexpr char kEeaListCountryOverride[] = "EEA_ALL"; -#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // When an invalid `country_codes::CountryId` is stored in prefs and this // feature is enabled the pref will be cleared allowing a valid country to be // set again. + BASE_DECLARE_FEATURE(kClearPrefForUnknownCountry); + #endif + +-#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + // Use finch permanent country instead of finch latest country for fetching + // country ID. + BASE_DECLARE_FEATURE(kUseFinchPermanentCountryForFetchCountryId); diff --git a/www/chromium/files/patch-components_search__engines_template__url__service.cc b/www/chromium/files/patch-components_search__engines_template__url__service.cc index bb8d6a340eb9..055332f9ef9f 100644 --- a/www/chromium/files/patch-components_search__engines_template__url__service.cc +++ b/www/chromium/files/patch-components_search__engines_template__url__service.cc @@ -1,11 +1,11 @@ ---- components/search_engines/template_url_service.cc.orig 2025-07-02 06:08:04 UTC +--- components/search_engines/template_url_service.cc.orig 2025-08-07 06:57:29 UTC +++ components/search_engines/template_url_service.cc -@@ -3561,7 +3561,7 @@ bool TemplateURLService::MatchesDefaultSearchProvider( +@@ -3600,7 +3600,7 @@ bool TemplateURLService::MatchesDefaultSearchProvider( std::unique_ptr TemplateURLService::GetEnterpriseSearchManager(PrefService* prefs) { #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) return std::make_unique( prefs, base::BindRepeating(&TemplateURLService::EnterpriseSearchChanged, base::Unretained(this))); diff --git a/www/chromium/files/patch-components_signin_public_base_signin__switches.cc b/www/chromium/files/patch-components_signin_public_base_signin__switches.cc index 6b4ba47a31b6..edd00c307f28 100644 --- a/www/chromium/files/patch-components_signin_public_base_signin__switches.cc +++ b/www/chromium/files/patch-components_signin_public_base_signin__switches.cc @@ -1,11 +1,20 @@ ---- components/signin/public/base/signin_switches.cc.orig 2025-07-02 06:08:04 UTC +--- components/signin/public/base/signin_switches.cc.orig 2025-08-07 06:57:29 UTC +++ components/signin/public/base/signin_switches.cc -@@ -64,7 +64,7 @@ BASE_FEATURE(kFullscreenSignInPromoUseDate, +@@ -60,7 +60,7 @@ BASE_FEATURE(kMakeAccountsAvailableInIdentityManager, base::FEATURE_DISABLED_BY_DEFAULT); #endif -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Enables the History Sync Opt-in on Desktop. BASE_FEATURE(kEnableHistorySyncOptin, "EnableHistorySyncOptin", +@@ -250,7 +250,7 @@ BASE_FEATURE(kDeferWebSigninTrackerCreation, + "DeferWebSigninTrackerCreation", + base::FEATURE_ENABLED_BY_DEFAULT); + +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + BASE_FEATURE(kSignInPromoMaterialNextUI, + "SignInPromoMaterialNextUI", + base::FEATURE_DISABLED_BY_DEFAULT); diff --git a/www/chromium/files/patch-components_signin_public_base_signin__switches.h b/www/chromium/files/patch-components_signin_public_base_signin__switches.h index 3438afb6235c..82b692749990 100644 --- a/www/chromium/files/patch-components_signin_public_base_signin__switches.h +++ b/www/chromium/files/patch-components_signin_public_base_signin__switches.h @@ -1,11 +1,20 @@ ---- components/signin/public/base/signin_switches.h.orig 2025-07-02 06:08:04 UTC +--- components/signin/public/base/signin_switches.h.orig 2025-08-07 06:57:29 UTC +++ components/signin/public/base/signin_switches.h -@@ -58,7 +58,7 @@ COMPONENT_EXPORT(SIGNIN_SWITCHES) - BASE_DECLARE_FEATURE(kFullscreenSignInPromoUseDate); +@@ -55,7 +55,7 @@ COMPONENT_EXPORT(SIGNIN_SWITCHES) + BASE_DECLARE_FEATURE(kMakeAccountsAvailableInIdentityManager); #endif -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) COMPONENT_EXPORT(SIGNIN_SWITCHES) BASE_DECLARE_FEATURE(kEnableHistorySyncOptin); - #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) + COMPONENT_EXPORT(SIGNIN_SWITCHES) +@@ -189,7 +189,7 @@ bool IsExtensionsExplicitBrowserSigninEnabled(); + COMPONENT_EXPORT(SIGNIN_SWITCHES) + BASE_DECLARE_FEATURE(kDeferWebSigninTrackerCreation); + +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + // Uses the Material Next theme for the signin promo. + COMPONENT_EXPORT(SIGNIN_SWITCHES) + BASE_DECLARE_FEATURE(kSignInPromoMaterialNextUI); diff --git a/www/chromium/files/patch-components_supervised__user_core_browser_kids__chrome__management__url__checker__client.cc b/www/chromium/files/patch-components_supervised__user_core_browser_kids__chrome__management__url__checker__client.cc new file mode 100644 index 000000000000..e20dbe89ad2b --- /dev/null +++ b/www/chromium/files/patch-components_supervised__user_core_browser_kids__chrome__management__url__checker__client.cc @@ -0,0 +1,11 @@ +--- components/supervised_user/core/browser/kids_chrome_management_url_checker_client.cc.orig 2025-08-07 06:57:29 UTC ++++ components/supervised_user/core/browser/kids_chrome_management_url_checker_client.cc +@@ -66,7 +66,7 @@ void OnResponse( + } + + FetcherConfig GetFetcherConfig(bool is_subject_to_parental_controls) { +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) + // Supervised users on these platforms might get into a state where their + // credentials are not available, so best-effort access mode is a graceful + // fallback here. diff --git a/www/chromium/files/patch-components_supervised__user_core_browser_supervised__user__metrics__service.cc b/www/chromium/files/patch-components_supervised__user_core_browser_supervised__user__metrics__service.cc index 3ed3978a9764..74118cafb833 100644 --- a/www/chromium/files/patch-components_supervised__user_core_browser_supervised__user__metrics__service.cc +++ b/www/chromium/files/patch-components_supervised__user_core_browser_supervised__user__metrics__service.cc @@ -1,11 +1,11 @@ ---- components/supervised_user/core/browser/supervised_user_metrics_service.cc.orig 2025-07-02 06:08:04 UTC +--- components/supervised_user/core/browser/supervised_user_metrics_service.cc.orig 2025-08-07 06:57:29 UTC +++ components/supervised_user/core/browser/supervised_user_metrics_service.cc -@@ -68,7 +68,7 @@ SupervisedUserMetricsService::SupervisedUserMetricsSer - extensions_metrics_delegate_(std::move(extensions_metrics_delegate)) { +@@ -83,7 +83,7 @@ SupervisedUserMetricsService::SupervisedUserMetricsSer + std::move(metrics_service_accessor_delegate)) { DCHECK(pref_service_); supervised_user_service_observation_.Observe(&supervised_user_service); -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) CHECK(extensions_metrics_delegate_) << "Extensions metrics delegate must exist on Win/Linux/Mac"; #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) diff --git a/www/chromium/files/patch-components_supervised__user_core_common_features.cc b/www/chromium/files/patch-components_supervised__user_core_common_features.cc index 409f714ca9b5..0ebf41823a53 100644 --- a/www/chromium/files/patch-components_supervised__user_core_common_features.cc +++ b/www/chromium/files/patch-components_supervised__user_core_common_features.cc @@ -1,54 +1,45 @@ ---- components/supervised_user/core/common/features.cc.orig 2025-05-28 14:55:43 UTC +--- components/supervised_user/core/common/features.cc.orig 2025-08-07 06:57:29 UTC +++ components/supervised_user/core/common/features.cc @@ -37,7 +37,7 @@ BASE_FEATURE(kAllowSubframeLocalWebApprovals, #endif #if BUILDFLAG(IS_IOS) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_WIN) -+ BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) ++ BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) || BUILDFLAG(IS_BSD) const int kLocalWebApprovalBottomSheetLoadTimeoutDefaultValueMs = 5000; const base::FeatureParam kLocalWebApprovalBottomSheetLoadTimeoutMs{ @@ -46,7 +46,7 @@ const base::FeatureParam kLocalWebApprovalBottomS #endif // BUILDFLAG(IS_IOS) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || // BUILDFLAG(IS_WIN) -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) BASE_FEATURE(kEnableLocalWebApprovalErrorDialog, "EnableLocalWebApprovalErrorDialog", base::FEATURE_ENABLED_BY_DEFAULT); @@ -89,7 +89,7 @@ bool IsLocalWebApprovalsEnabledForSubframes() { return base::FeatureList::IsEnabled(kAllowSubframeLocalWebApprovals); } -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) BASE_FEATURE(kCustomProfileStringsForSupervisedUsers, "CustomProfileStringsForSupervisedUsers", base::FEATURE_ENABLED_BY_DEFAULT); @@ -101,13 +101,13 @@ BASE_FEATURE(kShowKiteForSupervisedUsers, BASE_FEATURE(kForceSafeSearchForUnauthenticatedSupervisedUsers, "ForceSafeSearchForUnauthenticatedSupervisedUsers", -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) base::FEATURE_ENABLED_BY_DEFAULT); #else base::FEATURE_DISABLED_BY_DEFAULT); #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) BASE_FEATURE(kEnableSupervisedUserVersionSignOutDialog, "EnableSupervisedUserVersionSignOutDialog", base::FEATURE_ENABLED_BY_DEFAULT); -@@ -119,7 +119,7 @@ BASE_FEATURE(kEnableSupervisedUserVersionSignOutDialog - // platform #defines. - BASE_FEATURE(kUncredentialedFilteringFallbackForSupervisedUsers, - "UncredentialedFilteringFallbackForSupervisedUsers", --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) - base::FEATURE_ENABLED_BY_DEFAULT); - #else - base::FEATURE_DISABLED_BY_DEFAULT); diff --git a/www/chromium/files/patch-components_sync__preferences_common__syncable__prefs__database.cc b/www/chromium/files/patch-components_sync__preferences_common__syncable__prefs__database.cc index f38eddaf4649..5e04ea253ddc 100644 --- a/www/chromium/files/patch-components_sync__preferences_common__syncable__prefs__database.cc +++ b/www/chromium/files/patch-components_sync__preferences_common__syncable__prefs__database.cc @@ -1,11 +1,11 @@ ---- components/sync_preferences/common_syncable_prefs_database.cc.orig 2025-05-28 14:55:43 UTC +--- components/sync_preferences/common_syncable_prefs_database.cc.orig 2025-08-07 06:57:29 UTC +++ components/sync_preferences/common_syncable_prefs_database.cc -@@ -339,7 +339,7 @@ constexpr auto kCommonSyncablePrefsAllowlist = - PrefSensitivity::kNone, MergeBehavior::kNone}}, +@@ -343,7 +343,7 @@ constexpr auto kCommonSyncablePrefsAllowlist = + syncer::PREFERENCES, PrefSensitivity::kNone, MergeBehavior::kNone}}, #endif // BUILDFLAG(IS_ANDROID) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) {autofill::prefs::kAutofillBnplEnabled, {syncable_prefs_ids::kAutofillBnplEnabled, syncer::PREFERENCES, PrefSensitivity::kNone, MergeBehavior::kNone}}, diff --git a/www/chromium/files/patch-components_sync_service_sync__prefs.cc b/www/chromium/files/patch-components_sync_service_sync__prefs.cc deleted file mode 100644 index 0a500e15d0be..000000000000 --- a/www/chromium/files/patch-components_sync_service_sync__prefs.cc +++ /dev/null @@ -1,11 +0,0 @@ ---- components/sync/service/sync_prefs.cc.orig 2025-07-02 06:08:04 UTC -+++ components/sync/service/sync_prefs.cc -@@ -776,7 +776,7 @@ bool SyncPrefs::IsTypeSupportedInTransportMode(UserSel - // transport mode everywhere. - return true; - case UserSelectableType::kHistory: --#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - return base::FeatureList::IsEnabled(kReplaceSyncPromosWithSignInPromos) || - base::FeatureList::IsEnabled(switches::kEnableHistorySyncOptin); - #else diff --git a/www/chromium/files/patch-components_system__cpu_cpu__probe.cc b/www/chromium/files/patch-components_system__cpu_cpu__probe.cc index bbd2188c9fed..ef1ad4ae31cd 100644 --- a/www/chromium/files/patch-components_system__cpu_cpu__probe.cc +++ b/www/chromium/files/patch-components_system__cpu_cpu__probe.cc @@ -1,12 +1,23 @@ ---- components/system_cpu/cpu_probe.cc.orig 2024-02-23 21:04:38 UTC +--- components/system_cpu/cpu_probe.cc.orig 2025-08-07 06:57:29 UTC +++ components/system_cpu/cpu_probe.cc -@@ -30,6 +30,9 @@ std::unique_ptr CpuProbe::Create() { +@@ -20,6 +20,10 @@ + #include "components/system_cpu/cpu_probe_mac.h" + #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) + ++#if BUILDFLAG(IS_BSD) ++#include "base/notimplemented.h" ++#endif ++ + namespace system_cpu { + + // static +@@ -30,6 +34,9 @@ std::unique_ptr CpuProbe::Create() { return CpuProbeWin::Create(); #elif BUILDFLAG(IS_MAC) return CpuProbeMac::Create(); +#elif BUILDFLAG(IS_BSD) + NOTIMPLEMENTED(); + return nullptr; #else return nullptr; #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) diff --git a/www/chromium/files/patch-components_user__education_views_help__bubble__view.cc b/www/chromium/files/patch-components_user__education_views_help__bubble__view.cc index 0f4a2f09738d..c7e3b6e17c6d 100644 --- a/www/chromium/files/patch-components_user__education_views_help__bubble__view.cc +++ b/www/chromium/files/patch-components_user__education_views_help__bubble__view.cc @@ -1,29 +1,29 @@ ---- components/user_education/views/help_bubble_view.cc.orig 2025-05-05 10:57:53 UTC +--- components/user_education/views/help_bubble_view.cc.orig 2025-08-07 06:57:29 UTC +++ components/user_education/views/help_bubble_view.cc -@@ -268,7 +268,7 @@ DEFINE_CLASS_ELEMENT_IDENTIFIER_VALUE(HelpBubbleView, +@@ -269,7 +269,7 @@ DEFINE_CLASS_ELEMENT_IDENTIFIER_VALUE(HelpBubbleView, // TODO(https://crbug.com/382611284): Temporarily handle the case when the // primary window is minimized by closing the help bubble. Remove this code when // the issue is solved at the Views framework level. -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) class HelpBubbleView::PrimaryWidgetObserver : public views::WidgetObserver { public: explicit PrimaryWidgetObserver(HelpBubbleView& help_bubble) -@@ -743,7 +743,7 @@ HelpBubbleView::HelpBubbleView( +@@ -733,7 +733,7 @@ HelpBubbleView::HelpBubbleView( event_relay_->Init(this); } -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) primary_widget_observer_ = std::make_unique(*this); #endif -@@ -855,7 +855,7 @@ gfx::Rect HelpBubbleView::GetAnchorRect() const { +@@ -845,7 +845,7 @@ gfx::Rect HelpBubbleView::GetAnchorRect() const { void HelpBubbleView::OnBeforeBubbleWidgetInit(views::Widget::InitParams* params, views::Widget* widget) const { BubbleDialogDelegateView::OnBeforeBubbleWidgetInit(params, widget); -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) || BUILDFLAG(IS_BSD) // Help bubbles anchored to menus may be clipped to their anchors' bounds, // resulting in visual errors, unless they use accelerated rendering. See // crbug.com/1445770 for details. This also applies to bubbles anchored to diff --git a/www/chromium/files/patch-components_variations_net_variations__command__line.cc b/www/chromium/files/patch-components_variations_net_variations__command__line.cc deleted file mode 100644 index 3ad7561ceefa..000000000000 --- a/www/chromium/files/patch-components_variations_net_variations__command__line.cc +++ /dev/null @@ -1,11 +0,0 @@ ---- components/variations/net/variations_command_line.cc.orig 2025-05-28 14:55:43 UTC -+++ components/variations/net/variations_command_line.cc -@@ -50,7 +50,7 @@ void ExitWithMessage(const std::string& message) { - namespace variations { - - #if !BUILDFLAG(IS_CHROMEOS) --#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) -+#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) - BASE_FEATURE(kFeedbackIncludeVariations, - "FeedbackIncludeVariations", - base::FEATURE_ENABLED_BY_DEFAULT); diff --git a/www/chromium/files/patch-components_variations_service_variations__service.cc b/www/chromium/files/patch-components_variations_service_variations__service.cc index cb59dfff157f..bf417a379524 100644 --- a/www/chromium/files/patch-components_variations_service_variations__service.cc +++ b/www/chromium/files/patch-components_variations_service_variations__service.cc @@ -1,11 +1,11 @@ ---- components/variations/service/variations_service.cc.orig 2025-03-05 08:14:56 UTC +--- components/variations/service/variations_service.cc.orig 2025-08-07 06:57:29 UTC +++ components/variations/service/variations_service.cc -@@ -100,7 +100,7 @@ std::string GetPlatformString() { +@@ -99,7 +99,7 @@ std::string GetPlatformString() { return "android"; #elif BUILDFLAG(IS_FUCHSIA) return "fuchsia"; -#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) || BUILDFLAG(IS_SOLARIS) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) || BUILDFLAG(IS_SOLARIS) || BUILDFLAG(IS_BSD) // Default BSD and SOLARIS to Linux to not break those builds, although these // platforms are not officially supported by Chrome. return "linux"; diff --git a/www/chromium/files/patch-components_viz_host_host__display__client.cc b/www/chromium/files/patch-components_viz_host_host__display__client.cc index f8955c1b6747..6698a295ed73 100644 --- a/www/chromium/files/patch-components_viz_host_host__display__client.cc +++ b/www/chromium/files/patch-components_viz_host_host__display__client.cc @@ -1,11 +1,14 @@ ---- components/viz/host/host_display_client.cc.orig 2024-05-21 18:07:39 UTC +--- components/viz/host/host_display_client.cc.orig 2025-08-07 06:57:29 UTC +++ components/viz/host/host_display_client.cc -@@ -65,7 +65,7 @@ void HostDisplayClient::AddChildWindowToBrowser( +@@ -66,9 +66,9 @@ void HostDisplayClient::AddChildWindowToBrowser( } #endif -#if BUILDFLAG(IS_LINUX) && BUILDFLAG(IS_OZONE_X11) +#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && BUILDFLAG(IS_OZONE_X11) void HostDisplayClient::DidCompleteSwapWithNewSize(const gfx::Size& size) { - NOTIMPLEMENTED(); +- NOTIMPLEMENTED(); ++ NOTREACHED(); } + #endif // BUILDFLAG(IS_LINUX) && BUILDFLAG(IS_OZONE_X11) + diff --git a/www/chromium/files/patch-components_viz_service_frame__sinks_root__compositor__frame__sink__impl.cc b/www/chromium/files/patch-components_viz_service_frame__sinks_root__compositor__frame__sink__impl.cc index bd9c7304e002..d9915f027691 100644 --- a/www/chromium/files/patch-components_viz_service_frame__sinks_root__compositor__frame__sink__impl.cc +++ b/www/chromium/files/patch-components_viz_service_frame__sinks_root__compositor__frame__sink__impl.cc @@ -1,20 +1,20 @@ ---- components/viz/service/frame_sinks/root_compositor_frame_sink_impl.cc.orig 2025-07-02 06:08:04 UTC +--- components/viz/service/frame_sinks/root_compositor_frame_sink_impl.cc.orig 2025-08-07 06:57:29 UTC +++ components/viz/service/frame_sinks/root_compositor_frame_sink_impl.cc -@@ -141,7 +141,7 @@ RootCompositorFrameSinkImpl::Create( +@@ -142,7 +142,7 @@ RootCompositorFrameSinkImpl::Create( output_surface->SetNeedsSwapSizeNotifications( params->send_swap_size_notifications); -#if BUILDFLAG(IS_LINUX) && BUILDFLAG(IS_OZONE_X11) +#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && BUILDFLAG(IS_OZONE_X11) // For X11, we need notify client about swap completion after resizing, so the // client can use it for synchronize with X11 WM. output_surface->SetNeedsSwapSizeNotifications(true); -@@ -930,7 +930,7 @@ void RootCompositorFrameSinkImpl::DisplayDidCompleteSw +@@ -911,7 +911,7 @@ void RootCompositorFrameSinkImpl::DisplayDidCompleteSw if (display_client_ && enable_swap_completion_callback_) { display_client_->DidCompleteSwapWithSize(pixel_size); } -#elif BUILDFLAG(IS_LINUX) && BUILDFLAG(IS_OZONE_X11) +#elif (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && BUILDFLAG(IS_OZONE_X11) if (display_client_ && pixel_size != last_swap_pixel_size_) { last_swap_pixel_size_ = pixel_size; display_client_->DidCompleteSwapWithNewSize(last_swap_pixel_size_); diff --git a/www/chromium/files/patch-components_viz_service_frame__sinks_root__compositor__frame__sink__impl.h b/www/chromium/files/patch-components_viz_service_frame__sinks_root__compositor__frame__sink__impl.h index 8d96578c7309..62177b354915 100644 --- a/www/chromium/files/patch-components_viz_service_frame__sinks_root__compositor__frame__sink__impl.h +++ b/www/chromium/files/patch-components_viz_service_frame__sinks_root__compositor__frame__sink__impl.h @@ -1,11 +1,11 @@ ---- components/viz/service/frame_sinks/root_compositor_frame_sink_impl.h.orig 2025-05-28 14:55:43 UTC +--- components/viz/service/frame_sinks/root_compositor_frame_sink_impl.h.orig 2025-08-07 06:57:29 UTC +++ components/viz/service/frame_sinks/root_compositor_frame_sink_impl.h -@@ -234,7 +234,7 @@ class VIZ_SERVICE_EXPORT RootCompositorFrameSinkImpl - base::TimeDelta preferred_frame_interval_ = - FrameRateDecider::UnspecifiedFrameInterval(); +@@ -229,7 +229,7 @@ class VIZ_SERVICE_EXPORT RootCompositorFrameSinkImpl + base::TimeDelta display_frame_interval_ = BeginFrameArgs::DefaultInterval(); + base::TimeDelta preferred_frame_interval_; -#if BUILDFLAG(IS_LINUX) && BUILDFLAG(IS_OZONE_X11) +#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && BUILDFLAG(IS_OZONE_X11) gfx::Size last_swap_pixel_size_; #endif // BUILDFLAG(IS_LINUX) && BUILDFLAG(IS_OZONE_X11) diff --git a/www/chromium/files/patch-components_viz_service_gl_gpu__service__impl.cc b/www/chromium/files/patch-components_viz_service_gl_gpu__service__impl.cc index 4fe0ed10104f..445b9446efcc 100644 --- a/www/chromium/files/patch-components_viz_service_gl_gpu__service__impl.cc +++ b/www/chromium/files/patch-components_viz_service_gl_gpu__service__impl.cc @@ -1,20 +1,20 @@ ---- components/viz/service/gl/gpu_service_impl.cc.orig 2025-07-02 06:08:04 UTC +--- components/viz/service/gl/gpu_service_impl.cc.orig 2025-08-07 06:57:29 UTC +++ components/viz/service/gl/gpu_service_impl.cc -@@ -515,7 +515,7 @@ void GpuServiceImpl::InitializeWithHostInternal( +@@ -514,7 +514,7 @@ void GpuServiceImpl::InitializeWithHostInternal( mojo::Remote gpu_host(std::move(pending_gpu_host)); -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) gpu_extra_info_.is_gmb_nv12_supported = IsGMBNV12Supported(); #endif -@@ -1351,7 +1351,7 @@ bool GpuServiceImpl::OnBeginFrameDerivedImpl(const Beg +@@ -1372,7 +1372,7 @@ bool GpuServiceImpl::OnBeginFrameDerivedImpl(const Beg return true; } -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) bool GpuServiceImpl::IsGMBNV12Supported() { CHECK(main_runner_->BelongsToCurrentThread()); auto buffer_format = gfx::BufferFormat::YUV_420_BIPLANAR; diff --git a/www/chromium/files/patch-components_webui_flags_flags__state.cc b/www/chromium/files/patch-components_webui_flags_flags__state.cc index fe99ec26dbde..1f8911453d52 100644 --- a/www/chromium/files/patch-components_webui_flags_flags__state.cc +++ b/www/chromium/files/patch-components_webui_flags_flags__state.cc @@ -1,11 +1,11 @@ ---- components/webui/flags/flags_state.cc.orig 2025-07-02 06:08:04 UTC +--- components/webui/flags/flags_state.cc.orig 2025-08-07 06:57:29 UTC +++ components/webui/flags/flags_state.cc -@@ -781,7 +781,7 @@ unsigned short FlagsState::GetCurrentPlatform() { +@@ -782,7 +782,7 @@ unsigned short FlagsState::GetCurrentPlatform() { return kOsWin; #elif BUILDFLAG(IS_CHROMEOS) return kOsCrOS; -#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_OPENBSD) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) return kOsLinux; #elif BUILDFLAG(IS_ANDROID) return kOsAndroid; diff --git a/www/chromium/files/patch-content_app_BUILD.gn b/www/chromium/files/patch-content_app_BUILD.gn index e2919490114d..285eb9386ce9 100644 --- a/www/chromium/files/patch-content_app_BUILD.gn +++ b/www/chromium/files/patch-content_app_BUILD.gn @@ -1,15 +1,15 @@ ---- content/app/BUILD.gn.orig 2025-05-05 10:57:53 UTC +--- content/app/BUILD.gn.orig 2025-08-07 06:57:29 UTC +++ content/app/BUILD.gn -@@ -90,9 +90,9 @@ source_set("content_main_runner_app") { +@@ -89,9 +89,9 @@ source_set("content_main_runner_app") { "//third_party/tflite:buildflags", "//tools/v8_context_snapshot:buildflags", ] - if (build_tflite_with_xnnpack) { - deps += [ "//third_party/cpuinfo" ] - } +# if (build_tflite_with_xnnpack) { +# deps += [ "//third_party/cpuinfo" ] +# } } source_set("app") { diff --git a/www/chromium/files/patch-content_app_content__main.cc b/www/chromium/files/patch-content_app_content__main.cc index 4f637b07a483..d15082f7ba07 100644 --- a/www/chromium/files/patch-content_app_content__main.cc +++ b/www/chromium/files/patch-content_app_content__main.cc @@ -1,20 +1,20 @@ ---- content/app/content_main.cc.orig 2025-07-02 06:08:04 UTC +--- content/app/content_main.cc.orig 2025-08-07 06:57:29 UTC +++ content/app/content_main.cc -@@ -233,7 +233,7 @@ NO_STACK_PROTECTOR int RunContentProcess( +@@ -226,7 +226,7 @@ NO_STACK_PROTECTOR int RunContentProcess( base::EnableTerminationOnOutOfMemory(); logging::RegisterAbslAbortHook(); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // The various desktop environments set this environment variable that // allows the dbus client library to connect directly to the bus. When this // variable is not set (test environments like xvfb-run), the dbus client -@@ -332,7 +332,7 @@ NO_STACK_PROTECTOR int RunContentProcess( +@@ -320,7 +320,7 @@ NO_STACK_PROTECTOR int RunContentProcess( #endif #endif -#if (BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX)) && !defined(COMPONENT_BUILD) +#if (BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX)) && !defined(COMPONENT_BUILD) && defined(notyet) base::subtle::EnableFDOwnershipEnforcement(true); #endif diff --git a/www/chromium/files/patch-content_app_content__main__runner__impl.cc b/www/chromium/files/patch-content_app_content__main__runner__impl.cc index b059dda05cc1..ebe78bb1ed46 100644 --- a/www/chromium/files/patch-content_app_content__main__runner__impl.cc +++ b/www/chromium/files/patch-content_app_content__main__runner__impl.cc @@ -1,131 +1,131 @@ ---- content/app/content_main_runner_impl.cc.orig 2025-07-02 06:08:04 UTC +--- content/app/content_main_runner_impl.cc.orig 2025-08-07 06:57:29 UTC +++ content/app/content_main_runner_impl.cc -@@ -148,18 +148,20 @@ +@@ -149,18 +149,20 @@ #include "content/browser/posix_file_descriptor_info_impl.h" #include "content/public/common/content_descriptors.h" -#if !BUILDFLAG(IS_MAC) +#if !BUILDFLAG(IS_MAC) && !BUILDFLAG(IS_BSD) #include "content/public/common/zygote/zygote_fork_delegate_linux.h" #endif #endif // BUILDFLAG(IS_POSIX) || BUILDFLAG(IS_FUCHSIA) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "base/files/file_path_watcher_inotify.h" #include "base/native_library.h" #include "base/rand_util.h" #include "content/public/common/zygote/sandbox_support_linux.h" +#if !BUILDFLAG(IS_BSD) #include "sandbox/policy/linux/sandbox_linux.h" +#endif #include "third_party/boringssl/src/include/openssl/crypto.h" #include "third_party/webrtc_overrides/init_webrtc.h" // nogncheck -@@ -188,6 +190,10 @@ +@@ -189,6 +191,10 @@ #include "media/base/media_switches.h" #endif +#if BUILDFLAG(IS_BSD) +#include "base/system/sys_info.h" +#endif + #if BUILDFLAG(IS_ANDROID) #include "base/system/sys_info.h" #include "content/browser/android/battery_metrics.h" -@@ -386,7 +392,7 @@ void InitializeZygoteSandboxForBrowserProcess( +@@ -390,7 +396,7 @@ void InitializeZygoteSandboxForBrowserProcess( } #endif // BUILDFLAG(USE_ZYGOTE) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #if BUILDFLAG(ENABLE_PPAPI) // Loads the (native) libraries but does not initialize them (i.e., does not -@@ -424,7 +430,10 @@ void PreloadLibraryCdms() { +@@ -428,7 +434,10 @@ void PreloadLibraryCdms() { void PreSandboxInit() { // Ensure the /dev/urandom is opened. + // we use arc4random +#if !BUILDFLAG(IS_BSD) base::GetUrandomFD(); +#endif // May use sysinfo(), sched_getaffinity(), and open various /sys/ and /proc/ // files. -@@ -436,9 +445,16 @@ void PreSandboxInit() { +@@ -440,9 +449,16 @@ void PreSandboxInit() { // https://boringssl.googlesource.com/boringssl/+/HEAD/SANDBOXING.md CRYPTO_pre_sandbox_init(); +#if BUILDFLAG(IS_BSD) + // "cache" the amount of physical memory before pledge(2) + base::SysInfo::AmountOfPhysicalMemoryMB(); +#endif + +#if !BUILDFLAG(IS_BSD) // Pre-read /proc/sys/fs/inotify/max_user_watches so it doesn't have to be // allowed by the sandbox. base::GetMaxNumberOfInotifyWatches(); +#endif #if BUILDFLAG(ENABLE_PPAPI) // Ensure access to the Pepper plugins before the sandbox is turned on. -@@ -763,7 +779,7 @@ NO_STACK_PROTECTOR int RunOtherNamedProcessTypeMain( +@@ -765,7 +781,7 @@ NO_STACK_PROTECTOR int RunOtherNamedProcessTypeMain( + base::HangWatcher::CreateHangWatcherInstance(); unregister_thread_closure = base::HangWatcher::RegisterThread( base::HangWatcher::ThreadType::kMainThread); - bool start_hang_watcher_now; -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // On Linux/ChromeOS, the HangWatcher can't start until after the sandbox is // initialized, because the sandbox can't be started with multiple threads. // TODO(mpdenton): start the HangWatcher after the sandbox is initialized. -@@ -876,11 +892,10 @@ int ContentMainRunnerImpl::Initialize(ContentMainParam +@@ -883,11 +899,10 @@ int ContentMainRunnerImpl::Initialize(ContentMainParam base::GlobalDescriptors::kBaseDescriptor); #endif // !BUILDFLAG(IS_ANDROID) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_OPENBSD) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) g_fds->Set(kCrashDumpSignal, kCrashDumpSignal + base::GlobalDescriptors::kBaseDescriptor); -#endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || - // BUILDFLAG(IS_OPENBSD) +#endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) #endif // !BUILDFLAG(IS_WIN) -@@ -1073,10 +1088,22 @@ int ContentMainRunnerImpl::Initialize(ContentMainParam +@@ -1088,10 +1103,22 @@ int ContentMainRunnerImpl::Initialize(ContentMainParam process_type == switches::kZygoteProcess) { PreSandboxInit(); } +#elif BUILDFLAG(IS_BSD) + PreSandboxInit(); #elif BUILDFLAG(IS_IOS) && !BUILDFLAG(IS_IOS_TVOS) ChildProcessEnterSandbox(); #endif +#if BUILDFLAG(IS_BSD) + if (process_type.empty()) { + sandbox::policy::SandboxLinux::Options sandbox_options; + sandbox::policy::SandboxLinux::GetInstance()->InitializeSandbox( + sandbox::policy::SandboxTypeFromCommandLine( + *base::CommandLine::ForCurrentProcess()), + sandbox::policy::SandboxLinux::PreSandboxHook(), sandbox_options); + } +#endif + delegate_->SandboxInitialized(process_type); #if BUILDFLAG(USE_ZYGOTE) -@@ -1176,6 +1203,11 @@ NO_STACK_PROTECTOR int ContentMainRunnerImpl::Run() { +@@ -1191,6 +1218,11 @@ NO_STACK_PROTECTOR int ContentMainRunnerImpl::Run() { content_main_params_.reset(); RegisterMainThreadFactories(); + +#if BUILDFLAG(IS_BSD) + if (!process_type.empty()) + PreSandboxInit(); +#endif if (process_type.empty()) return RunBrowser(std::move(main_params), start_minimal_browser); diff --git a/www/chromium/files/patch-content_browser_BUILD.gn b/www/chromium/files/patch-content_browser_BUILD.gn index bbd14b12b2c6..860783d4e1ec 100644 --- a/www/chromium/files/patch-content_browser_BUILD.gn +++ b/www/chromium/files/patch-content_browser_BUILD.gn @@ -1,33 +1,33 @@ ---- content/browser/BUILD.gn.orig 2025-07-02 06:08:04 UTC +--- content/browser/BUILD.gn.orig 2025-08-07 06:57:29 UTC +++ content/browser/BUILD.gn -@@ -2580,6 +2580,14 @@ source_set("browser") { +@@ -2581,6 +2581,14 @@ source_set("browser") { ] } + if (is_bsd) { + sources += [ + "file_system_access/file_path_watcher/file_path_watcher_bsd.cc", + "file_system_access/file_path_watcher/file_path_watcher_kqueue.cc", + "file_system_access/file_path_watcher/file_path_watcher_kqueue.h", + ] + } + if (is_linux || is_chromeos) { sources -= [ "file_system_access/file_path_watcher/file_path_watcher_stub.cc" ] -@@ -2628,6 +2636,15 @@ source_set("browser") { +@@ -2629,6 +2637,15 @@ source_set("browser") { if (allow_oop_video_decoder) { sources += [ "media/oop_video_decoder_factory.cc" ] deps += [ "//media/mojo/mojom" ] + } + + if (is_bsd) { + sources -= [ + "file_system_access/file_path_watcher/file_path_watcher_inotify.cc", + "file_system_access/file_path_watcher/file_path_watcher_inotify.h", + "sandbox_ipc_linux.cc", + "sandbox_ipc_linux.h", + ] } if (is_chromeos) { diff --git a/www/chromium/files/patch-content_browser_accessibility_browser__accessibility__state__impl.cc b/www/chromium/files/patch-content_browser_accessibility_browser__accessibility__state__impl.cc index 588100f05d65..cc760a7abf89 100644 --- a/www/chromium/files/patch-content_browser_accessibility_browser__accessibility__state__impl.cc +++ b/www/chromium/files/patch-content_browser_accessibility_browser__accessibility__state__impl.cc @@ -1,11 +1,11 @@ ---- content/browser/accessibility/browser_accessibility_state_impl.cc.orig 2025-07-02 06:08:04 UTC +--- content/browser/accessibility/browser_accessibility_state_impl.cc.orig 2025-08-07 06:57:29 UTC +++ content/browser/accessibility/browser_accessibility_state_impl.cc -@@ -278,7 +278,7 @@ BrowserAccessibilityStateImpl* BrowserAccessibilitySta +@@ -295,7 +295,7 @@ BrowserAccessibilityStateImpl* BrowserAccessibilitySta // On Android, Mac, Windows and Linux there are platform-specific subclasses. #if !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_WIN) && !BUILDFLAG(IS_MAC) && \ - !BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CHROMEOS) + !BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CHROMEOS) && !BUILDFLAG(IS_BSD) // static std::unique_ptr BrowserAccessibilityStateImpl::Create() { diff --git a/www/chromium/files/patch-content_browser_accessibility_browser__accessibility__state__impl__auralinux.cc b/www/chromium/files/patch-content_browser_accessibility_browser__accessibility__state__impl__auralinux.cc index aee5426cbcd1..d544a50dd897 100644 --- a/www/chromium/files/patch-content_browser_accessibility_browser__accessibility__state__impl__auralinux.cc +++ b/www/chromium/files/patch-content_browser_accessibility_browser__accessibility__state__impl__auralinux.cc @@ -1,33 +1,42 @@ ---- content/browser/accessibility/browser_accessibility_state_impl_auralinux.cc.orig 2025-07-02 06:08:04 UTC +--- content/browser/accessibility/browser_accessibility_state_impl_auralinux.cc.orig 2025-08-07 06:57:29 UTC +++ content/browser/accessibility/browser_accessibility_state_impl_auralinux.cc -@@ -33,7 +33,11 @@ bool CheckCmdlineForOrca(const std::string& cmdline_al +@@ -12,6 +12,8 @@ + #include + #include + ++#include "base/notimplemented.h" ++ + #include "base/debug/crash_logging.h" + #include "base/metrics/histogram_macros.h" + #include "base/task/thread_pool.h" +@@ -34,7 +36,11 @@ bool CheckCmdlineForOrca(const std::string& cmdline_al std::string cmdline; std::stringstream ss(cmdline_all); while (std::getline(ss, cmdline, '\0')) { +#if BUILDFLAG(IS_BSD) + re2::RE2 orca_regex(R"((^|/)(usr/)?(local/)?bin/orca(\s|$))"); +#else re2::RE2 orca_regex(R"((^|/)(usr/)?bin/orca(\s|$))"); +#endif if (re2::RE2::PartialMatch(cmdline, orca_regex)) { return true; // Orca was found } -@@ -43,6 +47,10 @@ bool CheckCmdlineForOrca(const std::string& cmdline_al +@@ -44,6 +50,10 @@ bool CheckCmdlineForOrca(const std::string& cmdline_al // Returns true if Orca is active. bool DiscoverOrca() { +#if BUILDFLAG(IS_BSD) + NOTIMPLEMENTED(); + return false; +#else // NOTE: this method is run from another thread to reduce jank, since // there's no guarantee these system calls will return quickly. std::unique_ptr proc_dir(opendir("/proc"), -@@ -80,6 +88,7 @@ bool DiscoverOrca() { +@@ -81,6 +91,7 @@ bool DiscoverOrca() { } return is_orca_active; +#endif } } // namespace diff --git a/www/chromium/files/patch-content_browser_browser__main__loop.cc b/www/chromium/files/patch-content_browser_browser__main__loop.cc index d282cb37b42f..585fa0055c2f 100644 --- a/www/chromium/files/patch-content_browser_browser__main__loop.cc +++ b/www/chromium/files/patch-content_browser_browser__main__loop.cc @@ -1,37 +1,37 @@ ---- content/browser/browser_main_loop.cc.orig 2025-05-05 10:57:53 UTC +--- content/browser/browser_main_loop.cc.orig 2025-08-07 06:57:29 UTC +++ content/browser/browser_main_loop.cc -@@ -249,6 +249,12 @@ +@@ -250,6 +250,12 @@ #include "mojo/public/cpp/bindings/lib/test_random_mojo_delays.h" #endif +#if BUILDFLAG(IS_BSD) +#include "content/browser/sandbox_host_linux.h" +#include "content/public/common/zygote/sandbox_support_linux.h" +#include "sandbox/policy/sandbox.h" +#endif + // One of the linux specific headers defines this as a macro. #ifdef DestroyAll #undef DestroyAll -@@ -543,6 +549,12 @@ int BrowserMainLoop::EarlyInitialization() { +@@ -550,6 +556,12 @@ int BrowserMainLoop::EarlyInitialization() { // by now since a thread to start the ServiceManager has been created // before the browser main loop starts. DCHECK(SandboxHostLinux::GetInstance()->IsInitialized()); +#elif BUILDFLAG(IS_BSD) + base::FileHandleMappingVector additional_remapped_fds; + base::LaunchOptions options; + SandboxHostLinux::GetInstance()->Init(); + const int sfd = SandboxHostLinux::GetInstance()->GetChildSocket(); + options.fds_to_remap.push_back(std::make_pair(sfd, GetSandboxFD())); #endif // GLib's spawning of new processes is buggy, so it's important that at this -@@ -575,7 +587,7 @@ int BrowserMainLoop::EarlyInitialization() { +@@ -582,7 +594,7 @@ int BrowserMainLoop::EarlyInitialization() { base::ThreadType::kDisplayCritical); #if BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ - BUILDFLAG(IS_ANDROID) + BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) // We use quite a few file descriptors for our IPC as well as disk the disk // cache, and the default limit on Apple is low (256), so bump it up. diff --git a/www/chromium/files/patch-content_browser_child__thread__type__switcher__linux.cc b/www/chromium/files/patch-content_browser_child__thread__type__switcher__linux.cc index b1bee9932493..6de60375f27b 100644 --- a/www/chromium/files/patch-content_browser_child__thread__type__switcher__linux.cc +++ b/www/chromium/files/patch-content_browser_child__thread__type__switcher__linux.cc @@ -1,29 +1,37 @@ ---- content/browser/child_thread_type_switcher_linux.cc.orig 2025-04-04 08:52:13 UTC +--- content/browser/child_thread_type_switcher_linux.cc.orig 2025-08-07 06:57:29 UTC +++ content/browser/child_thread_type_switcher_linux.cc -@@ -20,6 +20,9 @@ void SetThreadTypeOnLauncherThread(base::ProcessId pee +@@ -6,6 +6,7 @@ + + #include "base/linux_util.h" + #include "base/logging.h" ++#include "base/notimplemented.h" + #include "base/process/process_handle.h" + #include "base/task/single_thread_task_runner.h" + #include "base/threading/platform_thread.h" +@@ -20,6 +21,9 @@ void SetThreadTypeOnLauncherThread(base::ProcessId pee base::ThreadType thread_type) { DCHECK(CurrentlyOnProcessLauncherTaskRunner()); +#if BUILDFLAG(IS_BSD) + NOTIMPLEMENTED(); +#else bool ns_pid_supported = false; pid_t peer_tid = base::FindThreadID(peer_pid, ns_tid.raw(), &ns_pid_supported); -@@ -41,6 +44,7 @@ void SetThreadTypeOnLauncherThread(base::ProcessId pee +@@ -42,6 +46,7 @@ void SetThreadTypeOnLauncherThread(base::ProcessId pee base::PlatformThread::SetThreadType(peer_pid, base::PlatformThreadId(peer_tid), thread_type, base::IsViaIPC(true)); +#endif } } // namespace -@@ -69,7 +73,7 @@ void ChildThreadTypeSwitcher::SetPid(base::ProcessId c +@@ -70,7 +75,7 @@ void ChildThreadTypeSwitcher::SetPid(base::ProcessId c } } -void ChildThreadTypeSwitcher::SetThreadType(int32_t ns_tid, +void ChildThreadTypeSwitcher::SetThreadType(uint64_t ns_tid, base::ThreadType thread_type) { // This function is only used on platforms with 32-bit thread ids. static_assert(sizeof(ns_tid) == sizeof(base::PlatformThreadId)); diff --git a/www/chromium/files/patch-content_browser_devtools_devtools__frontend__host__impl.cc b/www/chromium/files/patch-content_browser_devtools_devtools__frontend__host__impl.cc index 5897c47eb11c..e57322daa824 100644 --- a/www/chromium/files/patch-content_browser_devtools_devtools__frontend__host__impl.cc +++ b/www/chromium/files/patch-content_browser_devtools_devtools__frontend__host__impl.cc @@ -1,38 +1,38 @@ ---- content/browser/devtools/devtools_frontend_host_impl.cc.orig 2025-02-19 07:43:18 UTC +--- content/browser/devtools/devtools_frontend_host_impl.cc.orig 2025-08-07 06:57:29 UTC +++ content/browser/devtools/devtools_frontend_host_impl.cc -@@ -24,7 +24,7 @@ +@@ -25,7 +25,7 @@ #include "third_party/blink/public/common/associated_interfaces/associated_interface_provider.h" #include "ui/base/webui/resource_path.h" -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "components/crash/content/browser/error_reporting/javascript_error_report.h" // nogncheck #include "components/crash/content/browser/error_reporting/js_error_report_processor.h" // nogncheck #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -@@ -36,7 +36,7 @@ const char kCompatibilityScriptSourceURL[] = +@@ -37,7 +37,7 @@ const char kCompatibilityScriptSourceURL[] = "\n//# " "sourceURL=devtools://devtools/bundled/devtools_compatibility.js"; -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Remove the pieces of the URL we don't want to send back with the error // reports. In particular, do not send query or fragments as those can have // privacy-sensitive information in them. -@@ -106,7 +106,7 @@ DevToolsFrontendHostImpl::DevToolsFrontendHostImpl( +@@ -107,7 +107,7 @@ DevToolsFrontendHostImpl::DevToolsFrontendHostImpl( const HandleMessageCallback& handle_message_callback) : web_contents_(WebContents::FromRenderFrameHost(frame_host)), handle_message_callback_(handle_message_callback) { -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) Observe(web_contents_); #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) mojo::AssociatedRemote frontend; -@@ -131,7 +131,7 @@ void DevToolsFrontendHostImpl::DispatchEmbedderMessage +@@ -132,7 +132,7 @@ void DevToolsFrontendHostImpl::DispatchEmbedderMessage handle_message_callback_.Run(std::move(message)); } -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) void DevToolsFrontendHostImpl::OnDidAddMessageToConsole( RenderFrameHost* source_frame, blink::mojom::ConsoleMessageLevel log_level, diff --git a/www/chromium/files/patch-content_browser_gpu_gpu__data__manager__impl__private.cc b/www/chromium/files/patch-content_browser_gpu_gpu__data__manager__impl__private.cc index 6a3bf2832a78..388892949a45 100644 --- a/www/chromium/files/patch-content_browser_gpu_gpu__data__manager__impl__private.cc +++ b/www/chromium/files/patch-content_browser_gpu_gpu__data__manager__impl__private.cc @@ -1,11 +1,11 @@ ---- content/browser/gpu/gpu_data_manager_impl_private.cc.orig 2025-07-02 06:08:04 UTC +--- content/browser/gpu/gpu_data_manager_impl_private.cc.orig 2025-08-07 06:57:29 UTC +++ content/browser/gpu/gpu_data_manager_impl_private.cc -@@ -1696,7 +1696,7 @@ void GpuDataManagerImplPrivate::RecordCompositingMode( +@@ -1703,7 +1703,7 @@ void GpuDataManagerImplPrivate::RecordCompositingMode( UMA_HISTOGRAM_ENUMERATION("GPU.CompositingMode", compositing_mode); } -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) bool GpuDataManagerImplPrivate::IsGpuMemoryBufferNV12Supported() { return gpu_extra_info_.is_gmb_nv12_supported; } diff --git a/www/chromium/files/patch-content_browser_renderer__host_delegated__frame__host.cc b/www/chromium/files/patch-content_browser_renderer__host_delegated__frame__host.cc index 8acfad0fb7eb..cca63591cbc5 100644 --- a/www/chromium/files/patch-content_browser_renderer__host_delegated__frame__host.cc +++ b/www/chromium/files/patch-content_browser_renderer__host_delegated__frame__host.cc @@ -1,11 +1,11 @@ ---- content/browser/renderer_host/delegated_frame_host.cc.orig 2025-05-05 10:57:53 UTC +--- content/browser/renderer_host/delegated_frame_host.cc.orig 2025-08-07 06:57:29 UTC +++ content/browser/renderer_host/delegated_frame_host.cc -@@ -333,7 +333,7 @@ void DelegatedFrameHost::EmbedSurface( +@@ -334,7 +334,7 @@ void DelegatedFrameHost::EmbedSurface( if (!primary_surface_id || primary_surface_id->local_surface_id() != local_surface_id_) { -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // On Windows and Linux, we would like to produce new content as soon as // possible or the OS will create an additional black gutter. Until we can // block resize on surface synchronization on these platforms, we will not diff --git a/www/chromium/files/patch-content_browser_renderer__host_render__process__host__impl.cc b/www/chromium/files/patch-content_browser_renderer__host_render__process__host__impl.cc index d095f6398b2d..34d889ce90a9 100644 --- a/www/chromium/files/patch-content_browser_renderer__host_render__process__host__impl.cc +++ b/www/chromium/files/patch-content_browser_renderer__host_render__process__host__impl.cc @@ -1,55 +1,55 @@ ---- content/browser/renderer_host/render_process_host_impl.cc.orig 2025-07-02 06:08:04 UTC +--- content/browser/renderer_host/render_process_host_impl.cc.orig 2025-08-07 06:57:29 UTC +++ content/browser/renderer_host/render_process_host_impl.cc -@@ -222,7 +222,7 @@ +@@ -223,7 +223,7 @@ #include "third_party/blink/public/mojom/android_font_lookup/android_font_lookup.mojom.h" #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include #include "components/services/font/public/mojom/font_service.mojom.h" // nogncheck -@@ -1126,7 +1126,7 @@ static constexpr size_t kUnknownPlatformProcessLimit = +@@ -1127,7 +1127,7 @@ static constexpr size_t kUnknownPlatformProcessLimit = // to indicate failure and std::numeric_limits::max() to indicate // unlimited. size_t GetPlatformProcessLimit() { -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) struct rlimit limit; if (getrlimit(RLIMIT_NPROC, &limit) != 0) return kUnknownPlatformProcessLimit; -@@ -1333,7 +1333,7 @@ RenderProcessHostImpl::IOThreadHostImpl::~IOThreadHost +@@ -1334,7 +1334,7 @@ RenderProcessHostImpl::IOThreadHostImpl::~IOThreadHost void RenderProcessHostImpl::IOThreadHostImpl::SetPid( base::ProcessId child_pid) { -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) child_thread_type_switcher_.SetPid(child_pid); #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) } -@@ -3426,7 +3426,7 @@ void RenderProcessHostImpl::AppendRendererCommandLine( +@@ -3436,7 +3436,7 @@ void RenderProcessHostImpl::AppendRendererCommandLine( base::TimeTicks::UnixEpoch().since_origin().InMicroseconds())); } -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Append `kDisableVideoCaptureUseGpuMemoryBuffer` flag if there is no support // for NV12 GPU memory buffer. if (switches::IsVideoCaptureUseGpuMemoryBufferEnabled() && -@@ -3480,6 +3480,7 @@ void RenderProcessHostImpl::PropagateBrowserCommandLin +@@ -3491,6 +3491,7 @@ void RenderProcessHostImpl::PropagateBrowserCommandLin switches::kDisableSkiaRuntimeOpts, switches::kDisableSpeechAPI, switches::kDisableThreadedCompositing, + switches::kDisableUnveil, switches::kDisableV8IdleTasks, switches::kDisableVideoCaptureUseGpuMemoryBuffer, switches::kDisableWebGLImageChromium, -@@ -5329,7 +5330,7 @@ uint64_t RenderProcessHostImpl::GetPrivateMemoryFootpr +@@ -5339,7 +5340,7 @@ uint64_t RenderProcessHostImpl::GetPrivateMemoryFootpr // - Win: https://crbug.com/707022 . uint64_t total_size = 0; #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || \ - BUILDFLAG(IS_FUCHSIA) + BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) total_size = dump->platform_private_footprint->rss_anon_bytes + dump->platform_private_footprint->vm_swap_bytes; #elif BUILDFLAG(IS_APPLE) diff --git a/www/chromium/files/patch-content_browser_renderer__host_render__process__host__impl.h b/www/chromium/files/patch-content_browser_renderer__host_render__process__host__impl.h index 131fa6beb0c6..f6add77fe581 100644 --- a/www/chromium/files/patch-content_browser_renderer__host_render__process__host__impl.h +++ b/www/chromium/files/patch-content_browser_renderer__host_render__process__host__impl.h @@ -1,29 +1,29 @@ ---- content/browser/renderer_host/render_process_host_impl.h.orig 2025-07-02 06:08:04 UTC +--- content/browser/renderer_host/render_process_host_impl.h.orig 2025-08-07 06:57:29 UTC +++ content/browser/renderer_host/render_process_host_impl.h @@ -101,7 +101,7 @@ #include "media/fuchsia_media_codec_provider_impl.h" #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "content/browser/child_thread_type_switcher_linux.h" #include "media/mojo/mojom/video_encode_accelerator.mojom.h" #endif -@@ -995,7 +995,7 @@ class CONTENT_EXPORT RenderProcessHostImpl +@@ -996,7 +996,7 @@ class CONTENT_EXPORT RenderProcessHostImpl mojo::Remote video_encode_accelerator_factory_remote_; #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) ChildThreadTypeSwitcher child_thread_type_switcher_; #endif }; -@@ -1238,7 +1238,7 @@ class CONTENT_EXPORT RenderProcessHostImpl +@@ -1239,7 +1239,7 @@ class CONTENT_EXPORT RenderProcessHostImpl // if the request isn't handled on the IO thread. void OnBindHostReceiver(mojo::GenericPendingReceiver receiver); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Provides /proc/{renderer pid}/status and statm files for the renderer, // because the files are required to calculate the renderer's private // footprint on Chromium Linux. Regarding MacOS X and Windows, we have diff --git a/www/chromium/files/patch-content_browser_renderer__host_render__widget__host__view__aura.cc b/www/chromium/files/patch-content_browser_renderer__host_render__widget__host__view__aura.cc index 1b7d1a082985..447262e51fea 100644 --- a/www/chromium/files/patch-content_browser_renderer__host_render__widget__host__view__aura.cc +++ b/www/chromium/files/patch-content_browser_renderer__host_render__widget__host__view__aura.cc @@ -1,47 +1,47 @@ ---- content/browser/renderer_host/render_widget_host_view_aura.cc.orig 2025-05-05 10:57:53 UTC +--- content/browser/renderer_host/render_widget_host_view_aura.cc.orig 2025-08-07 06:57:29 UTC +++ content/browser/renderer_host/render_widget_host_view_aura.cc -@@ -121,7 +121,7 @@ +@@ -122,7 +122,7 @@ #include "ui/gfx/gdi_util.h" #endif // BUILDFLAG(IS_WIN) -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "ui/accessibility/platform/browser_accessibility_auralinux.h" #include "ui/base/ime/linux/text_edit_command_auralinux.h" #include "ui/base/ime/text_input_flags.h" -@@ -478,7 +478,7 @@ gfx::NativeViewAccessible RenderWidgetHostViewAura::Ge +@@ -479,7 +479,7 @@ gfx::NativeViewAccessible RenderWidgetHostViewAura::Ge return ToBrowserAccessibilityWin(manager->GetBrowserAccessibilityRoot()) ->GetCOM(); -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) ui::BrowserAccessibilityManager* manager = host()->GetOrCreateRootBrowserAccessibilityManager(); if (manager && manager->GetBrowserAccessibilityRoot()) -@@ -1882,7 +1882,7 @@ bool RenderWidgetHostViewAura::ShouldDoLearning() { +@@ -1883,7 +1883,7 @@ bool RenderWidgetHostViewAura::ShouldDoLearning() { return host() && host()->delegate() && host()->delegate()->ShouldDoLearning(); } -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) bool RenderWidgetHostViewAura::SetCompositionFromExistingText( const gfx::Range& range, const std::vector& ui_ime_text_spans) { -@@ -2858,7 +2858,7 @@ bool RenderWidgetHostViewAura::NeedsInputGrab() { +@@ -2859,7 +2859,7 @@ bool RenderWidgetHostViewAura::NeedsInputGrab() { } bool RenderWidgetHostViewAura::NeedsMouseCapture() { -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) return NeedsInputGrab(); #else return false; -@@ -3042,7 +3042,7 @@ void RenderWidgetHostViewAura::ForwardKeyboardEventWit +@@ -3043,7 +3043,7 @@ void RenderWidgetHostViewAura::ForwardKeyboardEventWit if (!target_host) return; -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) auto* linux_ui = ui::LinuxUi::instance(); if (!event.skip_if_unhandled && linux_ui && event.os_event) { const auto command = linux_ui->GetTextEditCommandForEvent( diff --git a/www/chromium/files/patch-content_browser_renderer__host_render__widget__host__view__event__handler.cc b/www/chromium/files/patch-content_browser_renderer__host_render__widget__host__view__event__handler.cc index c910ef23142c..e96650ca22ad 100644 --- a/www/chromium/files/patch-content_browser_renderer__host_render__widget__host__view__event__handler.cc +++ b/www/chromium/files/patch-content_browser_renderer__host_render__widget__host__view__event__handler.cc @@ -1,11 +1,11 @@ ---- content/browser/renderer_host/render_widget_host_view_event_handler.cc.orig 2024-08-26 12:06:38 UTC +--- content/browser/renderer_host/render_widget_host_view_event_handler.cc.orig 2025-08-07 06:57:29 UTC +++ content/browser/renderer_host/render_widget_host_view_event_handler.cc -@@ -602,7 +602,7 @@ bool RenderWidgetHostViewEventHandler::CanRendererHand +@@ -603,7 +603,7 @@ bool RenderWidgetHostViewEventHandler::CanRendererHand if (event->type() == ui::EventType::kMouseExited) { if (mouse_locked || selection_popup) return false; -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Don't forward the mouse leave message which is received when the context // menu is displayed by the page. This confuses the page and causes state // changes. diff --git a/www/chromium/files/patch-content_browser_v8__snapshot__files.cc b/www/chromium/files/patch-content_browser_v8__snapshot__files.cc index 3c2290a9ecae..d40e2f21241d 100644 --- a/www/chromium/files/patch-content_browser_v8__snapshot__files.cc +++ b/www/chromium/files/patch-content_browser_v8__snapshot__files.cc @@ -1,11 +1,11 @@ ---- content/browser/v8_snapshot_files.cc.orig 2025-05-05 10:57:53 UTC +--- content/browser/v8_snapshot_files.cc.orig 2025-08-07 06:57:29 UTC +++ content/browser/v8_snapshot_files.cc -@@ -19,7 +19,7 @@ namespace content { +@@ -35,7 +35,7 @@ void registerContextSnapshotAndroid( std::map> GetV8SnapshotFilesToPreload(base::CommandLine& process_command_line) { std::map> files; -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #if BUILDFLAG(USE_V8_CONTEXT_SNAPSHOT) files[kV8ContextSnapshotDataDescriptor] = base::FilePath( FILE_PATH_LITERAL(BUILDFLAG(V8_CONTEXT_SNAPSHOT_FILENAME))); diff --git a/www/chromium/files/patch-content_browser_web__contents_web__contents__view__aura.cc b/www/chromium/files/patch-content_browser_web__contents_web__contents__view__aura.cc index e5fd544f24da..b0652b4816a1 100644 --- a/www/chromium/files/patch-content_browser_web__contents_web__contents__view__aura.cc +++ b/www/chromium/files/patch-content_browser_web__contents_web__contents__view__aura.cc @@ -1,29 +1,29 @@ ---- content/browser/web_contents/web_contents_view_aura.cc.orig 2025-03-05 08:14:56 UTC +--- content/browser/web_contents/web_contents_view_aura.cc.orig 2025-08-07 06:57:29 UTC +++ content/browser/web_contents/web_contents_view_aura.cc -@@ -173,7 +173,7 @@ class WebDragSourceAura : public content::WebContentsO +@@ -174,7 +174,7 @@ class WebDragSourceAura : public content::WebContentsO raw_ptr window_; }; -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) // Fill out the OSExchangeData with a file contents, synthesizing a name if // necessary. void PrepareDragForFileContents(const DropData& drop_data, -@@ -258,7 +258,7 @@ void PrepareDragData(const DropData& drop_data, +@@ -259,7 +259,7 @@ void PrepareDragData(const DropData& drop_data, if (!drop_data.download_metadata.empty()) PrepareDragForDownload(drop_data, provider, web_contents); #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) // We set the file contents before the URL because the URL also sets file // contents (to a .URL shortcut). We want to prefer file content data over // a shortcut so we add it first. -@@ -1327,7 +1327,7 @@ void WebContentsViewAura::OnMouseEvent(ui::MouseEvent* +@@ -1325,7 +1325,7 @@ void WebContentsViewAura::OnMouseEvent(ui::MouseEvent* // Linux window managers like to handle raise-on-click themselves. If we // raise-on-click manually, this may override user settings that prevent // focus-stealing. -#if !BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CHROMEOS) +#if !BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CHROMEOS) && !BUILDFLAG(IS_BSD) // It is possible for the web-contents to be destroyed while it is being // activated. Use a weak-ptr to track whether that happened or not. // More in https://crbug.com/1040725 diff --git a/www/chromium/files/patch-content_common_BUILD.gn b/www/chromium/files/patch-content_common_BUILD.gn index f81cb7852507..0966e727f322 100644 --- a/www/chromium/files/patch-content_common_BUILD.gn +++ b/www/chromium/files/patch-content_common_BUILD.gn @@ -1,36 +1,36 @@ ---- content/common/BUILD.gn.orig 2025-05-05 10:57:53 UTC +--- content/common/BUILD.gn.orig 2025-08-07 06:57:29 UTC +++ content/common/BUILD.gn -@@ -382,19 +382,28 @@ source_set("common") { +@@ -381,19 +381,28 @@ source_set("common") { } if (is_linux || is_chromeos) { - sources += [ - "gpu_pre_sandbox_hook_linux.cc", - "gpu_pre_sandbox_hook_linux.h", - ] + if (is_bsd) { + sources += [ + "gpu_pre_sandbox_hook_bsd.cc", + "gpu_pre_sandbox_hook_bsd.h", + ] + } else { + sources += [ + "gpu_pre_sandbox_hook_linux.cc", + "gpu_pre_sandbox_hook_linux.h", + ] + } public_deps += [ "//sandbox/policy" ] deps += [ ":sandbox_support_linux", "//media/gpu:buildflags", "//sandbox/linux:sandbox_services", - "//sandbox/linux:seccomp_bpf", "//sandbox/policy:chromecast_sandbox_allowlist_buildflags", "//third_party/fontconfig", ] + if (use_seccomp_bpf) { + deps += [ "//sandbox/linux:seccomp_bpf" ] + } if (use_v4l2_codec) { deps += [ "//media/gpu/v4l2" ] } diff --git a/www/chromium/files/patch-content_common_features.cc b/www/chromium/files/patch-content_common_features.cc index 9ec523b4f515..1d65558bb020 100644 --- a/www/chromium/files/patch-content_common_features.cc +++ b/www/chromium/files/patch-content_common_features.cc @@ -1,11 +1,11 @@ ---- content/common/features.cc.orig 2025-07-02 06:08:04 UTC +--- content/common/features.cc.orig 2025-08-07 06:57:29 UTC +++ content/common/features.cc -@@ -170,7 +170,7 @@ BASE_FEATURE(kEmbeddingRequiresOptIn, +@@ -169,7 +169,7 @@ BASE_FEATURE(kEmbeddingRequiresOptIn, base::FEATURE_DISABLED_BY_DEFAULT); // Enables error reporting for JS errors inside DevTools frontend host -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) BASE_FEATURE(kEnableDevToolsJsErrorReporting, "EnableDevToolsJsErrorReporting", base::FEATURE_DISABLED_BY_DEFAULT); diff --git a/www/chromium/files/patch-content_gpu_gpu__main.cc b/www/chromium/files/patch-content_gpu_gpu__main.cc index 90a517be3aab..c3c11eef0c4b 100644 --- a/www/chromium/files/patch-content_gpu_gpu__main.cc +++ b/www/chromium/files/patch-content_gpu_gpu__main.cc @@ -1,73 +1,73 @@ ---- content/gpu/gpu_main.cc.orig 2025-07-02 06:08:04 UTC +--- content/gpu/gpu_main.cc.orig 2025-08-07 06:57:29 UTC +++ content/gpu/gpu_main.cc -@@ -105,10 +105,14 @@ +@@ -103,10 +103,14 @@ #include "sandbox/win/src/sandbox.h" #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "content/child/sandboxed_process_thread_type_handler.h" #include "content/common/gpu_pre_sandbox_hook_linux.h" +#if BUILDFLAG(IS_BSD) +#include "sandbox/policy/sandbox.h" +#else #include "sandbox/policy/linux/sandbox_linux.h" +#endif #include "sandbox/policy/sandbox_type.h" #endif -@@ -126,7 +130,7 @@ namespace content { +@@ -124,7 +128,7 @@ namespace content { namespace { -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) bool StartSandboxLinux(gpu::GpuWatchdogThread*, const gpu::GPUInfo*, const gpu::GpuPreferences&); -@@ -188,7 +192,7 @@ class ContentSandboxHelper : public gpu::GpuSandboxHel +@@ -186,7 +190,7 @@ class ContentSandboxHelper : public gpu::GpuSandboxHel const gpu::GPUInfo* gpu_info, const gpu::GpuPreferences& gpu_prefs) override { - GPU_STARTUP_TRACE_EVENT("gpu_main::EnsureSandboxInitialized"); + TRACE_EVENT("gpu,startup", "gpu_main::EnsureSandboxInitialized"); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) return StartSandboxLinux(watchdog_thread, gpu_info, gpu_prefs); #elif BUILDFLAG(IS_WIN) return StartSandboxWindows(sandbox_info_); -@@ -304,7 +308,7 @@ int GpuMain(MainFunctionParams parameters) { +@@ -302,7 +306,7 @@ int GpuMain(MainFunctionParams parameters) { std::make_unique( gpu_preferences.message_pump_type); } -#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #error "Unsupported Linux platform." #elif BUILDFLAG(IS_MAC) // Cross-process CoreAnimation requires a CFRunLoop to function at all, and -@@ -329,7 +333,8 @@ int GpuMain(MainFunctionParams parameters) { +@@ -327,7 +331,8 @@ int GpuMain(MainFunctionParams parameters) { base::PlatformThread::SetName("CrGpuMain"); mojo::InterfaceEndpointClient::SetThreadNameSuffixForMetrics("GpuMain"); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +// XXX BSD +#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)) && !BUILDFLAG(IS_BSD) // Thread type delegate of the process should be registered before // thread type change below for the main thread and for thread pool in // ChildProcess constructor. -@@ -461,7 +466,7 @@ int GpuMain(MainFunctionParams parameters) { +@@ -459,7 +464,7 @@ int GpuMain(MainFunctionParams parameters) { namespace { -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) bool StartSandboxLinux(gpu::GpuWatchdogThread* watchdog_thread, const gpu::GPUInfo* gpu_info, const gpu::GpuPreferences& gpu_prefs) { -@@ -509,7 +514,7 @@ bool StartSandboxLinux(gpu::GpuWatchdogThread* watchdo +@@ -507,7 +512,7 @@ bool StartSandboxLinux(gpu::GpuWatchdogThread* watchdo sandbox_options.accelerated_video_encode_enabled = !gpu_prefs.disable_accelerated_video_encode; -#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Video decoding of many video streams can use thousands of FDs as well as // Exo clients. // See https://crbug.com/1417237 diff --git a/www/chromium/files/patch-content_public_browser_content__browser__client.cc b/www/chromium/files/patch-content_public_browser_content__browser__client.cc index 2ed8ac354006..c5bf79ebe1c3 100644 --- a/www/chromium/files/patch-content_public_browser_content__browser__client.cc +++ b/www/chromium/files/patch-content_public_browser_content__browser__client.cc @@ -1,11 +1,11 @@ ---- content/public/browser/content_browser_client.cc.orig 2025-07-02 06:08:04 UTC +--- content/public/browser/content_browser_client.cc.orig 2025-08-07 06:57:29 UTC +++ content/public/browser/content_browser_client.cc -@@ -1418,7 +1418,7 @@ bool ContentBrowserClient::ShouldRunOutOfProcessSystem +@@ -1429,7 +1429,7 @@ bool ContentBrowserClient::ShouldRunOutOfProcessSystem // that can be adequately sandboxed. // Currently Android's network service will not run out of process or sandboxed, // so OutOfProcessSystemDnsResolution is not currently enabled on Android. -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) return true; #else return false; diff --git a/www/chromium/files/patch-content_public_common_content__features.cc b/www/chromium/files/patch-content_public_common_content__features.cc index 2b7639e3f7f8..41a7264e9a70 100644 --- a/www/chromium/files/patch-content_public_common_content__features.cc +++ b/www/chromium/files/patch-content_public_common_content__features.cc @@ -1,35 +1,35 @@ ---- content/public/common/content_features.cc.orig 2025-07-02 06:08:04 UTC +--- content/public/common/content_features.cc.orig 2025-08-07 06:57:29 UTC +++ content/public/common/content_features.cc -@@ -87,7 +87,7 @@ BASE_FEATURE(kAudioServiceLaunchOnStartup, +@@ -91,7 +91,7 @@ BASE_FEATURE(kAudioServiceLaunchOnStartup, // Runs the audio service in a separate process. BASE_FEATURE(kAudioServiceOutOfProcess, "AudioServiceOutOfProcess", -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) base::FEATURE_ENABLED_BY_DEFAULT #else base::FEATURE_DISABLED_BY_DEFAULT -@@ -1268,9 +1268,9 @@ BASE_FEATURE(kWebAssemblyTiering, +@@ -1319,9 +1319,9 @@ BASE_FEATURE(kWebAssemblyTiering, BASE_FEATURE(kWebAssemblyTrapHandler, "WebAssemblyTrapHandler", #if ((BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_WIN) || \ - BUILDFLAG(IS_MAC)) && \ + BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD)) && \ defined(ARCH_CPU_X86_64)) || \ - ((BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC)) && \ + ((BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD)) && \ defined(ARCH_CPU_ARM64)) base::FEATURE_ENABLED_BY_DEFAULT #else -@@ -1327,7 +1327,11 @@ BASE_FEATURE(kWebUIJSErrorReportingExtended, +@@ -1381,7 +1381,11 @@ BASE_FEATURE(kWebUIJSErrorReportingExtended, // Controls whether the WebUSB API is enabled: // https://wicg.github.io/webusb +#if BUILDFLAG(IS_BSD) +BASE_FEATURE(kWebUsb, "WebUSB", base::FEATURE_DISABLED_BY_DEFAULT); +#else BASE_FEATURE(kWebUsb, "WebUSB", base::FEATURE_ENABLED_BY_DEFAULT); +#endif - // Controls whether the WebXR Device API is enabled. - BASE_FEATURE(kWebXr, "WebXR", base::FEATURE_ENABLED_BY_DEFAULT); + // Apply `PrefetchPriority::kHighest` for Webview Prefetch API. + BASE_FEATURE(kWebViewPrefetchHighestPrefetchPriority, diff --git a/www/chromium/files/patch-content_public_common_content__switches.cc b/www/chromium/files/patch-content_public_common_content__switches.cc index 41276ee15739..50e6523eed32 100644 --- a/www/chromium/files/patch-content_public_common_content__switches.cc +++ b/www/chromium/files/patch-content_public_common_content__switches.cc @@ -1,20 +1,20 @@ ---- content/public/common/content_switches.cc.orig 2025-05-28 14:55:43 UTC +--- content/public/common/content_switches.cc.orig 2025-08-07 06:57:29 UTC +++ content/public/common/content_switches.cc @@ -345,6 +345,8 @@ const char kEnableIsolatedWebAppsInRenderer[] = // builds. const char kEnableLogging[] = "enable-logging"; +const char kDisableUnveil[] = "disable-unveil"; + // Enables the type, downlinkMax attributes of the NetInfo API. Also, enables // triggering of change attribute of the NetInfo API when there is a change in // the connection type. -@@ -952,7 +954,7 @@ const char kPreventResizingContentsForTesting[] = +@@ -958,7 +960,7 @@ const char kPreventResizingContentsForTesting[] = "prevent-resizing-contents-for-testing"; #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Allows sending text-to-speech requests to speech-dispatcher, a common // Linux speech service. Because it's buggy, the user must explicitly // enable it so that visiting a random webpage can't cause instability. diff --git a/www/chromium/files/patch-content_public_common_content__switches.h b/www/chromium/files/patch-content_public_common_content__switches.h index b70d16bb9102..7968e8989cd1 100644 --- a/www/chromium/files/patch-content_public_common_content__switches.h +++ b/www/chromium/files/patch-content_public_common_content__switches.h @@ -1,19 +1,19 @@ ---- content/public/common/content_switches.h.orig 2025-05-28 14:55:43 UTC +--- content/public/common/content_switches.h.orig 2025-08-07 06:57:29 UTC +++ content/public/common/content_switches.h @@ -108,6 +108,7 @@ CONTENT_EXPORT extern const char kEnableGpuMemoryBuffe CONTENT_EXPORT extern const char kEnableIsolatedWebAppsInRenderer[]; CONTENT_EXPORT extern const char kEnableLCDText[]; CONTENT_EXPORT extern const char kEnableLogging[]; +CONTENT_EXPORT extern const char kDisableUnveil[]; CONTENT_EXPORT extern const char kEnableNetworkInformationDownlinkMax[]; CONTENT_EXPORT extern const char kEnableCanvas2DLayers[]; CONTENT_EXPORT extern const char kEnablePluginPlaceholderTesting[]; -@@ -259,7 +260,7 @@ CONTENT_EXPORT extern const char kRendererWaitForJavaD +@@ -261,7 +262,7 @@ CONTENT_EXPORT extern const char kRendererWaitForJavaD CONTENT_EXPORT extern const char kPreventResizingContentsForTesting[]; #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) CONTENT_EXPORT extern const char kEnableSpeechDispatcher[]; #endif diff --git a/www/chromium/files/patch-content_renderer_render__thread__impl.cc b/www/chromium/files/patch-content_renderer_render__thread__impl.cc index 5c2470edebc0..f11e95517d8b 100644 --- a/www/chromium/files/patch-content_renderer_render__thread__impl.cc +++ b/www/chromium/files/patch-content_renderer_render__thread__impl.cc @@ -1,38 +1,38 @@ ---- content/renderer/render_thread_impl.cc.orig 2025-07-02 06:08:04 UTC +--- content/renderer/render_thread_impl.cc.orig 2025-08-07 06:57:29 UTC +++ content/renderer/render_thread_impl.cc @@ -204,6 +204,8 @@ #if BUILDFLAG(IS_APPLE) #include +#elif BUILDFLAG(IS_BSD) +#include #else #include #endif -@@ -1066,7 +1068,7 @@ media::GpuVideoAcceleratorFactories* RenderThreadImpl: +@@ -1061,7 +1063,7 @@ media::GpuVideoAcceleratorFactories* RenderThreadImpl: kGpuStreamIdMedia, kGpuStreamPriorityMedia); const bool enable_video_decode_accelerator = -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) base::FeatureList::IsEnabled(media::kAcceleratedVideoDecodeLinux) && #endif // BUILDFLAG(IS_LINUX) !cmd_line->HasSwitch(switches::kDisableAcceleratedVideoDecode) && -@@ -1075,7 +1077,7 @@ media::GpuVideoAcceleratorFactories* RenderThreadImpl: +@@ -1070,7 +1072,7 @@ media::GpuVideoAcceleratorFactories* RenderThreadImpl: gpu::kGpuFeatureStatusEnabled); const bool enable_video_encode_accelerator = -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) base::FeatureList::IsEnabled(media::kAcceleratedVideoEncodeLinux) && #else !cmd_line->HasSwitch(switches::kDisableAcceleratedVideoEncode) && -@@ -1850,7 +1852,7 @@ RenderThreadImpl::CreateMediaMojoCodecFactory( +@@ -1845,7 +1847,7 @@ RenderThreadImpl::CreateMediaMojoCodecFactory( bool enable_video_encode_accelerator) { mojo::PendingRemote vea_provider; -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) if (base::FeatureList::IsEnabled(media::kUseOutOfProcessVideoEncoding)) { BindHostReceiver(vea_provider.InitWithNewPipeAndPassReceiver()); } else { diff --git a/www/chromium/files/patch-content_renderer_renderer__blink__platform__impl.cc b/www/chromium/files/patch-content_renderer_renderer__blink__platform__impl.cc index 1ebc4e9e1eba..2678166322aa 100644 --- a/www/chromium/files/patch-content_renderer_renderer__blink__platform__impl.cc +++ b/www/chromium/files/patch-content_renderer_renderer__blink__platform__impl.cc @@ -1,45 +1,45 @@ ---- content/renderer/renderer_blink_platform_impl.cc.orig 2025-07-02 06:08:04 UTC +--- content/renderer/renderer_blink_platform_impl.cc.orig 2025-08-07 06:57:29 UTC +++ content/renderer/renderer_blink_platform_impl.cc -@@ -123,7 +123,7 @@ +@@ -124,7 +124,7 @@ #if BUILDFLAG(IS_MAC) #include "content/child/child_process_sandbox_support_impl_mac.h" -#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "content/child/child_process_sandbox_support_impl_linux.h" #include "content/child/sandboxed_process_thread_type_handler.h" #endif -@@ -191,13 +191,13 @@ RendererBlinkPlatformImpl::RendererBlinkPlatformImpl( +@@ -192,13 +192,13 @@ RendererBlinkPlatformImpl::RendererBlinkPlatformImpl( is_locked_to_site_(false), main_thread_scheduler_(main_thread_scheduler), next_frame_sink_id_(uint32_t{std::numeric_limits::max()} + 1) { -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) sk_sp font_loader; #endif // RenderThread may not exist in some tests. if (RenderThreadImpl::current()) { -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) mojo::PendingRemote font_service; RenderThreadImpl::current()->BindHostReceiver( font_service.InitWithNewPipeAndPassReceiver()); -@@ -222,7 +222,7 @@ RendererBlinkPlatformImpl::RendererBlinkPlatformImpl( +@@ -223,7 +223,7 @@ RendererBlinkPlatformImpl::RendererBlinkPlatformImpl( } #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_WIN) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) if (sandboxEnabled()) { #if BUILDFLAG(IS_MAC) sandbox_support_ = std::make_unique(); -@@ -295,7 +295,7 @@ RendererBlinkPlatformImpl::GetWebUIBundledCodeCacheRes +@@ -296,7 +296,7 @@ RendererBlinkPlatformImpl::GetWebUIBundledCodeCacheRes blink::WebSandboxSupport* RendererBlinkPlatformImpl::GetSandboxSupport() { #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_WIN) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) return sandbox_support_.get(); #else // These platforms do not require sandbox support. diff --git a/www/chromium/files/patch-content_renderer_renderer__blink__platform__impl.h b/www/chromium/files/patch-content_renderer_renderer__blink__platform__impl.h index a075eb8670bd..b94a7555e927 100644 --- a/www/chromium/files/patch-content_renderer_renderer__blink__platform__impl.h +++ b/www/chromium/files/patch-content_renderer_renderer__blink__platform__impl.h @@ -1,11 +1,11 @@ ---- content/renderer/renderer_blink_platform_impl.h.orig 2025-05-28 14:55:43 UTC +--- content/renderer/renderer_blink_platform_impl.h.orig 2025-08-07 06:57:29 UTC +++ content/renderer/renderer_blink_platform_impl.h -@@ -266,7 +266,7 @@ class CONTENT_EXPORT RendererBlinkPlatformImpl : publi +@@ -270,7 +270,7 @@ class CONTENT_EXPORT RendererBlinkPlatformImpl : publi const gpu::GPUInfo& gpu_info) const; #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_WIN) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) std::unique_ptr sandbox_support_; #endif diff --git a/www/chromium/files/patch-content_shell_app_shell__main__delegate.cc b/www/chromium/files/patch-content_shell_app_shell__main__delegate.cc index 46de71dd125c..bad2e3df5507 100644 --- a/www/chromium/files/patch-content_shell_app_shell__main__delegate.cc +++ b/www/chromium/files/patch-content_shell_app_shell__main__delegate.cc @@ -1,11 +1,11 @@ ---- content/shell/app/shell_main_delegate.cc.orig 2025-07-02 06:08:04 UTC +--- content/shell/app/shell_main_delegate.cc.orig 2025-08-07 06:57:29 UTC +++ content/shell/app/shell_main_delegate.cc -@@ -270,7 +270,7 @@ void ShellMainDelegate::PreSandboxStartup() { +@@ -287,7 +287,7 @@ void ShellMainDelegate::PreSandboxStartup() { // Reporting for sub-processes will be initialized in ZygoteForked. if (process_type != switches::kZygoteProcess) { crash_reporter::InitializeCrashpad(process_type.empty(), process_type); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) crash_reporter::SetFirstChanceExceptionHandler( v8::TryHandleWebAssemblyTrapPosix); #endif diff --git a/www/chromium/files/patch-content_utility_utility__main.cc b/www/chromium/files/patch-content_utility_utility__main.cc index f8b3e99ab9e0..cbb896bebdc2 100644 --- a/www/chromium/files/patch-content_utility_utility__main.cc +++ b/www/chromium/files/patch-content_utility_utility__main.cc @@ -1,112 +1,112 @@ ---- content/utility/utility_main.cc.orig 2025-07-02 06:08:04 UTC +--- content/utility/utility_main.cc.orig 2025-08-07 06:57:29 UTC +++ content/utility/utility_main.cc -@@ -37,15 +37,19 @@ +@@ -38,15 +38,19 @@ #include "services/tracing/public/cpp/trace_startup.h" #include "services/video_effects/public/cpp/buildflags.h" -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "base/file_descriptor_store.h" #include "base/files/file_util.h" #include "base/pickle.h" #include "content/child/sandboxed_process_thread_type_handler.h" +#if !BUILDFLAG(IS_BSD) #include "content/common/gpu_pre_sandbox_hook_linux.h" +#endif #include "content/public/common/content_descriptor_keys.h" #include "content/utility/speech/speech_recognition_sandbox_hook_linux.h" +#if !BUILDFLAG(IS_BSD) #include "sandbox/policy/linux/sandbox_linux.h" +#endif #include "services/audio/audio_sandbox_hook_linux.h" #include "services/network/network_sandbox_hook_linux.h" #include "services/screen_ai/buildflags/buildflags.h" -@@ -70,7 +74,12 @@ +@@ -77,7 +81,12 @@ #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -#if BUILDFLAG(ENABLE_VIDEO_EFFECTS) && BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_BSD) +#include "sandbox/policy/sandbox.h" +#include "content/common/gpu_pre_sandbox_hook_bsd.h" +#endif + +#if BUILDFLAG(ENABLE_VIDEO_EFFECTS) && (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) #include "services/video_effects/video_effects_sandbox_hook_linux.h" // nogncheck #endif // BUILDFLAG(IS_LINUX) -@@ -105,7 +114,7 @@ +@@ -112,7 +121,7 @@ sandbox::TargetServices* g_utility_target_services = nullptr; #endif // BUILDFLAG(IS_WIN) -#if BUILDFLAG(ENABLE_ON_DEVICE_TRANSLATION) && BUILDFLAG(IS_LINUX) +#if BUILDFLAG(ENABLE_ON_DEVICE_TRANSLATION) && (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) #include "components/services/on_device_translation/sandbox_hook.h" #endif // BUILDFLAG(ENABLE_ON_DEVICE_TRANSLATION) && BUILDFLAG(IS_LINUX) -@@ -113,7 +122,7 @@ namespace content { +@@ -120,7 +129,7 @@ namespace content { namespace { -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) std::vector GetNetworkContextsParentDirectories() { base::MemoryMappedFile::Region region; base::ScopedFD read_pipe_fd = base::FileDescriptorStore::GetInstance().TakeFD( -@@ -252,7 +261,8 @@ int UtilityMain(MainFunctionParams parameters) { - CHECK(on_device_model::OnDeviceModelService::PreSandboxInit()); +@@ -268,7 +277,8 @@ int UtilityMain(MainFunctionParams parameters) { } + #endif // BUILDFLAG(USE_LINUX_VIDEO_ACCELERATION) && BUILDFLAG(USE_VAAPI) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +// XXX BSD +#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)) && !BUILDFLAG(IS_BSD) // Thread type delegate of the process should be registered before first // thread type change in ChildProcess constructor. It also needs to be // registered before the process has multiple threads, which may race with -@@ -260,7 +270,7 @@ int UtilityMain(MainFunctionParams parameters) { +@@ -276,7 +286,7 @@ int UtilityMain(MainFunctionParams parameters) { SandboxedProcessThreadTypeHandler::Create(); #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Initializes the sandbox before any threads are created. // TODO(jorgelo): move this after GTK initialization when we enable a strict // Seccomp-BPF policy. -@@ -292,7 +302,7 @@ int UtilityMain(MainFunctionParams parameters) { +@@ -308,7 +318,7 @@ int UtilityMain(MainFunctionParams parameters) { pre_sandbox_hook = base::BindOnce(&speech::SpeechRecognitionPreSandboxHook); break; -#if BUILDFLAG(ENABLE_ON_DEVICE_TRANSLATION) && BUILDFLAG(IS_LINUX) +#if BUILDFLAG(ENABLE_ON_DEVICE_TRANSLATION) && (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) case sandbox::mojom::Sandbox::kOnDeviceTranslation: pre_sandbox_hook = base::BindOnce( &on_device_translation::OnDeviceTranslationSandboxHook); -@@ -308,7 +318,7 @@ int UtilityMain(MainFunctionParams parameters) { +@@ -324,7 +334,7 @@ int UtilityMain(MainFunctionParams parameters) { #else NOTREACHED(); #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) case sandbox::mojom::Sandbox::kVideoEffects: #if BUILDFLAG(ENABLE_VIDEO_EFFECTS) pre_sandbox_hook = -@@ -343,6 +353,7 @@ int UtilityMain(MainFunctionParams parameters) { +@@ -359,6 +369,7 @@ int UtilityMain(MainFunctionParams parameters) { default: break; } +#if !BUILDFLAG(IS_BSD) if (!sandbox::policy::IsUnsandboxedSandboxType(sandbox_type) && (parameters.zygote_child || !pre_sandbox_hook.is_null())) { sandbox_options.use_amd_specific_policies = -@@ -350,6 +361,11 @@ int UtilityMain(MainFunctionParams parameters) { +@@ -366,6 +377,11 @@ int UtilityMain(MainFunctionParams parameters) { sandbox::policy::Sandbox::Initialize( sandbox_type, std::move(pre_sandbox_hook), sandbox_options); } +#else + sandbox::policy::Sandbox::Initialize( + sandbox_type, std::move(pre_sandbox_hook), + sandbox::policy::SandboxLinux::Options()); +#endif // Start the HangWatcher now that the sandbox is engaged, if it hasn't // already been started. diff --git a/www/chromium/files/patch-device_bluetooth_bluetooth__adapter.cc b/www/chromium/files/patch-device_bluetooth_bluetooth__adapter.cc index 7500f6258520..cdd6bd36d4c4 100644 --- a/www/chromium/files/patch-device_bluetooth_bluetooth__adapter.cc +++ b/www/chromium/files/patch-device_bluetooth_bluetooth__adapter.cc @@ -1,11 +1,11 @@ ---- device/bluetooth/bluetooth_adapter.cc.orig 2024-03-22 08:19:40 UTC +--- device/bluetooth/bluetooth_adapter.cc.orig 2025-08-07 06:57:29 UTC +++ device/bluetooth/bluetooth_adapter.cc -@@ -32,7 +32,7 @@ namespace device { +@@ -33,7 +33,7 @@ namespace device { BluetoothAdapter::ServiceOptions::ServiceOptions() = default; BluetoothAdapter::ServiceOptions::~ServiceOptions() = default; -#if !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_CHROMEOS) && \ +#if !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_CHROMEOS) && !BUILDFLAG(IS_BSD) && \ !BUILDFLAG(IS_APPLE) && !BUILDFLAG(IS_WIN) && !BUILDFLAG(IS_LINUX) // static scoped_refptr BluetoothAdapter::CreateAdapter() { diff --git a/www/chromium/files/patch-device_bluetooth_cast__bluetooth.gni b/www/chromium/files/patch-device_bluetooth_cast__bluetooth.gni index 0fcfccc24b76..d9870acf6706 100644 --- a/www/chromium/files/patch-device_bluetooth_cast__bluetooth.gni +++ b/www/chromium/files/patch-device_bluetooth_cast__bluetooth.gni @@ -1,9 +1,9 @@ ---- device/bluetooth/cast_bluetooth.gni.orig 2022-08-31 12:19:35 UTC +--- device/bluetooth/cast_bluetooth.gni.orig 2025-08-07 06:57:29 UTC +++ device/bluetooth/cast_bluetooth.gni -@@ -2,5 +2,5 @@ import("//build/config/features.gni") +@@ -6,5 +6,5 @@ import("//build/config/features.gni") declare_args() { force_cast_bluetooth = false - use_bluez = (is_linux && !is_castos && use_dbus) || is_chromeos + use_bluez = use_dbus && !is_bsd } diff --git a/www/chromium/files/patch-extensions_browser_api_messaging_message__service.cc b/www/chromium/files/patch-extensions_browser_api_messaging_message__service.cc index 779ec03bb8a8..1adece5516fb 100644 --- a/www/chromium/files/patch-extensions_browser_api_messaging_message__service.cc +++ b/www/chromium/files/patch-extensions_browser_api_messaging_message__service.cc @@ -1,20 +1,20 @@ ---- extensions/browser/api/messaging/message_service.cc.orig 2025-05-05 10:57:53 UTC +--- extensions/browser/api/messaging/message_service.cc.orig 2025-08-07 06:57:29 UTC +++ extensions/browser/api/messaging/message_service.cc @@ -81,7 +81,7 @@ namespace { const char kReceivingEndDoesntExistError[] = "Could not establish connection. Receiving end does not exist."; #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ -- BUILDFLAG(IS_CHROMEOS) -+ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) +- BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) const char kMissingPermissionError[] = "Access to native messaging requires nativeMessaging permission."; const char kProhibitedByPoliciesError[] = -@@ -673,7 +673,7 @@ void MessageService::OpenChannelToNativeAppImpl( +@@ -674,7 +674,7 @@ void MessageService::OpenChannelToNativeAppImpl( return; #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ -- BUILDFLAG(IS_CHROMEOS) -+ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) +- BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) bool has_permission = extension->permissions_data()->HasAPIPermission( mojom::APIPermissionID::kNativeMessaging); if (!has_permission) { diff --git a/www/chromium/files/patch-extensions_common_api___permission__features.json b/www/chromium/files/patch-extensions_common_api___permission__features.json index 421772f84bb9..e0795e22829e 100644 --- a/www/chromium/files/patch-extensions_common_api___permission__features.json +++ b/www/chromium/files/patch-extensions_common_api___permission__features.json @@ -1,29 +1,29 @@ ---- extensions/common/api/_permission_features.json.orig 2025-04-04 08:52:13 UTC +--- extensions/common/api/_permission_features.json.orig 2025-08-07 06:57:29 UTC +++ extensions/common/api/_permission_features.json @@ -134,7 +134,7 @@ { "channel": "stable", "extension_types": ["platform_app"], - "platforms": ["chromeos", "win", "mac", "linux"], + "platforms": ["chromeos", "win", "mac", "linux", "openbsd", "freebsd"], "allowlist": [ "1C93BD3CF875F4A73C0B2A163BB8FBDA8B8B3D80", // http://crbug.com/387169 "A3BC37E2148AC4E99BE4B16AF9D42DD1E592BBBE", // http://crbug.com/387169 -@@ -419,7 +419,7 @@ +@@ -420,7 +420,7 @@ }, { "channel": "stable", "extension_types": ["extension", "legacy_packaged_app", "platform_app"], - "platforms": ["chromeos", "mac", "win", "linux", "fuchsia"], + "platforms": ["chromeos", "mac", "win", "linux", "fuchsia", "openbsd", "freebsd"], "allowlist": [ "0DE0F05680A4A056BCEC864ED8DDA84296F82B40", // http://crbug.com/434651 "1C93BD3CF875F4A73C0B2A163BB8FBDA8B8B3D80", // http://crbug.com/293683 -@@ -463,7 +463,7 @@ +@@ -464,7 +464,7 @@ "networkingPrivate": { "channel": "stable", "extension_types": ["extension", "legacy_packaged_app", "platform_app"], - "platforms": ["chromeos", "mac", "win", "linux", "fuchsia"], + "platforms": ["chromeos", "mac", "win", "linux", "fuchsia", "openbsd", "freebsd"], "allowlist": [ // DO NOT ADD ANY MORE ENTRIES HERE. // networkingPrivate is being migrated to networking.onc. diff --git a/www/chromium/files/patch-extensions_common_command.cc b/www/chromium/files/patch-extensions_common_command.cc index e2c1af7ef1e2..f05df69f862b 100644 --- a/www/chromium/files/patch-extensions_common_command.cc +++ b/www/chromium/files/patch-extensions_common_command.cc @@ -1,11 +1,11 @@ ---- extensions/common/command.cc.orig 2025-03-05 08:14:56 UTC +--- extensions/common/command.cc.orig 2025-08-07 06:57:29 UTC +++ extensions/common/command.cc -@@ -116,7 +116,7 @@ std::string Command::CommandPlatform() { +@@ -117,7 +117,7 @@ std::string Command::CommandPlatform() { return ui::kKeybindingPlatformMac; #elif BUILDFLAG(IS_CHROMEOS) return ui::kKeybindingPlatformChromeOs; -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) return ui::kKeybindingPlatformLinux; #elif BUILDFLAG(IS_FUCHSIA) // TODO(crbug.com/40220501): Change this once we decide what string should be diff --git a/www/chromium/files/patch-extensions_common_features_feature.cc b/www/chromium/files/patch-extensions_common_features_feature.cc index 6a3bc4866c1a..7dfd18742145 100644 --- a/www/chromium/files/patch-extensions_common_features_feature.cc +++ b/www/chromium/files/patch-extensions_common_features_feature.cc @@ -1,11 +1,11 @@ ---- extensions/common/features/feature.cc.orig 2025-01-15 09:18:26 UTC +--- extensions/common/features/feature.cc.orig 2025-08-07 06:57:29 UTC +++ extensions/common/features/feature.cc -@@ -29,6 +29,8 @@ Feature::Platform Feature::GetCurrentPlatform() { - return WIN_PLATFORM; - #elif BUILDFLAG(IS_FUCHSIA) +@@ -32,6 +32,8 @@ Feature::Platform Feature::GetCurrentPlatform() { return FUCHSIA_PLATFORM; + #elif BUILDFLAG(ENABLE_DESKTOP_ANDROID_EXTENSIONS) + return DESKTOP_ANDROID_PLATFORM; +#elif BUILDFLAG(IS_BSD) + return LINUX_PLATFORM; #else return UNSPECIFIED_PLATFORM; #endif diff --git a/www/chromium/files/patch-extensions_shell_app_shell__main__delegate.cc b/www/chromium/files/patch-extensions_shell_app_shell__main__delegate.cc index e3c204b6ebad..b979ef0f6e2e 100644 --- a/www/chromium/files/patch-extensions_shell_app_shell__main__delegate.cc +++ b/www/chromium/files/patch-extensions_shell_app_shell__main__delegate.cc @@ -1,20 +1,20 @@ ---- extensions/shell/app/shell_main_delegate.cc.orig 2025-07-02 06:08:04 UTC +--- extensions/shell/app/shell_main_delegate.cc.orig 2025-08-07 06:57:29 UTC +++ extensions/shell/app/shell_main_delegate.cc -@@ -41,7 +41,7 @@ +@@ -31,7 +31,7 @@ #if BUILDFLAG(IS_WIN) #include "base/base_paths_win.h" #include "base/process/process_info.h" -#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "base/nix/xdg_util.h" #elif BUILDFLAG(IS_MAC) #include "base/base_paths_mac.h" -@@ -61,7 +61,7 @@ base::FilePath GetDataPath() { +@@ -51,7 +51,7 @@ base::FilePath GetDataPath() { } base::FilePath data_dir; -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) std::unique_ptr env(base::Environment::Create()); data_dir = base::nix::GetXDGDirectory( env.get(), base::nix::kXdgConfigHomeEnvVar, base::nix::kDotConfigDir); diff --git a/www/chromium/files/patch-extensions_shell_browser_shell__browser__main__parts.cc b/www/chromium/files/patch-extensions_shell_browser_shell__browser__main__parts.cc index 915cb2641531..2719115c3432 100644 --- a/www/chromium/files/patch-extensions_shell_browser_shell__browser__main__parts.cc +++ b/www/chromium/files/patch-extensions_shell_browser_shell__browser__main__parts.cc @@ -1,11 +1,11 @@ ---- extensions/shell/browser/shell_browser_main_parts.cc.orig 2025-01-15 09:18:26 UTC +--- extensions/shell/browser/shell_browser_main_parts.cc.orig 2025-08-07 06:57:29 UTC +++ extensions/shell/browser/shell_browser_main_parts.cc -@@ -137,7 +137,7 @@ void ShellBrowserMainParts::PostCreateMainMessageLoop( +@@ -126,7 +126,7 @@ void ShellBrowserMainParts::PostCreateMainMessageLoop( switches::kAppShellAllowRoaming)) { network_controller_->SetCellularAllowRoaming(true); } -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // app_shell doesn't need GTK, so the fake input method context can work. // See crbug.com/381852 and revision fb69f142. // TODO(michaelpg): Verify this works for target environments. diff --git a/www/chromium/files/patch-gpu_command__buffer_service_dawn__context__provider.cc b/www/chromium/files/patch-gpu_command__buffer_service_dawn__context__provider.cc index 7db455f200a2..dad54d9853e9 100644 --- a/www/chromium/files/patch-gpu_command__buffer_service_dawn__context__provider.cc +++ b/www/chromium/files/patch-gpu_command__buffer_service_dawn__context__provider.cc @@ -1,11 +1,11 @@ ---- gpu/command_buffer/service/dawn_context_provider.cc.orig 2025-07-02 06:08:04 UTC +--- gpu/command_buffer/service/dawn_context_provider.cc.orig 2025-08-07 06:57:29 UTC +++ gpu/command_buffer/service/dawn_context_provider.cc -@@ -396,7 +396,7 @@ wgpu::BackendType DawnContextProvider::GetDefaultBacke +@@ -402,7 +402,7 @@ wgpu::BackendType DawnContextProvider::GetDefaultBacke return base::FeatureList::IsEnabled(features::kSkiaGraphiteDawnUseD3D12) ? wgpu::BackendType::D3D12 : wgpu::BackendType::D3D11; -#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) return wgpu::BackendType::Vulkan; #elif BUILDFLAG(IS_APPLE) return wgpu::BackendType::Metal; diff --git a/www/chromium/files/patch-gpu_command__buffer_service_gles2__cmd__decoder.cc b/www/chromium/files/patch-gpu_command__buffer_service_gles2__cmd__decoder.cc index 4a062bec01bf..9228fac786be 100644 --- a/www/chromium/files/patch-gpu_command__buffer_service_gles2__cmd__decoder.cc +++ b/www/chromium/files/patch-gpu_command__buffer_service_gles2__cmd__decoder.cc @@ -1,11 +1,11 @@ ---- gpu/command_buffer/service/gles2_cmd_decoder.cc.orig 2025-07-02 06:08:04 UTC +--- gpu/command_buffer/service/gles2_cmd_decoder.cc.orig 2025-08-07 06:57:29 UTC +++ gpu/command_buffer/service/gles2_cmd_decoder.cc -@@ -2862,7 +2862,7 @@ GLES2Decoder* GLES2Decoder::Create( +@@ -2863,7 +2863,7 @@ GLES2Decoder* GLES2Decoder::Create( } // Allow linux to run fuzzers. -#if BUILDFLAG(ENABLE_VALIDATING_COMMAND_DECODER) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(ENABLE_VALIDATING_COMMAND_DECODER) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) return new GLES2DecoderImpl(client, command_buffer_service, outputter, group); #else LOG(FATAL) << "Validating command decoder is not supported."; diff --git a/www/chromium/files/patch-gpu_command__buffer_service_shared__context__state.cc b/www/chromium/files/patch-gpu_command__buffer_service_shared__context__state.cc index 47fb6016055d..bcfe68c08759 100644 --- a/www/chromium/files/patch-gpu_command__buffer_service_shared__context__state.cc +++ b/www/chromium/files/patch-gpu_command__buffer_service_shared__context__state.cc @@ -1,29 +1,29 @@ ---- gpu/command_buffer/service/shared_context_state.cc.orig 2025-05-28 14:55:43 UTC +--- gpu/command_buffer/service/shared_context_state.cc.orig 2025-08-07 06:57:29 UTC +++ gpu/command_buffer/service/shared_context_state.cc -@@ -64,7 +64,7 @@ +@@ -65,7 +65,7 @@ #include "gpu/vulkan/vulkan_implementation.h" #include "gpu/vulkan/vulkan_util.h" -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) #include "gpu/command_buffer/service/external_semaphore_pool.h" #endif -@@ -348,7 +348,7 @@ SharedContextState::SharedContextState( +@@ -302,7 +302,7 @@ SharedContextState::SharedContextState( if (gr_context_type_ == GrContextType::kVulkan) { if (vk_context_provider_) { #if BUILDFLAG(ENABLE_VULKAN) && \ - (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_WIN)) + (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD)) external_semaphore_pool_ = std::make_unique(this); #endif use_virtualized_gl_contexts_ = false; -@@ -385,7 +385,7 @@ SharedContextState::~SharedContextState() { +@@ -339,7 +339,7 @@ SharedContextState::~SharedContextState() { } #if BUILDFLAG(ENABLE_VULKAN) && \ - (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_WIN)) + (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD)) external_semaphore_pool_.reset(); #endif diff --git a/www/chromium/files/patch-gpu_command__buffer_service_shared__context__state.h b/www/chromium/files/patch-gpu_command__buffer_service_shared__context__state.h index d7f5b4fc5927..f87d84bcb7ca 100644 --- a/www/chromium/files/patch-gpu_command__buffer_service_shared__context__state.h +++ b/www/chromium/files/patch-gpu_command__buffer_service_shared__context__state.h @@ -1,20 +1,20 @@ ---- gpu/command_buffer/service/shared_context_state.h.orig 2025-05-28 14:55:43 UTC +--- gpu/command_buffer/service/shared_context_state.h.orig 2025-08-07 06:57:29 UTC +++ gpu/command_buffer/service/shared_context_state.h -@@ -238,7 +238,7 @@ class GPU_GLES2_EXPORT SharedContextState +@@ -234,7 +234,7 @@ class GPU_GLES2_EXPORT SharedContextState return &memory_type_tracker_; } #if BUILDFLAG(ENABLE_VULKAN) && \ - (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_WIN)) + (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD)) ExternalSemaphorePool* external_semaphore_pool() { return external_semaphore_pool_.get(); } -@@ -455,7 +455,7 @@ class GPU_GLES2_EXPORT SharedContextState +@@ -399,7 +399,7 @@ class GPU_GLES2_EXPORT SharedContextState bool disable_check_reset_status_throttling_for_test_ = false; #if BUILDFLAG(ENABLE_VULKAN) && \ - (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_WIN)) + (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD)) std::unique_ptr external_semaphore_pool_; #endif diff --git a/www/chromium/files/patch-gpu_command__buffer_service_shared__image_external__vk__image__backing.cc b/www/chromium/files/patch-gpu_command__buffer_service_shared__image_external__vk__image__backing.cc index daf8f8db357d..d472cfb6f87f 100644 --- a/www/chromium/files/patch-gpu_command__buffer_service_shared__image_external__vk__image__backing.cc +++ b/www/chromium/files/patch-gpu_command__buffer_service_shared__image_external__vk__image__backing.cc @@ -1,20 +1,20 @@ ---- gpu/command_buffer/service/shared_image/external_vk_image_backing.cc.orig 2025-07-02 06:08:04 UTC +--- gpu/command_buffer/service/shared_image/external_vk_image_backing.cc.orig 2025-08-07 06:57:29 UTC +++ gpu/command_buffer/service/shared_image/external_vk_image_backing.cc -@@ -56,7 +56,7 @@ +@@ -57,7 +57,7 @@ #include "ui/gl/gl_version_info.h" #include "ui/gl/scoped_binders.h" -#if BUILDFLAG(IS_LINUX) && BUILDFLAG(USE_DAWN) +#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && BUILDFLAG(USE_DAWN) #include "gpu/command_buffer/service/shared_image/external_vk_image_dawn_representation.h" #if BUILDFLAG(DAWN_ENABLE_BACKEND_OPENGLES) #include "gpu/command_buffer/service/shared_image/dawn_gl_texture_representation.h" -@@ -696,7 +696,7 @@ std::unique_ptr ExternalVkIma +@@ -697,7 +697,7 @@ std::unique_ptr ExternalVkIma wgpu::BackendType backend_type, std::vector view_formats, scoped_refptr context_state) { -#if BUILDFLAG(IS_LINUX) && BUILDFLAG(USE_DAWN) +#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && BUILDFLAG(USE_DAWN) auto wgpu_format = ToDawnFormat(format()); if (wgpu_format == wgpu::TextureFormat::Undefined) { diff --git a/www/chromium/files/patch-gpu_command__buffer_service_shared__image_shared__image__factory.cc b/www/chromium/files/patch-gpu_command__buffer_service_shared__image_shared__image__factory.cc index 4f0c643ec56a..5fd08e28c167 100644 --- a/www/chromium/files/patch-gpu_command__buffer_service_shared__image_shared__image__factory.cc +++ b/www/chromium/files/patch-gpu_command__buffer_service_shared__image_shared__image__factory.cc @@ -1,38 +1,38 @@ ---- gpu/command_buffer/service/shared_image/shared_image_factory.cc.orig 2025-07-02 06:08:04 UTC +--- gpu/command_buffer/service/shared_image/shared_image_factory.cc.orig 2025-08-07 06:57:29 UTC +++ gpu/command_buffer/service/shared_image/shared_image_factory.cc -@@ -48,7 +48,7 @@ +@@ -51,7 +51,7 @@ #include "gpu/command_buffer/service/shared_image/angle_vulkan_image_backing_factory.h" #include "gpu/vulkan/vulkan_device_queue.h" -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) #include "gpu/command_buffer/service/shared_image/external_vk_image_backing_factory.h" #endif -@@ -102,7 +102,7 @@ const char* GmbTypeToString(gfx::GpuMemoryBufferType t +@@ -105,7 +105,7 @@ const char* GmbTypeToString(gfx::GpuMemoryBufferType t case gfx::IO_SURFACE_BUFFER: return "platform"; #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) case gfx::NATIVE_PIXMAP: return "platform"; #endif -@@ -123,7 +123,7 @@ gfx::GpuMemoryBufferType GetNativeBufferType() { +@@ -126,7 +126,7 @@ gfx::GpuMemoryBufferType GetNativeBufferType() { return gfx::GpuMemoryBufferType::IO_SURFACE_BUFFER; #elif BUILDFLAG(IS_ANDROID) return gfx::GpuMemoryBufferType::ANDROID_HARDWARE_BUFFER; -#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) return gfx::GpuMemoryBufferType::NATIVE_PIXMAP; #elif BUILDFLAG(IS_WIN) return gfx::GpuMemoryBufferType::DXGI_SHARED_HANDLE; -@@ -294,7 +294,7 @@ SharedImageFactory::SharedImageFactory( +@@ -298,7 +298,7 @@ SharedImageFactory::SharedImageFactory( context_state_, workarounds_); factories_.push_back(std::move(ozone_factory)); } -#if BUILDFLAG(ENABLE_VULKAN) && (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_FUCHSIA)) +#if BUILDFLAG(ENABLE_VULKAN) && (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD)) if (gr_context_type_ == GrContextType::kVulkan) { auto external_vk_image_factory = std::make_unique(context_state_); diff --git a/www/chromium/files/patch-gpu_command__buffer_service_webgpu__decoder__impl.cc b/www/chromium/files/patch-gpu_command__buffer_service_webgpu__decoder__impl.cc index bd6250e8477f..7d3c01e20ad5 100644 --- a/www/chromium/files/patch-gpu_command__buffer_service_webgpu__decoder__impl.cc +++ b/www/chromium/files/patch-gpu_command__buffer_service_webgpu__decoder__impl.cc @@ -1,20 +1,20 @@ ---- gpu/command_buffer/service/webgpu_decoder_impl.cc.orig 2025-07-02 06:08:04 UTC +--- gpu/command_buffer/service/webgpu_decoder_impl.cc.orig 2025-08-07 06:57:29 UTC +++ gpu/command_buffer/service/webgpu_decoder_impl.cc -@@ -1790,7 +1790,7 @@ wgpu::Adapter WebGPUDecoderImpl::CreatePreferredAdapte +@@ -1725,7 +1725,7 @@ wgpu::Adapter WebGPUDecoderImpl::CreatePreferredAdapte backend_types = {wgpu::BackendType::D3D12}; #elif BUILDFLAG(IS_APPLE) backend_types = {wgpu::BackendType::Metal}; -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (shared_context_state_->GrContextIsVulkan() || shared_context_state_->IsGraphiteDawnVulkan()) { backend_types = {wgpu::BackendType::Vulkan}; -@@ -2032,7 +2032,7 @@ WebGPUDecoderImpl::AssociateMailboxDawn( +@@ -1970,7 +1970,7 @@ WebGPUDecoderImpl::AssociateMailboxDawn( } #if !BUILDFLAG(IS_WIN) && !BUILDFLAG(IS_CHROMEOS) && !BUILDFLAG(IS_APPLE) && \ - !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_LINUX) + !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_BSD) if (usage & wgpu::TextureUsage::StorageBinding) { LOG(ERROR) << "AssociateMailbox: wgpu::TextureUsage::StorageBinding is NOT " "supported yet on this platform."; diff --git a/www/chromium/files/patch-gpu_command__buffer_tests_gl__gpu__memory__buffer__unittest.cc b/www/chromium/files/patch-gpu_command__buffer_tests_gl__gpu__memory__buffer__unittest.cc index 707a5fb6af81..9344ba32bcf4 100644 --- a/www/chromium/files/patch-gpu_command__buffer_tests_gl__gpu__memory__buffer__unittest.cc +++ b/www/chromium/files/patch-gpu_command__buffer_tests_gl__gpu__memory__buffer__unittest.cc @@ -1,20 +1,20 @@ ---- gpu/command_buffer/tests/gl_gpu_memory_buffer_unittest.cc.orig 2025-07-02 06:08:04 UTC +--- gpu/command_buffer/tests/gl_gpu_memory_buffer_unittest.cc.orig 2025-08-07 06:57:29 UTC +++ gpu/command_buffer/tests/gl_gpu_memory_buffer_unittest.cc @@ -29,7 +29,7 @@ #include "ui/gfx/half_float.h" #include "ui/gl/test/gl_test_support.h" -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - #include "gpu/ipc/common/gpu_memory_buffer_impl_native_pixmap.h" #include "ui/gfx/linux/client_native_pixmap_factory_dmabuf.h" #endif -@@ -72,7 +72,7 @@ class GpuMemoryBufferTest : public testing::TestWithPa + +@@ -71,7 +71,7 @@ class GpuMemoryBufferTest : public testing::TestWithPa GLManager gl_; }; -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) class GpuMemoryBufferTestEGL : public testing::Test, public gpu::GpuCommandBufferTestEGL { public: diff --git a/www/chromium/files/patch-gpu_config_gpu__finch__features.cc b/www/chromium/files/patch-gpu_config_gpu__finch__features.cc index 087dcd722d21..676d89e47ba3 100644 --- a/www/chromium/files/patch-gpu_config_gpu__finch__features.cc +++ b/www/chromium/files/patch-gpu_config_gpu__finch__features.cc @@ -1,12 +1,12 @@ ---- gpu/config/gpu_finch_features.cc.orig 2025-04-04 08:52:13 UTC +--- gpu/config/gpu_finch_features.cc.orig 2025-08-07 06:57:29 UTC +++ gpu/config/gpu_finch_features.cc -@@ -155,7 +155,8 @@ BASE_FEATURE(kAllowHardwareBufferUsageFlagsFromVulkanF +@@ -156,7 +156,8 @@ BASE_FEATURE(kAllowHardwareBufferUsageFlagsFromVulkanF BASE_FEATURE(kDefaultEnableGpuRasterization, "DefaultEnableGpuRasterization", #if BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_CHROMEOS) || \ - BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_LINUX) + BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_LINUX) || \ + BUILDFLAG(IS_BSD) base::FEATURE_ENABLED_BY_DEFAULT #else base::FEATURE_DISABLED_BY_DEFAULT diff --git a/www/chromium/files/patch-gpu_config_gpu__info__collector.cc b/www/chromium/files/patch-gpu_config_gpu__info__collector.cc index 2729cb59e85c..1a0e845e9b59 100644 --- a/www/chromium/files/patch-gpu_config_gpu__info__collector.cc +++ b/www/chromium/files/patch-gpu_config_gpu__info__collector.cc @@ -1,11 +1,11 @@ ---- gpu/config/gpu_info_collector.cc.orig 2025-05-28 14:55:43 UTC +--- gpu/config/gpu_info_collector.cc.orig 2025-08-07 06:57:29 UTC +++ gpu/config/gpu_info_collector.cc -@@ -364,7 +364,7 @@ void ReportWebGPUAdapterMetrics(dawn::native::Instance +@@ -363,7 +363,7 @@ void ReportWebGPUAdapterMetrics(dawn::native::Instance void ReportWebGPUSupportMetrics(dawn::native::Instance* instance) { static BASE_FEATURE(kCollectWebGPUSupportMetrics, "CollectWebGPUSupportMetrics", -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) base::FEATURE_DISABLED_BY_DEFAULT); #else base::FEATURE_ENABLED_BY_DEFAULT); diff --git a/www/chromium/files/patch-gpu_ipc_common_gpu__memory__buffer__support.cc b/www/chromium/files/patch-gpu_ipc_common_gpu__memory__buffer__support.cc deleted file mode 100644 index 961f45a601d6..000000000000 --- a/www/chromium/files/patch-gpu_ipc_common_gpu__memory__buffer__support.cc +++ /dev/null @@ -1,20 +0,0 @@ ---- gpu/ipc/common/gpu_memory_buffer_support.cc.orig 2024-10-22 08:31:56 UTC -+++ gpu/ipc/common/gpu_memory_buffer_support.cc -@@ -26,7 +26,7 @@ - #include "ui/ozone/public/ozone_platform.h" - #endif - --#if BUILDFLAG(IS_OZONE) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -+#if BUILDFLAG(IS_OZONE) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - #include "gpu/ipc/common/gpu_memory_buffer_impl_native_pixmap.h" - #endif - -@@ -55,7 +55,7 @@ GpuMemoryBufferSupport::GetNativeGpuMemoryBufferType() - return gfx::IO_SURFACE_BUFFER; - #elif BUILDFLAG(IS_ANDROID) - return gfx::ANDROID_HARDWARE_BUFFER; --#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_OZONE) -+#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_OZONE) || BUILDFLAG(IS_BSD) - return gfx::NATIVE_PIXMAP; - #elif BUILDFLAG(IS_WIN) - return gfx::DXGI_SHARED_HANDLE; diff --git a/www/chromium/files/patch-gpu_ipc_common_gpu__memory__buffer__support.h b/www/chromium/files/patch-gpu_ipc_common_gpu__memory__buffer__support.h index a9561526a8da..2b2bacdd6138 100644 --- a/www/chromium/files/patch-gpu_ipc_common_gpu__memory__buffer__support.h +++ b/www/chromium/files/patch-gpu_ipc_common_gpu__memory__buffer__support.h @@ -1,11 +1,11 @@ ---- gpu/ipc/common/gpu_memory_buffer_support.h.orig 2023-08-17 07:33:31 UTC +--- gpu/ipc/common/gpu_memory_buffer_support.h.orig 2025-08-07 06:57:29 UTC +++ gpu/ipc/common/gpu_memory_buffer_support.h -@@ -21,7 +21,7 @@ +@@ -22,7 +22,7 @@ #include "ui/gfx/geometry/size.h" - #include "ui/gfx/gpu_memory_buffer.h" + #include "ui/gfx/gpu_memory_buffer_handle.h" -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_OZONE) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_OZONE) || BUILDFLAG(IS_BSD) namespace gfx { class ClientNativePixmapFactory; } // namespace gfx diff --git a/www/chromium/files/patch-gpu_ipc_service_gpu__init.cc b/www/chromium/files/patch-gpu_ipc_service_gpu__init.cc index 17da50b389d7..45c16ef8bb2e 100644 --- a/www/chromium/files/patch-gpu_ipc_service_gpu__init.cc +++ b/www/chromium/files/patch-gpu_ipc_service_gpu__init.cc @@ -1,83 +1,83 @@ ---- gpu/ipc/service/gpu_init.cc.orig 2025-07-02 06:08:04 UTC +--- gpu/ipc/service/gpu_init.cc.orig 2025-08-07 06:57:29 UTC +++ gpu/ipc/service/gpu_init.cc -@@ -156,7 +156,7 @@ void InitializePlatformOverlaySettings(GPUInfo* gpu_in +@@ -155,7 +155,7 @@ void InitializePlatformOverlaySettings(GPUInfo* gpu_in #if !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_CASTOS) bool CanAccessDeviceFile(const GPUInfo& gpu_info) { -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (gpu_info.gpu.vendor_id != 0x10de || // NVIDIA gpu_info.gpu.driver_vendor != "NVIDIA") return true; -@@ -392,7 +392,7 @@ bool GpuInit::InitializeAndStartSandbox(base::CommandL +@@ -393,7 +393,7 @@ bool GpuInit::InitializeAndStartSandbox(base::CommandL enable_watchdog = false; #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) bool gpu_sandbox_start_early = gpu_preferences_.gpu_sandbox_start_early; #else // !(BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)) // For some reasons MacOSX's VideoToolbox might crash when called after -@@ -430,7 +430,7 @@ bool GpuInit::InitializeAndStartSandbox(base::CommandL +@@ -431,7 +431,7 @@ bool GpuInit::InitializeAndStartSandbox(base::CommandL } bool attempted_startsandbox = false; -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // On Chrome OS ARM Mali, GPU driver userspace creates threads when // initializing a GL context, so start the sandbox early. // TODO(zmo): Need to collect OS version before this. -@@ -527,7 +527,7 @@ bool GpuInit::InitializeAndStartSandbox(base::CommandL +@@ -528,7 +528,7 @@ bool GpuInit::InitializeAndStartSandbox(base::CommandL gpu_preferences_.gr_context_type = GrContextType::kGL; } -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // The ContentSandboxHelper is currently the only one implementation of // GpuSandboxHelper and it has no dependency. Except on Linux where // VaapiWrapper checks the GL implementation to determine which display -@@ -585,7 +585,7 @@ bool GpuInit::InitializeAndStartSandbox(base::CommandL +@@ -586,7 +586,7 @@ bool GpuInit::InitializeAndStartSandbox(base::CommandL command_line, gpu_feature_info_, gpu_preferences_.disable_software_rasterizer, false); if (gl_use_swiftshader_) { -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) VLOG(1) << "Quit GPU process launch to fallback to SwiftShader cleanly " << "on Linux"; return false; -@@ -753,7 +753,7 @@ bool GpuInit::InitializeAndStartSandbox(base::CommandL +@@ -754,7 +754,7 @@ bool GpuInit::InitializeAndStartSandbox(base::CommandL ->GetSupportedFormatsForGLNativePixmapImport(); #endif // BUILDFLAG(IS_OZONE) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Driver may create a compatibility profile context when collect graphics // information on Linux platform. Try to collect graphics information // based on core profile context after disabling platform extensions. -@@ -805,7 +805,7 @@ bool GpuInit::InitializeAndStartSandbox(base::CommandL +@@ -806,7 +806,7 @@ bool GpuInit::InitializeAndStartSandbox(base::CommandL } } } -#if BUILDFLAG(IS_LINUX) || \ +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) || \ (BUILDFLAG(IS_CHROMEOS) && !BUILDFLAG(IS_CHROMEOS_DEVICE)) if (!gl_disabled && !gl_use_swiftshader_ && std::getenv("RUNNING_UNDER_RR")) { // https://rr-project.org/ is a Linux-only record-and-replay debugger that -@@ -1007,7 +1007,7 @@ void GpuInit::InitializeInProcess(base::CommandLine* c +@@ -1008,7 +1008,7 @@ void GpuInit::InitializeInProcess(base::CommandLine* c } bool gl_disabled = gl::GetGLImplementation() == gl::kGLImplementationDisabled; -#if BUILDFLAG(IS_LINUX) || \ +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) || \ (BUILDFLAG(IS_CHROMEOS) && !BUILDFLAG(IS_CHROMEOS_DEVICE)) if (!gl_disabled && !gl_use_swiftshader_ && std::getenv("RUNNING_UNDER_RR")) { // https://rr-project.org/ is a Linux-only record-and-replay debugger that -@@ -1063,7 +1063,7 @@ void GpuInit::InitializeInProcess(base::CommandLine* c +@@ -1064,7 +1064,7 @@ void GpuInit::InitializeInProcess(base::CommandLine* c } } -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Driver may create a compatibility profile context when collect graphics // information on Linux platform. Try to collect graphics information // based on core profile context after disabling platform extensions. diff --git a/www/chromium/files/patch-gpu_vulkan_vulkan__device__queue.h b/www/chromium/files/patch-gpu_vulkan_vulkan__device__queue.h index 06fd6b7fc146..1f3efe2c766c 100644 --- a/www/chromium/files/patch-gpu_vulkan_vulkan__device__queue.h +++ b/www/chromium/files/patch-gpu_vulkan_vulkan__device__queue.h @@ -1,11 +1,11 @@ ---- gpu/vulkan/vulkan_device_queue.h.orig 2025-03-05 08:14:56 UTC +--- gpu/vulkan/vulkan_device_queue.h.orig 2025-08-07 06:57:29 UTC +++ gpu/vulkan/vulkan_device_queue.h -@@ -182,7 +182,7 @@ class COMPONENT_EXPORT(VULKAN) VulkanDeviceQueue +@@ -188,7 +188,7 @@ class COMPONENT_EXPORT(VULKAN) VulkanDeviceQueue #endif #if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) VkPhysicalDeviceSamplerYcbcrConversionFeatures sampler_ycbcr_conversion_features_{ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES}; diff --git a/www/chromium/files/patch-headless_BUILD.gn b/www/chromium/files/patch-headless_BUILD.gn index 8423aea0c8a9..384dbbef463f 100644 --- a/www/chromium/files/patch-headless_BUILD.gn +++ b/www/chromium/files/patch-headless_BUILD.gn @@ -1,11 +1,11 @@ ---- headless/BUILD.gn.orig 2025-05-05 10:57:53 UTC +--- headless/BUILD.gn.orig 2025-08-07 06:57:29 UTC +++ headless/BUILD.gn -@@ -475,7 +475,7 @@ component("headless_non_renderer") { +@@ -478,7 +478,7 @@ component("headless_non_renderer") { } } - if (!is_fuchsia) { + if (!is_fuchsia && !is_bsd) { deps += [ "//components/crash/content/browser", "//components/crash/core/app", diff --git a/www/chromium/files/patch-headless_lib_headless__content__main__delegate.cc b/www/chromium/files/patch-headless_lib_headless__content__main__delegate.cc index 9c2363a8a819..2fd247eaa0a2 100644 --- a/www/chromium/files/patch-headless_lib_headless__content__main__delegate.cc +++ b/www/chromium/files/patch-headless_lib_headless__content__main__delegate.cc @@ -1,11 +1,11 @@ ---- headless/lib/headless_content_main_delegate.cc.orig 2025-05-28 14:55:43 UTC +--- headless/lib/headless_content_main_delegate.cc.orig 2025-08-07 06:57:29 UTC +++ headless/lib/headless_content_main_delegate.cc -@@ -406,7 +406,7 @@ void HeadlessContentMainDelegate::InitCrashReporter( +@@ -407,7 +407,7 @@ void HeadlessContentMainDelegate::InitCrashReporter( if (process_type != ::switches::kZygoteProcess) { g_headless_crash_client.Pointer()->set_crash_dumps_dir( command_line.GetSwitchValuePath(switches::kCrashDumpsDir)); -#if !BUILDFLAG(IS_WIN) +#if !BUILDFLAG(IS_WIN) && !BUILDFLAG(IS_BSD) crash_reporter::InitializeCrashpad(process_type.empty(), process_type); #endif // !BUILDFLAG(IS_WIN) crash_keys::SetSwitchesFromCommandLine(command_line, nullptr); diff --git a/www/chromium/files/patch-media_audio_BUILD.gn b/www/chromium/files/patch-media_audio_BUILD.gn index 4bf583135073..04357e3a968e 100644 --- a/www/chromium/files/patch-media_audio_BUILD.gn +++ b/www/chromium/files/patch-media_audio_BUILD.gn @@ -1,27 +1,27 @@ ---- media/audio/BUILD.gn.orig 2025-07-02 06:08:04 UTC +--- media/audio/BUILD.gn.orig 2025-08-07 06:57:29 UTC +++ media/audio/BUILD.gn -@@ -286,9 +286,23 @@ source_set("audio") { +@@ -290,9 +290,23 @@ source_set("audio") { deps += [ "//media/base/android:media_jni_headers" ] } - if (is_linux || is_chromeos) { + if ((is_linux || is_chromeos) && !is_bsd) { sources += [ "linux/audio_manager_linux.cc" ] } + + if (is_bsd) { + sources += [ "sndio/audio_manager_sndio.cc" ] + } + + if (use_sndio) { + libs += [ "sndio" ] + sources += [ + "sndio/sndio_input.cc", + "sndio/sndio_input.h", + "sndio/sndio_output.cc", + "sndio/sndio_output.h" + ] + } if (use_alsa) { libs += [ "asound" ] diff --git a/www/chromium/files/patch-media_base_media__switches.cc b/www/chromium/files/patch-media_base_media__switches.cc index 66b77e24fbf9..26164df546f3 100644 --- a/www/chromium/files/patch-media_base_media__switches.cc +++ b/www/chromium/files/patch-media_base_media__switches.cc @@ -1,114 +1,114 @@ ---- media/base/media_switches.cc.orig 2025-07-02 06:08:04 UTC +--- media/base/media_switches.cc.orig 2025-08-07 06:57:29 UTC +++ media/base/media_switches.cc @@ -19,7 +19,7 @@ #include "ui/gl/gl_features.h" #include "ui/gl/gl_utils.h" -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "base/cpu.h" #endif -@@ -366,8 +366,8 @@ BASE_FEATURE(kUseSCContentSharingPicker, +@@ -371,8 +371,8 @@ BASE_FEATURE(kUseSCContentSharingPicker, "UseSCContentSharingPicker", base::FEATURE_DISABLED_BY_DEFAULT); #endif // BUILDFLAG(IS_MAC) - -#if BUILDFLAG(IS_LINUX) + +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Enables system audio mirroring using pulseaudio. BASE_FEATURE(kPulseaudioLoopbackForCast, "PulseaudioLoopbackForCast", -@@ -377,6 +377,28 @@ BASE_FEATURE(kPulseaudioLoopbackForCast, +@@ -382,6 +382,28 @@ BASE_FEATURE(kPulseaudioLoopbackForCast, BASE_FEATURE(kPulseaudioLoopbackForScreenShare, "PulseaudioLoopbackForScreenShare", base::FEATURE_DISABLED_BY_DEFAULT); + +BASE_FEATURE(kAudioBackend, + "AudioBackend", + base::FEATURE_ENABLED_BY_DEFAULT); + +constexpr base::FeatureParam::Option + kAudioBackendOptions[] = { + {AudioBackend::kAuto, + "auto"}, + {AudioBackend::kPulseAudio, "pulseaudio"}, + {AudioBackend::kSndio, "sndio"}, + {AudioBackend::kAlsa, "alsa"}}; + +const base::FeatureParam + kAudioBackendParam{ + &kAudioBackend, "audio-backend", +#if BUILDFLAG(IS_OPENBSD) + AudioBackend::kSndio, +#elif BUILDFLAG(IS_FREEBSD) + AudioBackend::kAuto, +#endif + &kAudioBackendOptions}; #endif // BUILDFLAG(IS_LINUX) // When enabled, MediaCapabilities will check with GPU Video Accelerator -@@ -658,7 +680,7 @@ BASE_FEATURE(kFileDialogsBlockPictureInPicture, +@@ -684,7 +706,7 @@ BASE_FEATURE(kFileDialogsTuckPictureInPicture, // Show toolbar button that opens dialog for controlling media sessions. BASE_FEATURE(kGlobalMediaControls, "GlobalMediaControls", -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) base::FEATURE_ENABLED_BY_DEFAULT #else base::FEATURE_DISABLED_BY_DEFAULT -@@ -681,7 +703,7 @@ BASE_FEATURE(kGlobalMediaControlsUpdatedUI, +@@ -707,7 +729,7 @@ BASE_FEATURE(kGlobalMediaControlsUpdatedUI, // If enabled, users can request Media Remoting without fullscreen-in-tab. BASE_FEATURE(kMediaRemotingWithoutFullscreen, "MediaRemotingWithoutFullscreen", -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) base::FEATURE_ENABLED_BY_DEFAULT #else base::FEATURE_DISABLED_BY_DEFAULT -@@ -693,7 +715,7 @@ BASE_FEATURE(kMediaRemotingWithoutFullscreen, +@@ -719,7 +741,7 @@ BASE_FEATURE(kMediaRemotingWithoutFullscreen, BASE_FEATURE(kGlobalMediaControlsPictureInPicture, "GlobalMediaControlsPictureInPicture", #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) base::FEATURE_ENABLED_BY_DEFAULT #else base::FEATURE_DISABLED_BY_DEFAULT -@@ -722,7 +744,7 @@ BASE_FEATURE(kUnifiedAutoplay, +@@ -748,7 +770,7 @@ BASE_FEATURE(kUnifiedAutoplay, "UnifiedAutoplay", base::FEATURE_ENABLED_BY_DEFAULT); -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Enable vaapi/v4l2 video decoding on linux. This is already enabled by default // on chromeos, but needs an experiment on linux. BASE_FEATURE(kAcceleratedVideoDecodeLinux, -@@ -795,7 +817,7 @@ BASE_FEATURE(kVSyncMjpegDecoding, +@@ -821,7 +843,7 @@ BASE_FEATURE(kVSyncMjpegDecoding, "VSyncMjpegDecoding", base::FEATURE_DISABLED_BY_DEFAULT); #endif // defined(ARCH_CPU_X86_FAMILY) && BUILDFLAG(IS_CHROMEOS) -#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Enable H264 temporal layer encoding with V4L2 HW encoder on ChromeOS. BASE_FEATURE(kV4L2H264TemporalLayerHWEncoding, "V4L2H264TemporalLayerHWEncoding", -@@ -1355,7 +1377,7 @@ BASE_FEATURE(kUseOutOfProcessVideoDecoding, +@@ -1398,7 +1420,7 @@ BASE_FEATURE(kUseOutOfProcessVideoDecoding, ); #endif // BUILDFLAG(ALLOW_OOP_VIDEO_DECODER) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Spawn utility processes to perform hardware encode acceleration instead of // using the GPU process. BASE_FEATURE(kUseOutOfProcessVideoEncoding, -@@ -1437,7 +1459,7 @@ BASE_FEATURE(kRecordWebAudioEngagement, +@@ -1480,7 +1502,7 @@ BASE_FEATURE(kRecordWebAudioEngagement, "RecordWebAudioEngagement", base::FEATURE_ENABLED_BY_DEFAULT); -#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Reduces the number of buffers needed in the output video frame pool to // populate the Renderer pipeline for hardware accelerated VideoDecoder in // non-low latency scenarios. diff --git a/www/chromium/files/patch-media_base_media__switches.h b/www/chromium/files/patch-media_base_media__switches.h index 89432227bff0..ec90f94782a3 100644 --- a/www/chromium/files/patch-media_base_media__switches.h +++ b/www/chromium/files/patch-media_base_media__switches.h @@ -1,57 +1,57 @@ ---- media/base/media_switches.h.orig 2025-07-02 06:08:04 UTC +--- media/base/media_switches.h.orig 2025-08-07 06:57:29 UTC +++ media/base/media_switches.h -@@ -336,13 +336,25 @@ MEDIA_EXPORT BASE_DECLARE_FEATURE(kMediaRecorderHEVCSu +@@ -340,13 +340,25 @@ MEDIA_EXPORT BASE_DECLARE_FEATURE(kMediaRecorderHEVCSu MEDIA_EXPORT BASE_DECLARE_FEATURE(kPlaybackSpeedButton); MEDIA_EXPORT BASE_DECLARE_FEATURE(kPreloadMediaEngagementData); MEDIA_EXPORT BASE_DECLARE_FEATURE(kPreloadMetadataSuspend); -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) MEDIA_EXPORT BASE_DECLARE_FEATURE(kPulseaudioLoopbackForCast); MEDIA_EXPORT BASE_DECLARE_FEATURE(kPulseaudioLoopbackForScreenShare); + +enum class AudioBackend { + kAuto, + kPulseAudio, + kSndio, + kAlsa +}; + +MEDIA_EXPORT BASE_DECLARE_FEATURE(kAudioBackend); +MEDIA_EXPORT extern const base::FeatureParam< + AudioBackend> + kAudioBackendParam; #endif // BUILDFLAG(IS_LINUX) MEDIA_EXPORT BASE_DECLARE_FEATURE(kRecordMediaEngagementScores); MEDIA_EXPORT BASE_DECLARE_FEATURE(kRecordWebAudioEngagement); -#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) MEDIA_EXPORT BASE_DECLARE_FEATURE(kReduceHardwareVideoDecoderBuffers); #endif // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) MEDIA_EXPORT BASE_DECLARE_FEATURE(kResumeBackgroundVideo); -@@ -356,7 +368,7 @@ MEDIA_EXPORT BASE_DECLARE_FEATURE(kSuspendMutedAudio); +@@ -360,7 +372,7 @@ MEDIA_EXPORT BASE_DECLARE_FEATURE(kSuspendMutedAudio); MEDIA_EXPORT BASE_DECLARE_FEATURE(kUnifiedAutoplay); MEDIA_EXPORT BASE_DECLARE_FEATURE(kUseAndroidOverlayForSecureOnly); MEDIA_EXPORT BASE_DECLARE_FEATURE(kUseFakeDeviceForMediaStream); -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) MEDIA_EXPORT BASE_DECLARE_FEATURE(kAcceleratedVideoDecodeLinux); MEDIA_EXPORT BASE_DECLARE_FEATURE(kAcceleratedVideoDecodeLinuxGL); MEDIA_EXPORT BASE_DECLARE_FEATURE(kAcceleratedVideoEncodeLinux); -@@ -372,7 +384,7 @@ MEDIA_EXPORT BASE_DECLARE_FEATURE(kVaapiAV1TemporalLay +@@ -376,7 +388,7 @@ MEDIA_EXPORT BASE_DECLARE_FEATURE(kVaapiAV1TemporalLay MEDIA_EXPORT BASE_DECLARE_FEATURE(kVaapiVp9SModeHWEncoding); MEDIA_EXPORT BASE_DECLARE_FEATURE(kVSyncMjpegDecoding); #endif // defined(ARCH_CPU_X86_FAMILY) && BUILDFLAG(IS_CHROMEOS) -#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) MEDIA_EXPORT BASE_DECLARE_FEATURE(kV4L2H264TemporalLayerHWEncoding); #endif // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) MEDIA_EXPORT BASE_DECLARE_FEATURE(kVideoBlitColorAccuracy); -@@ -493,7 +505,7 @@ MEDIA_EXPORT BASE_DECLARE_FEATURE(kBackgroundListening +@@ -498,7 +510,7 @@ MEDIA_EXPORT BASE_DECLARE_FEATURE(kBackgroundListening MEDIA_EXPORT BASE_DECLARE_FEATURE(kUseOutOfProcessVideoDecoding); #endif // BUILDFLAG(ALLOW_OOP_VIDEO_DECODER) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) MEDIA_EXPORT BASE_DECLARE_FEATURE(kUseOutOfProcessVideoEncoding); #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) diff --git a/www/chromium/files/patch-media_base_video__frame.cc b/www/chromium/files/patch-media_base_video__frame.cc index 9e081b0035db..6ad9519f0f0f 100644 --- a/www/chromium/files/patch-media_base_video__frame.cc +++ b/www/chromium/files/patch-media_base_video__frame.cc @@ -1,47 +1,47 @@ ---- media/base/video_frame.cc.orig 2025-07-02 06:08:04 UTC +--- media/base/video_frame.cc.orig 2025-08-07 06:57:29 UTC +++ media/base/video_frame.cc -@@ -92,7 +92,7 @@ std::string VideoFrame::StorageTypeToString( +@@ -96,7 +96,7 @@ std::string VideoFrame::StorageTypeToString( return "OWNED_MEMORY"; case VideoFrame::STORAGE_SHMEM: return "SHMEM"; -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) case VideoFrame::STORAGE_DMABUFS: return "DMABUFS"; #endif -@@ -106,7 +106,7 @@ std::string VideoFrame::StorageTypeToString( +@@ -110,7 +110,7 @@ std::string VideoFrame::StorageTypeToString( // static bool VideoFrame::IsStorageTypeMappable(VideoFrame::StorageType storage_type) { return -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // This is not strictly needed but makes explicit that, at VideoFrame // level, DmaBufs are not mappable from userspace. storage_type != VideoFrame::STORAGE_DMABUFS && -@@ -417,7 +417,7 @@ VideoFrame::CreateFrameForGpuMemoryBufferOrMappableSII +@@ -421,7 +421,7 @@ VideoFrame::CreateFrameForGpuMemoryBufferOrMappableSII plane_size.width() * VideoFrame::BytesPerElement(*format, plane); } uint64_t modifier = gfx::NativePixmapHandle::kNoModifier; -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) bool is_native_buffer = gpu_memory_buffer ? (gpu_memory_buffer->GetType() != gfx::SHARED_MEMORY_BUFFER) -@@ -889,7 +889,7 @@ scoped_refptr VideoFrame::WrapExternalGpuM +@@ -850,7 +850,7 @@ scoped_refptr VideoFrame::WrapExternalGpuM return frame; } -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // static scoped_refptr VideoFrame::WrapExternalDmabufs( const VideoFrameLayout& layout, -@@ -1573,7 +1573,7 @@ scoped_refptr VideoFrame::shar +@@ -1541,7 +1541,7 @@ scoped_refptr VideoFrame::shar return wrapped_frame_ ? wrapped_frame_->shared_image() : shared_image_; } -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) size_t VideoFrame::NumDmabufFds() const { if (wrapped_frame_) { return wrapped_frame_->NumDmabufFds(); diff --git a/www/chromium/files/patch-media_base_video__frame.h b/www/chromium/files/patch-media_base_video__frame.h index 7bd2d18baa33..6d532d788aa5 100644 --- a/www/chromium/files/patch-media_base_video__frame.h +++ b/www/chromium/files/patch-media_base_video__frame.h @@ -1,47 +1,47 @@ ---- media/base/video_frame.h.orig 2025-05-28 14:55:43 UTC +--- media/base/video_frame.h.orig 2025-08-07 06:57:29 UTC +++ media/base/video_frame.h @@ -42,7 +42,7 @@ #include "ui/gfx/geometry/size.h" #include "ui/gfx/hdr_metadata.h" -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "base/files/scoped_file.h" #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) @@ -88,7 +88,7 @@ class MEDIA_EXPORT VideoFrame : public base::RefCounte STORAGE_UNOWNED_MEMORY = 2, // External, non owned data pointers. STORAGE_OWNED_MEMORY = 3, // VideoFrame has allocated its own data buffer. STORAGE_SHMEM = 4, // Backed by read-only shared memory. -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) STORAGE_DMABUFS = 5, // Each plane is stored into a DmaBuf. #endif STORAGE_GPU_MEMORY_BUFFER = 6, -@@ -420,7 +420,7 @@ class MEDIA_EXPORT VideoFrame : public base::RefCounte +@@ -400,7 +400,7 @@ class MEDIA_EXPORT VideoFrame : public base::RefCounte ReleaseMailboxAndGpuMemoryBufferCB mailbox_holder_and_gmb_release_cb, base::TimeDelta timestamp); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Wraps provided dmabufs // (https://www.kernel.org/doc/html/latest/driver-api/dma-buf.html) with a // VideoFrame. The frame will take ownership of |dmabuf_fds|, and will -@@ -733,7 +733,7 @@ class MEDIA_EXPORT VideoFrame : public base::RefCounte +@@ -716,7 +716,7 @@ class MEDIA_EXPORT VideoFrame : public base::RefCounte // wait for the included sync point. scoped_refptr shared_image() const; -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // The number of DmaBufs will be equal or less than the number of planes of // the frame. If there are less, this means that the last FD contains the // remaining planes. Should be > 0 for STORAGE_DMABUFS. -@@ -973,7 +973,7 @@ class MEDIA_EXPORT VideoFrame : public base::RefCounte +@@ -954,7 +954,7 @@ class MEDIA_EXPORT VideoFrame : public base::RefCounte // GpuMemoryBuffers. Clients will set this flag while creating a VideoFrame. bool is_mappable_si_enabled_ = false; -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Dmabufs for the frame, used when storage is STORAGE_DMABUFS. Size is either // equal or less than the number of planes of the frame. If it is less, then // the memory area represented by the last FD contains the remaining planes. diff --git a/www/chromium/files/patch-media_capture_video_create__video__capture__device__factory.cc b/www/chromium/files/patch-media_capture_video_create__video__capture__device__factory.cc index a1152a30f5d6..ced91471b4da 100644 --- a/www/chromium/files/patch-media_capture_video_create__video__capture__device__factory.cc +++ b/www/chromium/files/patch-media_capture_video_create__video__capture__device__factory.cc @@ -1,20 +1,20 @@ ---- media/capture/video/create_video_capture_device_factory.cc.orig 2025-04-04 08:52:13 UTC +--- media/capture/video/create_video_capture_device_factory.cc.orig 2025-08-07 06:57:29 UTC +++ media/capture/video/create_video_capture_device_factory.cc -@@ -12,7 +12,7 @@ +@@ -13,7 +13,7 @@ #include "media/capture/video/fake_video_capture_device_factory.h" #include "media/capture/video/file_video_capture_device_factory.h" -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "media/capture/video/linux/video_capture_device_factory_linux.h" #elif BUILDFLAG(IS_CHROMEOS) #include "media/capture/video/chromeos/public/cros_features.h" -@@ -55,7 +55,7 @@ CreateFakeVideoCaptureDeviceFactory() { +@@ -56,7 +56,7 @@ CreateFakeVideoCaptureDeviceFactory() { std::unique_ptr CreatePlatformSpecificVideoCaptureDeviceFactory( scoped_refptr ui_task_runner) { -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) return std::make_unique(ui_task_runner); #elif BUILDFLAG(IS_CHROMEOS) if (base::SysInfo::IsRunningOnChromeOS()) diff --git a/www/chromium/files/patch-media_capture_video_linux_fake__v4l2__impl.cc b/www/chromium/files/patch-media_capture_video_linux_fake__v4l2__impl.cc index c1df68787774..0afa1bd10cc4 100644 --- a/www/chromium/files/patch-media_capture_video_linux_fake__v4l2__impl.cc +++ b/www/chromium/files/patch-media_capture_video_linux_fake__v4l2__impl.cc @@ -1,11 +1,11 @@ ---- media/capture/video/linux/fake_v4l2_impl.cc.orig 2025-03-05 08:14:56 UTC +--- media/capture/video/linux/fake_v4l2_impl.cc.orig 2025-08-07 06:57:29 UTC +++ media/capture/video/linux/fake_v4l2_impl.cc -@@ -569,7 +569,7 @@ int FakeV4L2Impl::close(int fd) { +@@ -570,7 +570,7 @@ int FakeV4L2Impl::close(int fd) { return kSuccessReturnValue; } -int FakeV4L2Impl::ioctl(int fd, int request, void* argp) { +int FakeV4L2Impl::ioctl(int fd, unsigned long request, void* argp) { base::AutoLock lock(lock_); auto device_iter = opened_devices_.find(fd); if (device_iter == opened_devices_.end()) diff --git a/www/chromium/files/patch-media_capture_video_linux_v4l2__capture__delegate.cc b/www/chromium/files/patch-media_capture_video_linux_v4l2__capture__delegate.cc index 4f22e5f73af0..2d026363f01c 100644 --- a/www/chromium/files/patch-media_capture_video_linux_v4l2__capture__delegate.cc +++ b/www/chromium/files/patch-media_capture_video_linux_v4l2__capture__delegate.cc @@ -1,156 +1,156 @@ ---- media/capture/video/linux/v4l2_capture_delegate.cc.orig 2025-03-05 08:14:56 UTC +--- media/capture/video/linux/v4l2_capture_delegate.cc.orig 2025-08-07 06:57:29 UTC +++ media/capture/video/linux/v4l2_capture_delegate.cc @@ -10,8 +10,10 @@ #include "media/capture/video/linux/v4l2_capture_delegate.h" #include +#if !BUILDFLAG(IS_BSD) #include #include +#endif #include #include #include -@@ -34,17 +36,19 @@ +@@ -35,17 +37,19 @@ #include "media/capture/video/blob_utils.h" #include "media/capture/video/linux/video_capture_device_linux.h" -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "media/capture/capture_switches.h" #include "media/capture/video/linux/v4l2_capture_delegate_gpu_helper.h" #endif // BUILDFLAG(IS_LINUX) using media::mojom::MeteringMode; +#if !BUILDFLAG(IS_BSD) #if LINUX_VERSION_CODE < KERNEL_VERSION(4, 6, 0) // 16 bit depth, Realsense F200. #define V4L2_PIX_FMT_Z16 v4l2_fourcc('Z', '1', '6', ' ') #endif +#endif // TODO(aleksandar.stojiljkovic): Wrap this with kernel version check once the // format is introduced to kernel. -@@ -54,6 +58,14 @@ using media::mojom::MeteringMode; +@@ -55,6 +59,14 @@ using media::mojom::MeteringMode; #define V4L2_PIX_FMT_INVZ v4l2_fourcc('I', 'N', 'V', 'Z') #endif +#ifndef V4L2_COLORSPACE_OPRGB +#define V4L2_COLORSPACE_OPRGB V4L2_COLORSPACE_ADOBERGB +#endif + +#ifndef V4L2_XFER_FUNC_OPRGB +#define V4L2_XFER_FUNC_OPRGB V4L2_XFER_FUNC_ADOBERGB +#endif + namespace media { namespace { -@@ -273,7 +285,7 @@ bool V4L2CaptureDelegate::IsBlockedControl(int control +@@ -274,7 +286,7 @@ bool V4L2CaptureDelegate::IsBlockedControl(int control // static bool V4L2CaptureDelegate::IsControllableControl( int control_id, - const base::RepeatingCallback& do_ioctl) { + const base::RepeatingCallback& do_ioctl) { const int special_control_id = GetControllingSpecialControl(control_id); if (!special_control_id) { // The control is not controlled by a special control thus the control is -@@ -329,7 +341,7 @@ V4L2CaptureDelegate::V4L2CaptureDelegate( +@@ -330,7 +342,7 @@ V4L2CaptureDelegate::V4L2CaptureDelegate( is_capturing_(false), timeout_count_(0), rotation_(rotation) { -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) use_gpu_buffer_ = switches::IsVideoCaptureUseGpuMemoryBufferEnabled(); #endif // BUILDFLAG(IS_LINUX) } -@@ -456,7 +468,7 @@ void V4L2CaptureDelegate::AllocateAndStart( +@@ -457,7 +469,7 @@ void V4L2CaptureDelegate::AllocateAndStart( client_->OnStarted(); -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (use_gpu_buffer_) { v4l2_gpu_helper_ = std::make_unique(); } -@@ -800,7 +812,7 @@ base::WeakPtr V4L2CaptureDelegate +@@ -801,7 +813,7 @@ base::WeakPtr V4L2CaptureDelegate V4L2CaptureDelegate::~V4L2CaptureDelegate() = default; -bool V4L2CaptureDelegate::RunIoctl(int request, void* argp) { +bool V4L2CaptureDelegate::RunIoctl(unsigned int request, void* argp) { int num_retries = 0; for (; DoIoctl(request, argp) < 0 && num_retries < kMaxIOCtrlRetries; ++num_retries) { -@@ -810,7 +822,7 @@ bool V4L2CaptureDelegate::RunIoctl(int request, void* +@@ -811,7 +823,7 @@ bool V4L2CaptureDelegate::RunIoctl(int request, void* return num_retries != kMaxIOCtrlRetries; } -int V4L2CaptureDelegate::DoIoctl(int request, void* argp) { +int V4L2CaptureDelegate::DoIoctl(unsigned int request, void* argp) { return HANDLE_EINTR(v4l2_->ioctl(device_fd_.get(), request, argp)); } -@@ -821,6 +833,7 @@ bool V4L2CaptureDelegate::IsControllableControl(int co +@@ -822,6 +834,7 @@ bool V4L2CaptureDelegate::IsControllableControl(int co } void V4L2CaptureDelegate::ReplaceControlEventSubscriptions() { +#if !BUILDFLAG(IS_BSD) constexpr uint32_t kControlIds[] = {V4L2_CID_AUTO_EXPOSURE_BIAS, V4L2_CID_AUTO_WHITE_BALANCE, V4L2_CID_BRIGHTNESS, -@@ -848,6 +861,7 @@ void V4L2CaptureDelegate::ReplaceControlEventSubscript +@@ -849,6 +862,7 @@ void V4L2CaptureDelegate::ReplaceControlEventSubscript << ", {type = V4L2_EVENT_CTRL, id = " << control_id << "}"; } } +#endif } mojom::RangePtr V4L2CaptureDelegate::RetrieveUserControlRange(int control_id) { -@@ -1028,7 +1042,11 @@ void V4L2CaptureDelegate::DoCapture() { +@@ -1029,7 +1043,11 @@ void V4L2CaptureDelegate::DoCapture() { pollfd device_pfd = {}; device_pfd.fd = device_fd_.get(); +#if !BUILDFLAG(IS_BSD) device_pfd.events = POLLIN | POLLPRI; +#else + device_pfd.events = POLLIN; +#endif const int result = HANDLE_EINTR(v4l2_->poll(&device_pfd, 1, kCaptureTimeoutMs)); -@@ -1066,6 +1084,7 @@ void V4L2CaptureDelegate::DoCapture() { +@@ -1067,6 +1085,7 @@ void V4L2CaptureDelegate::DoCapture() { timeout_count_ = 0; } +#if !BUILDFLAG(IS_BSD) // Dequeue events if the driver has filled in some. if (device_pfd.revents & POLLPRI) { bool controls_changed = false; -@@ -1099,6 +1118,7 @@ void V4L2CaptureDelegate::DoCapture() { +@@ -1100,6 +1119,7 @@ void V4L2CaptureDelegate::DoCapture() { client_->OnCaptureConfigurationChanged(); } } +#endif // Deenqueue, send and reenqueue a buffer if the driver has filled one in. if (device_pfd.revents & POLLIN) { -@@ -1152,7 +1172,7 @@ void V4L2CaptureDelegate::DoCapture() { +@@ -1153,7 +1173,7 @@ void V4L2CaptureDelegate::DoCapture() { // workable on Linux. // See http://crbug.com/959919. -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (use_gpu_buffer_) { v4l2_gpu_helper_->OnIncomingCapturedData( client_.get(), buffer_tracker->start(), -@@ -1226,7 +1246,7 @@ void V4L2CaptureDelegate::SetErrorState(VideoCaptureEr +@@ -1227,7 +1247,7 @@ void V4L2CaptureDelegate::SetErrorState(VideoCaptureEr client_->OnError(error, from_here, reason); } -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) gfx::ColorSpace V4L2CaptureDelegate::BuildColorSpaceFromv4l2() { v4l2_colorspace v4l2_primary = (v4l2_colorspace)video_fmt_.fmt.pix.colorspace; v4l2_quantization v4l2_range = diff --git a/www/chromium/files/patch-media_capture_video_linux_video__capture__device__factory__v4l2.cc b/www/chromium/files/patch-media_capture_video_linux_video__capture__device__factory__v4l2.cc index 3c15c6bb7846..131b2d6f4090 100644 --- a/www/chromium/files/patch-media_capture_video_linux_video__capture__device__factory__v4l2.cc +++ b/www/chromium/files/patch-media_capture_video_linux_video__capture__device__factory__v4l2.cc @@ -1,80 +1,80 @@ ---- media/capture/video/linux/video_capture_device_factory_v4l2.cc.orig 2025-03-05 08:14:56 UTC +--- media/capture/video/linux/video_capture_device_factory_v4l2.cc.orig 2025-08-07 06:57:29 UTC +++ media/capture/video/linux/video_capture_device_factory_v4l2.cc -@@ -43,6 +43,7 @@ bool CompareCaptureDevices(const VideoCaptureDeviceInf +@@ -44,6 +44,7 @@ bool CompareCaptureDevices(const VideoCaptureDeviceInf return a.descriptor < b.descriptor; } +#if !BUILDFLAG(IS_OPENBSD) // USB VID and PID are both 4 bytes long. const size_t kVidPidSize = 4; const size_t kMaxInterfaceNameSize = 256; -@@ -75,11 +76,24 @@ std::string ExtractFileNameFromDeviceId(const std::str +@@ -76,11 +77,24 @@ std::string ExtractFileNameFromDeviceId(const std::str DCHECK(base::StartsWith(device_id, kDevDir, base::CompareCase::SENSITIVE)); return device_id.substr(strlen(kDevDir), device_id.length()); } +#endif class DevVideoFilePathsDeviceProvider : public VideoCaptureDeviceFactoryV4L2::DeviceProvider { public: void GetDeviceIds(std::vector* target_container) override { +#if BUILDFLAG(IS_OPENBSD) + char device[12]; + int fd; + /* unveil(2) limits access to /dev/, try /dev/video[0-7] */ + for (int n = 0; n < 8; n++) { + snprintf(device, sizeof(device), "/dev/video%d", n); + if ((fd = open(device, O_RDONLY)) != -1) { + close(fd); + target_container->emplace_back(device); + } + } +#else const base::FilePath path("/dev/"); base::FileEnumerator enumerator(path, false, base::FileEnumerator::FILES, "video*"); -@@ -87,9 +101,13 @@ class DevVideoFilePathsDeviceProvider +@@ -88,9 +102,13 @@ class DevVideoFilePathsDeviceProvider const base::FileEnumerator::FileInfo info = enumerator.GetInfo(); target_container->emplace_back(path.value() + info.GetName().value()); } +#endif } std::string GetDeviceModelId(const std::string& device_id) override { +#if BUILDFLAG(IS_OPENBSD) + return std::string(); +#else const std::string file_name = ExtractFileNameFromDeviceId(device_id); std::string usb_id; const std::string vid_path = -@@ -106,9 +124,13 @@ class DevVideoFilePathsDeviceProvider +@@ -107,9 +125,13 @@ class DevVideoFilePathsDeviceProvider } return usb_id; +#endif } std::string GetDeviceDisplayName(const std::string& device_id) override { +#if BUILDFLAG(IS_OPENBSD) + return std::string(); +#else const std::string file_name = ExtractFileNameFromDeviceId(device_id); const std::string interface_path = base::StringPrintf(kInterfacePathTemplate, file_name.c_str()); -@@ -119,6 +141,7 @@ class DevVideoFilePathsDeviceProvider +@@ -120,6 +142,7 @@ class DevVideoFilePathsDeviceProvider return std::string(); } return display_name; +#endif } }; -@@ -224,7 +247,7 @@ void VideoCaptureDeviceFactoryV4L2::GetDevicesInfo( +@@ -225,7 +248,7 @@ void VideoCaptureDeviceFactoryV4L2::GetDevicesInfo( std::move(callback).Run(std::move(devices_info)); } -int VideoCaptureDeviceFactoryV4L2::DoIoctl(int fd, int request, void* argp) { +int VideoCaptureDeviceFactoryV4L2::DoIoctl(int fd, unsigned int request, void* argp) { return HANDLE_EINTR(v4l2_->ioctl(fd, request, argp)); } diff --git a/www/chromium/files/patch-media_capture_video_video__capture__device__client.cc b/www/chromium/files/patch-media_capture_video_video__capture__device__client.cc index 8b1a2362dcb9..582398209965 100644 --- a/www/chromium/files/patch-media_capture_video_video__capture__device__client.cc +++ b/www/chromium/files/patch-media_capture_video_video__capture__device__client.cc @@ -1,11 +1,11 @@ ---- media/capture/video/video_capture_device_client.cc.orig 2025-04-04 08:52:13 UTC +--- media/capture/video/video_capture_device_client.cc.orig 2025-08-07 06:57:29 UTC +++ media/capture/video/video_capture_device_client.cc -@@ -172,7 +172,7 @@ FourccAndFlip GetFourccAndFlipFromPixelFormat( +@@ -173,7 +173,7 @@ FourccAndFlip GetFourccAndFlipFromPixelFormat( CHECK(!is_width_odd && !is_height_odd); return {libyuv::FOURCC_UYVY}; case media::PIXEL_FORMAT_RGB24: - if constexpr (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)) { + if constexpr (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD)) { // Linux RGB24 defines red at lowest byte address, // see http://linuxtv.org/downloads/v4l-dvb-apis/packed-rgb.html. return {libyuv::FOURCC_RAW}; diff --git a/www/chromium/files/patch-media_ffmpeg_scripts_robo__lib_config.py b/www/chromium/files/patch-media_ffmpeg_scripts_robo__lib_config.py index 6613dd75776c..ab5ebfcfc23c 100644 --- a/www/chromium/files/patch-media_ffmpeg_scripts_robo__lib_config.py +++ b/www/chromium/files/patch-media_ffmpeg_scripts_robo__lib_config.py @@ -1,56 +1,56 @@ ---- media/ffmpeg/scripts/robo_lib/config.py.orig 2025-02-19 07:43:18 UTC +--- media/ffmpeg/scripts/robo_lib/config.py.orig 2025-08-07 06:57:29 UTC +++ media/ffmpeg/scripts/robo_lib/config.py @@ -56,19 +56,13 @@ class RoboConfiguration: self._llvm_path = os.path.join(self.chrome_src(), "third_party", "llvm-build", "Release+Asserts", "bin") - self.EnsurePathContainsLLVM() - self.EnsureNoMakeInfo() self.EnsureFFmpegHome() self.EnsureGNConfig() - self.ComputeBranchName() if not quiet: shell.log(f"Using chrome src: {self.chrome_src()}") shell.log(f"Using script dir: {self._script_directory}") shell.log(f"Using ffmpeg home: {self.ffmpeg_home()}") - shell.log(f"On branch: {self.branch_name()}") - if self.sushi_branch_name(): - shell.log(f"On sushi branch: {self.sushi_branch_name()}") # Filename that we'll ask generate_gn.py to write git commands to. # TODO: Should this use script_directory, or stay with ffmpeg? As long @@ -187,9 +181,9 @@ class RoboConfiguration: if re.match(r"i.86", platform.machine()): self._host_architecture = "ia32" - elif platform.machine() == "x86_64" or platform.machine() == "AMD64": + elif platform.machine() == "x86_64" or platform.machine() == "AMD64" or platform.machine() == "amd64": self._host_architecture = "x64" - elif platform.machine() == "aarch64": + elif platform.machine() == "aarch64" or platform.machine() == "arm64": self._host_architecture = "arm64" elif platform.machine() == "mips32": self._host_architecture = "mipsel" -@@ -224,6 +218,10 @@ class RoboConfiguration: +@@ -228,6 +222,10 @@ class RoboConfiguration: elif platform.system() == "Windows" or "CYGWIN_NT" in platform.system( ): self._host_operating_system = "win" + elif platform.system() == "OpenBSD": + self._host_operating_system = "openbsd" + elif platform.system() == "FreeBSD": + self._host_operating_system = "freebsd" else: raise ValueError(f"Unsupported platform: {platform.system()}") -@@ -232,8 +230,8 @@ class RoboConfiguration: +@@ -236,8 +234,8 @@ class RoboConfiguration: wd = os.getcwd() # Walk up the tree until we find src/AUTHORS while wd != "/": - if os.path.isfile(os.path.join(wd, "src", "AUTHORS")): - self._chrome_src = os.path.join(wd, "src") + if os.path.isfile(os.path.join(wd, "third_party", "DEPS")): + self._chrome_src = wd return wd = os.path.dirname(wd) raise Exception("could not find src/AUTHORS in any parent of the wd") diff --git a/www/chromium/files/patch-media_gpu_sandbox_hardware__video__decoding__sandbox__hook__linux.cc b/www/chromium/files/patch-media_gpu_sandbox_hardware__video__decoding__sandbox__hook__linux.cc index da140f6eb91d..f21f394a47c9 100644 --- a/www/chromium/files/patch-media_gpu_sandbox_hardware__video__decoding__sandbox__hook__linux.cc +++ b/www/chromium/files/patch-media_gpu_sandbox_hardware__video__decoding__sandbox__hook__linux.cc @@ -1,44 +1,44 @@ ---- media/gpu/sandbox/hardware_video_decoding_sandbox_hook_linux.cc.orig 2025-04-04 08:52:13 UTC +--- media/gpu/sandbox/hardware_video_decoding_sandbox_hook_linux.cc.orig 2025-08-07 06:57:29 UTC +++ media/gpu/sandbox/hardware_video_decoding_sandbox_hook_linux.cc @@ -17,7 +17,9 @@ #include "media/gpu/vaapi/vaapi_wrapper.h" #endif +#if !BUILDFLAG(IS_BSD) using sandbox::syscall_broker::BrokerFilePermission; +#endif // TODO(b/195769334): the hardware video decoding sandbox is really only useful // when building with VA-API or V4L2 (otherwise, we're not really doing hardware @@ -33,6 +35,7 @@ using sandbox::syscall_broker::BrokerFilePermission; namespace media { namespace { +#if !BUILDFLAG(IS_BSD) void AllowAccessToRenderNodes(std::vector& permissions, bool include_sys_dev_char, bool read_write) { -@@ -189,6 +192,7 @@ bool HardwareVideoDecodingPreSandboxHookForV4L2( +@@ -180,6 +183,7 @@ bool HardwareVideoDecodingPreSandboxHookForV4L2( NOTREACHED(); #endif // BUILDFLAG(USE_V4L2_CODEC) } +#endif } // namespace -@@ -204,6 +208,7 @@ bool HardwareVideoDecodingPreSandboxHookForV4L2( +@@ -195,6 +199,7 @@ bool HardwareVideoDecodingPreSandboxHookForV4L2( // (at least). bool HardwareVideoDecodingPreSandboxHook( sandbox::policy::SandboxLinux::Options options) { +#if !BUILDFLAG(IS_BSD) using HardwareVideoDecodingProcessPolicy = sandbox::policy::HardwareVideoDecodingProcessPolicy; using PolicyType = -@@ -249,6 +254,7 @@ bool HardwareVideoDecodingPreSandboxHook( +@@ -240,6 +245,7 @@ bool HardwareVideoDecodingPreSandboxHook( // |permissions| is empty? sandbox::policy::SandboxLinux::GetInstance()->StartBrokerProcess( command_set, permissions, options); +#endif return true; } diff --git a/www/chromium/files/patch-media_gpu_test_video__frame__helpers.cc b/www/chromium/files/patch-media_gpu_test_video__frame__helpers.cc index e3db9463ac40..7b1e3c290f98 100644 --- a/www/chromium/files/patch-media_gpu_test_video__frame__helpers.cc +++ b/www/chromium/files/patch-media_gpu_test_video__frame__helpers.cc @@ -1,11 +1,11 @@ ---- media/gpu/test/video_frame_helpers.cc.orig 2025-04-04 08:52:13 UTC +--- media/gpu/test/video_frame_helpers.cc.orig 2025-08-07 06:57:29 UTC +++ media/gpu/test/video_frame_helpers.cc @@ -23,7 +23,7 @@ #include "ui/gfx/buffer_format_util.h" - #include "ui/gfx/gpu_memory_buffer.h" + #include "ui/gfx/gpu_memory_buffer_handle.h" -#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include #endif // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) diff --git a/www/chromium/files/patch-media_gpu_test_video__frame__validator.cc b/www/chromium/files/patch-media_gpu_test_video__frame__validator.cc index 2519ad940ad2..2774a9a9b427 100644 --- a/www/chromium/files/patch-media_gpu_test_video__frame__validator.cc +++ b/www/chromium/files/patch-media_gpu_test_video__frame__validator.cc @@ -1,11 +1,11 @@ ---- media/gpu/test/video_frame_validator.cc.orig 2025-04-04 08:52:13 UTC +--- media/gpu/test/video_frame_validator.cc.orig 2025-08-07 06:57:29 UTC +++ media/gpu/test/video_frame_validator.cc -@@ -34,7 +34,7 @@ +@@ -33,7 +33,7 @@ + #include "media/media_buildflags.h" #include "testing/gtest/include/gtest/gtest.h" - #include "ui/gfx/gpu_memory_buffer.h" -#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include #endif // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) diff --git a/www/chromium/files/patch-media_gpu_vaapi_vaapi__video__decoder.cc b/www/chromium/files/patch-media_gpu_vaapi_vaapi__video__decoder.cc index f7683b9c0f11..7d713531903c 100644 --- a/www/chromium/files/patch-media_gpu_vaapi_vaapi__video__decoder.cc +++ b/www/chromium/files/patch-media_gpu_vaapi_vaapi__video__decoder.cc @@ -1,11 +1,11 @@ ---- media/gpu/vaapi/vaapi_video_decoder.cc.orig 2025-07-02 06:08:04 UTC +--- media/gpu/vaapi/vaapi_video_decoder.cc.orig 2025-08-07 06:57:29 UTC +++ media/gpu/vaapi/vaapi_video_decoder.cc -@@ -786,7 +786,7 @@ void VaapiVideoDecoder::ApplyResolutionChangeWithScree +@@ -785,7 +785,7 @@ void VaapiVideoDecoder::ApplyResolutionChangeWithScree const gfx::Size decoder_natural_size = aspect_ratio_.GetNaturalSize(decoder_visible_rect); -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) std::optional allocator = base::BindRepeating(&AllocateCustomFrameProxy, weak_this_); std::vector candidates = { diff --git a/www/chromium/files/patch-media_gpu_vaapi_vaapi__wrapper.cc b/www/chromium/files/patch-media_gpu_vaapi_vaapi__wrapper.cc index b5d79736df4f..1df3e7a2e67c 100644 --- a/www/chromium/files/patch-media_gpu_vaapi_vaapi__wrapper.cc +++ b/www/chromium/files/patch-media_gpu_vaapi_vaapi__wrapper.cc @@ -1,11 +1,11 @@ ---- media/gpu/vaapi/vaapi_wrapper.cc.orig 2025-05-28 14:55:43 UTC +--- media/gpu/vaapi/vaapi_wrapper.cc.orig 2025-08-07 06:57:29 UTC +++ media/gpu/vaapi/vaapi_wrapper.cc -@@ -82,7 +82,7 @@ +@@ -83,7 +83,7 @@ using media_gpu_vaapi::kModuleVa_prot; #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "base/files/file_util.h" #include "base/strings/string_split.h" #endif diff --git a/www/chromium/files/patch-media_mojo_mojom_BUILD.gn b/www/chromium/files/patch-media_mojo_mojom_BUILD.gn index 7832da7c8076..bac04658cf39 100644 --- a/www/chromium/files/patch-media_mojo_mojom_BUILD.gn +++ b/www/chromium/files/patch-media_mojo_mojom_BUILD.gn @@ -1,11 +1,11 @@ ---- media/mojo/mojom/BUILD.gn.orig 2025-07-02 06:08:04 UTC +--- media/mojo/mojom/BUILD.gn.orig 2025-08-07 06:57:29 UTC +++ media/mojo/mojom/BUILD.gn -@@ -975,7 +975,7 @@ source_set("test_support") { +@@ -979,7 +979,7 @@ source_set("test_support") { sources = [] deps = [] - if (is_linux || is_chromeos) { + if (!is_bsd && (is_linux || is_chromeos)) { sources += [ "buffer_handle_test_util.cc", "buffer_handle_test_util.h", diff --git a/www/chromium/files/patch-media_mojo_mojom_video__frame__mojom__traits.cc b/www/chromium/files/patch-media_mojo_mojom_video__frame__mojom__traits.cc index b9a839065e96..aa3411ee0679 100644 --- a/www/chromium/files/patch-media_mojo_mojom_video__frame__mojom__traits.cc +++ b/www/chromium/files/patch-media_mojo_mojom_video__frame__mojom__traits.cc @@ -1,38 +1,38 @@ ---- media/mojo/mojom/video_frame_mojom_traits.cc.orig 2025-07-02 06:08:04 UTC +--- media/mojo/mojom/video_frame_mojom_traits.cc.orig 2025-08-07 06:57:29 UTC +++ media/mojo/mojom/video_frame_mojom_traits.cc -@@ -22,7 +22,7 @@ +@@ -23,7 +23,7 @@ #include "ui/gfx/mojom/color_space_mojom_traits.h" #include "ui/gfx/mojom/hdr_metadata_mojom_traits.h" -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "base/posix/eintr_wrapper.h" #include "media/gpu/buffer_validation.h" #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -@@ -159,7 +159,7 @@ media::mojom::VideoFrameDataPtr MakeVideoFrameData( +@@ -160,7 +160,7 @@ media::mojom::VideoFrameDataPtr MakeVideoFrameData( media::mojom::OpaqueVideoFrameData::New()); } -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) if (input->storage_type() == media::VideoFrame::STORAGE_DMABUFS) { // Duplicates the DMA buffer FDs to a new vector since this cannot take // ownership of the FDs in |input| due to constness. -@@ -190,7 +190,7 @@ media::mojom::VideoFrameDataPtr MakeVideoFrameData( +@@ -191,7 +191,7 @@ media::mojom::VideoFrameDataPtr MakeVideoFrameData( } // namespace -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // static bool StructTraits< media::mojom::ColorPlaneLayoutDataView, -@@ -429,7 +429,7 @@ bool StructTraits= kChannelMessageAlignment, ""); +#endif Channel::AlignedBuffer MakeAlignedBuffer(size_t size) { // Generic allocators (such as malloc) return a pointer that is suitably // aligned for storing any type of object with a fundamental alignment diff --git a/www/chromium/files/patch-net_BUILD.gn b/www/chromium/files/patch-net_BUILD.gn index ebbac67e5afb..e9e4804fd0c0 100644 --- a/www/chromium/files/patch-net_BUILD.gn +++ b/www/chromium/files/patch-net_BUILD.gn @@ -1,95 +1,95 @@ ---- net/BUILD.gn.orig 2025-07-02 06:08:04 UTC +--- net/BUILD.gn.orig 2025-08-07 06:57:29 UTC +++ net/BUILD.gn @@ -126,7 +126,7 @@ net_configs = [ "//build/config/compiler:wexit_time_destructors", ] -if (is_linux || is_chromeos) { +if ((is_linux || is_chromeos) && !is_bsd) { net_configs += [ "//build/config/linux:libresolv" ] } -@@ -1341,6 +1341,19 @@ component("net") { +@@ -1349,6 +1349,19 @@ component("net") { ] } + if (is_bsd) { + sources -= [ + "base/address_map_cache_linux.cc", + "base/address_map_cache_linux.h", + "base/address_map_linux.cc", + "base/address_map_linux.h", + "base/address_tracker_linux.cc", + "base/address_tracker_linux.h", + "base/network_change_notifier_linux.cc", + "base/network_interfaces_linux.cc", + ] + } + if (is_mac) { sources += [ "base/network_notification_thread_mac.cc", -@@ -1504,7 +1517,7 @@ component("net") { +@@ -1512,7 +1525,7 @@ component("net") { } # Use getifaddrs() on POSIX platforms, except Linux. - if (is_posix && !is_linux && !is_chromeos) { + if ((is_posix && !is_linux && !is_chromeos) || is_bsd) { sources += [ "base/network_interfaces_getifaddrs.cc", "base/network_interfaces_getifaddrs.h", -@@ -2211,7 +2224,7 @@ static_library("test_support") { +@@ -2236,7 +2249,7 @@ static_library("test_support") { ] } - if (is_linux || is_chromeos || is_android) { + if (!is_bsd && (is_linux || is_chromeos || is_android)) { sources += [ "base/address_tracker_linux_test_util.cc", "base/address_tracker_linux_test_util.h", -@@ -3038,14 +3051,14 @@ target(_test_target_type, "net_unittests") { +@@ -3056,14 +3069,14 @@ target(_test_target_type, "net_unittests") { ] } - if (is_linux) { + if (is_linux && !is_bsd) { sources += [ "base/network_change_notifier_linux_unittest.cc", "proxy_resolution/proxy_config_service_linux_unittest.cc", ] } - if (is_linux || is_chromeos) { + if ((is_linux || is_chromeos) && !is_bsd) { sources += [ "base/address_tracker_linux_unittest.cc", "base/network_interfaces_linux_unittest.cc", -@@ -3143,6 +3156,10 @@ target(_test_target_type, "net_unittests") { +@@ -3164,6 +3177,10 @@ target(_test_target_type, "net_unittests") { ] } + if (is_bsd) { + deps += [ "//sandbox/policy" ] + } + if (enable_websockets) { sources += [ "server/http_connection_unittest.cc", -@@ -3208,7 +3225,7 @@ target(_test_target_type, "net_unittests") { +@@ -3229,7 +3246,7 @@ target(_test_target_type, "net_unittests") { ] } - if (is_linux || is_chromeos) { + if ((is_linux || is_chromeos) && !is_bsd) { sources += [ "tools/quic/quic_simple_server_test.cc" ] } -@@ -3346,7 +3363,7 @@ target(_test_target_type, "net_unittests") { +@@ -3367,7 +3384,7 @@ target(_test_target_type, "net_unittests") { } # Use getifaddrs() on POSIX platforms, except Linux. - if (is_posix && !is_linux && !is_chromeos) { + if (is_posix && !is_linux && !is_chromeos && !is_bsd) { sources += [ "base/network_interfaces_getifaddrs_unittest.cc" ] } diff --git a/www/chromium/files/patch-net_dns_BUILD.gn b/www/chromium/files/patch-net_dns_BUILD.gn index 50be0c53f7f4..2a4999bdc858 100644 --- a/www/chromium/files/patch-net_dns_BUILD.gn +++ b/www/chromium/files/patch-net_dns_BUILD.gn @@ -1,31 +1,31 @@ ---- net/dns/BUILD.gn.orig 2025-02-19 07:43:18 UTC +--- net/dns/BUILD.gn.orig 2025-08-07 06:57:29 UTC +++ net/dns/BUILD.gn @@ -140,7 +140,7 @@ source_set("dns") { "dns_config_service_android.cc", "dns_config_service_android.h", ] - } else if (is_linux) { + } else if (is_linux && !is_bsd) { sources += [ "dns_config_service_linux.cc", "dns_config_service_linux.h", @@ -181,6 +181,7 @@ source_set("dns") { ":host_resolver_manager", ":mdns_client", "//net:net_public_deps", + "//printing/buildflags", ] - allow_circular_includes_from = [ -@@ -450,9 +451,9 @@ source_set("tests") { + if (enable_mdns) { +@@ -454,9 +455,9 @@ source_set("tests") { if (is_android) { sources += [ "dns_config_service_android_unittest.cc" ] - } else if (is_linux) { + } else if (is_linux && !is_bsd) { sources += [ "dns_config_service_linux_unittest.cc" ] - } else if (is_posix) { + } else if (is_posix && !is_bsd) { sources += [ "dns_config_service_posix_unittest.cc" ] } diff --git a/www/chromium/files/patch-net_dns_address__info.cc b/www/chromium/files/patch-net_dns_address__info.cc index af69bca18aed..ec6956f5a562 100644 --- a/www/chromium/files/patch-net_dns_address__info.cc +++ b/www/chromium/files/patch-net_dns_address__info.cc @@ -1,16 +1,16 @@ ---- net/dns/address_info.cc.orig 2024-07-30 11:12:21 UTC +--- net/dns/address_info.cc.orig 2025-08-07 06:57:29 UTC +++ net/dns/address_info.cc -@@ -83,8 +83,12 @@ AddressInfo::AddressInfoAndResult AddressInfo::Get( +@@ -78,8 +78,12 @@ AddressInfo::AddressInfoAndResult AddressInfo::Get( // error. // http://crbug.com/134142 err = ERR_NAME_NOT_RESOLVED; -#elif BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_FREEBSD) +#elif BUILDFLAG(IS_POSIX) +#ifdef EAI_NODATA if (os_error != EAI_NONAME && os_error != EAI_NODATA) +#else + if (os_error != EAI_NONAME) +#endif err = ERR_NAME_RESOLUTION_FAILED; #endif diff --git a/www/chromium/files/patch-net_proxy__resolution_proxy__config__service__linux.cc b/www/chromium/files/patch-net_proxy__resolution_proxy__config__service__linux.cc index 74b7e19e12d7..b707102c43f4 100644 --- a/www/chromium/files/patch-net_proxy__resolution_proxy__config__service__linux.cc +++ b/www/chromium/files/patch-net_proxy__resolution_proxy__config__service__linux.cc @@ -1,40 +1,40 @@ ---- net/proxy_resolution/proxy_config_service_linux.cc.orig 2025-05-28 14:55:43 UTC +--- net/proxy_resolution/proxy_config_service_linux.cc.orig 2025-08-07 06:57:29 UTC +++ net/proxy_resolution/proxy_config_service_linux.cc @@ -11,7 +11,9 @@ #include #include +#if !BUILDFLAG(IS_BSD) #include +#endif #include #include @@ -502,6 +504,7 @@ bool SettingGetterImplGSettings::CheckVersion() { } #endif // defined(USE_GIO) +#if !BUILDFLAG(IS_BSD) // Converts |value| from a decimal string to an int. If there was a failure // parsing, returns |default_value|. int StringToIntOrDefault(std::string_view value, int default_value) { @@ -1039,6 +1042,7 @@ class SettingGetterImplKDE : public ProxyConfigService // events on. scoped_refptr file_task_runner_; }; +#endif } // namespace -@@ -1258,9 +1262,11 @@ ProxyConfigServiceLinux::Delegate::Delegate( +@@ -1259,9 +1263,11 @@ ProxyConfigServiceLinux::Delegate::Delegate( case base::nix::DESKTOP_ENVIRONMENT_KDE4: case base::nix::DESKTOP_ENVIRONMENT_KDE5: case base::nix::DESKTOP_ENVIRONMENT_KDE6: +#if !BUILDFLAG(IS_BSD) setting_getter_ = std::make_unique(env_var_getter_.get()); break; +#endif case base::nix::DESKTOP_ENVIRONMENT_XFCE: case base::nix::DESKTOP_ENVIRONMENT_LXQT: case base::nix::DESKTOP_ENVIRONMENT_OTHER: diff --git a/www/chromium/files/patch-net_quic_quic__network__transaction__unittest.cc b/www/chromium/files/patch-net_quic_quic__network__transaction__unittest.cc index 7406ec73158a..b2d6fe26fc37 100644 --- a/www/chromium/files/patch-net_quic_quic__network__transaction__unittest.cc +++ b/www/chromium/files/patch-net_quic_quic__network__transaction__unittest.cc @@ -1,28 +1,28 @@ ---- net/quic/quic_network_transaction_unittest.cc.orig 2025-04-04 08:52:13 UTC +--- net/quic/quic_network_transaction_unittest.cc.orig 2025-08-07 06:57:29 UTC +++ net/quic/quic_network_transaction_unittest.cc -@@ -5202,10 +5202,10 @@ TEST_P(QuicNetworkTransactionTest, RstStreamBeforeHead +@@ -5203,10 +5203,10 @@ TEST_P(QuicNetworkTransactionTest, RstStreamBeforeHead TEST_P(QuicNetworkTransactionTest, BrokenAlternateProtocol) { // Alternate-protocol job - std::unique_ptr close( + std::unique_ptr test_close( ConstructServerConnectionClosePacket(1)); MockRead quic_reads[] = { - MockRead(ASYNC, close->data(), close->length()), + MockRead(ASYNC, test_close->data(), test_close->length()), MockRead(ASYNC, ERR_IO_PENDING), // No more data to read MockRead(ASYNC, OK), // EOF }; -@@ -5248,10 +5248,10 @@ TEST_P(QuicNetworkTransactionTest, +@@ -5249,10 +5249,10 @@ TEST_P(QuicNetworkTransactionTest, http_server_properties_ = std::make_unique(); // Alternate-protocol job - std::unique_ptr close( + std::unique_ptr test_close( ConstructServerConnectionClosePacket(1)); MockRead quic_reads[] = { - MockRead(ASYNC, close->data(), close->length()), + MockRead(ASYNC, test_close->data(), test_close->length()), MockRead(ASYNC, ERR_IO_PENDING), // No more data to read MockRead(ASYNC, OK), // EOF }; diff --git a/www/chromium/files/patch-net_url__request_url__request__context.cc b/www/chromium/files/patch-net_url__request_url__request__context.cc index 8b766328ce81..a21256a72eb2 100644 --- a/www/chromium/files/patch-net_url__request_url__request__context.cc +++ b/www/chromium/files/patch-net_url__request_url__request__context.cc @@ -1,11 +1,11 @@ ---- net/url_request/url_request_context.cc.orig 2025-04-04 08:52:13 UTC +--- net/url_request/url_request_context.cc.orig 2025-08-07 06:57:29 UTC +++ net/url_request/url_request_context.cc -@@ -119,7 +119,7 @@ const HttpNetworkSessionContext* URLRequestContext::Ge +@@ -120,7 +120,7 @@ const HttpNetworkSessionContext* URLRequestContext::Ge return &network_session->context(); } -#if !BUILDFLAG(IS_WIN) && !BUILDFLAG(IS_LINUX) +#if !BUILDFLAG(IS_WIN) && !BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_BSD) std::unique_ptr URLRequestContext::CreateRequest( const GURL& url, RequestPriority priority, diff --git a/www/chromium/files/patch-pdf_pdfium_pdfium__engine.cc b/www/chromium/files/patch-pdf_pdfium_pdfium__engine.cc index 7393e23f0c6e..5831d642c428 100644 --- a/www/chromium/files/patch-pdf_pdfium_pdfium__engine.cc +++ b/www/chromium/files/patch-pdf_pdfium_pdfium__engine.cc @@ -1,20 +1,20 @@ ---- pdf/pdfium/pdfium_engine.cc.orig 2025-07-02 06:08:04 UTC +--- pdf/pdfium/pdfium_engine.cc.orig 2025-08-07 06:57:29 UTC +++ pdf/pdfium/pdfium_engine.cc -@@ -113,7 +113,7 @@ +@@ -114,7 +114,7 @@ #include "ui/accessibility/ax_features.mojom-features.h" #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "pdf/pdfium/pdfium_font_linux.h" #endif -@@ -569,7 +569,7 @@ void InitializeSDK(bool enable_v8, +@@ -566,7 +566,7 @@ void InitializeSDK(bool enable_v8, FPDF_InitLibraryWithConfig(&config); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) g_font_mapping_mode = font_mapping_mode; InitializeLinuxFontMapper(); #endif diff --git a/www/chromium/files/patch-remoting_base_chromoting__event.cc b/www/chromium/files/patch-remoting_base_chromoting__event.cc deleted file mode 100644 index 0226e6c52ce4..000000000000 --- a/www/chromium/files/patch-remoting_base_chromoting__event.cc +++ /dev/null @@ -1,11 +0,0 @@ ---- remoting/base/chromoting_event.cc.orig 2025-03-05 08:14:56 UTC -+++ remoting/base/chromoting_event.cc -@@ -191,7 +191,7 @@ void ChromotingEvent::AddSystemInfo() { - SetString(kCpuKey, base::SysInfo::OperatingSystemArchitecture()); - SetString(kOsVersionKey, base::SysInfo::OperatingSystemVersion()); - SetString(kWebAppVersionKey, STRINGIZE(VERSION)); --#if BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - Os os = Os::CHROMOTING_LINUX; - #elif BUILDFLAG(IS_CHROMEOS) - Os os = Os::CHROMOTING_CHROMEOS; diff --git a/www/chromium/files/patch-remoting_host_chromoting__host__services__client.cc b/www/chromium/files/patch-remoting_host_chromoting__host__services__client.cc index f7f9101e2e32..31ab7cc2d558 100644 --- a/www/chromium/files/patch-remoting_host_chromoting__host__services__client.cc +++ b/www/chromium/files/patch-remoting_host_chromoting__host__services__client.cc @@ -1,11 +1,11 @@ ---- remoting/host/chromoting_host_services_client.cc.orig 2025-05-28 14:55:43 UTC +--- remoting/host/chromoting_host_services_client.cc.orig 2025-08-07 06:57:29 UTC +++ remoting/host/chromoting_host_services_client.cc -@@ -134,7 +134,7 @@ bool ChromotingHostServicesClient::EnsureSessionServic +@@ -139,7 +139,7 @@ bool ChromotingHostServicesClient::EnsureSessionServic if (session_services_remote_.is_bound()) { return true; } -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (!environment_->HasVar(kChromeRemoteDesktopSessionEnvVar)) { LOG(WARNING) << "Current desktop environment is not remotable."; return false; diff --git a/www/chromium/files/patch-remoting_host_create__desktop__interaction__strategy__factory.cc b/www/chromium/files/patch-remoting_host_create__desktop__interaction__strategy__factory.cc new file mode 100644 index 000000000000..86f49830f95e --- /dev/null +++ b/www/chromium/files/patch-remoting_host_create__desktop__interaction__strategy__factory.cc @@ -0,0 +1,20 @@ +--- remoting/host/create_desktop_interaction_strategy_factory.cc.orig 2025-08-07 06:57:29 UTC ++++ remoting/host/create_desktop_interaction_strategy_factory.cc +@@ -13,7 +13,7 @@ + #include "remoting/host/desktop_interaction_strategy.h" + #include "remoting/host/legacy_interaction_strategy.h" + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + #include "remoting/host/linux/gnome_interaction_strategy.h" + #endif // BUILDFLAG(IS_LINUX) + +@@ -25,7 +25,7 @@ CreateDesktopInteractionStrategyFactory( + scoped_refptr ui_task_runner, + scoped_refptr video_capture_task_runner, + scoped_refptr input_task_runner) { +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + if (base::CommandLine::ForCurrentProcess()->HasSwitch("enable-wayland")) { + return std::make_unique(ui_task_runner); + } diff --git a/www/chromium/files/patch-remoting_host_policy__watcher.cc b/www/chromium/files/patch-remoting_host_policy__watcher.cc index a28e2243f3fc..a8f5328e54c9 100644 --- a/www/chromium/files/patch-remoting_host_policy__watcher.cc +++ b/www/chromium/files/patch-remoting_host_policy__watcher.cc @@ -1,11 +1,11 @@ ---- remoting/host/policy_watcher.cc.orig 2025-05-28 14:55:43 UTC +--- remoting/host/policy_watcher.cc.orig 2025-08-07 06:57:29 UTC +++ remoting/host/policy_watcher.cc -@@ -182,7 +182,7 @@ base::Value::Dict PolicyWatcher::GetDefaultPolicies() +@@ -183,7 +183,7 @@ base::Value::Dict PolicyWatcher::GetDefaultPolicies() result.Set(key::kRemoteAccessHostAllowEnterpriseFileTransfer, false); result.Set(key::kClassManagementEnabled, "disabled"); #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) result.Set(key::kRemoteAccessHostMatchUsername, false); #endif #if !BUILDFLAG(IS_CHROMEOS) diff --git a/www/chromium/files/patch-remoting_host_remote__open__url_url__forwarder__configurator.cc b/www/chromium/files/patch-remoting_host_remote__open__url_url__forwarder__configurator.cc index b59e8f067d2b..23a12b09fde2 100644 --- a/www/chromium/files/patch-remoting_host_remote__open__url_url__forwarder__configurator.cc +++ b/www/chromium/files/patch-remoting_host_remote__open__url_url__forwarder__configurator.cc @@ -1,11 +1,11 @@ ---- remoting/host/remote_open_url/url_forwarder_configurator.cc.orig 2022-02-28 16:54:41 UTC +--- remoting/host/remote_open_url/url_forwarder_configurator.cc.orig 2025-08-07 06:57:29 UTC +++ remoting/host/remote_open_url/url_forwarder_configurator.cc -@@ -12,7 +12,7 @@ UrlForwarderConfigurator::UrlForwarderConfigurator() = +@@ -13,7 +13,7 @@ UrlForwarderConfigurator::UrlForwarderConfigurator() = UrlForwarderConfigurator::~UrlForwarderConfigurator() = default; -#if !BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_WIN) +#if !BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_WIN) && !BUILDFLAG(IS_BSD) // static std::unique_ptr UrlForwarderConfigurator::Create() { diff --git a/www/chromium/files/patch-remoting_host_remoting__me2me__host.cc b/www/chromium/files/patch-remoting_host_remoting__me2me__host.cc index f5bc389e9c67..2979792e5fe7 100644 --- a/www/chromium/files/patch-remoting_host_remoting__me2me__host.cc +++ b/www/chromium/files/patch-remoting_host_remoting__me2me__host.cc @@ -1,146 +1,146 @@ ---- remoting/host/remoting_me2me_host.cc.orig 2025-07-02 06:08:04 UTC +--- remoting/host/remoting_me2me_host.cc.orig 2025-08-07 06:57:29 UTC +++ remoting/host/remoting_me2me_host.cc -@@ -139,7 +139,7 @@ +@@ -140,7 +140,7 @@ #include "remoting/host/mac/permission_utils.h" #endif // BUILDFLAG(IS_APPLE) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #if defined(REMOTING_USE_X11) #include -@@ -149,7 +149,7 @@ +@@ -150,7 +150,7 @@ #endif // defined(REMOTING_USE_X11) #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "base/linux_util.h" #include "remoting/host/linux/audio_capturer_linux.h" #include "remoting/host/linux/certificate_watcher.h" -@@ -164,7 +164,7 @@ +@@ -165,7 +165,7 @@ #include "remoting/host/pairing_registry_delegate_win.h" #endif // BUILDFLAG(IS_WIN) -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "remoting/base/crash/crash_reporting_crashpad.h" #include "remoting/host/host_wtmpdb_logger.h" #endif // BUILDFLAG(IS_LINUX) -@@ -198,7 +198,7 @@ const char kApplicationName[] = "chromoting"; +@@ -199,7 +199,7 @@ const char kApplicationName[] = "chromoting"; const char kStdinConfigPath[] = "-"; #endif // !defined(REMOTING_MULTI_PROCESS) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // The command line switch used to pass name of the pipe to capture audio on // linux. const char kAudioPipeSwitchName[] = "audio-pipe-name"; -@@ -447,7 +447,7 @@ class HostProcess : public ConfigWatcher::Delegate, +@@ -448,7 +448,7 @@ class HostProcess : public ConfigWatcher::Delegate, std::unique_ptr agent_process_broker_client_; #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Watch for certificate changes and kill the host when changes occur std::unique_ptr cert_watcher_; #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -@@ -512,7 +512,7 @@ class HostProcess : public ConfigWatcher::Delegate, +@@ -513,7 +513,7 @@ class HostProcess : public ConfigWatcher::Delegate, std::unique_ptr ftl_echo_message_listener_; std::unique_ptr host_event_logger_; -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) std::unique_ptr host_wtmpdb_logger_; #endif std::unique_ptr power_save_blocker_; -@@ -839,7 +839,7 @@ void HostProcess::StartOnNetworkThread() { +@@ -840,7 +840,7 @@ void HostProcess::StartOnNetworkThread() { void HostProcess::ShutdownOnNetworkThread() { DCHECK(context_->network_task_runner()->BelongsToCurrentThread()); config_watcher_.reset(); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) cert_watcher_.reset(); #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) } -@@ -916,7 +916,7 @@ void HostProcess::CreateAuthenticatorFactory() { +@@ -917,7 +917,7 @@ void HostProcess::CreateAuthenticatorFactory() { context_->create_client_cert_store_callback(), service_account_email_, oauth_refresh_token_)); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) if (!cert_watcher_) { cert_watcher_ = std::make_unique( base::BindRepeating(&HostProcess::ShutdownHost, -@@ -1058,7 +1058,7 @@ void HostProcess::StartOnUiThread() { +@@ -1059,7 +1059,7 @@ void HostProcess::StartOnUiThread() { base::BindRepeating(&HostProcess::OnPolicyUpdate, base::Unretained(this)), base::BindRepeating(&HostProcess::OnPolicyError, base::Unretained(this))); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // If an audio pipe is specific on the command-line then initialize // AudioCapturerLinux to capture from it. base::FilePath audio_pipe_name = -@@ -1137,7 +1137,7 @@ void HostProcess::ShutdownOnUiThread() { +@@ -1138,7 +1138,7 @@ void HostProcess::ShutdownOnUiThread() { // It is now safe for the HostProcess to be deleted. self_ = nullptr; -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Cause the global AudioPipeReader to be freed, otherwise the audio // thread will remain in-use and prevent the process from exiting. // TODO(wez): DesktopEnvironmentFactory should own the pipe reader. -@@ -1145,7 +1145,7 @@ void HostProcess::ShutdownOnUiThread() { +@@ -1146,7 +1146,7 @@ void HostProcess::ShutdownOnUiThread() { AudioCapturerLinux::InitializePipeReader(nullptr, base::FilePath()); #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)) && defined(REMOTING_USE_X11) +#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD)) && defined(REMOTING_USE_X11) context_->input_task_runner()->PostTask( FROM_HERE, base::BindOnce([]() { delete ui::X11EventSource::GetInstance(); })); -@@ -1928,7 +1928,7 @@ void HostProcess::StartHost() { +@@ -1929,7 +1929,7 @@ void HostProcess::StartHost() { host_->AddExtension(std::make_unique()); -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) const base::CommandLine* cmd_line = base::CommandLine::ForCurrentProcess(); if (cmd_line->HasSwitch(kEnableWtmpdb)) { host_wtmpdb_logger_ = -@@ -1964,7 +1964,7 @@ void HostProcess::StartHost() { +@@ -1965,7 +1965,7 @@ void HostProcess::StartHost() { // addresses. host_->Start(*host_owner_emails_.begin()); -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // For Windows and Mac, ChromotingHostServices connections are handled by // another process, then the message pipe is forwarded to the network process. host_->StartChromotingHostServices(); -@@ -2109,7 +2109,7 @@ int HostProcessMain() { +@@ -2110,7 +2110,7 @@ int HostProcessMain() { HOST_LOG << "Starting host process: version " << STRINGIZE(VERSION); const base::CommandLine* cmd_line = base::CommandLine::ForCurrentProcess(); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #if defined(REMOTING_USE_X11) // Initialize Xlib for multi-threaded use, allowing non-Chromium code to // use X11 safely (such as the WebRTC capturer, GTK ...) -@@ -2154,7 +2154,7 @@ int HostProcessMain() { +@@ -2155,7 +2155,7 @@ int HostProcessMain() { return kInitializationFailed; } -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Log and cleanup the crash database. We do this after a short delay so that // the crash database has a chance to be updated properly if we just got // relaunched after a crash. -@@ -2174,7 +2174,7 @@ int HostProcessMain() { +@@ -2175,7 +2175,7 @@ int HostProcessMain() { std::unique_ptr network_change_notifier( net::NetworkChangeNotifier::CreateIfNeeded()); -#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)) && defined(REMOTING_USE_X11) +#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD)) && defined(REMOTING_USE_X11) // Create an X11EventSource on all UI threads, so the global X11 connection // (x11::Connection::Get()) can dispatch X events. auto event_source = diff --git a/www/chromium/files/patch-services_device_public_mojom_BUILD.gn b/www/chromium/files/patch-services_device_public_mojom_BUILD.gn index d3fcd6156eec..761b2ec2e862 100644 --- a/www/chromium/files/patch-services_device_public_mojom_BUILD.gn +++ b/www/chromium/files/patch-services_device_public_mojom_BUILD.gn @@ -1,11 +1,11 @@ ---- services/device/public/mojom/BUILD.gn.orig 2025-07-02 06:08:04 UTC +--- services/device/public/mojom/BUILD.gn.orig 2025-08-07 06:57:29 UTC +++ services/device/public/mojom/BUILD.gn -@@ -99,7 +99,7 @@ mojom("device_service") { +@@ -107,7 +107,7 @@ mojom("device_service") { enable_js_fuzzing = false enabled_features = [] - if ((is_linux || is_chromeos) && use_udev) { + if ((is_linux || is_chromeos) && !is_bsd && use_udev) { enabled_features += [ "enable_input_device_manager" ] } diff --git a/www/chromium/files/patch-services_device_serial_serial__io__handler__posix.cc b/www/chromium/files/patch-services_device_serial_serial__io__handler__posix.cc index c6e3f37fc9c4..f2983cb8e60a 100644 --- a/www/chromium/files/patch-services_device_serial_serial__io__handler__posix.cc +++ b/www/chromium/files/patch-services_device_serial_serial__io__handler__posix.cc @@ -1,11 +1,11 @@ ---- services/device/serial/serial_io_handler_posix.cc.orig 2024-08-26 12:06:38 UTC +--- services/device/serial/serial_io_handler_posix.cc.orig 2025-08-07 06:57:29 UTC +++ services/device/serial/serial_io_handler_posix.cc -@@ -73,7 +73,7 @@ bool BitrateToSpeedConstant(int bitrate, speed_t* spee +@@ -74,7 +74,7 @@ bool BitrateToSpeedConstant(int bitrate, speed_t* spee BITRATE_TO_SPEED_CASE(9600) BITRATE_TO_SPEED_CASE(19200) BITRATE_TO_SPEED_CASE(38400) -#if !BUILDFLAG(IS_MAC) +#if !BUILDFLAG(IS_MAC) && !BUILDFLAG(IS_BSD) BITRATE_TO_SPEED_CASE(57600) BITRATE_TO_SPEED_CASE(115200) BITRATE_TO_SPEED_CASE(230400) diff --git a/www/chromium/files/patch-services_device_usb_usb__device__handle__usbfs.cc b/www/chromium/files/patch-services_device_usb_usb__device__handle__usbfs.cc index 8a1c5f243f27..5827cb1fe23c 100644 --- a/www/chromium/files/patch-services_device_usb_usb__device__handle__usbfs.cc +++ b/www/chromium/files/patch-services_device_usb_usb__device__handle__usbfs.cc @@ -1,38 +1,47 @@ ---- services/device/usb/usb_device_handle_usbfs.cc.orig 2025-07-02 06:08:04 UTC +--- services/device/usb/usb_device_handle_usbfs.cc.orig 2025-08-07 06:57:29 UTC +++ services/device/usb/usb_device_handle_usbfs.cc @@ -38,7 +38,7 @@ #include "chromeos/dbus/permission_broker/permission_broker_client.h" #endif -#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + #include "base/metrics/histogram_macros.h" #include "services/device/public/cpp/device_features.h" #include "services/device/usb/usb_interface_detach_allowlist.h" - #endif // BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) -@@ -270,7 +270,7 @@ bool UsbDeviceHandleUsbfs::BlockingTaskRunnerHelper::R +@@ -55,7 +55,7 @@ using mojom::UsbTransferType; + + namespace { + +-#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + // Outcome of detaching a kernel driver before ClaimInterface(). + // These values are persisted to logs. Entries should not be renumbered and + // numeric values should never be reused. +@@ -297,7 +297,7 @@ bool UsbDeviceHandleUsbfs::BlockingTaskRunnerHelper::R return true; } -#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) bool UsbDeviceHandleUsbfs::BlockingTaskRunnerHelper::DetachInterface( int interface_number, const CombinedInterfaceInfo& interface_info) { -@@ -598,7 +598,7 @@ void UsbDeviceHandleUsbfs::ClaimInterface(int interfac +@@ -633,7 +633,7 @@ void UsbDeviceHandleUsbfs::ClaimInterface(int interfac return; } #endif -#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (base::FeatureList::IsEnabled(features::kAutomaticUsbDetach)) { const mojom::UsbConfigurationInfo* config = device_->GetActiveConfiguration(); -@@ -944,7 +944,7 @@ void UsbDeviceHandleUsbfs::ReleaseInterfaceComplete(in +@@ -979,7 +979,7 @@ void UsbDeviceHandleUsbfs::ReleaseInterfaceComplete(in return; } #endif -#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (base::FeatureList::IsEnabled(features::kAutomaticUsbDetach)) { helper_.AsyncCall(&BlockingTaskRunnerHelper::ReattachInterface) .WithArgs(interface_number) diff --git a/www/chromium/files/patch-services_device_usb_usb__service__fake.cc b/www/chromium/files/patch-services_device_usb_usb__service__fake.cc index dd8e89a9ce71..e76b20239c31 100644 --- a/www/chromium/files/patch-services_device_usb_usb__service__fake.cc +++ b/www/chromium/files/patch-services_device_usb_usb__service__fake.cc @@ -1,52 +1,53 @@ ---- services/device/usb/usb_service_fake.cc.orig 2023-03-09 06:31:50 UTC +--- services/device/usb/usb_service_fake.cc.orig 2025-08-07 06:57:29 UTC +++ services/device/usb/usb_service_fake.cc -@@ -0,0 +1,49 @@ +@@ -0,0 +1,50 @@ +// Copyright 2014 The Chromium Authors +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include "services/device/usb/usb_service_fake.h" + +#include + +#include +#include +#include +#include + +#include "base/barrier_closure.h" +#include "base/containers/contains.h" +#include "base/location.h" ++#include "base/notimplemented.h" +#include "base/memory/ref_counted_memory.h" +#include "base/memory/weak_ptr.h" +#include "base/strings/string_number_conversions.h" +#include "base/strings/utf_string_conversions.h" +#include "base/task/sequenced_task_runner.h" +#include "base/task/single_thread_task_runner.h" +#include "base/task/thread_pool.h" +#include "base/threading/scoped_blocking_call.h" +#include "build/build_config.h" +#include "components/device_event_log/device_event_log.h" +#include "services/device/usb/usb_device_handle.h" +#include "services/device/usb/usb_error.h" +#include "services/device/usb/webusb_descriptors.h" + +namespace device { + +UsbServiceImpl::UsbServiceImpl() + : task_runner_(base::SequencedTaskRunner::GetCurrentDefault()) { + NOTIMPLEMENTED(); +} + +UsbServiceImpl::~UsbServiceImpl() { + NOTIMPLEMENTED(); + NotifyWillDestroyUsbService(); +} + +void UsbServiceImpl::GetDevices(GetDevicesCallback callback) { + NOTIMPLEMENTED(); + DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); + UsbService::GetDevices(std::move(callback)); +} + +} // namespace device diff --git a/www/chromium/files/patch-services_network_BUILD.gn b/www/chromium/files/patch-services_network_BUILD.gn index 10f43d6030c0..8ee159e01f40 100644 --- a/www/chromium/files/patch-services_network_BUILD.gn +++ b/www/chromium/files/patch-services_network_BUILD.gn @@ -1,10 +1,10 @@ ---- services/network/BUILD.gn.orig 2025-07-02 06:08:04 UTC +--- services/network/BUILD.gn.orig 2025-08-07 06:57:29 UTC +++ services/network/BUILD.gn -@@ -417,7 +417,6 @@ if (is_linux || is_chromeos) { +@@ -423,7 +423,6 @@ if (is_linux || is_chromeos) { ] deps = [ "//base:base", - "//sandbox/linux:sandbox_services", "//sandbox/policy:policy", ] configs += [ "//build/config/compiler:wexit_time_destructors" ] diff --git a/www/chromium/files/patch-services_network_network__context.cc b/www/chromium/files/patch-services_network_network__context.cc index 6740f701df54..e5ae17d32dfe 100644 --- a/www/chromium/files/patch-services_network_network__context.cc +++ b/www/chromium/files/patch-services_network_network__context.cc @@ -1,20 +1,20 @@ ---- services/network/network_context.cc.orig 2025-07-02 06:08:04 UTC +--- services/network/network_context.cc.orig 2025-08-07 06:57:29 UTC +++ services/network/network_context.cc -@@ -611,7 +611,7 @@ NetworkContext::NetworkContextHttpAuthPreferences:: +@@ -628,7 +628,7 @@ NetworkContext::NetworkContextHttpAuthPreferences:: NetworkContext::NetworkContextHttpAuthPreferences:: ~NetworkContextHttpAuthPreferences() = default; -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) bool NetworkContext::NetworkContextHttpAuthPreferences::AllowGssapiLibraryLoad() const { if (network_service_) { -@@ -2556,7 +2556,7 @@ void NetworkContext::OnHttpAuthDynamicParamsChanged( +@@ -2596,7 +2596,7 @@ void NetworkContext::OnHttpAuthDynamicParamsChanged( http_auth_dynamic_network_service_params->android_negotiate_account_type); #endif // BUILDFLAG(IS_ANDROID) -#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) http_auth_merged_preferences_.set_allow_gssapi_library_load( http_auth_dynamic_network_service_params->allow_gssapi_library_load); #endif // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) diff --git a/www/chromium/files/patch-services_network_network__context.h b/www/chromium/files/patch-services_network_network__context.h index f7cb52d775ad..84a973894e9e 100644 --- a/www/chromium/files/patch-services_network_network__context.h +++ b/www/chromium/files/patch-services_network_network__context.h @@ -1,11 +1,11 @@ ---- services/network/network_context.h.orig 2025-07-02 06:08:04 UTC +--- services/network/network_context.h.orig 2025-08-07 06:57:29 UTC +++ services/network/network_context.h -@@ -730,7 +730,7 @@ class COMPONENT_EXPORT(NETWORK_SERVICE) NetworkContext +@@ -737,7 +737,7 @@ class COMPONENT_EXPORT(NETWORK_SERVICE) NetworkContext public: explicit NetworkContextHttpAuthPreferences(NetworkService* network_service); ~NetworkContextHttpAuthPreferences() override; -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) bool AllowGssapiLibraryLoad() const override; #endif // BUILDFLAG(IS_LINUX) private: diff --git a/www/chromium/files/patch-services_network_network__service.cc b/www/chromium/files/patch-services_network_network__service.cc index 2087a12e2163..3b649fec2422 100644 --- a/www/chromium/files/patch-services_network_network__service.cc +++ b/www/chromium/files/patch-services_network_network__service.cc @@ -1,34 +1,34 @@ ---- services/network/network_service.cc.orig 2025-07-02 06:08:04 UTC +--- services/network/network_service.cc.orig 2025-08-07 06:57:29 UTC +++ services/network/network_service.cc -@@ -102,11 +102,11 @@ +@@ -104,11 +104,11 @@ #include "third_party/boringssl/src/include/openssl/cpu.h" #endif -#if BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CASTOS) +#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && !BUILDFLAG(IS_CASTOS) #include "components/os_crypt/sync/key_storage_config_linux.h" #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "services/network/network_change_notifier_passive_factory.h" #endif -@@ -1042,7 +1042,7 @@ void NetworkService::SetExplicitlyAllowedPorts( +@@ -1049,7 +1049,7 @@ void NetworkService::SetExplicitlyAllowedPorts( net::SetExplicitlyAllowedPorts(ports); } -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) void NetworkService::SetGssapiLibraryLoadObserver( mojo::PendingRemote gssapi_library_load_observer) { -@@ -1148,7 +1148,7 @@ NetworkService::CreateHttpAuthHandlerFactory(NetworkCo +@@ -1155,7 +1155,7 @@ NetworkService::CreateHttpAuthHandlerFactory(NetworkCo ); } -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) void NetworkService::OnBeforeGssapiLibraryLoad() { if (gssapi_library_load_observer_.is_bound()) { gssapi_library_load_observer_->OnBeforeGssapiLibraryLoad(); diff --git a/www/chromium/files/patch-services_network_network__service.h b/www/chromium/files/patch-services_network_network__service.h index c2de826ab678..6ebb4e68425c 100644 --- a/www/chromium/files/patch-services_network_network__service.h +++ b/www/chromium/files/patch-services_network_network__service.h @@ -1,29 +1,29 @@ ---- services/network/network_service.h.orig 2025-07-02 06:08:04 UTC +--- services/network/network_service.h.orig 2025-08-07 06:57:29 UTC +++ services/network/network_service.h -@@ -251,7 +251,7 @@ class COMPONENT_EXPORT(NETWORK_SERVICE) NetworkService +@@ -252,7 +252,7 @@ class COMPONENT_EXPORT(NETWORK_SERVICE) NetworkService const std::vector& settings) override; void SetExplicitlyAllowedPorts(const std::vector& ports) override; -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) void SetGssapiLibraryLoadObserver( mojo::PendingRemote gssapi_library_load_observer) override; -@@ -294,7 +294,7 @@ class COMPONENT_EXPORT(NETWORK_SERVICE) NetworkService +@@ -295,7 +295,7 @@ class COMPONENT_EXPORT(NETWORK_SERVICE) NetworkService std::unique_ptr CreateHttpAuthHandlerFactory( NetworkContext* network_context); -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // This is called just before a GSSAPI library may be loaded. void OnBeforeGssapiLibraryLoad(); #endif // BUILDFLAG(IS_LINUX) -@@ -552,7 +552,7 @@ class COMPONENT_EXPORT(NETWORK_SERVICE) NetworkService +@@ -553,7 +553,7 @@ class COMPONENT_EXPORT(NETWORK_SERVICE) NetworkService // leaking stale listeners between tests. std::unique_ptr mock_network_change_notifier_; -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) mojo::Remote gssapi_library_load_observer_; #endif // BUILDFLAG(IS_LINUX) diff --git a/www/chromium/files/patch-services_network_public_cpp_BUILD.gn b/www/chromium/files/patch-services_network_public_cpp_BUILD.gn index d3a3ec7f95e4..f791848f3a4a 100644 --- a/www/chromium/files/patch-services_network_public_cpp_BUILD.gn +++ b/www/chromium/files/patch-services_network_public_cpp_BUILD.gn @@ -1,11 +1,11 @@ ---- services/network/public/cpp/BUILD.gn.orig 2025-07-02 06:08:04 UTC +--- services/network/public/cpp/BUILD.gn.orig 2025-08-07 06:57:29 UTC +++ services/network/public/cpp/BUILD.gn -@@ -654,7 +654,7 @@ component("cpp_base") { +@@ -677,7 +677,7 @@ component("cpp_base") { sources += [ "transferable_directory_fuchsia.cc" ] } - if (is_linux) { + if (is_linux && !is_bsd) { sources += [ "network_interface_change_listener_mojom_traits.cc", "network_interface_change_listener_mojom_traits.h", diff --git a/www/chromium/files/patch-services_on__device__model_on__device__model__service.h b/www/chromium/files/patch-services_on__device__model_on__device__model__service.h index 8ac8fd1a0d0f..6ed7c0ea0f90 100644 --- a/www/chromium/files/patch-services_on__device__model_on__device__model__service.h +++ b/www/chromium/files/patch-services_on__device__model_on__device__model__service.h @@ -1,22 +1,22 @@ ---- services/on_device_model/on_device_model_service.h.orig 2024-11-14 07:57:23 UTC +--- services/on_device_model/on_device_model_service.h.orig 2025-08-07 06:57:29 UTC +++ services/on_device_model/on_device_model_service.h @@ -31,6 +31,10 @@ class OnDeviceModelInternalImpl; class TsHolder; } +#if BUILDFLAG(IS_BSD) +#include "sandbox/policy/sandbox.h" +#endif + namespace on_device_model { - class COMPONENT_EXPORT(ON_DEVICE_MODEL) OnDeviceModelService -@@ -44,7 +48,7 @@ class COMPONENT_EXPORT(ON_DEVICE_MODEL) OnDeviceModelS + inline constexpr base::TimeDelta kDefaultModelIdleTimeout = base::Minutes(5); +@@ -46,7 +50,7 @@ class COMPONENT_EXPORT(ON_DEVICE_MODEL) OnDeviceModelS // Must be called in the service's process after the run loop finished. [[nodiscard]] static bool Shutdown(); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) static void AddSandboxLinuxOptions( sandbox::policy::SandboxLinux::Options& options); #endif diff --git a/www/chromium/files/patch-services_on__device__model_pre__sandbox__init.cc b/www/chromium/files/patch-services_on__device__model_pre__sandbox__init.cc index f2c3ca39d2b4..f8e1c16d2a26 100644 --- a/www/chromium/files/patch-services_on__device__model_pre__sandbox__init.cc +++ b/www/chromium/files/patch-services_on__device__model_pre__sandbox__init.cc @@ -1,38 +1,38 @@ ---- services/on_device_model/pre_sandbox_init.cc.orig 2025-07-02 06:08:04 UTC +--- services/on_device_model/pre_sandbox_init.cc.orig 2025-08-07 06:57:29 UTC +++ services/on_device_model/pre_sandbox_init.cc -@@ -14,7 +14,7 @@ - #include "services/on_device_model/ml/chrome_ml.h" // nogncheck +@@ -15,7 +15,7 @@ + #include "services/on_device_model/ml/gpu_blocklist.h" // nogncheck #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "gpu/config/gpu_info_collector.h" // nogncheck #endif -@@ -28,7 +28,7 @@ namespace on_device_model { +@@ -29,7 +29,7 @@ namespace on_device_model { namespace { -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) constexpr uint32_t kVendorIdAMD = 0x1002; constexpr uint32_t kVendorIdIntel = 0x8086; constexpr uint32_t kVendorIdNVIDIA = 0x10DE; -@@ -62,7 +62,7 @@ void UpdateSandboxOptionsForGpu( +@@ -63,7 +63,7 @@ void UpdateSandboxOptionsForGpu( // enabling the sandbox. BASE_FEATURE(kOnDeviceModelWarmDrivers, "OnDeviceModelWarmDrivers", -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) base::FEATURE_ENABLED_BY_DEFAULT #else base::FEATURE_DISABLED_BY_DEFAULT -@@ -127,7 +127,7 @@ bool OnDeviceModelService::PreSandboxInit() { +@@ -132,7 +132,7 @@ bool OnDeviceModelService::PreSandboxInit() { return true; } -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // static void OnDeviceModelService::AddSandboxLinuxOptions( sandbox::policy::SandboxLinux::Options& options) { diff --git a/www/chromium/files/patch-services_resource__coordinator_memory__instrumentation_queued__request__dispatcher.cc b/www/chromium/files/patch-services_resource__coordinator_memory__instrumentation_queued__request__dispatcher.cc index 11be16df0415..9506602658e3 100644 --- a/www/chromium/files/patch-services_resource__coordinator_memory__instrumentation_queued__request__dispatcher.cc +++ b/www/chromium/files/patch-services_resource__coordinator_memory__instrumentation_queued__request__dispatcher.cc @@ -1,65 +1,65 @@ ---- services/resource_coordinator/memory_instrumentation/queued_request_dispatcher.cc.orig 2025-06-17 06:32:04 UTC +--- services/resource_coordinator/memory_instrumentation/queued_request_dispatcher.cc.orig 2025-08-07 06:57:29 UTC +++ services/resource_coordinator/memory_instrumentation/queued_request_dispatcher.cc -@@ -54,7 +54,7 @@ uint32_t CalculatePrivateFootprintKb(const mojom::RawO +@@ -55,7 +55,7 @@ uint32_t CalculatePrivateFootprintKb(const mojom::RawO uint32_t shared_resident_kb) { DCHECK(os_dump.platform_private_footprint); #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || \ - BUILDFLAG(IS_FUCHSIA) + BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) uint64_t rss_anon_bytes = os_dump.platform_private_footprint->rss_anon_bytes; uint64_t vm_swap_bytes = os_dump.platform_private_footprint->vm_swap_bytes; return (rss_anon_bytes + vm_swap_bytes) / 1024; -@@ -83,7 +83,7 @@ memory_instrumentation::mojom::OSMemDumpPtr CreatePubl +@@ -84,7 +84,7 @@ memory_instrumentation::mojom::OSMemDumpPtr CreatePubl os_dump->is_peak_rss_resettable = internal_os_dump.is_peak_rss_resettable; os_dump->private_footprint_kb = CalculatePrivateFootprintKb(internal_os_dump, shared_resident_kb); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) os_dump->private_footprint_swap_kb = internal_os_dump.platform_private_footprint->vm_swap_bytes / 1024; os_dump->mappings_count = internal_os_dump.mappings_count; -@@ -222,7 +222,7 @@ void QueuedRequestDispatcher::SetUpAndDispatch( +@@ -223,7 +223,7 @@ void QueuedRequestDispatcher::SetUpAndDispatch( // On most platforms each process can dump data about their own process // so ask each process to do so Linux is special see below. -#if !BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CHROMEOS) +#if !BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CHROMEOS) && !BUILDFLAG(IS_BSD) request->pending_responses.insert({client_info.pid, ResponseType::kOSDump}); client->RequestOSMemoryDump( request->memory_map_option(), request->memory_dump_flags(), -@@ -237,7 +237,7 @@ void QueuedRequestDispatcher::SetUpAndDispatch( +@@ -238,7 +238,7 @@ void QueuedRequestDispatcher::SetUpAndDispatch( // In some cases, OS stats can only be dumped from a privileged process to // get around to sandboxing/selinux restrictions (see crbug.com/461788). -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) std::vector pids; mojom::ClientProcess* browser_client = nullptr; base::ProcessId browser_client_pid = base::kNullProcessId; -@@ -284,7 +284,7 @@ void QueuedRequestDispatcher::SetUpAndDispatchVmRegion +@@ -285,7 +285,7 @@ void QueuedRequestDispatcher::SetUpAndDispatchVmRegion const OsCallback& os_callback) { // On Linux, OS stats can only be dumped from a privileged process to // get around to sandboxing/selinux restrictions (see crbug.com/461788). -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) mojom::ClientProcess* browser_client = nullptr; base::ProcessId browser_client_pid = 0; for (const auto& client_info : clients) { -@@ -334,7 +334,7 @@ QueuedRequestDispatcher::FinalizeVmRegionRequest( +@@ -335,7 +335,7 @@ QueuedRequestDispatcher::FinalizeVmRegionRequest( // each client process provides 1 OS dump, % the case where the client is // disconnected mid dump. OSMemDumpMap& extra_os_dumps = response.second.os_dumps; -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) for (auto& kv : extra_os_dumps) { auto pid = kv.first == base::kNullProcessId ? original_pid : kv.first; DCHECK(results.find(pid) == results.end()); -@@ -395,7 +395,7 @@ void QueuedRequestDispatcher::Finalize(QueuedRequest* +@@ -396,7 +396,7 @@ void QueuedRequestDispatcher::Finalize(QueuedRequest* // crash). In the latter case (OS_LINUX) we expect the full map to come // from the browser process response. OSMemDumpMap& extra_os_dumps = response.second.os_dumps; -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) for (const auto& kv : extra_os_dumps) { auto pid = kv.first == base::kNullProcessId ? original_pid : kv.first; DCHECK_EQ(pid_to_os_dump[pid], nullptr); diff --git a/www/chromium/files/patch-services_resource__coordinator_public_cpp_memory__instrumentation_os__metrics__bsd.cc b/www/chromium/files/patch-services_resource__coordinator_public_cpp_memory__instrumentation_os__metrics__bsd.cc index facff4f9072b..c277c24ab78a 100644 --- a/www/chromium/files/patch-services_resource__coordinator_public_cpp_memory__instrumentation_os__metrics__bsd.cc +++ b/www/chromium/files/patch-services_resource__coordinator_public_cpp_memory__instrumentation_os__metrics__bsd.cc @@ -1,62 +1,64 @@ ---- services/resource_coordinator/public/cpp/memory_instrumentation/os_metrics_bsd.cc.orig 2025-06-17 06:32:04 UTC +--- services/resource_coordinator/public/cpp/memory_instrumentation/os_metrics_bsd.cc.orig 2025-08-07 06:57:29 UTC +++ services/resource_coordinator/public/cpp/memory_instrumentation/os_metrics_bsd.cc -@@ -0,0 +1,59 @@ +@@ -0,0 +1,61 @@ +// Copyright 2022 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include "services/resource_coordinator/public/cpp/memory_instrumentation/os_metrics.h" + ++#include "base/notimplemented.h" ++ +#include "base/memory/page_size.h" +#include "base/process/process.h" +#include "base/process/process_handle.h" + +#include + +#include + +#if BUILDFLAG(IS_OPENBSD) +#define vm_rssize info.p_vm_rssize +#elif BUILDFLAG(IS_FREEBSD) +#include +#define vm_rssize info.ki_rssize +#endif + +namespace memory_instrumentation { + +// static +bool OSMetrics::FillOSMemoryDump(base::ProcessId pid, + const MemDumpFlagSet& flags, + mojom::RawOSMemDump* dump) { + base::Process process = pid == base::kNullProcessId + ? base::Process::Current() + : base::Process::Open(pid); + const size_t kPageSize = base::GetPageSize(); + struct kinfo_proc info; + size_t length = sizeof(struct kinfo_proc); +#if BUILDFLAG(IS_OPENBSD) + int mib[] = { CTL_KERN, KERN_PROC, KERN_PROC_PID, process.Handle(), + static_cast(length), 1 }; +#elif BUILDFLAG(IS_FREEBSD) + int mib[] = { CTL_KERN, KERN_PROC, KERN_PROC_PID, process.Handle() }; +#endif + + if (sysctl(mib, std::size(mib), &info, &length, NULL, 0) < 0) + return false; + + dump->resident_set_kb = (vm_rssize * kPageSize) / 1024; + dump->platform_private_footprint->rss_anon_bytes = + vm_rssize * kPageSize; + dump->platform_private_footprint->vm_swap_bytes = 0; + + return true; +} + +// static +std::vector OSMetrics::GetProcessMemoryMaps( + base::ProcessId) { + NOTIMPLEMENTED(); + return std::vector(); +} + +} // namespace memory_instrumentation diff --git a/www/chromium/files/patch-services_screen__ai_sandbox_screen__ai__sandbox__hook__linux.cc b/www/chromium/files/patch-services_screen__ai_sandbox_screen__ai__sandbox__hook__linux.cc index 6f0894c533ea..fd7442aedde8 100644 --- a/www/chromium/files/patch-services_screen__ai_sandbox_screen__ai__sandbox__hook__linux.cc +++ b/www/chromium/files/patch-services_screen__ai_sandbox_screen__ai__sandbox__hook__linux.cc @@ -1,18 +1,18 @@ ---- services/screen_ai/sandbox/screen_ai_sandbox_hook_linux.cc.orig 2025-03-05 08:14:56 UTC +--- services/screen_ai/sandbox/screen_ai_sandbox_hook_linux.cc.orig 2025-08-07 06:57:29 UTC +++ services/screen_ai/sandbox/screen_ai_sandbox_hook_linux.cc -@@ -58,6 +58,7 @@ bool ScreenAIPreSandboxHook(base::FilePath binary_path +@@ -70,6 +70,7 @@ bool ScreenAIPreSandboxHook(base::FilePath binary_path } } +#if !BUILDFLAG(IS_BSD) auto* instance = sandbox::policy::SandboxLinux::GetInstance(); std::vector permissions{ -@@ -79,6 +80,7 @@ bool ScreenAIPreSandboxHook(base::FilePath binary_path +@@ -91,6 +92,7 @@ bool ScreenAIPreSandboxHook(base::FilePath binary_path sandbox::syscall_broker::COMMAND_OPEN}), permissions, options); instance->EngageNamespaceSandboxIfPossible(); +#endif return true; } diff --git a/www/chromium/files/patch-services_screen__ai_screen__ai__service__impl.cc b/www/chromium/files/patch-services_screen__ai_screen__ai__service__impl.cc new file mode 100644 index 000000000000..34ed40fa0f09 --- /dev/null +++ b/www/chromium/files/patch-services_screen__ai_screen__ai__service__impl.cc @@ -0,0 +1,20 @@ +--- services/screen_ai/screen_ai_service_impl.cc.orig 2025-08-07 06:57:29 UTC ++++ services/screen_ai/screen_ai_service_impl.cc +@@ -38,7 +38,7 @@ + #include "ui/accessibility/ax_tree_id.h" + #include "ui/gfx/geometry/rect_f.h" + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + #include "partition_alloc/buildflags.h" + + #if PA_BUILDFLAG( \ +@@ -266,7 +266,7 @@ ScreenAIService::ScreenAIService( + : factory_receiver_(this, std::move(receiver)), + ocr_receiver_(this), + main_content_extraction_receiver_(this) { +-#if BUILDFLAG(IS_LINUX) && \ ++#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && \ + PA_BUILDFLAG( \ + ENABLE_ALLOCATOR_SHIM_PARTITION_ALLOC_DISPATCH_WITH_ADVANCED_CHECKS_SUPPORT) + // TODO(crbug.com/418199684): Remove when the bug is fixed. diff --git a/www/chromium/files/patch-skia_ext_font__utils.cc b/www/chromium/files/patch-skia_ext_font__utils.cc index ab91a0543b0e..660608402e0a 100644 --- a/www/chromium/files/patch-skia_ext_font__utils.cc +++ b/www/chromium/files/patch-skia_ext_font__utils.cc @@ -1,20 +1,20 @@ ---- skia/ext/font_utils.cc.orig 2025-05-05 10:57:53 UTC +--- skia/ext/font_utils.cc.orig 2025-08-07 06:57:29 UTC +++ skia/ext/font_utils.cc @@ -21,7 +21,7 @@ #include "third_party/skia/include/ports/SkFontMgr_mac_ct.h" #endif -#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "third_party/skia/include/ports/SkFontConfigInterface.h" #include "third_party/skia/include/ports/SkFontMgr_FontConfigInterface.h" #include "third_party/skia/include/ports/SkFontScanner_Fontations.h" -@@ -67,7 +67,7 @@ static sk_sp fontmgr_factory() { - } +@@ -64,7 +64,7 @@ static sk_sp fontmgr_factory() { + return SkFontMgr_New_Android(nullptr, SkFontScanner_Make_Fontations()); #elif BUILDFLAG(IS_APPLE) return SkFontMgr_New_CoreText(nullptr); -#elif BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) sk_sp fci(SkFontConfigInterface::RefGlobal()); - if (base::FeatureList::IsEnabled(skia::kFontationsLinuxSystemFonts)) { - return fci ? SkFontMgr_New_FCI(std::move(fci), + return fci ? SkFontMgr_New_FCI(std::move(fci), + SkFontScanner_Make_Fontations()) diff --git a/www/chromium/files/patch-third__party_angle_src_libANGLE_Display.cpp b/www/chromium/files/patch-third__party_angle_src_libANGLE_Display.cpp index cc9c21c8f280..b2521b403c3e 100644 --- a/www/chromium/files/patch-third__party_angle_src_libANGLE_Display.cpp +++ b/www/chromium/files/patch-third__party_angle_src_libANGLE_Display.cpp @@ -1,56 +1,56 @@ ---- third_party/angle/src/libANGLE/Display.cpp.orig 2025-05-28 14:55:43 UTC +--- third_party/angle/src/libANGLE/Display.cpp.orig 2025-08-07 06:57:29 UTC +++ third_party/angle/src/libANGLE/Display.cpp @@ -58,7 +58,7 @@ # include "libANGLE/renderer/gl/wgl/DisplayWGL.h" # elif ANGLE_ENABLE_CGL # include "libANGLE/renderer/gl/cgl/DisplayCGL.h" -# elif defined(ANGLE_PLATFORM_LINUX) +# elif defined(ANGLE_PLATFORM_LINUX) || defined(ANGLE_PLATFORM_BSD) # include "libANGLE/renderer/gl/egl/DisplayEGL.h" # if defined(ANGLE_USE_X11) # include "libANGLE/renderer/gl/glx/DisplayGLX_api.h" @@ -422,7 +422,7 @@ rx::DisplayImpl *CreateDisplayFromAttribs(EGLAttrib di impl = new rx::DisplayCGL(state); break; -# elif defined(ANGLE_PLATFORM_LINUX) +# elif defined(ANGLE_PLATFORM_LINUX) || defined(ANGLE_PLATFORM_BSD) - # if defined(ANGLE_USE_GBM) + # if defined(ANGLE_USE_GBM) || defined(ANGLE_USE_WAYLAND) if (platformType == 0) { -@@ -468,7 +468,7 @@ rx::DisplayImpl *CreateDisplayFromAttribs(EGLAttrib di +@@ -473,7 +473,7 @@ rx::DisplayImpl *CreateDisplayFromAttribs(EGLAttrib di #if defined(ANGLE_ENABLE_OPENGL) # if defined(ANGLE_PLATFORM_WINDOWS) impl = new rx::DisplayWGL(state); -# elif defined(ANGLE_PLATFORM_LINUX) +# elif defined(ANGLE_PLATFORM_LINUX) || defined(ANGLE_PLATFORM_BSD) - # if defined(ANGLE_USE_GBM) + # if defined(ANGLE_USE_GBM) || defined(ANGLE_USE_WAYLAND) if (platformType == 0) { -@@ -519,7 +519,7 @@ rx::DisplayImpl *CreateDisplayFromAttribs(EGLAttrib di +@@ -529,7 +529,7 @@ rx::DisplayImpl *CreateDisplayFromAttribs(EGLAttrib di impl = rx::CreateVulkanWin32Display(state); } break; -# elif defined(ANGLE_PLATFORM_LINUX) +# elif defined(ANGLE_PLATFORM_LINUX) || defined(ANGLE_PLATFORM_BSD) # if defined(ANGLE_USE_GBM) if (platformType == EGL_PLATFORM_GBM_KHR && rx::IsVulkanGbmDisplayAvailable()) { -@@ -2136,7 +2136,7 @@ static ClientExtensions GenerateClientExtensions() +@@ -2146,7 +2146,7 @@ static ClientExtensions GenerateClientExtensions() extensions.platformWaylandEXT = true; #endif -#if defined(ANGLE_PLATFORM_LINUX) && (defined(ANGLE_ENABLE_OPENGL) || defined(ANGLE_ENABLE_VULKAN)) +#if (defined(ANGLE_PLATFORM_LINUX) || defined(ANGLE_PLATFORM_BSD)) && (defined(ANGLE_ENABLE_OPENGL) || defined(ANGLE_ENABLE_VULKAN)) extensions.platformSurfacelessMESA = true; #endif -@@ -2183,7 +2183,7 @@ static ClientExtensions GenerateClientExtensions() +@@ -2193,7 +2193,7 @@ static ClientExtensions GenerateClientExtensions() extensions.x11Visual = true; #endif -#if defined(ANGLE_PLATFORM_LINUX) +#if defined(ANGLE_PLATFORM_LINUX) || defined(ANGLE_PLATFORM_BSD) extensions.platformANGLEDeviceTypeEGLANGLE = true; #endif diff --git a/www/chromium/files/patch-third__party_blink_public_platform_platform.h b/www/chromium/files/patch-third__party_blink_public_platform_platform.h index 9f817dd4a559..4d4b1263104e 100644 --- a/www/chromium/files/patch-third__party_blink_public_platform_platform.h +++ b/www/chromium/files/patch-third__party_blink_public_platform_platform.h @@ -1,11 +1,11 @@ ---- third_party/blink/public/platform/platform.h.orig 2025-07-02 06:08:04 UTC +--- third_party/blink/public/platform/platform.h.orig 2025-08-07 06:57:29 UTC +++ third_party/blink/public/platform/platform.h -@@ -371,7 +371,7 @@ class BLINK_PLATFORM_EXPORT Platform { +@@ -373,7 +373,7 @@ class BLINK_PLATFORM_EXPORT Platform { return nullptr; } -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // This is called after the thread is created, so the embedder // can initiate an IPC to change its thread type (on Linux we can't // increase the nice value, so we need to ask the browser process). This diff --git a/www/chromium/files/patch-third__party_blink_renderer_core_exported_web__view__impl.cc b/www/chromium/files/patch-third__party_blink_renderer_core_exported_web__view__impl.cc index 30a3fd0d4c7d..808040f671d8 100644 --- a/www/chromium/files/patch-third__party_blink_renderer_core_exported_web__view__impl.cc +++ b/www/chromium/files/patch-third__party_blink_renderer_core_exported_web__view__impl.cc @@ -1,20 +1,20 @@ ---- third_party/blink/renderer/core/exported/web_view_impl.cc.orig 2025-07-02 06:08:04 UTC +--- third_party/blink/renderer/core/exported/web_view_impl.cc.orig 2025-08-07 06:57:29 UTC +++ third_party/blink/renderer/core/exported/web_view_impl.cc -@@ -430,7 +430,7 @@ void RecordPrerenderActivationSignalDelay(const String +@@ -421,7 +421,7 @@ void RecordPrerenderActivationSignalDelay(const String #if !BUILDFLAG(IS_MAC) && !BUILDFLAG(IS_WIN) SkFontHinting RendererPreferencesToSkiaHinting( const blink::RendererPreferences& prefs) { -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (!prefs.should_antialias_text) { // When anti-aliasing is off, GTK maps all non-zero hinting settings to // 'Normal' hinting so we do the same. Otherwise, folks who have 'Slight' -@@ -3422,7 +3422,7 @@ void WebViewImpl::UpdateFontRenderingFromRendererPrefs +@@ -3444,7 +3444,7 @@ void WebViewImpl::UpdateFontRenderingFromRendererPrefs gfx::FontRenderParams::SUBPIXEL_RENDERING_NONE); WebFontRenderStyle::SetSubpixelPositioning( renderer_preferences_.use_subpixel_positioning); -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (!renderer_preferences_.system_font_family_name.empty()) { WebFontRenderStyle::SetSystemFontFamily(blink::WebString::FromUTF8( renderer_preferences_.system_font_family_name)); diff --git a/www/chromium/files/patch-third__party_blink_renderer_core_frame_web__frame__test.cc b/www/chromium/files/patch-third__party_blink_renderer_core_frame_web__frame__test.cc index 5643c6672e18..756ab2f4f86c 100644 --- a/www/chromium/files/patch-third__party_blink_renderer_core_frame_web__frame__test.cc +++ b/www/chromium/files/patch-third__party_blink_renderer_core_frame_web__frame__test.cc @@ -1,20 +1,20 @@ ---- third_party/blink/renderer/core/frame/web_frame_test.cc.orig 2025-04-04 08:52:13 UTC +--- third_party/blink/renderer/core/frame/web_frame_test.cc.orig 2025-08-07 06:57:29 UTC +++ third_party/blink/renderer/core/frame/web_frame_test.cc -@@ -6471,7 +6471,7 @@ TEST_F(WebFrameTest, DISABLED_PositionForPointTest) { +@@ -6473,7 +6473,7 @@ TEST_F(WebFrameTest, DISABLED_PositionForPointTest) { } #if BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) && !BUILDFLAG(IS_BSD) // TODO(crbug.com/1090246): Fix these tests on Fuchsia and re-enable. // TODO(crbug.com/1317375): Build these tests on all platforms. #define MAYBE_SelectRangeStaysHorizontallyAlignedWhenMoved \ -@@ -6880,7 +6880,7 @@ TEST_F(CompositedSelectionBoundsTest, LargeSelectionSc +@@ -6882,7 +6882,7 @@ TEST_F(CompositedSelectionBoundsTest, LargeSelectionSc TEST_F(CompositedSelectionBoundsTest, LargeSelectionNoScroll) { RunTest("composited_selection_bounds_large_selection_noscroll.html"); } -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #if !BUILDFLAG(IS_ANDROID) TEST_F(CompositedSelectionBoundsTest, Input) { web_view_helper_.GetWebView()->GetSettings()->SetDefaultFontSize(16); diff --git a/www/chromium/files/patch-third__party_blink_renderer_core_layout_layout__view.cc b/www/chromium/files/patch-third__party_blink_renderer_core_layout_layout__view.cc index 60ebeed946b1..9593434e97ee 100644 --- a/www/chromium/files/patch-third__party_blink_renderer_core_layout_layout__view.cc +++ b/www/chromium/files/patch-third__party_blink_renderer_core_layout_layout__view.cc @@ -1,20 +1,20 @@ ---- third_party/blink/renderer/core/layout/layout_view.cc.orig 2025-07-02 06:08:04 UTC +--- third_party/blink/renderer/core/layout/layout_view.cc.orig 2025-08-07 06:57:29 UTC +++ third_party/blink/renderer/core/layout/layout_view.cc -@@ -74,7 +74,7 @@ +@@ -75,7 +75,7 @@ #include "ui/display/screen_info.h" #include "ui/gfx/geometry/quad_f.h" -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "third_party/blink/renderer/platform/fonts/font_cache.h" #endif -@@ -789,7 +789,7 @@ void LayoutView::LayoutRoot() { +@@ -790,7 +790,7 @@ void LayoutView::LayoutRoot() { intrinsic_logical_widths_ = LogicalWidth(); } -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // The font code in FontPlatformData does not have a direct connection to the // document, the frame or anything from which we could retrieve the device // scale factor. After using zoom for DSF, the GraphicsContext does only ever diff --git a/www/chromium/files/patch-third__party_blink_renderer_modules_webgl_webgl__rendering__context__base.cc b/www/chromium/files/patch-third__party_blink_renderer_modules_webgl_webgl__rendering__context__base.cc index 2c74017131b9..f906898efc6c 100644 --- a/www/chromium/files/patch-third__party_blink_renderer_modules_webgl_webgl__rendering__context__base.cc +++ b/www/chromium/files/patch-third__party_blink_renderer_modules_webgl_webgl__rendering__context__base.cc @@ -1,11 +1,11 @@ ---- third_party/blink/renderer/modules/webgl/webgl_rendering_context_base.cc.orig 2025-07-02 06:08:04 UTC +--- third_party/blink/renderer/modules/webgl/webgl_rendering_context_base.cc.orig 2025-08-07 06:57:29 UTC +++ third_party/blink/renderer/modules/webgl/webgl_rendering_context_base.cc -@@ -6383,7 +6383,7 @@ void WebGLRenderingContextBase::TexImageHelperMediaVid +@@ -6520,7 +6520,7 @@ void WebGLRenderingContextBase::TexImageHelperMediaVid // unmultiply has been requested or we need to never premultiply for Image // creation from a VideoFrame. -#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // TODO(crbug.com/1175907): Only TexImage2D seems to work with the GPU path on // Android M -- appears to work fine on R, but to avoid regressions in