diff --git a/www/chromium/Makefile b/www/chromium/Makefile index 064c9300b007..9670f2310fa6 100644 --- a/www/chromium/Makefile +++ b/www/chromium/Makefile @@ -1,435 +1,435 @@ PORTNAME= chromium -PORTVERSION= 151.0.7922.169 +PORTVERSION= 152.0.7977.64 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}-lite${EXTRACT_SUFX} \ pulseaudio-${PULSEV}.tar.gz:pulseaudio USE_GITHUB= nodefault GH_TUPLE= rollup:rollup:v4.60.4:rollup/rollup \ evanw:esbuild:v${_ESBUILD_VERSION:sh}:esbuild/esbuild 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 \ esbuild:devel/esbuild \ 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-libs \ ${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 cargo compiler:c++17-lang cpe desktop-file-utils gl gmake \ go:no_targets gnome iconv:wchar_t jpeg localbase:ldflags ninja perl5 \ pkgconfig python:build qt:5 shebangfix tar:xz xorg WITHOUT_FBSD10_FIX= Yes CARGO_CARGOTOML= ${WRKSRC}/rollup/rust/Cargo.toml CARGO_CARGOLOCK= ${WRKSRC}/rollup/rust/Cargo.lock CARGO_TARGET_DIR= ${WRKSRC}/rollup/rust/target CARGO_INSTALL= No CARGO_BUILD= No CARGO_TEST= No _ESBUILD_VERSION= ${MAKE} -C ${PORTSDIR}/devel/esbuild -V DISTVERSION 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_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_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= libkrb5.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= libkrb5.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= 22 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 MAKE_ENV+= RUSTC_BOOTSTRAP=1 GN_ARGS+= enable_rust=true \ rust_sysroot_absolute="${LOCALBASE}" # go MAKE_ENV+= GOCACHE=${WRKDIR}/go-cache 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 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.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/linux/strip_binary.gni \ ${WRKSRC}/build/rust/rust_bindgen.gni \ ${WRKSRC}/build/rust/rust_bindgen_generator.gni pre-build: @${CARGO_CARGO_RUN} build \ --manifest-path ${CARGO_CARGOTOML} \ --verbose \ --verbose \ ${CARGO_BUILD_ARGS} (cd ${WRKSRC}/third_party/devtools-frontend/src/node_modules/@rollup && \ mkdir -p rollup-freebsd && \ cp ${CARGO_TARGET_DIR}/release/libbindings_napi.so \ rollup-freebsd/rollup.freebsd.node && \ echo '{ "main": "./rollup.freebsd.node" }' \ > rollup-freebsd/package.json) do-configure: (cd ${WRKSRC}/esbuild && \ ${LOCALBASE}/bin/node scripts/esbuild.js \ /usr/local/bin/esbuild --neutral && \ rm -rf ${WRKSRC}/third_party/devtools-frontend/src/node_modules/esbuild && \ ln -sf ${WRKSRC}/esbuild/npm/esbuild \ ${WRKSRC}/third_party/devtools-frontend/src/node_modules/esbuild \ ) # 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 rustc dependency @${MKDIR} ${WRKSRC}/third_party/rust-toolchain/bin ${LN} -sf ${LOCALBASE}/bin/rustc ${WRKSRC}/third_party/rust-toolchain/bin/rustc # Setup esbuild dependency ${LN} -sf ${LOCALBASE}/bin/esbuild ${WRKSRC}/third_party/devtools-frontend/src/third_party/esbuild/esbuild # Setup gperf dependency ${LN} -sf ${LOCALBASE}/bin/gperf ${WRKSRC}/third_party/gperf/cipd/bin/gperf # 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} && \ ./${t} --gtest_filter=-${EXCLUDE_${t}:ts:} || ${TRUE} .endfor .include diff --git a/www/chromium/distinfo b/www/chromium/distinfo index 67a3531f2855..d780d8e58965 100644 --- a/www/chromium/distinfo +++ b/www/chromium/distinfo @@ -1,419 +1,419 @@ -TIMESTAMP = 1787236792 -SHA256 (chromium-151.0.7922.169-lite.tar.xz) = 6e6a725fae7143450f554db6c15a223f88b9599f9ba149bb5ceb1fb3478c34ca -SIZE (chromium-151.0.7922.169-lite.tar.xz) = 1712206164 +TIMESTAMP = 1788172706 +SHA256 (chromium-152.0.7977.64-lite.tar.xz) = 0afede9e15101678eb11277098cc2f181a84a5f532f7f46758b981a4a7585f78 +SIZE (chromium-152.0.7977.64-lite.tar.xz) = 1774931660 SHA256 (pulseaudio-16.1.tar.gz) = 027266c62f2a84422ac45fa721a649508f0f1628fb1fd9242315ac54ce2d7c92 SIZE (pulseaudio-16.1.tar.gz) = 2763111 -SHA256 (chromium-151.0.7922.169-testdata.tar.xz) = f91a7c954082cb1ba3763ec0efe97dd9efa59e0e3354c8ceecf783404336a7a2 -SIZE (chromium-151.0.7922.169-testdata.tar.xz) = 1305524480 +SHA256 (chromium-152.0.7977.64-testdata.tar.xz) = 9a943651bb4cb4264e75afd366cf870e9cfe06b906077dd44555f54618ca0396 +SIZE (chromium-152.0.7977.64-testdata.tar.xz) = 1302040880 SHA256 (rust/crates/ahash-0.8.12.crate) = 5a15f179cd60c4584b8a8c596927aadc462e27f2ca70c04e0071964a73ba7a75 SIZE (rust/crates/ahash-0.8.12.crate) = 43413 SHA256 (rust/crates/aho-corasick-1.1.4.crate) = ddd31a130427c27518df266943a5308ed92d4b226cc639f5a8f1002816174301 SIZE (rust/crates/aho-corasick-1.1.4.crate) = 184015 SHA256 (rust/crates/allocator-api2-0.2.21.crate) = 683d7910e743518b0e34f1186f92494becacb047c7b6bf616c96772180fef923 SIZE (rust/crates/allocator-api2-0.2.21.crate) = 63622 SHA256 (rust/crates/anyhow-1.0.102.crate) = 7f202df86484c868dbad7eaa557ef785d5c66295e41b460ef922eca0723b842c SIZE (rust/crates/anyhow-1.0.102.crate) = 48658 SHA256 (rust/crates/ar_archive_writer-0.5.1.crate) = 7eb93bbb63b9c227414f6eb3a0adfddca591a8ce1e9b60661bb08969b87e340b SIZE (rust/crates/ar_archive_writer-0.5.1.crate) = 85345 SHA256 (rust/crates/arrayvec-0.7.6.crate) = 7c02d123df017efcdfbd739ef81735b36c5ba83ec3c59c80a9d7ecc718f92e50 SIZE (rust/crates/arrayvec-0.7.6.crate) = 31237 SHA256 (rust/crates/ascii-1.1.0.crate) = d92bec98840b8f03a5ff5413de5293bfcd8bf96467cf5452609f939ec6f5de16 SIZE (rust/crates/ascii-1.1.0.crate) = 36075 SHA256 (rust/crates/ast_node-5.0.0.crate) = 2eb025ef00a6da925cf40870b9c8d008526b6004ece399cb0974209720f0b194 SIZE (rust/crates/ast_node-5.0.0.crate) = 12169 SHA256 (rust/crates/autocfg-1.5.0.crate) = c08606f8c3cbf4ce6ec8e28fb0014a2c086708fe954eaa885384a6165172e7e8 SIZE (rust/crates/autocfg-1.5.0.crate) = 18729 SHA256 (rust/crates/base-encode-0.3.1.crate) = a17bd29f7c70f32e9387f4d4acfa5ea7b7749ef784fb78cf382df97069337b8c SIZE (rust/crates/base-encode-0.3.1.crate) = 3630 SHA256 (rust/crates/base64-0.22.1.crate) = 72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6 SIZE (rust/crates/base64-0.22.1.crate) = 81597 SHA256 (rust/crates/base64-simd-0.8.0.crate) = 339abbe78e73178762e23bea9dfd08e697eb3f3301cd4be981c0f78ba5859195 SIZE (rust/crates/base64-simd-0.8.0.crate) = 12531 SHA256 (rust/crates/better_scoped_tls-1.0.1.crate) = 7cd228125315b132eed175bf47619ac79b945b26e56b848ba203ae4ea8603609 SIZE (rust/crates/better_scoped_tls-1.0.1.crate) = 2140 SHA256 (rust/crates/bitflags-2.11.1.crate) = c4512299f36f043ab09a583e57bceb5a5aab7a73db1805848e8fef3c9e8c78b3 SIZE (rust/crates/bitflags-2.11.1.crate) = 49082 SHA256 (rust/crates/bitvec-1.0.1.crate) = 1bc2832c24239b0141d5674bb9174f9d68a8b5b3f2753311927c172ca46f7e9c SIZE (rust/crates/bitvec-1.0.1.crate) = 224375 SHA256 (rust/crates/bstr-1.12.1.crate) = 63044e1ae8e69f3b5a92c736ca6269b8d12fa7efe39bf34ddb06d102cf0e2cab SIZE (rust/crates/bstr-1.12.1.crate) = 354916 SHA256 (rust/crates/bumpalo-3.20.2.crate) = 5d20789868f4b01b2f2caec9f5c4e0213b41e3e5702a50157d699ae31ced2fcb SIZE (rust/crates/bumpalo-3.20.2.crate) = 97696 SHA256 (rust/crates/bytes-1.11.1.crate) = 1e748733b7cbc798e1434b6ac524f0c1ff2ab456fe201501e6497c8417a4fc33 SIZE (rust/crates/bytes-1.11.1.crate) = 78584 SHA256 (rust/crates/bytes-str-0.2.7.crate) = 7c60b5ce37e0b883c37eb89f79a1e26fbe9c1081945d024eee93e8d91a7e18b3 SIZE (rust/crates/bytes-str-0.2.7.crate) = 10230 SHA256 (rust/crates/castaway-0.2.4.crate) = dec551ab6e7578819132c713a93c022a05d60159dc86e7a7050223577484c55a SIZE (rust/crates/castaway-0.2.4.crate) = 12546 SHA256 (rust/crates/cc-1.2.61.crate) = d16d90359e986641506914ba71350897565610e87ce0ad9e6f28569db3dd5c6d SIZE (rust/crates/cc-1.2.61.crate) = 97163 SHA256 (rust/crates/cfg-if-1.0.4.crate) = 9330f8b2ff13f34540b44e946ef35111825727b38d33286ef986142615121801 SIZE (rust/crates/cfg-if-1.0.4.crate) = 9360 SHA256 (rust/crates/cmake-0.1.58.crate) = c0f78a02292a74a88ac736019ab962ece0bc380e3f977bf72e376c5d78ff0678 SIZE (rust/crates/cmake-0.1.58.crate) = 20474 SHA256 (rust/crates/compact_str-0.7.1.crate) = f86b9c4c00838774a6d902ef931eff7470720c51d90c2e32cfe15dc304737b3f SIZE (rust/crates/compact_str-0.7.1.crate) = 57246 SHA256 (rust/crates/console_error_panic_hook-0.1.7.crate) = a06aeb73f470f66dcdbf7223caeebb85984942f22f1adb2a088cf9668146bbbc SIZE (rust/crates/console_error_panic_hook-0.1.7.crate) = 507196 SHA256 (rust/crates/convert_case-0.11.0.crate) = affbf0190ed2caf063e3def54ff444b449371d55c58e513a95ab98eca50adb49 SIZE (rust/crates/convert_case-0.11.0.crate) = 31545 SHA256 (rust/crates/ctor-0.11.1.crate) = 400a21f1014a968ec518c7ccdf9b4a4ed0cac8c56ccb6d604f8b91f00110501e SIZE (rust/crates/ctor-0.11.1.crate) = 32910 SHA256 (rust/crates/dashmap-5.5.3.crate) = 978747c1d849a7d2ee5e8adc0159961c48fb7e5db2f06af6723b80123bb53856 SIZE (rust/crates/dashmap-5.5.3.crate) = 24061 SHA256 (rust/crates/data-encoding-2.11.0.crate) = a4ae5f15dda3c708c0ade84bfee31ccab44a3da4f88015ed22f63732abe300c8 SIZE (rust/crates/data-encoding-2.11.0.crate) = 22677 SHA256 (rust/crates/debugid-0.8.0.crate) = bef552e6f588e446098f6ba40d89ac146c8c7b64aade83c051ee00bb5d2bc18d SIZE (rust/crates/debugid-0.8.0.crate) = 12757 SHA256 (rust/crates/displaydoc-0.2.5.crate) = 97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0 SIZE (rust/crates/displaydoc-0.2.5.crate) = 24219 SHA256 (rust/crates/dragonbox_ecma-0.1.12.crate) = fd8e701084c37e7ef62d3f9e453b618130cbc0ef3573847785952a3ac3f746bf SIZE (rust/crates/dragonbox_ecma-0.1.12.crate) = 46796 SHA256 (rust/crates/either-1.15.0.crate) = 48c757948c5ede0e46177b7add2e67155f70e33c07fea8284df6576da70b3719 SIZE (rust/crates/either-1.15.0.crate) = 20114 SHA256 (rust/crates/equivalent-1.0.2.crate) = 877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f SIZE (rust/crates/equivalent-1.0.2.crate) = 7419 SHA256 (rust/crates/find-msvc-tools-0.1.9.crate) = 5baebc0774151f905a1a2cc41989300b1e6fbb29aff0ceffa1064fdd3088d582 SIZE (rust/crates/find-msvc-tools-0.1.9.crate) = 31493 SHA256 (rust/crates/fixedbitset-0.5.7.crate) = 1d674e81391d1e1ab681a28d99df07927c6d4aa5b027d7da16ba32d1d21ecd99 SIZE (rust/crates/fixedbitset-0.5.7.crate) = 26537 SHA256 (rust/crates/foldhash-0.2.0.crate) = 77ce24cb58228fbb8aa041425bb1050850ac19177686ea6e0f41a70416f56fdb SIZE (rust/crates/foldhash-0.2.0.crate) = 23329 SHA256 (rust/crates/form_urlencoded-1.2.2.crate) = cb4cb245038516f5f85277875cdaa4f7d2c9a0fa0468de06ed190163b1581fcf SIZE (rust/crates/form_urlencoded-1.2.2.crate) = 9347 SHA256 (rust/crates/from_variant-3.0.0.crate) = e5ff35a391aef949120a0340d690269b3d9f63460a6106e99bd07b961f345ea9 SIZE (rust/crates/from_variant-3.0.0.crate) = 2391 SHA256 (rust/crates/funty-2.0.0.crate) = e6d5a32815ae3f33302d95fdcb2ce17862f8c65363dcfd29360480ba1001fc9c SIZE (rust/crates/funty-2.0.0.crate) = 13160 SHA256 (rust/crates/futures-0.3.32.crate) = 8b147ee9d1f6d097cef9ce628cd2ee62288d963e16fb287bd9286455b241382d SIZE (rust/crates/futures-0.3.32.crate) = 61234 SHA256 (rust/crates/futures-channel-0.3.32.crate) = 07bbe89c50d7a535e539b8c17bc0b49bdb77747034daa8087407d655f3f7cc1d SIZE (rust/crates/futures-channel-0.3.32.crate) = 33213 SHA256 (rust/crates/futures-core-0.3.32.crate) = 7e3450815272ef58cec6d564423f6e755e25379b217b0bc688e295ba24df6b1d SIZE (rust/crates/futures-core-0.3.32.crate) = 14684 SHA256 (rust/crates/futures-executor-0.3.32.crate) = baf29c38818342a3b26b5b923639e7b1f4a61fc5e76102d4b1981c6dc7a7579d SIZE (rust/crates/futures-executor-0.3.32.crate) = 18581 SHA256 (rust/crates/futures-io-0.3.32.crate) = cecba35d7ad927e23624b22ad55235f2239cfa44fd10428eecbeba6d6a717718 SIZE (rust/crates/futures-io-0.3.32.crate) = 9191 SHA256 (rust/crates/futures-macro-0.3.32.crate) = e835b70203e41293343137df5c0664546da5745f82ec9b84d40be8336958447b SIZE (rust/crates/futures-macro-0.3.32.crate) = 11929 SHA256 (rust/crates/futures-sink-0.3.32.crate) = c39754e157331b013978ec91992bde1ac089843443c49cbc7f46150b0fad0893 SIZE (rust/crates/futures-sink-0.3.32.crate) = 8106 SHA256 (rust/crates/futures-task-0.3.32.crate) = 037711b3d59c33004d3856fbdc83b99d4ff37a24768fa1be9ce3538a1cde4393 SIZE (rust/crates/futures-task-0.3.32.crate) = 11377 SHA256 (rust/crates/futures-util-0.3.32.crate) = 389ca41296e6190b48053de0321d02a77f32f8a5d2461dd38762c0593805c6d6 SIZE (rust/crates/futures-util-0.3.32.crate) = 168797 SHA256 (rust/crates/globset-0.4.18.crate) = 52dfc19153a48bde0cbd630453615c8151bce3a5adfac7a0aebfbf0a1e1f57e3 SIZE (rust/crates/globset-0.4.18.crate) = 28970 SHA256 (rust/crates/hashbrown-0.14.5.crate) = e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1 SIZE (rust/crates/hashbrown-0.14.5.crate) = 141498 SHA256 (rust/crates/hashbrown-0.16.1.crate) = 841d1cc9bed7f9236f321df977030373f4a4163ae1a7dbfe1a51a2c1a51d9100 SIZE (rust/crates/hashbrown-0.16.1.crate) = 147785 SHA256 (rust/crates/hashbrown-0.17.0.crate) = 4f467dd6dccf739c208452f8014c75c18bb8301b050ad1cfb27153803edb0f51 SIZE (rust/crates/hashbrown-0.17.0.crate) = 154597 SHA256 (rust/crates/heck-0.5.0.crate) = 2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea SIZE (rust/crates/heck-0.5.0.crate) = 11517 SHA256 (rust/crates/hermit-abi-0.5.2.crate) = fc0fef456e4baa96da950455cd02c081ca953b141298e41db3fc7e36b1da849c SIZE (rust/crates/hermit-abi-0.5.2.crate) = 17435 SHA256 (rust/crates/hstr-3.0.4.crate) = faa57007c3c9dab34df2fa4c1fb52fe9c34ec5a27ed9d8edea53254b50cd7887 SIZE (rust/crates/hstr-3.0.4.crate) = 41168 SHA256 (rust/crates/icu_collections-2.2.0.crate) = 2984d1cd16c883d7935b9e07e44071dca8d917fd52ecc02c04d5fa0b5a3f191c SIZE (rust/crates/icu_collections-2.2.0.crate) = 88011 SHA256 (rust/crates/icu_locale_core-2.2.0.crate) = 92219b62b3e2b4d88ac5119f8904c10f8f61bf7e95b640d25ba3075e6cac2c29 SIZE (rust/crates/icu_locale_core-2.2.0.crate) = 78639 SHA256 (rust/crates/icu_normalizer-2.2.0.crate) = c56e5ee99d6e3d33bd91c5d85458b6005a22140021cc324cea84dd0e72cff3b4 SIZE (rust/crates/icu_normalizer-2.2.0.crate) = 78154 SHA256 (rust/crates/icu_normalizer_data-2.2.0.crate) = da3be0ae77ea334f4da67c12f149704f19f81d1adf7c51cf482943e84a2bad38 SIZE (rust/crates/icu_normalizer_data-2.2.0.crate) = 67134 SHA256 (rust/crates/icu_properties-2.2.0.crate) = bee3b67d0ea5c2cca5003417989af8996f8604e34fb9ddf96208a033901e70de SIZE (rust/crates/icu_properties-2.2.0.crate) = 63950 SHA256 (rust/crates/icu_properties_data-2.2.0.crate) = 8e2bbb201e0c04f7b4b3e14382af113e17ba4f63e2c9d2ee626b720cbce54a14 SIZE (rust/crates/icu_properties_data-2.2.0.crate) = 168901 SHA256 (rust/crates/icu_provider-2.2.0.crate) = 139c4cf31c8b5f33d7e199446eff9c1e02decfc2f0eec2c8d71f65befa45b421 SIZE (rust/crates/icu_provider-2.2.0.crate) = 51620 SHA256 (rust/crates/idna-1.1.0.crate) = 3b0875f23caa03898994f6ddc501886a45c7d3d62d04d2d90788d47be1b1e4de SIZE (rust/crates/idna-1.1.0.crate) = 148747 SHA256 (rust/crates/idna_adapter-1.2.2.crate) = cb68373c0d6620ef8105e855e7745e18b0d00d3bdb07fb532e434244cdb9a714 SIZE (rust/crates/idna_adapter-1.2.2.crate) = 10444 SHA256 (rust/crates/if_chain-1.0.3.crate) = cd62e6b5e86ea8eeeb8db1de02880a6abc01a397b2ebb64b5d74ac255318f5cb SIZE (rust/crates/if_chain-1.0.3.crate) = 8384 SHA256 (rust/crates/indexmap-2.14.0.crate) = d466e9454f08e4a911e14806c24e16fba1b4c121d1ea474396f396069cf949d9 SIZE (rust/crates/indexmap-2.14.0.crate) = 104085 SHA256 (rust/crates/is-macro-0.3.7.crate) = 1d57a3e447e24c22647738e4607f1df1e0ec6f72e16182c4cd199f647cdfb0e4 SIZE (rust/crates/is-macro-0.3.7.crate) = 9060 SHA256 (rust/crates/itoa-1.0.18.crate) = 8f42a60cbdf9a97f5d2305f08a87dc4e09308d1276d28c869c684d7777685682 SIZE (rust/crates/itoa-1.0.18.crate) = 15935 SHA256 (rust/crates/js-sys-0.3.98.crate) = 67df7112613f8bfd9150013a0314e196f4800d3201ae742489d999db2f979f08 SIZE (rust/crates/js-sys-0.3.98.crate) = 108519 SHA256 (rust/crates/libc-0.2.186.crate) = 68ab91017fe16c622486840e4c83c9a37afeff978bd239b5293d61ece587de66 SIZE (rust/crates/libc-0.2.186.crate) = 821883 SHA256 (rust/crates/libloading-0.9.0.crate) = 754ca22de805bb5744484a5b151a9e1a8e837d5dc232c2d7d8c2e3492edc8b60 SIZE (rust/crates/libloading-0.9.0.crate) = 33816 SHA256 (rust/crates/libmimalloc-sys2-0.1.54.crate) = e8cac9b2d60928163027249a1ebd0ec8e6c58b66dca93cccf58ee618e66fc062 SIZE (rust/crates/libmimalloc-sys2-0.1.54.crate) = 1642853 SHA256 (rust/crates/litemap-0.8.2.crate) = 92daf443525c4cce67b150400bc2316076100ce0b3686209eb8cf3c31612e6f0 SIZE (rust/crates/litemap-0.8.2.crate) = 34572 SHA256 (rust/crates/lock_api-0.4.14.crate) = 224399e74b87b5f3557511d98dff8b14089b3dadafcab6bb93eab67d3aace965 SIZE (rust/crates/lock_api-0.4.14.crate) = 29249 SHA256 (rust/crates/memchr-2.8.0.crate) = f8ca58f447f06ed17d5fc4043ce1b10dd205e060fb3ce5b979b8ed8e59ff3f79 SIZE (rust/crates/memchr-2.8.0.crate) = 97780 SHA256 (rust/crates/mimalloc-safe-0.1.58.crate) = a8bf95a709c09e85ae74e77b2413cbb11a1b8f2f3d11e23b3751382467c9c15c SIZE (rust/crates/mimalloc-safe-0.1.58.crate) = 7282 SHA256 (rust/crates/napi-3.8.6.crate) = 8e55037284865448ecf329baa86a4d05401f647ebde99f5747b640d32c2c5226 SIZE (rust/crates/napi-3.8.6.crate) = 129092 SHA256 (rust/crates/napi-build-2.3.1.crate) = d376940fd5b723c6893cd1ee3f33abbfd86acb1cd1ec079f3ab04a2a3bc4d3b1 SIZE (rust/crates/napi-build-2.3.1.crate) = 3233 SHA256 (rust/crates/napi-derive-3.5.5.crate) = a4ba740fe4c9524d86fd90798fd8ccdb23402b3eef7e7c30897a8a369b529fcf SIZE (rust/crates/napi-derive-3.5.5.crate) = 22629 SHA256 (rust/crates/napi-derive-backend-5.0.4.crate) = 0d5af30503edf933ce7377cf6d4c877a62b0f1107ea05585f1b5e430e88d5baf SIZE (rust/crates/napi-derive-backend-5.0.4.crate) = 35478 SHA256 (rust/crates/napi-sys-3.2.1.crate) = 8eb602b84d7c1edae45e50bbf1374696548f36ae179dfa667f577e384bb90c2b SIZE (rust/crates/napi-sys-3.2.1.crate) = 7465 SHA256 (rust/crates/new_debug_unreachable-1.0.6.crate) = 650eef8c711430f1a879fdd01d4745a7deea475becfb90269c06775983bbf086 SIZE (rust/crates/new_debug_unreachable-1.0.6.crate) = 2582 SHA256 (rust/crates/nohash-hasher-0.2.0.crate) = 2bf50223579dc7cdcfb3bfcacf7069ff68243f8c363f62ffa99cf000a6b9c451 SIZE (rust/crates/nohash-hasher-0.2.0.crate) = 8051 SHA256 (rust/crates/num-bigint-0.4.6.crate) = a5e44f723f1133c9deac646763579fdb3ac745e418f2a7af9cd0c431da1f20b9 SIZE (rust/crates/num-bigint-0.4.6.crate) = 102801 SHA256 (rust/crates/num-integer-0.1.46.crate) = 7969661fd2958a5cb096e56c8e1ad0444ac2bbcd0061bd28660485a44879858f SIZE (rust/crates/num-integer-0.1.46.crate) = 22331 SHA256 (rust/crates/num-traits-0.2.19.crate) = 071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841 SIZE (rust/crates/num-traits-0.2.19.crate) = 51631 SHA256 (rust/crates/num_cpus-1.17.0.crate) = 91df4bbde75afed763b708b7eee1e8e7651e02d97f6d5dd763e89367e957b23b SIZE (rust/crates/num_cpus-1.17.0.crate) = 15874 SHA256 (rust/crates/object-0.37.3.crate) = ff76201f031d8863c38aa7f905eca4f53abbfa15f609db4277d44cd8938f33fe SIZE (rust/crates/object-0.37.3.crate) = 344032 SHA256 (rust/crates/once_cell-1.21.4.crate) = 9f7c3e4beb33f85d45ae3e3a1792185706c8e16d043238c593331cc7cd313b50 SIZE (rust/crates/once_cell-1.21.4.crate) = 35010 SHA256 (rust/crates/outref-0.5.2.crate) = 1a80800c0488c3a21695ea981a54918fbb37abf04f4d0720c453632255e2ff0e SIZE (rust/crates/outref-0.5.2.crate) = 5621 SHA256 (rust/crates/par-core-2.0.0.crate) = e96cbd21255b7fb29a5d51ef38a779b517a91abd59e2756c039583f43ef4c90f SIZE (rust/crates/par-core-2.0.0.crate) = 2443 SHA256 (rust/crates/par-iter-2.0.0.crate) = 3eae0176a010bb94b9a67f0eb9da0fd31410817d58850649c54f485124c9a71a SIZE (rust/crates/par-iter-2.0.0.crate) = 152109 SHA256 (rust/crates/parking_lot-0.12.5.crate) = 93857453250e3077bd71ff98b6a65ea6621a19bb0f559a85248955ac12c45a1a SIZE (rust/crates/parking_lot-0.12.5.crate) = 46735 SHA256 (rust/crates/parking_lot_core-0.9.12.crate) = 2621685985a2ebf1c516881c026032ac7deafcda1a2c9b7850dc81e3dfcb64c1 SIZE (rust/crates/parking_lot_core-0.9.12.crate) = 34110 SHA256 (rust/crates/pathdiff-0.2.3.crate) = df94ce210e5bc13cb6651479fa48d14f601d9858cfe0467f43ae157023b938d3 SIZE (rust/crates/pathdiff-0.2.3.crate) = 7495 SHA256 (rust/crates/percent-encoding-2.3.2.crate) = 9b4f627cb1b25917193a259e49bdad08f671f8d9708acfd5fe0a8c1455d87220 SIZE (rust/crates/percent-encoding-2.3.2.crate) = 11583 SHA256 (rust/crates/petgraph-0.7.1.crate) = 3672b37090dbd86368a4145bc067582552b29c27377cad4e0a306c97f9bd7772 SIZE (rust/crates/petgraph-0.7.1.crate) = 736025 SHA256 (rust/crates/phf-0.11.3.crate) = 1fd6780a80ae0c52cc120a26a1a42c1ae51b247a253e4e06113d23d2c2edd078 SIZE (rust/crates/phf-0.11.3.crate) = 23231 SHA256 (rust/crates/phf_generator-0.11.3.crate) = 3c80231409c20246a13fddb31776fb942c38553c51e871f8cbd687a4cfb5843d SIZE (rust/crates/phf_generator-0.11.3.crate) = 15431 SHA256 (rust/crates/phf_macros-0.11.3.crate) = f84ac04429c13a7ff43785d75ad27569f2951ce0ffd30a3321230db2fc727216 SIZE (rust/crates/phf_macros-0.11.3.crate) = 18436 SHA256 (rust/crates/phf_shared-0.11.3.crate) = 67eabc2ef2a60eb7faa00097bd1ffdb5bd28e62bf39990626a582201b7a754e5 SIZE (rust/crates/phf_shared-0.11.3.crate) = 15199 SHA256 (rust/crates/pin-project-lite-0.2.17.crate) = a89322df9ebe1c1578d689c92318e070967d1042b512afbe49518723f4e6d5cd SIZE (rust/crates/pin-project-lite-0.2.17.crate) = 31034 SHA256 (rust/crates/potential_utf-0.1.5.crate) = 0103b1cef7ec0cf76490e969665504990193874ea05c85ff9bab8b911d0a0564 SIZE (rust/crates/potential_utf-0.1.5.crate) = 10189 SHA256 (rust/crates/proc-macro2-1.0.106.crate) = 8fd00f0bb2e90d81d1044c2b32617f68fcb9fa3bb7640c23e9c748e53fb30934 SIZE (rust/crates/proc-macro2-1.0.106.crate) = 59765 SHA256 (rust/crates/psm-0.1.31.crate) = 645dbe486e346d9b5de3ef16ede18c26e6c70ad97418f4874b8b1889d6e761ea SIZE (rust/crates/psm-0.1.31.crate) = 25059 SHA256 (rust/crates/quote-1.0.45.crate) = 41f2619966050689382d2b44f664f4bc593e129785a36d6ee376ddf37259b924 SIZE (rust/crates/quote-1.0.45.crate) = 31564 SHA256 (rust/crates/radium-0.7.0.crate) = dc33ff2d4973d518d823d61aa239014831e521c75da58e3df4840d3f47749d09 SIZE (rust/crates/radium-0.7.0.crate) = 10906 SHA256 (rust/crates/radix_fmt-1.0.0.crate) = ce082a9940a7ace2ad4a8b7d0b1eac6aa378895f18be598230c5f2284ac05426 SIZE (rust/crates/radix_fmt-1.0.0.crate) = 8743 SHA256 (rust/crates/rand-0.8.6.crate) = 5ca0ecfa931c29007047d1bc58e623ab12e5590e8c7cc53200d5202b69266d8a SIZE (rust/crates/rand-0.8.6.crate) = 83339 SHA256 (rust/crates/rand_core-0.6.4.crate) = ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c SIZE (rust/crates/rand_core-0.6.4.crate) = 22666 SHA256 (rust/crates/redox_syscall-0.5.18.crate) = ed2bf2547551a7053d6fdfafda3f938979645c44812fbfcda098faae3f1a362d SIZE (rust/crates/redox_syscall-0.5.18.crate) = 30747 SHA256 (rust/crates/regex-1.12.3.crate) = e10754a14b9137dd7b1e3e5b0493cc9171fdd105e0ab477f51b72e7f3ac0e276 SIZE (rust/crates/regex-1.12.3.crate) = 153392 SHA256 (rust/crates/regex-automata-0.4.14.crate) = 6e1dd4122fc1595e8162618945476892eefca7b88c52820e74af6262213cae8f SIZE (rust/crates/regex-automata-0.4.14.crate) = 618012 SHA256 (rust/crates/regex-syntax-0.8.10.crate) = dc897dd8d9e8bd1ed8cdad82b5966c3e0ecae09fb1907d58efaa013543185d0a SIZE (rust/crates/regex-syntax-0.8.10.crate) = 358781 SHA256 (rust/crates/regress-0.10.5.crate) = 2057b2325e68a893284d1538021ab90279adac1139957ca2a74426c6f118fb48 SIZE (rust/crates/regress-0.10.5.crate) = 346868 SHA256 (rust/crates/rustc-hash-2.1.2.crate) = 94300abf3f1ae2e2b8ffb7b58043de3d399c73fa6f4b73826402a5c457614dbe SIZE (rust/crates/rustc-hash-2.1.2.crate) = 14754 SHA256 (rust/crates/rustversion-1.0.22.crate) = b39cdef0fa800fc44525c84ccb54a029961a8215f9619753635a9c0d2538d46d SIZE (rust/crates/rustversion-1.0.22.crate) = 21096 SHA256 (rust/crates/ryu-1.0.23.crate) = 9774ba4a74de5f7b1c1451ed6cd5285a32eddb5cccb8cc655a4e50009e06477f SIZE (rust/crates/ryu-1.0.23.crate) = 52823 SHA256 (rust/crates/ryu-js-1.0.2.crate) = dd29631678d6fb0903b69223673e122c32e9ae559d0960a38d574695ebc0ea15 SIZE (rust/crates/ryu-js-1.0.2.crate) = 75035 SHA256 (rust/crates/scoped-tls-1.0.1.crate) = e1cf6437eb19a8f4a6cc0f7dca544973b0b78843adbfeb3683d1a94a0024a294 SIZE (rust/crates/scoped-tls-1.0.1.crate) = 8202 SHA256 (rust/crates/scopeguard-1.2.0.crate) = 94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49 SIZE (rust/crates/scopeguard-1.2.0.crate) = 11619 SHA256 (rust/crates/semver-1.0.28.crate) = 8a7852d02fc848982e0c167ef163aaff9cd91dc640ba85e263cb1ce46fae51cd SIZE (rust/crates/semver-1.0.28.crate) = 33064 SHA256 (rust/crates/seq-macro-0.3.6.crate) = 1bc711410fbe7399f390ca1c3b60ad0f53f80e95c5eb935e52268a0e2cd49acc SIZE (rust/crates/seq-macro-0.3.6.crate) = 16031 SHA256 (rust/crates/serde-1.0.228.crate) = 9a8e94ea7f378bd32cbbd37198a4a91436180c5bb472411e48b5ec2e2124ae9e SIZE (rust/crates/serde-1.0.228.crate) = 83652 SHA256 (rust/crates/serde_core-1.0.228.crate) = 41d385c7d4ca58e59fc732af25c3983b67ac852c1a25000afe1175de458b67ad SIZE (rust/crates/serde_core-1.0.228.crate) = 63111 SHA256 (rust/crates/serde_derive-1.0.228.crate) = d540f220d3187173da220f885ab66608367b6574e925011a9353e4badda91d79 SIZE (rust/crates/serde_derive-1.0.228.crate) = 59605 SHA256 (rust/crates/serde_json-1.0.149.crate) = 83fc039473c5595ace860d8c4fafa220ff474b3fc6bfdb4293327f1a37e94d86 SIZE (rust/crates/serde_json-1.0.149.crate) = 155994 SHA256 (rust/crates/shlex-1.3.0.crate) = 0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64 SIZE (rust/crates/shlex-1.3.0.crate) = 18713 SHA256 (rust/crates/siphasher-0.3.11.crate) = 38b58827f4464d87d377d175e90bf58eb00fd8716ff0a62f80356b5e61555d0d SIZE (rust/crates/siphasher-0.3.11.crate) = 10442 SHA256 (rust/crates/siphasher-1.0.3.crate) = 8ee5873ec9cce0195efcb7a4e9507a04cd49aec9c83d0389df45b1ef7ba2e649 SIZE (rust/crates/siphasher-1.0.3.crate) = 11643 SHA256 (rust/crates/slab-0.4.12.crate) = 0c790de23124f9ab44544d7ac05d60440adc586479ce501c1d6d7da3cd8c9cf5 SIZE (rust/crates/slab-0.4.12.crate) = 19080 SHA256 (rust/crates/smallvec-1.15.1.crate) = 67b1b7a3b5fe4f1376887184045fcf45c69e92af734b7aaddc05fb777b6fbd03 SIZE (rust/crates/smallvec-1.15.1.crate) = 38116 SHA256 (rust/crates/smartstring-1.0.1.crate) = 3fb72c633efbaa2dd666986505016c32c3044395ceaf881518399d2f4127ee29 SIZE (rust/crates/smartstring-1.0.1.crate) = 29555 SHA256 (rust/crates/stable_deref_trait-1.2.1.crate) = 6ce2be8dc25455e1f91df71bfa12ad37d7af1092ae736f3a6cd0e37bc7810596 SIZE (rust/crates/stable_deref_trait-1.2.1.crate) = 8186 SHA256 (rust/crates/stacker-0.1.23.crate) = 08d74a23609d509411d10e2176dc2a4346e3b4aea2e7b1869f19fdedbc71c013 SIZE (rust/crates/stacker-0.1.23.crate) = 17813 SHA256 (rust/crates/static_assertions-1.1.0.crate) = a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f SIZE (rust/crates/static_assertions-1.1.0.crate) = 18480 SHA256 (rust/crates/string_enum-1.0.2.crate) = ae36a4951ca7bd1cfd991c241584a9824a70f6aff1e7d4f693fb3f2465e4030e SIZE (rust/crates/string_enum-1.0.2.crate) = 4523 SHA256 (rust/crates/swc_allocator-4.0.1.crate) = 9d7eefd2c8b228a8c73056482b2ae4b3a1071fbe07638e3b55ceca8570cc48bb SIZE (rust/crates/swc_allocator-4.0.1.crate) = 10424 SHA256 (rust/crates/swc_atoms-9.0.0.crate) = d4ccbe2ecad10ad7432100f878a107b1d972a8aee83ca53184d00c23a078bb8a SIZE (rust/crates/swc_atoms-9.0.0.crate) = 8934 SHA256 (rust/crates/swc_common-21.0.1.crate) = 078f2144aa2c33ff8485773f1b81b9985fa2d00f4ad60879158ad6897db2de88 SIZE (rust/crates/swc_common-21.0.1.crate) = 100154 SHA256 (rust/crates/swc_compiler_base-55.0.0.crate) = d25b6d506f20c3a750336756602b92467b3d93347104920c20e9d0c64184b286 SIZE (rust/crates/swc_compiler_base-55.0.0.crate) = 23316 SHA256 (rust/crates/swc_config-4.0.1.crate) = a737811bc412f055818d80ae999db259678e1e2dacd91639d28a61750a251373 SIZE (rust/crates/swc_config-4.0.1.crate) = 12778 SHA256 (rust/crates/swc_config_macro-1.0.1.crate) = 7b416e8ce6de17dc5ea496e10c7012b35bbc0e3fef38d2e065eed936490db0b3 SIZE (rust/crates/swc_config_macro-1.0.1.crate) = 2221 SHA256 (rust/crates/swc_ecma_ast-23.0.0.crate) = 39f4173ab7e676eed4938d5ad8bbdf14418f87c9a8d36e6cdda82ac9645912b0 SIZE (rust/crates/swc_ecma_ast-23.0.0.crate) = 50591 SHA256 (rust/crates/swc_ecma_codegen-26.0.1.crate) = fafbcdd29cc03b0c04860bb0143e781e13a4e2dac03eb8747df520f602e0aa94 SIZE (rust/crates/swc_ecma_codegen-26.0.1.crate) = 63550 SHA256 (rust/crates/swc_ecma_codegen_macros-2.0.2.crate) = e276dc62c0a2625a560397827989c82a93fd545fcf6f7faec0935a82cc4ddbb8 SIZE (rust/crates/swc_ecma_codegen_macros-2.0.2.crate) = 2549 SHA256 (rust/crates/swc_ecma_hooks-0.7.0.crate) = ee7662517362f6726b0e107a3caec2b4cc7d629f9bf702958948e9350722e52f SIZE (rust/crates/swc_ecma_hooks-0.7.0.crate) = 88056 SHA256 (rust/crates/swc_ecma_minifier-52.0.4.crate) = 4011c4a9b320a73ac8ff27beb209a39700873b7f7492cfd8184eaf7bd71f8271 SIZE (rust/crates/swc_ecma_minifier-52.0.4.crate) = 279744 SHA256 (rust/crates/swc_ecma_parser-39.0.2.crate) = 8b13829b24cbdb2d7a08282bd968af8a258fd762c918df9a7b82291d44068bbc SIZE (rust/crates/swc_ecma_parser-39.0.2.crate) = 181929 SHA256 (rust/crates/swc_ecma_transforms_base-42.0.0.crate) = 45e58612045e827e7d3ae9f1dc6ae3590ba9abc6a3d93ff2adf27350ab409822 SIZE (rust/crates/swc_ecma_transforms_base-42.0.0.crate) = 93990 SHA256 (rust/crates/swc_ecma_transforms_optimization-44.0.0.crate) = 2098c7da8c4f235342ec1f7a0eb61264214d4d1b3185a0d43b2833543745b3ca SIZE (rust/crates/swc_ecma_transforms_optimization-44.0.0.crate) = 80660 SHA256 (rust/crates/swc_ecma_utils-29.1.0.crate) = 8e64243f2c9e9c9e631a18b42ad51f62137cf4f57b21fb93b1d58836322c2c81 SIZE (rust/crates/swc_ecma_utils-29.1.0.crate) = 44910 SHA256 (rust/crates/swc_ecma_visit-23.0.0.crate) = ad65d392ed427dc9e94f16a3d802b02e27722c21227639c8d5f45f19757b447b SIZE (rust/crates/swc_ecma_visit-23.0.0.crate) = 330047 SHA256 (rust/crates/swc_eq_ignore_macros-1.0.1.crate) = c16ce73424a6316e95e09065ba6a207eba7765496fed113702278b7711d4b632 SIZE (rust/crates/swc_eq_ignore_macros-1.0.1.crate) = 3313 SHA256 (rust/crates/swc_macros_common-1.0.1.crate) = aae1efbaa74943dc5ad2a2fb16cbd78b77d7e4d63188f3c5b4df2b4dcd2faaae SIZE (rust/crates/swc_macros_common-1.0.1.crate) = 7108 SHA256 (rust/crates/swc_sourcemap-10.0.2.crate) = 0c421e5e39e43a4b1b70c07922d7bffd5c22e8eff1340c0b15d0bfd0328822ee SIZE (rust/crates/swc_sourcemap-10.0.2.crate) = 113214 SHA256 (rust/crates/swc_timer-1.0.0.crate) = 4db06b46cc832f7cf83c2ce21905fc465d01443a2bdccf63644383e1f5847532 SIZE (rust/crates/swc_timer-1.0.0.crate) = 1685 SHA256 (rust/crates/swc_visit-2.0.1.crate) = 62fb71484b486c185e34d2172f0eabe7f4722742aad700f426a494bb2de232a2 SIZE (rust/crates/swc_visit-2.0.1.crate) = 5576 SHA256 (rust/crates/syn-2.0.117.crate) = e665b8803e7b1d2a727f4023456bbbbe74da67099c585258af0ad9c5013b9b99 SIZE (rust/crates/syn-2.0.117.crate) = 306011 SHA256 (rust/crates/synstructure-0.13.2.crate) = 728a70f3dbaf5bab7f0c4b1ac8d7ae5ea60a4b5549c8a5914361c99147a709d2 SIZE (rust/crates/synstructure-0.13.2.crate) = 18950 SHA256 (rust/crates/tap-1.0.1.crate) = 55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369 SIZE (rust/crates/tap-1.0.1.crate) = 11316 SHA256 (rust/crates/tinystr-0.8.3.crate) = c8323304221c2a851516f22236c5722a72eaa19749016521d6dff0824447d96d SIZE (rust/crates/tinystr-0.8.3.crate) = 24710 SHA256 (rust/crates/tracing-0.1.44.crate) = 63e71662fa4b2a2c3a26f570f037eb95bb1f85397f3cd8076caed2f026a6d100 SIZE (rust/crates/tracing-0.1.44.crate) = 463135 SHA256 (rust/crates/tracing-attributes-0.1.31.crate) = 7490cfa5ec963746568740651ac6781f701c9c5ea257c58e057f3ba8cf69e8da SIZE (rust/crates/tracing-attributes-0.1.31.crate) = 39733 SHA256 (rust/crates/tracing-core-0.1.36.crate) = db97caf9d906fbde555dd62fa95ddba9eecfd14cb388e4f491a66d74cd5fb79a SIZE (rust/crates/tracing-core-0.1.36.crate) = 63967 SHA256 (rust/crates/triomphe-0.1.15.crate) = dd69c5aa8f924c7519d6372789a74eac5b94fb0f8fcf0d4a97eb0bfc3e785f39 SIZE (rust/crates/triomphe-0.1.15.crate) = 34711 SHA256 (rust/crates/unicode-id-start-1.4.0.crate) = 81b79ad29b5e19de4260020f8919b443b2ef0277d242ce532ec7b7a2cc8b6007 SIZE (rust/crates/unicode-id-start-1.4.0.crate) = 48270 SHA256 (rust/crates/unicode-ident-1.0.24.crate) = e6e4313cd5fcd3dad5cafa179702e2b244f760991f45397d14d4ebf38247da75 SIZE (rust/crates/unicode-ident-1.0.24.crate) = 49298 SHA256 (rust/crates/unicode-segmentation-1.13.2.crate) = 9629274872b2bfaf8d66f5f15725007f635594914870f65218920345aa11aa8c SIZE (rust/crates/unicode-segmentation-1.13.2.crate) = 111829 SHA256 (rust/crates/unicode-width-0.2.2.crate) = b4ac048d71ede7ee76d585517add45da530660ef4390e49b098733c6e897f254 SIZE (rust/crates/unicode-width-0.2.2.crate) = 282768 SHA256 (rust/crates/url-2.5.8.crate) = ff67a8a4397373c3ef660812acab3268222035010ab8680ec4215f38ba3d0eed SIZE (rust/crates/url-2.5.8.crate) = 86512 SHA256 (rust/crates/utf8_iter-1.0.4.crate) = b6c140620e7ffbb22c2dee59cafe6084a59b5ffc27a8859a5f0d494b5d52b6be SIZE (rust/crates/utf8_iter-1.0.4.crate) = 10437 SHA256 (rust/crates/uuid-1.23.1.crate) = ddd74a9687298c6858e9b88ec8935ec45d22e8fd5e6394fa1bd4e99a87789c76 SIZE (rust/crates/uuid-1.23.1.crate) = 62932 SHA256 (rust/crates/version_check-0.9.5.crate) = 0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a SIZE (rust/crates/version_check-0.9.5.crate) = 15554 SHA256 (rust/crates/vsimd-0.8.0.crate) = 5c3082ca00d5a5ef149bb8b555a72ae84c9c59f7250f013ac822ac2e49b19c64 SIZE (rust/crates/vsimd-0.8.0.crate) = 21377 SHA256 (rust/crates/wasm-bindgen-0.2.121.crate) = 49ace1d07c165b0864824eee619580c4689389afa9dc9ed3a4c75040d82e6790 SIZE (rust/crates/wasm-bindgen-0.2.121.crate) = 65838 SHA256 (rust/crates/wasm-bindgen-macro-0.2.121.crate) = 8e68e6f4afd367a562002c05637acb8578ff2dea1943df76afb9e83d177c8578 SIZE (rust/crates/wasm-bindgen-macro-0.2.121.crate) = 9294 SHA256 (rust/crates/wasm-bindgen-macro-support-0.2.121.crate) = d95a9ec35c64b2a7cb35d3fead40c4238d0940c86d107136999567a4703259f2 SIZE (rust/crates/wasm-bindgen-macro-support-0.2.121.crate) = 79901 SHA256 (rust/crates/wasm-bindgen-shared-0.2.121.crate) = c4e0100b01e9f0d03189a92b96772a1fb998639d981193d7dbab487302513441 SIZE (rust/crates/wasm-bindgen-shared-0.2.121.crate) = 11270 SHA256 (rust/crates/windows-link-0.2.1.crate) = f0805222e57f7521d6a62e36fa9163bc891acd422f971defe97d64e70d0a4fe5 SIZE (rust/crates/windows-link-0.2.1.crate) = 6133 SHA256 (rust/crates/windows-sys-0.59.0.crate) = 1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b SIZE (rust/crates/windows-sys-0.59.0.crate) = 2387323 SHA256 (rust/crates/windows-targets-0.52.6.crate) = 9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973 SIZE (rust/crates/windows-targets-0.52.6.crate) = 6403 SHA256 (rust/crates/windows_aarch64_gnullvm-0.52.6.crate) = 32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3 SIZE (rust/crates/windows_aarch64_gnullvm-0.52.6.crate) = 435718 SHA256 (rust/crates/windows_aarch64_msvc-0.52.6.crate) = 09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469 SIZE (rust/crates/windows_aarch64_msvc-0.52.6.crate) = 832615 SHA256 (rust/crates/windows_i686_gnu-0.52.6.crate) = 8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b SIZE (rust/crates/windows_i686_gnu-0.52.6.crate) = 880402 SHA256 (rust/crates/windows_i686_gnullvm-0.52.6.crate) = 0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66 SIZE (rust/crates/windows_i686_gnullvm-0.52.6.crate) = 475940 SHA256 (rust/crates/windows_i686_msvc-0.52.6.crate) = 240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66 SIZE (rust/crates/windows_i686_msvc-0.52.6.crate) = 901163 SHA256 (rust/crates/windows_x86_64_gnu-0.52.6.crate) = 147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78 SIZE (rust/crates/windows_x86_64_gnu-0.52.6.crate) = 836363 SHA256 (rust/crates/windows_x86_64_gnullvm-0.52.6.crate) = 24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d SIZE (rust/crates/windows_x86_64_gnullvm-0.52.6.crate) = 435707 SHA256 (rust/crates/windows_x86_64_msvc-0.52.6.crate) = 589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec SIZE (rust/crates/windows_x86_64_msvc-0.52.6.crate) = 832564 SHA256 (rust/crates/writeable-0.6.3.crate) = 1ffae5123b2d3fc086436f8834ae3ab053a283cfac8fe0a0b8eaae044768a4c4 SIZE (rust/crates/writeable-0.6.3.crate) = 26685 SHA256 (rust/crates/wyz-0.5.1.crate) = 05f360fc0b24296329c78fda852a1e9ae82de9cf7b27dae4b7f62f118f77b9ed SIZE (rust/crates/wyz-0.5.1.crate) = 18790 SHA256 (rust/crates/xxhash-rust-0.8.15.crate) = fdd20c5420375476fbd4394763288da7eb0cc0b8c11deed431a91562af7335d3 SIZE (rust/crates/xxhash-rust-0.8.15.crate) = 21515 SHA256 (rust/crates/yoke-0.8.2.crate) = abe8c5fda708d9ca3df187cae8bfb9ceda00dd96231bed36e445a1a48e66f9ca SIZE (rust/crates/yoke-0.8.2.crate) = 32790 SHA256 (rust/crates/yoke-derive-0.8.2.crate) = de844c262c8848816172cef550288e7dc6c7b7814b4ee56b3e1553f275f1858e SIZE (rust/crates/yoke-derive-0.8.2.crate) = 15077 SHA256 (rust/crates/zerocopy-0.8.48.crate) = eed437bf9d6692032087e337407a86f04cd8d6a16a37199ed57949d415bd68e9 SIZE (rust/crates/zerocopy-0.8.48.crate) = 287554 SHA256 (rust/crates/zerocopy-derive-0.8.48.crate) = 70e3cd084b1788766f53af483dd21f93881ff30d7320490ec3ef7526d203bad4 SIZE (rust/crates/zerocopy-derive-0.8.48.crate) = 97646 SHA256 (rust/crates/zerofrom-0.1.7.crate) = 69faa1f2a1ea75661980b013019ed6687ed0e83d069bc1114e2cc74c6c04c4df SIZE (rust/crates/zerofrom-0.1.7.crate) = 6140 SHA256 (rust/crates/zerofrom-derive-0.1.7.crate) = 11532158c46691caf0f2593ea8358fed6bbf68a0315e80aae9bd41fbade684a1 SIZE (rust/crates/zerofrom-derive-0.1.7.crate) = 8853 SHA256 (rust/crates/zerotrie-0.2.4.crate) = 0f9152d31db0792fa83f70fb2f83148effb5c1f5b8c7686c3459e361d9bc20bf SIZE (rust/crates/zerotrie-0.2.4.crate) = 83690 SHA256 (rust/crates/zerovec-0.11.6.crate) = 90f911cbc359ab6af17377d242225f4d75119aec87ea711a880987b18cd7b239 SIZE (rust/crates/zerovec-0.11.6.crate) = 128583 SHA256 (rust/crates/zerovec-derive-0.11.3.crate) = 625dc425cab0dca6dc3c3319506e6593dcb08a9f387ea3b284dbd52a92c40555 SIZE (rust/crates/zerovec-derive-0.11.3.crate) = 22115 SHA256 (rust/crates/zmij-1.0.21.crate) = b8848ee67ecc8aedbaf3e4122217aff892639231befc6a1b58d29fff4c2cabaa SIZE (rust/crates/zmij-1.0.21.crate) = 26665 SHA256 (rollup-rollup-v4.60.4_GH0.tar.gz) = c129324ecef83a1c4d829c8b876751c72a6fa2dfe707f32f0b55c311cf29ee91 SIZE (rollup-rollup-v4.60.4_GH0.tar.gz) = 2249970 SHA256 (evanw-esbuild-v0.28.1_GH0.tar.gz) = 65c756fa87d43178ac4a5242454c2bd0fde325f8ecf77997f8fa4b88f94d5cd2 SIZE (evanw-esbuild-v0.28.1_GH0.tar.gz) = 1997481 diff --git a/www/chromium/files/patch-BUILD.gn b/www/chromium/files/patch-BUILD.gn index 0479386fa720..90ebad94bb26 100644 --- a/www/chromium/files/patch-BUILD.gn +++ b/www/chromium/files/patch-BUILD.gn @@ -1,98 +1,98 @@ ---- BUILD.gn.orig 2026-08-12 09:02:10 UTC +--- BUILD.gn.orig 2026-08-31 10:59:09 UTC +++ BUILD.gn @@ -70,7 +70,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", -@@ -434,7 +433,7 @@ group("gn_all") { +@@ -432,7 +431,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", -@@ -602,6 +601,15 @@ group("gn_all") { +@@ -609,6 +608,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)", -@@ -650,7 +658,7 @@ group("gn_all") { +@@ -657,7 +665,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 -@@ -685,7 +693,7 @@ group("gn_all") { +@@ -692,7 +700,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/tools:crashpad_database_util", -@@ -1098,7 +1106,7 @@ if (use_blink && !is_cronet_build) { +@@ -1125,7 +1133,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", -@@ -1250,7 +1258,7 @@ if (use_blink && !is_cronet_build) { +@@ -1277,7 +1285,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. -@@ -1264,7 +1272,7 @@ if (use_blink && !is_cronet_build) { +@@ -1291,7 +1299,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. -@@ -1544,7 +1552,7 @@ group("chromium_builder_perf") { +@@ -1571,7 +1579,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-base_BUILD.gn b/www/chromium/files/patch-base_BUILD.gn index f7527a304bca..192eaeaee77f 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 2026-08-12 09:02:10 UTC +--- base/BUILD.gn.orig 2026-08-31 10:59:09 UTC +++ base/BUILD.gn -@@ -1188,11 +1188,26 @@ component("base") { +@@ -1195,11 +1195,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" ] -@@ -1212,7 +1227,7 @@ component("base") { +@@ -1219,7 +1234,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" ] } -@@ -2239,6 +2254,22 @@ component("base") { +@@ -2243,6 +2258,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 += [ -@@ -2413,6 +2444,33 @@ component("base") { +@@ -2417,6 +2448,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", -@@ -2960,7 +3018,7 @@ buildflag_header("protected_memory_buildflags") { +@@ -2986,7 +3044,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" ] -@@ -3476,7 +3534,7 @@ if (is_apple) { +@@ -3499,7 +3557,7 @@ if (is_apple) { } } -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 -@@ -4246,7 +4304,7 @@ test("base_unittests") { +@@ -4267,7 +4325,7 @@ test("base_unittests") { configs += [ ":delayload_esent_dll" ] } - 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", -@@ -4269,7 +4327,7 @@ test("base_unittests") { +@@ -4290,7 +4348,7 @@ test("base_unittests") { "posix/file_descriptor_shuffle_unittest.cc", "posix/unix_domain_socket_unittest.cc", ] - if (!is_apple) { + if (!is_apple && !is_bsd) { sources += [ "profiler/stack_base_address_posix_unittest.cc", "profiler/stack_copier_signal_unittest.cc", -@@ -4280,7 +4338,7 @@ test("base_unittests") { +@@ -4301,7 +4359,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" ] } -@@ -4464,7 +4522,7 @@ test("base_unittests") { +@@ -4485,7 +4543,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__allocator_partition__alloc.gni b/www/chromium/files/patch-base_allocator_partition__allocator_partition__alloc.gni index 3ee3328f1bf9..0ede919ececb 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,20 +1,20 @@ ---- base/allocator/partition_allocator/partition_alloc.gni.orig 2026-08-12 09:02:10 UTC +--- base/allocator/partition_allocator/partition_alloc.gni.orig 2026-08-31 10:59:09 UTC +++ base/allocator/partition_allocator/partition_alloc.gni @@ -110,7 +110,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_bsd && is_clang && !is_asan && !is_hwasan && (is_linux || is_android) declare_args() { -@@ -542,7 +542,7 @@ assert(!use_asan_backup_ref_ptr || use_raw_ptr_hookabl +@@ -540,7 +540,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 4b674f58bbed..bf62b7d76e27 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 2026-08-12 09:02:10 UTC +--- base/allocator/partition_allocator/src/partition_alloc/BUILD.gn.orig 2026-08-31 10:59:09 UTC +++ base/allocator/partition_allocator/src/partition_alloc/BUILD.gn -@@ -961,7 +961,7 @@ if (is_clang_or_gcc) { +@@ -966,7 +966,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_address__space__randomization.h b/www/chromium/files/patch-base_allocator_partition__allocator_src_partition__alloc_address__space__randomization.h index 85149ead82a6..37633abd7e0d 100644 --- a/www/chromium/files/patch-base_allocator_partition__allocator_src_partition__alloc_address__space__randomization.h +++ b/www/chromium/files/patch-base_allocator_partition__allocator_src_partition__alloc_address__space__randomization.h @@ -1,20 +1,20 @@ ---- base/allocator/partition_allocator/src/partition_alloc/address_space_randomization.h.orig 2026-04-09 06:05:42 UTC +--- base/allocator/partition_allocator/src/partition_alloc/address_space_randomization.h.orig 2026-08-31 10:59:09 UTC +++ base/allocator/partition_allocator/src/partition_alloc/address_space_randomization.h @@ -38,7 +38,7 @@ AslrMask(uintptr_t bits) { #if PA_BUILDFLAG(PA_ARCH_CPU_64_BITS) -- #if defined(MEMORY_TOOL_REPLACES_ALLOCATOR) -+ #if defined(MEMORY_TOOL_REPLACES_ALLOCATOR) && !PA_BUILDFLAG(IS_BSD) +- #if PA_BUILDFLAG(MEMORY_TOOL_REPLACES_ALLOCATOR) ++ #if PA_BUILDFLAG(MEMORY_TOOL_REPLACES_ALLOCATOR) && !PA_BUILDFLAG(IS_BSD) // We shouldn't allocate system pages at all for sanitizer builds. However, // we do, and if random hint addresses interfere with address ranges @@ -142,7 +142,7 @@ AslrMask(uintptr_t bits) { return AslrAddress(0x20000000ULL); } #elif PA_BUILDFLAG(PA_ARCH_CPU_ARM64) - #if PA_BUILDFLAG(IS_LINUX) + #if PA_BUILDFLAG(IS_LINUX) || PA_BUILDFLAG(IS_BSD) // Linux on arm64 can use 39, 42, 48, or 52-bit user space, depending on // page size and number of levels of translation pages used. We use diff --git a/www/chromium/files/patch-base_allocator_partition__allocator_src_partition__alloc_partition__alloc__forward.h b/www/chromium/files/patch-base_allocator_partition__allocator_src_partition__alloc_partition__alloc__forward.h index 11cc6876b8c5..71781be84aa6 100644 --- a/www/chromium/files/patch-base_allocator_partition__allocator_src_partition__alloc_partition__alloc__forward.h +++ b/www/chromium/files/patch-base_allocator_partition__allocator_src_partition__alloc_partition__alloc__forward.h @@ -1,16 +1,16 @@ ---- base/allocator/partition_allocator/src/partition_alloc/partition_alloc_forward.h.orig 2026-02-11 09:05:39 UTC +--- base/allocator/partition_allocator/src/partition_alloc/partition_alloc_forward.h.orig 2026-08-31 10:59:09 UTC +++ base/allocator/partition_allocator/src/partition_alloc/partition_alloc_forward.h -@@ -29,9 +29,13 @@ namespace internal { +@@ -30,9 +30,13 @@ namespace internal { // the second one 16. We could technically return something different for // malloc() and operator new(), but this would complicate things, and most of // our allocations are presumably coming from operator new() anyway. +#if defined(__i386__) && defined(OS_FREEBSD) +constexpr size_t kAlignment = 8; +#else constexpr inline size_t kAlignment = std::max(alignof(max_align_t), static_cast(__STDCPP_DEFAULT_NEW_ALIGNMENT__)); +#endif - static_assert(base::bits::HasSingleBit(kAlignment), + static_assert(std::has_single_bit(kAlignment), "Alignment must be power of two."); static_assert(kAlignment <= 16, diff --git a/www/chromium/files/patch-base_debug_stack__trace.cc b/www/chromium/files/patch-base_debug_stack__trace.cc index 0822c04e5efb..a00f5c9322d8 100644 --- a/www/chromium/files/patch-base_debug_stack__trace.cc +++ b/www/chromium/files/patch-base_debug_stack__trace.cc @@ -1,39 +1,39 @@ ---- base/debug/stack_trace.cc.orig 2026-06-04 10:12:25 UTC +--- base/debug/stack_trace.cc.orig 2026-08-31 10:59:09 UTC +++ base/debug/stack_trace.cc -@@ -293,7 +293,7 @@ bool StackTrace::WillSymbolizeToStreamForTesting() { +@@ -294,7 +294,7 @@ bool StackTrace::WillSymbolizeToStreamForTesting() { // Symbols are not expected to be reliable when gn args specifies // symbol_level=0. return false; -#elif defined(__UCLIBC__) || defined(_AIX) +#elif defined(__UCLIBC__) || defined(_AIX) || BUILDFLAG(IS_BSD) // StackTrace::OutputToStream() is not implemented under uclibc, nor AIX. // See https://crbug.com/706728 return false; -@@ -360,7 +360,9 @@ void StackTrace::OutputToStreamWithPrefix(std::ostream +@@ -361,7 +361,9 @@ void StackTrace::OutputToStreamWithPrefix(std::ostream } return; } +#if !BUILDFLAG(IS_BSD) OutputToStreamWithPrefixImpl(os, prefix_string); +#endif } std::string StackTrace::ToString() const { -@@ -369,7 +371,7 @@ std::string StackTrace::ToString() const { +@@ -370,7 +372,7 @@ std::string StackTrace::ToString() const { std::string StackTrace::ToStringWithPrefix(cstring_view prefix_string) const { std::stringstream stream; -#if !defined(__UCLIBC__) && !defined(_AIX) +#if !defined(__UCLIBC__) && !defined(_AIX) && !BUILDFLAG(IS_BSD) OutputToStreamWithPrefix(&stream, prefix_string); #endif return std::move(stream).str(); -@@ -393,7 +395,7 @@ bool StackTrace::ShouldSuppressOutput() { +@@ -394,7 +396,7 @@ bool StackTrace::ShouldSuppressOutput() { } std::ostream& operator<<(std::ostream& os, const StackTrace& s) { -#if !defined(__UCLIBC__) && !defined(_AIX) +#if !defined(__UCLIBC__) && !defined(_AIX) && !BUILDFLAG(IS_BSD) s.OutputToStream(&os); #else os << "StackTrace::OutputToStream not implemented."; diff --git a/www/chromium/files/patch-base_files_file__util__posix.cc b/www/chromium/files/patch-base_files_file__util__posix.cc index 7fc4d554c9e8..aed102a3dc0e 100644 --- a/www/chromium/files/patch-base_files_file__util__posix.cc +++ b/www/chromium/files/patch-base_files_file__util__posix.cc @@ -1,48 +1,48 @@ ---- base/files/file_util_posix.cc.orig 2026-06-17 07:32:12 UTC +--- base/files/file_util_posix.cc.orig 2026-08-31 10:59:09 UTC +++ base/files/file_util_posix.cc -@@ -938,6 +938,7 @@ bool CreateNewTempDirectory(FilePath::StringViewType p +@@ -986,6 +986,7 @@ bool CreateNewTempDirectory(FilePath::StringViewType p bool CreateDirectoryAndGetError(const FilePath& full_path, File::Error* error) { ScopedBlockingCall scoped_blocking_call( FROM_HERE, BlockingType::MAY_BLOCK); // For call to mkdir(). + const FilePath kFileSystemRoot("/"); // Avoid checking subdirs if directory already exists. if (DirectoryExists(full_path)) { -@@ -947,8 +948,8 @@ bool CreateDirectoryAndGetError(const FilePath& full_p +@@ -995,8 +996,8 @@ bool CreateDirectoryAndGetError(const FilePath& full_p // Collect a list of all missing directories. std::vector missing_subpaths({full_path}); FilePath last_path = full_path; - for (FilePath path = full_path.DirName(); path.value() != last_path.value(); - path = path.DirName()) { + for (FilePath path = full_path.DirName(); (path.value() != last_path.value() && + (path != kFileSystemRoot)); path = path.DirName()) { if (DirectoryExists(path)) { break; } -@@ -966,21 +967,14 @@ bool CreateDirectoryAndGetError(const FilePath& full_p +@@ -1014,21 +1015,14 @@ bool CreateDirectoryAndGetError(const FilePath& full_p } #endif // BUILDFLAG(IS_CHROMEOS) - if (File::Mkdir(subpath, mode) == 0) { - continue; - } - // Mkdir failed, but it might have failed with EEXIST, or some other error - // due to the directory appearing out of thin air. This can occur if - // two processes are trying to create the same file system tree at the same - // time. Check to see if it exists and make sure it is a directory. - int saved_errno = errno; - if (!DirectoryExists(subpath)) { - if (error) { + if ((mkdir(subpath.value().c_str(), mode) == -1) && + ((full_path != subpath) ? (errno != ENOENT) : (-1))) { + int saved_errno = errno; + if (error) *error = File::OSErrorToFileError(saved_errno); - } - errno = saved_errno; return false; } + errno = 0; } return true; } diff --git a/www/chromium/files/patch-base_files_file__util__unittest.cc b/www/chromium/files/patch-base_files_file__util__unittest.cc index 0736b34f449e..c99cfea4c473 100644 --- a/www/chromium/files/patch-base_files_file__util__unittest.cc +++ b/www/chromium/files/patch-base_files_file__util__unittest.cc @@ -1,40 +1,40 @@ ---- base/files/file_util_unittest.cc.orig 2026-08-12 09:02:10 UTC +--- base/files/file_util_unittest.cc.orig 2026-08-31 10:59:09 UTC +++ base/files/file_util_unittest.cc -@@ -4430,7 +4430,7 @@ TEST_F(FileUtilTest, ReadFileToStringWithNamedPipe) { +@@ -4543,7 +4543,7 @@ TEST_F(FileUtilTest, ReadFileToStringWithNamedPipe) { } #endif // BUILDFLAG(IS_WIN) -#if BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_APPLE) +#if BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_APPLE) && !BUILDFLAG(IS_BSD) TEST_F(FileUtilTest, ReadFileToStringWithProcFileSystem) { FilePath file_path("/proc/cpuinfo"); std::string data = "temp"; -@@ -5013,6 +5013,19 @@ TEST_F(FileUtilTest, CreateDirectoryOnlyCheckMissingSu +@@ -5126,6 +5126,19 @@ TEST_F(FileUtilTest, CreateDirectoryOnlyCheckMissingSu #endif // BUILDFLAG(IS_ANDROID) +#if BUILDFLAG(IS_OPENBSD) +TEST_F(FileUtilTest, CreateDirectoryInUnveiledPath) { + FilePath dir = PathService::CheckedGet(DIR_GEN_TEST_DATA_ROOT); + dir = dir.Append(FILE_PATH_LITERAL("base")); + dir = dir.Append(FILE_PATH_LITERAL("test")); + dir = dir.Append(FILE_PATH_LITERAL("unveil")); + unveil(dir.value().c_str(), "rwc"); + EXPECT_TRUE(CreateDirectory(dir)); + dir = dir.Append(FILE_PATH_LITERAL("test")); + EXPECT_FALSE(CreateDirectory(dir)); +} +#endif + #if BUILDFLAG(IS_WIN) && BUILDFLAG(GOOGLE_CHROME_BRANDING) && \ defined(ARCH_CPU_32_BITS) // TODO(crbug.com/327582285): Re-enable these tests. They may be failing due to -@@ -5179,7 +5192,7 @@ TEST(FileUtilMultiThreadedTest, MultiThreadedTempFiles +@@ -5292,7 +5305,7 @@ TEST(FileUtilMultiThreadedTest, MultiThreadedTempFiles NULL); #else size_t bytes_written = - ::write(::fileno(output_file.get()), content.c_str(), content.length()); + ::write(fileno(output_file.get()), content.c_str(), content.length()); #endif EXPECT_EQ(content.length(), bytes_written); ::fflush(output_file.get()); diff --git a/www/chromium/files/patch-base_i18n_icu__util.cc b/www/chromium/files/patch-base_i18n_icu__util.cc index 0b26dee1cbbd..a71cb408afeb 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 2026-08-12 09:02:10 UTC +--- base/i18n/icu_util.cc.orig 2026-08-31 10:59:09 UTC +++ base/i18n/icu_util.cc -@@ -54,7 +54,7 @@ +@@ -57,7 +57,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 -@@ -326,7 +326,7 @@ void InitializeIcuTimeZone() { +@@ -331,7 +331,7 @@ void InitializeIcuTimeZone() { FuchsiaIntlProfileWatcher::GetPrimaryTimeZoneIdForIcuInitialization(); icu::TimeZone::adoptDefault( icu::TimeZone::createTimeZone(icu::UnicodeString::fromUTF8(zone_id))); -#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. diff --git a/www/chromium/files/patch-base_message__loop_message__pump__epoll.h b/www/chromium/files/patch-base_message__loop_message__pump__epoll.h index c6398cdd54e8..7901ab1467fb 100644 --- a/www/chromium/files/patch-base_message__loop_message__pump__epoll.h +++ b/www/chromium/files/patch-base_message__loop_message__pump__epoll.h @@ -1,14 +1,14 @@ ---- base/message_loop/message_pump_epoll.h.orig 2024-10-22 08:31:56 UTC +--- base/message_loop/message_pump_epoll.h.orig 2026-08-31 10:59:09 UTC +++ base/message_loop/message_pump_epoll.h -@@ -51,7 +51,11 @@ namespace base { +@@ -49,7 +49,11 @@ namespace base { + // Caveat: Since both we and the kernel need to walk the list of all fds at // every call, don't do it when we have too many FDs. BASE_FEATURE(kUsePollForMessagePumpEpoll, - "UsePollForMessagePumpEpoll", +#if BUILDFLAG(IS_BSD) + base::FEATURE_ENABLED_BY_DEFAULT); +#else base::FEATURE_DISABLED_BY_DEFAULT); +#endif // A MessagePump implementation suitable for I/O message loops on Linux-based // systems with epoll API support. diff --git a/www/chromium/files/patch-base_process_launch.h b/www/chromium/files/patch-base_process_launch.h index 8ce0a7204658..d7986ff9d1a4 100644 --- a/www/chromium/files/patch-base_process_launch.h +++ b/www/chromium/files/patch-base_process_launch.h @@ -1,11 +1,11 @@ ---- base/process/launch.h.orig 2025-09-06 10:01:20 UTC +--- base/process/launch.h.orig 2026-08-31 10:59:09 UTC +++ base/process/launch.h -@@ -234,7 +234,7 @@ struct BASE_EXPORT LaunchOptions { +@@ -240,7 +240,7 @@ struct BASE_EXPORT LaunchOptions { bool clear_environment = false; #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_POSIX) || BUILDFLAG(IS_FUCHSIA) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // If non-zero, start the process using clone(), using flags as provided. // Unlike in clone, clone_flags may not contain a custom termination signal // that is sent to the parent when the child dies. The termination signal will 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 faeb3ec9961e..12c2adc0c710 100644 --- a/www/chromium/files/patch-base_threading_platform__thread__posix.cc +++ b/www/chromium/files/patch-base_threading_platform__thread__posix.cc @@ -1,73 +1,73 @@ ---- base/threading/platform_thread_posix.cc.orig 2026-05-07 17:02:56 UTC +--- base/threading/platform_thread_posix.cc.orig 2026-08-31 10:59:09 UTC +++ base/threading/platform_thread_posix.cc @@ -6,6 +6,9 @@ #include #include +#if BUILDFLAG(IS_BSD) +#include +#endif #include #include #include @@ -80,6 +83,7 @@ void* ThreadFunc(void* params) { base::DisallowSingleton(); } +#if !BUILDFLAG(IS_BSD) #if PA_BUILDFLAG(USE_PARTITION_ALLOC_AS_MALLOC) partition_alloc::internal::StackTopRegistry::Get().NotifyThreadCreated(); #endif @@ -93,6 +97,7 @@ void* ThreadFunc(void* params) { // where they were created. This explicitly sets the priority of all new // threads. - PlatformThread::SetCurrentThreadType(thread_params->thread_type); + PlatformThread::SetDefaultThreadType(thread_params->thread_type); +#endif } ThreadIdNameManager::GetInstance()->RegisterThread( @@ -270,6 +275,10 @@ PlatformThreadId PlatformThreadBase::CurrentId() { #elif BUILDFLAG(IS_POSIX) && BUILDFLAG(IS_AIX) return PlatformThreadId(pthread_self()); +#elif BUILDFLAG(IS_OPENBSD) + return PlatformThreadId(static_cast(getthrid())); +#elif BUILDFLAG(IS_FREEBSD) + return PlatformThreadId(static_cast(pthread_getthreadid_np())); #elif BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_AIX) return PlatformThreadId(reinterpret_cast(pthread_self())); #endif @@ -363,6 +372,9 @@ void PlatformThreadBase::Detach(PlatformThreadHandle t // static bool PlatformThreadBase::CanChangeThreadType(ThreadType from, ThreadType to) { +#if BUILDFLAG(IS_BSD) + return false; +#else if (from >= to) { // Decreasing thread priority on POSIX is always allowed. return true; @@ -372,10 +384,15 @@ bool PlatformThreadBase::CanChangeThreadType(ThreadTyp } return internal::CanLowerNiceTo(internal::ThreadTypeToNiceValue(to)); +#endif } // static ThreadType PlatformThreadBase::GetCurrentEffectiveThreadTypeForTest() { +#if BUILDFLAG(IS_BSD) + NOTIMPLEMENTED(); + return ThreadType::kDefault; +#else // Mirrors SetCurrentThreadPriority()'s implementation. auto platform_specific_priority = internal::GetCurrentEffectiveThreadTypeForPlatformForTest(); // IN-TEST @@ -386,6 +403,7 @@ ThreadType PlatformThreadBase::GetCurrentEffectiveThre int nice_value = internal::GetCurrentThreadNiceValue(); return internal::NiceValueToThreadTypeForTest(nice_value); // IN-TEST +#endif } #endif // !BUILDFLAG(IS_APPLE) && !BUILDFLAG(IS_FUCHSIA) 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 9368ff37a53b..5b840bac5635 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 2026-08-12 09:02:10 UTC +--- base/trace_event/malloc_dump_provider.cc.orig 2026-08-31 10:59:09 UTC +++ base/trace_event/malloc_dump_provider.cc @@ -29,6 +29,8 @@ #if BUILDFLAG(IS_APPLE) #include +#elif BUILDFLAG(IS_BSD) +#include #else #include #endif -@@ -222,7 +224,7 @@ void ReportAppleAllocStats(size_t* total_virtual_size, +@@ -227,7 +229,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, -@@ -436,6 +438,9 @@ bool MallocDumpProvider::OnMemoryDump(const MemoryDump +@@ -441,6 +443,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-build_config_BUILD.gn b/www/chromium/files/patch-build_config_BUILD.gn index 27db3e56b6eb..76c7a7c03b37 100644 --- a/www/chromium/files/patch-build_config_BUILD.gn +++ b/www/chromium/files/patch-build_config_BUILD.gn @@ -1,13 +1,13 @@ ---- build/config/BUILD.gn.orig 2025-09-06 10:01:20 UTC +--- build/config/BUILD.gn.orig 2026-08-31 10:59:09 UTC +++ build/config/BUILD.gn -@@ -209,6 +209,10 @@ config("default_libs") { +@@ -207,6 +207,10 @@ config("default_libs") { # Targets should choose to explicitly link frameworks they require. Since # linking can have run-time side effects, nothing should be listed here. libs = [] + } else if (is_bsd) { + libs = [ + "pthread", + ] } else if (is_linux || is_chromeos) { libs = [ "dl", diff --git a/www/chromium/files/patch-build_config_BUILDCONFIG.gn b/www/chromium/files/patch-build_config_BUILDCONFIG.gn index a15842b1b753..0bc26bc6c393 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 2026-08-12 09:02:10 UTC +--- build/config/BUILDCONFIG.gn.orig 2026-08-31 10:59:09 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 != "mips" && current_cpu != "mips64") # Allows the path to a custom target toolchain to be injected as a single -@@ -242,6 +243,10 @@ if (host_toolchain == "") { +@@ -250,6 +251,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") } -@@ -292,6 +297,8 @@ if (target_os == "android") { +@@ -300,6 +305,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") } -@@ -326,7 +333,11 @@ is_android = current_os == "android" +@@ -334,7 +341,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_wasm = current_os == "emscripten" is_watchos = current_os == "watchos" diff --git a/www/chromium/files/patch-build_config_compiler_BUILD.gn b/www/chromium/files/patch-build_config_compiler_BUILD.gn index afb5cb8241b5..572d2a5be218 100644 --- a/www/chromium/files/patch-build_config_compiler_BUILD.gn +++ b/www/chromium/files/patch-build_config_compiler_BUILD.gn @@ -1,124 +1,124 @@ ---- build/config/compiler/BUILD.gn.orig 2026-08-12 09:02:10 UTC +--- build/config/compiler/BUILD.gn.orig 2026-08-31 10:59:09 UTC +++ build/config/compiler/BUILD.gn @@ -203,7 +203,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_win && !is_apple + simple_template_names = is_clang && !is_win && !is_apple && !is_bsd # This switch is used to enable -Wexit-time-destructors by default. This # warning serves as a flip switch to allow a gradual migration of targets @@ -284,7 +284,7 @@ assert(is_bot || # # 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 = +use_clang_warning_suppression_file = !is_bsd && is_clang && clang_warning_suppression_file != "" # default_include_dirs --------------------------------------------------------- @@ -302,13 +302,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 --------------------------------------------------------------------- @@ -541,6 +544,10 @@ config("compiler") { } } + if (is_openbsd) { + ldflags += [ "-Wl,-z,wxneeded" ] + } + # Linux-specific compiler flags setup. # ------------------------------------ if (is_linux || is_chromeos) { -@@ -577,9 +584,9 @@ config("compiler") { +@@ -579,9 +586,9 @@ config("compiler") { # Flags for diagnostics. cflags += [ "-fcolor-diagnostics" ] if (!is_wasm) { - if (!is_win) { + if (!is_win && !is_bsd) { cflags += [ "-fdiagnostics-show-inlining-chain" ] - } else { + } else if (!is_bsd) { # Combine after https://github.com/llvm/llvm-project/pull/192241 cflags += [ "/clang:-fdiagnostics-show-inlining-chain" ] } -@@ -605,7 +612,7 @@ config("compiler") { +@@ -607,7 +614,7 @@ config("compiler") { } } - if (is_clang) { + if (is_clang && !is_bsd) { cflags += [ "-fcrash-diagnostics-dir=" + clang_diagnostic_dir ] if (save_reproducers_on_lld_crash && use_lld) { ldflags += [ -@@ -1464,7 +1471,7 @@ config("compiler_deterministic") { +@@ -1466,7 +1473,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) { -@@ -1578,7 +1585,7 @@ config("clang_warning_suppression") { +@@ -1580,7 +1587,7 @@ config("clang_warning_suppression") { # See also: https://crbug.com/40891132#comment10 ubsan_hardening("c_array_bounds") { sanitizer = "array-bounds" - condition = !(is_asan && target_cpu == "x86") && !is_wasm + condition = !(is_asan && target_cpu == "x86") && !is_wasm && !is_bsd # Because we've enabled array-bounds sanitizing we also want to suppress # the related warning about "unsafe-buffer-usage-in-static-sized-array", -@@ -1592,7 +1599,7 @@ ubsan_hardening("c_array_bounds") { +@@ -1594,7 +1601,7 @@ ubsan_hardening("c_array_bounds") { # `NOTREACHED()` at the end of such functions. ubsan_hardening("return") { sanitizer = "return" - condition = !is_wasm + condition = !is_wasm && !is_bsd } config("rustc_revision") { -@@ -1929,7 +1936,7 @@ config("default_warnings") { +@@ -1931,7 +1938,7 @@ config("default_warnings") { "-Wno-nontrivial-memcall", ] - if (!is_wasm) { + if (!is_wasm && !is_bsd) { cflags += [ # TODO(crbug.com/432275627): Fix and re-enable. "-Wno-uninitialized-const-pointer", -@@ -2755,7 +2762,7 @@ config("afdo_optimize_size") { +@@ -2762,7 +2769,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. -@@ -2782,7 +2789,7 @@ config("afdo") { +@@ -2789,7 +2796,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 ] } diff --git a/www/chromium/files/patch-build_config_rust.gni b/www/chromium/files/patch-build_config_rust.gni index 8a1211cc72fb..92903515e553 100644 --- a/www/chromium/files/patch-build_config_rust.gni +++ b/www/chromium/files/patch-build_config_rust.gni @@ -1,50 +1,50 @@ ---- build/config/rust.gni.orig 2026-03-13 06:02:14 UTC +--- build/config/rust.gni.orig 2026-08-31 10:59:09 UTC +++ build/config/rust.gni @@ -67,7 +67,8 @@ declare_args() { # set this to the output of `rustc -V`. Changing this string will cause all # Rust targets to be rebuilt, which allows you to update your toolchain and # not break incremental builds. - rustc_version = "" + rustc_version = exec_script("//build/gn_run_binary.py", + [ "/usr/local/bin/rustc", "-V" ], "trim string") # Whether artifacts produced by the Rust compiler can participate in ThinLTO. # -@@ -180,6 +181,24 @@ if (enable_rust) { +@@ -168,6 +169,24 @@ if (enable_rust) { } else { toolchain_has_rust = custom_toolchain_supports_platform rustc_revision = rustc_version + # Example: + # rustc 1.88.0 c8f94230282a8e8c1148f3e657f0199aad909228 (c8f94230282a8e8c1148f3e657f0199aad909228-1-llvmorg-21-init-9266-g09006611 chromium) + # Trim it down as much as we can using GN. + rustc_revision = string_replace(rustc_revision, "rustc ", "") + rustc_revision = string_replace(rustc_revision, " chromium", "") + rustc_revision = string_replace(rustc_revision, "init-", "") + rustc_revision = string_replace(rustc_revision, "llvmorg-", "") + rustc_revision = string_replace(rustc_revision, " ", "") + rustc_revision = string_replace(rustc_revision, ".", "") + rustc_revision = string_replace(rustc_revision, "(", "-") + rustc_revision = string_replace(rustc_revision, ")", "") + rust_revision_pieces = string_split(rustc_version, " ") + rust_version_pieces = string_split(rust_revision_pieces[1], ".") + if (rust_version_pieces[1] == "85") { + rustc_nightly_capability = false + } else { + rustc_nightly_capability = true + } } } -@@ -355,7 +374,11 @@ if (is_linux || is_chromeos) { +@@ -343,7 +362,11 @@ if (is_linux || is_chromeos) { } } -if (toolchain_has_rust) { +if (is_bsd) { + rust_abi_target = string_replace(rust_abi_target, "linux-gnu", current_os) +} + +if (toolchain_has_rust && !is_bsd) { assert(rust_abi_target != "") _known_rust_target_triples_filepath = "//build/rust/known-target-triples.txt" diff --git a/www/chromium/files/patch-build_modules_unified_modulemap__config.py b/www/chromium/files/patch-build_modules_unified_modulemap__config.py index 27e822643c2b..a181bca50138 100644 --- a/www/chromium/files/patch-build_modules_unified_modulemap__config.py +++ b/www/chromium/files/patch-build_modules_unified_modulemap__config.py @@ -1,11 +1,11 @@ ---- build/modules/unified/modulemap_config.py.orig 2026-07-01 06:24:19 UTC +--- build/modules/unified/modulemap_config.py.orig 2026-08-31 10:59:09 UTC +++ build/modules/unified/modulemap_config.py -@@ -57,7 +57,7 @@ class AllowedHeader(Header): +@@ -63,7 +63,7 @@ class AllowedHeader(Header): def headers(os): - is_linux = os == 'linux' + is_linux = os == 'linux' or os == 'openbsd' or os == 'freebsd' is_android = os == 'android' is_ios = os == 'ios' is_mac = os == 'mac' diff --git a/www/chromium/files/patch-build_rust_allocator_lib.rs b/www/chromium/files/patch-build_rust_allocator_lib.rs index 50ddcc44f9c4..b04d2732595a 100644 --- a/www/chromium/files/patch-build_rust_allocator_lib.rs +++ b/www/chromium/files/patch-build_rust_allocator_lib.rs @@ -1,15 +1,15 @@ ---- build/rust/allocator/lib.rs.orig 2026-01-14 08:33:23 UTC +--- build/rust/allocator/lib.rs.orig 2026-08-31 10:59:09 UTC +++ build/rust/allocator/lib.rs -@@ -108,6 +108,12 @@ mod both_allocators { +@@ -111,6 +111,12 @@ mod both_allocators { 0 } + // TODO(crbug.com/440481922): Remove this after rolling past https://github.com/rust-lang/rust/pull/143387 + #[rustc_std_internal_symbol] + #[allow(non_upper_case_globals)] + #[linkage = "weak"] + static __rust_alloc_error_handler_should_panic: u8 = 0; + // Mangle the symbol name as rustc expects. #[rustc_std_internal_symbol] #[allow(non_upper_case_globals)] diff --git a/www/chromium/files/patch-build_toolchain_gcc__toolchain.gni b/www/chromium/files/patch-build_toolchain_gcc__toolchain.gni index ba9c8d7d1253..00387c813a4a 100644 --- a/www/chromium/files/patch-build_toolchain_gcc__toolchain.gni +++ b/www/chromium/files/patch-build_toolchain_gcc__toolchain.gni @@ -1,44 +1,44 @@ ---- build/toolchain/gcc_toolchain.gni.orig 2026-08-12 09:02:10 UTC +--- build/toolchain/gcc_toolchain.gni.orig 2026-08-31 10:59:09 UTC +++ build/toolchain/gcc_toolchain.gni @@ -46,6 +46,13 @@ if (enable_resource_allowlist_generation) { "enable_resource_allowlist_generation=true does not work for target_os=$target_os") } +declare_args() { + extra_cflags = "" + extra_cppflags = "" + extra_cxxflags = "" + extra_ldflags = "" +} + # This template defines a toolchain for something that works like gcc # (including clang). # -@@ -1004,22 +1011,12 @@ template("gcc_toolchain") { +@@ -1008,22 +1015,12 @@ template("gcc_toolchain") { # actually just be doing a native compile. template("clang_toolchain") { gcc_toolchain(target_name) { - _path = "$clang_base_path/bin" - _is_path_absolute = get_path_info(_path, "abspath") == _path - - # Preserve absolute paths for tools like distcc. - if (_is_path_absolute && filter_include([ _path ], [ "//*" ]) == []) { - prefix = _path - } else { - prefix = rebase_path(_path, root_build_dir) - } - - cc = "${prefix}/clang" - cxx = "${prefix}/clang++" + cc = "cc" + cxx = "c++" ld = cxx - readelf = "${prefix}/llvm-readelf" - ar = "${prefix}/llvm-ar" - nm = "${prefix}/llvm-nm" + readelf = "readelf" + ar = "ar" + nm = "nm" forward_variables_from(invoker, "*", [ "toolchain_args" ]) diff --git a/www/chromium/files/patch-build_toolchain_toolchain.gni b/www/chromium/files/patch-build_toolchain_toolchain.gni index 8190a4f7a3ea..c12f3f5ace17 100644 --- a/www/chromium/files/patch-build_toolchain_toolchain.gni +++ b/www/chromium/files/patch-build_toolchain_toolchain.gni @@ -1,11 +1,11 @@ ---- build/toolchain/toolchain.gni.orig 2026-01-14 08:33:23 UTC +--- build/toolchain/toolchain.gni.orig 2026-08-31 10:59:09 UTC +++ build/toolchain/toolchain.gni -@@ -64,7 +64,7 @@ if (host_os == "mac") { +@@ -69,7 +69,7 @@ if (host_os == "mac") { host_shlib_extension = ".dylib" } else if (host_os == "win") { host_shlib_extension = ".dll" -} else if (host_os == "linux" || host_os == "aix" || host_os == "zos") { +} else if (is_posix) { host_shlib_extension = ".so" } else { assert(false, "Host platform not supported") diff --git a/www/chromium/files/patch-chrome_app_chrome__command__ids.h b/www/chromium/files/patch-chrome_app_chrome__command__ids.h index 483312cfe04b..205cb6bd9281 100644 --- a/www/chromium/files/patch-chrome_app_chrome__command__ids.h +++ b/www/chromium/files/patch-chrome_app_chrome__command__ids.h @@ -1,16 +1,16 @@ ---- chrome/app/chrome_command_ids.h.orig 2026-08-12 09:02:10 UTC +--- chrome/app/chrome_command_ids.h.orig 2026-08-31 10:59:09 UTC +++ chrome/app/chrome_command_ids.h -@@ -78,11 +78,11 @@ +@@ -81,11 +81,11 @@ #define IDC_TOGGLE_MULTITASK_MENU 34050 #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #define IDC_USE_SYSTEM_TITLE_BAR 34051 #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) #define IDC_RESTORE_WINDOW 34052 #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) diff --git a/www/chromium/files/patch-chrome_app_chrome__main.cc b/www/chromium/files/patch-chrome_app_chrome__main.cc index dd46333c4093..0ae2b402303e 100644 --- a/www/chromium/files/patch-chrome_app_chrome__main.cc +++ b/www/chromium/files/patch-chrome_app_chrome__main.cc @@ -1,34 +1,34 @@ ---- chrome/app/chrome_main.cc.orig 2026-07-01 06:24:19 UTC +--- chrome/app/chrome_main.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/app/chrome_main.cc -@@ -33,11 +33,11 @@ +@@ -35,11 +35,11 @@ #include "chrome/common/mac/detect_inappropriate_exit.h" #endif -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "base/base_switches.h" #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "chrome/app/chrome_main_linux.h" #endif -@@ -107,7 +107,7 @@ int ChromeMain(int argc, const char** argv) { +@@ -142,7 +142,7 @@ int ChromeMain(int argc, const char** argv) { #error Unknown platform. #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) PossiblyDetermineFallbackChromeChannel(argv[0]); #endif -@@ -180,7 +180,7 @@ int ChromeMain(int argc, const char** argv) { +@@ -215,7 +215,7 @@ int ChromeMain(int argc, const char** argv) { SetUpBundleOverrides(); #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) AppendExtraArgumentsToCommandLine(command_line); #endif 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 df0d129053c4..519244c71d80 100644 --- a/www/chromium/files/patch-chrome_app_chrome__main__delegate.cc +++ b/www/chromium/files/patch-chrome_app_chrome__main__delegate.cc @@ -1,122 +1,122 @@ ---- chrome/app/chrome_main_delegate.cc.orig 2026-07-01 06:24:19 UTC +--- chrome/app/chrome_main_delegate.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/app/chrome_main_delegate.cc @@ -103,7 +103,7 @@ #include "ui/base/ui_base_switches.h" #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ - BUILDFLAG(IS_MAC) + BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) #include "components/webapps/isolated_web_apps/scheme.h" #endif @@ -185,17 +185,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 -@@ -233,7 +233,7 @@ const char* const ChromeMainDelegate::kNonWildcardDoma +@@ -236,7 +236,7 @@ ChromeMainDelegate::GetNonWildcardDomainNonPortSchemes #endif - chrome::kChromeSearchScheme, + chrome::kChromeSearchScheme, #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ - BUILDFLAG(IS_MAC) + BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) - webapps::kIsolatedAppScheme, + webapps::kIsolatedAppScheme, #endif - content::kChromeDevToolsScheme, content::kChromeUIScheme, -@@ -308,7 +308,7 @@ void AdjustLinuxOOMScore(const std::string& process_ty + content::kChromeDevToolsScheme, content::kChromeUIScheme, +@@ -312,7 +312,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 -@@ -388,7 +388,7 @@ bool HandleVersionSwitches(const base::CommandLine& co +@@ -394,7 +394,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) || -@@ -400,7 +400,7 @@ void HandleHelpSwitches(const base::CommandLine& comma +@@ -406,7 +406,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; -@@ -482,7 +482,7 @@ std::optional AcquireProcessSingleton( +@@ -489,7 +489,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. -@@ -560,7 +560,7 @@ void InitializeUserDataDir(base::CommandLine* command_ +@@ -567,7 +567,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. -@@ -666,7 +666,7 @@ void RecordMainStartupMetrics(const StartupTimestamps& +@@ -676,7 +676,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( -@@ -1132,7 +1132,7 @@ std::optional ChromeMainDelegate::BasicStartupCom +@@ -1144,7 +1144,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 -@@ -1461,7 +1461,7 @@ void ChromeMainDelegate::PreSandboxStartup() { +@@ -1483,7 +1483,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)) { -@@ -1506,7 +1506,7 @@ void ChromeMainDelegate::PreSandboxStartup() { +@@ -1528,7 +1528,7 @@ void ChromeMainDelegate::PreSandboxStartup() { if (process_type.empty()) { // 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 diff --git a/www/chromium/files/patch-chrome_browser_about__flags.cc b/www/chromium/files/patch-chrome_browser_about__flags.cc index 4e1074482501..ab1760f6a40d 100644 --- a/www/chromium/files/patch-chrome_browser_about__flags.cc +++ b/www/chromium/files/patch-chrome_browser_about__flags.cc @@ -1,518 +1,509 @@ ---- chrome/browser/about_flags.cc.orig 2026-08-12 09:02:10 UTC +--- chrome/browser/about_flags.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/about_flags.cc -@@ -347,13 +347,13 @@ +@@ -353,13 +353,13 @@ #include "components/stylus_handwriting/win/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" #include "ui/ozone/public/ozone_switches.h" #endif #if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_WIN) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) #include "chrome/browser/enterprise/data_protection/data_protection_features.h" #include "chrome/browser/enterprise/profile_management/profile_management_features.h" #include "chrome/browser/enterprise/webstore/features.h" -@@ -361,7 +361,7 @@ +@@ -367,7 +367,7 @@ // BUILDFLAG(IS_WIN) #if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_WIN) || BUILDFLAG(IS_ANDROID) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) #include "chrome/browser/ui/webui/new_tab_page/composebox/variations/composebox_fieldtrial.h" // nogncheck #include "chrome/browser/glic/suggestions/contextual_cueing_features.h" // nogncheck #endif // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || -@@ -371,7 +371,7 @@ +@@ -377,7 +377,7 @@ #include "components/enterprise/platform_auth/platform_auth_features.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 "components/enterprise/browser/reporting/reporting_features.h" #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) -@@ -933,6 +933,23 @@ const FeatureEntry::FeatureVariation +@@ -931,6 +931,23 @@ const FeatureEntry::FeatureVariation "identity request to Android OS", 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, nullptr}, + {"using sndio by default if available", + kAudioBackendSndio, nullptr}, + {"using ALSA by default if available", + kAudioBackendAlsa, nullptr}}; +#endif + const FeatureEntry::FeatureParam kMBIModeLegacy[] = {{"mode", "legacy"}}; const FeatureEntry::FeatureParam kMBIModeEnabledPerRenderProcessHost[] = { {"mode", "per_render_process_host"}}; -@@ -1414,7 +1431,7 @@ const FeatureEntry::FeatureVariation +@@ -1494,7 +1511,7 @@ const FeatureEntry::FeatureVariation kContextManagementKeepMenuOpenAndTabDeselectionParams, nullptr}}; #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[] = { -@@ -1643,7 +1660,7 @@ const FeatureEntry::FeatureVariation +@@ -1723,7 +1740,7 @@ const FeatureEntry::FeatureVariation // BUILDFLAG(IS_WIN) #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_WIN) || BUILDFLAG(IS_ANDROID) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) - const FeatureEntry::FeatureParam kComposeboxNextThreadsRail[] = { - {"EnableThreadsRail", "true"}, -@@ -3324,7 +3341,7 @@ const FeatureEntry::FeatureVariation kAndroidThemeReso + const FeatureEntry::FeatureParam kNtpNextAllowDisablement[] = { + {"NtpNextDisablementContextMenuParam", "true"}, +@@ -3379,7 +3396,7 @@ const FeatureEntry::FeatureVariation kAndroidThemeReso #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[] = -@@ -3350,7 +3367,7 @@ const flags_ui::FeatureEntry::FeatureVariation +@@ -3411,7 +3428,7 @@ const flags_ui::FeatureEntry::FeatureVariation #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || // 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) const char kReplaceSyncPromosWithSignInPromosDesktopFeatures[] = "ReplaceSyncPromosWithSignInPromos," "IPH_SignInBenefits," -@@ -3540,7 +3557,7 @@ const FeatureEntry::FeatureVariation kSensitiveContent +@@ -3601,7 +3618,7 @@ const FeatureEntry::FeatureVariation kSensitiveContent #endif // BUILDFLAG(IS_ANDROID) #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 FeatureEntry::FeatureParam kContextualCueingEnabledNoEngagementCap[] = { {"BackoffTime", "0h"}, {"BackoffMultiplierBase", "0.0"}, -@@ -4205,7 +4222,7 @@ const FeatureEntry::FeatureVariation +@@ -4256,7 +4273,7 @@ const FeatureEntry::FeatureVariation }; #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) const FeatureEntry::FeatureParam kNtpCustomizeChromeAutoOpenOnEveryNTP[] = { {"max_customize_chrome_auto_shown_count", "5"}, {"max_customize_chrome_auto_shown_session_count", "5"}}; -@@ -4308,7 +4325,7 @@ const FeatureEntry::FeatureVariation kRefreshTokenBind - #endif // BUILDFLAG(ENABLE_DICE_SUPPORT) - - #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || \ -- BUILDFLAG(IS_CHROMEOS) -+ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - const FeatureEntry::FeatureParam kProjectsPanelWithoutThreadsVariation[] = { - {"include_threads_in_projects_panel", "false"}}; - const FeatureEntry::FeatureParam kProjectsPanelWithThreadsVariation[] = { -@@ -4353,7 +4370,7 @@ const FeatureEntry::FeatureVariation kCrossDeviceSigni +@@ -4388,7 +4405,7 @@ const FeatureEntry::FeatureVariation kCrossDeviceSigni }; #endif // 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) const FeatureEntry::FeatureParam kCrossDeviceSigninFromDesktopDefaultUrl[] = { {"url", "https://www.google.com/chrome/go-mobile?entry_point_id=1&email=$1"}, -@@ -5508,7 +5525,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -5641,7 +5658,7 @@ const FeatureEntry kFeatureEntries[] = { flag_descriptions::kEnableProcessIsolationUiDescription, kOsWin, FEATURE_VALUE_TYPE(features::kProcessIsolationSettings)}, #endif // BUILDFLAG(IS_WIN) -#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, -@@ -5725,7 +5742,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -5855,7 +5872,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, -@@ -5740,6 +5757,16 @@ const FeatureEntry kFeatureEntries[] = { +@@ -5870,6 +5887,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) -@@ -6162,7 +6189,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -6289,7 +6316,7 @@ const FeatureEntry kFeatureEntries[] = { flag_descriptions::kFillOnAccountSelectDescription, kOsAll, FEATURE_VALUE_TYPE(password_manager::features::kFillOnAccountSelect)}, -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) {"first-run-desktop-choice-screen-refresh", flag_descriptions::kFirstRunDesktopChoiceScreenRefreshName, flag_descriptions::kFirstRunDesktopChoiceScreenRefreshDescription, -@@ -6477,7 +6504,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -6607,7 +6634,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:: -@@ -6906,7 +6933,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -7049,7 +7076,7 @@ const FeatureEntry kFeatureEntries[] = { kVoiceSearchCoherenceComposeboxVariations, "VoiceSearchCoherenceComposeboxVariations")}, #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_VALUE_TYPE(history_embeddings::kHistoryEmbeddings)}, -@@ -7169,7 +7196,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -7330,7 +7357,7 @@ const FeatureEntry kFeatureEntries[] = { FEATURE_VALUE_TYPE(omnibox::kContextMenuAnimationLimiting)}, #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) {"ntp-customize-chrome-auto-open", flag_descriptions::kNtpCustomizeChromeAutoOpenName, flag_descriptions::kNtpCustomizeChromeAutoOpenDescription, kOsDesktop, -@@ -7414,7 +7441,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -7599,7 +7626,7 @@ const FeatureEntry kFeatureEntries[] = { #endif // BUILDFLAG(IS_ANDROID) #if BUILDFLAG(ENABLE_PRINTING) -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) {"cups-ipp-printing-backend", flag_descriptions::kCupsIppPrintingBackendName, flag_descriptions::kCupsIppPrintingBackendDescription, kOsDesktop, -@@ -7631,7 +7658,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -7823,7 +7850,7 @@ const FeatureEntry kFeatureEntries[] = { FEATURE_VALUE_TYPE(media::kHeadlessCaptionEarlyStart)}, #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) {"enable-input-protection", flag_descriptions::kEnableInputProtectionName, flag_descriptions::kEnableInputProtectionDescription, kOsDesktop, FEATURE_VALUE_TYPE(views::features::kEnableInputProtection)}, -@@ -8183,7 +8210,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -8356,7 +8383,7 @@ const FeatureEntry kFeatureEntries[] = { FEATURE_VALUE_TYPE(ash::features::kGesturePropertiesDBusService)}, #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, -@@ -8614,7 +8641,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -8784,7 +8811,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, -@@ -9253,7 +9280,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -9244,7 +9271,7 @@ const FeatureEntry kFeatureEntries[] = { + #endif + + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \ +- BUILDFLAG(IS_CHROMEOS) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + {"auto-picture-in-picture-on-window-occluded", + flag_descriptions::kAutoPictureInPictureOnWindowOccludedName, + flag_descriptions::kAutoPictureInPictureOnWindowOccludedDescription, +@@ -9428,7 +9455,7 @@ const FeatureEntry kFeatureEntries[] = { FEATURE_VALUE_TYPE(ash::features::kAnnotatorMode)}, #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) {"approximate-geolocation-permission", flag_descriptions::kApproximateGeolocationPermissionName, flag_descriptions::kApproximateGeolocationPermissionDescription, -@@ -9750,7 +9777,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -9965,7 +9992,7 @@ const FeatureEntry kFeatureEntries[] = { FEATURE_VALUE_TYPE( autofill::features::kAutofillEnablePrefetchingRiskDataForRetrieval)}, -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) {"enable-generic-oidc-auth-profile-management", flag_descriptions::kEnableGenericOidcAuthProfileManagementName, flag_descriptions::kEnableGenericOidcAuthProfileManagementDescription, -@@ -9760,7 +9787,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -9975,7 +10002,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, -@@ -10117,7 +10144,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -10360,7 +10387,7 @@ const FeatureEntry kFeatureEntries[] = { flag_descriptions::kResponsiveIframesDescription, kOsAll, FEATURE_VALUE_TYPE(blink::features::kResponsiveIframes)}, -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) {"replace-sync-promos-with-sign-in-promos-desktop", flag_descriptions::kReplaceSyncPromosWithSignInPromosName, flag_descriptions::kReplaceSyncPromosWithSignInPromosDescription, -@@ -10484,7 +10511,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -10722,7 +10749,7 @@ const FeatureEntry kFeatureEntries[] = { segmentation_platform::features::kSegmentationSurveyPage)}, #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) {"autofill-enable-buy-now-pay-later", flag_descriptions::kAutofillEnableBuyNowPayLaterName, flag_descriptions::kAutofillEnableBuyNowPayLaterDescription, -@@ -10965,7 +10992,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -11241,7 +11268,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)}, -@@ -10988,7 +11015,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -11264,7 +11291,7 @@ const FeatureEntry kFeatureEntries[] = { #endif // !BUILDFLAG(IS_ANDROID) #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) {"autofill-enable-amount-extraction", flag_descriptions::kAutofillEnableAmountExtractionName, flag_descriptions::kAutofillEnableAmountExtractionDescription, -@@ -11110,7 +11137,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -11392,7 +11419,7 @@ const FeatureEntry kFeatureEntries[] = { FEATURE_VALUE_TYPE( feature_engagement::kIPHAutofillCreditCardBenefitFeature)}, -#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, -@@ -11150,7 +11177,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -11432,7 +11459,7 @@ const FeatureEntry kFeatureEntries[] = { supervised_user::kSupervisedUserUseUrlFilteringService)}, #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) {"autofill-enable-amount-extraction-testing", flag_descriptions::kAutofillEnableAmountExtractionTestingName, flag_descriptions::kAutofillEnableAmountExtractionTestingDescription, -@@ -11160,7 +11187,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -11442,7 +11469,7 @@ const FeatureEntry kFeatureEntries[] = { #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) -#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, -@@ -11336,7 +11363,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -11613,7 +11640,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)}, -@@ -11370,7 +11397,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -11647,7 +11674,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, -@@ -11454,7 +11481,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -11731,7 +11758,7 @@ const FeatureEntry kFeatureEntries[] = { #endif // BUILDFLAG(IS_ANDROID) #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) {"autofill-enable-buy-now-pay-later-for-klarna", flag_descriptions::kAutofillEnableBuyNowPayLaterForKlarnaName, flag_descriptions::kAutofillEnableBuyNowPayLaterForKlarnaDescription, -@@ -11499,7 +11526,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -11776,7 +11803,7 @@ const FeatureEntry kFeatureEntries[] = { #endif #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) {"autofill-enable-buy-now-pay-later-for-externally-linked", flag_descriptions::kAutofillEnableBuyNowPayLaterForExternallyLinkedName, flag_descriptions:: -@@ -11555,7 +11582,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -11837,7 +11864,7 @@ const FeatureEntry kFeatureEntries[] = { #endif // 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) {"cross-device-signin-from-desktop", flag_descriptions::kCrossDeviceSigninFromDesktopName, flag_descriptions::kCrossDeviceSigninFromDesktopDescription, -@@ -11873,7 +11900,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -12146,7 +12173,7 @@ const FeatureEntry kFeatureEntries[] = { #endif #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_WIN) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) {"contextual-suggestion-ui-improvements", flag_descriptions::kContextualSuggestionsUiImprovementsName, flag_descriptions::kContextualSuggestionsUiImprovementsDescription, -@@ -12078,7 +12105,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -12368,7 +12395,7 @@ const FeatureEntry kFeatureEntries[] = { FEATURE_VALUE_TYPE(features::kCryptographyComplianceCnsa)}, #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) {"lens-reinvocation-affordance", flag_descriptions::kLensSearchReinvocationAffordanceName, flag_descriptions::kLensSearchReinvocationAffordanceDescription, -@@ -12122,7 +12149,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -12412,7 +12439,7 @@ const FeatureEntry kFeatureEntries[] = { STRING_VALUE_TYPE(variations::switches::kVariationsSeedCorpus, "")}, #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) {"passkey-unlock-error-ui", flag_descriptions::kPasskeyUnlockErrorUiName, flag_descriptions::kPasskeyUnlockErrorUiDescription, kOsDesktop, FEATURE_VALUE_TYPE(device::kPasskeyUnlockErrorUi)}, -@@ -12162,7 +12189,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -12452,7 +12479,7 @@ const FeatureEntry kFeatureEntries[] = { flag_descriptions::kHandleMdmErrorsForDasherAccountsDescription, kOsAll, FEATURE_VALUE_TYPE(switches::kHandleMdmErrorsForDasherAccounts)}, -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) {"disable-u18-feedback-desktop", flag_descriptions::kDisableU18FeedbackDesktopName, flag_descriptions::kDisableU18FeedbackDesktopDescription, -@@ -12170,7 +12197,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -12460,7 +12487,7 @@ const FeatureEntry kFeatureEntries[] = { FEATURE_VALUE_TYPE(switches::kDisableU18FeedbackDesktop)}, #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) {"profile-creation-decline-signin-cta-experiment", flag_descriptions::kProfileCreationDeclineSigninCTAExperimentName, flag_descriptions::kProfileCreationDeclineSigninCTAExperimentDescription, -@@ -12191,7 +12218,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -12481,7 +12508,7 @@ const FeatureEntry kFeatureEntries[] = { enterprise_signals::features::kProfileSignalsReportingEnabled)}, #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - {"projects-panel", flag_descriptions::kProjectsPanelName, - flag_descriptions::kProjectsPanelDescription, kOsDesktop, - FEATURE_WITH_PARAMS_VALUE_TYPE(tab_groups::kProjectsPanel, -@@ -12225,7 +12252,7 @@ const FeatureEntry kFeatureEntries[] = { - #endif - - #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ -- BUILDFLAG(IS_CHROMEOS) -+ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - {"lens-overlay-optimization-filter", - flag_descriptions::kLensOverlayOptimizationFilterName, - flag_descriptions::kLensOverlayOptimizationFilterDescription, kOsDesktop, -@@ -12252,7 +12279,7 @@ const FeatureEntry kFeatureEntries[] = { + {"organizer-panel", flag_descriptions::kOrganizerPanelName, + flag_descriptions::kOrganizerPanelDescription, kOsDesktop, + FEATURE_VALUE_TYPE(tab_groups::kOrganizerPanel)}, +@@ -12532,7 +12559,7 @@ const FeatureEntry kFeatureEntries[] = { MULTI_VALUE_TYPE(kConnectionAllowlistsChoices)}, #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) {"read-anything-with-readability-enabled", flag_descriptions::kReadAnythingWithReadabilityName, flag_descriptions::kReadAnythingWithReadabilityDescription, kOsDesktop, -@@ -12260,7 +12287,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -12540,7 +12567,7 @@ const FeatureEntry kFeatureEntries[] = { #endif #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) {"read-anything-omnibox-chip", flag_descriptions::kReadAnythingOmniboxChipName, flag_descriptions::kReadAnythingOmniboxChipDescription, kOsDesktop, -@@ -12289,7 +12316,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -12569,7 +12596,7 @@ const FeatureEntry kFeatureEntries[] = { #endif #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) {"lens-overlay-non-blocking-privacy-notice", flag_descriptions::kLensOverlayNonBlockingPrivacyNoticeName, flag_descriptions::kLensOverlayNonBlockingPrivacyNoticeDescription, -@@ -12356,7 +12383,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -12636,7 +12663,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) {"enable-your-saved-info-settings-page", flag_descriptions::kYourSavedInfoSettingsPageName, flag_descriptions::kYourSavedInfoSettingsPageDescription, kOsDesktop, -@@ -12522,7 +12549,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -12796,7 +12823,7 @@ const FeatureEntry kFeatureEntries[] = { FEATURE_VALUE_TYPE(autofill::features::kAutofillAiWithDataSchema)}, #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) {"read-anything-line-focus", flag_descriptions::kReadAnythingLineFocusName, flag_descriptions::kReadAnythingLineFocusDescription, kOsDesktop, FEATURE_VALUE_TYPE(features::kReadAnythingLineFocus)}, -@@ -12546,7 +12573,7 @@ const FeatureEntry kFeatureEntries[] = { - FEATURE_VALUE_TYPE(payments::android::kDeduplicateNativePaymentApps)}, +@@ -12862,7 +12889,7 @@ const FeatureEntry kFeatureEntries[] = { #endif --#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - {"password-upload-ui-update", - flag_descriptions::kPasswordUploadUiUpdateName, - flag_descriptions::kPasswordUploadUiUpdateDescription, -@@ -12595,7 +12622,7 @@ const FeatureEntry kFeatureEntries[] = { - FEATURE_VALUE_TYPE(chrome::android::kAndroidXrImmersivePlayer)}, - #endif - --#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_CHROMEOS) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) {"saas-usage-reporting", flag_descriptions::kSaasUsageReportingName, flag_descriptions::kSaasUsageReportingDescription, - kOsLinux | kOsMac | kOsWin, -@@ -13002,7 +13029,7 @@ const FeatureEntry kFeatureEntries[] = { + kOsLinux | kOsMac | kOsWin | kOsCrOS, +@@ -13283,7 +13310,7 @@ const FeatureEntry kFeatureEntries[] = { FEATURE_VALUE_TYPE(blink::features::kUserMediaElementLegacy)}, #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) {"read-anything-readability-select-text", flag_descriptions::kReadAnythingReadabilitySelectTextName, flag_descriptions::kReadAnythingReadabilitySelectTextDescription, -@@ -13310,7 +13337,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -13593,7 +13620,7 @@ const FeatureEntry kFeatureEntries[] = { flag_descriptions::kLongScreenshotsNoMemoryCheckDescription, kOsAndroid, FEATURE_VALUE_TYPE(chrome::android::kLongScreenshotsNoMemoryCheck)}, #endif -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) {"device-signals-backfill-disclaimer", flag_descriptions::kDeviceSignalsBackfillDisclaimerName, flag_descriptions::kDeviceSignalsBackfillDisclaimerDescription, +@@ -13678,7 +13705,7 @@ const FeatureEntry kFeatureEntries[] = { + #endif + + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_CHROMEOS) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + {"read-anything-improved-ui", + flag_descriptions::kReadAnythingImprovedUiName, + flag_descriptions::kReadAnythingImprovedUiDescription, kOsDesktop, diff --git a/www/chromium/files/patch-chrome_browser_after__startup__task__utils.cc b/www/chromium/files/patch-chrome_browser_after__startup__task__utils.cc index 5e3a866918d1..67acd54f4e63 100644 --- a/www/chromium/files/patch-chrome_browser_after__startup__task__utils.cc +++ b/www/chromium/files/patch-chrome_browser_after__startup__task__utils.cc @@ -1,11 +1,11 @@ ---- chrome/browser/after_startup_task_utils.cc.orig 2025-04-04 08:52:13 UTC +--- chrome/browser/after_startup_task_utils.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/after_startup_task_utils.cc -@@ -112,7 +112,7 @@ void SetBrowserStartupIsComplete() { - TRACE_EVENT_SCOPE_GLOBAL, "BrowserCount", browser_count); +@@ -123,7 +123,7 @@ void SetBrowserStartupIsComplete(StartupIsCompleteReas GetStartupCompleteFlag().Set(); + base::UmaHistogramEnumeration("Startup.BrowserStartupCompleteReason", reason); #if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Process::Current().CreationTime() is not available on all platforms. const base::Time process_creation_time = base::Process::Current().CreationTime(); 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 aea4bdce7417..53ab3b9a5dc8 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 2026-08-12 09:02:10 UTC +--- chrome/browser/browser_process_impl.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/browser_process_impl.cc @@ -269,7 +269,7 @@ void OnLocalStatePrefsLoaded(); #include "components/enterprise/browser/controller/chrome_browser_cloud_management_controller.h" #endif -#if BUILDFLAG(IS_LINUX) && BUILDFLAG(USE_DBUS) +#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && BUILDFLAG(USE_DBUS) #include "chrome/browser/browser_features.h" #include "components/os_crypt/async/browser/freedesktop_secret_key_provider.h" #include "components/os_crypt/async/browser/secret_portal_key_provider.h" @@ -290,7 +290,7 @@ void OnLocalStatePrefsLoaded(); #include "components/os_crypt/async/common/encryptor.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; -@@ -1320,7 +1320,7 @@ void BrowserProcessImpl::RegisterPrefs(PrefRegistrySim +@@ -1318,7 +1318,7 @@ void BrowserProcessImpl::RegisterPrefs(PrefRegistrySim registry->RegisterBooleanPref(prefs::kDevToolsRemoteDebuggingAllowed, true); registry->RegisterBooleanPref(prefs::kDevToolsRemoteDebuggingEnabled, false); -#if BUILDFLAG(IS_LINUX) && BUILDFLAG(USE_DBUS) +#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && BUILDFLAG(USE_DBUS) os_crypt_async::SecretPortalKeyProvider::RegisterLocalPrefs(registry); #endif } -@@ -1569,7 +1569,7 @@ void BrowserProcessImpl::PreMainMessageLoopRun() { +@@ -1567,7 +1567,7 @@ void BrowserProcessImpl::PreMainMessageLoopRun() { local_state(), /*force_protection_level=*/std::nullopt))); #endif // BUILDFLAG(IS_WIN) -#if BUILDFLAG(IS_LINUX) && BUILDFLAG(USE_DBUS) +#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && BUILDFLAG(USE_DBUS) base::CommandLine* cmd_line = base::CommandLine::ForCurrentProcess(); const auto password_store = cmd_line->GetSwitchValueASCII(password_manager::kPasswordStore); -@@ -1909,7 +1909,7 @@ void BrowserProcessImpl::Unpin() { +@@ -1908,7 +1908,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 fede4152cf86..ff0c779edef1 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,35 +1,20 @@ ---- chrome/browser/chrome_browser_field_trials.cc.orig 2026-04-09 06:05:42 UTC +--- chrome/browser/chrome_browser_field_trials.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/chrome_browser_field_trials.cc -@@ -53,12 +53,12 @@ +@@ -60,7 +60,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) - --#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - #include "base/check_deref.h" - #include "chrome/browser/first_run/first_run.h" - #include "chrome/browser/signin/before_fre_refresh_hats_field_trial.h" -@@ -94,7 +94,7 @@ void ChromeBrowserFieldTrials::SetUpClientSideFieldTri - } - #endif - --#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - // This trial is client controlled on Mac and Linux because the survey is - // triggered on the very first run of Chrome. These platforms do not support - // variations seed on the first run. -@@ -125,7 +125,7 @@ void ChromeBrowserFieldTrials::RegisterFeatureOverride +@@ -116,7 +116,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 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 a832fa71f930..1227170cfa9e 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 2026-08-12 09:02:10 UTC +--- chrome/browser/chrome_browser_interface_binders.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/chrome_browser_interface_binders.cc @@ -84,7 +84,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/web_applications/sub_apps/sub_apps_service_impl.h" -@@ -383,7 +383,7 @@ void BindMediaFoundationPreferences( +@@ -387,7 +387,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) { -@@ -557,7 +557,7 @@ void PopulateChromeFrameBinders( +@@ -561,7 +561,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::kSubApps) && !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 80cf96546acc..7eef18d665e7 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,36 +1,36 @@ ---- chrome/browser/chrome_browser_interface_binders_webui.cc.orig 2026-08-12 09:02:10 UTC +--- chrome/browser/chrome_browser_interface_binders_webui.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/chrome_browser_interface_binders_webui.cc -@@ -93,13 +93,13 @@ +@@ -95,13 +95,13 @@ #endif // !BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_DESKTOP_ANDROID) #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) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "chrome/browser/ui/webui/skills/skills.mojom.h" #include "chrome/browser/ui/webui/skills/skills_ui.h" #endif -@@ -354,7 +354,7 @@ void PopulateChromeWebUIFrameBinders( +@@ -362,7 +362,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); -@@ -366,7 +366,7 @@ void PopulateChromeWebUIFrameBinders( +@@ -374,7 +374,7 @@ void PopulateChromeWebUIFrameBinders( #endif #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) RegisterWebUIControllerInterfaceBinder(map); RegisterWebUIControllerInterfaceBinder(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) -@@ -379,7 +379,7 @@ void PopulateChromeWebUIFrameBindersPartsDesktop( +@@ -388,7 +388,7 @@ void PopulateChromeWebUIFrameBindersPartsDesktop( 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); -@@ -585,7 +585,7 @@ void PopulateChromeWebUIFrameBindersPartsDesktop( +@@ -582,7 +582,7 @@ void PopulateChromeWebUIFrameBindersPartsDesktop( DrivePickerUntrustedHostUI>(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< app_management::mojom::PageHandlerFactory, WebAppSettingsUI>(map); -@@ -609,7 +609,7 @@ void PopulateChromeWebUIFrameBindersPartsDesktop( +@@ -606,7 +606,7 @@ void PopulateChromeWebUIFrameBindersPartsDesktop( webapps::AppHomeUI>(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(map); #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) 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 bb33f96b38d5..e2e3f45fe57d 100644 --- a/www/chromium/files/patch-chrome_browser_chrome__browser__main.cc +++ b/www/chromium/files/patch-chrome_browser_chrome__browser__main.cc @@ -1,170 +1,161 @@ ---- chrome/browser/chrome_browser_main.cc.orig 2026-08-12 09:02:10 UTC +--- chrome/browser/chrome_browser_main.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/chrome_browser_main.cc -@@ -173,7 +173,7 @@ +@@ -175,7 +175,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 -@@ -199,12 +199,12 @@ +@@ -201,12 +201,12 @@ #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" #include "chrome/browser/ui/views/chrome_browser_main_extra_parts_views_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" -@@ -215,7 +215,7 @@ +@@ -217,7 +217,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 -@@ -292,7 +292,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) -@@ -325,7 +325,7 @@ +@@ -324,7 +324,7 @@ #include "chrome/browser/chrome_browser_main_mac.h" #elif BUILDFLAG(IS_CHROMEOS) #include "chrome/browser/ash/main_parts/chrome_browser_main_parts_ash.h" -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "chrome/browser/chrome_browser_main_linux.h" #elif BUILDFLAG(IS_ANDROID) #include "chrome/browser/chrome_browser_main_android.h" -@@ -333,7 +333,7 @@ +@@ -332,7 +332,7 @@ #include "chrome/browser/chrome_browser_main_posix.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" -@@ -355,7 +355,7 @@ +@@ -354,7 +354,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"); -@@ -505,7 +505,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. -@@ -571,7 +571,7 @@ bool ProcessSingletonNotificationCallback( +@@ -598,7 +598,7 @@ bool ProcessSingletonNotificationCallback( // 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; -@@ -737,7 +737,7 @@ std::unique_ptr ChromeBrows +@@ -764,7 +764,7 @@ std::unique_ptr ChromeBrows #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) -@@ -767,7 +767,7 @@ std::unique_ptr ChromeBrows +@@ -794,7 +794,7 @@ std::unique_ptr ChromeBrows // 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 -@@ -784,7 +784,7 @@ std::unique_ptr ChromeBrows +@@ -811,7 +811,7 @@ std::unique_ptr ChromeBrows 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()); -@@ -1284,7 +1284,7 @@ int ChromeBrowserMainParts::PreCreateThreadsImpl() { +@@ -1311,7 +1311,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/41321051 . -@@ -1328,7 +1328,7 @@ int ChromeBrowserMainParts::PreCreateThreadsImpl() { +@@ -1355,7 +1355,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(); TouchUIControllerStatsTracker::Initialize( -@@ -1574,7 +1574,7 @@ void ChromeBrowserMainParts::PostProfileInit(Profile* +@@ -1601,7 +1601,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( -@@ -1625,7 +1625,7 @@ void ChromeBrowserMainParts::PostProfileInit(Profile* +@@ -1660,7 +1660,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(); } -@@ -1712,7 +1712,7 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl( +@@ -1748,7 +1748,7 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl( #endif // Should be done before starting metrics recording. -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // On Linux, the EULA dialog requires Views, so it is shown here rather than // when applying the first-run prefs. if (first_run::IsChromeFirstRun() && master_prefs_->eula_required && -@@ -1748,7 +1748,7 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl( +@@ -1784,7 +1784,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(); } +@@ -2105,7 +2105,7 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl( + browser_process_->StartAutoupdateTimer(); + #endif + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + // On Linux, the running exe will be updated if an upgrade becomes + // available while the browser is running. We need to save the last + // modified time of the exe, so we can compare to determine if there is 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 595a5a219531..4223ac2e38a4 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,210 +1,228 @@ ---- chrome/browser/chrome_content_browser_client.cc.orig 2026-08-12 09:02:10 UTC +--- chrome/browser/chrome_content_browser_client.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/chrome_content_browser_client.cc -@@ -618,7 +618,7 @@ +@@ -620,7 +620,7 @@ #include "third_party/cros_system_api/switches/chrome_switches.h" #endif // BUILDFLAG(IS_CHROMEOS) -#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 -@@ -629,7 +629,7 @@ +@@ -633,7 +633,7 @@ #endif #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "chrome/browser/enterprise/network_header_injection/http_header_injection_proxying_url_loader_factory.h" #include "chrome/browser/enterprise/network_header_injection/http_header_injection_utils.h" #include "components/webapps/isolated_web_apps/scheme.h" -@@ -1511,7 +1511,7 @@ void ChromeContentBrowserClient::RegisterLocalStatePre +@@ -954,7 +954,7 @@ blink::mojom::AutoplayPolicy DetermineWebContentsAutop + } + + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_CHROMEOS) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + // If a user requests Read Aloud audio playbaback through the "Listen to this + // page" entry point in the context menu, page distillation and TTS engine + // readiness may take longer than the user gesture timeout. Thus, we allow +@@ -1573,7 +1573,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) -@@ -1787,7 +1787,7 @@ ChromeContentBrowserClient::GetStoragePartitionConfigF +@@ -1851,7 +1851,7 @@ ChromeContentBrowserClient::GetStoragePartitionConfigF #if BUILDFLAG(ENABLE_EXTENSIONS) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) if (content::SiteIsolationPolicy::ShouldUrlUseApplicationIsolationLevel( browser_context, site)) { CHECK(url::Origin::Create(site).scheme() == webapps::kIsolatedAppScheme); -@@ -2730,7 +2730,7 @@ bool ChromeContentBrowserClient::ShouldUrlUseApplicati +@@ -2788,7 +2788,7 @@ bool ChromeContentBrowserClient::ShouldUrlUseApplicati const GURL& url) { #if BUILDFLAG(ENABLE_EXTENSIONS) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) if (!content::AreIsolatedWebAppsEnabled(browser_context)) { return false; -@@ -2843,7 +2843,9 @@ void MaybeAppendBlinkSettingsSwitchForFieldTrial( +@@ -2911,7 +2911,9 @@ void MaybeAppendBlinkSettingsSwitchForFieldTrial( void ChromeContentBrowserClient::AppendExtraCommandLineSwitches( base::CommandLine* command_line, int child_process_id) { +#if !BUILDFLAG(IS_BSD) crash_keys::AppendStringAnnotationsCommandLineSwitch(command_line); +#endif #if BUILDFLAG(IS_MAC) std::unique_ptr client_info = GoogleUpdateSettings::LoadMetricsClientInfo(); -@@ -2852,7 +2854,7 @@ void ChromeContentBrowserClient::AppendExtraCommandLin +@@ -2920,7 +2922,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( -@@ -3206,7 +3208,7 @@ void ChromeContentBrowserClient::AppendExtraCommandLin +@@ -3280,7 +3282,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)) { -@@ -4228,7 +4230,7 @@ GetPreferredColorScheme(const WebPreferences& web_pref +@@ -4169,7 +4171,7 @@ GetPreferredColorScheme(const WebPreferences& web_pref std::optional GetRootScrollbarThemeColor(WebContents* web_contents) { bool root_scrollbar_follows_browser_theme = false; -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) root_scrollbar_follows_browser_theme = base::FeatureList::IsEnabled( blink::features::kRootScrollbarFollowsBrowserTheme); #endif -@@ -5251,7 +5253,7 @@ void ChromeContentBrowserClient::GetAdditionalAllowedS +@@ -4961,7 +4963,7 @@ void ChromeContentBrowserClient::OverrideWebPreference + web_prefs->touch_drag_drop_enabled = + base::FeatureList::IsEnabled(features::kTouchDragAndDrop); + +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + web_prefs->touch_dragend_context_menu = + base::FeatureList::IsEnabled(features::kTouchDragAndDrop); + #endif +@@ -5201,7 +5203,7 @@ void ChromeContentBrowserClient::GetAdditionalAllowedS additional_allowed_schemes->push_back(content::kChromeUIScheme); additional_allowed_schemes->push_back(content::kChromeUIUntrustedScheme); #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) additional_allowed_schemes->push_back(webapps::kIsolatedAppScheme); #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || // BUILDFLAG(IS_CHROMEOS) -@@ -5305,7 +5307,7 @@ void ChromeContentBrowserClient::GetAdditionalFileSyst +@@ -5255,7 +5257,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, -@@ -6219,7 +6221,7 @@ ChromeContentBrowserClient::CreateNonNetworkNavigation +@@ -6173,7 +6175,7 @@ ChromeContentBrowserClient::CreateNonNetworkNavigation } #endif // BUILDFLAG(IS_CHROMEOS) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) if (scheme == webapps::kIsolatedAppScheme) { if (content::AreIsolatedWebAppsEnabled(browser_context) && !browser_context->ShutdownStarted()) { -@@ -6291,7 +6293,7 @@ void ChromeContentBrowserClient:: +@@ -6245,7 +6247,7 @@ void ChromeContentBrowserClient:: DCHECK(factories); #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) if (content::AreIsolatedWebAppsEnabled(browser_context) && !browser_context->ShutdownStarted()) { std::optional app_origin; -@@ -6338,7 +6340,7 @@ void ChromeContentBrowserClient:: +@@ -6292,7 +6294,7 @@ void ChromeContentBrowserClient:: DCHECK(factories); #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) if (content::AreIsolatedWebAppsEnabled(browser_context) && !browser_context->ShutdownStarted()) { factories->emplace(webapps::kIsolatedAppScheme, -@@ -6611,7 +6613,7 @@ void ChromeContentBrowserClient:: +@@ -6565,7 +6567,7 @@ void ChromeContentBrowserClient:: #endif // BUILDFLAG(IS_CHROMEOS) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) { auto* rph = content::RenderProcessHost::FromID(render_process_id); content::BrowserContext* browser_context = rph->GetBrowserContext(); -@@ -6723,7 +6725,7 @@ void ChromeContentBrowserClient::WillCreateURLLoaderFa +@@ -6677,7 +6679,7 @@ void ChromeContentBrowserClient::WillCreateURLLoaderFa #endif #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Install the HTTP Header Injection proxying factory. enterprise_custom_headers::HttpHeaderInjectionProxyingURLLoaderFactory:: MaybeProxyRequest(browser_context, factory_builder); -@@ -6773,7 +6775,7 @@ void ChromeContentBrowserClient::WillCreateURLLoaderFa +@@ -6727,7 +6729,7 @@ void ChromeContentBrowserClient::WillCreateURLLoaderFa factory_builder, factory_override, isolation_info); #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // WARNING: This must be the last wrapper in the chain for // TrustedURLLoaderHeaderClient. This ensures that our client is the outermost // wrapper of `header_client`, allowing us to apply enterprise headers AFTER -@@ -6870,7 +6872,7 @@ ChromeContentBrowserClient::GetWebSocketOptions( +@@ -6824,7 +6826,7 @@ ChromeContentBrowserClient::GetWebSocketOptions( options.options = network::mojom::kWebSocketOptionNone; #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) if (frame) { enterprise_custom_headers::MaybeCreateWebSocketHeaderClient( frame->GetBrowserContext(), &options.header_client); -@@ -7299,7 +7301,7 @@ bool ChromeContentBrowserClient::HandleExternalProtoco +@@ -7246,7 +7248,7 @@ bool ChromeContentBrowserClient::HandleExternalProtoco CHECK(content::BrowserThread::CurrentlyOn(content::BrowserThread::UI)); #if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_WIN) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) // Handle the google-chrome:// scheme (and chromium://). // If the scheme is present, we strip it and navigate to the inner URL. // This avoids launching a new browser instance via the OS handler. -@@ -7446,7 +7448,7 @@ bool ChromeContentBrowserClient::HandleWebUI( +@@ -7398,7 +7400,7 @@ bool ChromeContentBrowserClient::HandleWebUI( } #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - // Rewrite chrome://settings/enhancedAutofill to chrome://settings/autofill. + // Rewrite chrome://settings/addresses to chrome://settings/contactInfo. if (url->SchemeIs(content::kChromeUIScheme) && -@@ -7735,7 +7737,7 @@ bool ChromeContentBrowserClient::ShouldSandboxNetworkS +@@ -7676,7 +7678,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) { -@@ -8175,7 +8177,7 @@ void ChromeContentBrowserClient:: +@@ -8091,7 +8093,7 @@ void ChromeContentBrowserClient:: GrantAdditionalRequestPrivilegesToWorkerProcess(int child_id, const GURL& script_url) { #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // IWA Service Workers need to be explicitly granted access to their origin // because isolated-app: isn't a web-safe scheme that can be accessed by // default. -@@ -8642,7 +8644,7 @@ ChromeContentBrowserClient::GetAlternativeErrorPageOve +@@ -8560,7 +8562,7 @@ ChromeContentBrowserClient::GetAlternativeErrorPageOve content::BrowserContext* browser_context, int32_t error_code) { #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) if (content::AreIsolatedWebAppsEnabled(browser_context) && url.SchemeIs(webapps::kIsolatedAppScheme)) { content::mojom::AlternativeErrorPageOverrideInfoPtr 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 ebb162a9405c..2b3fa23d23bc 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 2026-08-12 09:02:10 UTC +--- chrome/browser/chrome_content_browser_client.h.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/chrome_content_browser_client.h -@@ -591,7 +591,7 @@ class ChromeContentBrowserClient : public content::Con +@@ -562,7 +562,7 @@ class ChromeContentBrowserClient : public content::Con const GURL& site_url) override; std::unique_ptr CreateTracingDelegate() override; bool IsSystemWideTracingEnabled() 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_component__updater_iwa__key__distribution__component__installer.cc b/www/chromium/files/patch-chrome_browser_component__updater_iwa__key__distribution__component__installer.cc index 637185dc09b7..34d5c36ad2eb 100644 --- a/www/chromium/files/patch-chrome_browser_component__updater_iwa__key__distribution__component__installer.cc +++ b/www/chromium/files/patch-chrome_browser_component__updater_iwa__key__distribution__component__installer.cc @@ -1,20 +1,20 @@ ---- chrome/browser/component_updater/iwa_key_distribution_component_installer.cc.orig 2026-07-01 06:24:19 UTC +--- chrome/browser/component_updater/iwa_key_distribution_component_installer.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/component_updater/iwa_key_distribution_component_installer.cc -@@ -72,7 +72,7 @@ bool IsComponentSupported() { +@@ -32,7 +32,7 @@ bool IsComponentSupported() { // Key Distribution component is necessary for full IWAs support as it // involves the IWA allowlist necessary to install IWAs in prod... return base::FeatureList::IsEnabled(features::kIsolatedWebApps); -#elif BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // ...however, on Mac/Linux, the component logic is not fully supported. A // separate flag enables developing and testing both: IWAs and the component // separately on these systems. -@@ -96,7 +96,7 @@ bool IsOnDemandUpdateSupported() { +@@ -67,7 +67,7 @@ void QueueOnDemandUpdate( namespace component_updater { -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) BASE_FEATURE(kIwaKeyDistributionComponent, base::FEATURE_DISABLED_BY_DEFAULT); #endif // BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) diff --git a/www/chromium/files/patch-chrome_browser_component__updater_iwa__key__distribution__component__installer.h b/www/chromium/files/patch-chrome_browser_component__updater_iwa__key__distribution__component__installer.h index 8280f6cc51d2..b050ed18f39a 100644 --- a/www/chromium/files/patch-chrome_browser_component__updater_iwa__key__distribution__component__installer.h +++ b/www/chromium/files/patch-chrome_browser_component__updater_iwa__key__distribution__component__installer.h @@ -1,11 +1,11 @@ ---- chrome/browser/component_updater/iwa_key_distribution_component_installer.h.orig 2026-07-01 06:24:19 UTC +--- chrome/browser/component_updater/iwa_key_distribution_component_installer.h.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/component_updater/iwa_key_distribution_component_installer.h -@@ -26,7 +26,7 @@ class IwaKeyDistributionInfoProvider; +@@ -11,7 +11,7 @@ namespace component_updater { -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) BASE_DECLARE_FEATURE(kIwaKeyDistributionComponent); #endif // 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 732b9f504c45..27a5a7af1038 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,35 @@ ---- chrome/browser/component_updater/registration.cc.orig 2026-08-12 09:02:10 UTC +--- chrome/browser/component_updater/registration.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/component_updater/registration.cc -@@ -83,7 +83,7 @@ +@@ -88,7 +88,7 @@ #endif // BUILDFLAG(ENABLE_WIDEVINE_CDM_COMPONENT) #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) #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) || BUILDFLAG(IS_ANDROID) -@@ -92,7 +92,7 @@ +@@ -97,7 +97,7 @@ #include "ui/aura/env.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/component_updater/wasm_tts_engine_component_installer.h" #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) -@@ -216,12 +216,12 @@ void RegisterComponentsForUpdate() { +@@ -221,12 +221,12 @@ void RegisterComponentsForUpdate() { #endif // BUILDFLAG(ENABLE_ON_DEVICE_TRANSLATION) #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) RegisterAmountExtractionHeuristicRegexesComponent(cus); #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) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) RegisterWasmTtsEngineComponent(cus, g_browser_process->local_state()); #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 bd132a497d1d..4348073b06d6 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 2026-08-12 09:02:10 UTC +--- chrome/browser/download/chrome_download_manager_delegate.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/download/chrome_download_manager_delegate.cc -@@ -2120,7 +2120,7 @@ void ChromeDownloadManagerDelegate::OnDownloadTargetDe +@@ -2157,7 +2157,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(); } -@@ -2257,7 +2257,7 @@ void ChromeDownloadManagerDelegate::CheckDownloadAllow +@@ -2294,7 +2294,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()) { -@@ -2335,7 +2335,7 @@ void ChromeDownloadManagerDelegate::CheckSavePackageAl +@@ -2373,7 +2373,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__commands.cc b/www/chromium/files/patch-chrome_browser_download_download__commands.cc index 3c7b6be5b4d0..4d2c9f4e93b5 100644 --- a/www/chromium/files/patch-chrome_browser_download_download__commands.cc +++ b/www/chromium/files/patch-chrome_browser_download_download__commands.cc @@ -1,20 +1,20 @@ ---- chrome/browser/download/download_commands.cc.orig 2026-07-01 06:24:19 UTC +--- chrome/browser/download/download_commands.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/download/download_commands.cc @@ -27,7 +27,7 @@ #include "ui/base/clipboard/scoped_clipboard_writer.h" #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ - BUILDFLAG(IS_MAC) + BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) - #include "chrome/browser/ui/browser.h" #include "chrome/browser/ui/scoped_tabbed_browser_displayer.h" #endif -@@ -173,7 +173,7 @@ void DownloadCommands::ExecuteCommand(Command command) + +@@ -172,7 +172,7 @@ void DownloadCommands::ExecuteCommand(Command command) } #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - Browser* DownloadCommands::GetBrowser() const { + BrowserWindowInterface* DownloadCommands::GetBrowser() const { if (!model_) diff --git a/www/chromium/files/patch-chrome_browser_download_download__commands.h b/www/chromium/files/patch-chrome_browser_download_download__commands.h index b0cbfb893cc3..9a182bf4894b 100644 --- a/www/chromium/files/patch-chrome_browser_download_download__commands.h +++ b/www/chromium/files/patch-chrome_browser_download_download__commands.h @@ -1,11 +1,11 @@ ---- chrome/browser/download/download_commands.h.orig 2024-06-17 12:56:06 UTC +--- chrome/browser/download/download_commands.h.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/download/download_commands.h @@ -66,7 +66,7 @@ class DownloadCommands { void ExecuteCommand(Command command); #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ - BUILDFLAG(IS_MAC) + BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) bool IsDownloadPdf() const; bool CanOpenPdfInSystemViewer() const; - Browser* GetBrowser() const; + BrowserWindowInterface* GetBrowser() const; 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 9c57b22a02b6..d9264f45e7f9 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 2026-08-12 09:02:10 UTC +--- chrome/browser/download/download_item_model.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/download/download_item_model.cc -@@ -724,7 +724,7 @@ bool DownloadItemModel::IsCommandChecked( +@@ -725,7 +725,7 @@ bool DownloadItemModel::IsCommandChecked( return download_->GetOpenWhenComplete() || IsExtensionDownload(); 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(); -@@ -772,7 +772,7 @@ void DownloadItemModel::ExecuteCommand(DownloadCommand +@@ -773,7 +773,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); -@@ -1183,7 +1183,7 @@ void DownloadItemModel::DetermineAndSetShouldPreferOpe +@@ -1193,7 +1193,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_enterprise_connectors_common.cc b/www/chromium/files/patch-chrome_browser_enterprise_connectors_common.cc index a1f9ec43c67d..5c34f82f1523 100644 --- a/www/chromium/files/patch-chrome_browser_enterprise_connectors_common.cc +++ b/www/chromium/files/patch-chrome_browser_enterprise_connectors_common.cc @@ -1,20 +1,20 @@ ---- chrome/browser/enterprise/connectors/common.cc.orig 2026-07-01 06:24:19 UTC +--- chrome/browser/enterprise/connectors/common.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/enterprise/connectors/common.cc -@@ -27,7 +27,7 @@ +@@ -29,7 +29,7 @@ #include "components/user_manager/user.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/signin/enterprise_signin_prefs.h" #include "components/prefs/pref_service.h" #endif -@@ -150,7 +150,7 @@ std::string GetProfileEmail(Profile* profile) { +@@ -167,7 +167,7 @@ std::string GetProfileEmail(Profile* profile) { std::string email = GetProfileEmail(IdentityManagerFactory::GetForProfile(profile)); -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (email.empty()) { email = profile->GetPrefs()->GetString( enterprise_signin::prefs::kProfileUserEmail); diff --git a/www/chromium/files/patch-chrome_browser_enterprise_connectors_connectors__service.cc b/www/chromium/files/patch-chrome_browser_enterprise_connectors_connectors__service.cc index f71d09723273..601aed5856e6 100644 --- a/www/chromium/files/patch-chrome_browser_enterprise_connectors_connectors__service.cc +++ b/www/chromium/files/patch-chrome_browser_enterprise_connectors_connectors__service.cc @@ -1,11 +1,11 @@ ---- chrome/browser/enterprise/connectors/connectors_service.cc.orig 2026-07-01 06:24:19 UTC +--- chrome/browser/enterprise/connectors/connectors_service.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/enterprise/connectors/connectors_service.cc -@@ -329,7 +329,7 @@ policy::PolicyScope ConnectorsService::GetPolicyScope( +@@ -323,7 +323,7 @@ policy::PolicyScope ConnectorsService::GetPolicyScope( bool ConnectorsService::ConnectorsEnabled() const { Profile* profile = Profile::FromBrowserContext(context_); -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // On desktop, the guest profile is actually the primary OTR profile of // the "regular" guest profile. The regular guest profile is never used // directly by users. Also, user are not able to create child OTR profiles diff --git a/www/chromium/files/patch-chrome_browser_enterprise_remote__commands_cbcm__remote__commands__factory.cc b/www/chromium/files/patch-chrome_browser_enterprise_remote__commands_cbcm__remote__commands__factory.cc index 92373602e9f8..d7df04e59228 100644 --- a/www/chromium/files/patch-chrome_browser_enterprise_remote__commands_cbcm__remote__commands__factory.cc +++ b/www/chromium/files/patch-chrome_browser_enterprise_remote__commands_cbcm__remote__commands__factory.cc @@ -1,20 +1,20 @@ ---- chrome/browser/enterprise/remote_commands/cbcm_remote_commands_factory.cc.orig 2023-12-10 06:10:27 UTC +--- chrome/browser/enterprise/remote_commands/cbcm_remote_commands_factory.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/enterprise/remote_commands/cbcm_remote_commands_factory.cc -@@ -11,7 +11,7 @@ +@@ -12,7 +12,7 @@ #include "chrome/browser/profiles/profile_manager.h" #include "components/policy/core/common/remote_commands/remote_command_job.h" -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) #include "chrome/browser/enterprise/remote_commands/rotate_attestation_credential_job.h" #include "chrome/browser/policy/chrome_browser_policy_connector.h" #include "components/enterprise/browser/controller/chrome_browser_cloud_management_controller.h" -@@ -30,7 +30,7 @@ CBCMRemoteCommandsFactory::BuildJobForType( +@@ -31,7 +31,7 @@ CBCMRemoteCommandsFactory::BuildJobForType( g_browser_process->profile_manager()); } -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) if (type == enterprise_management:: - RemoteCommand_Type_BROWSER_ROTATE_ATTESTATION_CREDENTIAL) { - return std::make_unique( + RemoteCommand_Type_BROWSER_EXTENSION_UPDATE_CHECK) { + return std::make_unique( diff --git a/www/chromium/files/patch-chrome_browser_enterprise_reporting_cloud__profile__reporting__service.cc b/www/chromium/files/patch-chrome_browser_enterprise_reporting_cloud__profile__reporting__service.cc index a84fe96a8894..6b17928861e6 100644 --- a/www/chromium/files/patch-chrome_browser_enterprise_reporting_cloud__profile__reporting__service.cc +++ b/www/chromium/files/patch-chrome_browser_enterprise_reporting_cloud__profile__reporting__service.cc @@ -1,20 +1,20 @@ ---- chrome/browser/enterprise/reporting/cloud_profile_reporting_service.cc.orig 2026-08-12 09:02:10 UTC +--- chrome/browser/enterprise/reporting/cloud_profile_reporting_service.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/enterprise/reporting/cloud_profile_reporting_service.cc -@@ -41,7 +41,7 @@ +@@ -36,7 +36,7 @@ #include "chrome/browser/enterprise/reporting/reporting_delegate_factory_desktop.h" #endif -#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/reporting/browser_launch/browser_launch_event_controller_factory_desktop.h" #include "chrome/browser/enterprise/reporting/saas_usage/saas_usage_reporting_delegate_factory_desktop.h" #include "components/enterprise/browser/reporting/reporting_features.h" -@@ -124,7 +124,7 @@ void CloudProfileReportingService::CreateReportSchedul +@@ -119,7 +119,7 @@ void CloudProfileReportingService::CreateReportSchedul #endif report_scheduler_ = std::make_unique(std::move(params)); -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (base::FeatureList::IsEnabled(kSaasUsageReporting)) { auto saas_usage_reporting_delegate_factory = SaasUsageReportingDelegateFactoryDesktop::CreateForProfile(profile_); diff --git a/www/chromium/files/patch-chrome_browser_enterprise_signals_signals__aggregator__factory.cc b/www/chromium/files/patch-chrome_browser_enterprise_signals_signals__aggregator__factory.cc index b19e8e65b9d9..e9317fc4fdc3 100644 --- a/www/chromium/files/patch-chrome_browser_enterprise_signals_signals__aggregator__factory.cc +++ b/www/chromium/files/patch-chrome_browser_enterprise_signals_signals__aggregator__factory.cc @@ -1,38 +1,38 @@ ---- chrome/browser/enterprise/signals/signals_aggregator_factory.cc.orig 2026-07-01 06:24:19 UTC +--- chrome/browser/enterprise/signals/signals_aggregator_factory.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/enterprise/signals/signals_aggregator_factory.cc -@@ -54,7 +54,7 @@ +@@ -63,7 +63,7 @@ #include "components/device_signals/core/browser/settings_client.h" #endif // BUILDFLAG(IS_WIN) || 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 "components/device_signals/core/browser/agent_signals_collector.h" #include "components/device_signals/core/browser/crowdstrike_client.h" #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) -@@ -93,7 +93,7 @@ SignalsAggregatorFactory::SignalsAggregatorFactory() - #endif // !BUILDFLAG(IS_ANDROID) +@@ -103,7 +103,7 @@ SignalsAggregatorFactory::SignalsAggregatorFactory() DependsOn(UserPermissionServiceFactory::GetInstance()); DependsOn(enterprise::ProfileIdServiceFactory::GetInstance()); --#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_CHROMEOS) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) DependsOn(ProfileNetworkContextServiceFactory::GetInstance()); #endif } -@@ -121,7 +121,7 @@ SignalsAggregatorFactory::BuildServiceInstanceForBrows +@@ -131,7 +131,7 @@ SignalsAggregatorFactory::BuildServiceInstanceForBrows service_host)); #endif // !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) collectors.push_back(std::make_unique( device_signals::CrowdStrikeClient::Create())); #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) -@@ -132,7 +132,7 @@ SignalsAggregatorFactory::BuildServiceInstanceForBrows - CreateSettingsClient())); +@@ -143,7 +143,7 @@ SignalsAggregatorFactory::BuildServiceInstanceForBrows #endif // BUILDFLAG(IS_WIN) || 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) + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_CHROMEOS) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) if (enterprise_signals::features::IsCertificateCollectionEnabled()) { auto* profile_network_service = ProfileNetworkContextServiceFactory::GetForContext(profile); diff --git a/www/chromium/files/patch-chrome_browser_extensions_BUILD.gn b/www/chromium/files/patch-chrome_browser_extensions_BUILD.gn index 87047238c36c..dac15fa60370 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 2026-08-12 09:02:10 UTC +--- chrome/browser/extensions/BUILD.gn.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/extensions/BUILD.gn -@@ -1526,6 +1526,10 @@ source_set("extensions") { +@@ -1528,6 +1528,10 @@ source_set("extensions") { ] } + 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_api__browser__context__keyed__service__factories.cc b/www/chromium/files/patch-chrome_browser_extensions_api_api__browser__context__keyed__service__factories.cc index a73c9a58745c..3d7a6dc57ae4 100644 --- a/www/chromium/files/patch-chrome_browser_extensions_api_api__browser__context__keyed__service__factories.cc +++ b/www/chromium/files/patch-chrome_browser_extensions_api_api__browser__context__keyed__service__factories.cc @@ -1,20 +1,20 @@ ---- chrome/browser/extensions/api/api_browser_context_keyed_service_factories.cc.orig 2026-08-12 09:02:10 UTC +--- chrome/browser/extensions/api/api_browser_context_keyed_service_factories.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/extensions/api/api_browser_context_keyed_service_factories.cc -@@ -56,7 +56,7 @@ +@@ -55,7 +55,7 @@ #endif // 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) #include "chrome/browser/extensions/api/web_authentication_proxy/web_authentication_proxy_api.h" #include "chrome/browser/extensions/api/web_authentication_proxy/web_authentication_proxy_service.h" #endif -@@ -152,7 +152,7 @@ void EnsureApiBrowserContextKeyedServiceFactoriesBuilt +@@ -150,7 +150,7 @@ void EnsureApiBrowserContextKeyedServiceFactoriesBuilt #endif // BUILDFLAG(ENABLE_EXTENSIONS) // These APIs are intentionally not supported on desktop Android. -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) extensions::WebAuthenticationProxyAPI::GetFactoryInstance(); extensions::WebAuthenticationProxyRegistrarFactory::GetInstance(); extensions::WebAuthenticationProxyServiceFactory::GetInstance(); 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 6e3d4939bb2f..f6ca75d7f9bf 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 2026-08-12 09:02:10 UTC +--- chrome/browser/extensions/api/passwords_private/passwords_private_delegate_impl.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/extensions/api/passwords_private/passwords_private_delegate_impl.cc -@@ -638,7 +638,7 @@ void PasswordsPrivateDelegateImpl::OnFetchingFamilyMem +@@ -641,7 +641,7 @@ void PasswordsPrivateDelegateImpl::OnFetchingFamilyMem } void PasswordsPrivateDelegateImpl::OsReauthTimeoutCall() { -#if !BUILDFLAG(IS_LINUX) +#if !BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (event_router_) { event_router_->OnPasswordManagerAuthTimeout(); } 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 cf202d00b75b..5c7e3b2d26fb 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 2026-08-12 09:02:10 UTC +--- chrome/browser/extensions/api/settings_private/prefs_util.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/extensions/api/settings_private/prefs_util.cc -@@ -234,7 +234,7 @@ const PrefsUtil::TypedPrefMap& PrefsUtil::GetAllowlist +@@ -242,7 +242,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; - (*s_allowlist)[autofill::prefs::kAutofillAiIdentityEntitiesEnabled] = -@@ -280,7 +280,7 @@ const PrefsUtil::TypedPrefMap& PrefsUtil::GetAllowlist + (*s_allowlist)[autofill::prefs::kAutofillAtMemoryTriggerInfo] = +@@ -294,7 +294,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 -@@ -302,7 +302,7 @@ const PrefsUtil::TypedPrefMap& PrefsUtil::GetAllowlist +@@ -316,7 +316,7 @@ const PrefsUtil::TypedPrefMap& PrefsUtil::GetAllowlist (*s_allowlist)[::prefs::kPinnedActions] = settings_api::PrefType::kList; (*s_allowlist)[themes::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 296c3124c60d..f63c5f6ed277 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 2026-08-12 09:02:10 UTC +--- chrome/browser/extensions/api/tabs/tabs_api.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/extensions/api/tabs/tabs_api.cc -@@ -1381,7 +1381,7 @@ ExtensionFunction::ResponseValue WindowsCreateFunction +@@ -1369,7 +1369,7 @@ ExtensionFunction::ResponseValue WindowsCreateFunction // 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(SUPPORTS_OZONE_X11) -+#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD))&& BUILDFLAG(SUPPORTS_OZONE_X11) - if (new_window->GetBrowserForMigrationOnly()->initial_show_state() == ++#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && BUILDFLAG(SUPPORTS_OZONE_X11) + if (BrowserInitState::From(weak_window.get())->initial_show_state() == ui::mojom::WindowShowState::kMinimized) { - new_window->GetWindow()->Minimize(); + weak_window->GetWindow()->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 3d5b76b06f05..0bdd3e23c44d 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 2026-06-04 10:12:25 UTC +--- chrome/browser/extensions/api/webrtc_logging_private/webrtc_logging_private_api.cc.orig 2026-08-31 10:59:09 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) || BUILDFLAG(IS_ANDROID) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) #include "extensions/common/permissions/permissions_data.h" #endif @@ -41,7 +41,7 @@ namespace { bool CanEnableAudioDebugRecordingsFromExtension( const extensions::Extension* extension) { bool enabled_by_permissions = false; -#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( -@@ -563,7 +563,7 @@ void WebrtcLoggingPrivateStartEventLoggingFunction::Fi +@@ -564,7 +564,7 @@ void WebrtcLoggingPrivateStartEventLoggingFunction::Fi ExtensionFunction::ResponseAction WebrtcLoggingPrivateGetLogsDirectoryFunction::Run() { -#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_external__provider__impl.cc b/www/chromium/files/patch-chrome_browser_extensions_external__provider__impl.cc index ca0a967344a5..f2ae8bd14424 100644 --- a/www/chromium/files/patch-chrome_browser_extensions_external__provider__impl.cc +++ b/www/chromium/files/patch-chrome_browser_extensions_external__provider__impl.cc @@ -1,20 +1,20 @@ ---- chrome/browser/extensions/external_provider_impl.cc.orig 2026-03-13 06:02:14 UTC +--- chrome/browser/extensions/external_provider_impl.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/extensions/external_provider_impl.cc -@@ -837,7 +837,7 @@ void ExternalProviderImpl::CreateExternalProviders( +@@ -853,7 +853,7 @@ void ExternalProviderImpl::CreateExternalProviders( #endif // BUILDFLAG(IS_CHROMEOS) if (!profile->GetPrefs()->GetBoolean(pref_names::kBlockExternalExtensions)) { -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) provider_list->push_back(std::make_unique( service, base::MakeRefCounted( -@@ -865,7 +865,7 @@ void ExternalProviderImpl::CreateExternalProviders( +@@ -881,7 +881,7 @@ void ExternalProviderImpl::CreateExternalProviders( bundled_extension_creation_flags)); // Define a per-user source of external extensions. -#if BUILDFLAG(IS_MAC) || ((BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)) && \ +#if BUILDFLAG(IS_MAC) || ((BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD)) && \ BUILDFLAG(CHROMIUM_BRANDING)) provider_list->push_back(std::make_unique( service, diff --git a/www/chromium/files/patch-chrome_browser_file__system__access_chrome__file__system__access__permission__context.cc b/www/chromium/files/patch-chrome_browser_file__system__access_chrome__file__system__access__permission__context.cc index 5eb4495bdc93..63393acbfadc 100644 --- a/www/chromium/files/patch-chrome_browser_file__system__access_chrome__file__system__access__permission__context.cc +++ b/www/chromium/files/patch-chrome_browser_file__system__access_chrome__file__system__access__permission__context.cc @@ -1,11 +1,11 @@ ---- chrome/browser/file_system_access/chrome_file_system_access_permission_context.cc.orig 2026-08-20 14:42:05 UTC +--- chrome/browser/file_system_access/chrome_file_system_access_permission_context.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/file_system_access/chrome_file_system_access_permission_context.cc -@@ -416,7 +416,7 @@ GenerateBlockPaths(bool should_normalize_file_path) { +@@ -457,7 +457,7 @@ GenerateBlockPaths(bool should_normalize_file_path) { FILE_PATH_LITERAL("Library/Mobile Documents/com~apple~CloudDocs"), BlockType::kDontBlockChildren), #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) // On Linux also block access to devices via /dev. BlockPath::CreateAbsolute(FILE_PATH_LITERAL("/dev"), BlockType::kBlockAllChildren), diff --git a/www/chromium/files/patch-chrome_browser_flag__descriptions.h b/www/chromium/files/patch-chrome_browser_flag__descriptions.h index f708de446265..8822a6614cb2 100644 --- a/www/chromium/files/patch-chrome_browser_flag__descriptions.h +++ b/www/chromium/files/patch-chrome_browser_flag__descriptions.h @@ -1,21 +1,21 @@ ---- chrome/browser/flag_descriptions.h.orig 2026-08-12 09:02:10 UTC +--- chrome/browser/flag_descriptions.h.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/flag_descriptions.h -@@ -8551,6 +8551,18 @@ inline constexpr char kAntivirusTelemetryForDownloadsD +@@ -8813,6 +8813,18 @@ inline constexpr char kAntivirusTelemetryForDownloadsD "Enables antivirus product info to be included in Safe Browsing download " "pings."; +#if BUILDFLAG(IS_BSD) +inline constexpr char kAudioBackendName[] = + "Audio Backend"; +inline constexpr 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 + // ============================================================================ // Don't just add flags to the end, put them in the alphabetical order. // ============================================================================ diff --git a/www/chromium/files/patch-chrome_browser_glic_glic__settings__util__desktop.cc b/www/chromium/files/patch-chrome_browser_glic_glic__settings__util__desktop.cc index 27a64af7b693..dd72aab1f09f 100644 --- a/www/chromium/files/patch-chrome_browser_glic_glic__settings__util__desktop.cc +++ b/www/chromium/files/patch-chrome_browser_glic_glic__settings__util__desktop.cc @@ -1,11 +1,11 @@ ---- chrome/browser/glic/glic_settings_util_desktop.cc.orig 2026-07-01 06:24:19 UTC +--- chrome/browser/glic/glic_settings_util_desktop.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/glic/glic_settings_util_desktop.cc -@@ -108,7 +108,7 @@ std::string_view GetPlatformHelpSuffix() { +@@ -113,7 +113,7 @@ std::string_view GetPlatformHelpSuffix() { return "_mac"; #elif BUILDFLAG(IS_CHROMEOS) return "_chromeos"; -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) return "_linux"; #else return ""; diff --git a/www/chromium/files/patch-chrome_browser_glic_host_guest__util.cc b/www/chromium/files/patch-chrome_browser_glic_host_guest__util.cc index 182a56746860..b7027a87acc3 100644 --- a/www/chromium/files/patch-chrome_browser_glic_host_guest__util.cc +++ b/www/chromium/files/patch-chrome_browser_glic_host_guest__util.cc @@ -1,11 +1,11 @@ ---- chrome/browser/glic/host/guest_util.cc.orig 2026-08-12 09:02:10 UTC +--- chrome/browser/glic/host/guest_util.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/glic/host/guest_util.cc -@@ -391,7 +391,7 @@ mojom::Platform GetGlicPlatform() { +@@ -453,7 +453,7 @@ mojom::Platform GetGlicPlatform() { return mojom::Platform::kMacOS; #elif BUILDFLAG(IS_WIN) return mojom::Platform::kWindows; -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) return mojom::Platform::kLinux; #elif BUILDFLAG(IS_CHROMEOS) return mojom::Platform::kChromeOS; diff --git a/www/chromium/files/patch-chrome_browser_glic_service_glic__instance__impl.cc b/www/chromium/files/patch-chrome_browser_glic_service_glic__instance__impl.cc index 23ab13002743..3916c692e3eb 100644 --- a/www/chromium/files/patch-chrome_browser_glic_service_glic__instance__impl.cc +++ b/www/chromium/files/patch-chrome_browser_glic_service_glic__instance__impl.cc @@ -1,20 +1,20 @@ ---- chrome/browser/glic/service/glic_instance_impl.cc.orig 2026-08-12 09:02:10 UTC +--- chrome/browser/glic/service/glic_instance_impl.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/glic/service/glic_instance_impl.cc -@@ -72,7 +72,7 @@ - #include "third_party/abseil-cpp/absl/functional/overload.h" +@@ -80,7 +80,7 @@ #include "ui/base/l10n/l10n_util.h" --#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_CHROMEOS) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "chrome/browser/enterprise/reporting/saas_usage/saas_usage_reporting_controller_factory.h" #endif -@@ -139,7 +139,7 @@ EmbedderKey CreateSidePanelEmbedderKey(tabs::TabInterf - +@@ -158,7 +158,7 @@ constexpr auto kImplicitInvocationSources = enterprise_reporting::SaasUsageReportingController* GetSaasUsageReportingController(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) + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_CHROMEOS) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) return enterprise_reporting::SaasUsageReportingControllerFactory:: GetForProfile(profile); #else diff --git a/www/chromium/files/patch-chrome_browser_global__features.cc b/www/chromium/files/patch-chrome_browser_global__features.cc index 8a06981192c5..7b53928ea754 100644 --- a/www/chromium/files/patch-chrome_browser_global__features.cc +++ b/www/chromium/files/patch-chrome_browser_global__features.cc @@ -1,38 +1,38 @@ ---- chrome/browser/global_features.cc.orig 2026-08-12 09:02:10 UTC +--- chrome/browser/global_features.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/global_features.cc -@@ -40,7 +40,7 @@ +@@ -44,7 +44,7 @@ #include "chrome/browser/ui/tabs/tab_drag_api/desktop_tab_drag_impl/tab_drag_session_desktop_injector.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) // 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/default_browser/default_browser_manager.h" -@@ -184,7 +184,7 @@ void GlobalFeatures::PostBrowserProcessInitCore() { +@@ -195,7 +195,7 @@ void GlobalFeatures::PostBrowserProcessInitCore() { } #endif 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) // TODO(crbug.com/463742800): Migrate WhatsNewRegistry (and other non-core // features) to Init(). whats_new_registry_ = CreateWhatsNewRegistry(); -@@ -259,7 +259,7 @@ void GlobalFeatures::PostMainMessageLoopRun() { - application_advanced_protection_status_detector_.reset(); - tab_drag_session_manager_.reset(); +@@ -281,7 +281,7 @@ void GlobalFeatures::PostMainMessageLoopRun() { + + glass_frame_service_.reset(); -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) DefaultBrowserPromptManager::GetInstance()->CloseAllPrompts( DefaultBrowserPromptManager::CloseReason::kDismiss); #endif -@@ -278,7 +278,7 @@ GlobalFeatures::CreateSystemPermissionsPlatformHandle( +@@ -300,7 +300,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_global__features.h b/www/chromium/files/patch-chrome_browser_global__features.h index efaf02abe9ed..2fdf95cd19e9 100644 --- a/www/chromium/files/patch-chrome_browser_global__features.h +++ b/www/chromium/files/patch-chrome_browser_global__features.h @@ -1,38 +1,38 @@ ---- chrome/browser/global_features.h.orig 2026-08-12 09:02:10 UTC +--- chrome/browser/global_features.h.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/global_features.h @@ -25,7 +25,7 @@ class GlobalBrowserCollection; namespace system_permission_settings { class PlatformHandle; } // namespace system_permission_settings -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) namespace whats_new { class WhatsNewRegistry; } // namespace whats_new -@@ -143,7 +143,7 @@ class GlobalFeatures { +@@ -150,7 +150,7 @@ class GlobalFeatures { system_permissions_platform_handle() { return system_permissions_platform_handle_.get(); } -#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::WhatsNewRegistry* whats_new_registry() { return whats_new_registry_.get(); } -@@ -219,7 +219,7 @@ class GlobalFeatures { +@@ -232,7 +232,7 @@ class GlobalFeatures { virtual std::unique_ptr CreateSystemPermissionsPlatformHandle(); -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) virtual std::unique_ptr CreateWhatsNewRegistry(); #endif virtual std::unique_ptr -@@ -235,7 +235,7 @@ class GlobalFeatures { +@@ -248,7 +248,7 @@ class GlobalFeatures { std::unique_ptr system_permissions_platform_handle_; -#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 whats_new_registry_; std::unique_ptr diff --git a/www/chromium/files/patch-chrome_browser_metrics_BUILD.gn b/www/chromium/files/patch-chrome_browser_metrics_BUILD.gn index 8035596090a1..09015c4a4ad4 100644 --- a/www/chromium/files/patch-chrome_browser_metrics_BUILD.gn +++ b/www/chromium/files/patch-chrome_browser_metrics_BUILD.gn @@ -1,38 +1,38 @@ ---- chrome/browser/metrics/BUILD.gn.orig 2026-08-12 09:02:10 UTC +--- chrome/browser/metrics/BUILD.gn.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/metrics/BUILD.gn @@ -210,7 +210,7 @@ source_set("metrics") { ] } - if (is_linux || is_chromeos) { + if (!is_bsd && (is_linux || is_chromeos)) { public += [ "bluetooth_metrics_provider.h" ] } @@ -221,7 +221,7 @@ source_set("metrics") { ] } - if (is_win || is_android || is_linux) { + if (!is_bsd && (is_win || is_android || is_linux)) { public += [ "chrome_metrics_service_crash_reporter.h" ] } -@@ -476,7 +476,7 @@ source_set("impl") { +@@ -477,7 +477,7 @@ source_set("impl") { sources += [ "structured/chrome_structured_metrics_delegate.cc" ] } - if (is_linux || is_chromeos) { + if (!is_bsd && (is_linux || is_chromeos)) { sources += [ "bluetooth_metrics_provider.cc" ] } -@@ -491,7 +491,7 @@ source_set("impl") { +@@ -492,7 +492,7 @@ source_set("impl") { deps += [ "//chrome/browser/updates:update_metrics" ] } - if (is_win || is_android || is_linux) { + if (!is_bsd && (is_win || is_android || is_linux)) { sources += [ "chrome_metrics_service_crash_reporter.cc" ] } 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 869410f8343d..f4c86e85e393 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 2026-07-01 06:24:19 UTC +--- chrome/browser/metrics/chrome_browser_main_extra_parts_metrics.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/metrics/chrome_browser_main_extra_parts_metrics.cc @@ -84,7 +84,7 @@ #endif #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 @@ #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) @@ -121,7 +121,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 @@ -939,7 +939,7 @@ void RecordStartupMetrics() { // Record whether Chrome is the default browser or not. // Disabled on Linux due to hanging browser tests, see crbug.com/40770414. -#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, -@@ -1194,11 +1194,11 @@ void ChromeBrowserMainExtraPartsMetrics::PostBrowserSt +@@ -1190,11 +1190,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) power_metrics::SystemPowerMonitor::Initialize(); #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 634e5d26850c..e7a9f0997919 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,83 +1,83 @@ ---- chrome/browser/metrics/chrome_metrics_service_client.cc.orig 2026-08-12 09:02:10 UTC +--- chrome/browser/metrics/chrome_metrics_service_client.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/metrics/chrome_metrics_service_client.cc -@@ -200,7 +200,7 @@ +@@ -204,7 +204,7 @@ #include "chrome/browser/metrics/power/power_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 -@@ -212,7 +212,7 @@ +@@ -216,7 +216,7 @@ #include "chrome/browser/metrics/bluetooth_metrics_provider.h" #endif // 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) #include "chrome/browser/updates/update_metrics_provider.h" #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) -@@ -541,7 +541,7 @@ void ChromeMetricsServiceClient::RegisterPrefs(PrefReg +@@ -567,7 +567,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) -@@ -738,7 +738,7 @@ void ChromeMetricsServiceClient::Initialize() { +@@ -764,7 +764,7 @@ void ChromeMetricsServiceClient::Initialize() { 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 -@@ -798,7 +798,7 @@ void ChromeMetricsServiceClient::RegisterMetricsServic +@@ -824,7 +824,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 -@@ -898,7 +898,7 @@ void ChromeMetricsServiceClient::RegisterMetricsServic +@@ -924,7 +924,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) -@@ -1008,7 +1008,7 @@ void ChromeMetricsServiceClient::RegisterMetricsServic +@@ -1034,7 +1034,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()); metrics_service_->RegisterMetricsProvider( -@@ -1214,7 +1214,7 @@ bool ChromeMetricsServiceClient::RegisterForProfileEve +@@ -1245,7 +1245,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( -@@ -1564,7 +1564,7 @@ void ChromeMetricsServiceClient::CreateStructuredMetri +@@ -1595,7 +1595,7 @@ void ChromeMetricsServiceClient::CreateStructuredMetri recorder = std::make_unique( 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 567ccb5e0a86..cb92b511b9d0 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 2026-07-01 06:24:19 UTC +--- chrome/browser/net/profile_network_context_service.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/net/profile_network_context_service.cc @@ -145,7 +145,7 @@ #endif #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_ANDROID) + BUILDFLAG(IS_ANDROID) || 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" @@ -321,7 +321,7 @@ void UpdateCookieSettings(Profile* profile, ContentSet } #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_ANDROID) + BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) std::unique_ptr GetWrappedCertStore( Profile* profile, std::unique_ptr platform_store) { -@@ -1290,7 +1290,7 @@ ProfileNetworkContextService::CreateClientCertStore() +@@ -1292,7 +1292,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_system__network__context__manager.cc b/www/chromium/files/patch-chrome_browser_net_system__network__context__manager.cc index cb5c4dd0e1aa..6c075de97b92 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 2026-08-12 09:02:10 UTC +--- chrome/browser/net/system_network_context_manager.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/net/system_network_context_manager.cc @@ -139,7 +139,7 @@ enum class NetworkSandboxState { // The global instance of the SystemNetworkContextManager. SystemNetworkContextManager* g_system_network_context_manager = nullptr; -#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; @@ -147,7 +147,7 @@ bool g_network_service_will_allow_gssapi_library_load const char* kGssapiDesiredPref = #if BUILDFLAG(IS_CHROMEOS) ash::prefs::kKerberosEnabled; -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) prefs::kReceivedHttpAuthNegotiateHeader; #endif #endif // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) @@ -193,7 +193,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) @@ -208,7 +208,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) @@ -218,7 +218,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 @@ -266,11 +266,11 @@ NetworkSandboxState IsNetworkSandboxEnabledInternal() // it is not always initialized. CHECK_IS_TEST(); } -#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 || @@ -286,7 +286,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) -@@ -591,7 +591,7 @@ void SystemNetworkContextManager::DeleteInstance() { +@@ -589,7 +589,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) {} -@@ -650,7 +650,7 @@ SystemNetworkContextManager::SystemNetworkContextManag +@@ -648,7 +648,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) -@@ -664,7 +664,7 @@ SystemNetworkContextManager::SystemNetworkContextManag +@@ -662,7 +662,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) -@@ -736,7 +736,7 @@ void SystemNetworkContextManager::RegisterPrefs(PrefRe +@@ -734,7 +734,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) -@@ -766,11 +766,11 @@ void SystemNetworkContextManager::RegisterPrefs(PrefRe +@@ -764,11 +764,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) -@@ -827,7 +827,7 @@ void SystemNetworkContextManager::OnNetworkServiceCrea +@@ -825,7 +825,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) -@@ -1078,7 +1078,7 @@ bool SystemNetworkContextManager::IsNetworkSandboxEnab +@@ -1076,7 +1076,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_page__load__metrics_page__load__metrics__initialize.cc b/www/chromium/files/patch-chrome_browser_page__load__metrics_page__load__metrics__initialize.cc index 80f86f67afd8..2d79f1ba52ff 100644 --- a/www/chromium/files/patch-chrome_browser_page__load__metrics_page__load__metrics__initialize.cc +++ b/www/chromium/files/patch-chrome_browser_page__load__metrics_page__load__metrics__initialize.cc @@ -1,20 +1,20 @@ ---- chrome/browser/page_load_metrics/page_load_metrics_initialize.cc.orig 2026-07-01 06:24:19 UTC +--- chrome/browser/page_load_metrics/page_load_metrics_initialize.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/page_load_metrics/page_load_metrics_initialize.cc -@@ -69,7 +69,7 @@ +@@ -81,7 +81,7 @@ #include "url/gurl.h" #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "components/webapps/isolated_web_apps/scheme.h" #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || // BUILDFLAG(IS_CHROMEOS) -@@ -353,7 +353,7 @@ bool PageLoadMetricsEmbedder::IsInternalWebUI(const GU +@@ -433,7 +433,7 @@ bool PageLoadMetricsEmbedder::IsInternalWebUI(const GU bool PageLoadMetricsEmbedder::ShouldObserveScheme(std::string_view scheme) { #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) return scheme == webapps::kIsolatedAppScheme; #else // !(BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || // BUILDFLAG(IS_CHROMEOS)) 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 c520de12a34c..b848bb3fb085 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 2026-08-12 09:02:10 UTC +--- chrome/browser/password_manager/chrome_password_manager_client.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/password_manager/chrome_password_manager_client.cc -@@ -719,7 +719,7 @@ void ChromePasswordManagerClient::ContinueShowKeyboard +@@ -726,7 +726,7 @@ void ChromePasswordManagerClient::ContinueShowKeyboard 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; } -@@ -1002,7 +1002,7 @@ void ChromePasswordManagerClient::NotifyUserCredential +@@ -1009,7 +1009,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) { -@@ -2087,7 +2087,7 @@ void ChromePasswordManagerClient::HideFillingUI() { +@@ -2158,7 +2158,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; } -@@ -2126,7 +2126,7 @@ bool ChromePasswordManagerClient::IsPasswordManagement +@@ -2197,7 +2197,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_picture__in__picture_picture__in__picture__window__manager.cc b/www/chromium/files/patch-chrome_browser_picture__in__picture_picture__in__picture__window__manager.cc index c78368a4f11e..8994846bfe59 100644 --- a/www/chromium/files/patch-chrome_browser_picture__in__picture_picture__in__picture__window__manager.cc +++ b/www/chromium/files/patch-chrome_browser_picture__in__picture_picture__in__picture__window__manager.cc @@ -1,20 +1,20 @@ ---- chrome/browser/picture_in_picture/picture_in_picture_window_manager.cc.orig 2026-08-12 09:02:10 UTC +--- chrome/browser/picture_in_picture/picture_in_picture_window_manager.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/picture_in_picture/picture_in_picture_window_manager.cc @@ -23,7 +23,7 @@ #include "ui/gfx/geometry/size.h" #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "components/webapps/isolated_web_apps/scheme.h" #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || // BUILDFLAG(IS_CHROMEOS) -@@ -590,7 +590,7 @@ void PictureInPictureWindowManager::SetWindowParams(Na +@@ -597,7 +597,7 @@ void PictureInPictureWindowManager::SetWindowParams(Na bool PictureInPictureWindowManager::IsSupportedForDocumentPictureInPicture( const GURL& url) { #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Only allow document PiP to be opened if the URL is of a type that we know // how to display in the title bar. Otherwise, the title bar might be // misleading in certain scenarios. See https://crbug.com/40066780 . 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 95f089bbd9d8..d7f5a6bbaf86 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,251 +1,274 @@ ---- chrome/browser/policy/configuration_policy_handler_list_factory.cc.orig 2026-08-12 09:02:10 UTC +--- chrome/browser/policy/configuration_policy_handler_list_factory.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/policy/configuration_policy_handler_list_factory.cc -@@ -265,7 +265,7 @@ +@@ -271,7 +271,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" -@@ -275,7 +275,7 @@ +@@ -281,7 +281,7 @@ #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) #include "components/enterprise/network_header_injection/core/http_header_injection_policy_handler.h" #endif -@@ -664,7 +664,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = +@@ -682,7 +682,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 }, -@@ -1036,7 +1036,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = +@@ -1045,7 +1045,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 }, -@@ -1048,7 +1048,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = +@@ -1057,7 +1057,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 }, -@@ -1935,7 +1935,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = +@@ -1944,7 +1944,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 }, -@@ -2000,7 +2000,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = +@@ -2009,7 +2009,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = base::Value::Type::BOOLEAN }, #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) -#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 }, -@@ -2020,12 +2020,12 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = +@@ -2029,12 +2029,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 }, -@@ -2033,7 +2033,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = +@@ -2042,7 +2042,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = prefs::kProfileSeparationDomainExceptionList, base::Value::Type::LIST }, #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 }, -@@ -2045,7 +2045,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = +@@ -2054,7 +2054,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::kAutomatedPasswordChangeSettings, optimization_guide::prefs::kAutomatedPasswordChangeEnterprisePolicyAllowed, base::Value::Type::INTEGER }, -@@ -2149,7 +2149,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = +@@ -2158,7 +2158,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 }, -@@ -2257,7 +2257,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = +@@ -2266,7 +2266,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 }, -@@ -2334,7 +2334,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = +@@ -2346,7 +2346,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 }, -@@ -2374,7 +2374,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = +@@ -2386,7 +2386,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = prefs::kAndroidEntraSSOEnabled, base::Value::Type::INTEGER }, #endif -#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 }, -@@ -2417,7 +2417,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = +@@ -2429,7 +2429,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}, -@@ -2445,7 +2445,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = +@@ -2457,7 +2457,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = optimization_guide::prefs::kFindsEnterprisePolicyAllowed, base::Value::Type::INTEGER}, #endif -#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 }, -@@ -2535,7 +2535,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = +@@ -2547,7 +2547,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = policy_prefs::kBuiltInAIAPIsEnabled, base::Value::Type::BOOLEAN }, #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) { key::kNTPFooterManagementNoticeEnabled, prefs::kNTPFooterManagementNoticeEnabled, base::Value::Type::BOOLEAN }, -@@ -2546,7 +2546,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = +@@ -2558,7 +2558,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = { key::kThirdPartyAiChatSettings, omnibox::kThirdPartyAiChatSettings, base::Value::Type::INTEGER }, -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) { key::kEnableProxyOverrideRulesForAllUsers, proxy_config::prefs::kEnableProxyOverrideRulesForAllUsers, base::Value::Type::INTEGER }, -@@ -2737,7 +2737,7 @@ std::unique_ptr BuildH +@@ -2665,7 +2665,7 @@ std::unique_ptr BuildH + std::make_unique< + LocalNetworkAccessIpAddressSpaceOverridesPolicyHandler>()); + handlers->AddHandler(std::make_unique()); +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + handlers->AddHandler( + std::make_unique( + chrome_schema)); +@@ -2766,7 +2766,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, -@@ -2891,7 +2891,7 @@ std::unique_ptr BuildH +@@ -2929,7 +2929,7 @@ std::unique_ptr BuildH SimpleSchemaValidatingPolicyHandler::RECOMMENDED_ALLOWED, SimpleSchemaValidatingPolicyHandler::MANDATORY_PROHIBITED)); #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) handlers->AddHandler( std::make_unique< enterprise_custom_headers::HttpHeaderInjectionPolicyHandler>( -@@ -3016,7 +3016,7 @@ std::unique_ptr BuildH +@@ -3043,7 +3043,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()); -@@ -3117,7 +3117,7 @@ std::unique_ptr BuildH +@@ -3107,13 +3107,13 @@ std::unique_ptr BuildH + std::make_unique(chrome_schema)); + #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) + #if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \ +- BUILDFLAG(IS_WIN) ++ BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) + handlers->AddHandler(std::make_unique( + std::make_unique( + key::kSaasUsageReportingDomainUrlsForProfiles, + enterprise_reporting::kSaasUsageDomainUrlsForProfile))); + #endif +-#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( + key::kSaasUsageReportingDomainUrlsForBrowsers, + enterprise_reporting::kSaasUsageDomainUrlsForBrowser)); +@@ -3147,13 +3147,13 @@ 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)); -@@ -3134,7 +3134,7 @@ std::unique_ptr BuildH - base::Value::Type::BOOLEAN))); - #endif // BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || - // BUILDFLAG(IS_LINUX) + #endif + -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) handlers->AddHandler(std::make_unique( std::make_unique( key::kSecuritySignalsClientCertificatesSelectors, -@@ -3505,7 +3505,7 @@ std::unique_ptr BuildH +@@ -3537,7 +3537,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( -@@ -3513,7 +3513,7 @@ std::unique_ptr BuildH +@@ -3545,7 +3545,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)); -@@ -3566,7 +3566,7 @@ std::unique_ptr BuildH +@@ -3598,7 +3598,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::kHelpMeWriteSettings, optimization_guide::prefs::kComposeEnterprisePolicyAllowed); -@@ -3703,7 +3703,7 @@ std::unique_ptr BuildH +@@ -3743,7 +3743,7 @@ std::unique_ptr BuildH glic::prefs::kGlicActuationOnWebBlockedForURLs)); #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::kGeminiEnterpriseSettings, glic::prefs::kGlicGeminiEnterpriseSettings, chrome_schema, SCHEMA_ALLOW_UNKNOWN, 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 e05907ef0676..9af0d8e60fbf 100644 --- a/www/chromium/files/patch-chrome_browser_prefs_browser__prefs.cc +++ b/www/chromium/files/patch-chrome_browser_prefs_browser__prefs.cc @@ -1,68 +1,122 @@ ---- chrome/browser/prefs/browser_prefs.cc.orig 2026-08-12 09:02:10 UTC +--- chrome/browser/prefs/browser_prefs.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/prefs/browser_prefs.cc -@@ -341,7 +341,7 @@ +@@ -342,7 +342,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 -@@ -528,11 +528,11 @@ +@@ -531,11 +531,11 @@ #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_ANDROID) #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/40147906 #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 -@@ -560,7 +560,7 @@ +@@ -563,7 +563,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 -@@ -1514,7 +1514,7 @@ void RegisterLocalState(PrefRegistrySimple* registry) +@@ -994,7 +994,7 @@ inline constexpr char kPendingMetricsReportingLevel[] + // Deprecated 07/2026. + inline constexpr char kObsoleteMetricsReportingLevel[] = + "user_experience_metrics.reporting_level"; +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) + inline constexpr char kProxyOverrideRulesAffiliation[] = + "proxy_override_rules_affiliation"; + #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +@@ -1117,7 +1117,7 @@ void RegisterLocalStatePrefsForMigration(PrefRegistryS + + // Deprecated 07/2026. + registry->RegisterIntegerPref(kObsoleteMetricsReportingLevel, 0); +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) + registry->RegisterBooleanPref(kProxyOverrideRulesAffiliation, true); + #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) + registry->RegisterBooleanPref(kMetricsReportingMigrationDone, false); +@@ -1374,7 +1374,7 @@ void RegisterProfilePrefsForMigration( + registry->RegisterIntegerPref(kMetricsUserReportingLevel, 0); + #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) + // Deprecated 07/2026. + registry->RegisterBooleanPref(kProxyOverrideRulesAffiliation, true); + #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +@@ -1539,7 +1539,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 -@@ -1678,7 +1678,7 @@ void RegisterLocalState(PrefRegistrySimple* registry) +@@ -1706,7 +1706,7 @@ void RegisterLocalState(PrefRegistrySimple* registry) #endif // BUILDFLAG(ENABLE_PDF_SAVE_TO_DRIVE) #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 -@@ -2100,13 +2100,13 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySync +@@ -1833,7 +1833,7 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySync + registry->RegisterIntegerPref(prefs::kVoiceTypingSettings, 0); + registry->RegisterBooleanPref(prefs::kPrefDictationOnboardingCompleted, + false); +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + registry->RegisterStringPref(prefs::kVoiceTypingHotkey, "Ctrl+Space"); + #else + registry->RegisterStringPref(prefs::kVoiceTypingHotkey, "Alt+Space"); +@@ -2138,13 +2138,13 @@ 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); ntp_tiles::EnterpriseShortcutsManagerImpl::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 +@@ -2428,7 +2428,7 @@ void MigrateObsoleteLocalStatePrefs(PrefService* local + + // Added 07/2026. + local_state->ClearPref(kObsoleteMetricsReportingLevel); +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) + // Added 07/2026. + local_state->ClearPref(kProxyOverrideRulesAffiliation); + #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +@@ -2707,7 +2707,7 @@ void MigrateObsoleteProfilePrefs(PrefService* profile_ + syncer::ClearAccountKeyedPrefValue( + profile_prefs, autofill::prefs::kAutofillAiOptInStatus, {}); + +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) + // Added 07/2026. + profile_prefs->ClearPref(kProxyOverrideRulesAffiliation); + #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) diff --git a/www/chromium/files/patch-chrome_browser_printing_printer__query.cc b/www/chromium/files/patch-chrome_browser_printing_printer__query.cc index 61957e0d4456..03cc524e5041 100644 --- a/www/chromium/files/patch-chrome_browser_printing_printer__query.cc +++ b/www/chromium/files/patch-chrome_browser_printing_printer__query.cc @@ -1,11 +1,11 @@ ---- chrome/browser/printing/printer_query.cc.orig 2026-03-13 06:02:14 UTC +--- chrome/browser/printing/printer_query.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/printing/printer_query.cc -@@ -342,7 +342,7 @@ void PrinterQuery::UpdatePrintSettings(base::DictValue +@@ -346,7 +346,7 @@ void PrinterQuery::UpdatePrintSettings(base::DictValue crash_key = std::make_unique( printer_name, print_backend->GetPrinterDriverInfo(printer_name)); -#if BUILDFLAG(IS_LINUX) && BUILDFLAG(USE_CUPS) +#if (BUILDFLAG(IS_BSD) || BUILDFLAG(IS_LINUX)) && BUILDFLAG(USE_CUPS) PrinterBasicInfo basic_info; if (print_backend->GetPrinterBasicInfo(printer_name, &basic_info) == mojom::ResultCode::kSuccess) { diff --git a/www/chromium/files/patch-chrome_browser_process__singleton__posix.cc b/www/chromium/files/patch-chrome_browser_process__singleton__posix.cc index 8f3d7352a490..8bd5147ebdb6 100644 --- a/www/chromium/files/patch-chrome_browser_process__singleton__posix.cc +++ b/www/chromium/files/patch-chrome_browser_process__singleton__posix.cc @@ -1,20 +1,20 @@ ---- chrome/browser/process_singleton_posix.cc.orig 2026-06-04 10:12:25 UTC +--- chrome/browser/process_singleton_posix.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/process_singleton_posix.cc @@ -102,7 +102,7 @@ #include "ui/base/l10n/l10n_util.h" #include "ui/base/resource/scoped_startup_resource_bundle.h" -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - #include "chrome/browser/ui/process_singleton_dialog_linux.h" + #include "chrome/browser/ui/dialogs/process_singleton_dialog_linux.h" #endif @@ -367,7 +367,7 @@ bool DisplayProfileInUseError(const base::FilePath& lo if (g_disable_prompt) return g_user_opted_unlock_in_use_profile; -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) std::u16string relaunch_button_text = l10n_util::GetStringUTF16(IDS_PROFILE_IN_USE_LINUX_RELAUNCH); return ShowProcessSingletonDialog(error, relaunch_button_text); 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 e3d842a81388..839391314ba2 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,214 +1,220 @@ ---- chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc.orig 2026-08-12 09:02:10 UTC +--- chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc -@@ -322,7 +322,7 @@ +@@ -324,7 +324,7 @@ #include "ui/webui/buildflags.h" #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - #include "chrome/browser/autofill/at_memory_promo_tracker_factory.h" #include "components/enterprise/network_header_injection/core/features.h" // nogncheck #endif -@@ -437,7 +437,7 @@ + #if BUILDFLAG(IS_WIN) +@@ -440,7 +440,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" - #include "chrome/browser/enterprise/signals/signals_aggregator_factory.h" #endif -@@ -485,7 +485,7 @@ + +@@ -490,7 +490,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/network_header_injection/http_header_injection_service_factory.h" // nogncheck -@@ -500,11 +500,11 @@ +@@ -506,16 +506,16 @@ #include "chrome/browser/webauthn/passkey_unlock_manager_factory.h" #include "device/fido/public/features.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 + #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || \ +- BUILDFLAG(IS_CHROMEOS) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + #include "chrome/browser/enterprise/reporting/saas_usage/saas_usage_reporting_controller_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/reporting/saas_usage/saas_usage_reporting_controller_factory.h" #include "chrome/browser/enterprise/signin/enterprise_signin_service_factory.h" -@@ -592,7 +592,7 @@ + #include "chrome/browser/enterprise/signin/oidc_authentication_signin_interceptor_factory.h" +@@ -603,7 +603,7 @@ #include "chrome/browser/sessions/session_service_factory.h" #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) #include "chrome/browser/gapis/gapis_service_factory.h" #include "components/gapis/features.h" #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) -@@ -739,7 +739,7 @@ void ChromeBrowserMainExtraPartsProfiles:: +@@ -750,7 +750,7 @@ void ChromeBrowserMainExtraPartsProfiles:: #if !BUILDFLAG(IS_ANDROID) AutoPictureInPictureHatsServiceFactory::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) AccountsPolicyManagerFactory::GetInstance(); search_integrity::SearchIntegrityFactory::GetInstance(); #endif -@@ -839,7 +839,7 @@ void ChromeBrowserMainExtraPartsProfiles:: - DiceBoundSessionCookieServiceFactory::GetInstance(); +@@ -851,7 +851,7 @@ void ChromeBrowserMainExtraPartsProfiles:: #endif #endif + browser_actuator::BrowserActuatorServiceFactory::GetInstance(); -#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(); -@@ -903,7 +903,7 @@ void ChromeBrowserMainExtraPartsProfiles:: +@@ -918,7 +918,7 @@ void ChromeBrowserMainExtraPartsProfiles:: collaboration::comments::CommentsServiceFactory::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(); -@@ -921,7 +921,7 @@ void ChromeBrowserMainExtraPartsProfiles:: +@@ -936,7 +936,7 @@ void ChromeBrowserMainExtraPartsProfiles:: contextual_tasks::ContextualTasksUiServiceFactory::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) glic::ContextualCueingServiceFactory::GetInstance(); #endif ContextualSearchServiceFactory::GetInstance(); -@@ -972,7 +972,7 @@ void ChromeBrowserMainExtraPartsProfiles:: +@@ -988,7 +988,7 @@ void ChromeBrowserMainExtraPartsProfiles:: #endif enterprise_connectors::ConnectorsServiceFactory::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 -@@ -981,7 +981,7 @@ void ChromeBrowserMainExtraPartsProfiles:: +@@ -997,7 +997,7 @@ void ChromeBrowserMainExtraPartsProfiles:: enterprise_connectors::ExtensionInstallEventRouterFactory::GetInstance(); enterprise_connectors::ExtensionTelemetryEventRouterFactory::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(); -@@ -996,7 +996,7 @@ void ChromeBrowserMainExtraPartsProfiles:: +@@ -1012,7 +1012,7 @@ void ChromeBrowserMainExtraPartsProfiles:: } #endif #if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_WIN) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) if (enterprise_custom_headers::IsHttpHeaderInjectionEnabled()) { enterprise_custom_headers::HttpHeaderInjectionServiceFactory::GetInstance(); } -@@ -1010,7 +1010,7 @@ void ChromeBrowserMainExtraPartsProfiles:: +@@ -1026,7 +1026,7 @@ void ChromeBrowserMainExtraPartsProfiles:: enterprise_groups::EnterpriseGroupsProfileHandlerFactory::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(); - enterprise_signals::SignalsAggregatorFactory::GetInstance(); #endif -@@ -1021,14 +1021,14 @@ void ChromeBrowserMainExtraPartsProfiles:: + enterprise_signals::SignalsAggregatorFactory::GetInstance(); +@@ -1037,14 +1037,14 @@ void ChromeBrowserMainExtraPartsProfiles:: enterprise_reporting::CloudProfileReportingServiceFactory::GetInstance(); - #endif enterprise_reporting::LegacyTechServiceFactory::GetInstance(); --#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_CHROMEOS) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) enterprise_reporting::SaasUsageReportingControllerFactory::GetInstance(); #endif #if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_WIN) || BUILDFLAG(IS_ANDROID) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_ANDROID) || 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(IS_ANDROID) -@@ -1078,7 +1078,7 @@ void ChromeBrowserMainExtraPartsProfiles:: +@@ -1094,7 +1094,7 @@ void ChromeBrowserMainExtraPartsProfiles:: #if BUILDFLAG(IS_CHROMEOS) GalleryWatchManager::EnsureFactoryBuilt(); #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) if (base::FeatureList::IsEnabled(gapis::kEnableGapis)) { GapisServiceFactory::GetInstance(); } -@@ -1174,7 +1174,7 @@ void ChromeBrowserMainExtraPartsProfiles:: +@@ -1189,7 +1189,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 private_insights::PrivateInsightsServiceFactory::GetInstance(); -@@ -1277,7 +1277,7 @@ void ChromeBrowserMainExtraPartsProfiles:: +@@ -1296,7 +1296,7 @@ void ChromeBrowserMainExtraPartsProfiles:: PasswordCounterFactory::GetInstance(); #endif // !BUILDFLAG(IS_ANDROID) #if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) PasswordManagerBlocklistPolicyFactory::GetInstance(); #endif PasswordManagerSettingsServiceFactory::GetInstance(); -@@ -1329,7 +1329,7 @@ void ChromeBrowserMainExtraPartsProfiles:: +@@ -1347,7 +1347,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(); #endif policy::UserCloudPolicyInvalidatorFactory::GetInstance(); -@@ -1339,7 +1339,7 @@ void ChromeBrowserMainExtraPartsProfiles:: +@@ -1357,7 +1357,7 @@ void ChromeBrowserMainExtraPartsProfiles:: #else policy::UserPolicySigninServiceFactory::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::UserPolicyOidcSigninServiceFactory::GetInstance(); #endif PredictionModelHandlerProviderFactory::GetInstance(); -@@ -1362,7 +1362,7 @@ void ChromeBrowserMainExtraPartsProfiles:: +@@ -1380,7 +1380,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 -@@ -1384,7 +1384,7 @@ void ChromeBrowserMainExtraPartsProfiles:: +@@ -1405,7 +1405,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 RevokedPermissionsOSNotificationDisplayManagerFactory::GetInstance(); -@@ -1587,7 +1587,7 @@ void ChromeBrowserMainExtraPartsProfiles:: +@@ -1611,7 +1611,7 @@ void ChromeBrowserMainExtraPartsProfiles:: #endif #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ -- BUILDFLAG(IS_CHROMEOS) -+ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - autofill::AtMemoryPromoTrackerFactory::GetInstance(); +- BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) + autofill::AtMemoryCrossTabCopyPasteTrackerFactory::GetInstance(); #endif 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 603093231433..06435691ad8c 100644 --- a/www/chromium/files/patch-chrome_browser_profiles_profile__impl.cc +++ b/www/chromium/files/patch-chrome_browser_profiles_profile__impl.cc @@ -1,67 +1,67 @@ ---- chrome/browser/profiles/profile_impl.cc.orig 2026-08-12 09:02:10 UTC +--- chrome/browser/profiles/profile_impl.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/profiles/profile_impl.cc -@@ -269,7 +269,7 @@ +@@ -268,7 +268,7 @@ #include "chrome/browser/safe_browsing/safe_browsing_service.h" #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) #include "chrome/browser/gapis/gapis_service_factory.h" #include "components/gapis/gapis_service.h" #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) -@@ -278,6 +278,10 @@ +@@ -277,6 +277,10 @@ #include "chrome/browser/themes/theme_service_factory.h" #endif // !BUILDFLAG(IS_ANDROID) +#if BUILDFLAG(IS_BSD) +#include "sandbox/policy/sandbox.h" +#endif + using bookmarks::BookmarkModel; using content::BrowserThread; using content::DownloadManagerDelegate; -@@ -639,7 +643,7 @@ void ProfileImpl::LoadPrefsForNormalStartup(bool async +@@ -638,7 +642,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) if (GetTestingCloudPolicyManagerFactory()) { auto result = GetTestingCloudPolicyManagerFactory().Run(this); if (std::holds_alternative< -@@ -658,7 +662,7 @@ void ProfileImpl::LoadPrefsForNormalStartup(bool async +@@ -657,7 +661,7 @@ void ProfileImpl::LoadPrefsForNormalStartup(bool async #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) if (!cloud_policy_manager) { -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) ProfileAttributesEntry* entry = nullptr; if (g_browser_process->profile_manager()) { entry = g_browser_process->profile_manager() -@@ -851,7 +855,7 @@ void ProfileImpl::DoFinalInit(CreateMode create_mode) +@@ -850,7 +854,7 @@ void ProfileImpl::DoFinalInit(CreateMode create_mode) } #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) // Bootstrap and initialize the Gapis service. if (gapis::GapisService* gapis_service = GapisServiceFactory::GetForProfile(this)) { -@@ -947,7 +951,17 @@ void ProfileImpl::DoFinalInit(CreateMode create_mode) +@@ -946,7 +950,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_renderer__context__menu_render__view__context__menu.cc b/www/chromium/files/patch-chrome_browser_renderer__context__menu_render__view__context__menu.cc index 1d48b286413a..1e91d3dce859 100644 --- a/www/chromium/files/patch-chrome_browser_renderer__context__menu_render__view__context__menu.cc +++ b/www/chromium/files/patch-chrome_browser_renderer__context__menu_render__view__context__menu.cc @@ -1,20 +1,20 @@ ---- chrome/browser/renderer_context_menu/render_view_context_menu.cc.orig 2026-08-20 14:42:05 UTC +--- chrome/browser/renderer_context_menu/render_view_context_menu.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/renderer_context_menu/render_view_context_menu.cc -@@ -284,7 +284,7 @@ +@@ -283,7 +283,7 @@ #include "url/origin.h" #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "components/webapps/isolated_web_apps/scheme.h" #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || // BUILDFLAG(IS_CHROMEOS) -@@ -5914,7 +5914,7 @@ void RenderViewContextMenu::AppendRevisedTextSelection +@@ -5975,7 +5975,7 @@ void RenderViewContextMenu::AppendRevisedTextSelection } #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) bool RenderViewContextMenu::IsLinkToIsolatedWebApp() const { // Using `unfiltered_link_url`, because `link_url` is being replaced with // about:blank#blocked if the source is a normal site. diff --git a/www/chromium/files/patch-chrome_browser_renderer__preferences__util.cc b/www/chromium/files/patch-chrome_browser_renderer__preferences__util.cc index 7a8a4d28586d..a2528fe59883 100644 --- a/www/chromium/files/patch-chrome_browser_renderer__preferences__util.cc +++ b/www/chromium/files/patch-chrome_browser_renderer__preferences__util.cc @@ -1,44 +1,44 @@ ---- chrome/browser/renderer_preferences_util.cc.orig 2026-08-12 09:02:10 UTC +--- chrome/browser/renderer_preferences_util.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/renderer_preferences_util.cc -@@ -36,12 +36,12 @@ +@@ -37,12 +37,12 @@ #include "ui/base/ui_base_features.h" #include "ui/native_theme/native_theme.h" -#if defined(USE_AURA) && BUILDFLAG(IS_LINUX) +#if defined(USE_AURA) && (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) #include "chrome/browser/themes/theme_service.h" #include "chrome/browser/themes/theme_service_factory.h" #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "ui/linux/linux_ui.h" #endif -@@ -108,7 +108,7 @@ void UpdateFromSystemSettings(blink::RendererPreferenc +@@ -109,7 +109,7 @@ void UpdateFromSystemSettings(blink::RendererPreferenc Profile* profile) { const PrefService* pref_service = profile->GetPrefs(); #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || \ - BUILDFLAG(IS_WIN) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) content::UpdateFontRendererPreferencesFromSystemSettings(prefs); #endif prefs->focus_ring_color = BUILDFLAG(IS_MAC) ? SkColorSetRGB(0x00, 0x5F, 0xCC) -@@ -122,7 +122,7 @@ void UpdateFromSystemSettings(blink::RendererPreferenc +@@ -123,7 +123,7 @@ void UpdateFromSystemSettings(blink::RendererPreferenc prefs->inactive_selection_fg_color = SK_ColorBLACK; #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (auto* linux_ui_theme = ui::LinuxUiTheme::GetForProfile(profile)) { if (ThemeServiceFactory::GetForProfile(profile)->UsingSystemTheme()) { linux_ui_theme->GetFocusRingColor(&prefs->focus_ring_color); -@@ -139,7 +139,7 @@ void UpdateFromSystemSettings(blink::RendererPreferenc +@@ -140,7 +140,7 @@ void UpdateFromSystemSettings(blink::RendererPreferenc #endif // BUILDFLAG(IS_LINUX) #endif // BUILDFLAG(USE_AURA) -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (auto* linux_ui = ui::LinuxUi::instance()) { prefs->middle_click_paste_allowed = linux_ui->PrimaryPasteEnabled(); } diff --git a/www/chromium/files/patch-chrome_browser_safe__browsing_chrome__password__protection__service.cc b/www/chromium/files/patch-chrome_browser_safe__browsing_chrome__password__protection__service.cc index 355464b583c8..32011e277f6b 100644 --- a/www/chromium/files/patch-chrome_browser_safe__browsing_chrome__password__protection__service.cc +++ b/www/chromium/files/patch-chrome_browser_safe__browsing_chrome__password__protection__service.cc @@ -1,11 +1,11 @@ ---- chrome/browser/safe_browsing/chrome_password_protection_service.cc.orig 2026-08-12 09:02:10 UTC +--- chrome/browser/safe_browsing/chrome_password_protection_service.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/safe_browsing/chrome_password_protection_service.cc -@@ -1383,7 +1383,7 @@ std::string ChromePasswordProtectionService::GetOrgani +@@ -1403,7 +1403,7 @@ std::string ChromePasswordProtectionService::GetOrgani ReusedPasswordAccountType password_type) const { if (base::FeatureList::IsEnabled( safe_browsing::kEnterprisePasswordReuseUiRefresh)) { -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) return GetPrefs()->GetString(prefs::kEnterpriseCustomLabelForProfile); #else return std::string(); diff --git a/www/chromium/files/patch-chrome_browser_screen__ai_screen__ai__install__state.cc b/www/chromium/files/patch-chrome_browser_screen__ai_screen__ai__install__state.cc index d0f0c587aea7..45b5a6bdd2ea 100644 --- a/www/chromium/files/patch-chrome_browser_screen__ai_screen__ai__install__state.cc +++ b/www/chromium/files/patch-chrome_browser_screen__ai_screen__ai__install__state.cc @@ -1,11 +1,11 @@ ---- chrome/browser/screen_ai/screen_ai_install_state.cc.orig 2026-08-12 09:02:10 UTC +--- chrome/browser/screen_ai/screen_ai_install_state.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/screen_ai/screen_ai_install_state.cc -@@ -28,7 +28,7 @@ bool IsDeviceCompatible() { +@@ -37,7 +37,7 @@ bool ScreenAIInstallState::IsDeviceCompatible() { // Check if the CPU has the required instruction set to run the Screen AI // library. static const bool device_compatible = base::CPU().has_sse42(); -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // On Linux, the library is only built for X86 CPUs. static constexpr bool device_compatible = false; #else diff --git a/www/chromium/files/patch-chrome_browser_sessions_session__restore.cc b/www/chromium/files/patch-chrome_browser_sessions_session__restore.cc index 3e6b5e68712f..e30d45324f02 100644 --- a/www/chromium/files/patch-chrome_browser_sessions_session__restore.cc +++ b/www/chromium/files/patch-chrome_browser_sessions_session__restore.cc @@ -1,20 +1,20 @@ ---- chrome/browser/sessions/session_restore.cc.orig 2026-08-12 09:02:10 UTC +--- chrome/browser/sessions/session_restore.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/sessions/session_restore.cc -@@ -123,7 +123,7 @@ +@@ -126,7 +126,7 @@ #include "ui/wm/core/scoped_animation_disabler.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/ui/webui/whats_new/whats_new_fetcher.h" #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) -@@ -1295,7 +1295,7 @@ class SessionRestoreImpl : public BrowserCollectionObs +@@ -1311,7 +1311,7 @@ class SessionRestoreImpl : public BrowserCollectionObs bool is_first_tab = true; for (const auto& startup_tab : startup_tabs) { const GURL& url = startup_tab.url; -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (url == whats_new::GetWebUIStartupURL()) { whats_new::StartWhatsNewFetch(browser); continue; diff --git a/www/chromium/files/patch-chrome_browser_sharing_sharing__handler__registry__impl.cc b/www/chromium/files/patch-chrome_browser_sharing_sharing__handler__registry__impl.cc index 702211fbca11..df2947c8998f 100644 --- a/www/chromium/files/patch-chrome_browser_sharing_sharing__handler__registry__impl.cc +++ b/www/chromium/files/patch-chrome_browser_sharing_sharing__handler__registry__impl.cc @@ -1,20 +1,20 @@ ---- chrome/browser/sharing/sharing_handler_registry_impl.cc.orig 2026-06-04 10:12:25 UTC +--- chrome/browser/sharing/sharing_handler_registry_impl.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/sharing/sharing_handler_registry_impl.cc -@@ -28,7 +28,7 @@ +@@ -27,7 +27,7 @@ #endif // 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/sharing/shared_clipboard/remote_copy_message_handler.h" #endif -@@ -80,7 +80,7 @@ SharingHandlerRegistryImpl::SharingHandlerRegistryImpl +@@ -74,7 +74,7 @@ SharingHandlerRegistryImpl::SharingHandlerRegistryImpl #endif // !BUILDFLAG(IS_ANDROID) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) if (sharing_device_registration->IsRemoteCopySupported()) { AddSharingHandler( std::make_unique(profile), diff --git a/www/chromium/files/patch-chrome_browser_signin_chrome__signin__client.cc b/www/chromium/files/patch-chrome_browser_signin_chrome__signin__client.cc index f28ef9ad71d8..8b038439ae27 100644 --- a/www/chromium/files/patch-chrome_browser_signin_chrome__signin__client.cc +++ b/www/chromium/files/patch-chrome_browser_signin_chrome__signin__client.cc @@ -1,11 +1,11 @@ ---- chrome/browser/signin/chrome_signin_client.cc.orig 2026-07-01 06:24:19 UTC +--- chrome/browser/signin/chrome_signin_client.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/signin/chrome_signin_client.cc -@@ -160,7 +160,7 @@ signin_metrics::ProfileSignout kAlwaysAllowedSignoutSo +@@ -161,7 +161,7 @@ signin_metrics::ProfileSignout kAlwaysAllowedSignoutSo std::string HatsSurveyTriggerForAccessPoint( signin_metrics::AccessPoint access_point) { switch (access_point) { -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) case signin_metrics::AccessPoint::kAddressBubble: return kHatsSurveyTriggerIdentityAddressBubbleSignin; case signin_metrics::AccessPoint::kAvatarBubbleSignIn: diff --git a/www/chromium/files/patch-chrome_browser_supervised__user_supervised__user__extensions__manager.cc b/www/chromium/files/patch-chrome_browser_supervised__user_supervised__user__extensions__manager.cc index 0fed447d7f4f..4291ed9dd0a7 100644 --- a/www/chromium/files/patch-chrome_browser_supervised__user_supervised__user__extensions__manager.cc +++ b/www/chromium/files/patch-chrome_browser_supervised__user_supervised__user__extensions__manager.cc @@ -1,20 +1,20 @@ ---- chrome/browser/supervised_user/supervised_user_extensions_manager.cc.orig 2025-10-02 04:28:32 UTC +--- chrome/browser/supervised_user/supervised_user_extensions_manager.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/supervised_user/supervised_user_extensions_manager.cc -@@ -345,7 +345,7 @@ void SupervisedUserExtensionsManager:: +@@ -346,7 +346,7 @@ void SupervisedUserExtensionsManager:: ActivateManagementPolicyAndUpdateRegistration() { SetActiveForSupervisedUsers(); UpdateManagementPolicyRegistration(); -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) MaybeMarkExtensionsLocallyParentApproved(); #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) } -@@ -444,7 +444,7 @@ bool SupervisedUserExtensionsManager::ShouldBlockExten +@@ -446,7 +446,7 @@ bool SupervisedUserExtensionsManager::ShouldBlockExten return false; } -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) void SupervisedUserExtensionsManager:: MaybeMarkExtensionsLocallyParentApproved() { supervised_user::LocallyParentApprovedExtensionsMigrationState diff --git a/www/chromium/files/patch-chrome_browser_support__tool_support__tool__util.cc b/www/chromium/files/patch-chrome_browser_support__tool_support__tool__util.cc index ac9c6bfa7948..71f8a63b70ea 100644 --- a/www/chromium/files/patch-chrome_browser_support__tool_support__tool__util.cc +++ b/www/chromium/files/patch-chrome_browser_support__tool_support__tool__util.cc @@ -1,29 +1,29 @@ ---- chrome/browser/support_tool/support_tool_util.cc.orig 2026-02-11 09:05:39 UTC +--- chrome/browser/support_tool/support_tool_util.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/support_tool/support_tool_util.cc -@@ -54,7 +54,7 @@ +@@ -53,7 +53,7 @@ #endif // BUILDFLAG(IS_CHROMEOS_WITH_HW_DETAILS) #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) #include "chrome/browser/support_tool/updater_data_collector.h" #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) -@@ -300,7 +300,7 @@ std::unique_ptr GetSupportToolHand +@@ -299,7 +299,7 @@ std::unique_ptr GetSupportToolHand #endif // BUILDFLAG(IS_CHROMEOS_WITH_HW_DETAILS) break; #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) case support_tool::CHROME_UPDATER: handler->AddDataCollector(std::make_unique()); break; -@@ -345,7 +345,7 @@ GetAllAvailableDataCollectorsOnDevice() { +@@ -344,7 +344,7 @@ GetAllAvailableDataCollectorsOnDevice() { } #endif // BUILDFLAG(IS_CHROMEOS_WITH_HW_DETAILS) #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) for (const auto& type : kDataCollectorsLinuxMacWin) { data_collectors.push_back(type); } 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 b19a44b55e8f..fcd0d3abb25d 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 2026-08-12 09:02:10 UTC +--- chrome/browser/sync/chrome_sync_controller_builder.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/sync/chrome_sync_controller_builder.cc -@@ -327,7 +327,7 @@ ChromeSyncControllerBuilder::Build(syncer::SyncService +@@ -322,7 +322,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 0403c1853a27..5cc1052bb794 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,20 +1,20 @@ ---- chrome/browser/sync/sync_service_factory.cc.orig 2026-08-12 09:02:10 UTC +--- chrome/browser/sync/sync_service_factory.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/sync/sync_service_factory.cc @@ -141,7 +141,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::TabGroupSyncServiceFactory::GetForProfile(profile); CHECK(service); -@@ -432,7 +432,7 @@ std::unique_ptr BuildSyncService( +@@ -434,7 +434,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); diff --git a/www/chromium/files/patch-chrome_browser_ui_accelerator__table.cc b/www/chromium/files/patch-chrome_browser_ui_accelerator__table.cc index afae4e066ee4..b798a1ddea65 100644 --- a/www/chromium/files/patch-chrome_browser_ui_accelerator__table.cc +++ b/www/chromium/files/patch-chrome_browser_ui_accelerator__table.cc @@ -1,43 +1,43 @@ ---- chrome/browser/ui/accelerator_table.cc.orig 2026-08-12 09:02:10 UTC +--- chrome/browser/ui/accelerator_table.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/accelerator_table.cc @@ -77,11 +77,11 @@ const AcceleratorMapping kAcceleratorMap[] = { {ui::VKEY_S, ui::EF_PLATFORM_ACCELERATOR, IDC_SAVE_PAGE}, {ui::VKEY_9, ui::EF_PLATFORM_ACCELERATOR, IDC_SELECT_LAST_TAB}, {ui::VKEY_NUMPAD9, ui::EF_PLATFORM_ACCELERATOR, IDC_SELECT_LAST_TAB}, -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) {ui::VKEY_9, ui::EF_ALT_DOWN, IDC_SELECT_LAST_TAB}, {ui::VKEY_NUMPAD9, ui::EF_ALT_DOWN, IDC_SELECT_LAST_TAB}, #endif // BUILDFLAG(IS_LINUX) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) {ui::VKEY_NEXT, ui::EF_CONTROL_DOWN | ui::EF_SHIFT_DOWN, IDC_MOVE_TAB_NEXT}, {ui::VKEY_PRIOR, ui::EF_CONTROL_DOWN | ui::EF_SHIFT_DOWN, IDC_MOVE_TAB_PREVIOUS}, @@ -109,7 +109,7 @@ const AcceleratorMapping kAcceleratorMap[] = { {ui::VKEY_NUMPAD7, ui::EF_PLATFORM_ACCELERATOR, IDC_SELECT_TAB_6}, {ui::VKEY_8, ui::EF_PLATFORM_ACCELERATOR, IDC_SELECT_TAB_7}, {ui::VKEY_NUMPAD8, ui::EF_PLATFORM_ACCELERATOR, IDC_SELECT_TAB_7}, -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) {ui::VKEY_1, ui::EF_ALT_DOWN, IDC_SELECT_TAB_0}, {ui::VKEY_NUMPAD1, ui::EF_ALT_DOWN, IDC_SELECT_TAB_0}, {ui::VKEY_2, ui::EF_ALT_DOWN, IDC_SELECT_TAB_1}, @@ -163,7 +163,7 @@ const AcceleratorMapping kAcceleratorMap[] = { IDC_TOGGLE_VERTICAL_TABS_COLLAPSE}, // Platform-specific key maps. -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) {ui::VKEY_BROWSER_BACK, ui::EF_NONE, IDC_BACK}, {ui::VKEY_BROWSER_FORWARD, ui::EF_NONE, IDC_FORWARD}, {ui::VKEY_BROWSER_HOME, ui::EF_NONE, IDC_HOME}, -@@ -318,7 +318,7 @@ std::vector GetAcceleratorList() { +@@ -321,7 +321,7 @@ std::vector GetAcceleratorList() { std::begin(kDevToolsAcceleratorMap), std::end(kDevToolsAcceleratorMap)); -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) accelerators->emplace_back(AcceleratorMapping( {ui::VKEY_N, ui::EF_SHIFT_DOWN | ui::EF_ALT_DOWN, IDC_NEW_SPLIT_TAB})); #elif BUILDFLAG(IS_CHROMEOS) 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 9eb8accff73e..b53e9031d182 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 2026-08-12 09:02:10 UTC +--- chrome/browser/ui/actions/chrome_action_id.h.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/actions/chrome_action_id.h -@@ -527,7 +527,7 @@ - #if BUILDFLAG(IS_CHROMEOS) - #define CHROME_PLATFORM_SPECIFIC_ACTION_IDS \ - E(kToggleMultitaskMenu, IDC_TOGGLE_MULTITASK_MENU) +@@ -440,7 +440,7 @@ + E(kActionVisitDesktopOfLruUser3, IDC_VISIT_DESKTOP_OF_LRU_USER_3) \ + E(kActionVisitDesktopOfLruUser4, IDC_VISIT_DESKTOP_OF_LRU_USER_4) \ + E(kActionVisitDesktopOfLruUser5, IDC_VISIT_DESKTOP_OF_LRU_USER_5) -#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_autofill_chrome__autofill__client.cc b/www/chromium/files/patch-chrome_browser_ui_autofill_chrome__autofill__client.cc index 6c85bdb11f7b..e522e6e270a4 100644 --- a/www/chromium/files/patch-chrome_browser_ui_autofill_chrome__autofill__client.cc +++ b/www/chromium/files/patch-chrome_browser_ui_autofill_chrome__autofill__client.cc @@ -1,11 +1,19 @@ ---- chrome/browser/ui/autofill/chrome_autofill_client.cc.orig 2026-08-12 09:02:10 UTC +--- chrome/browser/ui/autofill/chrome_autofill_client.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/autofill/chrome_autofill_client.cc -@@ -327,7 +327,7 @@ ChromeAutofillClient::~ChromeAutofillClient() { +@@ -327,14 +327,14 @@ void ChromeAutofillClient::AtMemoryCopyPasteObserver:: + ->GetPrimaryMainFrame() + ->GetPageUkmSourceId())) { + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_CHROMEOS) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + client_->ShowAutofillAtMemoryPromo(); + #endif + } } #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - ChromeAutofillClient::AtMemoryPromoObserver::AtMemoryPromoObserver( - ChromeAutofillClient* client) - : content::WebContentsObserver(client->web_contents()), client_(*client) {} + void ChromeAutofillClient::ShowAutofillAtMemoryPromo() { + // TODO(crbug.com/519061643) Double check if we also need to check a field + // url here. diff --git a/www/chromium/files/patch-chrome_browser_ui_autofill_chrome__autofill__client.h b/www/chromium/files/patch-chrome_browser_ui_autofill_chrome__autofill__client.h index ec6aff343ff9..c7f255c60a4b 100644 --- a/www/chromium/files/patch-chrome_browser_ui_autofill_chrome__autofill__client.h +++ b/www/chromium/files/patch-chrome_browser_ui_autofill_chrome__autofill__client.h @@ -1,29 +1,11 @@ ---- chrome/browser/ui/autofill/chrome_autofill_client.h.orig 2026-08-12 09:02:10 UTC +--- chrome/browser/ui/autofill/chrome_autofill_client.h.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/autofill/chrome_autofill_client.h -@@ -125,7 +125,7 @@ class ChromeAutofillClient : public ContentAutofillCli +@@ -127,7 +127,7 @@ class ChromeAutofillClient : public ContentAutofillCli ~ChromeAutofillClient() override; #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) + // Triggers the AtMemory promo bubble. void ShowAutofillAtMemoryPromo(); #endif - -@@ -346,7 +346,7 @@ class ChromeAutofillClient : public ContentAutofillCli - - protected: - #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ -- BUILDFLAG(IS_CHROMEOS) -+ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - class AtMemoryPromoObserver : public content::WebContentsObserver { - public: - explicit AtMemoryPromoObserver(ChromeAutofillClient* client); -@@ -449,7 +449,7 @@ class ChromeAutofillClient : public ContentAutofillCli - std::unique_ptr actor_key_metrics_recorder_; - - #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ -- BUILDFLAG(IS_CHROMEOS) -+ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - AtMemoryPromoObserver at_memory_promo_observer_{this}; - #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - // BUILDFLAG(IS_CHROMEOS) diff --git a/www/chromium/files/patch-chrome_browser_ui_autofill_payments_desktop__payments__window__manager.cc b/www/chromium/files/patch-chrome_browser_ui_autofill_payments_desktop__payments__window__manager.cc index 90d2c13d2f40..fd559c04effe 100644 --- a/www/chromium/files/patch-chrome_browser_ui_autofill_payments_desktop__payments__window__manager.cc +++ b/www/chromium/files/patch-chrome_browser_ui_autofill_payments_desktop__payments__window__manager.cc @@ -1,29 +1,29 @@ ---- chrome/browser/ui/autofill/payments/desktop_payments_window_manager.cc.orig 2026-02-11 09:05:39 UTC +--- chrome/browser/ui/autofill/payments/desktop_payments_window_manager.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/autofill/payments/desktop_payments_window_manager.cc @@ -31,7 +31,7 @@ - #include "ui/gfx/geometry/rect.h" + #include "ui/gfx/geometry/size.h" #include "url/gurl.h" -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "chrome/browser/ui/browser_window/public/browser_window_interface.h" // nogncheck #endif // BUILDFLAG(IS_LINUX) -@@ -62,7 +62,7 @@ gfx::Rect GetPopupSizeForBnpl() { +@@ -62,7 +62,7 @@ gfx::Size GetPopupSizeForBnpl() { DesktopPaymentsWindowManager::DesktopPaymentsWindowManager( ContentAutofillClient* client) : client_(CHECK_DEREF(client)) { -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) scoped_observation_.Observe( ProfileBrowserCollection::GetForProfile(Profile::FromBrowserContext( client_->GetWebContents().GetBrowserContext()))); @@ -157,7 +157,7 @@ void DesktopPaymentsWindowManager::WebContentsDestroye } } -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) void DesktopPaymentsWindowManager::OnBrowserActivated( BrowserWindowInterface* browser) { // If there is an ongoing payments window manager pop-up flow, and the diff --git a/www/chromium/files/patch-chrome_browser_ui_autofill_payments_desktop__payments__window__manager.h b/www/chromium/files/patch-chrome_browser_ui_autofill_payments_desktop__payments__window__manager.h index 55a85c69257a..07f5b4b1f8bb 100644 --- a/www/chromium/files/patch-chrome_browser_ui_autofill_payments_desktop__payments__window__manager.h +++ b/www/chromium/files/patch-chrome_browser_ui_autofill_payments_desktop__payments__window__manager.h @@ -1,38 +1,38 @@ ---- chrome/browser/ui/autofill/payments/desktop_payments_window_manager.h.orig 2026-02-11 09:05:39 UTC +--- chrome/browser/ui/autofill/payments/desktop_payments_window_manager.h.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/autofill/payments/desktop_payments_window_manager.h -@@ -14,7 +14,7 @@ - #include "components/autofill/core/browser/payments/payments_window_manager.h" +@@ -15,7 +15,7 @@ #include "content/public/browser/web_contents_observer.h" + #include "ui/gfx/geometry/size.h" -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "base/scoped_observation.h" #include "chrome/browser/ui/browser_window/public/browser_collection_observer.h" // nogncheck #include "chrome/browser/ui/browser_window/public/profile_browser_collection.h" // nogncheck -@@ -41,7 +41,7 @@ class PaymentsWindowUserConsentDialogControllerImpl; +@@ -42,7 +42,7 @@ class PaymentsWindowUserConsentDialogControllerImpl; // WebContents of the original tab that the pop-up is created in. If there is a // pop-up currently present, `this` will observe the WebContents of that pop-up. class DesktopPaymentsWindowManager : public PaymentsWindowManager, -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) public BrowserCollectionObserver, #endif // BUILDFLAG(IS_LINUX) public content::WebContentsObserver { -@@ -61,7 +61,7 @@ class DesktopPaymentsWindowManager : public PaymentsWi +@@ -62,7 +62,7 @@ class DesktopPaymentsWindowManager : public PaymentsWi content::NavigationHandle* navigation_handle) override; void WebContentsDestroyed() override; -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // BrowserCollectionObserver: void OnBrowserActivated(BrowserWindowInterface* browser) override; #endif // BUILDFLAG(IS_LINUX) -@@ -132,7 +132,7 @@ class DesktopPaymentsWindowManager : public PaymentsWi +@@ -133,7 +133,7 @@ class DesktopPaymentsWindowManager : public PaymentsWi // Used in tests to notify the test infrastructure that the pop-up has closed. base::RepeatingClosure popup_closed_closure_for_testing_; -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) base::ScopedObservation scoped_observation_{this}; #endif // BUILDFLAG(IS_LINUX) diff --git a/www/chromium/files/patch-chrome_browser_ui_browser.h b/www/chromium/files/patch-chrome_browser_ui_browser.h index b614f537afc2..3edace8342c7 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 2026-08-12 09:02:10 UTC +--- chrome/browser/ui/browser.h.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/browser.h -@@ -238,7 +238,7 @@ class Browser : public TabStripModelObserver, +@@ -209,7 +209,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__actions.cc b/www/chromium/files/patch-chrome_browser_ui_browser__actions.cc index c842ccac5655..d1b2dac12725 100644 --- a/www/chromium/files/patch-chrome_browser_ui_browser__actions.cc +++ b/www/chromium/files/patch-chrome_browser_ui_browser__actions.cc @@ -1,47 +1,47 @@ ---- chrome/browser/ui/browser_actions.cc.orig 2026-08-12 09:02:10 UTC +--- chrome/browser/ui/browser_actions.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/browser_actions.cc -@@ -223,7 +223,7 @@ +@@ -243,7 +243,7 @@ #include "chrome/browser/ui/views/download/bubble/download_toolbar_ui_controller.h" #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "chrome/common/pref_names.h" #include "components/prefs/pref_service.h" #endif -@@ -2197,7 +2197,7 @@ void BrowserActions::InitializeToolbarAndMiscActions() +@@ -2610,7 +2610,7 @@ void BrowserActions::InitializeToolbarAndMiscActions() .Build()); #endif // BUILDFLAG(IS_CHROMEOS) -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) root_action_item_->AddChild( actions::ActionItem::Builder( base::BindRepeating( -@@ -2292,7 +2292,7 @@ void BrowserActions::InitializeToolbarAndMiscActions() +@@ -2742,7 +2742,7 @@ void BrowserActions::InitializeToolbarAndMiscActions() .SetActionId(kActionExit) .Build()); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) root_action_item_->AddChild( actions::ActionItem::Builder( base::BindRepeating( -@@ -3226,7 +3226,7 @@ void BrowserActions::InitializeToolbarAndMiscActions() - base::BindRepeating( +@@ -3782,7 +3782,7 @@ void BrowserActions::InitializeToolbarAndMiscActions() [](BrowserWindowInterface* bwi, actions::ActionItem* item, actions::ActionInvocationContext context) { + 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( bwi->GetBrowserForMigrationOnly()); #else -@@ -3867,7 +3867,7 @@ void BrowserActions::InitializeToolbarAndMiscActions() +@@ -4653,7 +4653,7 @@ void BrowserActions::InitializeToolbarAndMiscActions() #endif #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)) root_action_item_->AddChild( actions::ActionItem::Builder( base::BindRepeating( 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 ff057307ad68..c1dbb08cb32d 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,90 +1,90 @@ ---- chrome/browser/ui/browser_command_controller.cc.orig 2026-08-12 09:02:10 UTC +--- chrome/browser/ui/browser_command_controller.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/browser_command_controller.cc -@@ -171,7 +171,7 @@ +@@ -170,7 +170,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" -@@ -181,7 +181,7 @@ +@@ -180,7 +180,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) -@@ -485,7 +485,7 @@ bool BrowserCommandController::IsReservedCommandOrKey( +@@ -484,7 +484,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(); -@@ -818,7 +818,7 @@ void BrowserCommandController::HandleCommandWithDispos +@@ -856,7 +856,7 @@ void BrowserCommandController::HandleCommandWithDispos break; #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) case IDC_MINIMIZE_WINDOW: browser_->GetWindow()->Minimize(); break; -@@ -831,7 +831,7 @@ void BrowserCommandController::HandleCommandWithDispos +@@ -869,7 +869,7 @@ void BrowserCommandController::HandleCommandWithDispos #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) case IDC_USE_SYSTEM_TITLE_BAR: { PrefService* prefs = profile()->GetPrefs(); prefs->SetBoolean(prefs::kUseCustomChromeFrame, -@@ -1092,7 +1092,7 @@ void BrowserCommandController::HandleCommandWithDispos +@@ -1117,7 +1117,7 @@ void BrowserCommandController::HandleCommandWithDispos 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( -@@ -1307,7 +1307,7 @@ void BrowserCommandController::HandleCommandWithDispos +@@ -1332,7 +1332,7 @@ void BrowserCommandController::HandleCommandWithDispos #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 -@@ -1737,13 +1737,13 @@ void BrowserCommandController::InitCommandState() { +@@ -1761,13 +1761,13 @@ 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) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) command_updater_->UpdateCommandEnabled(IDC_MINIMIZE_WINDOW, true); command_updater_->UpdateCommandEnabled(IDC_MAXIMIZE_WINDOW, true); command_updater_->UpdateCommandEnabled(IDC_RESTORE_WINDOW, true); #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) bool use_system_title_bar = true; #if BUILDFLAG(IS_OZONE) use_system_title_bar = ui::OzonePlatform::GetInstance() -@@ -2136,7 +2136,7 @@ void BrowserCommandController::UpdateCommandsForTabSta +@@ -2167,7 +2167,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 73ef71e182ca..657c1110c3e5 100644 --- a/www/chromium/files/patch-chrome_browser_ui_browser__commands.cc +++ b/www/chromium/files/patch-chrome_browser_ui_browser__commands.cc @@ -1,20 +1,20 @@ ---- chrome/browser/ui/browser_commands.cc.orig 2026-08-12 09:02:10 UTC +--- chrome/browser/ui/browser_commands.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/browser_commands.cc -@@ -1265,7 +1265,7 @@ void NewTabToRight(BrowserWindowInterface* browser) { +@@ -1314,7 +1314,7 @@ void NewTabToRight(BrowserWindowInterface* browser) { } void NewTabFromClipboardURL(BrowserWindowInterface* browser) { -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (ui::Clipboard::IsSupportedClipboardBuffer( ui::ClipboardBuffer::kSelection)) { ui::Clipboard* clipboard = ui::Clipboard::GetForCurrentThread(); -@@ -2583,7 +2583,7 @@ void OpenUpdateChromeDialog(BrowserWindowInterface* br +@@ -2648,7 +2648,7 @@ void OpenUpdateChromeDialog(BrowserWindowInterface* br ShowOutdatedUpgradeBubble(browser, browser, /*auto_update_enabled=*/false); } 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_browser__ui__prefs.cc b/www/chromium/files/patch-chrome_browser_ui_browser__ui__prefs.cc index 5aa1dd0f7ccd..3888e8545230 100644 --- a/www/chromium/files/patch-chrome_browser_ui_browser__ui__prefs.cc +++ b/www/chromium/files/patch-chrome_browser_ui_browser__ui__prefs.cc @@ -1,29 +1,29 @@ ---- chrome/browser/ui/browser_ui_prefs.cc.orig 2026-08-12 09:02:10 UTC +--- chrome/browser/ui/browser_ui_prefs.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/browser_ui_prefs.cc @@ -91,7 +91,7 @@ void RegisterBrowserPrefs(PrefRegistrySimple* registry registry->RegisterTimePref(prefs::kPinInfoBarLastShown, base::Time()); registry->RegisterIntegerPref(prefs::kPinInfoBarTimesShown, 0); #endif // BUILDFLAG(IS_WIN) || 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) registry->RegisterStringPref(prefs::kEnterpriseCustomLabelForBrowser, std::string()); registry->RegisterStringPref(prefs::kEnterpriseLogoUrlForBrowser, @@ -112,7 +112,7 @@ void RegisterBrowserUserPrefs(user_prefs::PrefRegistry user_prefs::PrefRegistrySyncable::SYNCABLE_PREF; #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) registry->RegisterIntegerPref(prefs::kSessionRestoreInfoBarTimesShown, 0); #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) -@@ -233,7 +233,7 @@ void RegisterBrowserUserPrefs(user_prefs::PrefRegistry +@@ -231,7 +231,7 @@ void RegisterBrowserUserPrefs(user_prefs::PrefRegistry registry->RegisterDictionaryPref(prefs::kHttpsUpgradeFallbacks); registry->RegisterDictionaryPref(prefs::kHttpsUpgradeNavigations); registry->RegisterBooleanPref(prefs::kHttpsOnlyModeAutoEnabled, false); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) registry->RegisterStringPref(prefs::kEnterpriseLogoUrlForProfile, std::string()); registry->RegisterStringPref(prefs::kEnterpriseCustomLabelForProfile, diff --git a/www/chromium/files/patch-chrome_browser_ui_browser__window_internal_browser__window__features.cc b/www/chromium/files/patch-chrome_browser_ui_browser__window_internal_browser__window__features.cc index fb5db0e17b57..7770feea891f 100644 --- a/www/chromium/files/patch-chrome_browser_ui_browser__window_internal_browser__window__features.cc +++ b/www/chromium/files/patch-chrome_browser_ui_browser__window_internal_browser__window__features.cc @@ -1,20 +1,20 @@ ---- chrome/browser/ui/browser_window/internal/browser_window_features.cc.orig 2026-08-12 09:02:10 UTC +--- chrome/browser/ui/browser_window/internal/browser_window_features.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/browser_window/internal/browser_window_features.cc -@@ -213,7 +213,7 @@ +@@ -212,7 +212,7 @@ #include "chrome/browser/ui/startup/default_browser_prompt/pin_infobar/pin_infobar_controller.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/views/session_restore_infobar/session_restore_infobar_controller.h" #endif -@@ -460,7 +460,7 @@ void BrowserWindowFeatures::Init(BrowserWindowInterfac +@@ -462,7 +462,7 @@ void BrowserWindowFeatures::Init(BrowserWindowInterfac browser); #endif // BUILDFLAG(IS_WIN) || 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) profile_customization_bubble_sync_controller_ = std::make_unique(browser, profile); diff --git a/www/chromium/files/patch-chrome_browser_ui_browser__window_public_browser__window__features.h b/www/chromium/files/patch-chrome_browser_ui_browser__window_public_browser__window__features.h index 621198da50ce..17e678d245ff 100644 --- a/www/chromium/files/patch-chrome_browser_ui_browser__window_public_browser__window__features.h +++ b/www/chromium/files/patch-chrome_browser_ui_browser__window_public_browser__window__features.h @@ -1,38 +1,38 @@ ---- chrome/browser/ui/browser_window/public/browser_window_features.h.orig 2026-08-12 09:02:10 UTC +--- chrome/browser/ui/browser_window/public/browser_window_features.h.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/browser_window/public/browser_window_features.h @@ -102,7 +102,7 @@ class ZoomBubbleManager; class WindowsTaskbarIconUpdater; #endif -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) class ProfileCustomizationBubbleSyncController; #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) -@@ -205,7 +205,7 @@ namespace send_tab_to_self { +@@ -201,7 +201,7 @@ namespace send_tab_to_self { class SendTabToSelfToolbarBubbleController; } // namespace send_tab_to_self -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) namespace session_restore_infobar { class SessionRestoreInfobarController; } // namespace session_restore_infobar -@@ -432,7 +432,7 @@ class BrowserWindowFeatures { +@@ -421,7 +421,7 @@ class BrowserWindowFeatures { return pinned_toolbar_actions_; } -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) ProfileCustomizationBubbleSyncController* profile_customization_bubble_sync_controller() { return profile_customization_bubble_sync_controller_.get(); -@@ -740,7 +740,7 @@ class BrowserWindowFeatures { +@@ -724,7 +724,7 @@ class BrowserWindowFeatures { pin_infobar_controller_; #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 profile_customization_bubble_sync_controller_; std::unique_ptr diff --git a/www/chromium/files/patch-chrome_browser_ui_hats_survey__config.cc b/www/chromium/files/patch-chrome_browser_ui_hats_survey__config.cc index 118faa8ae57c..eba0db88d933 100644 --- a/www/chromium/files/patch-chrome_browser_ui_hats_survey__config.cc +++ b/www/chromium/files/patch-chrome_browser_ui_hats_survey__config.cc @@ -1,11 +1,11 @@ ---- chrome/browser/ui/hats/survey_config.cc.orig 2026-08-12 09:02:10 UTC +--- chrome/browser/ui/hats/survey_config.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/hats/survey_config.cc -@@ -586,7 +586,7 @@ std::vector GetAllSurveyConfigs() +@@ -577,7 +577,7 @@ std::vector GetAllSurveyConfigs() &features::kHappinessTrackingSurveysForWallpaperSearch, kHatsSurveyTriggerWallpaperSearch); -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) std::vector identity_string_psd_fields{ "Channel", "Chrome Version", "Number of Chrome Profiles", "Number of Google Accounts", "Sign-in Status"}; diff --git a/www/chromium/files/patch-chrome_browser_ui_prefs_pref__watcher.cc b/www/chromium/files/patch-chrome_browser_ui_prefs_pref__watcher.cc index f5fa70016533..fc83b186b36d 100644 --- a/www/chromium/files/patch-chrome_browser_ui_prefs_pref__watcher.cc +++ b/www/chromium/files/patch-chrome_browser_ui_prefs_pref__watcher.cc @@ -1,29 +1,29 @@ ---- chrome/browser/ui/prefs/pref_watcher.cc.orig 2026-06-04 10:12:25 UTC +--- chrome/browser/ui/prefs/pref_watcher.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/prefs/pref_watcher.cc -@@ -37,7 +37,7 @@ +@@ -38,7 +38,7 @@ #include "components/browser_ui/accessibility/android/font_size_prefs_android.h" #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "ui/linux/linux_ui.h" #include "ui/linux/primary_paste_pref_observer.h" #endif -@@ -92,7 +92,7 @@ const char* const kWebPrefsToObserve[] = { +@@ -93,7 +93,7 @@ const char* const kWebPrefsToObserve[] = { } // namespace -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // A helper class to handle notifying about changes in the // Primary Paste/Middle Click Paste preference on Linux. class PrimaryPastePrefHelper : public ui::PrimaryPastePrefObserver { -@@ -123,7 +123,7 @@ class PrimaryPastePrefHelper : public ui::PrimaryPaste +@@ -124,7 +124,7 @@ class PrimaryPastePrefHelper : public ui::PrimaryPaste PrefWatcher::PrefWatcher(Profile* profile) : profile_(profile) { native_theme_observation_.Observe(ui::NativeTheme::GetInstanceForWeb()); -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) primary_paste_pref_helper_ = std::make_unique(this); #endif diff --git a/www/chromium/files/patch-chrome_browser_ui_sad__tab.cc b/www/chromium/files/patch-chrome_browser_ui_sad__tab.cc index d9a5e4808c36..c99de1abb6b4 100644 --- a/www/chromium/files/patch-chrome_browser_ui_sad__tab.cc +++ b/www/chromium/files/patch-chrome_browser_ui_sad__tab.cc @@ -1,11 +1,11 @@ ---- chrome/browser/ui/sad_tab.cc.orig 2026-06-04 10:12:25 UTC +--- chrome/browser/ui/sad_tab.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/sad_tab.cc -@@ -179,7 +179,7 @@ std::vector SadTab::GetSubMessages() { +@@ -175,7 +175,7 @@ std::vector SadTab::GetSubMessages() { if (!web_contents_->GetBrowserContext()->IsOffTheRecord()) { message_ids.insert(message_ids.begin(), IDS_SAD_TAB_RELOAD_INCOGNITO); } -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Note: on macOS, Linux and ChromeOS, the first bullet is either one of // IDS_SAD_TAB_RELOAD_CLOSE_TABS or IDS_SAD_TAB_RELOAD_CLOSE_NOTABS // followed by one of the above suggestions. 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 77e9f042929b..fad08bb9c78a 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 2026-08-12 09:02:10 UTC +--- chrome/browser/ui/signin/signin_view_controller.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/signin/signin_view_controller.cc -@@ -518,7 +518,7 @@ void SigninViewController::ShowModalSyncConfirmationDi +@@ -584,7 +584,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( bool should_close_modal_dialog, HistorySyncOptinHelper::FlowCompletedCallback callback) { -@@ -535,7 +535,7 @@ void SigninViewController::ShowModalHistorySyncOptInDi +@@ -601,7 +601,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__delegate.h b/www/chromium/files/patch-chrome_browser_ui_signin_signin__view__controller__delegate.h index 3877c5a76577..75ce863526d8 100644 --- a/www/chromium/files/patch-chrome_browser_ui_signin_signin__view__controller__delegate.h +++ b/www/chromium/files/patch-chrome_browser_ui_signin_signin__view__controller__delegate.h @@ -1,20 +1,20 @@ ---- chrome/browser/ui/signin/signin_view_controller_delegate.h.orig 2026-01-14 08:33:23 UTC +--- chrome/browser/ui/signin/signin_view_controller_delegate.h.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/signin/signin_view_controller_delegate.h -@@ -50,7 +50,7 @@ class SigninViewControllerDelegate { +@@ -51,7 +51,7 @@ class SigninViewControllerDelegate { SyncConfirmationStyle style, 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) // Returns a platform-specific SigninViewControllerDelegate instance that // displays the modal history sync opt in dialog. The returned object should // delete itself when the window it's managing is closed. -@@ -93,7 +93,7 @@ class SigninViewControllerDelegate { +@@ -94,7 +94,7 @@ class SigninViewControllerDelegate { SignoutConfirmationCallback callback); #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) // Returns a platform-specific SigninViewContolllerDelegate instance that // displays the managed user notice modal dialog. The returned object // should delete itself when the window it's managing is closed. 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 7b76ed68a127..5caf2ad855d6 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 2026-08-12 09:02:10 UTC +--- chrome/browser/ui/startup/bad_flags_prompt.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/startup/bad_flags_prompt.cc -@@ -120,7 +120,7 @@ const char* const kBadFlags[] = { +@@ -121,7 +121,7 @@ const char* const kBadFlags[] = { extensions::switches::kAllowlistedExtensionID, #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/40078530 switches::kEnableSpeechDispatcher, 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 8a8ac2a2f916..db90b1f5d56f 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,56 +1,74 @@ ---- chrome/browser/ui/startup/startup_browser_creator_impl.cc.orig 2026-08-12 09:02:10 UTC +--- chrome/browser/ui/startup/startup_browser_creator_impl.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/startup/startup_browser_creator_impl.cc -@@ -67,7 +67,7 @@ +@@ -68,7 +68,7 @@ #include "content/public/common/content_switches.h" #include "url/origin.h" -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + #include "base/nix/xdg_util.h" #include "ui/display/screen.h" #endif - -@@ -89,7 +89,7 @@ +@@ -91,7 +91,7 @@ #include "chrome/browser/ui/browser_window/public/profile_browser_collection.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/search_integrity/search_integrity.h" #include "chrome/browser/search_integrity/search_integrity_factory.h" #include "chrome/browser/ui/webui/whats_new/whats_new_fetcher.h" -@@ -162,7 +162,7 @@ Browser* GetExistingBrowserForOpenBehavior( +@@ -164,7 +164,7 @@ Browser* GetExistingBrowserForOpenBehavior( BrowserCollection::Order::kActivation); #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) const bool match_original_profiles = process_startup == chrome::startup::IsProcessStartup::kYes; display::Screen* const screen = display::Screen::Get(); -@@ -250,7 +250,7 @@ void StartupBrowserCreatorImpl::Launch( +@@ -252,7 +252,7 @@ void StartupBrowserCreatorImpl::Launch( DCHECK(profile); 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) // Check for DSE integrity if flag is enabled. if (base::FeatureList::IsEnabled(features::kDseIntegrity)) { if (auto* search_integrity_service = -@@ -321,7 +321,7 @@ Browser* StartupBrowserCreatorImpl::OpenTabsInBrowser( +@@ -306,7 +306,7 @@ Browser* StartupBrowserCreatorImpl::OpenTabsInBrowser( + profile_ = browser->GetProfile(); + } + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + std::string startup_id = + command_line_->GetSwitchValueASCII(base::nix::kXdgActivationTokenSwitch); + if (startup_id.empty()) { +@@ -332,7 +332,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"); + params.startup_id = startup_id; #endif -@@ -351,7 +351,7 @@ Browser* StartupBrowserCreatorImpl::OpenTabsInBrowser( + if (command_line_->HasSwitch(switches::kWindowName)) { +@@ -366,7 +366,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 +@@ -457,7 +457,7 @@ Browser* StartupBrowserCreatorImpl::OpenTabsInBrowser( + } + } + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + if (!create_new_browser && !startup_id.empty()) { + base::nix::SetActivationToken(startup_id); + } 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 9cdca95793dc..706f6abf9716 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 2026-08-12 09:02:10 UTC +--- chrome/browser/ui/tab_helpers.cc.orig 2026-08-31 10:59:09 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/hats/hats_helper.h" #include "chrome/browser/ui/performance_controls/performance_controls_hats_service_factory.h" -@@ -750,12 +750,12 @@ void TabHelpers::AttachTabHelpers(WebContents* web_con +@@ -780,12 +780,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_public_tab__features.h b/www/chromium/files/patch-chrome_browser_ui_tabs_public_tab__features.h index 3fa1e13153db..b0b5df4bcb6c 100644 --- a/www/chromium/files/patch-chrome_browser_ui_tabs_public_tab__features.h +++ b/www/chromium/files/patch-chrome_browser_ui_tabs_public_tab__features.h @@ -1,29 +1,29 @@ ---- chrome/browser/ui/tabs/public/tab_features.h.orig 2026-08-12 09:02:10 UTC +--- chrome/browser/ui/tabs/public/tab_features.h.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/tabs/public/tab_features.h -@@ -159,7 +159,7 @@ class TabContextualizationController; +@@ -161,7 +161,7 @@ class TabContextualizationController; } // namespace lens #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) namespace wallet { class ChromeWalletablePassClient; } // namespace wallet -@@ -574,7 +574,7 @@ class TabFeatures { +@@ -593,7 +593,7 @@ class TabFeatures { page_context_eligibility_helper_; #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) std::unique_ptr walletable_pass_client_; #endif -@@ -585,7 +585,7 @@ class TabFeatures { - std::unique_ptr skills_update_observer_; +@@ -605,7 +605,7 @@ class TabFeatures { #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) + #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || \ +- BUILDFLAG(IS_CHROMEOS) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) std::unique_ptr saas_usage_navigation_observer_; #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) 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 158584d51e56..cfed9210d233 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-12-05 10:12:50 UTC +--- chrome/browser/ui/tabs/tab_dialog_manager.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/tabs/tab_dialog_manager.cc -@@ -90,7 +90,7 @@ bool SupportsGlobalScreenCoordinates() { +@@ -89,7 +89,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 d57200023479..1e28d7f39bb5 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,38 +1,38 @@ ---- chrome/browser/ui/tabs/tab_features.cc.orig 2026-08-12 09:02:10 UTC +--- chrome/browser/ui/tabs/tab_features.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/tabs/tab_features.cc -@@ -107,7 +107,7 @@ +@@ -111,7 +111,7 @@ #include "components/multistep_filter/core/features.h" #include "components/skills/features.h" #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "chrome/browser/contextual_tasks/contextual_tasks_tab_visit_tracker.h" #include "chrome/browser/record_replay/chrome_record_replay_client.h" #include "chrome/browser/ui/views/location_bar/record_replay_page_action_controller.h" -@@ -544,7 +544,7 @@ void TabFeatures::Init(TabInterface& tab, Profile* pro +@@ -531,7 +531,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(); -@@ -635,7 +635,7 @@ void TabFeatures::Init(TabInterface& tab, Profile* pro - GetUserDataFactory().CreateInstance( +@@ -627,7 +627,7 @@ void TabFeatures::Init(TabInterface& tab, Profile* pro tab, tab); --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) + #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || \ +- BUILDFLAG(IS_CHROMEOS) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) if (base::FeatureList::IsEnabled(enterprise_reporting::kSaasUsageReporting)) { saas_usage_navigation_observer_ = std::make_unique( -@@ -644,7 +644,7 @@ void TabFeatures::Init(TabInterface& tab, Profile* pro +@@ -636,7 +636,7 @@ void TabFeatures::Init(TabInterface& tab, Profile* pro #endif #if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) if (base::FeatureList::IsEnabled(multistep_filter::kMultistepFilter)) { filter_ui_controller_ = GetUserDataFactory() diff --git a/www/chromium/files/patch-chrome_browser_ui_toolbar_app__menu__model.cc b/www/chromium/files/patch-chrome_browser_ui_toolbar_app__menu__model.cc index 3388af40d80c..8ef4634e8fab 100644 --- a/www/chromium/files/patch-chrome_browser_ui_toolbar_app__menu__model.cc +++ b/www/chromium/files/patch-chrome_browser_ui_toolbar_app__menu__model.cc @@ -1,20 +1,20 @@ ---- chrome/browser/ui/toolbar/app_menu_model.cc.orig 2026-08-12 09:02:10 UTC +--- chrome/browser/ui/toolbar/app_menu_model.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/toolbar/app_menu_model.cc -@@ -252,7 +252,7 @@ std::u16string GetUpgradeDialogTitleText() { +@@ -262,7 +262,7 @@ std::u16string GetUpgradeDialogTitleText() { return l10n_util::GetStringUTF16(IDS_UPGRADE_BUBBLE_MENU_ITEM); } #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)) return l10n_util::GetStringUTF16(IDS_RELAUNCH_TO_UPDATE_ALT); #else return l10n_util::GetStringUTF16(IDS_RELAUNCH_TO_UPDATE); -@@ -2342,7 +2342,7 @@ void AppMenuModel::Build() { +@@ -2457,7 +2457,7 @@ void AppMenuModel::Build() { SetAccessibleNameAt(GetIndexOfCommandId(IDC_SHOW_MANAGEMENT_PAGE).value(), - GetManagedUiMenuItemTooltip(browser_->profile())); + GetManagedUiMenuItemTooltip(browser_->GetProfile())); -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - if (enterprise_util::IsBrowserManaged(browser_->profile()) && + if (enterprise_util::IsBrowserManaged(browser_->GetProfile()) && base::FeatureList::IsEnabled(features::kEnterpriseReleaseNotes)) { AddItemWithStringIdAndVectorIcon( 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 7a7374a0a211..f13d120f17c4 100644 --- a/www/chromium/files/patch-chrome_browser_ui_ui__features.cc +++ b/www/chromium/files/patch-chrome_browser_ui_ui__features.cc @@ -1,29 +1,29 @@ ---- chrome/browser/ui/ui_features.cc.orig 2026-08-12 09:02:10 UTC +--- chrome/browser/ui/ui_features.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/ui_features.cc @@ -102,7 +102,7 @@ bool IsWebuiRefresh2026Enabled() { base::FeatureList::IsEnabled(kWebuiRefresh2026); } -#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(kDseIntegrity, base::FEATURE_ENABLED_BY_DEFAULT); // Enables the feature to remove the last confirmation dialog when relaunching // to update Chrome. -@@ -325,7 +325,7 @@ BASE_FEATURE(kManagedProfileRequiredInterstitial, +@@ -325,7 +325,7 @@ BASE_FEATURE(kMigrateManagementPageToWebUIOnMobile, 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, base::FEATURE_ENABLED_BY_DEFAULT); #endif -@@ -433,7 +433,7 @@ bool IsBookmarkTabGroupConversionEnabled() { +@@ -368,7 +368,7 @@ bool IsBookmarkTabGroupConversionEnabled() { return base::FeatureList::IsEnabled(kBookmarkTabGroupConversion); } -#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(kSessionRestoreInfobar, base::FEATURE_DISABLED_BY_DEFAULT); BASE_FEATURE_PARAM(bool, 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 57cb9caf564b..a046a4d3afbb 100644 --- a/www/chromium/files/patch-chrome_browser_ui_ui__features.h +++ b/www/chromium/files/patch-chrome_browser_ui_ui__features.h @@ -1,29 +1,29 @@ ---- chrome/browser/ui/ui_features.h.orig 2026-08-12 09:02:10 UTC +--- chrome/browser/ui/ui_features.h.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/ui_features.h @@ -30,7 +30,7 @@ BASE_DECLARE_FEATURE(kCreateNewTabGroupAppMenuTopLevel BASE_DECLARE_FEATURE(kCtrlTabMru); -#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(kDseIntegrity); BASE_DECLARE_FEATURE(kFewerUpdateConfirmations); - #endif -@@ -83,7 +83,7 @@ BASE_DECLARE_FEATURE_PARAM(int, + BASE_DECLARE_FEATURE(kLegacySearchIntegrityCheck); +@@ -84,7 +84,7 @@ BASE_DECLARE_FEATURE_PARAM(int, BASE_DECLARE_FEATURE_PARAM(int, kSeparateDefaultAndPinPromptMessageVersion); #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // When enabled, user may see the session restore UI flow. BASE_DECLARE_FEATURE(kSessionRestoreInfobar); -@@ -276,7 +276,7 @@ BASE_DECLARE_FEATURE(kManagedProfileRequiredInterstiti +@@ -280,7 +280,7 @@ BASE_DECLARE_FEATURE(kMigrateManagementPageToWebUIOnMo 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_chrome__browser__main__extra__parts__views.cc b/www/chromium/files/patch-chrome_browser_ui_views_chrome__browser__main__extra__parts__views.cc index a1e8b2eb01f2..cb0d35b29451 100644 --- a/www/chromium/files/patch-chrome_browser_ui_views_chrome__browser__main__extra__parts__views.cc +++ b/www/chromium/files/patch-chrome_browser_ui_views_chrome__browser__main__extra__parts__views.cc @@ -1,20 +1,20 @@ ---- chrome/browser/ui/views/chrome_browser_main_extra_parts_views.cc.orig 2026-08-12 09:02:10 UTC +--- chrome/browser/ui/views/chrome_browser_main_extra_parts_views.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/views/chrome_browser_main_extra_parts_views.cc -@@ -50,7 +50,7 @@ +@@ -49,7 +49,7 @@ #include "ui/wm/core/wm_state.h" #endif // defined(USE_AURA) -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include #include #include -@@ -137,7 +137,7 @@ void ChromeBrowserMainExtraPartsViews::PreProfileInit( +@@ -136,7 +136,7 @@ void ChromeBrowserMainExtraPartsViews::PreProfileInit( return controller; })); -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // On the Linux desktop, we want to prevent the user from logging in as root, // so that we don't destroy the profile. Now that we have some minimal ui // initialized, check to see if we're running as root and bail if we are. diff --git a/www/chromium/files/patch-chrome_browser_ui_views_data__sharing_collaboration__controller__delegate__desktop.cc b/www/chromium/files/patch-chrome_browser_ui_views_data__sharing_collaboration__controller__delegate__desktop.cc index 5447eb3862e8..95eb97bde0d6 100644 --- a/www/chromium/files/patch-chrome_browser_ui_views_data__sharing_collaboration__controller__delegate__desktop.cc +++ b/www/chromium/files/patch-chrome_browser_ui_views_data__sharing_collaboration__controller__delegate__desktop.cc @@ -1,47 +1,47 @@ ---- chrome/browser/ui/views/data_sharing/collaboration_controller_delegate_desktop.cc.orig 2026-05-07 17:02:56 UTC +--- chrome/browser/ui/views/data_sharing/collaboration_controller_delegate_desktop.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/views/data_sharing/collaboration_controller_delegate_desktop.cc @@ -96,7 +96,7 @@ DialogText GetPromptDialogTextFromStatus( break; } -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (syncer::IsReplaceSyncPromosWithSignInPromosEnabled() && status.signin_status != collaboration::SigninStatus::kSigninDisabled) { title_id = IDS_SYNC_HISTORY_TITLE; @@ -433,7 +433,7 @@ void CollaborationControllerDelegateDesktop::ShowError chrome::ShowBrowserModal(browser_, std::move(dialog_model)); } -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) void CollaborationControllerDelegateDesktop:: MaybeShowSignInUiForHistorySyncOptin() { collaboration::ServiceStatus status = GetServiceStatus(); @@ -518,7 +518,7 @@ void CollaborationControllerDelegateDesktop:: } AccountInfo account_for_promo = -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) signin_ui_util::GetSingleAccountForPromos( - IdentityManagerFactory::GetForProfile(browser_->profile())); + IdentityManagerFactory::GetForProfile(browser_->GetProfile())); #else @@ -553,7 +553,7 @@ void CollaborationControllerDelegateDesktop:: .SetLabel(dialog_text.ok_button_text) .SetEnabled(true)); -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (syncer::IsReplaceSyncPromosWithSignInPromosEnabled()) { dialog_builder.SetFootnote(ui::DialogModelLabel(dialog_text.footnote)); @@ -602,7 +602,7 @@ void CollaborationControllerDelegateDesktop::OnPromptD .Run(CollaborationControllerDelegate::Outcome::kSuccess); } -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (syncer::IsReplaceSyncPromosWithSignInPromosEnabled()) { MaybeShowSignInUiForHistorySyncOptin(); return; diff --git a/www/chromium/files/patch-chrome_browser_ui_views_data__sharing_collaboration__controller__delegate__desktop.h b/www/chromium/files/patch-chrome_browser_ui_views_data__sharing_collaboration__controller__delegate__desktop.h index 09cf53d154cd..309f5ad48fb0 100644 --- a/www/chromium/files/patch-chrome_browser_ui_views_data__sharing_collaboration__controller__delegate__desktop.h +++ b/www/chromium/files/patch-chrome_browser_ui_views_data__sharing_collaboration__controller__delegate__desktop.h @@ -1,11 +1,11 @@ ---- chrome/browser/ui/views/data_sharing/collaboration_controller_delegate_desktop.h.orig 2026-03-13 06:02:14 UTC +--- chrome/browser/ui/views/data_sharing/collaboration_controller_delegate_desktop.h.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/views/data_sharing/collaboration_controller_delegate_desktop.h -@@ -81,7 +81,7 @@ class CollaborationControllerDelegateDesktop +@@ -80,7 +80,7 @@ class CollaborationControllerDelegateDesktop std::optional progress); void ShowErrorDialog(const ErrorInfo& error); -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) void MaybeShowSignInUiForHistorySyncOptin(); #endif void MaybeShowSignInAndSyncUi(); diff --git a/www/chromium/files/patch-chrome_browser_ui_views_frame_browser__frame__view__factory__views.cc b/www/chromium/files/patch-chrome_browser_ui_views_frame_browser__frame__view__factory__views.cc index c394f6457440..53b439712329 100644 --- a/www/chromium/files/patch-chrome_browser_ui_views_frame_browser__frame__view__factory__views.cc +++ b/www/chromium/files/patch-chrome_browser_ui_views_frame_browser__frame__view__factory__views.cc @@ -1,20 +1,20 @@ ---- chrome/browser/ui/views/frame/browser_frame_view_factory_views.cc.orig 2026-06-04 10:12:25 UTC +--- chrome/browser/ui/views/frame/browser_frame_view_factory_views.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/views/frame/browser_frame_view_factory_views.cc -@@ -17,7 +17,7 @@ - #include "chrome/browser/ui/views/frame/browser_frame_view_win.h" +@@ -16,7 +16,7 @@ + #include "chrome/browser/ui/views/frame/picture_in_picture_browser_frame_view.h" #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "chrome/browser/ui/views/frame/browser_frame_view_layout_linux.h" #include "chrome/browser/ui/views/frame/browser_frame_view_layout_linux_native.h" - #include "chrome/browser/ui/views/frame/browser_frame_view_linux_native.h" -@@ -33,7 +33,7 @@ namespace chrome { + #include "chrome/browser/ui/views/frame/browser_frame_view_linux.h" +@@ -31,7 +31,7 @@ namespace chrome { namespace { -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) std::unique_ptr CreateOpaqueBrowserFrameViewLinux( BrowserWidget* widget, BrowserView* browser_view) { diff --git a/www/chromium/files/patch-chrome_browser_ui_views_frame_browser__frame__view__layout__linux.cc b/www/chromium/files/patch-chrome_browser_ui_views_frame_browser__frame__view__layout__linux.cc index e6b320026fc9..27ebeed5392f 100644 --- a/www/chromium/files/patch-chrome_browser_ui_views_frame_browser__frame__view__layout__linux.cc +++ b/www/chromium/files/patch-chrome_browser_ui_views_frame_browser__frame__view__layout__linux.cc @@ -1,11 +1,11 @@ ---- chrome/browser/ui/views/frame/browser_frame_view_layout_linux.cc.orig 2026-07-01 06:24:19 UTC +--- chrome/browser/ui/views/frame/browser_frame_view_layout_linux.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/views/frame/browser_frame_view_layout_linux.cc -@@ -54,7 +54,7 @@ gfx::Insets BrowserFrameViewLayoutLinux::RestoredFrame +@@ -52,7 +52,7 @@ gfx::Insets BrowserFrameViewLayoutLinux::RestoredFrame OpaqueBrowserFrameViewLayout::RestoredFrameBorderInsets()); } -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) const bool tiled = delegate_->IsTiled(); #else const bool tiled = false; diff --git a/www/chromium/files/patch-chrome_browser_ui_views_frame_browser__frame__view__linux.cc b/www/chromium/files/patch-chrome_browser_ui_views_frame_browser__frame__view__linux.cc index e107e94e4777..ad0d972e1a8d 100644 --- a/www/chromium/files/patch-chrome_browser_ui_views_frame_browser__frame__view__linux.cc +++ b/www/chromium/files/patch-chrome_browser_ui_views_frame_browser__frame__view__linux.cc @@ -1,20 +1,20 @@ ---- chrome/browser/ui/views/frame/browser_frame_view_linux.cc.orig 2026-06-04 10:12:25 UTC +--- chrome/browser/ui/views/frame/browser_frame_view_linux.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/views/frame/browser_frame_view_linux.cc -@@ -71,7 +71,7 @@ gfx::ShadowValues BrowserFrameViewLinux::GetShadowValu +@@ -70,7 +70,7 @@ gfx::ShadowValues BrowserFrameViewLinux::GetShadowValu void BrowserFrameViewLinux::PaintRestoredFrameBorder( gfx::Canvas* canvas) const { -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) const bool tiled = browser_widget()->tiled(); #else const bool tiled = false; -@@ -126,7 +126,7 @@ int BrowserFrameViewLinux::NonClientHitTest(const gfx: +@@ -125,7 +125,7 @@ int BrowserFrameViewLinux::NonClientHitTest(const gfx: } float BrowserFrameViewLinux::GetRestoredCornerRadiusDip() const { -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) const bool tiled = browser_widget()->tiled(); #else const bool tiled = false; 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 a69caa63d10f..94ed7ebc6515 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,29 +1,29 @@ ---- chrome/browser/ui/views/frame/browser_view.cc.orig 2026-08-12 09:02:10 UTC +--- chrome/browser/ui/views/frame/browser_view.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/views/frame/browser_view.cc -@@ -2422,7 +2422,7 @@ void BrowserView::ToolbarSizeChanged(bool is_animating +@@ -2431,7 +2431,7 @@ void BrowserView::ToolbarSizeChanged(bool is_animating } void BrowserView::TabDraggingStatusChanged(bool is_dragging) { -#if !BUILDFLAG(IS_LINUX) +#if !BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_BSD) UpdateFastResizeForContentViews(is_dragging); if (!is_dragging) { -@@ -5669,7 +5669,7 @@ void BrowserView::MaybeShowProfileSwitchIPH() { +@@ -5758,7 +5758,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; } -@@ -5680,7 +5680,7 @@ void BrowserView::MaybeShowSupervisedUserProfileSignIn +@@ -5769,7 +5769,7 @@ void BrowserView::MaybeShowSupervisedUserProfileSignIn } void BrowserView::MaybeShowSignInBenefitsIPH() { -#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_browser__widget.cc b/www/chromium/files/patch-chrome_browser_ui_views_frame_browser__widget.cc index 6e58447365aa..902ac181a554 100644 --- a/www/chromium/files/patch-chrome_browser_ui_views_frame_browser__widget.cc +++ b/www/chromium/files/patch-chrome_browser_ui_views_frame_browser__widget.cc @@ -1,47 +1,56 @@ ---- chrome/browser/ui/views/frame/browser_widget.cc.orig 2026-08-12 09:02:10 UTC +--- chrome/browser/ui/views/frame/browser_widget.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/views/frame/browser_widget.cc -@@ -56,7 +56,7 @@ +@@ -47,7 +47,7 @@ #include "ui/aura/window.h" #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "ui/linux/linux_ui.h" #endif -@@ -90,7 +90,7 @@ class ThemeChangedObserver : public views::WidgetObser +@@ -86,7 +86,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; -@@ -207,7 +207,7 @@ void BrowserWidget::InitBrowserWidget() { +@@ -163,7 +163,7 @@ void BrowserWidget::InitBrowserWidget() { + #endif + } + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + params.startup_id = + BrowserInitState::From(browser)->create_params().startup_id; + #endif +@@ -209,7 +209,7 @@ void BrowserWidget::InitBrowserWidget() { Init(std::move(params)); -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) SelectNativeTheme(); #else SetNativeTheme(ui::NativeTheme::GetInstanceForNativeUi()); -@@ -490,7 +490,7 @@ void BrowserWidget::OnMenuClosed() { +@@ -493,7 +493,7 @@ void BrowserWidget::OnMenuClosed() { } void BrowserWidget::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(); -@@ -531,7 +531,7 @@ void BrowserWidget::OnTouchUiChanged() { +@@ -534,7 +534,7 @@ void BrowserWidget::OnTouchUiChanged() { bool BrowserWidget::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_contents__web__view.cc b/www/chromium/files/patch-chrome_browser_ui_views_frame_contents__web__view.cc index 9505096382a2..e283fbe37051 100644 --- a/www/chromium/files/patch-chrome_browser_ui_views_frame_contents__web__view.cc +++ b/www/chromium/files/patch-chrome_browser_ui_views_frame_contents__web__view.cc @@ -1,11 +1,11 @@ ---- chrome/browser/ui/views/frame/contents_web_view.cc.orig 2026-07-01 06:24:19 UTC +--- chrome/browser/ui/views/frame/contents_web_view.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/views/frame/contents_web_view.cc -@@ -171,7 +171,7 @@ void ContentsWebView::SetWebContents(content::WebConte +@@ -169,7 +169,7 @@ void ContentsWebView::SetWebContents(content::WebConte } } -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) void ContentsWebView::DidGetUserInteraction(const blink::WebInputEvent& event) { // If the user interacts with the web contents, ensure it is activated. // This handles cases where the native window does not receive a focus diff --git a/www/chromium/files/patch-chrome_browser_ui_views_frame_horizontal__tab__strip__region__view.cc b/www/chromium/files/patch-chrome_browser_ui_views_frame_horizontal__tab__strip__region__view.cc index ab2427a23459..06a4c5a00889 100644 --- a/www/chromium/files/patch-chrome_browser_ui_views_frame_horizontal__tab__strip__region__view.cc +++ b/www/chromium/files/patch-chrome_browser_ui_views_frame_horizontal__tab__strip__region__view.cc @@ -1,11 +1,11 @@ ---- chrome/browser/ui/views/frame/horizontal_tab_strip_region_view.cc.orig 2026-08-12 09:02:10 UTC +--- chrome/browser/ui/views/frame/horizontal_tab_strip_region_view.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/views/frame/horizontal_tab_strip_region_view.cc -@@ -251,7 +251,7 @@ HorizontalTabStripRegionView::HorizontalTabStripRegion +@@ -246,7 +246,7 @@ HorizontalTabStripRegionViewOld::HorizontalTabStripReg new_tab_button_->GetViewAccessibility().SetName( l10n_util::GetStringUTF16(IDS_ACCNAME_NEWTAB)); -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // On Linux, middle-clicking the New Tab Button triggers // paste and navigate, either to URLs or to search queries. new_tab_button_->SetTriggerableEventFlags( diff --git a/www/chromium/files/patch-chrome_browser_ui_views_frame_multi__contents__view__drop__target__controller.cc b/www/chromium/files/patch-chrome_browser_ui_views_frame_multi__contents__view__drop__target__controller.cc index f740c6adf25a..757bd66d276c 100644 --- a/www/chromium/files/patch-chrome_browser_ui_views_frame_multi__contents__view__drop__target__controller.cc +++ b/www/chromium/files/patch-chrome_browser_ui_views_frame_multi__contents__view__drop__target__controller.cc @@ -1,11 +1,11 @@ ---- chrome/browser/ui/views/frame/multi_contents_view_drop_target_controller.cc.orig 2026-08-12 09:02:10 UTC +--- chrome/browser/ui/views/frame/multi_contents_view_drop_target_controller.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/views/frame/multi_contents_view_drop_target_controller.cc -@@ -59,7 +59,7 @@ int MultiContentsViewDropTargetController::DropTargetC +@@ -57,7 +57,7 @@ int MultiContentsViewDropTargetController::DropTargetC return #if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_WIN) 32; -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) 50; #else 0; 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 7cb901496038..05443ddc8c90 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 2026-07-01 06:24:19 UTC +--- chrome/browser/ui/views/frame/opaque_browser_frame_view.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/views/frame/opaque_browser_frame_view.cc -@@ -60,7 +60,7 @@ +@@ -57,7 +57,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 -@@ -599,7 +599,7 @@ bool OpaqueBrowserFrameView::IsFrameCondensed() const +@@ -596,7 +596,7 @@ bool OpaqueBrowserFrameView::IsFrameCondensed() const OpaqueBrowserFrameView::FrameButtonStyle OpaqueBrowserFrameView::GetFrameButtonStyle() const { -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) return FrameButtonStyle::kMdButton; #else return FrameButtonStyle::kImageButton; -@@ -618,7 +618,7 @@ bool OpaqueBrowserFrameView::ShouldDrawRestoredFrameSh +@@ -615,7 +615,7 @@ bool OpaqueBrowserFrameView::ShouldDrawRestoredFrameSh return false; } -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) bool OpaqueBrowserFrameView::IsTiled() const { return browser_widget()->tiled(); } -@@ -862,7 +862,7 @@ gfx::Rect OpaqueBrowserFrameView::GetIconBounds() cons +@@ -859,7 +859,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_system__menu__model__delegate.cc b/www/chromium/files/patch-chrome_browser_ui_views_frame_system__menu__model__delegate.cc index be4255f2f157..00bee4103371 100644 --- a/www/chromium/files/patch-chrome_browser_ui_views_frame_system__menu__model__delegate.cc +++ b/www/chromium/files/patch-chrome_browser_ui_views_frame_system__menu__model__delegate.cc @@ -1,29 +1,29 @@ ---- chrome/browser/ui/views/frame/system_menu_model_delegate.cc.orig 2026-08-12 09:02:10 UTC +--- chrome/browser/ui/views/frame/system_menu_model_delegate.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/views/frame/system_menu_model_delegate.cc -@@ -31,7 +31,7 @@ +@@ -30,7 +30,7 @@ #include "chromeos/ui/frame/desks/move_to_desks_menu_model.h" #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "chrome/common/pref_names.h" #endif -@@ -50,7 +50,7 @@ SystemMenuModelDelegate::SystemMenuModelDelegate( +@@ -49,7 +49,7 @@ SystemMenuModelDelegate::SystemMenuModelDelegate( SystemMenuModelDelegate::~SystemMenuModelDelegate() = default; bool SystemMenuModelDelegate::IsCommandIdChecked(int command_id) const { -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (command_id == IDC_USE_SYSTEM_TITLE_BAR) { - PrefService* prefs = browser_->profile()->GetPrefs(); + PrefService* prefs = browser_->GetProfile()->GetPrefs(); return !prefs->GetBoolean(prefs::kUseCustomChromeFrame); -@@ -94,7 +94,7 @@ bool SystemMenuModelDelegate::IsCommandIdEnabled(int c +@@ -93,7 +93,7 @@ bool SystemMenuModelDelegate::IsCommandIdEnabled(int c } bool SystemMenuModelDelegate::IsCommandIdVisible(int command_id) const { -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) bool is_maximized = browser_->GetWindow()->IsMaximized(); switch (command_id) { case IDC_MAXIMIZE_WINDOW: diff --git a/www/chromium/files/patch-chrome_browser_ui_views_location__bar_location__bar__view.cc b/www/chromium/files/patch-chrome_browser_ui_views_location__bar_location__bar__view.cc index 41ed4ff669e9..8b68f095dd00 100644 --- a/www/chromium/files/patch-chrome_browser_ui_views_location__bar_location__bar__view.cc +++ b/www/chromium/files/patch-chrome_browser_ui_views_location__bar_location__bar__view.cc @@ -1,11 +1,11 @@ ---- chrome/browser/ui/views/location_bar/location_bar_view.cc.orig 2026-08-12 09:02:10 UTC +--- chrome/browser/ui/views/location_bar/location_bar_view.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/views/location_bar/location_bar_view.cc -@@ -1921,7 +1921,7 @@ void LocationBarView::OnPopupStateChanged(OmniboxPopup +@@ -1817,7 +1817,7 @@ void LocationBarView::OnPopupStateChanged(OmniboxPopup } } -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (new_state != OmniboxPopupState::kNone) { // Close any overlapping user education bubbles when any popup opens. // It's not great for promos to overlap the omnibox if the user opens the 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 17a3d8723e7a..010d27a3d1f5 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 2026-05-07 17:02:56 UTC +--- chrome/browser/ui/views/new_tab_footer/footer_controller.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/views/new_tab_footer/footer_controller.cc -@@ -45,7 +45,7 @@ NewTabFooterController::NewTabFooterController( +@@ -46,7 +46,7 @@ NewTabFooterController::NewTabFooterController( base::BindRepeating(&NewTabFooterController::UpdateFooterVisibilities, 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_passwords_password__bubble__view__base.cc b/www/chromium/files/patch-chrome_browser_ui_views_passwords_password__bubble__view__base.cc index 17f3fcf6ef6a..bc78f269a107 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 2026-08-12 09:02:10 UTC +--- chrome/browser/ui/views/passwords/password_bubble_view_base.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/views/passwords/password_bubble_view_base.cc -@@ -43,7 +43,7 @@ +@@ -36,7 +36,7 @@ + #include "components/tabs/public/tab_interface.h" #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 -@@ -165,7 +165,7 @@ PasswordBubbleViewBase* PasswordBubbleViewBase::Create +@@ -158,7 +158,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__state__manager.cc b/www/chromium/files/patch-chrome_browser_ui_views_profiles_avatar__toolbar__button__state__manager.cc index bfbdc6da9342..462bf1598e4f 100644 --- a/www/chromium/files/patch-chrome_browser_ui_views_profiles_avatar__toolbar__button__state__manager.cc +++ b/www/chromium/files/patch-chrome_browser_ui_views_profiles_avatar__toolbar__button__state__manager.cc @@ -1,11 +1,11 @@ ---- chrome/browser/ui/views/profiles/avatar_toolbar_button_state_manager.cc.orig 2026-08-12 09:02:10 UTC +--- chrome/browser/ui/views/profiles/avatar_toolbar_button_state_manager.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/views/profiles/avatar_toolbar_button_state_manager.cc -@@ -2609,7 +2609,7 @@ void AvatarToolbarButtonStateManager::MaybeShowProfile +@@ -2620,7 +2620,7 @@ void AvatarToolbarButtonStateManager::MaybeShowProfile } } -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) void AvatarToolbarButtonStateManager::MaybeShowSupervisedUserSignInIPH() { if (!base::FeatureList::IsEnabled( feature_engagement::kIPHSupervisedUserProfileSigninFeature)) { diff --git a/www/chromium/files/patch-chrome_browser_ui_views_profiles_first__run__flow__controller.cc b/www/chromium/files/patch-chrome_browser_ui_views_profiles_first__run__flow__controller.cc index 428339daaae0..eace876c4845 100644 --- a/www/chromium/files/patch-chrome_browser_ui_views_profiles_first__run__flow__controller.cc +++ b/www/chromium/files/patch-chrome_browser_ui_views_profiles_first__run__flow__controller.cc @@ -1,20 +1,20 @@ ---- chrome/browser/ui/views/profiles/first_run_flow_controller.cc.orig 2026-08-12 09:02:10 UTC +--- chrome/browser/ui/views/profiles/first_run_flow_controller.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/views/profiles/first_run_flow_controller.cc -@@ -87,7 +87,7 @@ +@@ -86,7 +86,7 @@ #include "chrome/installer/util/shell_util.h" #endif -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "base/check_deref.h" #include "chrome/browser/browser_process.h" #include "chrome/browser/global_features.h" -@@ -1164,7 +1164,7 @@ bool FirstRunFlowController::AreEffectsEnabled() const +@@ -1198,7 +1198,7 @@ bool FirstRunFlowController::AreEffectsEnabled() const } void FirstRunFlowController::MaybeTriggerHatsSurvey() { -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // No variations seed is available on Mac and Linux at the very first run of // Chrome. Check the locale manually to make sure the survey is enabled for // only eligible users. Do the locale check before the feature check to avoid 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 179b289c6902..3f6ed8d4e73f 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 2026-06-04 10:12:25 UTC +--- chrome/browser/ui/views/profiles/profile_menu_coordinator.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/views/profiles/profile_menu_coordinator.cc -@@ -82,7 +82,7 @@ void ProfileMenuCoordinator::ShowWithPromoResults( +@@ -80,7 +80,7 @@ void ProfileMenuCoordinator::ShowWithPromoResults( ->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) BrowserUserEducationInterface::From(GetBrowser()) ->NotifyFeaturePromoFeatureUsed( feature_engagement::kIPHSupervisedUserProfileSigninFeature, 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 8f77ce9b0cc2..017d383a21b7 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,20 +1,20 @@ ---- chrome/browser/ui/views/profiles/profile_menu_view.cc.orig 2026-08-12 09:02:10 UTC +--- chrome/browser/ui/views/profiles/profile_menu_view.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/views/profiles/profile_menu_view.cc -@@ -119,7 +119,7 @@ +@@ -104,7 +104,7 @@ #include "chrome/browser/signin/cross_device_signin_promo_manager.h" #endif // BUILDFLAG(ENABLE_DICE_SUPPORT) -#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 -@@ -603,7 +603,7 @@ void ProfileMenuView::SetMenuTitleForAccessibility() { +@@ -591,7 +591,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( enterprise_signin::prefs::kProfileUserDisplayName); profile_user_email = profile().GetPrefs()->GetString( diff --git a/www/chromium/files/patch-chrome_browser_ui_views_profiles_profile__picker__view.cc b/www/chromium/files/patch-chrome_browser_ui_views_profiles_profile__picker__view.cc index cd0c2416d038..1c5c169aa605 100644 --- a/www/chromium/files/patch-chrome_browser_ui_views_profiles_profile__picker__view.cc +++ b/www/chromium/files/patch-chrome_browser_ui_views_profiles_profile__picker__view.cc @@ -1,11 +1,11 @@ ---- chrome/browser/ui/views/profiles/profile_picker_view.cc.orig 2026-08-12 09:02:10 UTC +--- chrome/browser/ui/views/profiles/profile_picker_view.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/views/profiles/profile_picker_view.cc -@@ -87,7 +87,7 @@ +@@ -89,7 +89,7 @@ #include "chrome/browser/global_keyboard_shortcuts_mac.h" #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "chrome/browser/shell_integration_linux.h" #endif 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 6fca521aeedb..a70b70e62ac5 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 2026-08-12 09:02:10 UTC +--- chrome/browser/ui/views/profiles/signin_view_controller_delegate_views.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/views/profiles/signin_view_controller_delegate_views.cc -@@ -65,14 +65,14 @@ +@@ -62,14 +62,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 = 780; const int kManagedUserNoticeConfirmationDialogHeight = 560; #endif -@@ -140,7 +140,7 @@ SigninViewControllerDelegateViews::CreateSyncConfirmat +@@ -137,7 +137,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, -@@ -248,7 +248,7 @@ SigninViewControllerDelegateViews::CreateSignoutConfir +@@ -245,7 +245,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( -@@ -433,7 +433,7 @@ SigninViewControllerDelegateViews::SigninViewControlle +@@ -436,7 +436,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) { -@@ -525,7 +525,7 @@ void SigninViewControllerDelegateViews::DisplayModal() - content_view_->RequestFocus(); +@@ -555,7 +555,7 @@ void SigninViewControllerDelegateViews::DetachFromWebC + } } -#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() -@@ -563,7 +563,7 @@ SigninViewControllerDelegate::CreateSyncConfirmationDe +@@ -593,7 +593,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( -@@ -625,7 +625,7 @@ SigninViewControllerDelegate::CreateSignoutConfirmatio +@@ -655,7 +655,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_profiles_signin__view__controller__delegate__views.h b/www/chromium/files/patch-chrome_browser_ui_views_profiles_signin__view__controller__delegate__views.h index 8a1ae3eedbd0..040eec858b82 100644 --- a/www/chromium/files/patch-chrome_browser_ui_views_profiles_signin__view__controller__delegate__views.h +++ b/www/chromium/files/patch-chrome_browser_ui_views_profiles_signin__view__controller__delegate__views.h @@ -1,29 +1,29 @@ ---- chrome/browser/ui/views/profiles/signin_view_controller_delegate_views.h.orig 2026-01-14 08:33:23 UTC +--- chrome/browser/ui/views/profiles/signin_view_controller_delegate_views.h.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/views/profiles/signin_view_controller_delegate_views.h -@@ -58,7 +58,7 @@ class SigninViewControllerDelegateViews +@@ -61,7 +61,7 @@ class SigninViewControllerDelegateViews SyncConfirmationStyle style, 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) static std::unique_ptr CreateHistorySyncOptInWebView( Browser* browser, bool should_close_modal_dialog, -@@ -84,7 +84,7 @@ class SigninViewControllerDelegateViews +@@ -87,7 +87,7 @@ class SigninViewControllerDelegateViews SignoutConfirmationCallback callback); #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 CreateManagedUserNoticeConfirmationWebView( - Browser* browser, -@@ -155,7 +155,7 @@ class SigninViewControllerDelegateViews + BrowserWindowInterface& browser, +@@ -159,7 +159,7 @@ class SigninViewControllerDelegateViews std::optional dialog_width, InitializeSigninWebDialogUI initialize_signin_web_dialog_ui); -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Deletes the ephemeral profile when cancelling the local profile creation // dialog. void DeleteProfileOnCancel(); diff --git a/www/chromium/files/patch-chrome_browser_ui_views_tabs_common_tab__group__header__view.cc b/www/chromium/files/patch-chrome_browser_ui_views_tabs_common_tab__group__header__view.cc index 84f27cdfc0b9..b7c39182e615 100644 --- a/www/chromium/files/patch-chrome_browser_ui_views_tabs_common_tab__group__header__view.cc +++ b/www/chromium/files/patch-chrome_browser_ui_views_tabs_common_tab__group__header__view.cc @@ -1,11 +1,11 @@ ---- chrome/browser/ui/views/tabs/common/tab_group_header_view.cc.orig 2026-08-12 09:02:10 UTC +--- chrome/browser/ui/views/tabs/common/tab_group_header_view.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/views/tabs/common/tab_group_header_view.cc -@@ -329,7 +329,7 @@ void TabGroupHeaderView::OnMouseEntered(const ui::Mous +@@ -385,7 +385,7 @@ void TabGroupHeaderView::OnMouseEntered(const ui::Mous } void TabGroupHeaderView::OnMouseExited(const ui::MouseEvent& event) { -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Bypasses the synchronous IsMouseHovered() check which can be stale on Linux // Wayland/X11 due to asynchronous cursor updates during mouse exit events. SetEditorBubbleButtonVisibilityOnHover(/*is_hovered=*/false); diff --git a/www/chromium/files/patch-chrome_browser_ui_views_tabs_dragging_tab__drag__controller.cc b/www/chromium/files/patch-chrome_browser_ui_views_tabs_dragging_tab__drag__controller.cc index 7754fe7f062a..595b3c6e1ff0 100644 --- a/www/chromium/files/patch-chrome_browser_ui_views_tabs_dragging_tab__drag__controller.cc +++ b/www/chromium/files/patch-chrome_browser_ui_views_tabs_dragging_tab__drag__controller.cc @@ -1,47 +1,47 @@ ---- chrome/browser/ui/views/tabs/dragging/tab_drag_controller.cc.orig 2026-08-12 09:02:10 UTC +--- chrome/browser/ui/views/tabs/dragging/tab_drag_controller.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/views/tabs/dragging/tab_drag_controller.cc -@@ -217,7 +217,7 @@ BrowserView* GetBrowserViewForContext(const TabDragCon +@@ -218,7 +218,7 @@ BrowserView* GetBrowserViewForContext(const TabDragCon void UpdateSystemDnDDragImage(TabDragContext* attached_context, const gfx::ImageSkia& image) { -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) VLOG(1) << __func__ << " image size=" << image.size().ToString(); aura::Window* root_window = attached_context->GetWidget()->GetNativeWindow()->GetRootWindow(); -@@ -426,7 +426,7 @@ TabDragController::Liveness TabDragController::Init( +@@ -427,7 +427,7 @@ TabDragController::Liveness TabDragController::Init( // synchronous on desktop Linux, so use that. // - ChromeOS Ash // Releasing capture on Ash cancels gestures so avoid it. -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) ref->can_release_capture_ = false; #endif ref->start_point_in_screen_ = -@@ -1056,7 +1056,7 @@ TabDragController::Liveness TabDragController::DragBro +@@ -1057,7 +1057,7 @@ TabDragController::Liveness TabDragController::DragBro CHECK_EQ(SetCapture(target_context), Liveness::kAlive); } -#if !BUILDFLAG(IS_LINUX) +#if !BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_BSD) // EndMoveLoop is going to snap the window back to its original location. // Hide it so users don't see this. Hiding a window in Linux aura causes // it to lose capture so skip it. -@@ -2329,7 +2329,7 @@ void TabDragController::CompleteDrag() { +@@ -2348,7 +2348,7 @@ void TabDragController::CompleteDrag() { } // If source window was maximized - maximize the new window as well. -#if !BUILDFLAG(IS_WIN) && !BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_MAC) +#if !BUILDFLAG(IS_WIN) && !BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_MAC) && !BUILDFLAG(IS_BSD) // Keeping maximized state breaks snap to Grid on Windows when dragging // tabs from maximized windows. TODO:(crbug.com/41321838) Explore doing this // for other desktop OS's. kMaximizedStateRetainedOnTabDrag in -@@ -2750,7 +2750,7 @@ TabDragController::Liveness TabDragController::GetLoca +@@ -2769,7 +2769,7 @@ TabDragController::Liveness TabDragController::GetLoca } } -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Exclude windows which are pending deletion via Browser::TabStripEmpty(). // These windows can be returned in the Linux Aura port because the browser // window which was used for dragging is not hidden once all of its tabs are diff --git a/www/chromium/files/patch-chrome_browser_ui_views_tabs_projects_projects__panel__tab__groups__item__view.cc b/www/chromium/files/patch-chrome_browser_ui_views_tabs_projects_projects__panel__tab__groups__item__view.cc deleted file mode 100644 index ac9230aa6496..000000000000 --- a/www/chromium/files/patch-chrome_browser_ui_views_tabs_projects_projects__panel__tab__groups__item__view.cc +++ /dev/null @@ -1,11 +0,0 @@ ---- chrome/browser/ui/views/tabs/projects/projects_panel_tab_groups_item_view.cc.orig 2026-08-12 09:02:10 UTC -+++ chrome/browser/ui/views/tabs/projects/projects_panel_tab_groups_item_view.cc -@@ -247,7 +247,7 @@ void ProjectsPanelTabGroupsItemView::OnMouseEntered( - - void ProjectsPanelTabGroupsItemView::OnMouseExited( - const ui::MouseEvent& event) { --#if BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - // Bypasses the synchronous IsMouseHovered() check which can be stale on Linux - // Wayland/X11 due to asynchronous cursor updates during mouse exit events. - UpdateHoverStateForced(/*is_hovered=*/false); diff --git a/www/chromium/files/patch-chrome_browser_ui_views_tabs_projects_projects__panel__thread__item__view.cc b/www/chromium/files/patch-chrome_browser_ui_views_tabs_projects_projects__panel__thread__item__view.cc deleted file mode 100644 index 90a39657f7b1..000000000000 --- a/www/chromium/files/patch-chrome_browser_ui_views_tabs_projects_projects__panel__thread__item__view.cc +++ /dev/null @@ -1,11 +0,0 @@ ---- chrome/browser/ui/views/tabs/projects/projects_panel_thread_item_view.cc.orig 2026-08-12 09:02:10 UTC -+++ chrome/browser/ui/views/tabs/projects/projects_panel_thread_item_view.cc -@@ -114,7 +114,7 @@ void ProjectsPanelThreadItemView::OnMouseEntered(const - } - - void ProjectsPanelThreadItemView::OnMouseExited(const ui::MouseEvent& event) { --#if BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - // Bypasses the synchronous IsMouseHovered() check which can be stale on Linux - // Wayland/X11 due to asynchronous cursor updates during mouse exit events. - UpdateHoverStateForced(/*is_hovered=*/false); diff --git a/www/chromium/files/patch-chrome_browser_ui_views_tabs_shared_drop__arrow.cc b/www/chromium/files/patch-chrome_browser_ui_views_tabs_shared_drop__arrow.cc index f1c871e4563b..1dad1acff599 100644 --- a/www/chromium/files/patch-chrome_browser_ui_views_tabs_shared_drop__arrow.cc +++ b/www/chromium/files/patch-chrome_browser_ui_views_tabs_shared_drop__arrow.cc @@ -1,11 +1,11 @@ ---- chrome/browser/ui/views/tabs/shared/drop_arrow.cc.orig 2026-07-01 06:24:19 UTC +--- chrome/browser/ui/views/tabs/shared/drop_arrow.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/views/tabs/shared/drop_arrow.cc -@@ -81,7 +81,7 @@ DropArrow::~DropArrow() { +@@ -82,7 +82,7 @@ DropArrow::~DropArrow() { // static void DropArrow::MaybeAdjustDisplayBounds(gfx::Rect& display_bounds) { -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // On Linux, `GetBoundsInScreen` returns coordinates relative to the browser // window (plus shadow elevation outsets) rather than the screen. To handle // this, we adjust the display bounds by the difference between the drop arrow 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 fb7f554014be..df73e93cc919 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 2026-08-12 09:02:10 UTC +--- chrome/browser/ui/views/tabs/tab.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/views/tabs/tab.cc -@@ -1254,7 +1254,7 @@ void Tab::MaybeUpdateHoverStatus(const ui::MouseEvent& +@@ -1258,7 +1258,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 2b0bb09d9067..7ba9b641710e 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 2026-08-12 09:02:10 UTC +--- chrome/browser/ui/views/tabs/tab_style_views.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/views/tabs/tab_style_views.cc -@@ -593,7 +593,7 @@ float TabStyleViewsImpl::GetCurrentActiveOpacity() con +@@ -589,7 +589,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())); } TabStyle::TabColors TabStyleViewsImpl::CalculateTargetColors() const { diff --git a/www/chromium/files/patch-chrome_browser_ui_views_toolbar_toolbar__view.cc b/www/chromium/files/patch-chrome_browser_ui_views_toolbar_toolbar__view.cc index 2a80baecf5cb..e94e94f16f1c 100644 --- a/www/chromium/files/patch-chrome_browser_ui_views_toolbar_toolbar__view.cc +++ b/www/chromium/files/patch-chrome_browser_ui_views_toolbar_toolbar__view.cc @@ -1,11 +1,11 @@ ---- chrome/browser/ui/views/toolbar/toolbar_view.cc.orig 2026-08-12 09:02:10 UTC +--- chrome/browser/ui/views/toolbar/toolbar_view.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/views/toolbar/toolbar_view.cc -@@ -403,7 +403,7 @@ void ToolbarView::Init() { +@@ -395,7 +395,7 @@ void ToolbarView::Init() { } std::unique_ptr media_button; -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - media_button = std::make_unique( - browser_view_, - std::make_unique(browser_)); + if (!features::IsWebUIMediaButtonEnabled()) { + media_button = std::make_unique( + browser_view_, 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 89328ec09257..d832c8f917da 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,38 +1,38 @@ ---- chrome/browser/ui/views/user_education/browser_user_education_service.cc.orig 2026-08-12 09:02:10 UTC +--- chrome/browser/ui/views/user_education/browser_user_education_service.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/views/user_education/browser_user_education_service.cc -@@ -289,7 +289,7 @@ CreateNavigationAction(GURL target) { +@@ -290,7 +290,7 @@ CreateNavigationAction(GURL target) { } #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) void NavigateToSettingsPage(ContextPtr ctx, user_education::FeaturePromoHandle promo_handle) { BrowserWindowInterface* const browser = GetBrowser(ctx); -@@ -1481,7 +1481,7 @@ void MaybeRegisterChromeFeaturePromos( +@@ -1471,7 +1471,7 @@ void MaybeRegisterChromeFeaturePromos( "Triggered when a shared tab becomes the active tab."))); } -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // kIPHSupervisedUserProfileSigninFeature: registry.RegisterFeature(std::move( FeaturePromoSpecification::CreateForCustomAction( -@@ -1774,7 +1774,7 @@ void MaybeRegisterChromeFeaturePromos( +@@ -1764,7 +1764,7 @@ void MaybeRegisterChromeFeaturePromos( "new translate screen feature on the Lens Overlay."))); #if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // kIPHDesktopPWAsLinkCapturingLaunch: registry.RegisterFeature(std::move( FeaturePromoSpecification::CreateForCustomAction( -@@ -2507,7 +2507,7 @@ void MaybeRegisterChromeNewBadges(user_education::NewB - 151, "mtatarski@google.com", +@@ -2519,7 +2519,7 @@ void MaybeRegisterChromeNewBadges(user_education::NewB + 153, "mtatarski@google.com", "Show the new badge on Send to Your Devices context menu items."))); -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) registry.RegisterFeature(user_education::NewBadgeSpecification( switches::kCrossDeviceSigninFromDesktop, user_education::Metadata( 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 e4565e01f1a0..253491f3b89d 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 2026-08-12 09:02:10 UTC +--- chrome/browser/ui/views/web_apps/web_app_integration_test_driver.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/views/web_apps/web_app_integration_test_driver.cc -@@ -570,7 +570,7 @@ std::string GetFileExtension(FileExtension file_extens +@@ -568,7 +568,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; -@@ -2331,7 +2331,7 @@ void WebAppIntegrationTestDriver::DeletePlatformShortc +@@ -2329,7 +2329,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( -@@ -3773,7 +3773,7 @@ void WebAppIntegrationTestDriver::CheckRunOnOsLoginEna +@@ -3771,7 +3771,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 -@@ -3788,7 +3788,7 @@ void WebAppIntegrationTestDriver::CheckRunOnOsLoginDis +@@ -3786,7 +3786,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 -@@ -3798,7 +3798,7 @@ void WebAppIntegrationTestDriver::CheckRunOnOsLoginDis +@@ -3796,7 +3796,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; } -@@ -3814,7 +3814,7 @@ void WebAppIntegrationTestDriver::CheckSiteHandlesFile +@@ -3812,7 +3812,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; } -@@ -4619,7 +4619,7 @@ base::FilePath WebAppIntegrationTestDriver::GetShortcu +@@ -4617,7 +4617,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 -@@ -4824,7 +4824,7 @@ bool WebAppIntegrationTestDriver::IsShortcutAndIconCre +@@ -4822,7 +4822,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); -@@ -4868,7 +4868,7 @@ bool WebAppIntegrationTestDriver::DoIconColorsMatch(Pr +@@ -4866,7 +4866,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_app__browser__controller.cc b/www/chromium/files/patch-chrome_browser_ui_web__applications_app__browser__controller.cc index 49e203bae090..b52f81a28373 100644 --- a/www/chromium/files/patch-chrome_browser_ui_web__applications_app__browser__controller.cc +++ b/www/chromium/files/patch-chrome_browser_ui_web__applications_app__browser__controller.cc @@ -1,11 +1,11 @@ ---- chrome/browser/ui/web_applications/app_browser_controller.cc.orig 2026-08-12 09:02:10 UTC +--- chrome/browser/ui/web_applications/app_browser_controller.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/web_applications/app_browser_controller.cc -@@ -562,7 +562,7 @@ std::u16string AppBrowserController::GetLaunchFlashTex +@@ -577,7 +577,7 @@ std::u16string AppBrowserController::GetLaunchFlashTex // web bundle. The flash text is not needed on platforms that already display // the app name in the title bar (e.g. Mac, Windows, and Linux). if (IsIsolatedWebApp()) { -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) return std::u16string(); #else // !(BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX)) return GetAppShortName(); 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 05708447a128..f7af1c0c8402 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 2026-08-12 09:02:10 UTC +--- chrome/browser/ui/web_applications/web_app_ui_manager_impl.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/web_applications/web_app_ui_manager_impl.cc -@@ -341,7 +341,7 @@ bool WebAppUiManagerImpl::IsAppMigrationDialogShowing( +@@ -350,7 +350,7 @@ bool WebAppUiManagerImpl::IsAppMigrationDialogShowing( return false; } #if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || \ - BUILDFLAG(IS_MAC) + BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) BrowserView* browser_view = BrowserView::GetBrowserViewForBrowser(window); return browser_view && browser_view->GetProperty(kIsPwaUpdateDialogShowingKey) && -@@ -930,7 +930,7 @@ void WebAppUiManagerImpl::ClearWebAppSiteDataIfNeeded( +@@ -1024,7 +1024,7 @@ void WebAppUiManagerImpl::ClearWebAppSiteDataIfNeeded( } #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) const base::Feature& GetPromoFeatureEngagementFromBrowser( const BrowserWindowInterface* 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 eea9904b64e4..c55859ca26b1 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 2026-08-12 09:02:10 UTC +--- chrome/browser/ui/web_applications/web_app_ui_manager_impl.h.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/web_applications/web_app_ui_manager_impl.h -@@ -264,7 +264,7 @@ class WebAppUiManagerImpl : public BrowserCollectionOb +@@ -270,7 +270,7 @@ class WebAppUiManagerImpl : public BrowserCollectionOb webapps::UninstallResultCode uninstall_code); #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) void ShowIPHPromoForAppsLaunchedViaLinkCapturing(Browser* browser, const webapps::AppId& app_id, bool is_activated); diff --git a/www/chromium/files/patch-chrome_browser_ui_webui__browser_webui__browser__window.cc b/www/chromium/files/patch-chrome_browser_ui_webui__browser_webui__browser__window.cc index abeec1eb4ba1..38eea062b9ec 100644 --- a/www/chromium/files/patch-chrome_browser_ui_webui__browser_webui__browser__window.cc +++ b/www/chromium/files/patch-chrome_browser_ui_webui__browser_webui__browser__window.cc @@ -1,11 +1,11 @@ ---- chrome/browser/ui/webui_browser/webui_browser_window.cc.orig 2026-08-12 09:02:10 UTC +--- chrome/browser/ui/webui_browser/webui_browser_window.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/webui_browser/webui_browser_window.cc -@@ -72,7 +72,7 @@ const char* const kWebUIBrowserWindowKey = "__WEBUI_BR +@@ -73,7 +73,7 @@ const char* const kWebUIBrowserWindowKey = "__WEBUI_BR // Copied from chrome/browser/ui/views/frame/browser_widget.cc. bool IsUsingLinuxSystemTheme(Profile* profile) { -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) return ThemeServiceFactory::GetForProfile(profile)->UsingSystemTheme(); #else return false; 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 b5e423fafb31..bb9851094174 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 2026-05-07 17:02:56 UTC +--- chrome/browser/ui/webui/about/about_ui.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/webui/about/about_ui.cc -@@ -423,7 +423,7 @@ using about_ui::AppendHeader; +@@ -407,7 +407,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, -@@ -453,7 +453,7 @@ TermsUIConfig::TermsUIConfig() +@@ -437,7 +437,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 -@@ -502,7 +502,7 @@ void AboutUIHTMLSource::StartDataRequest( +@@ -483,7 +483,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_chrome__web__ui__configs.cc b/www/chromium/files/patch-chrome_browser_ui_webui_chrome__web__ui__configs.cc index 93de337c65a1..158476150ae9 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,95 +1,97 @@ ---- chrome/browser/ui/webui/chrome_web_ui_configs.cc.orig 2026-08-12 09:02:10 UTC +--- chrome/browser/ui/webui/chrome_web_ui_configs.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/webui/chrome_web_ui_configs.cc -@@ -172,7 +172,7 @@ +@@ -174,7 +174,7 @@ #include "chrome/browser/ui/webui/default_browser/visual_guided_setter_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" -@@ -181,13 +181,13 @@ +@@ -183,13 +183,13 @@ #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_DESKTOP_ANDROID) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_DESKTOP_ANDROID) || BUILDFLAG(IS_BSD) #include "chrome/browser/ui/webui/discards/discards_ui.h" - #include "chrome/browser/ui/webui/management/management_ui.h" - #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || -@@ -222,7 +222,7 @@ + #endif + +@@ -221,7 +221,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) -@@ -239,7 +239,7 @@ +@@ -238,7 +238,7 @@ #endif // BUILDFLAG(IS_MAC) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "chrome/browser/ui/webui/skills/skills_ui.h" #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ // BUILDFLAG(IS_CHROMEOS) -@@ -403,7 +403,7 @@ void RegisterChromeWebUIConfigs() { +@@ -404,10 +404,10 @@ 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) -@@ -434,7 +434,7 @@ void RegisterChromeWebUIConfigs() { +- // BUILDFLAG(IS_OPENBSD) ++ // BUILDFLAG(IS_BSD) + + #if BUILDFLAG(ENABLE_EXTENSIONS_CORE) + map.AddWebUIConfig(std::make_unique()); +@@ -435,7 +435,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()); -@@ -443,19 +443,19 @@ void RegisterChromeWebUIConfigs() { +@@ -444,17 +444,17 @@ 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_DESKTOP_ANDROID) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_DESKTOP_ANDROID) || BUILDFLAG(IS_BSD) map.AddWebUIConfig(std::make_unique()); - map.AddWebUIConfig(std::make_unique()); - #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || - // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_DESKTOP_ANDROID) + #endif -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) map.AddWebUIConfig(std::make_unique()); #endif // BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) -@@ -503,7 +503,7 @@ void RegisterChromeWebUIConfigs() { +@@ -501,7 +501,7 @@ void RegisterChromeWebUIConfigs() { #endif // BUILDFLAG(IS_MAC) #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) 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 deleted file mode 100644 index 3f376429b86b..000000000000 --- a/www/chromium/files/patch-chrome_browser_ui_webui_connectors__internals_connectors__internals__page__handler.cc +++ /dev/null @@ -1,29 +0,0 @@ ---- chrome/browser/ui/webui/connectors_internals/connectors_internals_page_handler.cc.orig 2026-08-12 09:02:10 UTC -+++ chrome/browser/ui/webui/connectors_internals/connectors_internals_page_handler.cc -@@ -75,7 +75,7 @@ std::string ConvertPolicyLevelToString(DTCPolicyLevel - #endif // !BUILDFLAG(IS_ANDROID) - - #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ -- BUILDFLAG(IS_ANDROID) -+ BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) - std::string GetStringFromTimestamp(base::Time timestamp) { - return (timestamp == base::Time()) ? std::string() - : base::UnlocalizedTimeFormatWithPattern( -@@ -196,7 +196,7 @@ void ConnectorsInternalsPageHandler::GetClientCertific - void ConnectorsInternalsPageHandler::GetSignalsReportingState( - GetSignalsReportingStateCallback callback) { - #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ -- BUILDFLAG(IS_ANDROID) -+ BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) - auto* profile_prefs = profile_->GetPrefs(); - - std::string last_upload_attempt_time_string = -@@ -337,7 +337,7 @@ void ConnectorsInternalsPageHandler::OnSignalsCollecte - #endif // !BUILDFLAG(IS_ANDROID) - - #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ -- BUILDFLAG(IS_ANDROID) -+ BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) - void ConnectorsInternalsPageHandler::OnReportGenerated( - GetSignalsReportingStateCallback callback, - connectors_internals::mojom::SignalsReportingStatePtr state, diff --git a/www/chromium/files/patch-chrome_browser_ui_webui_cr__components_searchbox_searchbox__handler.cc b/www/chromium/files/patch-chrome_browser_ui_webui_cr__components_searchbox_searchbox__handler.cc index 96015c018567..f2b9c3346be3 100644 --- a/www/chromium/files/patch-chrome_browser_ui_webui_cr__components_searchbox_searchbox__handler.cc +++ b/www/chromium/files/patch-chrome_browser_ui_webui_cr__components_searchbox_searchbox__handler.cc @@ -1,20 +1,20 @@ ---- chrome/browser/ui/webui/cr_components/searchbox/searchbox_handler.cc.orig 2026-08-12 09:02:10 UTC +--- chrome/browser/ui/webui/cr_components/searchbox/searchbox_handler.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/webui/cr_components/searchbox/searchbox_handler.cc @@ -219,7 +219,7 @@ constexpr char kMacShareIconResourceName[] = #elif BUILDFLAG(IS_WIN) constexpr char kWinShareIconResourceName[] = "//resources/cr_components/searchbox/icons/win_share_cr23.svg"; -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) constexpr char kLinuxShareIconResourceName[] = "//resources/cr_components/searchbox/icons/share_cr23.svg"; #else -@@ -740,7 +740,7 @@ std::string SearchboxHandler::AutocompleteIconToResour +@@ -748,7 +748,7 @@ std::string SearchboxHandler::AutocompleteIconToResour : omnibox::kShareWinChromeRefreshOldIcon.name)) { return kWinShareIconResourceName; } -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (icon.name == (features::IsRoundedIconsEnabled() ? omnibox::kSendIcon.name : omnibox::kShareLinuxChromeRefreshOldIcon.name)) { diff --git a/www/chromium/files/patch-chrome_browser_ui_webui_infobar__internals_infobar__internals__handler.cc b/www/chromium/files/patch-chrome_browser_ui_webui_infobar__internals_infobar__internals__handler.cc index 98927a5e2735..c195c498cb77 100644 --- a/www/chromium/files/patch-chrome_browser_ui_webui_infobar__internals_infobar__internals__handler.cc +++ b/www/chromium/files/patch-chrome_browser_ui_webui_infobar__internals_infobar__internals__handler.cc @@ -1,29 +1,29 @@ ---- chrome/browser/ui/webui/infobar_internals/infobar_internals_handler.cc.orig 2026-08-12 09:02:10 UTC +--- chrome/browser/ui/webui/infobar_internals/infobar_internals_handler.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/webui/infobar_internals/infobar_internals_handler.cc -@@ -65,7 +65,7 @@ +@@ -67,7 +67,7 @@ #include "chrome/browser/ui/cocoa/keystone_infobar_delegate.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/startup/default_browser_prompt/default_browser_prompt_manager.h" // nogncheck #include "chrome/browser/ui/startup/default_browser_prompt/default_browser_prompt_prefs.h" // nogncheck #include "chrome/browser/ui/views/session_restore_infobar/session_restore_infobar_delegate.h" -@@ -108,7 +108,7 @@ void InfoBarInternalsHandler::GetInfoBars(GetInfoBarsC +@@ -114,7 +114,7 @@ void InfoBarInternalsHandler::GetInfoBars(GetInfoBarsC "The Collected Cookies infobar is shown after the user has changed " "the allowed/blocked state of a cookie, reminding them to reload " "the page in order for the new cookies to take effect.")); -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) infobar_list.emplace_back(InfoBarEntry::New( /*type=*/InfoBarType::kDefaultBrowser, /*name=*/"Default Browser", /*description=*/ -@@ -238,7 +238,7 @@ bool InfoBarInternalsHandler::TriggerInfoBarInternal(I +@@ -261,7 +261,7 @@ bool InfoBarInternalsHandler::TriggerInfoBarInternal(I } return true; } -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) case InfoBarType::kDefaultBrowser: { - Profile* profile = bwi ? bwi->GetProfile() : nullptr; - + if (!profile) { + return false; diff --git a/www/chromium/files/patch-chrome_browser_ui_webui_management_management__ui.cc b/www/chromium/files/patch-chrome_browser_ui_webui_management_management__ui.cc index f01895b205f8..d1653eb1f268 100644 --- a/www/chromium/files/patch-chrome_browser_ui_webui_management_management__ui.cc +++ b/www/chromium/files/patch-chrome_browser_ui_webui_management_management__ui.cc @@ -1,16 +1,16 @@ ---- chrome/browser/ui/webui/management/management_ui.cc.orig 2026-07-01 06:24:19 UTC +--- chrome/browser/ui/webui/management/management_ui.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/webui/management/management_ui.cc -@@ -197,11 +197,11 @@ void ManagementUI::GetLocalizedStrings( +@@ -200,11 +200,11 @@ void ManagementUI::GetLocalizedStrings( IDS_MANAGEMENT_FILE_TRANSFER_VISIBLE_DATA}, {kManagementReportFileEvents, IDS_MANAGEMENT_REPORT_FILE_EVENTS}, #endif // BUILDFLAG(IS_CHROMEOS) -#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) {kManagementScreenCaptureEvent, IDS_MANAGEMENT_SCREEN_CAPTURE_EVENT}, {kManagementScreenCaptureData, IDS_MANAGEMENT_SCREEN_CAPTURE_DATA}, #endif // BUILDFLAG(IS_CHROMEOS) || 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) {kManagementDeviceSignalsDisclosure, IDS_MANAGEMENT_DEVICE_SIGNALS_DISCLOSURE}, #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) diff --git a/www/chromium/files/patch-chrome_browser_ui_webui_management_management__ui__handler.cc b/www/chromium/files/patch-chrome_browser_ui_webui_management_management__ui__handler.cc index 74f5ea65594a..aa9b0569836c 100644 --- a/www/chromium/files/patch-chrome_browser_ui_webui_management_management__ui__handler.cc +++ b/www/chromium/files/patch-chrome_browser_ui_webui_management_management__ui__handler.cc @@ -1,47 +1,47 @@ ---- chrome/browser/ui/webui/management/management_ui_handler.cc.orig 2026-07-01 06:24:19 UTC +--- chrome/browser/ui/webui/management/management_ui_handler.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/webui/management/management_ui_handler.cc -@@ -74,7 +74,7 @@ +@@ -76,7 +76,7 @@ #include "ui/base/l10n/l10n_util.h" #include "ui/base/webui/web_ui_util.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/enterprise/signals/user_permission_service_factory.h" #include "components/device_signals/core/browser/user_permission_service.h" // nogncheck #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) -@@ -197,7 +197,7 @@ void AddThreatProtectionPermission(const char* title, - #endif // BUILDFLAG(ENTERPRISE_CLOUD_CONTENT_ANALYSIS) +@@ -200,7 +200,7 @@ void AddThreatProtectionPermission(const char* title, + } bool IsSaasReportingEnabled(content::WebUI* web_ui) { -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) return !Profile::FromWebUI(web_ui) ->GetPrefs() ->GetList(enterprise_reporting::kSaasUsageDomainUrlsForProfile) -@@ -398,7 +398,7 @@ void ManagementUIHandler::AddBrowserReportingInfo( +@@ -404,7 +404,7 @@ void ManagementUIHandler::AddBrowserReportingInfo( report_sources->Append(std::move(data)); } -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) auto device_signal_data = GetDeviceSignalGrantedMessage(); if (!device_signal_data.empty()) { report_sources->Append(std::move(device_signal_data)); -@@ -430,7 +430,7 @@ void ManagementUIHandler::AddProfileReportingInfo( +@@ -439,7 +439,7 @@ void ManagementUIHandler::AddProfileReportingInfo( report_sources->Append(std::move(data)); } -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) auto device_signal_data = GetDeviceSignalGrantedMessage(); if (!device_signal_data.empty()) { report_sources->Append(std::move(device_signal_data)); -@@ -620,7 +620,7 @@ policy::PolicyService* ManagementUIHandler::GetPolicyS +@@ -627,7 +627,7 @@ policy::PolicyService* ManagementUIHandler::GetPolicyS ->policy_service(); } -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) device_signals::UserPermissionService* ManagementUIHandler::GetUserPermissionService() { return enterprise_signals::UserPermissionServiceFactory::GetForProfile( diff --git a/www/chromium/files/patch-chrome_browser_ui_webui_management_management__ui__handler.h b/www/chromium/files/patch-chrome_browser_ui_webui_management_management__ui__handler.h index c802add95984..eba5a2c5aa34 100644 --- a/www/chromium/files/patch-chrome_browser_ui_webui_management_management__ui__handler.h +++ b/www/chromium/files/patch-chrome_browser_ui_webui_management_management__ui__handler.h @@ -1,20 +1,20 @@ ---- chrome/browser/ui/webui/management/management_ui_handler.h.orig 2026-07-01 06:24:19 UTC +--- chrome/browser/ui/webui/management/management_ui_handler.h.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/webui/management/management_ui_handler.h -@@ -33,7 +33,7 @@ namespace enterprise_management { +@@ -37,7 +37,7 @@ namespace enterprise_management { class GetUserEligiblePromotionsResponse; } // namespace enterprise_management -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) namespace device_signals { class UserPermissionService; } // namespace device_signals -@@ -91,7 +91,7 @@ class ManagementUIHandler : public content::WebUIMessa +@@ -97,7 +97,7 @@ class ManagementUIHandler : public content::WebUIMessa base::ListValue GetManagedWebsitesInfo(Profile* profile) const; base::ListValue GetApplicationsInfo(Profile* profile) const; virtual policy::PolicyService* GetPolicyService(); -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) virtual device_signals::UserPermissionService* GetUserPermissionService(); base::DictValue GetDeviceSignalGrantedMessage(); #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) diff --git a/www/chromium/files/patch-chrome_browser_ui_webui_password__manager_promo__cards__handler.cc b/www/chromium/files/patch-chrome_browser_ui_webui_password__manager_notification__cards__handler.cc similarity index 51% rename from www/chromium/files/patch-chrome_browser_ui_webui_password__manager_promo__cards__handler.cc rename to www/chromium/files/patch-chrome_browser_ui_webui_password__manager_notification__cards__handler.cc index 2df982c76720..211eaea4ab1c 100644 --- a/www/chromium/files/patch-chrome_browser_ui_webui_password__manager_promo__cards__handler.cc +++ b/www/chromium/files/patch-chrome_browser_ui_webui_password__manager_notification__cards__handler.cc @@ -1,38 +1,38 @@ ---- chrome/browser/ui/webui/password_manager/promo_cards_handler.cc.orig 2026-07-01 06:24:19 UTC -+++ chrome/browser/ui/webui/password_manager/promo_cards_handler.cc +--- chrome/browser/ui/webui/password_manager/notification_cards_handler.cc.orig 2026-08-31 10:59:09 UTC ++++ chrome/browser/ui/webui/password_manager/notification_cards_handler.cc @@ -30,7 +30,7 @@ #endif #endif // BUILDFLAG(GOOGLE_CHROME_BRANDING) -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "base/memory/scoped_refptr.h" #include "chrome/browser/browser_process.h" - #include "chrome/browser/ui/webui/password_manager/promo_cards/relaunch_chrome_promo.h" -@@ -78,7 +78,7 @@ PromoCardsHandler::PromoCardsHandler(Profile* profile) + #include "chrome/browser/ui/webui/password_manager/notification_cards/relaunch_chrome_banner.h" +@@ -80,7 +80,7 @@ NotificationCardsHandler::NotificationCardsHandler(Pro #endif #endif // BUILDFLAG(GOOGLE_CHROME_BRANDING) -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - auto relaunch_promo = - std::make_unique(profile->GetPrefs()); - relaunch_chrome_promo_ = relaunch_promo.get(); -@@ -118,7 +118,7 @@ void PromoCardsHandler::HandleGetAvailablePromoCard( + auto relaunch_banner = + std::make_unique(profile->GetPrefs()); + relaunch_chrome_banner_ = relaunch_banner.get(); +@@ -124,7 +124,7 @@ void NotificationCardsHandler::HandleGetAvailableNotif CHECK_EQ(1U, args.size()); const base::Value& callback_id = args[0]; -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - if (relaunch_chrome_promo_ && - !relaunch_chrome_promo_->is_encryption_available().has_value()) { + if (relaunch_chrome_banner_ && + !relaunch_chrome_banner_->is_encryption_available().has_value()) { g_browser_process->os_crypt_async()->GetInstance( -@@ -181,7 +181,7 @@ PasswordPromoCardBase* PromoCardsHandler::GetPromoToSh - return promo_to_show; +@@ -191,7 +191,7 @@ NotificationCardsHandler::GetNotificationCardToShowAnd + return card_to_show; } -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - void PromoCardsHandler::OnEncryptorReceived( + void NotificationCardsHandler::OnEncryptorReceived( base::Value callback_id, scoped_refptr encryptor) { diff --git a/www/chromium/files/patch-chrome_browser_ui_webui_password__manager_notification__cards__handler.h b/www/chromium/files/patch-chrome_browser_ui_webui_password__manager_notification__cards__handler.h new file mode 100644 index 000000000000..a36fdc32ae9e --- /dev/null +++ b/www/chromium/files/patch-chrome_browser_ui_webui_password__manager_notification__cards__handler.h @@ -0,0 +1,20 @@ +--- chrome/browser/ui/webui/password_manager/notification_cards_handler.h.orig 2026-08-31 10:59:09 UTC ++++ chrome/browser/ui/webui/password_manager/notification_cards_handler.h +@@ -55,7 +55,7 @@ class NotificationCardsHandler : public content::WebUI + + PasswordNotificationCardBase* GetNotificationCardToShowAndUpdatePref(); + +-#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + void OnEncryptorReceived(base::Value callback_id, + scoped_refptr encryptor); + #endif // BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +@@ -64,7 +64,7 @@ class NotificationCardsHandler : public content::WebUI + + std::vector> + notification_cards_; +-#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + // This points into `notification_cards_`, so should be ordered after it. + raw_ptr relaunch_chrome_banner_ = nullptr; + diff --git a/www/chromium/files/patch-chrome_browser_ui_webui_password__manager_promo__cards_relaunch__chrome__promo.cc b/www/chromium/files/patch-chrome_browser_ui_webui_password__manager_notification__cards_relaunch__chrome__banner.cc similarity index 61% rename from www/chromium/files/patch-chrome_browser_ui_webui_password__manager_promo__cards_relaunch__chrome__promo.cc rename to www/chromium/files/patch-chrome_browser_ui_webui_password__manager_notification__cards_relaunch__chrome__banner.cc index 69010b2efd96..06b35d8ded95 100644 --- a/www/chromium/files/patch-chrome_browser_ui_webui_password__manager_promo__cards_relaunch__chrome__promo.cc +++ b/www/chromium/files/patch-chrome_browser_ui_webui_password__manager_notification__cards_relaunch__chrome__banner.cc @@ -1,20 +1,20 @@ ---- chrome/browser/ui/webui/password_manager/promo_cards/relaunch_chrome_promo.cc.orig 2025-12-05 10:12:50 UTC -+++ chrome/browser/ui/webui/password_manager/promo_cards/relaunch_chrome_promo.cc -@@ -36,7 +36,7 @@ std::u16string RelaunchChromePromo::GetTitle() const { +--- chrome/browser/ui/webui/password_manager/notification_cards/relaunch_chrome_banner.cc.orig 2026-08-31 10:59:09 UTC ++++ chrome/browser/ui/webui/password_manager/notification_cards/relaunch_chrome_banner.cc +@@ -37,7 +37,7 @@ std::u16string RelaunchChromeBanner::GetTitle() const return l10n_util::GetStringUTF16( #if BUILDFLAG(IS_MAC) IDS_PASSWORD_MANAGER_UI_RELAUNCH_CHROME_PROMO_CARD_TITLE -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) IDS_PASSWORD_MANAGER_UI_RELAUNCH_CHROME_PROMO_CARD_TITLE_LINUX #endif ); -@@ -46,7 +46,7 @@ std::u16string RelaunchChromePromo::GetDescription() c +@@ -47,7 +47,7 @@ std::u16string RelaunchChromeBanner::GetDescription() return l10n_util::GetStringUTF16( #if BUILDFLAG(IS_MAC) IDS_PASSWORD_MANAGER_UI_RELAUNCH_CHROME_PROMO_CARD_DESCRIPTION -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) IDS_PASSWORD_MANAGER_UI_RELAUNCH_CHROME_PROMO_CARD_DESCRIPTION_LINUX #endif ); diff --git a/www/chromium/files/patch-chrome_browser_ui_webui_password__manager_promo__cards__handler.h b/www/chromium/files/patch-chrome_browser_ui_webui_password__manager_promo__cards__handler.h deleted file mode 100644 index bde576f92eb1..000000000000 --- a/www/chromium/files/patch-chrome_browser_ui_webui_password__manager_promo__cards__handler.h +++ /dev/null @@ -1,20 +0,0 @@ ---- chrome/browser/ui/webui/password_manager/promo_cards_handler.h.orig 2026-08-12 09:02:10 UTC -+++ chrome/browser/ui/webui/password_manager/promo_cards_handler.h -@@ -54,7 +54,7 @@ class PromoCardsHandler : public content::WebUIMessage - - PasswordPromoCardBase* GetPromoToShowAndUpdatePref(); - --#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - void OnEncryptorReceived(base::Value callback_id, - scoped_refptr encryptor); - #endif // BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) -@@ -62,7 +62,7 @@ class PromoCardsHandler : public content::WebUIMessage - raw_ptr profile_; - - std::vector> promo_cards_; --#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - // This points into `promo_cards_`, so should be ordered after it. - raw_ptr relaunch_chrome_promo_ = nullptr; - diff --git a/www/chromium/files/patch-chrome_browser_ui_webui_policy_policy__ui.cc b/www/chromium/files/patch-chrome_browser_ui_webui_policy_policy__ui.cc index 58ae660495c4..228c6aa7f83b 100644 --- a/www/chromium/files/patch-chrome_browser_ui_webui_policy_policy__ui.cc +++ b/www/chromium/files/patch-chrome_browser_ui_webui_policy_policy__ui.cc @@ -1,11 +1,11 @@ ---- chrome/browser/ui/webui/policy/policy_ui.cc.orig 2026-08-12 09:02:10 UTC +--- chrome/browser/ui/webui/policy/policy_ui.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/webui/policy/policy_ui.cc -@@ -149,7 +149,7 @@ void CreateAndAddPolicyUIHtmlSource(Profile* profile) +@@ -150,7 +150,7 @@ void CreateAndAddPolicyUIHtmlSource(Profile* profile) {"statusFlexOrgNoPolicy", IDS_POLICY_STATUS_FLEX_ORG_NO_POLICY}, {"statusDevice", IDS_POLICY_STATUS_DEVICE}, {"statusMachine", IDS_POLICY_STATUS_MACHINE}, -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) {"statusUpdater", IDS_POLICY_STATUS_UPDATER}, #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) {"statusUser", IDS_POLICY_STATUS_USER}, diff --git a/www/chromium/files/patch-chrome_browser_ui_webui_search__engine__choice_search__engine__choice__ui.cc b/www/chromium/files/patch-chrome_browser_ui_webui_search__engine__choice_search__engine__choice__ui.cc index 46c37a2eb7a4..fe7b169f0e1c 100644 --- a/www/chromium/files/patch-chrome_browser_ui_webui_search__engine__choice_search__engine__choice__ui.cc +++ b/www/chromium/files/patch-chrome_browser_ui_webui_search__engine__choice_search__engine__choice__ui.cc @@ -1,11 +1,11 @@ ---- chrome/browser/ui/webui/search_engine_choice/search_engine_choice_ui.cc.orig 2026-05-07 17:02:56 UTC +--- chrome/browser/ui/webui/search_engine_choice/search_engine_choice_ui.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/webui/search_engine_choice/search_engine_choice_ui.cc -@@ -136,7 +136,7 @@ SearchEngineChoiceUI::SearchEngineChoiceUI(content::We +@@ -140,7 +140,7 @@ SearchEngineChoiceUI::SearchEngineChoiceUI(content::We search_engine_choice_service->IsDsePropagationAllowedForGuest()); const bool is_first_run_desktop_refresh_enabled = -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) switches::IsFirstRunDesktopRefreshEnabled( CHECK_DEREF(regional_capabilities_service) .IsInSearchEngineChoiceScreenRegion()); diff --git a/www/chromium/files/patch-chrome_browser_ui_webui_settings_appearance__handler.cc b/www/chromium/files/patch-chrome_browser_ui_webui_settings_appearance__handler.cc index 393d695c8ad4..2f7a5903aaf8 100644 --- a/www/chromium/files/patch-chrome_browser_ui_webui_settings_appearance__handler.cc +++ b/www/chromium/files/patch-chrome_browser_ui_webui_settings_appearance__handler.cc @@ -1,11 +1,11 @@ ---- chrome/browser/ui/webui/settings/appearance_handler.cc.orig 2026-05-07 17:02:56 UTC +--- chrome/browser/ui/webui/settings/appearance_handler.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/webui/settings/appearance_handler.cc -@@ -35,7 +35,7 @@ void AppearanceHandler::RegisterMessages() { +@@ -38,7 +38,7 @@ void AppearanceHandler::RegisterMessages() { "useDefaultTheme", base::BindRepeating(&AppearanceHandler::HandleUseTheme, base::Unretained(this), ui::SystemTheme::kDefault)); -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) web_ui()->RegisterMessageCallback( "useGtkTheme", base::BindRepeating(&AppearanceHandler::HandleUseTheme, 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 97b121ee69d1..15dfd811bb03 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,70 +1,70 @@ ---- chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc.orig 2026-08-12 09:02:10 UTC +--- chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc -@@ -156,7 +156,7 @@ +@@ -153,7 +153,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 -@@ -166,7 +166,7 @@ +@@ -163,7 +163,7 @@ #include "device/fido/win/webauthn_api.h" #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 -@@ -291,7 +291,7 @@ void AddA11yStrings(content::WebUIDataSource* html_sou +@@ -288,7 +288,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", -@@ -610,7 +610,7 @@ void AddAppearanceStrings(content::WebUIDataSource* ht +@@ -637,7 +637,7 @@ void AddAppearanceStrings(content::WebUIDataSource* ht {"uiFeatureAlignSide", IDS_SETTINGS_UI_FEATURE_ALIGN_SIDE}, {"uiFeatureAlignTop", IDS_SETTINGS_UI_FEATURE_ALIGN_TOP}, {"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}, -@@ -618,11 +618,11 @@ void AddAppearanceStrings(content::WebUIDataSource* ht +@@ -645,11 +645,11 @@ 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) {"resetToDefaultTheme", IDS_SETTINGS_RESET_TO_DEFAULT_THEME}, #endif {"resetToolbarToDefault", IDS_SETTINGS_RESET_TOOLBAR_TO_DEFAULT}, -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) {"showWindowDecorations", IDS_SHOW_WINDOW_DECORATIONS}, #endif #if BUILDFLAG(IS_MAC) -@@ -663,7 +663,7 @@ void AddAppearanceStrings(content::WebUIDataSource* ht +@@ -692,7 +692,7 @@ void AddAppearanceStrings(content::WebUIDataSource* ht html_source->AddString("configurableSidePanelAlignments", configurable_alignments_json); -#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; -@@ -1997,7 +1997,7 @@ void AddSignOutDialogStrings(content::WebUIDataSource* +@@ -2099,7 +2099,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_settings_site__settings__handler.cc b/www/chromium/files/patch-chrome_browser_ui_webui_settings_site__settings__handler.cc index f12162841373..bd8523b1ed88 100644 --- a/www/chromium/files/patch-chrome_browser_ui_webui_settings_site__settings__handler.cc +++ b/www/chromium/files/patch-chrome_browser_ui_webui_settings_site__settings__handler.cc @@ -1,29 +1,29 @@ ---- chrome/browser/ui/webui/settings/site_settings_handler.cc.orig 2026-06-04 10:12:25 UTC +--- chrome/browser/ui/webui/settings/site_settings_handler.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/webui/settings/site_settings_handler.cc -@@ -126,7 +126,7 @@ +@@ -128,7 +128,7 @@ #include "url/url_constants.h" #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "components/webapps/isolated_web_apps/scheme.h" #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || // BUILDFLAG(IS_CHROMEOS) -@@ -2087,7 +2087,7 @@ void SiteSettingsHandler::SendZoomLevels() { +@@ -2100,7 +2100,7 @@ void SiteSettingsHandler::SendZoomLevels() { base::ListValue zoom_levels_exceptions; #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Show any non-default Isolated Web App zoom levels at the top of the page. auto* web_app_provider = web_app::WebAppProvider::GetForWebApps(profile_); if (web_app_provider) { -@@ -2189,7 +2189,7 @@ void SiteSettingsHandler::HandleRemoveZoomLevel(const +@@ -2202,7 +2202,7 @@ void SiteSettingsHandler::HandleRemoveZoomLevel(const GURL url(host_or_spec); #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) if (url.is_valid() && url.GetScheme() == webapps::kIsolatedAppScheme) { base::expected iwa_url_info = web_app::IsolatedWebAppUrlInfo::Create(url); 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 b0bcae84c02f..a1f9f9981dd4 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 2026-08-12 09:02:10 UTC +--- chrome/browser/ui/webui/signin/profile_picker_handler.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/webui/signin/profile_picker_handler.cc -@@ -218,7 +218,7 @@ base::DictValue CreateProfileState(const ProfileAttrib +@@ -219,7 +219,7 @@ base::DictValue CreateProfileState(const ProfileAttrib IDS_PROFILE_PICKER_PROFILE_CARD_LABEL, local_profile_name); 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 (entry->IsSupervised()) { profileCardButtonLabel = l10n_util::GetStringFUTF16( IDS_PROFILE_PICKER_PROFILE_CARD_LABEL_SUPERVISED, local_profile_name); diff --git a/www/chromium/files/patch-chrome_browser_ui_webui_signin_sync__confirmation__ui.cc b/www/chromium/files/patch-chrome_browser_ui_webui_signin_sync__confirmation__ui.cc index d355facb700e..307287ef6f1b 100644 --- a/www/chromium/files/patch-chrome_browser_ui_webui_signin_sync__confirmation__ui.cc +++ b/www/chromium/files/patch-chrome_browser_ui_webui_signin_sync__confirmation__ui.cc @@ -1,11 +1,11 @@ ---- chrome/browser/ui/webui/signin/sync_confirmation_ui.cc.orig 2026-05-07 17:02:56 UTC +--- chrome/browser/ui/webui/signin/sync_confirmation_ui.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/webui/signin/sync_confirmation_ui.cc -@@ -166,7 +166,7 @@ SyncConfirmationUI::SyncConfirmationUI(content::WebUI* +@@ -179,7 +179,7 @@ SyncConfirmationUI::SyncConfirmationUI(content::WebUI* IDS_SYNC_LOADING_CONFIRMATION_TITLE); bool is_first_run_desktop_refresh_enabled = false; -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) const bool is_in_search_engine_choice_region = CHECK_DEREF(regional_capabilities::RegionalCapabilitiesServiceFactory:: GetForProfile(profile_)) diff --git a/www/chromium/files/patch-chrome_browser_ui_window__sizer_window__sizer.cc b/www/chromium/files/patch-chrome_browser_ui_window__sizer_window__sizer.cc index 9b5f5fbe3a84..62bb06a8f6cd 100644 --- a/www/chromium/files/patch-chrome_browser_ui_window__sizer_window__sizer.cc +++ b/www/chromium/files/patch-chrome_browser_ui_window__sizer_window__sizer.cc @@ -1,11 +1,11 @@ ---- chrome/browser/ui/window_sizer/window_sizer.cc.orig 2026-08-12 09:02:10 UTC +--- chrome/browser/ui/window_sizer/window_sizer.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/ui/window_sizer/window_sizer.cc -@@ -223,7 +223,7 @@ void WindowSizer::GetBrowserWindowBoundsAndShowState( +@@ -224,7 +224,7 @@ void WindowSizer::GetBrowserWindowBoundsAndShowState( browser, window_bounds, show_state); } -#if !BUILDFLAG(IS_LINUX) +#if !BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Linux has its own implementation, see WindowSizerLinux. // static void WindowSizer::GetBrowserWindowBoundsAndShowState( diff --git a/www/chromium/files/patch-chrome_browser_webauthn_chrome__web__authentication__delegate.cc b/www/chromium/files/patch-chrome_browser_webauthn_chrome__web__authentication__delegate.cc index 918d9ca05e29..7e8d8910c865 100644 --- a/www/chromium/files/patch-chrome_browser_webauthn_chrome__web__authentication__delegate.cc +++ b/www/chromium/files/patch-chrome_browser_webauthn_chrome__web__authentication__delegate.cc @@ -1,20 +1,20 @@ ---- chrome/browser/webauthn/chrome_web_authentication_delegate.cc.orig 2026-07-01 06:24:19 UTC +--- chrome/browser/webauthn/chrome_web_authentication_delegate.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/browser/webauthn/chrome_web_authentication_delegate.cc @@ -69,7 +69,7 @@ #include "url/url_constants.h" #include "url/url_util.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/extensions/api/web_authentication_proxy/web_authentication_proxy_service.h" #endif -@@ -379,7 +379,7 @@ content::WebAuthenticationRequestProxy* +@@ -377,7 +377,7 @@ content::WebAuthenticationRequestProxy* ChromeWebAuthenticationDelegate::MaybeGetRequestProxy( content::BrowserContext* browser_context, const url::Origin& caller_origin) { -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // The webAuthenticationProxy extension API is supported on Win/Mac/Linux. auto* service = extensions::WebAuthenticationProxyService::GetIfProxyAttached( Profile::FromBrowserContext(browser_context)); diff --git a/www/chromium/files/patch-chrome_common_chrome__features.cc b/www/chromium/files/patch-chrome_common_chrome__features.cc index b52a81f140ca..e3e5c911ce57 100644 --- a/www/chromium/files/patch-chrome_common_chrome__features.cc +++ b/www/chromium/files/patch-chrome_common_chrome__features.cc @@ -1,38 +1,38 @@ ---- chrome/common/chrome_features.cc.orig 2026-08-12 09:02:10 UTC +--- chrome/common/chrome_features.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/common/chrome_features.cc @@ -72,7 +72,7 @@ BASE_FEATURE(kUseKeychainKeyProvider, base::FEATURE_EN #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, base::FEATURE_DISABLED_BY_DEFAULT); -@@ -181,7 +181,7 @@ BASE_FEATURE(kEnableFullscreenToAnyScreenAndroid, +@@ -240,7 +240,7 @@ BASE_FEATURE(kEnableFullscreenToAnyScreenAndroid, + 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/40186761. // 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. -@@ -1326,7 +1326,7 @@ BASE_FEATURE(kIsolatedWebAppManagedGuestSessionInstall +@@ -1403,7 +1403,7 @@ BASE_FEATURE(kIsolatedWebAppManagedGuestSessionInstall BASE_FEATURE(kIsolatedWebAppBundleCache, base::FEATURE_ENABLED_BY_DEFAULT); #endif // BUILDFLAG(IS_CHROMEOS) -#if BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CHROMEOS) +#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && !BUILDFLAG(IS_CHROMEOS) BASE_FEATURE(kLinuxLowMemoryMonitor, base::FEATURE_DISABLED_BY_DEFAULT); // Values taken from the low-memory-monitor documentation and also apply to the // portal API: -@@ -1337,7 +1337,7 @@ constexpr base::FeatureParam kLinuxLowMemoryMonit +@@ -1414,7 +1414,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, base::FEATURE_DISABLED_BY_DEFAULT); #endif diff --git a/www/chromium/files/patch-chrome_common_chrome__features.h b/www/chromium/files/patch-chrome_common_chrome__features.h index 42d13eb6683b..cf74b4d016bd 100644 --- a/www/chromium/files/patch-chrome_common_chrome__features.h +++ b/www/chromium/files/patch-chrome_common_chrome__features.h @@ -1,38 +1,38 @@ ---- chrome/common/chrome_features.h.orig 2026-08-12 09:02:10 UTC +--- chrome/common/chrome_features.h.orig 2026-08-31 10:59:09 UTC +++ chrome/common/chrome_features.h @@ -64,7 +64,7 @@ BASE_DECLARE_FEATURE(kUseKeychainKeyProvider); #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); -@@ -127,7 +127,7 @@ COMPONENT_EXPORT(CHROME_FEATURES) - BASE_DECLARE_FEATURE(kDocumentPipStandaloneWindow); - +@@ -156,7 +156,7 @@ extern const base::FeatureParam + COMPONENT_EXPORT(CHROME_FEATURES) + bool RemoteActorCredentialSharingEnabled(); -#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); #endif -@@ -939,7 +939,7 @@ COMPONENT_EXPORT(CHROME_FEATURES) +@@ -973,7 +973,7 @@ COMPONENT_EXPORT(CHROME_FEATURES) BASE_DECLARE_FEATURE(kIsolatedWebAppBundleCache); #endif -#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; -@@ -947,7 +947,7 @@ COMPONENT_EXPORT(CHROME_FEATURES) +@@ -981,7 +981,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__switches.cc b/www/chromium/files/patch-chrome_common_chrome__switches.cc index ef28f456723f..0f3fbb6f049f 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 2026-08-12 09:02:10 UTC +--- chrome/common/chrome_switches.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/common/chrome_switches.cc -@@ -937,7 +937,7 @@ const char kDebugPrint[] = "debug-print"; +@@ -942,7 +942,7 @@ const char kDebugPrint[] = "debug-print"; #endif #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_WIN) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) // Causes the browser to launch directly in guest mode. const char kGuest[] = "guest"; -@@ -984,7 +984,7 @@ const char kGlicGuestUrlPresetStaging[] = "glic-guest- +@@ -989,7 +989,7 @@ const char kGlicGuestUrlPresetStaging[] = "glic-guest- const char kGlicGuestUrlPresetPreprod[] = "glic-guest-url-preset-preprod"; const char kGlicGuestUrlPresetProd[] = "glic-guest-url-preset-prod"; -#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 diff --git a/www/chromium/files/patch-chrome_common_chrome__switches.h b/www/chromium/files/patch-chrome_common_chrome__switches.h index dab6396ddda7..9c0987e7fa53 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 2026-08-12 09:02:10 UTC +--- chrome/common/chrome_switches.h.orig 2026-08-31 10:59:09 UTC +++ chrome/common/chrome_switches.h -@@ -287,7 +287,7 @@ extern const char kDebugPrint[]; +@@ -288,7 +288,7 @@ extern const char kDebugPrint[]; #endif #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_WIN) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) extern const char kGuest[]; #endif -@@ -310,7 +310,7 @@ extern const char kGlicGuestUrlPresetStaging[]; +@@ -311,7 +311,7 @@ extern const char kGlicGuestUrlPresetStaging[]; extern const char kGlicGuestUrlPresetPreprod[]; extern const char kGlicGuestUrlPresetProd[]; -#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_crash__keys.cc b/www/chromium/files/patch-chrome_common_crash__keys.cc index 93c3159facf7..cc8cefa8c5a9 100644 --- a/www/chromium/files/patch-chrome_common_crash__keys.cc +++ b/www/chromium/files/patch-chrome_common_crash__keys.cc @@ -1,28 +1,28 @@ ---- chrome/common/crash_keys.cc.orig 2025-09-06 10:01:20 UTC +--- chrome/common/crash_keys.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/common/crash_keys.cc -@@ -51,7 +51,9 @@ class CrashKeyWithName { +@@ -56,7 +56,9 @@ class CrashKeyWithName { ~CrashKeyWithName() = delete; std::string_view Name() const { return name_; } +#if BUILDFLAG(USE_CRASHPAD_ANNOTATION) std::string_view Value() const { return crash_key_.value(); } +#endif void Clear() { crash_key_.Clear(); } void Set(std::string_view value) { crash_key_.Set(value); } -@@ -195,6 +197,7 @@ void AllocateCrashKeyInBrowserAndChildren(std::string_ +@@ -200,6 +202,7 @@ void AllocateCrashKeyInBrowserAndChildren(std::string_ GetCommandLineStringAnnotations().emplace_back(std::string(key)).Set(value); } +#if BUILDFLAG(USE_CRASHPAD_ANNOTATION) void AppendStringAnnotationsCommandLineSwitch(base::CommandLine* command_line) { std::string string_annotations; for (const auto& crash_key : GetCommandLineStringAnnotations()) { -@@ -209,6 +212,7 @@ void AppendStringAnnotationsCommandLineSwitch(base::Co +@@ -214,6 +217,7 @@ void AppendStringAnnotationsCommandLineSwitch(base::Co } command_line->AppendSwitchASCII(kStringAnnotationsSwitch, string_annotations); } +#endif void SetCrashKeysFromCommandLine(const base::CommandLine& command_line) { SetStringAnnotations(command_line); 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 aaeb9a4eee9f..c2002be39bd8 100644 --- a/www/chromium/files/patch-chrome_common_extensions_extension__constants.h +++ b/www/chromium/files/patch-chrome_common_extensions_extension__constants.h @@ -1,20 +1,20 @@ ---- chrome/common/extensions/extension_constants.h.orig 2026-08-12 09:02:10 UTC +--- chrome/common/extensions/extension_constants.h.orig 2026-08-31 10:59:09 UTC +++ chrome/common/extensions/extension_constants.h -@@ -213,7 +213,7 @@ inline constexpr char kReadingModeGDocsHelperExtension +@@ -206,7 +206,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[] = -@@ -264,7 +264,7 @@ inline constexpr auto kBuiltInFirstPartyExtensionIds = +@@ -257,7 +257,7 @@ inline constexpr auto kBuiltInFirstPartyExtensionIds = kGoogleSpeechSynthesisExtensionId, #endif // BUILDFLAG(IS_CHROMEOS) kReadingModeGDocsHelperExtensionId, -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) kTTSEngineExtensionId, kComponentUpdaterTTSEngineExtensionId, #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) diff --git a/www/chromium/files/patch-chrome_common_pref__names.h b/www/chromium/files/patch-chrome_common_pref__names.h index 93b201029e0f..809905b4b033 100644 --- a/www/chromium/files/patch-chrome_common_pref__names.h +++ b/www/chromium/files/patch-chrome_common_pref__names.h @@ -1,101 +1,101 @@ ---- chrome/common/pref_names.h.orig 2026-08-12 09:02:10 UTC +--- chrome/common/pref_names.h.orig 2026-08-31 10:59:09 UTC +++ chrome/common/pref_names.h -@@ -672,7 +672,7 @@ inline constexpr char kPrefDictationOnboardingComplete +@@ -671,7 +671,7 @@ inline constexpr char kVoiceTypingHotkey[] = "browser. 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 -@@ -843,7 +843,7 @@ inline constexpr char kShowUpdatePromotionInfoBar[] = +@@ -847,7 +847,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"; -@@ -1413,7 +1413,7 @@ inline constexpr char kPinInfoBarTimesShown[] = +@@ -1419,7 +1419,7 @@ inline constexpr char kPinInfoBarTimesShown[] = "browser.pin_infobar_times_shown"; #endif // BUILDFLAG(IS_WIN) || 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) // How many times the session restore infobar has been shown. inline constexpr char kSessionRestoreInfoBarTimesShown[] = -@@ -1464,7 +1464,7 @@ static_assert(std::string_view(kDownloadDefaultDirecto +@@ -1470,7 +1470,7 @@ static_assert(std::string_view(kDownloadDefaultDirecto 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 -@@ -1955,7 +1955,7 @@ inline constexpr char kMediaStorageIdSalt[] = "media.s +@@ -1967,7 +1967,7 @@ 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[] = -@@ -1969,7 +1969,7 @@ inline constexpr char kNetworkServiceSandboxEnabled[] +@@ -1981,7 +1981,7 @@ inline constexpr char kNetworkServiceSandboxEnabled[] inline constexpr char kNetworkServiceFailedLaunchMajorVersion[] = "net.network_service_failed_launch_major_version"; -#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"; -@@ -2071,7 +2071,7 @@ inline constexpr char kIsolatedWebAppUserInstallationE +@@ -2083,7 +2083,7 @@ inline constexpr char kIsolatedWebAppUserInstallationE 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[] = -@@ -2344,7 +2344,7 @@ inline constexpr char kHardwareSecureDecryptionDisable +@@ -2359,7 +2359,7 @@ inline constexpr char kHardwareSecureDecryptionDisable #endif // BUILDFLAG(IS_WIN) #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 -@@ -2770,7 +2770,7 @@ inline constexpr char kScreenCaptureWithoutGestureAllo +@@ -2785,7 +2785,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[] = -@@ -2918,7 +2918,7 @@ inline constexpr char kLensRegionSearchEnabled[] = +@@ -2933,7 +2933,7 @@ inline constexpr char kLensRegionSearchEnabled[] = inline constexpr char kLensDesktopNTPSearchEnabled[] = "policy.lens_desktop_ntp_search_enabled"; -#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 -@@ -3004,7 +3004,7 @@ inline constexpr char +@@ -3019,7 +3019,7 @@ inline constexpr char kAccessControlAllowMethodsInCORSPreflightSpecConformant[] = "access_control_allow_methods_in_cors_preflight_spec_conformant"; -#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_url__constants.h b/www/chromium/files/patch-chrome_common_url__constants.h index 2c89d4b3e145..92642c15362c 100644 --- a/www/chromium/files/patch-chrome_common_url__constants.h +++ b/www/chromium/files/patch-chrome_common_url__constants.h @@ -1,11 +1,11 @@ ---- chrome/common/url_constants.h.orig 2026-08-12 09:02:10 UTC +--- chrome/common/url_constants.h.orig 2026-08-31 10:59:09 UTC +++ chrome/common/url_constants.h -@@ -734,7 +734,7 @@ inline constexpr char kOutdatedPluginLearnMoreURL[] = - "https://support.google.com/chrome?p=ib_outdated_plugin"; +@@ -707,7 +707,7 @@ inline constexpr char kProcessIsolationLearnMoreUrl[] + "https://support.google.com/chrome?p=process_isolation"; #endif -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // "Learn more" URL for the chrome apps deprecation dialog. inline constexpr char kChromeAppsDeprecationLearnMoreURL[] = "https://support.google.com/chrome?p=chrome_app_deprecation"; 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 7afb89b4d797..6c92fddc0d19 100644 --- a/www/chromium/files/patch-chrome_common_webui__url__constants.cc +++ b/www/chromium/files/patch-chrome_common_webui__url__constants.cc @@ -1,32 +1,32 @@ ---- chrome/common/webui_url_constants.cc.orig 2026-07-01 06:24:19 UTC +--- chrome/common/webui_url_constants.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/common/webui_url_constants.cc -@@ -189,7 +189,7 @@ base::span ChromeURLHosts() +@@ -190,7 +190,7 @@ base::span ChromeURLHosts() kChromeUITermsHost, #endif kChromeUITranslateInternalsHost, -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) kChromeUIUpdaterHost, #endif kChromeUIUsbInternalsHost, -@@ -257,17 +257,17 @@ base::span ChromeURLHosts() +@@ -256,17 +256,17 @@ base::span ChromeURLHosts() ash::kChromeUIInternetDetailDialogHost, #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 c03a5b969312..114994e38cef 100644 --- a/www/chromium/files/patch-chrome_common_webui__url__constants.h +++ b/www/chromium/files/patch-chrome_common_webui__url__constants.h @@ -1,40 +1,31 @@ ---- chrome/common/webui_url_constants.h.orig 2026-08-12 09:02:10 UTC +--- chrome/common/webui_url_constants.h.orig 2026-08-31 10:59:09 UTC +++ chrome/common/webui_url_constants.h -@@ -480,12 +480,12 @@ bool IsSystemWebUIHost(std::string_view host); +@@ -438,12 +438,12 @@ bool IsSystemWebUIHost(std::string_view host); #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) 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 kChromeUIDefaultBrowserModalURL[] = "chrome://default-browser-modal/"; inline constexpr char kChromeUIDefaultBrowserModalHost[] = -@@ -508,11 +508,11 @@ inline constexpr char kChromeUILinuxProxyConfigHost[] +@@ -466,11 +466,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"; -@@ -548,7 +548,7 @@ inline constexpr char kChromeUIUpdaterHost[] = "update - inline constexpr char kChromeUIUpdaterURL[] = "chrome://updater/"; - #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_renderer_chrome__content__renderer__client.cc b/www/chromium/files/patch-chrome_renderer_chrome__content__renderer__client.cc index 6bce00fe794f..edcf15ae8326 100644 --- a/www/chromium/files/patch-chrome_renderer_chrome__content__renderer__client.cc +++ b/www/chromium/files/patch-chrome_renderer_chrome__content__renderer__client.cc @@ -1,29 +1,38 @@ ---- chrome/renderer/chrome_content_renderer_client.cc.orig 2026-07-01 06:24:19 UTC +--- chrome/renderer/chrome_content_renderer_client.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/renderer/chrome_content_renderer_client.cc -@@ -187,7 +187,7 @@ +@@ -188,7 +188,7 @@ #include "v8/include/v8-isolate.h" #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "components/webapps/isolated_web_apps/scheme.h" #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || // BUILDFLAG(IS_CHROMEOS) -@@ -426,7 +426,7 @@ void ChromeContentRendererClient::RenderThreadStarted( +@@ -438,7 +438,7 @@ void ChromeContentRendererClient::RenderThreadStarted( WebSecurityPolicy::RegisterURLSchemeAsExtension( WebString::FromAscii(extensions::kExtensionScheme)); #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) WebSecurityPolicy::RegisterURLSchemeAsIsolatedApp( WebString::FromAscii(webapps::kIsolatedAppScheme)); #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || -@@ -505,7 +505,7 @@ void ChromeContentRendererClient::RenderThreadStarted( +@@ -503,7 +503,7 @@ void ChromeContentRendererClient::RenderThreadStarted( WebString::FromAscii(chrome::kChromeSearchScheme)); #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // IWAs can be enabled by either the feature flag or by enterprise // policy. In either case the kEnableIsolatedWebAppsInRenderer flag is passed // to the renderer process. +@@ -558,7 +558,7 @@ void ChromeContentRendererClient::RenderThreadStarted( + WebSecurityPolicy::RegisterURLSchemeAsDisplayIsolated(dom_distiller_scheme); + + #if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \ +- BUILDFLAG(IS_WIN) ++ BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) + if (base::FeatureList::IsEnabled(features::kGoogleChromeScheme)) { + #if BUILDFLAG(GOOGLE_CHROME_BRANDING) + WebSecurityPolicy::RegisterURLSchemeAsDirectLaunch( diff --git a/www/chromium/files/patch-chrome_test_supervised__user_google__auth__state__waiter__mixin.cc b/www/chromium/files/patch-chrome_test_supervised__user_google__auth__state__waiter__mixin.cc index 759cce42ba71..bbff9a91ec3d 100644 --- a/www/chromium/files/patch-chrome_test_supervised__user_google__auth__state__waiter__mixin.cc +++ b/www/chromium/files/patch-chrome_test_supervised__user_google__auth__state__waiter__mixin.cc @@ -1,11 +1,11 @@ ---- chrome/test/supervised_user/google_auth_state_waiter_mixin.cc.orig 2024-10-22 08:31:56 UTC +--- chrome/test/supervised_user/google_auth_state_waiter_mixin.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/test/supervised_user/google_auth_state_waiter_mixin.cc @@ -24,7 +24,7 @@ GoogleAuthStateWaiterMixin::GoogleAuthStateWaiterMixin GoogleAuthStateWaiterMixin::~GoogleAuthStateWaiterMixin() = default; void GoogleAuthStateWaiterMixin::SetUpOnMainThread() { -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) ChildAccountService* child_account_service = ChildAccountServiceFactory::GetForProfile( - test_base_->browser()->profile()); + test_base_->browser()->GetProfile()); diff --git a/www/chromium/files/patch-chrome_utility_services.cc b/www/chromium/files/patch-chrome_utility_services.cc index a1259a58b1df..1051a9be2eae 100644 --- a/www/chromium/files/patch-chrome_utility_services.cc +++ b/www/chromium/files/patch-chrome_utility_services.cc @@ -1,29 +1,29 @@ ---- chrome/utility/services.cc.orig 2026-08-12 09:02:10 UTC +--- chrome/utility/services.cc.orig 2026-08-31 10:59:09 UTC +++ chrome/utility/services.cc -@@ -52,7 +52,7 @@ +@@ -57,7 +57,7 @@ #include "services/proxy_resolver_mac/mac_system_proxy_resolver_impl.h" #endif // BUILDFLAG(IS_MAC) -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "chrome/services/system_signals/linux/linux_system_signals_service.h" #endif // BUILDFLAG(IS_LINUX) -@@ -209,7 +209,7 @@ auto RunMacSystemProxyResolver( +@@ -220,7 +220,7 @@ auto RunMacSystemProxyResolver( } #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) auto RunSystemSignalsService( mojo::PendingReceiver receiver) { -@@ -475,7 +475,7 @@ void RegisterMainThreadServices(mojo::ServiceFactory& +@@ -510,7 +510,7 @@ void RegisterMainThreadServices(mojo::ServiceFactory& services.Add(RunWindowsIconReader); #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) services.Add(RunSystemSignalsService); #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) diff --git a/www/chromium/files/patch-chromeos_ash_components_mojo__proxy_mojo__core_core_channel.cc b/www/chromium/files/patch-chromeos_ash_components_mojo__proxy_mojo__core_core_channel.cc deleted file mode 100644 index fddc9e1457ce..000000000000 --- a/www/chromium/files/patch-chromeos_ash_components_mojo__proxy_mojo__core_core_channel.cc +++ /dev/null @@ -1,20 +0,0 @@ ---- chromeos/ash/components/mojo_proxy/mojo_core/core/channel.cc.orig 2026-08-12 09:02:10 UTC -+++ chromeos/ash/components/mojo_proxy/mojo_core/core/channel.cc -@@ -268,7 +268,7 @@ bool ShouldRecordSubsampledHistograms() { - } // namespace - - #if BUILDFLAG(IS_ANDROID) || \ -- (BUILDFLAG(IS_LINUX) && defined(FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION)) -+ ((BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && defined(FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION)) - - namespace { - -@@ -1317,7 +1317,7 @@ bool Channel::OnControlMessage(Message::MessageType me - } - - // Currently only CrOs, Linux, and Android support upgrades. --#if !(BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID)) -+#if !(BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD)) - // static - MOJO_LEGACY_SYSTEM_IMPL_EXPORT bool Channel::SupportsChannelUpgrade() { - return false; diff --git a/www/chromium/files/patch-chromeos_ash_components_mojo__proxy_mojo__core_core_channel.h b/www/chromium/files/patch-chromeos_ash_components_mojo__proxy_mojo__core_core_channel.h deleted file mode 100644 index 9a88ccdf9ac6..000000000000 --- a/www/chromium/files/patch-chromeos_ash_components_mojo__proxy_mojo__core_core_channel.h +++ /dev/null @@ -1,11 +0,0 @@ ---- chromeos/ash/components/mojo_proxy/mojo_core/core/channel.h.orig 2026-08-12 09:02:10 UTC -+++ chromeos/ash/components/mojo_proxy/mojo_core/core/channel.h -@@ -169,7 +169,7 @@ class MOJO_LEGACY_SYSTEM_IMPL_EXPORT Channel - } v2; - - #if BUILDFLAG(IS_ANDROID) || \ -- (BUILDFLAG(IS_LINUX) && defined(FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION)) -+ ((BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && defined(FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION)) - // On Android for each pair of connected ipcz::Node instances both sides - // of the connection run the same version of code. Restricting this - // extension of IpczHeader to Android allows to iterate on the wire format diff --git a/www/chromium/files/patch-chromeos_ash_components_mojo__proxy_mojo__core_core_channel__posix.cc b/www/chromium/files/patch-chromeos_ash_components_mojo__proxy_mojo__core_core_channel__posix.cc index 5fb336d9901e..8c31d2404b21 100644 --- a/www/chromium/files/patch-chromeos_ash_components_mojo__proxy_mojo__core_core_channel__posix.cc +++ b/www/chromium/files/patch-chromeos_ash_components_mojo__proxy_mojo__core_core_channel__posix.cc @@ -1,29 +1,20 @@ ---- chromeos/ash/components/mojo_proxy/mojo_core/core/channel_posix.cc.orig 2026-08-12 09:02:10 UTC +--- chromeos/ash/components/mojo_proxy/mojo_core/core/channel_posix.cc.orig 2026-08-31 10:59:09 UTC +++ chromeos/ash/components/mojo_proxy/mojo_core/core/channel_posix.cc -@@ -30,7 +30,7 @@ +@@ -28,7 +28,7 @@ #include "build/build_config.h" #include "chromeos/ash/components/mojo_proxy/mojo_core/public/cpp/platform/socket_utils_posix.h" -#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID)) +#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD)) #include "chromeos/ash/components/mojo_proxy/mojo_core/core/channel_linux.h" #endif -@@ -600,7 +600,7 @@ scoped_refptr Channel::Create( +@@ -574,7 +574,7 @@ scoped_refptr Channel::Create( ConnectionParams connection_params, HandlePolicy handle_policy, scoped_refptr io_task_runner) { -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) return new ChannelLinux(delegate, std::move(connection_params), handle_policy, io_task_runner); #else -@@ -609,7 +609,7 @@ scoped_refptr Channel::Create( - #endif - } - --#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID)) -+#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD)) - // static - bool Channel::SupportsChannelUpgrade() { - return ChannelLinux::KernelSupportsUpgradeRequirements() && diff --git a/www/chromium/files/patch-chromeos_ash_components_mojo__proxy_mojo__core_core_embedder_embedder.cc b/www/chromium/files/patch-chromeos_ash_components_mojo__proxy_mojo__core_core_embedder_embedder.cc deleted file mode 100644 index 4ea36bd93a76..000000000000 --- a/www/chromium/files/patch-chromeos_ash_components_mojo__proxy_mojo__core_core_embedder_embedder.cc +++ /dev/null @@ -1,20 +0,0 @@ ---- chromeos/ash/components/mojo_proxy/mojo_core/core/embedder/embedder.cc.orig 2026-08-12 09:02:10 UTC -+++ chromeos/ash/components/mojo_proxy/mojo_core/core/embedder/embedder.cc -@@ -37,7 +37,7 @@ - #include "chromeos/ash/components/mojo_proxy/mojo_core/core/node_controller.h" - #endif - --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) - #include "chromeos/ash/components/mojo_proxy/mojo_core/core/channel_linux.h" - #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || - // BUILDFLAG(IS_ANDROID) -@@ -79,7 +79,7 @@ void InitFeatures() { - CHECK(base::FeatureList::GetInstance()); - - #if BUILDFLAG(IS_POSIX) && !BUILDFLAG(MOJO_LEGACY_USE_APPLE_CHANNEL) --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) - bool shared_mem_enabled = base::FeatureList::IsEnabled(kMojoUseEventFd); - int num_pages = kMojoUseEventFdPages.Get(); - if (num_pages < 0) { diff --git a/www/chromium/files/patch-components_BUILD.gn b/www/chromium/files/patch-components_BUILD.gn index 238b52a2ee6f..bd8e07bce095 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 2026-08-12 09:02:10 UTC +--- components/BUILD.gn.orig 2026-08-31 10:59:09 UTC +++ components/BUILD.gn -@@ -226,7 +226,6 @@ test("components_unittests") { +@@ -228,7 +228,6 @@ test("components_unittests") { "//components/contextual_search/internal:unit_tests", "//components/contextual_tasks:unit_tests", "//components/country_codes:unit_tests", - "//components/crash/core/common:unit_tests", "//components/critical_actions/core/browser:unit_tests", "//components/cross_device/logging:unit_tests", "//components/crx_file:unit_tests", -@@ -662,7 +661,7 @@ test("components_unittests") { - "//components/user_data_importer/content:unit_tests", +@@ -663,7 +662,7 @@ test("components_unittests") { + "//components/user_education/webui: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", -@@ -852,7 +851,7 @@ test("components_unittests") { +@@ -837,7 +836,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) { +- if (is_win || is_mac || is_linux || is_chromeos) { ++ if (is_win || is_mac || (is_linux && !is_bsd) || is_chromeos) { deps += [ - "//components/stability_report:unit_tests", - "//components/webapps/isolated_web_apps:unit_tests", + "//components/metrics/private_metrics:unit_tests", + "//components/metrics/structured:unit_tests", 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 67d2236f5412..9c8cf5aa70ae 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 2026-08-12 09:02:10 UTC +--- components/autofill/core/browser/foundations/browser_autofill_manager.cc.orig 2026-08-31 10:59:09 UTC +++ components/autofill/core/browser/foundations/browser_autofill_manager.cc -@@ -884,7 +884,7 @@ BrowserAutofillManager::GetAmountExtractionManager() { +@@ -886,7 +886,7 @@ BrowserAutofillManager::GetAmountExtractionManager() { payments::BnplManager* BrowserAutofillManager::GetPaymentsBnplManager() { #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) if (!bnpl_manager_) { bnpl_manager_ = std::make_unique(this); } diff --git a/www/chromium/files/patch-components_autofill_core_browser_integrators_autofill__ai_management__utils.cc b/www/chromium/files/patch-components_autofill_core_browser_integrators_autofill__ai_management__utils.cc new file mode 100644 index 000000000000..7c63e3b8b6bc --- /dev/null +++ b/www/chromium/files/patch-components_autofill_core_browser_integrators_autofill__ai_management__utils.cc @@ -0,0 +1,56 @@ +--- components/autofill/core/browser/integrators/autofill_ai/management_utils.cc.orig 2026-08-31 10:59:09 UTC ++++ components/autofill/core/browser/integrators/autofill_ai/management_utils.cc +@@ -35,7 +35,7 @@ EntityTypeResources GetResourcesForType(EntityTypeName + .section_title_id = IDS_AUTOFILL_AI_DRIVERS_LICENSES_TITLE, + .add_entity_id = IDS_AUTOFILL_AI_ADD_DRIVERS_LICENSE_ENTITY, + #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || \ +- BUILDFLAG(IS_CHROMEOS) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + .add_entity_branded_id = IDS_AUTOFILL_AI_SAVE_DRIVERS_LICENSE_ENTITY_DIALOG_TITLE_BRANDED, + #endif + .edit_entity_id = IDS_AUTOFILL_AI_EDIT_DRIVERS_LICENSE_ENTITY, +@@ -46,7 +46,7 @@ EntityTypeResources GetResourcesForType(EntityTypeName + .section_title_id = IDS_AUTOFILL_AI_KNOWN_TRAVELER_NUMBER_TITLE, + .add_entity_id = IDS_AUTOFILL_AI_ADD_KNOWN_TRAVELER_NUMBER_ENTITY, + #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || \ +- BUILDFLAG(IS_CHROMEOS) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + .add_entity_branded_id = + IDS_AUTOFILL_AI_SAVE_KNOWN_TRAVELER_NUMBER_ENTITY_DIALOG_TITLE_BRANDED, + #endif +@@ -59,7 +59,7 @@ EntityTypeResources GetResourcesForType(EntityTypeName + .section_title_id = IDS_AUTOFILL_AI_NATIONAL_IDS_SHORT_TITLE, + .add_entity_id = IDS_AUTOFILL_AI_ADD_NATIONAL_ID_CARD_ENTITY, + #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || \ +- BUILDFLAG(IS_CHROMEOS) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + .add_entity_branded_id = + IDS_AUTOFILL_AI_SAVE_ID_CARD_ENTITY_DIALOG_TITLE_BRANDED, + #endif +@@ -71,7 +71,7 @@ EntityTypeResources GetResourcesForType(EntityTypeName + .section_title_id = IDS_AUTOFILL_AI_PASSPORTS_TITLE, + .add_entity_id = IDS_AUTOFILL_AI_ADD_PASSPORT_ENTITY, + #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || \ +- BUILDFLAG(IS_CHROMEOS) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + .add_entity_branded_id = + IDS_AUTOFILL_AI_SAVE_PASSPORT_ENTITY_DIALOG_TITLE_BRANDED, + #endif +@@ -83,7 +83,7 @@ EntityTypeResources GetResourcesForType(EntityTypeName + .section_title_id = IDS_AUTOFILL_AI_REDRESS_NUMBER_TITLE, + .add_entity_id = IDS_AUTOFILL_AI_ADD_REDRESS_NUMBER_ENTITY, + #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || \ +- BUILDFLAG(IS_CHROMEOS) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + .add_entity_branded_id = + IDS_AUTOFILL_AI_SAVE_REDRESS_NUMBER_ENTITY_DIALOG_TITLE_BRANDED, + #endif +@@ -95,7 +95,7 @@ EntityTypeResources GetResourcesForType(EntityTypeName + .section_title_id = IDS_AUTOFILL_AI_VEHICLES_TITLE, + .add_entity_id = IDS_AUTOFILL_AI_ADD_VEHICLE_ENTITY, + #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || \ +- BUILDFLAG(IS_CHROMEOS) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + .add_entity_branded_id = + IDS_AUTOFILL_AI_SAVE_VEHICLE_ENTITY_DIALOG_TITLE_BRANDED, + #endif 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 31439bd95b39..7045cc7378ac 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,29 +1,38 @@ ---- components/autofill/core/browser/payments/amount_extraction_manager.cc.orig 2026-08-12 09:02:10 UTC +--- components/autofill/core/browser/payments/amount_extraction_manager.cc.orig 2026-08-31 10:59:09 UTC +++ components/autofill/core/browser/payments/amount_extraction_manager.cc -@@ -296,7 +296,7 @@ void AmountExtractionManager::OnCheckoutAmountReceived - /*timeout_reached=*/false); - } +@@ -319,7 +319,7 @@ void AmountExtractionManager::OnCheckoutAmountReceived + .Run(parsed_extracted_amount, + /*timeout_reached=*/false); if constexpr (BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || - BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID)) { + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD)) { if (base::FeatureList::IsEnabled( features::kAutofillEnableAmountExtractionTesting)) { VLOG(3) << "The result of amount extraction on domain " -@@ -384,7 +384,7 @@ void AmountExtractionManager::OnTimeoutReached() { +@@ -389,7 +389,7 @@ void AmountExtractionManager::OnTimeoutReached( } if constexpr (BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || - BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID)) { + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD)) { if (base::FeatureList::IsEnabled( features::kAutofillEnableAmountExtractionTesting)) { VLOG(3) << "The amount extraction on domain " -@@ -404,7 +404,7 @@ AmountExtractionManager::CheckEligibilityForFeaturesRe +@@ -414,7 +414,7 @@ void AmountExtractionManager::OnTimeoutReachedWithAi( + std::move(callback).Run(std::move(result)); + + if constexpr (BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || +- BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID)) { ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD)) { + if (base::FeatureList::IsEnabled( + features::kAutofillEnableAmountExtractionTesting)) { + VLOG(3) << "The amount extraction on domain " +@@ -434,7 +434,7 @@ AmountExtractionManager::CheckEligibilityForFeaturesRe // Check eligibility of BNPL feature. if constexpr (BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || - BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID)) { + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD)) { if (IsEligibleForBnpl(autofill_manager_->client())) { 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 35d7660e9074..25173bad706d 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 2026-08-12 09:02:10 UTC +--- components/autofill/core/browser/payments/bnpl_manager.cc.orig 2026-08-31 10:59:09 UTC +++ components/autofill/core/browser/payments/bnpl_manager.cc -@@ -1083,7 +1083,7 @@ void BnplManager::MaybeUpdateDesktopSuggestionsWithBnp +@@ -1113,7 +1113,7 @@ void BnplManager::MaybeUpdateDesktopSuggestionsWithBnp .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_suggestions_payments_credit__card__suggestion__generator.cc b/www/chromium/files/patch-components_autofill_core_browser_suggestions_payments_credit__card__suggestion__generator.cc index 3c9dc2e40912..daf1284b01cf 100644 --- a/www/chromium/files/patch-components_autofill_core_browser_suggestions_payments_credit__card__suggestion__generator.cc +++ b/www/chromium/files/patch-components_autofill_core_browser_suggestions_payments_credit__card__suggestion__generator.cc @@ -1,11 +1,11 @@ ---- components/autofill/core/browser/suggestions/payments/credit_card_suggestion_generator.cc.orig 2026-07-01 06:24:19 UTC +--- components/autofill/core/browser/suggestions/payments/credit_card_suggestion_generator.cc.orig 2026-08-31 10:59:09 UTC +++ components/autofill/core/browser/suggestions/payments/credit_card_suggestion_generator.cc -@@ -55,7 +55,7 @@ using SuggestionDataSource = SuggestionGenerator::Sugg +@@ -211,7 +211,7 @@ using SuggestionDataSource = SuggestionGenerator::Sugg bool IsSaveAndFillEnabled() { #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) return base::FeatureList::IsEnabled(features::kAutofillEnableSaveAndFill); #elif BUILDFLAG(IS_IOS) return base::FeatureList::IsEnabled( diff --git a/www/chromium/files/patch-components_autofill_core_common_autofill__features.cc b/www/chromium/files/patch-components_autofill_core_common_autofill__features.cc deleted file mode 100644 index 1f24981e3a2c..000000000000 --- a/www/chromium/files/patch-components_autofill_core_common_autofill__features.cc +++ /dev/null @@ -1,11 +0,0 @@ ---- components/autofill/core/common/autofill_features.cc.orig 2026-03-13 06:02:14 UTC -+++ components/autofill/core/common/autofill_features.cc -@@ -10,7 +10,7 @@ namespace autofill::features { - - namespace { - constexpr bool IS_AUTOFILL_AI_PLATFORM = BUILDFLAG(IS_CHROMEOS) || -- BUILDFLAG(IS_LINUX) || -+ BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) || - BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN); - } // namespace - 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 f9c36e8fc9db..253050745097 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,110 +1,110 @@ ---- components/autofill/core/common/autofill_payments_features.cc.orig 2026-08-12 09:02:10 UTC +--- components/autofill/core/common/autofill_payments_features.cc.orig 2026-08-31 10:59:09 UTC +++ components/autofill/core/common/autofill_payments_features.cc @@ -32,7 +32,7 @@ BASE_FEATURE(kAutofillDisableBnplCountryCheckForTestin // page using server-side AI. BASE_FEATURE(kAutofillEnableAiBasedAmountExtraction, #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) base::FEATURE_ENABLED_BY_DEFAULT); #else base::FEATURE_DISABLED_BY_DEFAULT); @@ -48,7 +48,7 @@ BASE_FEATURE(kAutofillEnableAiCardRecommendation, // of the allowlisted merchant websites. BASE_FEATURE(kAutofillEnableAmountExtraction, #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) base::FEATURE_ENABLED_BY_DEFAULT); #else base::FEATURE_DISABLED_BY_DEFAULT); @@ -81,7 +81,7 @@ BASE_FEATURE(kAutofillEnableBottomSheetScanCardAndFill // When enabled, buy now pay later (BNPL) in Autofill will be offered. BASE_FEATURE(kAutofillEnableBuyNowPayLater, #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) base::FEATURE_ENABLED_BY_DEFAULT); #else base::FEATURE_DISABLED_BY_DEFAULT); @@ -92,7 +92,7 @@ BASE_FEATURE(kAutofillEnableBuyNowPayLater, // (BNPL) issuers that are externally linked. BASE_FEATURE(kAutofillEnableBuyNowPayLaterForExternallyLinked, #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); @@ -103,7 +103,7 @@ BASE_FEATURE(kAutofillEnableBuyNowPayLaterForExternall // offered. BASE_FEATURE(kAutofillEnableBuyNowPayLaterForKlarna, #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); @@ -113,7 +113,7 @@ BASE_FEATURE(kAutofillEnableBuyNowPayLaterForKlarna, // When enabled, buy now pay later (BNPL) data will be synced to Chrome clients. BASE_FEATURE(kAutofillEnableBuyNowPayLaterSyncing, #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) base::FEATURE_ENABLED_BY_DEFAULT); #else base::FEATURE_DISABLED_BY_DEFAULT); @@ -124,7 +124,7 @@ BASE_FEATURE(kAutofillEnableBuyNowPayLaterSyncing, // include the issuer names for better brand recognition. BASE_FEATURE(kAutofillEnableBuyNowPayLaterUpdatedSuggestionSecondLineString, #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) base::FEATURE_ENABLED_BY_DEFAULT); #else base::FEATURE_DISABLED_BY_DEFAULT); @@ -144,7 +144,7 @@ BASE_FEATURE(kAutofillEnableCardBenefitsForAmericanExp // UI. BASE_FEATURE(kAutofillEnableCardBenefitsForBmo, #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) base::FEATURE_ENABLED_BY_DEFAULT); #else base::FEATURE_DISABLED_BY_DEFAULT); @@ -183,7 +183,7 @@ BASE_FEATURE(kAutofillEnableFlatRateCardBenefitsBlockl // Payments Autofill UI. BASE_FEATURE(kAutofillEnableFlatRateCardBenefitsFromCurinos, #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) base::FEATURE_ENABLED_BY_DEFAULT); #else base::FEATURE_DISABLED_BY_DEFAULT); @@ -271,7 +271,7 @@ BASE_FEATURE(kAutofillEnableTravelCategoryAndMerchantB // the card, and FIDO is not. BASE_FEATURE(kAutofillEnableVcn3dsAuthentication, #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); -@@ -307,7 +307,7 @@ BASE_FEATURE(kAutofillIgnoreEmptyCvcsInSyncBridge, +@@ -313,7 +313,7 @@ BASE_FEATURE(kAutofillIgnoreEmptyCvcsInSyncBridge, // eligibility. BASE_FEATURE(kAutofillPreferBuyNowPayLaterBlocklists, #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) base::FEATURE_ENABLED_BY_DEFAULT); #else base::FEATURE_DISABLED_BY_DEFAULT); -@@ -353,7 +353,7 @@ BASE_FEATURE(kAutofillUpstreamEnforceStrikeDelay, +@@ -371,7 +371,7 @@ BASE_FEATURE(kAutofillUpstreamEnforceStrikeDelay, 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_cbor_BUILD.gn b/www/chromium/files/patch-components_cbor_BUILD.gn new file mode 100644 index 000000000000..9b5be02ea0dd --- /dev/null +++ b/www/chromium/files/patch-components_cbor_BUILD.gn @@ -0,0 +1,30 @@ +--- components/cbor/BUILD.gn.orig 2026-08-31 10:59:09 UTC ++++ components/cbor/BUILD.gn +@@ -12,7 +12,7 @@ buildflag_header("buildflags") { + # TODO(crbug.com/535682335): Remove `USE_CBOR_RUST` buildflag entirely, + # unconditionally enable Rust CBOR parser, and drop `is_cronet_build` check + # once Cronet supports Crubit dependencies. +- flags = [ "USE_CBOR_RUST=!$is_cronet_build" ] ++ flags = [ "USE_CBOR_RUST=false" ] + } + + component("cbor") { +@@ -37,12 +37,12 @@ component("cbor") { + "//base", + ] + +- if (!is_cronet_build) { +- public_deps = [ +- "//build/rust/crubit", +- "//components/cbor/rust:cbor_rust_bindings", +- ] +- } ++# if (!is_cronet_build) { ++# public_deps = [ ++# "//build/rust/crubit", ++# "//components/cbor/rust:cbor_rust_bindings", ++# ] ++# } + } + + source_set("unit_tests") { diff --git a/www/chromium/files/patch-components_device__signals_core_browser_browser__utils.h b/www/chromium/files/patch-components_device__signals_core_browser_browser__utils.h index 9b18e6e64a3e..c60c49f93662 100644 --- a/www/chromium/files/patch-components_device__signals_core_browser_browser__utils.h +++ b/www/chromium/files/patch-components_device__signals_core_browser_browser__utils.h @@ -1,20 +1,20 @@ ---- components/device_signals/core/browser/browser_utils.h.orig 2025-09-06 10:01:20 UTC +--- components/device_signals/core/browser/browser_utils.h.orig 2026-08-31 10:59:09 UTC +++ components/device_signals/core/browser/browser_utils.h -@@ -38,7 +38,7 @@ bool GetSiteIsolationEnabled(); - std::string GetHostName(); +@@ -39,7 +39,7 @@ std::string GetHostName(); #endif // !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) + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_CHROMEOS) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Returns the hostname of the current machine. std::vector GetSystemDnsServers(); -@@ -46,7 +46,7 @@ std::vector GetSystemDnsServers(); - SettingValue GetOSFirewall(); - #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +@@ -48,7 +48,7 @@ SettingValue GetOSFirewall(); + #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || + // BUILDFLAG(IS_CHROMEOS) -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Returns the path to the ufw configuration file. const char** GetUfwConfigPath(); #endif // BUILDFLAG(IS_LINUX) diff --git a/www/chromium/files/patch-components_discardable__memory_service_discardable__shared__memory__manager.cc b/www/chromium/files/patch-components_discardable__memory_service_discardable__shared__memory__manager.cc index 38ac021d0ffe..671e125d63e3 100644 --- a/www/chromium/files/patch-components_discardable__memory_service_discardable__shared__memory__manager.cc +++ b/www/chromium/files/patch-components_discardable__memory_service_discardable__shared__memory__manager.cc @@ -1,11 +1,11 @@ ---- components/discardable_memory/service/discardable_shared_memory_manager.cc.orig 2026-07-01 06:24:19 UTC +--- components/discardable_memory/service/discardable_shared_memory_manager.cc.orig 2026-08-31 10:59:09 UTC +++ components/discardable_memory/service/discardable_shared_memory_manager.cc -@@ -177,6 +177,8 @@ uint64_t GetDefaultMaxBytes() { +@@ -178,6 +178,8 @@ uint64_t GetDefaultMaxBytes() { #if BUILDFLAG(IS_ANDROID) // Limits the number of FDs used to 32, assuming a 4MB allocation size. uint64_t default_max_bytes = 128 * kMegabyte; +#elif BUILDFLAG(IS_OPENBSD) + uint64_t default_max_bytes = 128 * kMegabyte; #else uint64_t default_max_bytes = 512 * kMegabyte; #endif 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 b457d6d4d9df..a1ad0a6339a5 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 2026-07-01 06:24:19 UTC +--- components/embedder_support/user_agent_utils.cc.orig 2026-08-31 10:59:09 UTC +++ components/embedder_support/user_agent_utils.cc @@ -283,7 +283,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; "; @@ -323,7 +323,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) { -@@ -592,7 +592,7 @@ std::string GetPlatformVersion() { +@@ -603,7 +603,7 @@ std::string GetPlatformVersion() { #if BUILDFLAG(IS_WIN) return GetWindowsPlatformVersion(); -#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_FUCHSIA) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) return std::string(); #else -@@ -629,6 +629,9 @@ std::string GetPlatformForUAMetadata() { +@@ -640,6 +640,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 -@@ -811,6 +814,16 @@ std::string BuildOSCpuInfoFromOSVersionAndCpuType(cons +@@ -822,6 +825,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_enterprise_browser_reporting_chrome__profile__request__generator.cc b/www/chromium/files/patch-components_enterprise_browser_reporting_chrome__profile__request__generator.cc new file mode 100644 index 000000000000..7ac55bb4959c --- /dev/null +++ b/www/chromium/files/patch-components_enterprise_browser_reporting_chrome__profile__request__generator.cc @@ -0,0 +1,11 @@ +--- components/enterprise/browser/reporting/chrome_profile_request_generator.cc.orig 2026-08-31 10:59:09 UTC ++++ components/enterprise/browser/reporting/chrome_profile_request_generator.cc +@@ -210,7 +210,7 @@ void ChromeProfileRequestGenerator::OnBaseReportsReady + signals_request.signal_names.emplace(device_signals::SignalName::kHotfixes); + #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) + if (enterprise_signals::features::IsCertificateCollectionEnabled() && + generation_config.challenge.has_value() && + !generation_config.challenge.value().empty()) { diff --git a/www/chromium/files/patch-components_enterprise_data__controls_core_browser_rule.cc b/www/chromium/files/patch-components_enterprise_data__controls_core_browser_rule.cc index 51d5b556b649..73fa235bf289 100644 --- a/www/chromium/files/patch-components_enterprise_data__controls_core_browser_rule.cc +++ b/www/chromium/files/patch-components_enterprise_data__controls_core_browser_rule.cc @@ -1,20 +1,20 @@ ---- components/enterprise/data_controls/core/browser/rule.cc.orig 2026-07-01 06:24:19 UTC +--- components/enterprise/data_controls/core/browser/rule.cc.orig 2026-08-31 10:59:09 UTC +++ components/enterprise/data_controls/core/browser/rule.cc -@@ -549,7 +549,7 @@ bool Rule::AddUnsupportedAttributeErrors( +@@ -611,7 +611,7 @@ bool Rule::AddUnsupportedAttributeErrors( }, }, #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) { Restriction::kFileDownload, { -@@ -632,7 +632,7 @@ bool Rule::AddUnsupportedRestrictionErrors( +@@ -731,7 +731,7 @@ bool Rule::AddUnsupportedRestrictionErrors( }, #endif // BUILDFLAG(ENTERPRISE_SCREENSHOT_PROTECTION) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) { Restriction::kFileDownload, { 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 081fa9d78c9f..67eaebf49fd5 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,20 +1,20 @@ ---- components/feature_engagement/public/feature_configurations.cc.orig 2026-08-12 09:02:10 UTC +--- components/feature_engagement/public/feature_configurations.cc.orig 2026-08-31 10:59:09 UTC +++ components/feature_engagement/public/feature_configurations.cc @@ -102,7 +102,7 @@ std::optional CreateNewUserGestureInPro std::optional GetClientSideFeatureConfig( const base::Feature* feature) { #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; -@@ -2357,7 +2357,7 @@ std::optional GetClientSideFeatureConfi +@@ -2397,7 +2397,7 @@ 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 295cc046aa80..b9ff5ac81b4f 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,38 +1,38 @@ ---- components/feature_engagement/public/feature_constants.cc.orig 2026-08-12 09:02:10 UTC +--- components/feature_engagement/public/feature_constants.cc.orig 2026-08-31 10:59:09 UTC +++ components/feature_engagement/public/feature_constants.cc @@ -32,7 +32,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", -@@ -955,7 +955,7 @@ BASE_FEATURE(kIPHiOSActiveDaysTrackingFeature, +@@ -967,7 +967,7 @@ BASE_FEATURE(kIPHiOSActiveDaysTrackingFeature, #endif // BUILDFLAG(IS_IOS) #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) BASE_FEATURE(kIPHAutofillAtMemoryFeature, "IPH_AutofillAtMemory", base::FEATURE_DISABLED_BY_DEFAULT); -@@ -1029,7 +1029,7 @@ BASE_FEATURE(kIPHLauncherSearchHelpUiFeature, +@@ -1033,7 +1033,7 @@ BASE_FEATURE(kIPHLauncherSearchHelpUiFeature, #endif #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || 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. -@@ -1046,7 +1046,7 @@ BASE_FEATURE(kIPHDesktopPWAsLinkCapturingLaunchAppInTa +@@ -1050,7 +1050,7 @@ BASE_FEATURE(kIPHDesktopPWAsLinkCapturingLaunchAppInTa #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) BASE_FEATURE(kIPHSignInBenefitsFeature, "IPH_SignInBenefits", base::FEATURE_DISABLED_BY_DEFAULT); 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 246d78adeeba..5936da8df075 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,36 +1,36 @@ ---- components/feature_engagement/public/feature_constants.h.orig 2026-08-12 09:02:10 UTC +--- components/feature_engagement/public/feature_constants.h.orig 2026-08-31 10:59:09 UTC +++ components/feature_engagement/public/feature_constants.h -@@ -31,7 +31,7 @@ FEATURE_CONSTANTS_DECLARE_FEATURE(kIPHDemoMode); +@@ -32,7 +32,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 -@@ -417,7 +417,7 @@ FEATURE_CONSTANTS_DECLARE_FEATURE(kIPHiOSActiveDaysTra +@@ -424,7 +424,7 @@ FEATURE_CONSTANTS_DECLARE_FEATURE(kIPHiOSActiveDaysTra #endif // BUILDFLAG(IS_IOS) #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) FEATURE_CONSTANTS_DECLARE_FEATURE(kIPHAutofillAtMemoryFeature); FEATURE_CONSTANTS_DECLARE_FEATURE(kIPHAutofillBnplAffirmOrZipSuggestionFeature); FEATURE_CONSTANTS_DECLARE_FEATURE( -@@ -452,13 +452,13 @@ FEATURE_CONSTANTS_DECLARE_FEATURE(kIPHLauncherSearchHe +@@ -458,13 +458,13 @@ FEATURE_CONSTANTS_DECLARE_FEATURE(kIPHLauncherSearchHe #endif #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) FEATURE_CONSTANTS_DECLARE_FEATURE(kIPHDesktopPWAsLinkCapturingLaunch); FEATURE_CONSTANTS_DECLARE_FEATURE(kIPHDesktopPWAsLinkCapturingLaunchAppInTab); #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) FEATURE_CONSTANTS_DECLARE_FEATURE(kIPHSignInBenefitsFeature); FEATURE_CONSTANTS_DECLARE_FEATURE(kIPHSignInBenefitsNewSigninFeature); 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 8587d7053a4d..fc1899769db4 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,38 +1,38 @@ ---- components/feature_engagement/public/feature_list.cc.orig 2026-08-12 09:02:10 UTC +--- components/feature_engagement/public/feature_list.cc.orig 2026-08-31 10:59:09 UTC +++ components/feature_engagement/public/feature_list.cc -@@ -247,7 +247,7 @@ const base::Feature* const kAllFeatures[] = { +@@ -248,7 +248,7 @@ const base::Feature* const kAllFeatures[] = { #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 -@@ -336,7 +336,7 @@ const base::Feature* const kAllFeatures[] = { +@@ -338,7 +338,7 @@ const base::Feature* const kAllFeatures[] = { // 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) // keep-sorted start case=no &kIPHAutofillAccountNameEmailSuggestionFeature, &kIPHAutofillAiOptInFeature, -@@ -370,7 +370,7 @@ const base::Feature* const kAllFeatures[] = { +@@ -371,7 +371,7 @@ const base::Feature* const kAllFeatures[] = { #endif // BUILDFLAG(IS_CHROMEOS) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // keep-sorted start case=no &kIPHDesktopPWAsLinkCapturingLaunch, &kIPHDesktopPWAsLinkCapturingLaunchAppInTab, -@@ -378,7 +378,7 @@ const base::Feature* const kAllFeatures[] = { - #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - // BUILDFLAG(IS_CHROMEOS) +@@ -383,7 +383,7 @@ const base::Feature* const kAllFeatures[] = { + &kIPHExtensionsPinnedByDefaultFeature, + #endif // BUILDFLAG(ENABLE_EXTENSIONS_CORE) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // keep-sorted start case=no &kIPHSignInBenefitsFeature, &kIPHSignInBenefitsNewSigninFeature, 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 b5c18244b184..59a53d0bba7e 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,72 +1,72 @@ ---- components/feature_engagement/public/feature_list.h.orig 2026-08-12 09:02:10 UTC +--- components/feature_engagement/public/feature_list.h.orig 2026-08-31 10:59:09 UTC +++ components/feature_engagement/public/feature_list.h -@@ -401,7 +401,7 @@ DEFINE_VARIATION_PARAM(kIPHiOSPinMostVisitedSiteFeatur +@@ -402,7 +402,7 @@ DEFINE_VARIATION_PARAM(kIPHiOSPinMostVisitedSiteFeatur #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 -@@ -545,7 +545,7 @@ DEFINE_VARIATION_PARAM(kIPHTabGroupsSharedTabFeedbackF +@@ -552,7 +552,7 @@ 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(kIPHAutofillAccountNameEmailSuggestionFeature, "IPH_AutofillAccountNameEmailSuggestion"); DEFINE_VARIATION_PARAM(kIPHAutofillAiOptInFeature, "IPH_AutofillAiOptIn"); -@@ -591,7 +591,7 @@ DEFINE_VARIATION_PARAM(kIPHLauncherSearchHelpUiFeature +@@ -597,7 +597,7 @@ DEFINE_VARIATION_PARAM(kIPHLauncherSearchHelpUiFeature #endif // BUILDFLAG(IS_CHROMEOS) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) DEFINE_VARIATION_PARAM(kIPHDesktopPWAsLinkCapturingLaunch, "IPH_DesktopPWAsLinkCapturingLaunch"); DEFINE_VARIATION_PARAM(kIPHDesktopPWAsLinkCapturingLaunchAppInTab, -@@ -599,7 +599,7 @@ DEFINE_VARIATION_PARAM(kIPHDesktopPWAsLinkCapturingLau +@@ -605,7 +605,7 @@ DEFINE_VARIATION_PARAM(kIPHDesktopPWAsLinkCapturingLau #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) DEFINE_VARIATION_PARAM(kIPHSignInBenefitsFeature, "IPH_SignInBenefits"); DEFINE_VARIATION_PARAM(kIPHSupervisedUserProfileSigninFeature, "IPH_SupervisedUserProfileSignin"); -@@ -837,7 +837,7 @@ inline constexpr flags_ui::FeatureEntry::FeatureVariat +@@ -845,7 +845,7 @@ inline constexpr flags_ui::FeatureEntry::FeatureVariat VARIATION_ENTRY(kIPHWhatsNewUpdatedFeature), // keep-sorted end #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) #if BUILDFLAG(ENABLE_EXTENSIONS) VARIATION_ENTRY(kIPHExtensionsMenuFeature), VARIATION_ENTRY(kIPHExtensionsRequestAccessButtonFeature), -@@ -910,7 +910,7 @@ inline constexpr flags_ui::FeatureEntry::FeatureVariat +@@ -922,7 +922,7 @@ 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) // keep-sorted start case=no VARIATION_ENTRY(kIPHAutofillAccountNameEmailSuggestionFeature), VARIATION_ENTRY(kIPHAutofillAiOptInFeature), -@@ -939,13 +939,13 @@ inline constexpr flags_ui::FeatureEntry::FeatureVariat +@@ -950,13 +950,13 @@ inline constexpr flags_ui::FeatureEntry::FeatureVariat VARIATION_ENTRY(kIPHLauncherSearchHelpUiFeature), #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) VARIATION_ENTRY(kIPHDesktopPWAsLinkCapturingLaunch), VARIATION_ENTRY(kIPHDesktopPWAsLinkCapturingLaunchAppInTab), #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) VARIATION_ENTRY(kIPHSignInBenefitsFeature), VARIATION_ENTRY(kIPHSupervisedUserProfileSigninFeature), #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) 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 e91f38b0d624..f4ad055ac458 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 2026-08-12 09:02:10 UTC +--- components/feed/core/v2/feed_network_impl_unittest.cc.orig 2026-08-31 10:59:09 UTC +++ components/feed/core/v2/feed_network_impl_unittest.cc -@@ -748,8 +748,8 @@ TEST_F(FeedNetworkTest, SendApiRequest_DecodesClientIn +@@ -749,8 +749,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_metrics_private__metrics_puma__service.cc b/www/chromium/files/patch-components_metrics_private__metrics_puma__service.cc index d5cc013bb10a..c45128edf080 100644 --- a/www/chromium/files/patch-components_metrics_private__metrics_puma__service.cc +++ b/www/chromium/files/patch-components_metrics_private__metrics_puma__service.cc @@ -1,11 +1,11 @@ ---- components/metrics/private_metrics/puma_service.cc.orig 2026-01-14 08:33:23 UTC +--- components/metrics/private_metrics/puma_service.cc.orig 2026-08-31 10:59:09 UTC +++ components/metrics/private_metrics/puma_service.cc -@@ -71,7 +71,7 @@ Platform GetCurrentPlatform() { +@@ -72,7 +72,7 @@ Platform GetCurrentPlatform() { return Platform::PLATFORM_WINDOWS; #elif BUILDFLAG(IS_MAC) return Platform::PLATFORM_MACOS; -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) return Platform::PLATFORM_LINUX; #elif BUILDFLAG(IS_ANDROID) // TODO(b/463580425): Differentiate between Android platforms. diff --git a/www/chromium/files/patch-components_optimization__guide_core_feature__registry_feature__registration.cc b/www/chromium/files/patch-components_optimization__guide_core_feature__registry_feature__registration.cc deleted file mode 100644 index a088a78cbfaf..000000000000 --- a/www/chromium/files/patch-components_optimization__guide_core_feature__registry_feature__registration.cc +++ /dev/null @@ -1,11 +0,0 @@ ---- components/optimization_guide/core/feature_registry/feature_registration.cc.orig 2026-08-12 09:02:10 UTC -+++ components/optimization_guide/core/feature_registry/feature_registration.cc -@@ -76,7 +76,7 @@ BASE_FEATURE(kProductSpecificationsMqlsLogging, - - BASE_FEATURE(kFormsClassificationsMqlsLogging, - BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || -- BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) -+ BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) - ? base::FEATURE_ENABLED_BY_DEFAULT - : base::FEATURE_DISABLED_BY_DEFAULT); - 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 48a9bab47c3b..864faad7d5a9 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 2026-08-12 09:02:10 UTC +--- components/optimization_guide/core/optimization_guide_features.cc.orig 2026-08-31 10:59:09 UTC +++ components/optimization_guide/core/optimization_guide_features.cc -@@ -96,7 +96,7 @@ BASE_FEATURE(kOptimizationGuideModelExecution, +@@ -97,7 +97,7 @@ BASE_FEATURE(kOptimizationGuideModelExecution, // Whether to use the on device model service in optimization guide. BASE_FEATURE(kOptimizationGuideOnDeviceModel, #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) base::FEATURE_ENABLED_BY_DEFAULT); #else base::FEATURE_DISABLED_BY_DEFAULT); diff --git a/www/chromium/files/patch-components_optimization__guide_core_optimization__guide__util.cc b/www/chromium/files/patch-components_optimization__guide_core_optimization__guide__util.cc index 2f24830fcd65..b4f709520bb2 100644 --- a/www/chromium/files/patch-components_optimization__guide_core_optimization__guide__util.cc +++ b/www/chromium/files/patch-components_optimization__guide_core_optimization__guide__util.cc @@ -1,20 +1,20 @@ ---- components/optimization_guide/core/optimization_guide_util.cc.orig 2026-06-04 10:12:25 UTC +--- components/optimization_guide/core/optimization_guide_util.cc.orig 2026-08-31 10:59:09 UTC +++ components/optimization_guide/core/optimization_guide_util.cc @@ -37,7 +37,7 @@ optimization_guide::proto::Platform GetPlatform() { return optimization_guide::proto::PLATFORM_CHROMEOS; #elif BUILDFLAG(IS_ANDROID) return optimization_guide::proto::PLATFORM_ANDROID; -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) return optimization_guide::proto::PLATFORM_LINUX; #else return optimization_guide::proto::PLATFORM_UNDEFINED; -@@ -184,7 +184,7 @@ optimization_guide::proto::ChromePlatform GetChromePla +@@ -195,7 +195,7 @@ optimization_guide::proto::ChromePlatform GetChromePla return optimization_guide::proto::CHROME_PLATFORM_CHROMEOS; #elif BUILDFLAG(IS_ANDROID) return optimization_guide::proto::CHROME_PLATFORM_ANDROID; -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) return optimization_guide::proto::CHROME_PLATFORM_LINUX; #else return optimization_guide::proto::CHROME_PLATFORM_UNKNOWN; diff --git a/www/chromium/files/patch-components_paint__preview_browser_paint__preview__client.cc b/www/chromium/files/patch-components_paint__preview_browser_paint__preview__client.cc index c86d6f4117e2..8d5c3a14ae3b 100644 --- a/www/chromium/files/patch-components_paint__preview_browser_paint__preview__client.cc +++ b/www/chromium/files/patch-components_paint__preview_browser_paint__preview__client.cc @@ -1,13 +1,13 @@ ---- components/paint_preview/browser/paint_preview_client.cc.orig 2026-05-07 17:02:56 UTC +--- components/paint_preview/browser/paint_preview_client.cc.orig 2026-08-31 10:59:09 UTC +++ components/paint_preview/browser/paint_preview_client.cc -@@ -464,8 +464,8 @@ void PaintPreviewClient::CapturePaintPreview( +@@ -465,8 +465,8 @@ void PaintPreviewClient::CapturePaintPreview( metadata->set_version(kPaintPreviewVersion); auto* chromeVersion = metadata->mutable_chrome_version(); const auto& current_chrome_version = version_info::GetVersion(); - chromeVersion->set_major(current_chrome_version.components()[0]); - chromeVersion->set_minor(current_chrome_version.components()[1]); + chromeVersion->set_gmajor(current_chrome_version.components()[0]); + chromeVersion->set_gminor(current_chrome_version.components()[1]); chromeVersion->set_build(current_chrome_version.components()[2]); chromeVersion->set_patch(current_chrome_version.components()[3]); document_data.callback = base::BindOnce( 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 fc0aaf6d7519..a49f4d4e9d9f 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 2026-08-12 09:02:10 UTC +--- components/password_manager/core/browser/features/password_features.cc.orig 2026-08-31 10:59:09 UTC +++ components/password_manager/core/browser/features/password_features.cc @@ -80,7 +80,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 -@@ -179,7 +179,7 @@ BASE_FEATURE(kPreventAPCOnFederatedLogin, base::FEATUR +@@ -181,7 +181,7 @@ BASE_FEATURE(kPreventAPCOnFederatedLogin, base::FEATUR BASE_FEATURE(kPreventPasswordManagerOnFederatedLogin, base::FEATURE_DISABLED_BY_DEFAULT); -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) BASE_FEATURE(kRestartToGainAccessToKeychain, #if BUILDFLAG(IS_MAC) base::FEATURE_ENABLED_BY_DEFAULT); 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 f03254f1c5e9..3619a42deba5 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 2026-08-12 09:02:10 UTC +--- components/password_manager/core/browser/features/password_features.h.orig 2026-08-31 10:59:09 UTC +++ components/password_manager/core/browser/features/password_features.h -@@ -194,7 +194,7 @@ BASE_DECLARE_FEATURE(kPreventAPCOnFederatedLogin); +@@ -198,7 +198,7 @@ BASE_DECLARE_FEATURE(kPreventAPCOnFederatedLogin); // Prevents password manager from showing save/update UI on federated login. BASE_DECLARE_FEATURE(kPreventPasswordManagerOnFederatedLogin); -#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 index ed2258f814a2..49046f5f44a4 100644 --- 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 @@ -1,29 +1,29 @@ ---- components/password_manager/core/browser/password_autofill_manager.cc.orig 2026-08-12 09:02:10 UTC +--- components/password_manager/core/browser/password_autofill_manager.cc.orig 2026-08-31 10:59:09 UTC +++ components/password_manager/core/browser/password_autofill_manager.cc -@@ -392,7 +392,7 @@ void PasswordAutofillManager::DidAcceptSuggestion( +@@ -403,7 +403,7 @@ void PasswordAutofillManager::DidAcceptSuggestion( weak_ptr_factory_.GetWeakPtr(), payload); if (payload.is_cross_domain) { #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, -@@ -443,7 +443,7 @@ void PasswordAutofillManager::DidAcceptSuggestion( +@@ -454,7 +454,7 @@ void PasswordAutofillManager::DidAcceptSuggestion( weak_ptr_factory_.GetWeakPtr(), *password_credential); 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, -@@ -706,7 +706,7 @@ void PasswordAutofillManager::DidNavigateMainFrame() { +@@ -723,7 +723,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 index 52299797b560..f6218a581ced 100644 --- 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 @@ -1,11 +1,11 @@ ---- components/password_manager/core/browser/password_autofill_manager.h.orig 2026-08-12 09:02:10 UTC +--- components/password_manager/core/browser/password_autofill_manager.h.orig 2026-08-31 10:59:09 UTC +++ components/password_manager/core/browser/password_autofill_manager.h -@@ -296,7 +296,7 @@ class PasswordAutofillManager : public autofill::Autof +@@ -304,7 +304,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 916f698b07c0..902a8278401f 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,20 +1,20 @@ ---- components/password_manager/core/browser/password_form_manager.cc.orig 2026-08-12 09:02:10 UTC +--- components/password_manager/core/browser/password_form_manager.cc.orig 2026-08-31 10:59:09 UTC +++ components/password_manager/core/browser/password_form_manager.cc @@ -239,7 +239,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()) { -@@ -948,7 +948,7 @@ void PasswordFormManager::OnFetchCompleted() { +@@ -953,7 +953,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 aa36e35c2795..88ec45406487 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 2026-08-12 09:02:10 UTC +--- components/password_manager/core/browser/password_manager_client.h.orig 2026-08-31 10:59:09 UTC +++ components/password_manager/core/browser/password_manager_client.h @@ -31,7 +31,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" -@@ -580,7 +580,7 @@ class PasswordManagerClient { +@@ -585,7 +585,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__manual__fallback__flow.cc b/www/chromium/files/patch-components_password__manager_core_browser_password__manual__fallback__flow.cc index 091bda5ad585..ba4da5bdf651 100644 --- a/www/chromium/files/patch-components_password__manager_core_browser_password__manual__fallback__flow.cc +++ b/www/chromium/files/patch-components_password__manager_core_browser_password__manual__fallback__flow.cc @@ -1,29 +1,29 @@ ---- components/password_manager/core/browser/password_manual_fallback_flow.cc.orig 2026-08-12 09:02:10 UTC +--- components/password_manager/core/browser/password_manual_fallback_flow.cc.orig 2026-08-31 10:59:09 UTC +++ components/password_manager/core/browser/password_manual_fallback_flow.cc @@ -52,7 +52,7 @@ std::u16string GetUsernameFromLabel(const std::u16stri } #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Returns the password form corresponding to the `payload` data. In most // cases there is only one such form stored, but having more than one or no // forms is also possible. If there is more than one form, showing any of them -@@ -344,7 +344,7 @@ void PasswordManualFallbackFlow::DidAcceptSuggestion( +@@ -350,7 +350,7 @@ void PasswordManualFallbackFlow::DidAcceptSuggestion( } case autofill::SuggestionType::kViewPasswordDetails: { #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) std::optional credentials = GetCorrespondingPasswordForm( suggestion.GetPayload(), -@@ -491,7 +491,7 @@ void PasswordManualFallbackFlow::EnsureCrossDomainPass +@@ -501,7 +501,7 @@ void PasswordManualFallbackFlow::EnsureCrossDomainPass const Suggestion::PasswordSuggestionDetails& payload, base::OnceClosure on_allowed) { #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) if (payload.is_cross_domain) { CHECK(payload.display_signon_realm); cross_domain_confirmation_popup_controller_ = diff --git a/www/chromium/files/patch-components_password__manager_core_browser_password__manual__fallback__flow.h b/www/chromium/files/patch-components_password__manager_core_browser_password__manual__fallback__flow.h index 9fa36d3fce61..5952491f58ac 100644 --- a/www/chromium/files/patch-components_password__manager_core_browser_password__manual__fallback__flow.h +++ b/www/chromium/files/patch-components_password__manager_core_browser_password__manual__fallback__flow.h @@ -1,20 +1,20 @@ ---- components/password_manager/core/browser/password_manual_fallback_flow.h.orig 2026-08-12 09:02:10 UTC +--- components/password_manager/core/browser/password_manual_fallback_flow.h.orig 2026-08-31 10:59:09 UTC +++ components/password_manager/core/browser/password_manual_fallback_flow.h @@ -20,7 +20,7 @@ #include "components/password_manager/core/browser/ui/saved_passwords_presenter.h" #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "components/password_manager/core/browser/password_cross_domain_confirmation_popup_controller.h" #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || // BUILDFLAG(IS_CHROMEOS) -@@ -185,7 +185,7 @@ class PasswordManualFallbackFlow : public autofill::Au +@@ -187,7 +187,7 @@ class PasswordManualFallbackFlow : public autofill::Au std::unique_ptr authenticator_; #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) std::unique_ptr cross_domain_confirmation_popup_controller_; #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || 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 7dfb70170135..96cb240dd089 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 2026-07-01 06:24:19 UTC +--- components/password_manager/core/browser/password_store/login_database.cc.orig 2026-08-31 10:59:09 UTC +++ components/password_manager/core/browser/password_store/login_database.cc -@@ -1015,7 +1015,7 @@ bool ShouldDeleteUndecryptablePasswords( +@@ -1016,7 +1016,7 @@ bool ShouldDeleteUndecryptablePasswords( bool is_enabled_by_policy, IsAccountStore is_account_store, const os_crypt_async::Encryptor* encryptor) { -#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. -@@ -1029,7 +1029,7 @@ bool ShouldDeleteUndecryptablePasswords( +@@ -1030,7 +1030,7 @@ bool ShouldDeleteUndecryptablePasswords( return false; } -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (command_line->HasSwitch(password_manager::kPasswordStore)) { return false; } 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 e38a6cf9b691..bcb507806308 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,16 +1,16 @@ ---- components/policy/core/common/cloud/cloud_policy_client.cc.orig 2026-08-12 09:02:10 UTC +--- components/policy/core/common/cloud/cloud_policy_client.cc.orig 2026-08-31 10:59:09 UTC +++ components/policy/core/common/cloud/cloud_policy_client.cc -@@ -852,11 +852,11 @@ void CloudPolicyClient::FetchPolicyInternal( +@@ -851,11 +851,11 @@ void CloudPolicyClient::FetchPolicyInternal( // Build policy fetch requests. em::DevicePolicyRequest* policy_request = request->mutable_policy_request(); -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) em::PolicyFetchRequest* fetch_request = nullptr; #endif for (const auto& type_to_fetch : types_to_fetch) { -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) fetch_request = AddPolicyFetchRequest(policy_request, type_to_fetch); // Only set browser device identifier for CBCM Chrome cloud policy on // desktop. diff --git a/www/chromium/files/patch-components_proxy__config_pref__proxy__config__tracker__impl.cc b/www/chromium/files/patch-components_proxy__config_pref__proxy__config__tracker__impl.cc index e7d375fdafec..35f1f0c8dea2 100644 --- a/www/chromium/files/patch-components_proxy__config_pref__proxy__config__tracker__impl.cc +++ b/www/chromium/files/patch-components_proxy__config_pref__proxy__config__tracker__impl.cc @@ -1,20 +1,20 @@ ---- components/proxy_config/pref_proxy_config_tracker_impl.cc.orig 2026-02-11 09:05:39 UTC +--- components/proxy_config/pref_proxy_config_tracker_impl.cc.orig 2026-08-31 10:59:09 UTC +++ components/proxy_config/pref_proxy_config_tracker_impl.cc -@@ -527,7 +527,7 @@ void PrefProxyConfigTrackerImpl::RegisterPrefs(PrefReg +@@ -531,7 +531,7 @@ void PrefProxyConfigTrackerImpl::RegisterPrefs(PrefReg registry->RegisterDictionaryPref(proxy_config::prefs::kProxy, ProxyConfigDictionary::CreateSystem()); registry->RegisterListPref(proxy_config::prefs::kProxyOverrideRules); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) registry->RegisterIntegerPref( proxy_config::prefs::kEnableProxyOverrideRulesForAllUsers, 0); registry->RegisterIntegerPref(proxy_config::prefs::kProxyOverrideRulesScope, -@@ -544,7 +544,7 @@ void PrefProxyConfigTrackerImpl::RegisterProfilePrefs( +@@ -546,7 +546,7 @@ void PrefProxyConfigTrackerImpl::RegisterProfilePrefs( ProxyConfigDictionary::CreateSystem()); registry->RegisterBooleanPref(proxy_config::prefs::kUseSharedProxies, false); registry->RegisterListPref(proxy_config::prefs::kProxyOverrideRules); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) registry->RegisterIntegerPref( proxy_config::prefs::kEnableProxyOverrideRulesForAllUsers, 0); registry->RegisterIntegerPref(proxy_config::prefs::kProxyOverrideRulesScope, diff --git a/www/chromium/files/patch-components_proxy__config_proxy__config__pref__names.h b/www/chromium/files/patch-components_proxy__config_proxy__config__pref__names.h index 1cb7038b6af3..c4e933750aa4 100644 --- a/www/chromium/files/patch-components_proxy__config_proxy__config__pref__names.h +++ b/www/chromium/files/patch-components_proxy__config_proxy__config__pref__names.h @@ -1,11 +1,11 @@ ---- components/proxy_config/proxy_config_pref_names.h.orig 2026-02-11 09:05:39 UTC +--- components/proxy_config/proxy_config_pref_names.h.orig 2026-08-31 10:59:09 UTC +++ components/proxy_config/proxy_config_pref_names.h @@ -19,7 +19,7 @@ inline constexpr char kUseSharedProxies[] = "settings. // Preference to store the value of the "ProxyOverrideRules" policy. inline constexpr char kProxyOverrideRules[] = "proxy_override_rules"; -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) - // Preferences to store the scope (user vs machine) and the affiliation status - // corresponding to the value set in `kProxyOverrideRules`. They are used to - // handle the policy differently when its source is a cloud user depending on + // Preference to store the scope (user vs machine) corresponding to the value + // set in `kProxyOverrideRules`. It is used to handle the policy differently + // when its source is a cloud user depending on its affiliation status and the diff --git a/www/chromium/files/patch-components_proxy__config_proxy__override__rules__policy__handler.cc b/www/chromium/files/patch-components_proxy__config_proxy__override__rules__policy__handler.cc index 7d96ff60dac1..599e2dad03f3 100644 --- a/www/chromium/files/patch-components_proxy__config_proxy__override__rules__policy__handler.cc +++ b/www/chromium/files/patch-components_proxy__config_proxy__override__rules__policy__handler.cc @@ -1,56 +1,47 @@ ---- components/proxy_config/proxy_override_rules_policy_handler.cc.orig 2026-03-13 06:02:14 UTC +--- components/proxy_config/proxy_override_rules_policy_handler.cc.orig 2026-08-31 10:59:09 UTC +++ components/proxy_config/proxy_override_rules_policy_handler.cc @@ -28,7 +28,7 @@ policy::PolicyErrorPath CreateNewPath( return path; } -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) bool UnaffiliatedPolicyAllowed(const policy::PolicyMap& policies) { const base::Value* enable_for_all_users_value = policies.GetValue(policy::key::kEnableProxyOverrideRulesForAllUsers, @@ -49,7 +49,7 @@ ProxyOverrideRulesPolicyHandler::ProxyOverrideRulesPol policy::key::kProxyOverrideRules, schema.GetKnownProperty(policy::key::kProxyOverrideRules), policy::SchemaOnErrorStrategy::SCHEMA_ALLOW_UNKNOWN) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) , enabled_for_all_users_handler_( policy::key::kEnableProxyOverrideRulesForAllUsers, @@ -66,7 +66,7 @@ ProxyOverrideRulesPolicyHandler::~ProxyOverrideRulesPo bool ProxyOverrideRulesPolicyHandler::CheckPolicySettings( const policy::PolicyMap& policies, policy::PolicyErrorMap* errors) { -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) // This code should run to set errors for - // `kEnableProxyOverrideRulesForAllUsers`. - enabled_for_all_users_handler_.CheckPolicySettings(policies, errors); -@@ -74,7 +74,7 @@ bool ProxyOverrideRulesPolicyHandler::CheckPolicySetti - - policy::SchemaValidatingPolicyHandler::CheckPolicySettings(policies, errors); + // `kEnableProxyOverrideRulesForAllUsers`, but the regular proxy override + // rules policy might still be valid so we ignore the returned boolean. +@@ -78,7 +78,7 @@ bool ProxyOverrideRulesPolicyHandler::CheckPolicySetti + 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) const policy::PolicyMap::Entry* proxy_override_rules_policy = policies.Get(policy_name()); if (proxy_override_rules_policy && -@@ -109,7 +109,7 @@ bool ProxyOverrideRulesPolicyHandler::CheckPolicySetti - void ProxyOverrideRulesPolicyHandler::ApplyPolicySettings( - const policy::PolicyMap& policies, - PrefValueMap* prefs) { --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) - // ALWAYS update affiliation, even if kProxyOverrideRules is not set. - // This ensures the state is captured in the Managed pref store and - // kept in sync with the latest policy bundle's affiliation status. -@@ -136,7 +136,7 @@ void ProxyOverrideRulesPolicyHandler::ApplyPolicySetti +@@ -129,7 +129,7 @@ void ProxyOverrideRulesPolicyHandler::ApplyPolicySetti prefs->SetValue(proxy_config::prefs::kProxyOverrideRules, policy_value->Clone()); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) prefs->SetInteger(proxy_config::prefs::kProxyOverrideRulesScope, policy->scope); #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) diff --git a/www/chromium/files/patch-components_proxy__config_proxy__prefs__utils.cc b/www/chromium/files/patch-components_proxy__config_proxy__prefs__utils.cc index ac0160c414c1..7f5c35747fa4 100644 --- a/www/chromium/files/patch-components_proxy__config_proxy__prefs__utils.cc +++ b/www/chromium/files/patch-components_proxy__config_proxy__prefs__utils.cc @@ -1,11 +1,11 @@ ---- components/proxy_config/proxy_prefs_utils.cc.orig 2026-03-13 06:02:14 UTC +--- components/proxy_config/proxy_prefs_utils.cc.orig 2026-08-31 10:59:09 UTC +++ components/proxy_config/proxy_prefs_utils.cc -@@ -60,7 +60,7 @@ net::ProxyChain ProxyOverrideRuleProxyFromString(std:: - - bool ProxyOverrideRulesAllowed(const PrefService* pref_service) { +@@ -64,7 +64,7 @@ net::ProxyChain ProxyOverrideRuleProxyFromString(std:: + bool ProxyOverrideRulesAllowed(const PrefService* pref_service, + policy::PolicyService* policy_service) { CHECK(pref_service); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) - if (pref_service->GetBoolean(prefs::kProxyOverrideRulesAffiliation) || - pref_service->GetInteger(prefs::kEnableProxyOverrideRulesForAllUsers) == - 1) { + if (pref_service->GetInteger(prefs::kEnableProxyOverrideRulesForAllUsers) == + 1) { + return true; diff --git a/www/chromium/files/patch-components_safe__browsing_core_browser_db_sb__protocol__manager__util.cc b/www/chromium/files/patch-components_safe__browsing_core_browser_db_sb__protocol__manager__util.cc index 56e62ba0e4d3..3beafc421827 100644 --- a/www/chromium/files/patch-components_safe__browsing_core_browser_db_sb__protocol__manager__util.cc +++ b/www/chromium/files/patch-components_safe__browsing_core_browser_db_sb__protocol__manager__util.cc @@ -1,11 +1,11 @@ ---- components/safe_browsing/core/browser/db/sb_protocol_manager_util.cc.orig 2026-06-04 10:12:25 UTC +--- components/safe_browsing/core/browser/db/sb_protocol_manager_util.cc.orig 2026-08-31 10:59:09 UTC +++ components/safe_browsing/core/browser/db/sb_protocol_manager_util.cc -@@ -121,7 +121,7 @@ std::ostream& operator<<(std::ostream& os, const ListI +@@ -207,7 +207,7 @@ std::ostream& operator<<(std::ostream& os, const ListI PlatformType GetCurrentPlatformType() { #if BUILDFLAG(IS_WIN) return WINDOWS_PLATFORM; -#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) return LINUX_PLATFORM; #elif BUILDFLAG(IS_IOS) return IOS_PLATFORM; 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 6eb11ee241f1..e819b0edca55 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 2026-08-12 09:02:10 UTC +--- components/search_engines/template_url_service.cc.orig 2026-08-31 10:59:09 UTC +++ components/search_engines/template_url_service.cc -@@ -3721,7 +3721,7 @@ bool TemplateURLService::MatchesDefaultSearchProvider( +@@ -3746,7 +3746,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_services_font__data_font__data__service__impl.cc b/www/chromium/files/patch-components_services_font__data_font__data__service__impl.cc deleted file mode 100644 index 5ae67607e83f..000000000000 --- a/www/chromium/files/patch-components_services_font__data_font__data__service__impl.cc +++ /dev/null @@ -1,11 +0,0 @@ ---- components/services/font_data/font_data_service_impl.cc.orig 2026-06-04 10:12:25 UTC -+++ components/services/font_data/font_data_service_impl.cc -@@ -121,7 +121,7 @@ std::tuple FontDataServiceImpl:: - typeface.getResourceName(&font_path); - base::UmaHistogramBoolean("Chrome.FontDataService.EmptyPathOnGetFileHandle", - font_path.isEmpty()); --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - // TODO(crbug.com/463411679): `getResourceName()` is not implemented for - // Linux nor ChromeOS, so the returned file will always be invalid and a - // memory region will be shared instead. 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 0ce7c1c4ddcf..8576a79e151a 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,136 +1,142 @@ ---- components/signin/public/base/signin_switches.cc.orig 2026-08-12 09:02:10 UTC +--- components/signin/public/base/signin_switches.cc.orig 2026-08-31 10:59:09 UTC +++ components/signin/public/base/signin_switches.cc @@ -33,7 +33,7 @@ const char kForceFreFeatureShowcaseSteps[] = "force-fr #endif // BUILDFLAG(ENABLE_DICE_SUPPORT) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_ANDROID) + BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) // Feature param to pass probability for identity surveys. constexpr char kHatsSurveyProbabilityName[] = "probability"; #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || @@ -84,7 +84,7 @@ base::TimeDelta GetAvatarSyncPromoFeatureMinimumCookeA BASE_FEATURE(kAvoidAutoTriggerListAccountsOnStale, base::FEATURE_DISABLED_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(kBeforeFirstRunDesktopRefreshSurvey, base::FEATURE_DISABLED_BY_DEFAULT); #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) @@ -160,7 +160,7 @@ BASE_FEATURE_PARAM(double, 0.42); #endif // 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) constexpr double kMediumSurveyProbability = 0.08; constexpr double kLowSurveyProbability = 0.008; BASE_FEATURE(kChromeIdentitySurveyAddressBubbleSignin, @@ -252,7 +252,7 @@ BASE_FEATURE_PARAM( kMediumSurveyProbability); #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) BASE_FEATURE(kChromeIdentitySurveyLaunchWithDelay, base::FEATURE_ENABLED_BY_DEFAULT); BASE_FEATURE_PARAM(base::TimeDelta, -@@ -267,7 +267,7 @@ BASE_FEATURE(kChromeOsUseConsentLevelSigninForNewUsers +@@ -267,13 +267,13 @@ BASE_FEATURE(kChromeOsUseConsentLevelSigninForNewUsers base::FEATURE_DISABLED_BY_DEFAULT); #endif // BUILDFLAG(IS_CHROMEOS) -#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_IOS) +#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_IOS) || BUILDFLAG(IS_BSD) BASE_FEATURE(kCrossDeviceSignin, base::FEATURE_DISABLED_BY_DEFAULT); const base::FeatureParam kCrossDeviceSigninUrl{&kCrossDeviceSignin, "url", ""}; -@@ -277,7 +277,7 @@ const base::FeatureParam kCrossDeviceSign - BASE_FEATURE(kDiceLinkedAccounts, base::FEATURE_DISABLED_BY_DEFAULT); - #endif // BUILDFLAG(ENABLE_DICE_SUPPORT) + #endif // BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_IOS) -#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(kCrossDeviceSigninFromDesktop, base::FEATURE_DISABLED_BY_DEFAULT); const base::FeatureParam kCrossDeviceSigninFromDesktopUrl{ &kCrossDeviceSigninFromDesktop, "url", -@@ -286,7 +286,7 @@ const base::FeatureParam kCrossDeviceSigninFromD - &kCrossDeviceSigninFromDesktop, "show_new_badge", true}; - #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +@@ -290,7 +290,7 @@ BASE_FEATURE(kDiceHeaderVersion2, base::FEATURE_DISABL + BASE_FEATURE(kDiceLinkedAccounts, base::FEATURE_DISABLED_BY_DEFAULT); + #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) BASE_FEATURE(kDisableU18FeedbackDesktop, base::FEATURE_DISABLED_BY_DEFAULT); #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) -@@ -528,7 +528,7 @@ const base::FeatureParam +@@ -560,7 +560,7 @@ const base::FeatureParam BASE_FEATURE(kFetchAccountInfoOnRestart, base::FEATURE_DISABLED_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(kFirstRunDesktopRefresh, base::FEATURE_DISABLED_BY_DEFAULT); - BASE_FEATURE(kFirstRunDesktopChoiceScreenRefresh, - base::FEATURE_DISABLED_BY_DEFAULT); -@@ -556,11 +556,11 @@ constexpr base::FeatureParam kContextualSigninPromoDi +@@ -748,7 +748,7 @@ const base::FeatureParam kContextualSigninPromoDi "contextual_signin_promo_dismissed_threshold", 2); -#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, base::FEATURE_ENABLED_BY_DEFAULT); #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) -@@ -773,7 +773,7 @@ BASE_FEATURE(kStableDeviceId, base::FEATURE_DISABLED_B +@@ -818,7 +818,7 @@ BASE_FEATURE(kStableDeviceId, base::FEATURE_DISABLED_B BASE_FEATURE(kSupportAddSessionEmailPrefill, base::FEATURE_ENABLED_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) // Kill switch for displaying sign-in errors in the profile picker. BASE_FEATURE(kSupportErrorsInProfilePicker, base::FEATURE_ENABLED_BY_DEFAULT); #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) 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 d67da4e4df41..43ae16a28906 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,128 +1,137 @@ ---- components/signin/public/base/signin_switches.h.orig 2026-08-12 09:02:10 UTC +--- components/signin/public/base/signin_switches.h.orig 2026-08-31 10:59:09 UTC +++ components/signin/public/base/signin_switches.h -@@ -61,7 +61,7 @@ base::TimeDelta GetAvatarSyncPromoFeatureMinimumCookeA +@@ -62,7 +62,7 @@ base::TimeDelta GetAvatarSyncPromoFeatureMinimumCookeA COMPONENT_EXPORT(SIGNIN_SWITCHES) BASE_DECLARE_FEATURE(kAvoidAutoTriggerListAccountsOnStale); -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // A HaTS survey flag for the survey to gather user feedback before any changes // to the FRE as part of Chrome Desktop FRE Refresh project. // -@@ -135,7 +135,7 @@ BASE_DECLARE_FEATURE_PARAM( +@@ -136,7 +136,7 @@ BASE_DECLARE_FEATURE_PARAM( kChromeAndroidIdentitySurveyBookmarkPromoProbability); #endif // 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) // Enables surveys to measure the effectiveness of the identity model. // These surveys would be displayed after interactions such as signin, profile // switching, etc. Please keep sorted alphabetically. -@@ -212,7 +212,7 @@ BASE_DECLARE_FEATURE_PARAM( +@@ -213,7 +213,7 @@ BASE_DECLARE_FEATURE_PARAM( // LINT.ThenChange(//chrome/browser/signin/signin_hats_util.cc) #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) // Controls the duration for which the launch of an identity survey is delayed. COMPONENT_EXPORT(SIGNIN_SWITCHES) BASE_DECLARE_FEATURE(kChromeIdentitySurveyLaunchWithDelay); -@@ -243,7 +243,7 @@ COMPONENT_EXPORT(SIGNIN_SWITCHES) - BASE_DECLARE_FEATURE(kDiceLinkedAccounts); - #endif // BUILDFLAG(ENABLE_DICE_SUPPORT) +@@ -238,7 +238,7 @@ COMPONENT_EXPORT(SIGNIN_SWITCHES) + extern const base::FeatureParam kCrossDeviceSigninUrl; + #endif // BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_IOS) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Feature flag to enable cross-device sign-in promo. COMPONENT_EXPORT(SIGNIN_SWITCHES) BASE_DECLARE_FEATURE(kCrossDeviceSigninFromDesktop); -@@ -255,7 +255,7 @@ COMPONENT_EXPORT(SIGNIN_SWITCHES) - extern const base::FeatureParam kCrossDeviceSigninFromDesktopNewBadge; - #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +@@ -264,7 +264,7 @@ COMPONENT_EXPORT(SIGNIN_SWITCHES) + BASE_DECLARE_FEATURE(kDiceLinkedAccounts); + #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) // If enabled, disables feedback for U18 users on desktop platforms. // The iOS version is kDisableFeedbackForIneligibleUsers flag. COMPONENT_EXPORT(SIGNIN_SWITCHES) -@@ -425,7 +425,7 @@ extern const base::FeatureParam +@@ -453,7 +453,7 @@ extern const base::FeatureParam COMPONENT_EXPORT(SIGNIN_SWITCHES) BASE_DECLARE_FEATURE(kFetchAccountInfoOnRestart); -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // This feature controls running visually refreshed first run and profile // creation flows for users outside of the search engine choice regions. To // enable the refresh in search engine choice screen regions, -@@ -479,7 +479,7 @@ extern const base::FeatureParam kContextualSignin +@@ -741,7 +741,7 @@ extern const base::FeatureParam kContextualSignin COMPONENT_EXPORT(SIGNIN_SWITCHES) extern const base::FeatureParam kContextualSigninPromoDismissedThreshold; -#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); -@@ -744,7 +744,7 @@ COMPONENT_EXPORT(SIGNIN_SWITCHES) +@@ -796,7 +796,7 @@ COMPONENT_EXPORT(SIGNIN_SWITCHES) BASE_DECLARE_FEATURE(kSupportAddSessionEmailPrefill); #endif -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Kill switch for displaying sign-in errors in the profile picker. COMPONENT_EXPORT(SIGNIN_SWITCHES) BASE_DECLARE_FEATURE(kSupportErrorsInProfilePicker); diff --git a/www/chromium/files/patch-components_startup__metric__utils_browser_startup__metric__utils.cc b/www/chromium/files/patch-components_startup__metric__utils_browser_startup__metric__utils.cc new file mode 100644 index 000000000000..6c963b0172cb --- /dev/null +++ b/www/chromium/files/patch-components_startup__metric__utils_browser_startup__metric__utils.cc @@ -0,0 +1,34 @@ +--- components/startup_metric_utils/browser/startup_metric_utils.cc.orig 2026-08-31 10:59:09 UTC ++++ components/startup_metric_utils/browser/startup_metric_utils.cc +@@ -36,11 +36,11 @@ + #elif BUILDFLAG(IS_MAC) + #include + #include +-#elif BUILDFLAG(IS_LINUX) ++#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + #include + #endif + +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + namespace { + + // These values are taken from the +@@ -296,7 +296,7 @@ BrowserStartupMetricRecorder::GetHardFaultCountForCurr + } + return base::saturated_cast(events_info.pageins); + } +-#elif BUILDFLAG(IS_LINUX) ++#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + std::optional + BrowserStartupMetricRecorder::GetHardFaultCountForCurrentProcess() { + struct rusage usage; +@@ -594,7 +594,7 @@ void BrowserStartupMetricRecorder::RecordFirstRunSenti + } + + void BrowserStartupMetricRecorder::RecordHardFaultHistogram() { +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + DCHECK_EQ(UNDETERMINED_STARTUP_TEMPERATURE, g_startup_temperature); + + const std::optional hard_fault_count = diff --git a/www/chromium/files/patch-components_startup__metric__utils_browser_startup__metric__utils.h b/www/chromium/files/patch-components_startup__metric__utils_browser_startup__metric__utils.h new file mode 100644 index 000000000000..7fd73de9b159 --- /dev/null +++ b/www/chromium/files/patch-components_startup__metric__utils_browser_startup__metric__utils.h @@ -0,0 +1,11 @@ +--- components/startup_metric_utils/browser/startup_metric_utils.h.orig 2026-08-31 10:59:09 UTC ++++ components/startup_metric_utils/browser/startup_metric_utils.h +@@ -197,7 +197,7 @@ class COMPONENT_EXPORT(STARTUP_METRIC_UTILS) + // Only permit construction from within GetBrowser(). + BrowserStartupMetricRecorder(); + +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + // Returns the hard fault count of the current process, or nullopt if it can't + // be determined. + std::optional GetHardFaultCountForCurrentProcess(); diff --git a/www/chromium/files/patch-components_supervised__user_core_browser_child__account__service.cc b/www/chromium/files/patch-components_supervised__user_core_browser_child__account__service.cc index 7aeb84ee5603..a4a154498f84 100644 --- a/www/chromium/files/patch-components_supervised__user_core_browser_child__account__service.cc +++ b/www/chromium/files/patch-components_supervised__user_core_browser_child__account__service.cc @@ -1,11 +1,11 @@ ---- components/supervised_user/core/browser/child_account_service.cc.orig 2026-08-12 09:02:10 UTC +--- components/supervised_user/core/browser/child_account_service.cc.orig 2026-08-31 10:59:09 UTC +++ components/supervised_user/core/browser/child_account_service.cc -@@ -174,7 +174,7 @@ void ChildAccountService::OnPrimaryAccountChanged( +@@ -163,7 +163,7 @@ void ChildAccountService::OnPrimaryAccountChanged( void ChildAccountService::UpdateForceGoogleSafeSearch() { // On platforms without web sign-out (where the primary account is always // authenticated), there's no need to force SafeSearch. -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) bool is_subject_to_parental_controls = IsPrimaryAccountSubjectToParentalControls(identity_manager_) == signin::Tribool::kTrue; diff --git a/www/chromium/files/patch-components_supervised__user_core_browser_list__family__members__service.h b/www/chromium/files/patch-components_supervised__user_core_browser_list__family__members__service.h index b0b5b1707528..ac4cb8b39b39 100644 --- a/www/chromium/files/patch-components_supervised__user_core_browser_list__family__members__service.h +++ b/www/chromium/files/patch-components_supervised__user_core_browser_list__family__members__service.h @@ -1,11 +1,11 @@ ---- components/supervised_user/core/browser/list_family_members_service.h.orig 2025-02-19 07:43:18 UTC +--- components/supervised_user/core/browser/list_family_members_service.h.orig 2026-08-31 10:59:09 UTC +++ components/supervised_user/core/browser/list_family_members_service.h -@@ -33,7 +33,7 @@ namespace supervised_user { +@@ -31,7 +31,7 @@ namespace supervised_user { // If true, this fetcher is active for all users with CanFetchFamilyMemberInfo // capability. Otherwise, it is only used by supervised users. constexpr bool FetchListFamilyMembersWithCapability() { -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) return true; #else return false; diff --git a/www/chromium/files/patch-components_sync_base_features.cc b/www/chromium/files/patch-components_sync_base_features.cc new file mode 100644 index 000000000000..caae8e871254 --- /dev/null +++ b/www/chromium/files/patch-components_sync_base_features.cc @@ -0,0 +1,11 @@ +--- components/sync/base/features.cc.orig 2026-08-31 10:59:09 UTC ++++ components/sync/base/features.cc +@@ -79,7 +79,7 @@ BASE_FEATURE(kReplaceSyncPromosWithSignInPromos, + ); + + BASE_FEATURE(kReplaceSyncPromosWithSigninPromosNewSignin, +-#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_service_sync__prefs.cc b/www/chromium/files/patch-components_sync_service_sync__prefs.cc index bc90d150300a..3bfcb428b42e 100644 --- a/www/chromium/files/patch-components_sync_service_sync__prefs.cc +++ b/www/chromium/files/patch-components_sync_service_sync__prefs.cc @@ -1,11 +1,11 @@ ---- components/sync/service/sync_prefs.cc.orig 2026-07-01 06:24:19 UTC +--- components/sync/service/sync_prefs.cc.orig 2026-08-31 10:59:09 UTC +++ components/sync/service/sync_prefs.cc -@@ -884,7 +884,7 @@ bool SyncPrefs::MaybeMigratePrefsForSyncToSigninPart1( +@@ -882,7 +882,7 @@ bool SyncPrefs::MaybeMigratePrefsForSyncToSigninPart1( update_selected_types_dict->EnsureDict( signin::GaiaIdHash::FromGaiaId(gaia_id).ToBase64()); -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Preserve the user's existing enabled state for Bookmarks, Reading List, // and Preferences. Otherwise, use the default value, which will be true // after `kReplaceSyncPromosWithSignInPromos`. 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 82a824cc58d8..422195cf287d 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 2026-07-01 06:24:19 UTC +--- components/variations/service/variations_service.cc.orig 2026-08-31 10:59:09 UTC +++ components/variations/service/variations_service.cc -@@ -102,7 +102,7 @@ std::string GetPlatformString() { +@@ -111,7 +111,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_service_display__embedder_skia__output__surface__impl.cc b/www/chromium/files/patch-components_viz_service_display__embedder_skia__output__surface__impl.cc index 6ddeca5173d7..cf22c005e89e 100644 --- a/www/chromium/files/patch-components_viz_service_display__embedder_skia__output__surface__impl.cc +++ b/www/chromium/files/patch-components_viz_service_display__embedder_skia__output__surface__impl.cc @@ -1,11 +1,11 @@ ---- components/viz/service/display_embedder/skia_output_surface_impl.cc.orig 2026-08-12 09:02:10 UTC +--- components/viz/service/display_embedder/skia_output_surface_impl.cc.orig 2026-08-31 10:59:09 UTC +++ components/viz/service/display_embedder/skia_output_surface_impl.cc -@@ -1530,7 +1530,7 @@ GrBackendFormat SkiaOutputSurfaceImpl::GetGrBackendFor +@@ -1519,7 +1519,7 @@ GrBackendFormat SkiaOutputSurfaceImpl::GetGrBackendFor VK_IMAGE_TILING_OPTIMAL, vk_format, si_format, image_context->color_space(), image_context->ycbcr_info()); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Textures that were allocated _on linux_ with ycbcr info came from // VaapiVideoDecoder, which exports using DRM format modifiers. return GrBackendFormats::MakeVk(gr_ycbcr_info, diff --git a/www/chromium/files/patch-components_viz_service_display_skia__renderer.cc b/www/chromium/files/patch-components_viz_service_display_skia__renderer.cc index d9affba0ce96..bd8502344176 100644 --- a/www/chromium/files/patch-components_viz_service_display_skia__renderer.cc +++ b/www/chromium/files/patch-components_viz_service_display_skia__renderer.cc @@ -1,11 +1,11 @@ ---- components/viz/service/display/skia_renderer.cc.orig 2026-08-12 09:02:10 UTC +--- components/viz/service/display/skia_renderer.cc.orig 2026-08-31 10:59:09 UTC +++ components/viz/service/display/skia_renderer.cc -@@ -1414,7 +1414,7 @@ void SkiaRenderer::ClearFramebuffer() { +@@ -1433,7 +1433,7 @@ void SkiaRenderer::ClearFramebuffer() { if (current_frame()->current_render_pass->has_transparent_background) { ClearCanvas(SkColors::kTransparent); } else { -#if DCHECK_IS_ON() && !BUILDFLAG(IS_LINUX) +#if DCHECK_IS_ON() && !BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_BSD) // On DEBUG builds, opaque render passes are cleared to blue // to easily see regions that were not drawn on the screen. // ClearCavas() call causes slight pixel difference, so linux-ref and 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 31a6a41a280c..9eab620914a5 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 2026-08-12 09:02:10 UTC +--- components/viz/service/frame_sinks/root_compositor_frame_sink_impl.cc.orig 2026-08-31 10:59:09 UTC +++ components/viz/service/frame_sinks/root_compositor_frame_sink_impl.cc @@ -142,7 +142,7 @@ RootCompositorFrameSinkImpl::Create( output_surface->SetNeedsSwapSizeNotifications( params->send_swap_size_notifications); -#if BUILDFLAG(IS_LINUX) && BUILDFLAG(SUPPORTS_OZONE_X11) +#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && BUILDFLAG(SUPPORTS_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); -@@ -946,7 +946,7 @@ void RootCompositorFrameSinkImpl::DisplayDidCompleteSw +@@ -938,7 +938,7 @@ void RootCompositorFrameSinkImpl::DisplayDidCompleteSw if (display_client_ && enable_swap_completion_callback_) { display_client_->DidCompleteSwapWithSize(pixel_size); } -#elif BUILDFLAG(IS_LINUX) && BUILDFLAG(SUPPORTS_OZONE_X11) +#elif (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && BUILDFLAG(SUPPORTS_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 974491283a06..6b5397e462b6 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 2026-08-12 09:02:10 UTC +--- components/viz/service/frame_sinks/root_compositor_frame_sink_impl.h.orig 2026-08-31 10:59:09 UTC +++ components/viz/service/frame_sinks/root_compositor_frame_sink_impl.h -@@ -221,7 +221,7 @@ class VIZ_SERVICE_EXPORT RootCompositorFrameSinkImpl +@@ -218,7 +218,7 @@ class VIZ_SERVICE_EXPORT RootCompositorFrameSinkImpl base::TimeDelta display_frame_interval_ = BeginFrameArgs::DefaultInterval(); base::TimeDelta preferred_frame_interval_; -#if BUILDFLAG(IS_LINUX) && BUILDFLAG(SUPPORTS_OZONE_X11) +#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && BUILDFLAG(SUPPORTS_OZONE_X11) gfx::Size last_swap_pixel_size_; #endif // BUILDFLAG(IS_LINUX) && BUILDFLAG(SUPPORTS_OZONE_X11) diff --git a/www/chromium/files/patch-content_app_BUILD.gn b/www/chromium/files/patch-content_app_BUILD.gn index b1c38a0a15cd..a7b57b3e658e 100644 --- a/www/chromium/files/patch-content_app_BUILD.gn +++ b/www/chromium/files/patch-content_app_BUILD.gn @@ -1,14 +1,14 @@ ---- content/app/BUILD.gn.orig 2025-12-05 10:12:50 UTC +--- content/app/BUILD.gn.orig 2026-08-31 10:59:09 UTC +++ content/app/BUILD.gn -@@ -90,7 +90,10 @@ source_set("content_main_runner_app") { +@@ -82,7 +82,10 @@ source_set("content_main_runner_app") { "//third_party/tflite:buildflags", "//tools/v8_context_snapshot:buildflags", ] - if (build_tflite_with_xnnpack) { + if (is_bsd) { + deps += [ "//skia" ] + } + if (!is_bsd && build_tflite_with_xnnpack) { deps += [ "//third_party/cpuinfo" ] } } diff --git a/www/chromium/files/patch-content_app_content__main.cc b/www/chromium/files/patch-content_app_content__main.cc index 5df703826db2..96801dab8e87 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 2026-06-04 10:12:25 UTC +--- content/app/content_main.cc.orig 2026-08-31 10:59:09 UTC +++ content/app/content_main.cc -@@ -229,7 +229,7 @@ NO_STACK_PROTECTOR int RunContentProcess( +@@ -205,7 +205,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 -@@ -322,7 +322,7 @@ NO_STACK_PROTECTOR int RunContentProcess( +@@ -296,7 +296,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 f16c5a4ca7db..75c52e4c283d 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,154 +1,154 @@ ---- content/app/content_main_runner_impl.cc.orig 2026-08-12 09:02:10 UTC +--- content/app/content_main_runner_impl.cc.orig 2026-08-31 10:59:09 UTC +++ content/app/content_main_runner_impl.cc @@ -153,19 +153,22 @@ #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/environment.h" #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/skia/rust/png/FFI.rs.h" #include "third_party/boringssl/src/include/openssl/crypto.h" #include "third_party/webrtc_overrides/init_webrtc.h" // nogncheck @@ -189,6 +192,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/android/background_thread_pool_field_trial.h" #include "base/system/sys_info.h" @@ -368,7 +375,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_LIBRARY_CDMS) // Loads registered library CDMs but does not initialize them. This is needed by @@ -387,7 +394,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. @@ -399,9 +409,16 @@ void PreSandboxInit() { // https://boringssl.googlesource.com/boringssl/+/HEAD/SANDBOXING.md CRYPTO_pre_sandbox_init(); +#if BUILDFLAG(IS_BSD) + // rust_png calls into sysctl so cache the cpu features before pledge(2) + rust_png::initialize_cpudetect(); +#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_LIBRARY_CDMS) // Ensure access to the library CDMs before the sandbox is turned on. -@@ -630,7 +647,7 @@ NO_STACK_PROTECTOR int RunZygote(ContentMainDelegate* +@@ -637,7 +654,7 @@ NO_STACK_PROTECTOR int RunZygote(ContentMainDelegate* // Once Zygote forks and feature list initializes we can start a thread to // begin tracing immediately. if (delegate->ShouldInitializePerfetto(invoked_in_child)) { -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) if (process_type == switches::kGpuProcess) { tracing::InitTracingPostFeatureList(/*enable_consumer=*/false, /*will_trace_thread_restart=*/true); -@@ -734,7 +751,7 @@ NO_STACK_PROTECTOR int RunOtherNamedProcessTypeMain( +@@ -741,7 +758,7 @@ NO_STACK_PROTECTOR int RunOtherNamedProcessTypeMain( base::HangWatcher::CreateHangWatcherInstance(); unregister_thread_closure = base::HangWatcher::RegisterThread( base::HangWatcher::ThreadType::kMainThread); -#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. -@@ -855,11 +872,10 @@ int ContentMainRunnerImpl::Initialize(ContentMainParam +@@ -862,11 +879,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) -@@ -993,7 +1009,7 @@ int ContentMainRunnerImpl::Initialize(ContentMainParam +@@ -1000,7 +1016,7 @@ int ContentMainRunnerImpl::Initialize(ContentMainParam delegate_->PreSandboxStartup(); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Set environment variables for fontconfig fontations indexing and before // creating threads. if (process_type.empty()) { -@@ -1028,7 +1044,7 @@ int ContentMainRunnerImpl::Initialize(ContentMainParam +@@ -1035,7 +1051,7 @@ int ContentMainRunnerImpl::Initialize(ContentMainParam // SeatbeltExecServer. CHECK(sandbox::Seatbelt::IsSandboxed()); } -#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // In sandboxed processes and zygotes, certain resource should be pre-warmed // as they cannot be initialized under a sandbox. In addition, loading these // resources in zygotes (including the unsandboxed zygote) allows them to be -@@ -1042,6 +1058,16 @@ int ContentMainRunnerImpl::Initialize(ContentMainParam +@@ -1049,6 +1065,16 @@ int ContentMainRunnerImpl::Initialize(ContentMainParam 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) -@@ -1158,6 +1184,11 @@ NO_STACK_PROTECTOR int ContentMainRunnerImpl::Run() { +@@ -1165,6 +1191,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 b496f6550902..b842be921b67 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 2026-08-12 09:02:10 UTC +--- content/browser/BUILD.gn.orig 2026-08-31 10:59:09 UTC +++ content/browser/BUILD.gn -@@ -2702,6 +2702,14 @@ source_set("browser") { +@@ -2470,6 +2470,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" ] -@@ -2751,6 +2759,15 @@ source_set("browser") { +@@ -2519,6 +2527,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_p2p_enabled) { 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 2a36bf598033..48cf92354643 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,29 +1,29 @@ ---- content/browser/accessibility/browser_accessibility_state_impl_auralinux.cc.orig 2026-05-07 17:02:56 UTC +--- content/browser/accessibility/browser_accessibility_state_impl_auralinux.cc.orig 2026-08-31 10:59:09 UTC +++ content/browser/accessibility/browser_accessibility_state_impl_auralinux.cc -@@ -12,6 +12,7 @@ +@@ -14,6 +14,7 @@ #include #include +#include "base/notimplemented.h" #include "base/debug/crash_logging.h" #include "base/logging.h" #include "base/metrics/histogram_macros.h" -@@ -44,6 +45,10 @@ bool CheckCmdlineForOrca(const std::string& cmdline_al +@@ -57,6 +58,10 @@ namespace { // 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"), -@@ -81,6 +86,7 @@ bool DiscoverOrca() { +@@ -103,6 +108,7 @@ bool DiscoverOrca() { } return is_orca_active; +#endif } } // namespace diff --git a/www/chromium/files/patch-content_browser_browser__child__process__host__impl.cc b/www/chromium/files/patch-content_browser_browser__child__process__host__impl.cc index aa1cfe723a41..efe27e1bffd6 100644 --- a/www/chromium/files/patch-content_browser_browser__child__process__host__impl.cc +++ b/www/chromium/files/patch-content_browser_browser__child__process__host__impl.cc @@ -1,19 +1,19 @@ ---- content/browser/browser_child_process_host_impl.cc.orig 2026-08-12 09:02:10 UTC +--- content/browser/browser_child_process_host_impl.cc.orig 2026-08-31 10:59:09 UTC +++ content/browser/browser_child_process_host_impl.cc @@ -293,6 +293,7 @@ void BrowserChildProcessHostImpl::LaunchWithoutExtraCo switches::kLogBestEffortTasks, switches::kPartitionAllocSchedulerLoopQuarantine, switches::kPerfettoDisableInterning, + switches::kDisableUnveil, }; cmd_line->CopySwitchesFrom(browser_command_line, kForwardSwitches); -@@ -654,7 +655,7 @@ void BrowserChildProcessHostImpl::OnProcessLaunched() +@@ -658,7 +659,7 @@ void BrowserChildProcessHostImpl::OnProcessLaunched() ->child_process()); #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) child_thread_type_switcher_.SetPid(process.Pid()); #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) diff --git a/www/chromium/files/patch-content_browser_browser__child__process__host__impl.h b/www/chromium/files/patch-content_browser_browser__child__process__host__impl.h index f39d1b4681e9..3e550b2a8eb2 100644 --- a/www/chromium/files/patch-content_browser_browser__child__process__host__impl.h +++ b/www/chromium/files/patch-content_browser_browser__child__process__host__impl.h @@ -1,20 +1,20 @@ ---- content/browser/browser_child_process_host_impl.h.orig 2026-04-09 06:05:42 UTC +--- content/browser/browser_child_process_host_impl.h.orig 2026-08-31 10:59:09 UTC +++ content/browser/browser_child_process_host_impl.h @@ -38,7 +38,7 @@ #include "base/win/object_watcher.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" #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -@@ -280,7 +280,7 @@ class BrowserChildProcessHostImpl +@@ -281,7 +281,7 @@ class BrowserChildProcessHostImpl std::unique_ptr system_tracing_service_; #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) ChildThreadTypeSwitcher child_thread_type_switcher_; #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) 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 5dc244f94e8a..c2eceadf29be 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 2026-08-12 09:02:10 UTC +--- content/browser/browser_main_loop.cc.orig 2026-08-31 10:59:09 UTC +++ content/browser/browser_main_loop.cc -@@ -253,6 +253,12 @@ +@@ -255,6 +255,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 -@@ -539,6 +545,12 @@ int BrowserMainLoop::EarlyInitialization() { +@@ -541,6 +547,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 -@@ -570,7 +582,7 @@ int BrowserMainLoop::EarlyInitialization() { - base::PlatformThread::SetCurrentThreadType(base::ThreadType::kPresentation); +@@ -572,7 +584,7 @@ int BrowserMainLoop::EarlyInitialization() { + base::PlatformThread::SetDefaultThreadType(base::ThreadType::kPresentation); #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_network__service__instance__impl.cc b/www/chromium/files/patch-content_browser_network__service__instance__impl.cc index 76551d35d40b..cbed19920eeb 100644 --- a/www/chromium/files/patch-content_browser_network__service__instance__impl.cc +++ b/www/chromium/files/patch-content_browser_network__service__instance__impl.cc @@ -1,29 +1,29 @@ ---- content/browser/network_service_instance_impl.cc.orig 2026-08-12 09:02:10 UTC +--- content/browser/network_service_instance_impl.cc.orig 2026-08-31 10:59:09 UTC +++ content/browser/network_service_instance_impl.cc -@@ -96,7 +96,7 @@ +@@ -98,7 +98,7 @@ #include "content/browser/network/network_service_process_tracker_win.h" #endif -#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "content/browser/system_dns_resolution/system_dns_resolver.h" #include "services/network/public/mojom/system_dns_resolution.mojom-forward.h" #endif -@@ -355,7 +355,7 @@ void CreateInProcessNetworkService( +@@ -360,7 +360,7 @@ void CreateInProcessNetworkService( })); } -#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Runs a self-owned SystemDnsResolverMojoImpl. This is meant to run on a // high-priority thread pool. void RunSystemDnsResolverOnThreadPool( -@@ -421,7 +421,7 @@ network::mojom::NetworkServiceParamsPtr CreateNetworkS +@@ -426,7 +426,7 @@ network::mojom::NetworkServiceParamsPtr CreateNetworkS } #endif // BUILDFLAG(IS_POSIX) -#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (GetContentClient() ->browser() ->ShouldRunOutOfProcessSystemDnsResolution() && 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 2fc52808cfeb..18e87d9df896 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 2026-08-12 09:02:10 UTC +--- content/browser/renderer_host/delegated_frame_host.cc.orig 2026-08-31 10:59:09 UTC +++ content/browser/renderer_host/delegated_frame_host.cc -@@ -347,7 +347,7 @@ void DelegatedFrameHost::EmbedSurface( +@@ -346,7 +346,7 @@ void DelegatedFrameHost::EmbedSurface( if (!primary_surface_id || primary_surface_id->local_surface_id() != local_surface_id_) { -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) // On Windows, Linux, and macOS, 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 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 697462f65d05..184f7e0288bd 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 2026-08-12 09:02:10 UTC +--- content/browser/renderer_host/render_process_host_impl.cc.orig 2026-08-31 10:59:09 UTC +++ content/browser/renderer_host/render_process_host_impl.cc @@ -230,7 +230,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 @@ -1196,7 +1196,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; @@ -1456,7 +1456,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) } -@@ -3809,7 +3809,7 @@ void RenderProcessHostImpl::AppendRendererCommandLine( - base::TimeTicks::UnixEpoch().since_origin().InMicroseconds())); - } +@@ -3811,7 +3811,7 @@ void RenderProcessHostImpl::AppendRendererCommandLine( + command_line->AppendSwitchASCII(switches::kRendererClientId, + base::NumberToString(GetID().value())); -#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() && -@@ -3867,6 +3867,7 @@ void RenderProcessHostImpl::PropagateBrowserCommandLin +@@ -3869,6 +3869,7 @@ void RenderProcessHostImpl::PropagateBrowserCommandLin switches::kDisableSkiaRuntimeOpts, switches::kDisableSpeechAPI, switches::kDisableThreadedCompositing, + switches::kDisableUnveil, switches::kDisableV8IdleTasks, switches::kDisableVideoCaptureUseGpuMemoryBuffer, switches::kDomAutomationController, -@@ -5853,7 +5854,7 @@ uint64_t RenderProcessHostImpl::GetPrivateMemoryFootpr +@@ -5863,7 +5864,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 8556762cd126..e24ab83dbcb0 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 2026-08-12 09:02:10 UTC +--- content/browser/renderer_host/render_process_host_impl.h.orig 2026-08-31 10:59:09 UTC +++ content/browser/renderer_host/render_process_host_impl.h @@ -107,7 +107,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 @@ -1042,7 +1042,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 }; -@@ -1298,7 +1298,7 @@ class CONTENT_EXPORT RenderProcessHostImpl +@@ -1306,7 +1306,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 5991d6e9a5be..bf5da73a0f9b 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 2026-08-12 09:02:10 UTC +--- content/browser/renderer_host/render_widget_host_view_aura.cc.orig 2026-08-31 10:59:09 UTC +++ content/browser/renderer_host/render_widget_host_view_aura.cc -@@ -133,7 +133,7 @@ +@@ -134,7 +134,7 @@ #include "ui/gfx/win/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" -@@ -579,7 +579,7 @@ gfx::NativeViewAccessible RenderWidgetHostViewAura::Ge +@@ -580,7 +580,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()) -@@ -2044,7 +2044,7 @@ bool RenderWidgetHostViewAura::ShouldDoLearning() { +@@ -2061,7 +2061,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) { -@@ -3123,7 +3123,7 @@ bool RenderWidgetHostViewAura::NeedsInputGrab() { +@@ -3150,7 +3150,7 @@ bool RenderWidgetHostViewAura::NeedsInputGrab() { } bool RenderWidgetHostViewAura::NeedsMouseCapture() { -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) return NeedsInputGrab(); #else return false; -@@ -3351,7 +3351,7 @@ void RenderWidgetHostViewAura::ForwardKeyboardEventWit +@@ -3378,7 +3378,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__aura.h b/www/chromium/files/patch-content_browser_renderer__host_render__widget__host__view__aura.h index a524e3f85190..b3cb5f358828 100644 --- a/www/chromium/files/patch-content_browser_renderer__host_render__widget__host__view__aura.h +++ b/www/chromium/files/patch-content_browser_renderer__host_render__widget__host__view__aura.h @@ -1,11 +1,11 @@ ---- content/browser/renderer_host/render_widget_host_view_aura.h.orig 2026-08-12 09:02:10 UTC +--- content/browser/renderer_host/render_widget_host_view_aura.h.orig 2026-08-31 10:59:09 UTC +++ content/browser/renderer_host/render_widget_host_view_aura.h -@@ -299,7 +299,7 @@ class CONTENT_EXPORT RenderWidgetHostViewAura +@@ -303,7 +303,7 @@ class CONTENT_EXPORT RenderWidgetHostViewAura ukm::SourceId GetClientSourceForMetrics() const override; bool ShouldDoLearning() override; -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) bool SetCompositionFromExistingText( const gfx::Range& range, const std::vector& ui_ime_text_spans) override; 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 c67aad85ed1c..65248d06bc18 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 2026-08-12 09:02:10 UTC +--- content/browser/renderer_host/render_widget_host_view_event_handler.cc.orig 2026-08-31 10:59:09 UTC +++ content/browser/renderer_host/render_widget_host_view_event_handler.cc -@@ -630,7 +630,7 @@ bool RenderWidgetHostViewEventHandler::CanRendererHand +@@ -631,7 +631,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_service__host_utility__process__host.cc b/www/chromium/files/patch-content_browser_service__host_utility__process__host.cc index db0b072583c8..6f982ff1880a 100644 --- a/www/chromium/files/patch-content_browser_service__host_utility__process__host.cc +++ b/www/chromium/files/patch-content_browser_service__host_utility__process__host.cc @@ -1,38 +1,38 @@ ---- content/browser/service_host/utility_process_host.cc.orig 2026-08-12 09:02:10 UTC +--- content/browser/service_host/utility_process_host.cc.orig 2026-08-31 10:59:09 UTC +++ content/browser/service_host/utility_process_host.cc @@ -65,7 +65,7 @@ #include "content/browser/v8_snapshot_files.h" #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "base/files/file_util.h" #include "base/files/scoped_file.h" #include "base/pickle.h" -@@ -99,7 +99,7 @@ namespace content { +@@ -100,7 +100,7 @@ namespace content { namespace { -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) base::ScopedFD PassNetworkContextParentDirs( std::vector network_context_parent_dirs) { base::Pickle pickle; -@@ -528,7 +528,7 @@ bool UtilityProcessHost::StartProcess() { +@@ -543,7 +543,7 @@ bool UtilityProcessHost::StartProcess() { GetV8SnapshotFilesToPreload(*cmd_line)); #endif // BUILDFLAG(IS_POSIX) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // The network service should have access to the parent directories // necessary for its usage. if (options_.sandbox_type_ == sandbox::mojom::Sandbox::kNetwork) { -@@ -546,7 +546,7 @@ bool UtilityProcessHost::StartProcess() { +@@ -561,7 +561,7 @@ bool UtilityProcessHost::StartProcess() { video_capture::mojom::VideoCaptureService::Name_) { bool pass_gpu_buffer_flag = switches::IsVideoCaptureUseGpuMemoryBufferEnabled(); -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Check if NV12 GPU memory buffer supported at the same time. pass_gpu_buffer_flag = pass_gpu_buffer_flag && diff --git a/www/chromium/files/patch-content_browser_web__contents_web__contents__impl.cc b/www/chromium/files/patch-content_browser_web__contents_web__contents__impl.cc new file mode 100644 index 000000000000..fc3db099dda5 --- /dev/null +++ b/www/chromium/files/patch-content_browser_web__contents_web__contents__impl.cc @@ -0,0 +1,29 @@ +--- content/browser/web_contents/web_contents_impl.cc.orig 2026-08-31 10:59:09 UTC ++++ content/browser/web_contents/web_contents_impl.cc +@@ -1372,7 +1372,7 @@ WebContentsImpl::WebContentsImpl(BrowserContext* brows + SlowWebPreferenceCache::GetInstance()); + renderer_preferences_.caret_blink_interval = + native_theme->caret_blink_interval(); +-#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) ++#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) + renderer_preferences_.use_overlay_scrollbar = + native_theme->use_overlay_scrollbar(); + #endif +@@ -12465,7 +12465,7 @@ void WebContentsImpl::OnNativeThemeUpdated(ui::NativeT + HandleColorRelatedStateChanges(); + + const auto caret_blink_interval = observed_theme->caret_blink_interval(); +-#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) ++#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) + const auto use_overlay_scrollbar = observed_theme->use_overlay_scrollbar(); + #endif + bool renderer_preference_changed = false; +@@ -12473,7 +12473,7 @@ void WebContentsImpl::OnNativeThemeUpdated(ui::NativeT + renderer_preferences_.caret_blink_interval = caret_blink_interval; + renderer_preference_changed = true; + } +-#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) ++#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) + if (renderer_preferences_.use_overlay_scrollbar != use_overlay_scrollbar) { + renderer_preferences_.use_overlay_scrollbar = use_overlay_scrollbar; + renderer_preference_changed = true; 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 a112c4288384..a84a20a45bd4 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 2026-08-12 09:02:10 UTC +--- content/browser/web_contents/web_contents_view_aura.cc.orig 2026-08-31 10:59:09 UTC +++ content/browser/web_contents/web_contents_view_aura.cc @@ -188,7 +188,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, @@ -268,7 +268,7 @@ void PrepareDragData(RenderFrameHost& source_rfh, PrepareDragForDownload(source_rfh, drop_data, provider); } #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. -@@ -1470,7 +1470,7 @@ void WebContentsViewAura::OnMouseEvent(ui::MouseEvent* +@@ -1449,7 +1449,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_browser_web__contents_web__contents__view__aura__unittest.cc b/www/chromium/files/patch-content_browser_web__contents_web__contents__view__aura__unittest.cc index a1a6778f5881..270137059b4d 100644 --- a/www/chromium/files/patch-content_browser_web__contents_web__contents__view__aura__unittest.cc +++ b/www/chromium/files/patch-content_browser_web__contents_web__contents__view__aura__unittest.cc @@ -1,74 +1,74 @@ ---- content/browser/web_contents/web_contents_view_aura_unittest.cc.orig 2026-07-01 06:24:19 UTC +--- content/browser/web_contents/web_contents_view_aura_unittest.cc.orig 2026-08-31 10:59:09 UTC +++ content/browser/web_contents/web_contents_view_aura_unittest.cc -@@ -45,7 +45,7 @@ +@@ -47,7 +47,7 @@ #include "ui/base/dragdrop/os_exchange_data_provider_win.h" #endif -#if BUILDFLAG(IS_LINUX) && BUILDFLAG(SUPPORTS_OZONE_X11) +#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && BUILDFLAG(SUPPORTS_OZONE_X11) #include "ui/base/x/selection_utils.h" #include "ui/base/x/x11_os_exchange_data_provider.h" #include "ui/gfx/x/atom_cache.h" -@@ -103,7 +103,7 @@ class TestDragDropClient : public aura::client::DragDr +@@ -105,7 +105,7 @@ class TestDragDropClient : public aura::client::DragDr last_source_ = source; return DragOperation::kCopy; } -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) void UpdateDragImage(const gfx::ImageSkia& image, const gfx::Vector2d& offset) override {} #endif -@@ -249,7 +249,7 @@ TEST_F(WebContentsViewAuraTest, WebContentsDestroyedDu +@@ -281,7 +281,7 @@ TEST_F(WebContentsViewAuraTest, WebContentsDestroyedDu ui::EF_LEFT_MOUSE_BUTTON, 0); ui::EventHandler* event_handler = GetView(); event_handler->OnMouseEvent(&mouse_event); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // The web-content is not activated during mouse-press on Linux. // See comment in WebContentsViewAura::OnMouseEvent() for more details. EXPECT_NE(web_contents(), nullptr); -@@ -315,7 +315,7 @@ TEST_F(WebContentsViewAuraTest, MAYBE_DragDropFiles) { +@@ -347,7 +347,7 @@ TEST_F(WebContentsViewAuraTest, MAYBE_DragDropFiles) { view->OnDragEntered(event); ASSERT_NE(nullptr, view->current_drag_data_); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // By design, Linux implementations return an empty string if file data // is also present. EXPECT_TRUE(!view->current_drag_data_->text || -@@ -355,7 +355,7 @@ TEST_F(WebContentsViewAuraTest, MAYBE_DragDropFiles) { +@@ -387,7 +387,7 @@ TEST_F(WebContentsViewAuraTest, MAYBE_DragDropFiles) { CheckDropData(view); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // By design, Linux implementations returns an empty string if file data // is also present. EXPECT_TRUE(!drop_complete_data_->drop_data.text || -@@ -413,7 +413,7 @@ TEST_F(WebContentsViewAuraTest, MAYBE_DragDropFilesOri +@@ -445,7 +445,7 @@ TEST_F(WebContentsViewAuraTest, MAYBE_DragDropFilesOri view->OnDragEntered(event); ASSERT_NE(nullptr, view->current_drag_data_); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // By design, Linux implementations return an empty string if file data // is also present. EXPECT_TRUE(!view->current_drag_data_->text || -@@ -445,7 +445,7 @@ TEST_F(WebContentsViewAuraTest, MAYBE_DragDropFilesOri +@@ -477,7 +477,7 @@ TEST_F(WebContentsViewAuraTest, MAYBE_DragDropFilesOri CheckDropData(view); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // By design, Linux implementations returns an empty string if file data is // also present. EXPECT_TRUE(!drop_complete_data_->drop_data.text || -@@ -477,7 +477,7 @@ TEST_F(WebContentsViewAuraTest, MAYBE_DragDropImageFro +@@ -509,7 +509,7 @@ TEST_F(WebContentsViewAuraTest, MAYBE_DragDropImageFro auto data = std::make_unique(); -#if BUILDFLAG(IS_LINUX) && BUILDFLAG(SUPPORTS_OZONE_X11) +#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && BUILDFLAG(SUPPORTS_OZONE_X11) // FileContents drag-drop in X relies on XDragDropClient::InitDrag() setting // window property 'XdndDirectSave0' to filename. Since XDragDropClient is not // created in this unittest, we will set this property manually to allow diff --git a/www/chromium/files/patch-content_browser_zygote__host_zygote__host__impl__linux.cc b/www/chromium/files/patch-content_browser_zygote__host_zygote__host__impl__linux.cc index 8405e9c7abd9..edd64233373a 100644 --- a/www/chromium/files/patch-content_browser_zygote__host_zygote__host__impl__linux.cc +++ b/www/chromium/files/patch-content_browser_zygote__host_zygote__host__impl__linux.cc @@ -1,81 +1,81 @@ ---- content/browser/zygote_host/zygote_host_impl_linux.cc.orig 2025-10-02 04:28:32 UTC +--- content/browser/zygote_host/zygote_host_impl_linux.cc.orig 2026-08-31 10:59:09 UTC +++ content/browser/zygote_host/zygote_host_impl_linux.cc -@@ -19,8 +19,10 @@ +@@ -20,8 +20,10 @@ #include "build/build_config.h" #include "content/common/zygote/zygote_commands_linux.h" #include "content/common/zygote/zygote_communication_linux.h" +#if !BUILDFLAG(IS_BSD) #include "content/common/zygote/zygote_handle_impl_linux.h" #include "content/public/common/zygote/zygote_handle.h" +#endif #include "sandbox/linux/services/credentials.h" #include "sandbox/linux/services/namespace_sandbox.h" #include "sandbox/linux/suid/client/setuid_sandbox_host.h" -@@ -38,6 +40,7 @@ namespace content { +@@ -39,6 +41,7 @@ namespace content { namespace { +#if !BUILDFLAG(IS_BSD) // Receive a fixed message on fd and return the sender's PID. // Returns true if the message received matches the expected message. bool ReceiveFixedMessage(int fd, -@@ -60,6 +63,7 @@ bool ReceiveFixedMessage(int fd, +@@ -61,6 +64,7 @@ bool ReceiveFixedMessage(int fd, return false; return true; } +#endif } // namespace -@@ -69,9 +73,13 @@ ZygoteHost* ZygoteHost::GetInstance() { +@@ -70,9 +74,13 @@ ZygoteHost* ZygoteHost::GetInstance() { } ZygoteHostImpl::ZygoteHostImpl() +#if !BUILDFLAG(IS_BSD) : use_namespace_sandbox_(false), use_suid_sandbox_(false), use_suid_sandbox_for_adj_oom_score_(false), +#else + : +#endif sandbox_binary_(), zygote_pids_lock_(), zygote_pids_() {} -@@ -84,6 +92,7 @@ ZygoteHostImpl* ZygoteHostImpl::GetInstance() { +@@ -85,6 +93,7 @@ ZygoteHostImpl* ZygoteHostImpl::GetInstance() { } void ZygoteHostImpl::Init(const base::CommandLine& command_line) { +#if !BUILDFLAG(IS_BSD) if (command_line.HasSwitch(sandbox::policy::switches::kNoSandbox)) { return; } -@@ -138,6 +147,7 @@ void ZygoteHostImpl::Init(const base::CommandLine& com +@@ -139,6 +148,7 @@ void ZygoteHostImpl::Init(const base::CommandLine& com "you can try using --" << sandbox::policy::switches::kNoSandbox << "."; } +#endif } void ZygoteHostImpl::AddZygotePid(pid_t pid) { -@@ -162,6 +172,7 @@ pid_t ZygoteHostImpl::LaunchZygote( +@@ -163,6 +173,7 @@ pid_t ZygoteHostImpl::LaunchZygote( base::CommandLine* cmd_line, base::ScopedFD* control_fd, base::FileHandleMappingVector additional_remapped_fds) { +#if !BUILDFLAG(IS_BSD) int fds[2]; CHECK_EQ(0, socketpair(AF_UNIX, SOCK_SEQPACKET | SOCK_CLOEXEC, 0, fds)); CHECK(base::UnixDomainSocket::EnableReceiveProcessId(fds[0])); -@@ -230,9 +241,12 @@ pid_t ZygoteHostImpl::LaunchZygote( +@@ -251,9 +262,12 @@ pid_t ZygoteHostImpl::LaunchZygote( AddZygotePid(pid); return pid; +#else + return 0; +#endif } -#if !BUILDFLAG(IS_OPENBSD) +#if !BUILDFLAG(IS_BSD) void ZygoteHostImpl::AdjustRendererOOMScore(base::ProcessHandle pid, int score) { // 1) You can't change the oom_score_adj of a non-dumpable process diff --git a/www/chromium/files/patch-content_child_BUILD.gn b/www/chromium/files/patch-content_child_BUILD.gn index 7d4024e44227..a4fa01ecadb0 100644 --- a/www/chromium/files/patch-content_child_BUILD.gn +++ b/www/chromium/files/patch-content_child_BUILD.gn @@ -1,16 +1,16 @@ ---- content/child/BUILD.gn.orig 2026-04-09 06:05:42 UTC +--- content/child/BUILD.gn.orig 2026-08-31 10:59:09 UTC +++ content/child/BUILD.gn -@@ -136,6 +136,13 @@ target(link_target_type, "child") { +@@ -139,6 +139,13 @@ target(link_target_type, "child") { ] } + if (is_bsd) { + sources -= [ + "sandboxed_process_thread_type_handler.cc", + "sandboxed_process_thread_type_handler.h", + ] + } + if (is_win) { sources += [ "child_process_sandbox_support_impl_win.cc", diff --git a/www/chromium/files/patch-content_common_BUILD.gn b/www/chromium/files/patch-content_common_BUILD.gn index c7a391e231c9..8df2c35502e5 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 2026-07-01 06:24:19 UTC +--- content/common/BUILD.gn.orig 2026-08-31 10:59:09 UTC +++ content/common/BUILD.gn -@@ -367,19 +367,28 @@ source_set("common") { +@@ -369,19 +369,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 1685630a1305..00819acb7c20 100644 --- a/www/chromium/files/patch-content_common_features.cc +++ b/www/chromium/files/patch-content_common_features.cc @@ -1,40 +1,40 @@ ---- content/common/features.cc.orig 2026-08-12 09:02:10 UTC +--- content/common/features.cc.orig 2026-08-31 10:59:09 UTC +++ content/common/features.cc -@@ -209,7 +209,7 @@ BASE_FEATURE(kKillOnUnexpectedOriginHeader, base::FEAT +@@ -222,7 +222,7 @@ BASE_FEATURE(kKillOnUnexpectedOriginHeader, base::FEAT 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, base::FEATURE_DISABLED_BY_DEFAULT); #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -@@ -320,12 +320,12 @@ BASE_FEATURE_ENUM_PARAM(FontDataServiceTypefaceType, +@@ -302,12 +302,12 @@ BASE_FEATURE_ENUM_PARAM(FontDataServiceTypefaceType, FontDataServiceTypefaceType::kDwrite, &font_data_service_typeface); #endif // BUILDFLAG(IS_WIN) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) const base::FeatureParam::Option font_data_service_typeface[] = { {FontDataServiceTypefaceType::kFreetype, "Freetype"}, {FontDataServiceTypefaceType::kFontations, "Fontations"}}; -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) BASE_FEATURE(kFontDataServiceLinux, base::FEATURE_ENABLED_BY_DEFAULT); BASE_FEATURE_ENUM_PARAM(FontDataServiceTypefaceType, kFontDataServiceTypefaceType, -@@ -348,11 +348,11 @@ BASE_FEATURE_ENUM_PARAM(FontDataServiceTypefaceType, +@@ -330,11 +330,11 @@ BASE_FEATURE_ENUM_PARAM(FontDataServiceTypefaceType, BASE_FEATURE(kFontDataServiceForCSSLocalFonts, base::FEATURE_DISABLED_BY_DEFAULT); -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) bool IsFontDataServiceEnabled() { #if BUILDFLAG(IS_WIN) return base::FeatureList::IsEnabled(features::kFontDataServiceAllWebContents); -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) return base::FeatureList::IsEnabled(features::kFontDataServiceLinux); #elif BUILDFLAG(IS_CHROMEOS) return base::FeatureList::IsEnabled(features::kFontDataServiceChromeOS); diff --git a/www/chromium/files/patch-content_common_features.h b/www/chromium/files/patch-content_common_features.h index 42a4c12a773c..d000d1c25134 100644 --- a/www/chromium/files/patch-content_common_features.h +++ b/www/chromium/files/patch-content_common_features.h @@ -1,31 +1,31 @@ ---- content/common/features.h.orig 2026-08-12 09:02:10 UTC +--- content/common/features.h.orig 2026-08-31 10:59:09 UTC +++ content/common/features.h -@@ -82,7 +82,7 @@ CONTENT_EXPORT BASE_DECLARE_FEATURE( - CONTENT_EXPORT BASE_DECLARE_FEATURE(kDocumentPolicyNegotiation); +@@ -86,7 +86,7 @@ CONTENT_EXPORT BASE_DECLARE_FEATURE(kEarlyTopAppForSan + #endif CONTENT_EXPORT BASE_DECLARE_FEATURE(kEditContextSelectionSync); CONTENT_EXPORT BASE_DECLARE_FEATURE(kKillOnUnexpectedOriginHeader); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) CONTENT_EXPORT BASE_DECLARE_FEATURE(kEnableDevToolsJsErrorReporting); #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) - CONTENT_EXPORT BASE_DECLARE_FEATURE(kEnforceSameDocumentOriginInvariants); -@@ -122,8 +122,8 @@ enum class FontDataServiceTypefaceType { + CONTENT_EXPORT BASE_DECLARE_FEATURE(kEnforceGamepadPermissionsPolicy); +@@ -116,8 +116,8 @@ enum class FontDataServiceTypefaceType { CONTENT_EXPORT BASE_DECLARE_FEATURE_PARAM(FontDataServiceTypefaceType, kFontDataServiceTypefaceType); #endif // BUILDFLAG(IS_WIN) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) CONTENT_EXPORT BASE_DECLARE_FEATURE(kFontDataServiceLinux); #else CONTENT_EXPORT BASE_DECLARE_FEATURE(kFontDataServiceChromeOS); -@@ -138,7 +138,7 @@ CONTENT_EXPORT BASE_DECLARE_FEATURE_PARAM(FontDataServ +@@ -132,7 +132,7 @@ CONTENT_EXPORT BASE_DECLARE_FEATURE_PARAM(FontDataServ CONTENT_EXPORT BASE_DECLARE_FEATURE(kFontDataServiceForCSSLocalFonts); -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) bool IsFontDataServiceEnabled(); #endif diff --git a/www/chromium/files/patch-content_gpu_gpu__main.cc b/www/chromium/files/patch-content_gpu_gpu__main.cc index ba0b11af5fcf..fff5b9624bcc 100644 --- a/www/chromium/files/patch-content_gpu_gpu__main.cc +++ b/www/chromium/files/patch-content_gpu_gpu__main.cc @@ -1,73 +1,87 @@ ---- content/gpu/gpu_main.cc.orig 2026-08-12 09:02:10 UTC +--- content/gpu/gpu_main.cc.orig 2026-08-31 10:59:09 UTC +++ content/gpu/gpu_main.cc -@@ -112,10 +112,14 @@ +@@ -112,14 +112,18 @@ + #include "sandbox/win/src/sandbox.h" + #endif + +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "services/webnn/public/cpp/webnn_sandbox_init.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 -@@ -133,7 +137,7 @@ namespace content { +@@ -137,7 +141,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&); -@@ -201,7 +205,7 @@ class ContentSandboxHelper : public gpu::GpuSandboxHel +@@ -194,7 +198,7 @@ class ContentSandboxHelper : public gpu::GpuSandboxHel + #if BUILDFLAG(IS_WIN) + media::PreSandboxMediaFoundationInitialization(); + #endif +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + webnn::PreSandboxWebNNInitialization(); + #endif + +@@ -207,7 +211,7 @@ class ContentSandboxHelper : public gpu::GpuSandboxHel const gpu::GPUInfo* gpu_info, const gpu::GpuPreferences& gpu_prefs) override { 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_); -@@ -317,7 +321,7 @@ int GpuMain(MainFunctionParams parameters) { +@@ -323,7 +327,7 @@ int GpuMain(MainFunctionParams parameters) { std::make_unique( gpu_preferences.message_pump_type, /*is_main_thread=*/true); } -#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 -@@ -343,7 +347,8 @@ int GpuMain(MainFunctionParams parameters) { - mojo::InterfaceEndpointClient::SetThreadNameSuffixForMetrics("GpuMain"); +@@ -350,7 +354,8 @@ int GpuMain(MainFunctionParams parameters) { base::MessagePumpWakeupCounter::InitializeForCurrentThread("GpuMain"); + base::LockMetricsRecorder::EnableRecordingOnCurrentThread("CrGpuMain"); -#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. -@@ -495,7 +500,7 @@ int GpuMain(MainFunctionParams parameters) { +@@ -502,7 +507,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) { -@@ -543,7 +548,7 @@ bool StartSandboxLinux(gpu::GpuWatchdogThread* watchdo +@@ -550,7 +555,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 7eb1e95dc4c5..fa967ef45815 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 2026-08-12 09:02:10 UTC +--- content/public/browser/content_browser_client.cc.orig 2026-08-31 10:59:09 UTC +++ content/public/browser/content_browser_client.cc -@@ -1452,7 +1452,7 @@ bool ContentBrowserClient::ShouldRunOutOfProcessSystem +@@ -1399,7 +1399,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 19081e29dd2b..6ef3f97551f1 100644 --- a/www/chromium/files/patch-content_public_common_content__features.cc +++ b/www/chromium/files/patch-content_public_common_content__features.cc @@ -1,45 +1,45 @@ ---- content/public/common/content_features.cc.orig 2026-08-12 09:02:10 UTC +--- content/public/common/content_features.cc.orig 2026-08-31 10:59:09 UTC +++ content/public/common/content_features.cc -@@ -147,7 +147,7 @@ BASE_FEATURE(kAttachUnownedInnerWebContents, base::FEA +@@ -150,7 +150,7 @@ BASE_FEATURE(kAttachUnownedInnerWebContents, base::FEA // Runs the audio service in a separate process. BASE_FEATURE(kAudioServiceOutOfProcess, -#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 -@@ -157,7 +157,7 @@ BASE_FEATURE(kAudioServiceOutOfProcess, +@@ -160,7 +160,7 @@ BASE_FEATURE(kAudioServiceOutOfProcess, // Enables the audio-service sandbox. This feature has an effect only when the // kAudioServiceOutOfProcess feature is enabled. BASE_FEATURE(kAudioServiceSandbox, -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_FUCHSIA) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) base::FEATURE_ENABLED_BY_DEFAULT #else base::FEATURE_DISABLED_BY_DEFAULT -@@ -1251,10 +1251,10 @@ BASE_FEATURE(kWebAssemblyTiering, base::FEATURE_ENABLE +@@ -1268,10 +1268,10 @@ BASE_FEATURE(kWebAssemblyTiering, base::FEATURE_ENABLE // Enable WebAssembly trap handler. BASE_FEATURE(kWebAssemblyTrapHandler, -#if ((BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_WIN) || \ +#if ((BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_WIN) || \ BUILDFLAG(IS_MAC)) && \ defined(ARCH_CPU_X86_64)) || \ - ((BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC)) && \ + ((BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC)) && \ defined(ARCH_CPU_ARM64)) base::FEATURE_ENABLED_BY_DEFAULT #else -@@ -1315,7 +1315,11 @@ BASE_FEATURE(kWebUIInProcessResourceLoadingV2, +@@ -1332,7 +1332,11 @@ BASE_FEATURE(kWebUIInProcessResourceLoadingV2, // 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 // 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 566408c79978..575669539b96 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 2026-07-01 06:24:19 UTC +--- content/public/common/content_switches.cc.orig 2026-08-31 10:59:09 UTC +++ content/public/common/content_switches.cc -@@ -349,6 +349,8 @@ const char kEnableIsolatedWebAppsInRenderer[] = +@@ -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. -@@ -949,7 +951,7 @@ const char kPreventResizingContentsForTesting[] = +@@ -943,7 +945,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 c04149e9c86c..6dc9216c0a12 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 2026-07-01 06:24:19 UTC +--- content/public/common/content_switches.h.orig 2026-08-31 10:59:09 UTC +++ content/public/common/content_switches.h -@@ -108,6 +108,7 @@ CONTENT_EXPORT extern const char kEnableGpuMemoryBuffe +@@ -107,6 +107,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 kJavalessRenderers[]; +@@ -258,7 +259,7 @@ CONTENT_EXPORT extern const char kJavalessRenderers[]; 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_renderer__main.cc b/www/chromium/files/patch-content_renderer_renderer__main.cc index 950be06516db..b88f90608a4d 100644 --- a/www/chromium/files/patch-content_renderer_renderer__main.cc +++ b/www/chromium/files/patch-content_renderer_renderer__main.cc @@ -1,11 +1,11 @@ ---- content/renderer/renderer_main.cc.orig 2026-08-12 09:02:10 UTC +--- content/renderer/renderer_main.cc.orig 2026-08-31 10:59:09 UTC +++ content/renderer/renderer_main.cc -@@ -180,7 +180,7 @@ int RendererMain(MainFunctionParams parameters) { +@@ -181,7 +181,7 @@ int RendererMain(MainFunctionParams parameters) { InitializeSkia(); -#if !BUILDFLAG(IS_WIN) && !BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CHROMEOS) +#if !BUILDFLAG(IS_WIN) && !BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CHROMEOS) && !BUILDFLAG(IS_BSD) // On Linux, Windows, and ChromeOS, the font manager is overridden or // specially handled in RendererBlinkPlatformImpl(). On other platforms, // initialise the default one on a thread pool, to avoid blocking on it later. diff --git a/www/chromium/files/patch-content_services_devtools__media__encoding__service_BUILD.gn b/www/chromium/files/patch-content_services_devtools__media__encoding__service_BUILD.gn new file mode 100644 index 000000000000..767313d1b153 --- /dev/null +++ b/www/chromium/files/patch-content_services_devtools__media__encoding__service_BUILD.gn @@ -0,0 +1,10 @@ +--- content/services/devtools_media_encoding_service/BUILD.gn.orig 2026-08-31 10:59:09 UTC ++++ content/services/devtools_media_encoding_service/BUILD.gn +@@ -18,6 +18,7 @@ source_set("devtools_media_encoding_service") { + "//media/mojo/common", + "//media/mojo/mojom", + "//mojo/public/cpp/bindings", ++ "//third_party/opus", + "//ui/gfx/geometry", + ] + diff --git a/www/chromium/files/patch-content_shell_BUILD.gn b/www/chromium/files/patch-content_shell_BUILD.gn index dcab438629c9..5d1f4a67b7f9 100644 --- a/www/chromium/files/patch-content_shell_BUILD.gn +++ b/www/chromium/files/patch-content_shell_BUILD.gn @@ -1,11 +1,11 @@ ---- content/shell/BUILD.gn.orig 2026-08-12 09:02:10 UTC +--- content/shell/BUILD.gn.orig 2026-08-31 10:59:09 UTC +++ content/shell/BUILD.gn -@@ -1154,7 +1154,7 @@ group("content_shell_crash_test") { +@@ -1152,7 +1152,7 @@ group("content_shell_crash_test") { if (is_win) { data_deps += [ "//build/win:copy_cdb_to_output" ] } - if (is_posix) { + if (is_posix && !is_bsd) { data_deps += [ "//third_party/breakpad:dump_syms", "//third_party/breakpad:minidump_stackwalk", diff --git a/www/chromium/files/patch-content_shell_renderer_shell__content__renderer__client.cc b/www/chromium/files/patch-content_shell_renderer_shell__content__renderer__client.cc index 488dabbc985b..bf81af3186e5 100644 --- a/www/chromium/files/patch-content_shell_renderer_shell__content__renderer__client.cc +++ b/www/chromium/files/patch-content_shell_renderer_shell__content__renderer__client.cc @@ -1,11 +1,11 @@ ---- content/shell/renderer/shell_content_renderer_client.cc.orig 2026-06-04 10:12:25 UTC +--- content/shell/renderer/shell_content_renderer_client.cc.orig 2026-08-31 10:59:09 UTC +++ content/shell/renderer/shell_content_renderer_client.cc -@@ -53,7 +53,7 @@ +@@ -56,7 +56,7 @@ #include "media/base/media_switches.h" #endif -#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)) && \ +#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD)) && \ (defined(ARCH_CPU_X86_64) || defined(ARCH_CPU_ARM64)) #define ENABLE_WEB_ASSEMBLY_TRAP_HANDLER_LINUX #include "base/debug/stack_trace.h" diff --git a/www/chromium/files/patch-content_shell_utility_shell__content__utility__client.cc b/www/chromium/files/patch-content_shell_utility_shell__content__utility__client.cc index ba7bafed550b..2ba1d8d96f0b 100644 --- a/www/chromium/files/patch-content_shell_utility_shell__content__utility__client.cc +++ b/www/chromium/files/patch-content_shell_utility_shell__content__utility__client.cc @@ -1,20 +1,20 @@ ---- content/shell/utility/shell_content_utility_client.cc.orig 2026-03-13 06:02:14 UTC +--- content/shell/utility/shell_content_utility_client.cc.orig 2026-08-31 10:59:09 UTC +++ content/shell/utility/shell_content_utility_client.cc -@@ -41,7 +41,7 @@ +@@ -43,7 +43,7 @@ #include "sandbox/policy/sandbox.h" #include "services/test/echo/echo_service.h" -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "content/test/sandbox_status_service.h" #endif -@@ -201,7 +201,7 @@ void ShellContentUtilityClient::ExposeInterfacesToBrow +@@ -212,7 +212,7 @@ void ShellContentUtilityClient::ExposeInterfacesToBrow binders->Add( &PowerMonitorTestImpl::MakeSelfOwnedReceiver, base::SingleThreadTaskRunner::GetCurrentDefault()); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) if (register_sandbox_status_helper_) { binders->Add( base::BindRepeating( diff --git a/www/chromium/files/patch-content_utility_utility__main.cc b/www/chromium/files/patch-content_utility_utility__main.cc index 826dbe1b8f33..3ac423b82bb4 100644 --- a/www/chromium/files/patch-content_utility_utility__main.cc +++ b/www/chromium/files/patch-content_utility_utility__main.cc @@ -1,111 +1,111 @@ ---- content/utility/utility_main.cc.orig 2026-08-12 09:02:10 UTC +--- content/utility/utility_main.cc.orig 2026-08-31 10:59:09 UTC +++ content/utility/utility_main.cc @@ -44,22 +44,31 @@ #include "services/tracing/public/cpp/trace_startup.h" #include "services/video_capture/public/mojom/video_capture_service.mojom.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" #include "media/gpu/buildflags.h" #include "media/media_buildflags.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" #include "services/shape_detection/shape_detection_sandbox_hook.h" +#if BUILDFLAG(IS_BSD) +#include "sandbox/policy/sandbox.h" +#include "content/common/gpu_pre_sandbox_hook_bsd.h" +#endif + #if BUILDFLAG(USE_LINUX_VIDEO_ACCELERATION) #include "gpu/config/gpu_info_collector.h" #include "media/gpu/sandbox/hardware_video_encoding_sandbox_hook_linux.h" -@@ -118,7 +127,7 @@ sandbox::TargetServices* g_utility_target_services = n +@@ -120,7 +129,7 @@ sandbox::TargetServices* g_utility_target_services = n #endif // BUILDFLAG(IS_WIN) #if BUILDFLAG(ENABLE_ON_DEVICE_TRANSLATION) && \ - (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)) + (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD)) #include "components/on_device_translation/service/sandbox_hook.h" #endif // BUILDFLAG(ENABLE_ON_DEVICE_TRANSLATION) && (BUILDFLAG(IS_LINUX) || // BUILDFLAG(IS_CHROMEOS)) -@@ -127,7 +136,7 @@ namespace content { +@@ -129,7 +138,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( -@@ -286,7 +295,7 @@ int UtilityMain(MainFunctionParams parameters) { +@@ -293,7 +302,7 @@ int UtilityMain(MainFunctionParams parameters) { CHECK(on_device_model::PreSandboxInit()); } -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #if BUILDFLAG(USE_LINUX_VIDEO_ACCELERATION) && BUILDFLAG(USE_VAAPI) // Regardless of the sandbox status, the VaapiWrapper needs to be initialized -@@ -301,7 +310,10 @@ int UtilityMain(MainFunctionParams parameters) { +@@ -308,7 +317,10 @@ int UtilityMain(MainFunctionParams parameters) { // thread type change in ChildProcess constructor. It also needs to be // registered before the process has multiple threads, which may race with // application of the sandbox. +// XXX BSD +#if !BUILDFLAG(IS_BSD) SandboxedProcessThreadTypeHandler::Create(); +#endif // Initializes the sandbox before any threads are created. // TODO(jorgelo): move this after GTK initialization when we enable a strict -@@ -334,7 +346,7 @@ int UtilityMain(MainFunctionParams parameters) { +@@ -341,7 +353,7 @@ int UtilityMain(MainFunctionParams parameters) { base::BindOnce(&speech::SpeechRecognitionPreSandboxHook); break; #if BUILDFLAG(ENABLE_ON_DEVICE_TRANSLATION) && \ - (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)) + (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD)) case sandbox::mojom::Sandbox::kOnDeviceTranslation: pre_sandbox_hook = base::BindOnce( &on_device_translation::OnDeviceTranslationSandboxHook); -@@ -351,7 +363,7 @@ int UtilityMain(MainFunctionParams parameters) { +@@ -358,7 +370,7 @@ int UtilityMain(MainFunctionParams parameters) { #else NOTREACHED(); #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) case sandbox::mojom::Sandbox::kShapeDetection: pre_sandbox_hook = base::BindOnce(&shape_detection::ShapeDetectionPreSandboxHook); -@@ -380,6 +392,7 @@ int UtilityMain(MainFunctionParams parameters) { +@@ -387,6 +399,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 = -@@ -387,6 +400,11 @@ int UtilityMain(MainFunctionParams parameters) { +@@ -394,6 +407,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 // Startup tracing creates a tracing thread, which is incompatible on // platforms that require single-threaded sandbox initialization. In these diff --git a/www/chromium/files/patch-device_fido_public_features.cc b/www/chromium/files/patch-device_fido_public_features.cc index 866877fe486a..7fd86cf10a14 100644 --- a/www/chromium/files/patch-device_fido_public_features.cc +++ b/www/chromium/files/patch-device_fido_public_features.cc @@ -1,11 +1,11 @@ ---- device/fido/public/features.cc.orig 2026-07-01 06:24:19 UTC +--- device/fido/public/features.cc.orig 2026-08-31 10:59:09 UTC +++ device/fido/public/features.cc -@@ -46,7 +46,7 @@ namespace device { +@@ -34,7 +34,7 @@ namespace device { // comment. #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Not yet enabled by default. BASE_FEATURE(kPasskeyUnlockErrorUi, base::FEATURE_DISABLED_BY_DEFAULT); diff --git a/www/chromium/files/patch-extensions_browser_api_api__browser__context__keyed__service__factories.cc b/www/chromium/files/patch-extensions_browser_api_api__browser__context__keyed__service__factories.cc index 0f84ecc1c2a8..7b039a5df60d 100644 --- a/www/chromium/files/patch-extensions_browser_api_api__browser__context__keyed__service__factories.cc +++ b/www/chromium/files/patch-extensions_browser_api_api__browser__context__keyed__service__factories.cc @@ -1,11 +1,11 @@ ---- extensions/browser/api/api_browser_context_keyed_service_factories.cc.orig 2026-08-12 09:02:10 UTC +--- extensions/browser/api/api_browser_context_keyed_service_factories.cc.orig 2026-08-31 10:59:09 UTC +++ extensions/browser/api/api_browser_context_keyed_service_factories.cc -@@ -135,7 +135,7 @@ void EnsureApiBrowserContextKeyedServiceFactoriesBuilt +@@ -139,7 +139,7 @@ void EnsureApiBrowserContextKeyedServiceFactoriesBuilt MediaPerceptionAPIManager::GetFactoryInstance(); #endif #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_WIN) || \ - BUILDFLAG(IS_MAC) + BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) NetworkingPrivateEventRouterFactory::GetInstance(); #endif PrinterProviderAPIFactory::GetInstance(); 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 2f7c50b7b9a5..19b03db6688b 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 2026-08-12 09:02:10 UTC +--- extensions/browser/api/messaging/message_service.cc.orig 2026-08-31 10:59:09 UTC +++ extensions/browser/api/messaging/message_service.cc -@@ -89,7 +89,7 @@ const char kReceivingEndIncompatibleMessageSerializati +@@ -91,7 +91,7 @@ const char kReceivingEndIncompatibleMessageSerializati "Could not establish connection. Receiving end uses different message " "serialization format."; #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 kMissingPermissionError[] = "Access to native messaging requires nativeMessaging permission."; const char kProhibitedByPoliciesError[] = -@@ -714,7 +714,7 @@ void MessageService::OpenChannelToNativeAppImpl( +@@ -716,7 +716,7 @@ void MessageService::OpenChannelToNativeAppImpl( return; #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) bool has_permission = extension->permissions_data()->HasAPIPermission( mojom::APIPermissionID::kNativeMessaging); if (!has_permission) { diff --git a/www/chromium/files/patch-chrome_browser_extensions_api_webstore__private_webstore__private__api.cc b/www/chromium/files/patch-extensions_browser_api_webstore__private_webstore__private__api.cc similarity index 66% rename from www/chromium/files/patch-chrome_browser_extensions_api_webstore__private_webstore__private__api.cc rename to www/chromium/files/patch-extensions_browser_api_webstore__private_webstore__private__api.cc index 8243469da9a4..8a72bb309f82 100644 --- a/www/chromium/files/patch-chrome_browser_extensions_api_webstore__private_webstore__private__api.cc +++ b/www/chromium/files/patch-extensions_browser_api_webstore__private_webstore__private__api.cc @@ -1,11 +1,11 @@ ---- chrome/browser/extensions/api/webstore_private/webstore_private_api.cc.orig 2026-08-12 09:02:10 UTC -+++ chrome/browser/extensions/api/webstore_private/webstore_private_api.cc -@@ -1180,7 +1180,7 @@ void WebstorePrivateBeginInstallWithManifest3Function: +--- extensions/browser/api/webstore_private/webstore_private_api.cc.orig 2026-08-31 10:59:09 UTC ++++ extensions/browser/api/webstore_private/webstore_private_api.cc +@@ -1149,7 +1149,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-extensions_common_api___permission__features.json b/www/chromium/files/patch-extensions_common_api___permission__features.json index c40ea8245e1f..a182fc64114b 100644 --- a/www/chromium/files/patch-extensions_common_api___permission__features.json +++ b/www/chromium/files/patch-extensions_common_api___permission__features.json @@ -1,130 +1,130 @@ ---- extensions/common/api/_permission_features.json.orig 2026-07-01 06:24:19 UTC +--- extensions/common/api/_permission_features.json.orig 2026-08-31 10:59:09 UTC +++ extensions/common/api/_permission_features.json @@ -61,7 +61,7 @@ "channel": "stable", "extension_types": ["platform_app"], // "desktop_android" is not supported. - "platforms": ["chromeos", "linux", "mac", "win"] + "platforms": ["chromeos", "linux", "mac", "win", "openbsd", "freebsd"] }, "app.window.ime": { "channel": "stable", @@ -97,13 +97,13 @@ "channel": "dev", "extension_types": ["platform_app"], // "desktop_android" is not supported. - "platforms": ["chromeos", "linux", "mac", "win"] + "platforms": ["chromeos", "linux", "mac", "win", "openbsd", "freebsd"] }, { "channel": "stable", "extension_types": ["platform_app"], // "desktop_android" is not supported. - "platforms": ["chromeos", "linux", "mac", "win"], + "platforms": ["chromeos", "linux", "mac", "win", "openbsd", "freebsd"], "allowlist": [ "8C3741E3AF0B93B6E8E0DDD499BB0B74839EA578", "E703483CEF33DEC18B4B6DD84B5C776FB9182BDB", @@ -141,7 +141,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 @@ -216,7 +216,7 @@ "extension_types": ["extension", "legacy_packaged_app"], "max_manifest_version": 2, // "desktop_android" is not supported. - "platforms": ["chromeos", "linux", "mac", "win"] + "platforms": ["chromeos", "linux", "mac", "win", "openbsd", "freebsd"] }, "devtools": { "channel": "stable", @@ -265,7 +265,7 @@ "channel": "stable", "extension_types": ["extension", "platform_app"], // "desktop_android" is not supported. - "platforms": ["chromeos", "linux", "mac", "win"], + "platforms": ["chromeos", "linux", "mac", "win", "openbsd", "freebsd"], "allowlist": [ "7910EAFDAF64B947E1CB31B333A9BD14CA556B6C", // Feedback UI. "1C93BD3CF875F4A73C0B2A163BB8FBDA8B8B3D80", // http://crbug.com/293683 @@ -287,12 +287,12 @@ "extension_types": ["platform_app"], "default_parent": true, // "desktop_android" is not supported. - "platforms": ["chromeos", "linux", "mac", "win"] + "platforms": ["chromeos", "linux", "mac", "win", "openbsd", "freebsd"] },{ "channel": "stable", "extension_types": ["extension"], // "desktop_android" is not supported. - "platforms": ["chromeos", "linux", "mac", "win"], + "platforms": ["chromeos", "linux", "mac", "win", "openbsd", "freebsd"], "allowlist": [ "2FC374607C2DF285634B67C64A2E356C607091C3", // Quickoffice "3727DD3E564B6055387425027AD74C58784ACC15", // Quickoffice internal @@ -329,13 +329,13 @@ "channel": "stable", "extension_types": ["platform_app"], // "desktop_android" is not supported. - "platforms": ["chromeos", "linux", "mac", "win"] + "platforms": ["chromeos", "linux", "mac", "win", "openbsd", "freebsd"] }, { "channel": "stable", "extension_types": ["extension"], // "desktop_android" is not supported. - "platforms": ["chromeos", "linux", "mac", "win"], + "platforms": ["chromeos", "linux", "mac", "win", "openbsd", "freebsd"], "allowlist": [ "D7CD4B3956B1F6E970E4AFCBCD4094B1EF4D07B9", // http://crbug.com/710541 "D4EFCCC0CC612380762758BB96C7997224BD6395", // http://crbug.com/710541 @@ -445,7 +445,7 @@ "channel": "stable", "extension_types": ["extension", "legacy_packaged_app", "platform_app"], // "desktop_android" is not supported. - "platforms": ["chromeos", "mac", "win", "linux"], + "platforms": ["chromeos", "mac", "win", "linux", "openbsd", "freebsd"], "allowlist": [ "0DE0F05680A4A056BCEC864ED8DDA84296F82B40", // http://crbug.com/434651 "1C93BD3CF875F4A73C0B2A163BB8FBDA8B8B3D80", // http://crbug.com/293683 @@ -484,7 +484,7 @@ "channel": "stable", "extension_types": ["extension", "legacy_packaged_app", "platform_app"], // "desktop_android" is not supported. - "platforms": ["chromeos", "mac", "win", "linux"], + "platforms": ["chromeos", "mac", "win", "linux", "openbsd", "freebsd"], "allowlist": [ // DO NOT ADD ANY MORE ENTRIES HERE. // networkingPrivate is being migrated to networking.onc. @@ -564,7 +564,7 @@ "channel": "stable", "extension_types": ["extension", "platform_app" ], // "desktop_android" is not supported. - "platforms": ["chromeos", "linux", "mac", "win"] + "platforms": ["chromeos", "linux", "mac", "win", "openbsd", "freebsd"] }, - // Note: runtime is not actually a permission, but some systems check these - // values to verify restrictions. -@@ -581,7 +581,7 @@ + "proxy": [{ + "channel": "stable", +@@ -592,7 +592,7 @@ "channel": "stable", "extension_types": ["platform_app"], // "desktop_android" is not supported. - "platforms": ["chromeos", "linux", "mac", "win"] + "platforms": ["chromeos", "linux", "mac", "win", "openbsd", "freebsd"] }, "storage": [ { -@@ -651,7 +651,7 @@ +@@ -662,7 +662,7 @@ "channel": "stable", "extension_types": ["extension", "legacy_packaged_app", "platform_app"], // "desktop_android" is not supported. - "platforms": ["chromeos", "linux", "mac", "win"] + "platforms": ["chromeos", "linux", "mac", "win", "openbsd", "freebsd"] }, "system.display": { "channel": "stable", 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 553c5c9a4dc6..9fd9f6777d24 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 2026-07-01 06:24:19 UTC +--- gpu/command_buffer/service/dawn_context_provider.cc.orig 2026-08-31 10:59:09 UTC +++ gpu/command_buffer/service/dawn_context_provider.cc -@@ -454,7 +454,7 @@ wgpu::BackendType DawnContextProvider::GetDefaultBacke +@@ -462,7 +462,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 33a488bd516a..9cbf8a12718e 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 2026-08-12 09:02:10 UTC +--- gpu/command_buffer/service/gles2_cmd_decoder.cc.orig 2026-08-31 10:59:09 UTC +++ gpu/command_buffer/service/gles2_cmd_decoder.cc -@@ -3011,7 +3011,7 @@ std::unique_ptr GLES2Decoder::Create( +@@ -3012,7 +3012,7 @@ std::unique_ptr 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 std::make_unique(client, command_buffer_service, outputter, group); #else 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 975cdfcc2686..2762044e46a3 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 2026-04-09 06:05:42 UTC +--- gpu/command_buffer/service/shared_context_state.cc.orig 2026-08-31 10:59:09 UTC +++ gpu/command_buffer/service/shared_context_state.cc -@@ -61,7 +61,7 @@ +@@ -66,7 +66,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 -@@ -298,7 +298,7 @@ SharedContextState::SharedContextState( +@@ -303,7 +303,7 @@ SharedContextState::SharedContextState( ) { 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 } -@@ -339,7 +339,7 @@ SharedContextState::~SharedContextState() { +@@ -344,7 +344,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__image_dawn__ozone__image__representation.cc b/www/chromium/files/patch-gpu_command__buffer_service_shared__image_dawn__ozone__image__representation.cc index aef6b75acf7e..1e1e280b68f7 100644 --- a/www/chromium/files/patch-gpu_command__buffer_service_shared__image_dawn__ozone__image__representation.cc +++ b/www/chromium/files/patch-gpu_command__buffer_service_shared__image_dawn__ozone__image__representation.cc @@ -1,23 +1,23 @@ ---- gpu/command_buffer/service/shared_image/dawn_ozone_image_representation.cc.orig 2026-07-01 06:24:19 UTC +--- gpu/command_buffer/service/shared_image/dawn_ozone_image_representation.cc.orig 2026-08-31 10:59:09 UTC +++ gpu/command_buffer/service/shared_image/dawn_ozone_image_representation.cc -@@ -194,6 +194,7 @@ void DawnOzoneImageRepresentation::EndAccess() { +@@ -199,6 +199,7 @@ void DawnOzoneImageRepresentation::EndAccess() { if (!texture_) { return; } +#if 0 wgpu::SharedTextureMemoryEndAccessState end_access_desc = {}; wgpu::SharedTextureMemoryVkImageLayoutEndState end_layout{}; end_access_desc.nextInChain = &end_layout; -@@ -243,6 +244,12 @@ void DawnOzoneImageRepresentation::EndAccess() { +@@ -249,6 +250,12 @@ void DawnOzoneImageRepresentation::EndAccess() { texture_.Destroy(); texture_ = nullptr; +#else + LOG(ERROR) << "Failed to end access for DawnOzoneImageRepresentation"; + texture_.Destroy(); + texture_ = nullptr; + return; +#endif } } // namespace gpu diff --git a/www/chromium/files/patch-gpu_command__buffer_service_shared__image_ozone__image__backing.cc b/www/chromium/files/patch-gpu_command__buffer_service_shared__image_ozone__image__backing.cc index 3bacde27dd59..cc4f30f21f93 100644 --- a/www/chromium/files/patch-gpu_command__buffer_service_shared__image_ozone__image__backing.cc +++ b/www/chromium/files/patch-gpu_command__buffer_service_shared__image_ozone__image__backing.cc @@ -1,11 +1,11 @@ ---- gpu/command_buffer/service/shared_image/ozone_image_backing.cc.orig 2026-07-01 06:24:19 UTC +--- gpu/command_buffer/service/shared_image/ozone_image_backing.cc.orig 2026-08-31 10:59:09 UTC +++ gpu/command_buffer/service/shared_image/ozone_image_backing.cc -@@ -497,7 +497,7 @@ std::unique_ptr OzoneImageB +@@ -500,7 +500,7 @@ std::unique_ptr OzoneImageB native_pixmap_handle.planes[1].offset = image_size.GetArea(); native_pixmap_handle.planes[1].size = image_size.GetArea() / 2; -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) base::CheckedNumeric checked_required = native_pixmap_handle.planes[1].offset; checked_required += native_pixmap_handle.planes[1].size; 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 135c9243f609..6af08214fc3c 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,47 +1,47 @@ ---- gpu/command_buffer/service/shared_image/shared_image_factory.cc.orig 2026-07-01 06:24:19 UTC +--- gpu/command_buffer/service/shared_image/shared_image_factory.cc.orig 2026-08-31 10:59:09 UTC +++ gpu/command_buffer/service/shared_image/shared_image_factory.cc @@ -56,7 +56,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 @@ -124,7 +124,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 @@ -145,7 +145,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; @@ -323,7 +323,7 @@ SharedImageFactory::SharedImageFactory( 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 #if BUILDFLAG(USE_WEBGPU_ON_VULKAN_VIA_GL_INTEROP) /* We support GL context for WebGPU gl-vulkan interop (on linux).*/ -@@ -1053,7 +1053,7 @@ void SharedImageFactory::LogGetFactoryFailed(gpu::Shar +@@ -1051,7 +1051,7 @@ void SharedImageFactory::LogGetFactoryFailed(gpu::Shar } #endif // BUILDFLAG(IS_ANDROID) -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // VizBufferQueue with Vulkan enabled over command-line for Linux does not // work. Suppress dumps for these cases. if (context_state_->GrContextIsVulkan() && diff --git a/www/chromium/files/patch-gpu_command__buffer_service_shared__image_wrapped__sk__image__backing.cc b/www/chromium/files/patch-gpu_command__buffer_service_shared__image_wrapped__sk__image__backing.cc index 0b31d3ffce1c..e7ca92ca0a7e 100644 --- a/www/chromium/files/patch-gpu_command__buffer_service_shared__image_wrapped__sk__image__backing.cc +++ b/www/chromium/files/patch-gpu_command__buffer_service_shared__image_wrapped__sk__image__backing.cc @@ -1,11 +1,11 @@ ---- gpu/command_buffer/service/shared_image/wrapped_sk_image_backing.cc.orig 2026-07-01 06:24:19 UTC +--- gpu/command_buffer/service/shared_image/wrapped_sk_image_backing.cc.orig 2026-08-31 10:59:09 UTC +++ gpu/command_buffer/service/shared_image/wrapped_sk_image_backing.cc -@@ -204,7 +204,7 @@ bool WrappedSkImageBacking::Initialize(const std::stri +@@ -205,7 +205,7 @@ bool WrappedSkImageBacking::Initialize(const std::stri constexpr GrRenderable is_renderable = GrRenderable::kYes; constexpr GrProtected is_protected = GrProtected::kNo; -#if DCHECK_IS_ON() && !BUILDFLAG(IS_LINUX) +#if DCHECK_IS_ON() && !BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_BSD) // Blue for single-planar and magenta-ish for multi-planar. SkColor4f fallback_color = format().is_single_plane() ? SkColors::kBlue : SkColors::kWhite; 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 00ac54f13a76..a3f3ea38559e 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 2026-08-12 09:02:10 UTC +--- gpu/command_buffer/service/webgpu_decoder_impl.cc.orig 2026-08-31 10:59:09 UTC +++ gpu/command_buffer/service/webgpu_decoder_impl.cc -@@ -1780,7 +1780,7 @@ wgpu::Adapter WebGPUDecoderImpl::CreatePreferredAdapte +@@ -1747,7 +1747,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() || webgpu_on_vk_gl_interop_ || shared_context_state_->IsGraphiteDawnVulkan()) { -@@ -2106,7 +2106,7 @@ WebGPUDecoderImpl::AssociateMailboxDawn( +@@ -2076,7 +2076,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_config_gpu__finch__features.cc b/www/chromium/files/patch-gpu_config_gpu__finch__features.cc index 1de8f053553d..9dc5dcc347ed 100644 --- a/www/chromium/files/patch-gpu_config_gpu__finch__features.cc +++ b/www/chromium/files/patch-gpu_config_gpu__finch__features.cc @@ -1,29 +1,20 @@ ---- gpu/config/gpu_finch_features.cc.orig 2026-08-12 09:02:10 UTC +--- gpu/config/gpu_finch_features.cc.orig 2026-08-31 10:59:09 UTC +++ gpu/config/gpu_finch_features.cc -@@ -176,7 +176,7 @@ const base::FeatureParam +@@ -189,7 +189,7 @@ const base::FeatureParam // of associating with an unused IPC::Channel. BASE_FEATURE(kRemoveGPULegacyIPC, base::FEATURE_DISABLED_BY_DEFAULT); -#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Feature flag to control whether SharedImageStub sequence uses high priority // on ChromeOS and Linux. Enabled by default. BASE_FEATURE(kSharedImageStubHighPriority, base::FEATURE_DISABLED_BY_DEFAULT); -@@ -185,7 +185,7 @@ BASE_FEATURE(kSharedImageStubHighPriority, base::FEATU - // Disables hardware YUV conversion on NVIDIA + Wayland to workaround a driver - // bug. - BASE_FEATURE(kNvidiaWaylandYuvHardwareConversionWorkaround, --#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - base::FEATURE_ENABLED_BY_DEFAULT - #else - base::FEATURE_DISABLED_BY_DEFAULT -@@ -515,7 +515,7 @@ BASE_FEATURE(kGPUDriverBugListTestGroup, base::FEATURE +@@ -513,7 +513,7 @@ BASE_FEATURE(kGPUDriverBugListTestGroup, base::FEATURE const base::FeatureParam kGPUDriverBugListTestGroupId{ &kGPUDriverBugListTestGroup, "test_group", 0}; -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) bool IsForceEnableWebGpuInterop() { return base::FeatureList::IsEnabled(kForceEnableWebGpuInterop); } diff --git a/www/chromium/files/patch-gpu_config_gpu__finch__features.h b/www/chromium/files/patch-gpu_config_gpu__finch__features.h index 4d4e33c73d86..60b3d9c2dee9 100644 --- a/www/chromium/files/patch-gpu_config_gpu__finch__features.h +++ b/www/chromium/files/patch-gpu_config_gpu__finch__features.h @@ -1,11 +1,11 @@ ---- gpu/config/gpu_finch_features.h.orig 2026-08-12 09:02:10 UTC +--- gpu/config/gpu_finch_features.h.orig 2026-08-31 10:59:09 UTC +++ gpu/config/gpu_finch_features.h -@@ -179,7 +179,7 @@ GPU_CONFIG_EXPORT BASE_DECLARE_FEATURE(kPruneOldTransf +@@ -187,7 +187,7 @@ GPU_CONFIG_EXPORT BASE_DECLARE_FEATURE(kPruneOldTransf GPU_CONFIG_EXPORT BASE_DECLARE_FEATURE(kRemoveGPULegacyIPC); -#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) GPU_CONFIG_EXPORT BASE_DECLARE_FEATURE(kSharedImageStubHighPriority); #endif 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 4634a7cdfbcc..bb3008e8c2ef 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 2026-08-12 09:02:10 UTC +--- gpu/config/gpu_info_collector.cc.orig 2026-08-31 10:59:09 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_service_gpu__init.cc b/www/chromium/files/patch-gpu_ipc_service_gpu__init.cc index e990bccbbed6..9a9e8162fa60 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 2026-08-12 09:02:10 UTC +--- gpu/ipc/service/gpu_init.cc.orig 2026-08-31 10:59:09 UTC +++ gpu/ipc/service/gpu_init.cc -@@ -170,7 +170,7 @@ void InitializePlatformOverlaySettings(GPUInfo* gpu_in +@@ -171,7 +171,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; -@@ -432,7 +432,7 @@ bool GpuInit::InitializeAndStartSandbox(base::CommandL +@@ -433,7 +433,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 -@@ -471,7 +471,7 @@ bool GpuInit::InitializeAndStartSandbox(base::CommandL +@@ -472,7 +472,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. -@@ -514,7 +514,7 @@ bool GpuInit::InitializeAndStartSandbox(base::CommandL +@@ -515,7 +515,7 @@ bool GpuInit::InitializeAndStartSandbox(base::CommandL } } -#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 -@@ -573,7 +573,7 @@ bool GpuInit::InitializeAndStartSandbox(base::CommandL +@@ -574,7 +574,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; -@@ -794,7 +794,7 @@ bool GpuInit::InitializeAndStartSandbox(base::CommandL +@@ -795,7 +795,7 @@ bool GpuInit::InitializeAndStartSandbox(base::CommandL } } -#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. -@@ -869,7 +869,7 @@ bool GpuInit::InitializeAndStartSandbox(base::CommandL +@@ -870,7 +870,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 -@@ -1099,7 +1099,7 @@ void GpuInit::InitializeInProcess(base::CommandLine* c +@@ -1100,7 +1100,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 -@@ -1155,7 +1155,7 @@ void GpuInit::InitializeInProcess(base::CommandLine* c +@@ -1156,7 +1156,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-media_BUILD.gn b/www/chromium/files/patch-media_BUILD.gn index 5f92fd56aef4..5c0a7047f967 100644 --- a/www/chromium/files/patch-media_BUILD.gn +++ b/www/chromium/files/patch-media_BUILD.gn @@ -1,12 +1,12 @@ ---- media/BUILD.gn.orig 2026-08-12 09:02:10 UTC +--- media/BUILD.gn.orig 2026-08-31 10:59:09 UTC +++ media/BUILD.gn -@@ -105,6 +105,9 @@ config("media_config") { +@@ -106,6 +106,9 @@ config("media_config") { defines += [ "DLOPEN_PULSEAUDIO" ] } } + if (use_sndio) { + defines += [ "USE_SNDIO" ] + } } # Internal grouping of the configs necessary to support sub-folders having their diff --git a/www/chromium/files/patch-media_base_media__switches.cc b/www/chromium/files/patch-media_base_media__switches.cc index d9d2a3735496..e5f1f43f740f 100644 --- a/www/chromium/files/patch-media_base_media__switches.cc +++ b/www/chromium/files/patch-media_base_media__switches.cc @@ -1,129 +1,129 @@ ---- media/base/media_switches.cc.orig 2026-08-12 09:02:10 UTC +--- media/base/media_switches.cc.orig 2026-08-31 10:59:09 UTC +++ media/base/media_switches.cc @@ -20,7 +20,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" #include "components/system_media_controls/linux/buildflags/buildflags.h" #endif -@@ -469,13 +469,35 @@ BASE_FEATURE(kApplicationAudioCaptureMac, base::FEATUR +@@ -472,13 +472,35 @@ BASE_FEATURE(kApplicationAudioCaptureMac, base::FEATUR #endif // BUILDFLAG(IS_MAC) -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Enables system audio mirroring using pulseaudio. BASE_FEATURE(kPulseaudioLoopbackForCast, base::FEATURE_DISABLED_BY_DEFAULT); // Enables system audio sharing using pulseaudio. BASE_FEATURE(kPulseaudioLoopbackForScreenShare, 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 -@@ -647,7 +669,7 @@ BASE_FEATURE(kRevokeMediaSourceObjectURLOnAttach, +@@ -650,7 +672,7 @@ BASE_FEATURE(kRevokeMediaSourceObjectURLOnAttach, // Android / Fuchsia are expected to launch in M150. BASE_FEATURE(kSymphoniaAudioDecoding, #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 -@@ -657,7 +679,7 @@ BASE_FEATURE(kSymphoniaAudioDecoding, +@@ -660,7 +682,7 @@ BASE_FEATURE(kSymphoniaAudioDecoding, // Android / Fuchsia are expected to launch in M150. BASE_FEATURE(kSymphoniaMp3Decoding, #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 -@@ -768,7 +790,7 @@ BASE_FEATURE(kMediaCodecColorSpaceCleanup, base::FEATU +@@ -783,7 +805,7 @@ BASE_FEATURE(kMediaCodecColorSpaceCleanup, base::FEATU #if !BUILDFLAG(IS_ANDROID) // If enabled, users can request Media Remoting without fullscreen-in-tab. BASE_FEATURE(kMediaRemotingWithoutFullscreen, -#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 -@@ -791,7 +813,7 @@ BASE_FEATURE(kSuspendMediaForFrozenFrames, base::FEATU +@@ -802,7 +824,7 @@ BASE_FEATURE(kSuspendMediaForFrozenFrames, base::FEATU // autoplay policy. BASE_FEATURE(kUnifiedAutoplay, 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. -@@ -869,7 +891,7 @@ BASE_FEATURE(kVaapiVp9SModeHWEncoding, base::FEATURE_E +@@ -888,7 +910,7 @@ BASE_FEATURE(kVaapiVp9SModeHWEncoding, base::FEATURE_E // Enables VSync aligned MJPEG decoding. BASE_FEATURE(kVSyncMjpegDecoding, 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, base::FEATURE_DISABLED_BY_DEFAULT); -@@ -1074,7 +1096,7 @@ BASE_FEATURE(kMediaFoundationMultiGpuAdapterSelection, +@@ -1100,7 +1122,7 @@ BASE_FEATURE(kMediaFoundationMultiGpuAdapterSelection, BASE_FEATURE(kHardwareMediaKeyHandling, #if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) base::FEATURE_ENABLED_BY_DEFAULT -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #if BUILDFLAG(USE_MPRIS) base::FEATURE_ENABLED_BY_DEFAULT #else -@@ -1436,7 +1458,7 @@ BASE_FEATURE(kUseOutOfProcessVideoDecoding, +@@ -1458,7 +1480,7 @@ BASE_FEATURE(kUseOutOfProcessVideoDecoding, BASE_FEATURE(kUseSharedImageInOOPVDProcess, base::FEATURE_ENABLED_BY_DEFAULT); #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, base::FEATURE_DISABLED_BY_DEFAULT); -@@ -1498,7 +1520,7 @@ BASE_FEATURE(kRecordMediaEngagementScores, base::FEATU +@@ -1520,7 +1542,7 @@ BASE_FEATURE(kRecordMediaEngagementScores, base::FEATU // Enables Media Engagement Index recording for Web Audio playbacks. BASE_FEATURE(kRecordWebAudioEngagement, 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. -@@ -1823,7 +1845,7 @@ bool IsSystemLoopbackCaptureSupported() { +@@ -1845,7 +1867,7 @@ bool IsSystemLoopbackCaptureSupported() { #elif BUILDFLAG(IS_MAC) return (IsMacSckSystemLoopbackCaptureSupported() || IsMacCatapSystemLoopbackCaptureSupported()); -#elif BUILDFLAG(IS_LINUX) && defined(USE_PULSEAUDIO) +#elif (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && defined(USE_PULSEAUDIO) return true; #else return false; diff --git a/www/chromium/files/patch-media_base_media__switches.h b/www/chromium/files/patch-media_base_media__switches.h index b9270269909e..3b3daae60831 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 2026-08-12 09:02:10 UTC +--- media/base/media_switches.h.orig 2026-08-31 10:59:09 UTC +++ media/base/media_switches.h -@@ -331,13 +331,25 @@ MEDIA_EXPORT BASE_DECLARE_FEATURE(kMediaRecorderHEVCSu +@@ -333,13 +333,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(kUnifiedAutoplay); +@@ -361,7 +373,7 @@ MEDIA_EXPORT BASE_DECLARE_FEATURE(kUnifiedAutoplay); MEDIA_EXPORT BASE_DECLARE_FEATURE(kUseAndroidOverlayForSecureOnly); MEDIA_EXPORT BASE_DECLARE_FEATURE(kUseFakeDeviceForMediaStream); MEDIA_EXPORT BASE_DECLARE_FEATURE(kMediaStreamAccurateDroppedFrameCount); -#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); -@@ -373,7 +385,7 @@ MEDIA_EXPORT BASE_DECLARE_FEATURE(kVaapiAV1TemporalLay +@@ -385,7 +397,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); -@@ -484,7 +496,7 @@ MEDIA_EXPORT BASE_DECLARE_FEATURE(kUseOutOfProcessVide +@@ -496,7 +508,7 @@ MEDIA_EXPORT BASE_DECLARE_FEATURE(kUseOutOfProcessVide MEDIA_EXPORT BASE_DECLARE_FEATURE(kUseSharedImageInOOPVDProcess); #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 73fca49426cc..db8cd1570b1d 100644 --- a/www/chromium/files/patch-media_base_video__frame.cc +++ b/www/chromium/files/patch-media_base_video__frame.cc @@ -1,38 +1,38 @@ ---- media/base/video_frame.cc.orig 2026-06-10 07:57:19 UTC +--- media/base/video_frame.cc.orig 2026-08-31 10:59:09 UTC +++ media/base/video_frame.cc @@ -86,7 +86,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 -@@ -418,7 +418,7 @@ scoped_refptr VideoFrame::WrapMappableShar +@@ -496,7 +496,7 @@ scoped_refptr VideoFrame::WrapMappableShar 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 = !shared_image->IsSharedMemoryForVideoFrame(); if (is_native_buffer) { const auto gmb_handle = shared_image->CloneGpuMemoryBufferHandle(); -@@ -682,7 +682,7 @@ scoped_refptr VideoFrame::WrapExternalYuva +@@ -760,7 +760,7 @@ scoped_refptr VideoFrame::WrapExternalYuva 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, -@@ -1416,7 +1416,7 @@ scoped_refptr VideoFrame::shar +@@ -1492,7 +1492,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_gpu_chromeos_mailbox__video__frame__converter.cc b/www/chromium/files/patch-media_gpu_chromeos_mailbox__video__frame__converter.cc index 93758283bf82..19f8b85a897d 100644 --- a/www/chromium/files/patch-media_gpu_chromeos_mailbox__video__frame__converter.cc +++ b/www/chromium/files/patch-media_gpu_chromeos_mailbox__video__frame__converter.cc @@ -1,11 +1,11 @@ ---- media/gpu/chromeos/mailbox_video_frame_converter.cc.orig 2026-06-04 10:12:25 UTC +--- media/gpu/chromeos/mailbox_video_frame_converter.cc.orig 2026-08-31 10:59:09 UTC +++ media/gpu/chromeos/mailbox_video_frame_converter.cc -@@ -238,7 +238,7 @@ MailboxVideoFrameConverter::GenerateSharedImage( +@@ -232,7 +232,7 @@ MailboxVideoFrameConverter::GenerateSharedImage( VideoPixelFormatToString(origin_frame->format())); return nullptr; } -#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // If format is true multiplanar format, we prefer external sampler on // ChromeOS and Linux. if (si_format->is_multi_plane()) { diff --git a/www/chromium/files/patch-media_gpu_chromeos_video__decoder__pipeline.cc b/www/chromium/files/patch-media_gpu_chromeos_video__decoder__pipeline.cc index 41d8d9b02e34..df76db56c850 100644 --- a/www/chromium/files/patch-media_gpu_chromeos_video__decoder__pipeline.cc +++ b/www/chromium/files/patch-media_gpu_chromeos_video__decoder__pipeline.cc @@ -1,38 +1,29 @@ ---- media/gpu/chromeos/video_decoder_pipeline.cc.orig 2026-08-12 09:02:10 UTC +--- media/gpu/chromeos/video_decoder_pipeline.cc.orig 2026-08-31 10:59:09 UTC +++ media/gpu/chromeos/video_decoder_pipeline.cc -@@ -682,7 +682,7 @@ void VideoDecoderPipeline::InitializeTask(const VideoD +@@ -706,7 +706,7 @@ void VideoDecoderPipeline::InitializeTask(const VideoD &OOPVideoDecoder::GetOriginalFrame, base::Unretained(static_cast(decoder_.get()))); } else { -#if BUILDFLAG(IS_LINUX) && BUILDFLAG(USE_V4L2_CODEC) +#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && BUILDFLAG(USE_V4L2_CODEC) if (!main_frame_pool_) { get_original_frame_cb = base::NullCallback(); } else -@@ -1141,7 +1141,7 @@ VideoDecoderPipeline::PickDecoderOutputFormat( +@@ -1165,7 +1165,7 @@ VideoDecoderPipeline::PickDecoderOutputFormat( } #endif --#if BUILDFLAG(IS_LINUX) && BUILDFLAG(USE_VAAPI) -+#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && BUILDFLAG(USE_VAAPI) - // Linux should always use a custom allocator (to allocate buffers using - // libva) and a PlatformVideoFramePool. - CHECK(allocator.has_value()); -@@ -1150,7 +1150,7 @@ VideoDecoderPipeline::PickDecoderOutputFormat( - // VideoFrame::StorageType of VideoFrame::STORAGE_DMABUFS. - main_frame_pool_->AsPlatformVideoFramePool()->SetCustomFrameAllocator( - *allocator, VideoFrame::STORAGE_DMABUFS); --#elif BUILDFLAG(IS_LINUX) && BUILDFLAG(USE_V4L2_CODEC) -+#elif (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && BUILDFLAG(USE_V4L2_CODEC) - // Linux w/ V4L2 should not use a custom allocator - // Only tested with video_decode_accelerator_tests - // TODO(wenst@) Test with full Chromium Browser -@@ -1324,7 +1324,7 @@ VideoDecoderPipeline::PickDecoderOutputFormat( +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + // Linux: behavior depends on which backend the decoder represents, signaled + // by whether it supplied a custom allocator. + if (allocator.has_value()) { +@@ -1359,7 +1359,7 @@ VideoDecoderPipeline::PickDecoderOutputFormat( << " VideoFrames"; auxiliary_frame_pool_->set_parent_task_runner(decoder_task_runner_); -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // The custom allocator creates frames backed by NativePixmap, which uses a // VideoFrame::StorageType of VideoFrame::STORAGE_DMABUFS. auxiliary_frame_pool_->AsPlatformVideoFramePool()->SetCustomFrameAllocator( diff --git a/www/chromium/files/patch-media_gpu_gpu__video__encode__accelerator__factory.cc b/www/chromium/files/patch-media_gpu_gpu__video__encode__accelerator__factory.cc index ff6a0485ff0c..750d9ff7c8bb 100644 --- a/www/chromium/files/patch-media_gpu_gpu__video__encode__accelerator__factory.cc +++ b/www/chromium/files/patch-media_gpu_gpu__video__encode__accelerator__factory.cc @@ -1,11 +1,11 @@ ---- media/gpu/gpu_video_encode_accelerator_factory.cc.orig 2026-02-11 09:05:39 UTC +--- media/gpu/gpu_video_encode_accelerator_factory.cc.orig 2026-08-31 10:59:09 UTC +++ media/gpu/gpu_video_encode_accelerator_factory.cc -@@ -67,7 +67,7 @@ std::unique_ptr CreateV4L2VEA( - } - #elif BUILDFLAG(USE_VAAPI) +@@ -71,7 +71,7 @@ std::unique_ptr CreateV4L2VEA( + + #if BUILDFLAG(USE_VAAPI) std::unique_ptr CreateVaapiVEA() { -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (!base::FeatureList::IsEnabled(kAcceleratedVideoEncodeLinux)) { return nullptr; } 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 2338f68384e8..08c75a67faba 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 2026-07-01 06:24:19 UTC +--- media/gpu/sandbox/hardware_video_decoding_sandbox_hook_linux.cc.orig 2026-08-31 10:59:09 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) { @@ -207,6 +210,7 @@ bool HardwareVideoDecodingPreSandboxHookForV4L2( NOTREACHED(); #endif // BUILDFLAG(USE_V4L2_CODEC) } +#endif } // namespace @@ -222,6 +226,7 @@ bool HardwareVideoDecodingPreSandboxHookForV4L2( // (at least). bool HardwareVideoDecodingPreSandboxHook( sandbox::policy::SandboxLinux::Options options) { +#if !BUILDFLAG(IS_BSD) using HardwareVideoDecodingProcessPolicy = sandbox::policy::HardwareVideoDecodingProcessPolicy; using PolicyType = -@@ -267,6 +272,7 @@ bool HardwareVideoDecodingPreSandboxHook( +@@ -287,6 +292,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_sandbox_hardware__video__encoding__sandbox__hook__linux.cc b/www/chromium/files/patch-media_gpu_sandbox_hardware__video__encoding__sandbox__hook__linux.cc index cb2676ffbbaa..aa52d90b9b7b 100644 --- a/www/chromium/files/patch-media_gpu_sandbox_hardware__video__encoding__sandbox__hook__linux.cc +++ b/www/chromium/files/patch-media_gpu_sandbox_hardware__video__encoding__sandbox__hook__linux.cc @@ -1,26 +1,26 @@ ---- media/gpu/sandbox/hardware_video_encoding_sandbox_hook_linux.cc.orig 2024-10-22 08:31:56 UTC +--- media/gpu/sandbox/hardware_video_encoding_sandbox_hook_linux.cc.orig 2026-08-31 10:59:09 UTC +++ media/gpu/sandbox/hardware_video_encoding_sandbox_hook_linux.cc @@ -18,12 +18,15 @@ #include "media/gpu/v4l2/v4l2_device.h" #endif +#if !BUILDFLAG(IS_BSD) using sandbox::syscall_broker::BrokerFilePermission; +#endif namespace media { bool HardwareVideoEncodingPreSandboxHook( sandbox::policy::SandboxLinux::Options options) { +#if !BUILDFLAG(IS_BSD) sandbox::syscall_broker::BrokerCommandSet command_set; std::vector permissions; -@@ -131,6 +134,7 @@ bool HardwareVideoEncodingPreSandboxHook( +@@ -140,6 +143,7 @@ bool HardwareVideoEncodingPreSandboxHook( dlopen("libvulkan.so.1", kDlopenFlags); dlopen("libvulkan_radeon.so", kDlopenFlags); } +#endif #endif return true; } 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 53d3b77e8c8e..db9f443ec59c 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 2026-08-12 09:02:10 UTC +--- media/gpu/vaapi/vaapi_video_decoder.cc.orig 2026-08-31 10:59:09 UTC +++ media/gpu/vaapi/vaapi_video_decoder.cc -@@ -800,7 +800,7 @@ void VaapiVideoDecoder::ApplyResolutionChangeWithScree +@@ -802,7 +802,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_video_mappable__shared__image__video__frame__pool.cc b/www/chromium/files/patch-media_video_mappable__shared__image__video__frame__pool.cc index b70258e23fde..15a72b4b7233 100644 --- a/www/chromium/files/patch-media_video_mappable__shared__image__video__frame__pool.cc +++ b/www/chromium/files/patch-media_video_mappable__shared__image__video__frame__pool.cc @@ -1,20 +1,20 @@ ---- media/video/mappable_shared_image_video_frame_pool.cc.orig 2026-07-01 06:24:19 UTC +--- media/video/mappable_shared_image_video_frame_pool.cc.orig 2026-08-31 10:59:09 UTC +++ media/video/mappable_shared_image_video_frame_pool.cc -@@ -689,7 +689,7 @@ void MappableSharedImageVideoFramePool::PoolImpl::Crea +@@ -683,7 +683,7 @@ void MappableSharedImageVideoFramePool::PoolImpl::Crea } bool is_software_backed_video_frame = !video_frame->HasSharedImage(); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) is_software_backed_video_frame &= !video_frame->HasDmaBufs(); #endif -@@ -1117,7 +1117,7 @@ scoped_refptr MappableSharedImageVideoFram +@@ -1109,7 +1109,7 @@ scoped_refptr MappableSharedImageVideoFram gpu::SHARED_IMAGE_USAGE_WEBGPU_READ); #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Gate this on SharedImage usage as ScopedAccess now CHECKs for it. // TOOD(crbug.com/425634684, crbug.com/413659843): Check for webgpu support // from SharedImageCapabilities, once this metadata is compatible. diff --git a/www/chromium/files/patch-media_video_video__encode__accelerator__adapter.cc b/www/chromium/files/patch-media_video_video__encode__accelerator__adapter.cc index 01ba1954aaa0..171734b38b9f 100644 --- a/www/chromium/files/patch-media_video_video__encode__accelerator__adapter.cc +++ b/www/chromium/files/patch-media_video_video__encode__accelerator__adapter.cc @@ -1,11 +1,11 @@ ---- media/video/video_encode_accelerator_adapter.cc.orig 2026-07-01 06:24:19 UTC +--- media/video/video_encode_accelerator_adapter.cc.orig 2026-08-31 10:59:09 UTC +++ media/video/video_encode_accelerator_adapter.cc -@@ -514,7 +514,7 @@ void VideoEncodeAcceleratorAdapter::InitializeOnAccele +@@ -505,7 +505,7 @@ void VideoEncodeAcceleratorAdapter::InitializeOnAccele #endif // BUILDFLAG(USE_PROPRIETARY_CODECS) auto storage_type = VideoEncodeAccelerator::Config::StorageType::kShmem; -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Linux/ChromeOS require a special configuration to use dmabuf storage. // We need to keep sending frames with the same storage type. // Other platforms will happily mix GpuMemoryBuffer storage with shared-mem diff --git a/www/chromium/files/patch-media_webrtc_audio__processor.cc b/www/chromium/files/patch-media_webrtc_audio__processor.cc index b89c83707216..f6498dc6dc60 100644 --- a/www/chromium/files/patch-media_webrtc_audio__processor.cc +++ b/www/chromium/files/patch-media_webrtc_audio__processor.cc @@ -1,11 +1,11 @@ ---- media/webrtc/audio_processor.cc.orig 2026-05-07 17:02:56 UTC +--- media/webrtc/audio_processor.cc.orig 2026-08-31 10:59:09 UTC +++ media/webrtc/audio_processor.cc -@@ -518,7 +518,7 @@ std::optional AudioProcessor::ProcessData( +@@ -523,7 +523,7 @@ std::optional AudioProcessor::ProcessData( // controller. #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) DCHECK_LE(volume, 1.0); -#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_OPENBSD) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // We have a special situation on Linux where the microphone volume can be // "higher than maximum". The input volume slider in the sound preference // allows the user to set a scaling that is higher than 100%. It means that diff --git a/www/chromium/files/patch-media_webrtc_helpers.cc b/www/chromium/files/patch-media_webrtc_helpers.cc index 3ba4e896958a..35209bb9334c 100644 --- a/www/chromium/files/patch-media_webrtc_helpers.cc +++ b/www/chromium/files/patch-media_webrtc_helpers.cc @@ -1,19 +1,19 @@ ---- media/webrtc/helpers.cc.orig 2026-05-07 17:02:56 UTC +--- media/webrtc/helpers.cc.orig 2026-08-31 10:59:09 UTC +++ media/webrtc/helpers.cc -@@ -51,14 +51,14 @@ void ConfigAutomaticGainControl(const AudioProcessingS +@@ -66,14 +66,14 @@ void ConfigAutomaticGainControl(const AudioProcessingS return; } -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) const bool kInputVolumeAdjustmentOverrideAllowed = true; #elif BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) const bool kInputVolumeAdjustmentOverrideAllowed = false; #endif #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) // Use AGC2 digital and input volume controller. // TODO(crbug.com/40872787): Remove `kWebRtcAllowInputVolumeAdjustment` safely // and set `input_volume_controller.enabled` true. diff --git a/www/chromium/files/patch-net_BUILD.gn b/www/chromium/files/patch-net_BUILD.gn index 7338bf02c664..4b6087c69748 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 2026-08-12 09:02:10 UTC +--- net/BUILD.gn.orig 2026-08-31 10:59:09 UTC +++ net/BUILD.gn @@ -115,7 +115,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" ] } -@@ -1420,6 +1420,19 @@ component("net") { +@@ -1432,6 +1432,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", -@@ -1594,7 +1607,7 @@ component("net") { +@@ -1607,7 +1620,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", -@@ -2361,7 +2374,7 @@ static_library("test_support") { +@@ -2382,7 +2395,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", -@@ -3203,14 +3216,14 @@ target(_test_target_type, "net_unittests") { +@@ -3233,14 +3246,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", -@@ -3335,6 +3348,10 @@ target(_test_target_type, "net_unittests") { +@@ -3368,6 +3381,10 @@ target(_test_target_type, "net_unittests") { ] } + if (is_bsd) { + deps += [ "//sandbox/policy" ] + } + if (enable_websockets) { sources += [ "server/http_connection_unittest.cc", -@@ -3393,7 +3410,7 @@ target(_test_target_type, "net_unittests") { +@@ -3426,7 +3443,7 @@ target(_test_target_type, "net_unittests") { ] data_deps = [ "//testing/buildbot/filters:net_unittests_filters" ] - if (is_linux || is_chromeos) { + if ((is_linux || is_chromeos) && !is_bsd) { sources += [ "tools/quic/quic_simple_server_test.cc" ] } -@@ -3526,7 +3543,7 @@ target(_test_target_type, "net_unittests") { +@@ -3559,7 +3576,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_base_features.cc b/www/chromium/files/patch-net_base_features.cc index 215f47976c3e..06afc1d62aab 100644 --- a/www/chromium/files/patch-net_base_features.cc +++ b/www/chromium/files/patch-net_base_features.cc @@ -1,29 +1,29 @@ ---- net/base/features.cc.orig 2026-08-12 09:02:10 UTC +--- net/base/features.cc.orig 2026-08-31 10:59:09 UTC +++ net/base/features.cc @@ -41,7 +41,7 @@ BASE_FEATURE(kDeriveConnectionTypeFromCapabilities, BASE_FEATURE(kAsyncDns, #if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_ANDROID) || \ - BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) base::FEATURE_ENABLED_BY_DEFAULT #else base::FEATURE_DISABLED_BY_DEFAULT -@@ -321,7 +321,7 @@ inline constexpr auto kMigrateSessionsOnNetworkChangeV +@@ -362,7 +362,7 @@ inline constexpr auto kMigrateSessionsOnNetworkChangeV BASE_FEATURE(kMigrateSessionsOnNetworkChangeV2, kMigrateSessionsOnNetworkChangeV2Default); -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) BASE_FEATURE(kAddressTrackerLinuxIsProxied, base::FEATURE_ENABLED_BY_DEFAULT); #endif // BUILDFLAG(IS_LINUX) -@@ -433,7 +433,7 @@ BASE_FEATURE(kReportingApiEnableEnterpriseCookieIssues +@@ -471,7 +471,7 @@ BASE_FEATURE(kReportingApiEnableEnterpriseCookieIssues base::FEATURE_DISABLED_BY_DEFAULT); BASE_FEATURE(kSimdutfBase64Support, -#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-net_dns_public_BUILD.gn b/www/chromium/files/patch-net_dns_public_BUILD.gn index 3799dbfbc898..4e1fb59fd283 100644 --- a/www/chromium/files/patch-net_dns_public_BUILD.gn +++ b/www/chromium/files/patch-net_dns_public_BUILD.gn @@ -1,11 +1,11 @@ ---- net/dns/public/BUILD.gn.orig 2026-05-07 17:02:56 UTC +--- net/dns/public/BUILD.gn.orig 2026-08-31 10:59:09 UTC +++ net/dns/public/BUILD.gn -@@ -79,7 +79,7 @@ source_set("tests") { +@@ -80,7 +80,7 @@ source_set("tests") { "doh_provider_entry_unittest.cc", ] - if (is_posix && !is_android) { + if (is_posix && !is_android && !is_bsd) { sources += [ "resolv_reader_unittest.cc" ] } diff --git a/www/chromium/files/patch-net_http_http__auth__preferences.cc b/www/chromium/files/patch-net_http_http__auth__preferences.cc index 446ef7cb39bc..15d67e3df4fc 100644 --- a/www/chromium/files/patch-net_http_http__auth__preferences.cc +++ b/www/chromium/files/patch-net_http_http__auth__preferences.cc @@ -1,11 +1,11 @@ ---- net/http/http_auth_preferences.cc.orig 2025-04-04 08:52:13 UTC +--- net/http/http_auth_preferences.cc.orig 2026-08-31 10:59:09 UTC +++ net/http/http_auth_preferences.cc -@@ -38,7 +38,7 @@ std::string HttpAuthPreferences::AuthAndroidNegotiateA +@@ -40,7 +40,7 @@ std::string HttpAuthPreferences::AuthAndroidNegotiateA } #endif // BUILDFLAG(IS_ANDROID) -#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) bool HttpAuthPreferences::AllowGssapiLibraryLoad() const { return allow_gssapi_library_load_; } diff --git a/www/chromium/files/patch-net_http_http__auth__preferences.h b/www/chromium/files/patch-net_http_http__auth__preferences.h index 8f582f94234e..cfe2714cee4b 100644 --- a/www/chromium/files/patch-net_http_http__auth__preferences.h +++ b/www/chromium/files/patch-net_http_http__auth__preferences.h @@ -1,29 +1,29 @@ ---- net/http/http_auth_preferences.h.orig 2025-04-04 08:52:13 UTC +--- net/http/http_auth_preferences.h.orig 2026-08-31 10:59:09 UTC +++ net/http/http_auth_preferences.h @@ -49,7 +49,7 @@ class NET_EXPORT HttpAuthPreferences { #if BUILDFLAG(IS_ANDROID) virtual std::string AuthAndroidNegotiateAccountType() const; #endif -#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) virtual bool AllowGssapiLibraryLoad() const; #endif // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) virtual bool CanUseDefaultCredentials( @@ -85,7 +85,7 @@ class NET_EXPORT HttpAuthPreferences { } #endif // BUILDFLAG(IS_POSIX) || BUILDFLAG(IS_FUCHSIA) -#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) void set_allow_gssapi_library_load(bool allow_gssapi_library_load) { allow_gssapi_library_load_ = allow_gssapi_library_load; } -@@ -136,7 +136,7 @@ class NET_EXPORT HttpAuthPreferences { +@@ -134,7 +134,7 @@ class NET_EXPORT HttpAuthPreferences { std::string auth_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) bool allow_gssapi_library_load_ = true; #endif // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) diff --git a/www/chromium/files/patch-net_socket_extra__socket__defines.h b/www/chromium/files/patch-net_socket_extra__socket__defines.h new file mode 100644 index 000000000000..80462b5088b9 --- /dev/null +++ b/www/chromium/files/patch-net_socket_extra__socket__defines.h @@ -0,0 +1,11 @@ +--- net/socket/extra_socket_defines.h.orig 2026-08-31 10:59:09 UTC ++++ net/socket/extra_socket_defines.h +@@ -7,7 +7,7 @@ + + #include "build/build_config.h" + +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) + #include + #include + diff --git a/www/chromium/files/patch-net_socket_udp__socket__posix.cc b/www/chromium/files/patch-net_socket_udp__socket__posix.cc index 3f04a2b17396..7f6ac310b2d5 100644 --- a/www/chromium/files/patch-net_socket_udp__socket__posix.cc +++ b/www/chromium/files/patch-net_socket_udp__socket__posix.cc @@ -1,126 +1,166 @@ ---- net/socket/udp_socket_posix.cc.orig 2026-08-12 09:02:10 UTC +--- net/socket/udp_socket_posix.cc.orig 2026-08-31 10:59:09 UTC +++ net/socket/udp_socket_posix.cc -@@ -77,6 +77,10 @@ +@@ -80,6 +80,10 @@ #include "base/mac/mac_util.h" #endif // BUILDFLAG(IS_MAC) +#if !defined(CMSG_ALIGN) +#define CMSG_ALIGN(n) _ALIGN(n) +#endif + namespace net { namespace { -@@ -84,7 +88,7 @@ namespace { +@@ -87,7 +91,7 @@ namespace { constexpr int kBindRetries = 10; constexpr int kPortStart = 1024; constexpr int kPortEnd = 65535; -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) // Maximum number of UDP packets that can be read at a time from recvmmsg. constexpr size_t kMaxMmsgMessages = 128; #endif -@@ -181,7 +185,7 @@ uint32_t GetInterfaceForDestination(const IPAddress& d +@@ -145,7 +149,7 @@ uint32_t GetInterfaceForDestination(const IPAddress& d } #endif // BUILDFLAG(IS_MAC) -#if !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_IOS) && !BUILDFLAG(IS_FUCHSIA) +#if !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_IOS) && !BUILDFLAG(IS_FUCHSIA) && !BUILDFLAG(IS_BSD) // Helper for IPv4 SSM. Sets sin_len on macOS, no-op on Linux. group_source_req CreateIPv4SourceGroupRequest(const IPAddress& group_address, const IPAddress& source_address, -@@ -495,7 +499,7 @@ base::expected UDPSocketPosi - CHECK_GT(maximum_packet_size, 0u); - CHECK_GE(buf_len, maximum_packet_size); +@@ -277,7 +281,7 @@ int UDPSocketPosix::AdoptOpenedSocket(AddressFamily ad + return ConfigureOpenedSocket(); + } + +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) + namespace { + + SetSocketOptionGroResult GetSetSocketOptionGroResult(int setsockopt_rv, +@@ -285,8 +289,12 @@ SetSocketOptionGroResult GetSetSocketOptionGroResult(i + if (setsockopt_rv == 0) { + return SetSocketOptionGroResult::kSuccess; + } ++#if !BUILDFLAG(IS_BSD) + if (saved_errno == ENOPROTOOPT || saved_errno == EOPNOTSUPP || + saved_errno == ENOPKG) { ++#else ++ if (saved_errno == ENOPROTOOPT || saved_errno == EOPNOTSUPP) { ++#endif + return SetSocketOptionGroResult::kUnsupportedKernel; + } + return SetSocketOptionGroResult::kOtherError; +@@ -310,7 +318,7 @@ void RecordGroPacketsRead(size_t packet_count) { + #endif + + void UDPSocketPosix::ConfigureGroSocketOption() { +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) + DCHECK_CALLED_ON_VALID_THREAD(thread_checker_); + CHECK_NE(socket_, kInvalidSocket); + CHECK_EQ(gro_status_, GroStatus::kUnconfigured); +@@ -523,7 +531,7 @@ base::expected UDPSocketPosi + // when reading coalesced superpackets (e.g. UDP GRO). + CHECK_GE(buf_len, kMinimumReadMultipleBufferSize); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) - base::expected nread = - InternalReadMultiple(buffer, buf_len, maximum_packet_size); - if (nread.has_value() || nread.error() != ERR_IO_PENDING) { -@@ -777,12 +781,17 @@ int UDPSocketPosix::SetRecvTos() { + if (gro_status_ == GroStatus::kUnconfigured) { + if (base::FeatureList::IsEnabled(features::kEnableUdpGro)) { + ConfigureGroSocketOption(); +@@ -817,12 +825,17 @@ int UDPSocketPosix::SetRecvTos() { #endif // BUILDFLAG(IS_APPLE) } +#ifdef IP_RECVTOS int rv = setsockopt(socket_, IPPROTO_IP, IP_RECVTOS, &ecn, sizeof(ecn)); +#else + int rv = -1; + errno = EOPNOTSUPP; +#endif return rv == 0 ? OK : MapSystemError(errno); } void UDPSocketPosix::SetMsgConfirm(bool confirm) { -#if !BUILDFLAG(IS_APPLE) +#if !BUILDFLAG(IS_APPLE) && !BUILDFLAG(IS_BSD) if (confirm) { sendto_flags_ |= MSG_CONFIRM; } else { -@@ -803,7 +812,7 @@ int UDPSocketPosix::SetBroadcast(bool broadcast) { +@@ -843,7 +856,7 @@ int UDPSocketPosix::SetBroadcast(bool broadcast) { DCHECK_CALLED_ON_VALID_THREAD(thread_checker_); int value = broadcast ? 1 : 0; int rv; -#if BUILDFLAG(IS_APPLE) +#if BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_BSD) // SO_REUSEPORT on OSX permits multiple processes to each receive // UDP multicast or broadcast datagrams destined for the bound // port. -@@ -1011,7 +1020,7 @@ base::expected UDPSocketPosi - // This read API currently only supports connected UDP sockets. - CHECK(is_connected_); - CHECK(remote_address_); +@@ -1126,7 +1139,7 @@ void UDPSocketPosix::FillResultFromMessageHeader(struc + base::byte_span_from_ref(tclass_val).copy_from(cmsg_data_as_span); + result->tos = static_cast(tclass_val); + } -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) - return InternalRecvMmsg(buffer, buf_len / maximum_packet_size, - maximum_packet_size); - #else -@@ -1019,7 +1028,7 @@ base::expected UDPSocketPosi + else if (gro_status_ == GroStatus::kEnabled && + cmsg->cmsg_level == SOL_UDP && cmsg->cmsg_type == UDP_GRO && + cmsg->cmsg_len >= CMSG_LEN(sizeof(int)) && +@@ -1159,7 +1172,7 @@ base::expected UDPSocketPosi + if (socket_ == kInvalidSocket) { + return base::unexpected(ERR_SOCKET_NOT_CONNECTED); + } +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) + if (gro_status_ == GroStatus::kEnabled) { + return InternalReadMultipleWithGro(buffer, buf_len, maximum_packet_size); + } +@@ -1170,7 +1183,7 @@ base::expected UDPSocketPosi #endif } -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) base::expected UDPSocketPosix::InternalRecvMmsg( IOBuffer* buffer, size_t num_messages, -@@ -1315,7 +1324,7 @@ int UDPSocketPosix::DoBind(const IPEndPoint& address) +@@ -1538,7 +1551,7 @@ int UDPSocketPosix::DoBind(const IPEndPoint& address) #if BUILDFLAG(IS_CHROMEOS) if (last_error == EINVAL) return ERR_ADDRESS_IN_USE; -#elif BUILDFLAG(IS_APPLE) +#elif BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_BSD) if (last_error == EADDRNOTAVAIL) return ERR_ADDRESS_IN_USE; #endif -@@ -1415,7 +1424,7 @@ int UDPSocketPosix::LeaveGroup(const IPAddress& group_ +@@ -1638,7 +1651,7 @@ int UDPSocketPosix::LeaveGroup(const IPAddress& group_ int UDPSocketPosix::SetSourceGroupMembership(const IPAddress& group_address, const IPAddress& source_address, int option) const { -#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_IOS) || BUILDFLAG(IS_FUCHSIA) +#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_IOS) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) return ERR_NOT_IMPLEMENTED; #else uint32_t interface_index = multicast_interface_; -@@ -1441,6 +1450,10 @@ int UDPSocketPosix::SetSourceGroupMembership(const IPA +@@ -1664,6 +1677,10 @@ int UDPSocketPosix::SetSourceGroupMembership(const IPA #endif } +#if !defined(MCAST_JOIN_SOURCE_GROUP) +#define MCAST_JOIN_SOURCE_GROUP 0 +#endif + int UDPSocketPosix::JoinSourceGroup(const IPAddress& group_address, const IPAddress& source_address) const { DCHECK_CALLED_ON_VALID_THREAD(thread_checker_); -@@ -1456,6 +1469,10 @@ int UDPSocketPosix::JoinSourceGroup(const IPAddress& g +@@ -1679,6 +1696,10 @@ int UDPSocketPosix::JoinSourceGroup(const IPAddress& g return SetSourceGroupMembership(group_address, source_address, MCAST_JOIN_SOURCE_GROUP); } + +#if !defined(MCAST_LEAVE_SOURCE_GROUP) +#define MCAST_LEAVE_SOURCE_GROUP 0 +#endif int UDPSocketPosix::LeaveSourceGroup(const IPAddress& group_address, const IPAddress& source_address) const { diff --git a/www/chromium/files/patch-net_socket_udp__socket__posix.h b/www/chromium/files/patch-net_socket_udp__socket__posix.h index 27538be14510..49ee89d4e372 100644 --- a/www/chromium/files/patch-net_socket_udp__socket__posix.h +++ b/www/chromium/files/patch-net_socket_udp__socket__posix.h @@ -1,11 +1,11 @@ ---- net/socket/udp_socket_posix.h.orig 2026-08-12 09:02:10 UTC +--- net/socket/udp_socket_posix.h.orig 2026-08-31 10:59:09 UTC +++ net/socket/udp_socket_posix.h -@@ -409,7 +409,7 @@ class NET_EXPORT UDPSocketPosix { - size_t buf_len, +@@ -451,7 +451,7 @@ class NET_EXPORT UDPSocketPosix { size_t maximum_packet_size); - // recvmmsg() is only available on Linux, ChromeOS, and Android. + + // recvmmsg() and GRO are only available on Linux, ChromeOS, and Android. -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) - base::expected InternalRecvMmsg( + base::expected InternalReadMultipleWithGro( IOBuffer* buffer, - size_t num_messages, + size_t buf_len, diff --git a/www/chromium/files/patch-net_socket_udp__socket__unittest.cc b/www/chromium/files/patch-net_socket_udp__socket__unittest.cc index f82ac726f3f2..f358364cd78c 100644 --- a/www/chromium/files/patch-net_socket_udp__socket__unittest.cc +++ b/www/chromium/files/patch-net_socket_udp__socket__unittest.cc @@ -1,47 +1,47 @@ ---- net/socket/udp_socket_unittest.cc.orig 2026-08-12 09:02:10 UTC +--- net/socket/udp_socket_unittest.cc.orig 2026-08-31 10:59:09 UTC +++ net/socket/udp_socket_unittest.cc -@@ -455,7 +455,7 @@ TEST_F(UDPSocketTest, PartialRecv) { +@@ -520,7 +520,7 @@ TEST_F(UDPSocketTest, PartialRecv) { EXPECT_EQ(second_packet, received); } -#if BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_ANDROID) +#if BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) // - MacOS: requires root permissions on OSX 10.7+. // - Android: devices attached to testbots don't have default network, so // broadcasting to 255.255.255.255 returns error -109 (Address not reachable). -@@ -767,7 +767,7 @@ TEST_F(UDPSocketTest, ClientSetDoNotFragment) { +@@ -832,7 +832,7 @@ TEST_F(UDPSocketTest, ClientSetDoNotFragment) { EXPECT_THAT(rv, IsOk()); rv = client.SetDoNotFragment(); -#if BUILDFLAG(IS_IOS) || BUILDFLAG(IS_FUCHSIA) +#if BUILDFLAG(IS_IOS) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) // TODO(crbug.com/42050633): IP_MTU_DISCOVER is not implemented on Fuchsia. EXPECT_THAT(rv, IsError(ERR_NOT_IMPLEMENTED)); #else -@@ -789,7 +789,7 @@ TEST_F(UDPSocketTest, ServerSetDoNotFragment) { +@@ -854,7 +854,7 @@ TEST_F(UDPSocketTest, ServerSetDoNotFragment) { EXPECT_THAT(rv, IsOk()); rv = server.SetDoNotFragment(); -#if BUILDFLAG(IS_IOS) || BUILDFLAG(IS_FUCHSIA) +#if BUILDFLAG(IS_IOS) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) // TODO(crbug.com/42050633): IP_MTU_DISCOVER is not implemented on Fuchsia. EXPECT_THAT(rv, IsError(ERR_NOT_IMPLEMENTED)); #else -@@ -855,7 +855,7 @@ TEST_F(UDPSocketTest, JoinMulticastGroup) { +@@ -920,7 +920,7 @@ TEST_F(UDPSocketTest, JoinMulticastGroup) { // TODO(crbug.com/40620614): failing on device on iOS 12.2. // TODO(crbug.com/40189274): flaky on Mac 11. -#if BUILDFLAG(IS_IOS) || BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_IOS) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) #define MAYBE_SharedMulticastAddress DISABLED_SharedMulticastAddress #else #define MAYBE_SharedMulticastAddress SharedMulticastAddress -@@ -906,7 +906,7 @@ TEST_F(UDPSocketTest, MAYBE_SharedMulticastAddress) { +@@ -971,7 +971,7 @@ TEST_F(UDPSocketTest, MAYBE_SharedMulticastAddress) { NetLogSource(), handles::kInvalidNetworkHandle); ASSERT_THAT(client_socket.Connect(send_address), IsOk()); -#if !BUILDFLAG(IS_CHROMEOS) +#if !BUILDFLAG(IS_CHROMEOS) && !BUILDFLAG(IS_BSD) // Send a message via the multicast group. That message is expected be be // received by both receving sockets. // diff --git a/www/chromium/files/patch-pdf_pdfium_pdfium__engine.cc b/www/chromium/files/patch-pdf_pdfium_pdfium__engine.cc index b6ebfa7237aa..b4b0e658fb13 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 2026-08-12 09:02:10 UTC +--- pdf/pdfium/pdfium_engine.cc.orig 2026-08-31 10:59:09 UTC +++ pdf/pdfium/pdfium_engine.cc -@@ -132,7 +132,7 @@ +@@ -133,7 +133,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 -@@ -786,7 +786,7 @@ void InitializeSDK(bool enable_v8, +@@ -806,7 +806,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_host_chromoting__host.cc b/www/chromium/files/patch-remoting_host_chromoting__host.cc index 693b79be5403..de4e6fdb34b4 100644 --- a/www/chromium/files/patch-remoting_host_chromoting__host.cc +++ b/www/chromium/files/patch-remoting_host_chromoting__host.cc @@ -1,29 +1,29 @@ ---- remoting/host/chromoting_host.cc.orig 2026-06-04 10:12:25 UTC +--- remoting/host/chromoting_host.cc.orig 2026-08-31 10:59:09 UTC +++ remoting/host/chromoting_host.cc -@@ -142,7 +142,7 @@ void ChromotingHost::Start(const std::string& host_own +@@ -137,7 +137,7 @@ void ChromotingHost::Start(const std::string& host_own } } -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) void ChromotingHost::StartChromotingHostServices() { DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); DCHECK(!ipc_server_); -@@ -161,7 +161,7 @@ void ChromotingHost::BindChromotingHostServicesForServ +@@ -156,7 +156,7 @@ void ChromotingHost::BindChromotingHostServicesForServ } #endif -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) void ChromotingHost::BindChromotingHostServices( mojo::PendingReceiver receiver) { DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); -@@ -300,7 +300,7 @@ std::optional ChromotingHost::OnSessionPoli +@@ -295,7 +295,7 @@ std::optional ChromotingHost::OnSessionPoli return per_session_policies_validator_.Run(policies); } -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) void ChromotingHost::BindSessionServices( mojo::PendingReceiver receiver) { DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); diff --git a/www/chromium/files/patch-remoting_host_chromoting__host.h b/www/chromium/files/patch-remoting_host_chromoting__host.h index 77d37f3cd397..ed6d087a06d7 100644 --- a/www/chromium/files/patch-remoting_host_chromoting__host.h +++ b/www/chromium/files/patch-remoting_host_chromoting__host.h @@ -1,65 +1,65 @@ ---- remoting/host/chromoting_host.h.orig 2026-06-04 10:12:25 UTC +--- remoting/host/chromoting_host.h.orig 2026-08-31 10:59:09 UTC +++ remoting/host/chromoting_host.h @@ -37,7 +37,7 @@ #include "remoting/protocol/session_manager.h" #include "remoting/protocol/transport_context.h" -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "remoting/host/chromoting_host_services_server.h" #endif -@@ -82,7 +82,7 @@ class ChromotingHost : +@@ -73,7 +73,7 @@ class ChromotingHost : // multi-process host, ChromotingHostServices is implemented by the daemon // process and the ChromotingSessionServices receiver is passed through // DesktopSessionConnectionEvents. -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) public mojom::ChromotingHostServices, #endif -@@ -130,7 +130,7 @@ class ChromotingHost : +@@ -118,7 +118,7 @@ class ChromotingHost : // This method can only be called once during the lifetime of this object. void Start(const std::string& host_owner); -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Starts running the ChromotingHostServices server and listening for incoming // IPC binding requests. // Currently only the single-process Linux host runs the -@@ -142,7 +142,7 @@ class ChromotingHost : +@@ -130,7 +130,7 @@ class ChromotingHost : std::unique_ptr connection_info); #endif -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) void BindChromotingHostServices( mojo::PendingReceiver receiver); #endif -@@ -177,7 +177,7 @@ class ChromotingHost : +@@ -165,7 +165,7 @@ class ChromotingHost : std::optional OnSessionPoliciesReceived( const SessionPolicies& policies) override; -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // mojom::ChromotingHostServices implementation. void BindSessionServices( mojo::PendingReceiver receiver) -@@ -252,7 +252,7 @@ class ChromotingHost : +@@ -223,7 +223,7 @@ class ChromotingHost : // List of host extensions. std::vector> extensions_; -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // IPC server that runs the CRD host service API. Non-null if the server name // is set and the host is started. // Currently only Linux runs the ChromotingHostServices server on the host -@@ -260,7 +260,7 @@ class ChromotingHost : +@@ -231,7 +231,7 @@ class ChromotingHost : std::unique_ptr ipc_server_; #endif -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) mojo::ReceiverSet receivers_; #endif diff --git a/www/chromium/files/patch-remoting_host_chromoting__host__services__server.cc b/www/chromium/files/patch-remoting_host_chromoting__host__services__server.cc index 3bc132cbb343..89bdda0c7d9a 100644 --- a/www/chromium/files/patch-remoting_host_chromoting__host__services__server.cc +++ b/www/chromium/files/patch-remoting_host_chromoting__host__services__server.cc @@ -1,29 +1,29 @@ ---- remoting/host/chromoting_host_services_server.cc.orig 2026-07-01 06:24:19 UTC +--- remoting/host/chromoting_host_services_server.cc.orig 2026-08-31 10:59:09 UTC +++ remoting/host/chromoting_host_services_server.cc -@@ -16,7 +16,7 @@ +@@ -17,7 +17,7 @@ #include "remoting/host/mojo_caller_security_checker.h" #include "remoting/host/mojom/chromoting_host_services.mojom.h" -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include #endif -@@ -47,7 +47,7 @@ named_mojo_ipc_server::EndpointOptions CreateEndpointO +@@ -50,7 +50,7 @@ ChromotingHostServicesServer::CreateEndpointOptions( + options.security_descriptor = + base::StrCat({L"O:", user_sid, L"G:", user_sid, L"D:(A;;GA;;;AU)"}); options.include_peer_process_info = true; - options.extra_send_invitation_flags = - MOJO_SEND_INVITATION_FLAG_UNTRUSTED_PROCESS; -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Allow the endpoint to be connected by any users iff the server is run as // root. options.require_same_peer_user = (getuid() != 0); -@@ -60,7 +60,7 @@ named_mojo_ipc_server::EndpointOptions CreateEndpointO +@@ -61,7 +61,7 @@ ChromotingHostServicesServer::CreateEndpointOptions( ChromotingHostServicesServer::ChromotingHostServicesServer( BindChromotingHostServicesCallback bind_chromoting_host_services) : ChromotingHostServicesServer( -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // For the multi-process host, the server is run as root; for the // legacy single-process host, the server is run as the login user. (getuid() == 0) ? GetChromotingHostServicesServerName() diff --git a/www/chromium/files/patch-remoting_host_desktop__session__connector.h b/www/chromium/files/patch-remoting_host_desktop__session__connector.h index c5fb831ae33d..fc71caef73eb 100644 --- a/www/chromium/files/patch-remoting_host_desktop__session__connector.h +++ b/www/chromium/files/patch-remoting_host_desktop__session__connector.h @@ -1,11 +1,11 @@ ---- remoting/host/desktop_session_connector.h.orig 2026-06-04 10:12:25 UTC +--- remoting/host/desktop_session_connector.h.orig 2026-08-31 10:59:09 UTC +++ remoting/host/desktop_session_connector.h -@@ -57,7 +57,7 @@ class DesktopSessionConnector : public mojom::DesktopS +@@ -59,7 +59,7 @@ class DesktopSessionConnector : public mojom::DesktopS // connections. virtual void SetRequiredUsername(std::string_view username) = 0; -#if !BUILDFLAG(IS_WIN) && !BUILDFLAG(IS_LINUX) +#if !BUILDFLAG(IS_WIN) && !BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_BSD) // Notifies the network process that |terminal_id| is now attached to // a desktop integration process. |desktop_pipe| is the client end of the pipe // opened by the desktop process. diff --git a/www/chromium/files/patch-remoting_host_ipc__desktop__environment.cc b/www/chromium/files/patch-remoting_host_ipc__desktop__environment.cc index 4d18cba9172d..258db2f2eaaa 100644 --- a/www/chromium/files/patch-remoting_host_ipc__desktop__environment.cc +++ b/www/chromium/files/patch-remoting_host_ipc__desktop__environment.cc @@ -1,11 +1,11 @@ ---- remoting/host/ipc_desktop_environment.cc.orig 2026-07-01 06:24:19 UTC +--- remoting/host/ipc_desktop_environment.cc.orig 2026-08-31 10:59:09 UTC +++ remoting/host/ipc_desktop_environment.cc -@@ -371,7 +371,7 @@ void IpcDesktopEnvironmentFactory::OnTerminalDisconnec +@@ -378,7 +378,7 @@ void IpcDesktopEnvironmentFactory::OnTerminalDisconnec } } -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) void IpcDesktopEnvironmentFactory::OnSessionServicesClientConnected( int terminal_id, mojo::PendingReceiver receiver) { diff --git a/www/chromium/files/patch-remoting_host_ipc__desktop__environment.h b/www/chromium/files/patch-remoting_host_ipc__desktop__environment.h index 921fe70ed4a4..127cfdceaa9d 100644 --- a/www/chromium/files/patch-remoting_host_ipc__desktop__environment.h +++ b/www/chromium/files/patch-remoting_host_ipc__desktop__environment.h @@ -1,20 +1,20 @@ ---- remoting/host/ipc_desktop_environment.h.orig 2026-07-01 06:24:19 UTC +--- remoting/host/ipc_desktop_environment.h.orig 2026-08-31 10:59:09 UTC +++ remoting/host/ipc_desktop_environment.h -@@ -130,7 +130,7 @@ class IpcDesktopEnvironmentFactory : public DesktopEnv - int terminal_id, - mojo::ScopedMessagePipeHandle desktop_pipe) override; - void OnTerminalDisconnected(int terminal_id) override; +@@ -135,7 +135,7 @@ class IpcDesktopEnvironmentFactory : public DesktopEnv + ErrorCode error_code, + const std::string& error_details, + const SourceLocation& error_location) override; -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) void OnSessionServicesClientConnected( int terminal_id, mojo::PendingReceiver receiver) -@@ -172,7 +172,7 @@ class IpcDesktopEnvironmentFactory : public DesktopEnv +@@ -177,7 +177,7 @@ class IpcDesktopEnvironmentFactory : public DesktopEnv // the same email address reconnects, the desktop session will be reused and // the desktop process will be requested to send a new desktop pipe. // TODO: yuweih - see if it makes sense to enable it on Windows. -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) bool persist_desktop_sessions_ = true; #else bool persist_desktop_sessions_ = false; diff --git a/www/chromium/files/patch-remoting_host_it2me_it2me__host.cc b/www/chromium/files/patch-remoting_host_it2me_it2me__host.cc index 7eb9891c4758..ac898a88e998 100644 --- a/www/chromium/files/patch-remoting_host_it2me_it2me__host.cc +++ b/www/chromium/files/patch-remoting_host_it2me_it2me__host.cc @@ -1,20 +1,20 @@ ---- remoting/host/it2me/it2me_host.cc.orig 2026-06-04 10:12:25 UTC +--- remoting/host/it2me/it2me_host.cc.orig 2026-08-31 10:59:09 UTC +++ remoting/host/it2me/it2me_host.cc -@@ -72,7 +72,7 @@ +@@ -73,7 +73,7 @@ #include "remoting/host/chromeos/features.h" #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "remoting/host/linux/gnome_remote_desktop_session.h" #include "remoting/host/linux/portal_remote_desktop_session.h" #endif -@@ -283,7 +283,7 @@ void It2MeHost::ConnectOnNetworkThread( +@@ -281,7 +281,7 @@ void It2MeHost::ConnectOnNetworkThread( SetState(It2MeHostState::kStarting, ErrorCode::OK); -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (!GnomeRemoteDesktopSession::IsRunningUnderGnome()) { PortalRemoteDesktopSession::GetInstance()->SetCreateVirtualMonitor(false); } diff --git a/www/chromium/files/patch-remoting_host_client__session.cc b/www/chromium/files/patch-remoting_host_peer__session__impl.cc similarity index 61% rename from www/chromium/files/patch-remoting_host_client__session.cc rename to www/chromium/files/patch-remoting_host_peer__session__impl.cc index 0c667b282aaa..0349a8742412 100644 --- a/www/chromium/files/patch-remoting_host_client__session.cc +++ b/www/chromium/files/patch-remoting_host_peer__session__impl.cc @@ -1,11 +1,11 @@ ---- remoting/host/client_session.cc.orig 2026-08-12 09:02:10 UTC -+++ remoting/host/client_session.cc -@@ -225,7 +225,7 @@ void ClientSession::NotifyClientResolution( +--- remoting/host/peer_session_impl.cc.orig 2026-08-31 10:59:09 UTC ++++ remoting/host/peer_session_impl.cc +@@ -307,7 +307,7 @@ void PeerSessionImpl::NotifyClientResolution( if (effective_policies_.curtain_required.value_or(false)) { dpi_vector.set(resolution.x_dpi(), resolution.y_dpi()); } -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) dpi_vector.set(resolution.x_dpi(), resolution.y_dpi()); #endif 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 5e98d97ec0bf..4197877e08da 100644 --- a/www/chromium/files/patch-remoting_host_remoting__me2me__host.cc +++ b/www/chromium/files/patch-remoting_host_remoting__me2me__host.cc @@ -1,164 +1,164 @@ ---- remoting/host/remoting_me2me_host.cc.orig 2026-08-12 09:02:10 UTC +--- remoting/host/remoting_me2me_host.cc.orig 2026-08-31 10:59:09 UTC +++ remoting/host/remoting_me2me_host.cc @@ -153,7 +153,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 @@ -165,7 +165,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/certificate_watcher.h" #include "remoting/host/linux/pulse_audio_capturer.h" @@ -180,7 +180,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) @@ -206,7 +206,7 @@ const char kApplicationName[] = "chromoting"; // from stdin. constexpr base::FilePath::CharType kStdinConfigPath[] = FILE_PATH_LITERAL("-"); -#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"; @@ -468,7 +468,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) @@ -534,7 +534,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_; -@@ -867,7 +867,7 @@ void HostProcess::StartOnNetworkThread() { +@@ -868,7 +868,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) } -@@ -951,7 +951,7 @@ void HostProcess::CreateAuthenticatorFactory() { +@@ -952,7 +952,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, -@@ -1098,7 +1098,7 @@ void HostProcess::StartOnUiThread() { +@@ -1101,7 +1101,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 // PulseAudioCapturer to capture from it. base::FilePath audio_pipe_name = -@@ -1184,7 +1184,7 @@ void HostProcess::ShutdownOnUiThread() { +@@ -1187,7 +1187,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. -@@ -1192,7 +1192,7 @@ void HostProcess::ShutdownOnUiThread() { +@@ -1195,7 +1195,7 @@ void HostProcess::ShutdownOnUiThread() { PulseAudioCapturer::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(); })); -@@ -1834,7 +1834,7 @@ void HostProcess::InitializeSignaling() { +@@ -1837,7 +1837,7 @@ void HostProcess::InitializeSignaling() { zombie_host_detector_ = std::make_unique(base::BindOnce( &HostProcess::OnZombieStateDetected, base::Unretained(this))); -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // TODO: joedow - Remove Linux scope after this codepath has been stabilized. const base::CommandLine* cmd_line = base::CommandLine::ForCurrentProcess(); if (cmd_line->HasSwitch(kEnableCorpMessaging)) { -@@ -1929,7 +1929,7 @@ void HostProcess::StartHost() { +@@ -1932,7 +1932,7 @@ void HostProcess::StartHost() { SetState(HOST_STARTED); -#if BUILDFLAG(IS_LINUX) && defined(REMOTING_USE_X11) +#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && defined(REMOTING_USE_X11) if (webrtc::DesktopCapturer::IsRunningUnderWayland()) { if (GnomeRemoteDesktopSession::IsRunningUnderGnome()) { GnomeRemoteDesktopSession::GetInstance()->Init( -@@ -2027,7 +2027,7 @@ void HostProcess::StartHost() { +@@ -2048,7 +2048,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_ = -@@ -2065,7 +2065,7 @@ void HostProcess::StartHost() { +@@ -2086,7 +2086,7 @@ void HostProcess::StartHost() { // addresses. host_->Start(*host_owner_emails_.begin()); -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // For Multi-process hosts and Mac, ChromotingHostServices connections are // handled by another process, then the message pipe is forwarded to the // network process. -@@ -2219,7 +2219,7 @@ int HostProcessMain(bool multi_process) { +@@ -2241,7 +2241,7 @@ int HostProcessMain(bool multi_process) { : " (single-process)"); 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) // For the multi-process host, screen capturing and UI rendering should be // done by the desktop process. if (!multi_process) { -@@ -2271,7 +2271,7 @@ int HostProcessMain(bool multi_process) { +@@ -2293,7 +2293,7 @@ int HostProcessMain(bool multi_process) { 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. -@@ -2291,7 +2291,7 @@ int HostProcessMain(bool multi_process) { +@@ -2313,7 +2313,7 @@ int HostProcessMain(bool multi_process) { 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-remoting_host_webauthn_remote__webauthn__caller__security__utils.cc b/www/chromium/files/patch-remoting_host_webauthn_remote__webauthn__caller__security__utils.cc index 80d07ab42abc..5f6d4b6fad24 100644 --- a/www/chromium/files/patch-remoting_host_webauthn_remote__webauthn__caller__security__utils.cc +++ b/www/chromium/files/patch-remoting_host_webauthn_remote__webauthn__caller__security__utils.cc @@ -1,34 +1,34 @@ ---- remoting/host/webauthn/remote_webauthn_caller_security_utils.cc.orig 2026-07-01 06:24:19 UTC +--- remoting/host/webauthn/remote_webauthn_caller_security_utils.cc.orig 2026-08-31 10:59:09 UTC +++ remoting/host/webauthn/remote_webauthn_caller_security_utils.cc @@ -13,11 +13,11 @@ #include "base/process/process_handle.h" #include "build/build_config.h" -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "base/containers/fixed_flat_set.h" #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) #include "base/files/file_path.h" #include "remoting/host/base/process_util.h" #endif @@ -46,7 +46,7 @@ namespace { // No static variables needed for debug builds. -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) constexpr auto kAllowedCallerPrograms = base::MakeFixedFlatSet({ -@@ -105,7 +105,7 @@ bool IsLaunchedByTrustedProcess() { +@@ -72,7 +72,7 @@ bool IsLaunchedByTrustedProcess() { #if !defined(NDEBUG) // Just return true on debug builds for the convenience of development. return true; -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) base::ProcessId parent_pid = base::GetParentProcessId(base::GetCurrentProcessHandle()); // Note that on Linux the process image may no longer exist in its original diff --git a/www/chromium/files/patch-remoting_protocol_webrtc__transport.cc b/www/chromium/files/patch-remoting_protocol_webrtc__transport.cc index 96bdfbcf5d81..980a9292e201 100644 --- a/www/chromium/files/patch-remoting_protocol_webrtc__transport.cc +++ b/www/chromium/files/patch-remoting_protocol_webrtc__transport.cc @@ -1,11 +1,11 @@ ---- remoting/protocol/webrtc_transport.cc.orig 2026-06-04 10:12:25 UTC +--- remoting/protocol/webrtc_transport.cc.orig 2026-08-31 10:59:09 UTC +++ remoting/protocol/webrtc_transport.cc -@@ -1202,7 +1202,7 @@ void WebrtcTransport::SendOffer() { +@@ -1194,7 +1194,7 @@ void WebrtcTransport::SendOffer() { // `recvonly` if microphone remoting is not enabled. Only Linux hosts support // audio injection (microphone remoting). // TODO: crbug.com/513327818 - Hook this up with AudioInjector::IsSupported(). - options.offer_to_receive_audio = BUILDFLAG(IS_LINUX); + options.offer_to_receive_audio = BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD); options.ice_restart = want_ice_restart_; peer_connection()->CreateOffer( CreateSessionDescriptionObserver::Create( diff --git a/www/chromium/files/patch-remoting_protocol_webrtc__video__stream.cc b/www/chromium/files/patch-remoting_protocol_webrtc__video__stream.cc index ba2d9f534bc6..cdd19b55dc3d 100644 --- a/www/chromium/files/patch-remoting_protocol_webrtc__video__stream.cc +++ b/www/chromium/files/patch-remoting_protocol_webrtc__video__stream.cc @@ -1,11 +1,11 @@ ---- remoting/protocol/webrtc_video_stream.cc.orig 2026-06-04 10:12:25 UTC +--- remoting/protocol/webrtc_video_stream.cc.orig 2026-08-31 10:59:09 UTC +++ remoting/protocol/webrtc_video_stream.cc -@@ -255,7 +255,7 @@ WebrtcVideoStream::WebrtcVideoStream(const SessionOpti +@@ -237,7 +237,7 @@ WebrtcVideoStream::WebrtcVideoStream(const SessionOpti : session_options_(session_options) { // TODO: yuweih - Check if the other platforms can also be updated to run on a // dedicated thread. -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) core_task_runner_ = base::ThreadPool::CreateSingleThreadTaskRunner( {base::TaskPriority::HIGHEST}, base::SingleThreadTaskRunnerThreadMode::DEDICATED); diff --git a/www/chromium/files/patch-sandbox_policy_features.cc b/www/chromium/files/patch-sandbox_policy_features.cc index 2ecdf4a6232a..42e2e58e2d80 100644 --- a/www/chromium/files/patch-sandbox_policy_features.cc +++ b/www/chromium/files/patch-sandbox_policy_features.cc @@ -1,23 +1,23 @@ ---- sandbox/policy/features.cc.orig 2026-08-12 09:02:10 UTC +--- sandbox/policy/features.cc.orig 2026-08-31 10:59:09 UTC +++ sandbox/policy/features.cc @@ -17,7 +17,11 @@ namespace sandbox::policy::features { #if !BUILDFLAG(IS_MAC) && !BUILDFLAG(IS_FUCHSIA) // Enables network service sandbox. // (Only causes an effect when feature kNetworkServiceInProcess is disabled.) +#if BUILDFLAG(IS_BSD) +BASE_FEATURE(kNetworkServiceSandbox, base::FEATURE_ENABLED_BY_DEFAULT); +#else BASE_FEATURE(kNetworkServiceSandbox, base::FEATURE_DISABLED_BY_DEFAULT); +#endif #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) // Enables a fine-grained seccomp-BPF syscall filter for the network service. -@@ -115,7 +119,7 @@ BASE_FEATURE(kWinSboxModuleTamperingProtection, +@@ -114,7 +118,7 @@ BASE_FEATURE(kWinSboxModuleTamperingProtection, BASE_FEATURE(kSpectreVariant2Mitigation, base::FEATURE_ENABLED_BY_DEFAULT); #endif // BUILDFLAG(IS_CHROMEOS) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Increase the renderer sandbox memory limit. As of 2023, there are no limits // on macOS, and a 1TiB limit on Windows. There are reports of users bumping // into the limit. This increases the limit by 2x compared to the default diff --git a/www/chromium/files/patch-sandbox_policy_switches.cc b/www/chromium/files/patch-sandbox_policy_switches.cc index 6845b69551c1..3a14120e736e 100644 --- a/www/chromium/files/patch-sandbox_policy_switches.cc +++ b/www/chromium/files/patch-sandbox_policy_switches.cc @@ -1,13 +1,13 @@ ---- sandbox/policy/switches.cc.orig 2025-09-06 10:01:20 UTC +--- sandbox/policy/switches.cc.orig 2026-08-31 10:59:09 UTC +++ sandbox/policy/switches.cc -@@ -40,7 +40,9 @@ const char kGpuSandboxFailuresFatal[] = "gpu-sandbox-f +@@ -43,7 +43,9 @@ const char kGpuSandboxFailuresFatal[] = "gpu-sandbox-f // Meant to be used as a browser-level switch for testing purposes only. const char kNoSandbox[] = "no-sandbox"; -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +const char kDisableUnveil[] = "disable-unveil"; + +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Instructs the zygote to launch without a sandbox. Processes forked from this // type of zygote will apply their own custom sandboxes later. const char kNoZygoteSandbox[] = "no-zygote-sandbox"; diff --git a/www/chromium/files/patch-sandbox_policy_switches.h b/www/chromium/files/patch-sandbox_policy_switches.h index f10ddbb6c2a0..ae2a0317a430 100644 --- a/www/chromium/files/patch-sandbox_policy_switches.h +++ b/www/chromium/files/patch-sandbox_policy_switches.h @@ -1,12 +1,12 @@ ---- sandbox/policy/switches.h.orig 2025-09-06 10:01:20 UTC +--- sandbox/policy/switches.h.orig 2026-08-31 10:59:09 UTC +++ sandbox/policy/switches.h -@@ -24,7 +24,8 @@ SANDBOX_POLICY_EXPORT extern const char kDisableSetuid +@@ -25,7 +25,8 @@ SANDBOX_POLICY_EXPORT extern const char kDisableWebNNC SANDBOX_POLICY_EXPORT extern const char kGpuSandboxAllowSysVShm[]; SANDBOX_POLICY_EXPORT extern const char kGpuSandboxFailuresFatal[]; SANDBOX_POLICY_EXPORT extern const char kNoSandbox[]; -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +SANDBOX_POLICY_EXPORT extern const char kDisableUnveil[]; +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) SANDBOX_POLICY_EXPORT extern const char kNoZygoteSandbox[]; #endif #if BUILDFLAG(IS_WIN) diff --git a/www/chromium/files/patch-services_device_device__service.cc b/www/chromium/files/patch-services_device_device__service.cc index 151213a5b6ab..f30d2a40611a 100644 --- a/www/chromium/files/patch-services_device_device__service.cc +++ b/www/chromium/files/patch-services_device_device__service.cc @@ -1,20 +1,20 @@ ---- services/device/device_service.cc.orig 2026-08-12 09:02:10 UTC +--- services/device/device_service.cc.orig 2026-08-31 10:59:09 UTC +++ services/device/device_service.cc @@ -6,6 +6,8 @@ #include +#include "base/notimplemented.h" + #include "base/functional/bind.h" #include "base/memory/weak_ptr.h" #include "base/task/single_thread_task_runner.h" -@@ -310,7 +312,7 @@ void DeviceService::BindSerialPortManager( +@@ -308,7 +310,7 @@ void DeviceService::BindSerialPortManager( serial_port_manager_.AsyncCall(&SerialPortManagerImpl::Bind, FROM_HERE) .WithArgs(std::move(receiver)); #else // defined(IS_SERIAL_ENABLED_PLATFORM) - NOTREACHED() << "Serial devices not supported on this platform."; + NOTIMPLEMENTED() << "Serial devices not supported on this platform."; #endif // defined(IS_SERIAL_ENABLED_PLATFORM) } diff --git a/www/chromium/files/patch-services_device_hid_BUILD.gn b/www/chromium/files/patch-services_device_hid_BUILD.gn index ad90f6a3025f..6a54dea28891 100644 --- a/www/chromium/files/patch-services_device_hid_BUILD.gn +++ b/www/chromium/files/patch-services_device_hid_BUILD.gn @@ -1,30 +1,30 @@ ---- services/device/hid/BUILD.gn.orig 2026-04-16 08:18:50 UTC +--- services/device/hid/BUILD.gn.orig 2026-08-31 10:59:09 UTC +++ services/device/hid/BUILD.gn -@@ -36,7 +36,26 @@ source_set("hid") { +@@ -32,7 +32,26 @@ source_set("hid") { "//third_party/protobuf:protobuf_lite", ] - if ((is_linux || is_chromeos) && use_udev) { + if (is_openbsd) { + sources += [ + "hid_connection_fido.cc", + "hid_connection_fido.h", + "hid_service_fido.cc", + "hid_service_fido.h", + ] + libs = ["fido2", "cbor", "usbhid", "crypto", "util"] + } + + if (is_freebsd) { + sources += [ + "hid_connection_freebsd.cc", + "hid_connection_freebsd.h", + "hid_service_freebsd.cc", + "hid_service_freebsd.h", + ] + } + + if ((is_linux || is_chromeos) && !is_bsd && use_udev) { sources += [ "hid_connection_linux.cc", "hid_connection_linux.h", diff --git a/www/chromium/files/patch-services_device_hid_hid__service.cc b/www/chromium/files/patch-services_device_hid_hid__service.cc index 523a93a99e57..505cb57adb4f 100644 --- a/www/chromium/files/patch-services_device_hid_hid__service.cc +++ b/www/chromium/files/patch-services_device_hid_hid__service.cc @@ -1,24 +1,24 @@ ---- services/device/hid/hid_service.cc.orig 2026-02-11 09:05:39 UTC +--- services/device/hid/hid_service.cc.orig 2026-08-31 10:59:09 UTC +++ services/device/hid/hid_service.cc -@@ -19,6 +19,10 @@ +@@ -20,6 +20,10 @@ #if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)) && defined(USE_UDEV) #include "services/device/hid/hid_service_linux.h" +#elif BUILDFLAG(IS_OPENBSD) +#include "services/device/hid/hid_service_fido.h" +#elif BUILDFLAG(IS_FREEBSD) +#include "services/device/hid/hid_service_freebsd.h" #elif BUILDFLAG(IS_MAC) #include "services/device/hid/hid_service_mac.h" #elif BUILDFLAG(IS_WIN) -@@ -67,6 +71,10 @@ constexpr base::TaskTraits HidService::kBlockingTaskTr +@@ -68,6 +72,10 @@ constexpr base::TaskTraits HidService::kBlockingTaskTr std::unique_ptr HidService::Create() { #if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)) && defined(USE_UDEV) return std::make_unique(); +#elif BUILDFLAG(IS_OPENBSD) + return std::make_unique(); +#elif BUILDFLAG(IS_FREEBSD) + return std::make_unique(); #elif BUILDFLAG(IS_MAC) return std::make_unique(); #elif BUILDFLAG(IS_WIN) diff --git a/www/chromium/files/patch-services_device_public_cpp_device__features.cc b/www/chromium/files/patch-services_device_public_cpp_device__features.cc index 381fb54401af..bd211830561d 100644 --- a/www/chromium/files/patch-services_device_public_cpp_device__features.cc +++ b/www/chromium/files/patch-services_device_public_cpp_device__features.cc @@ -1,16 +1,16 @@ ---- services/device/public/cpp/device_features.cc.orig 2026-07-01 06:24:19 UTC +--- services/device/public/cpp/device_features.cc.orig 2026-08-31 10:59:09 UTC +++ services/device/public/cpp/device_features.cc -@@ -174,11 +174,11 @@ bool IsOsLevelGeolocationPermissionSupportEnabled() { +@@ -177,11 +177,11 @@ bool IsOsLevelGeolocationPermissionSupportEnabled() { // a USB interface is busy. #if BUILDFLAG(IS_ANDROID) BASE_FEATURE(kAutomaticUsbDetach, base::FEATURE_ENABLED_BY_DEFAULT); -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) BASE_FEATURE(kAutomaticUsbDetach, base::FEATURE_DISABLED_BY_DEFAULT); #endif // BUILDFLAG(IS_ANDROID) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Controls whether we report the product name (like macOS and Win) // over the HID_NAME in the WebHID API. BASE_FEATURE(kProductNameOverHidName, base::FEATURE_ENABLED_BY_DEFAULT); diff --git a/www/chromium/files/patch-services_device_public_cpp_device__features.h b/www/chromium/files/patch-services_device_public_cpp_device__features.h index 8f09c37d2e7a..eb6d1a688e1f 100644 --- a/www/chromium/files/patch-services_device_public_cpp_device__features.h +++ b/www/chromium/files/patch-services_device_public_cpp_device__features.h @@ -1,16 +1,16 @@ ---- services/device/public/cpp/device_features.h.orig 2026-07-01 06:24:19 UTC +--- services/device/public/cpp/device_features.h.orig 2026-08-31 10:59:09 UTC +++ services/device/public/cpp/device_features.h -@@ -64,11 +64,11 @@ extern const DEVICE_FEATURES_EXPORT +@@ -65,11 +65,11 @@ extern const DEVICE_FEATURES_EXPORT DEVICE_FEATURES_EXPORT bool IsOsLevelGeolocationPermissionSupportEnabled(); -#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) DEVICE_FEATURES_EXPORT BASE_DECLARE_FEATURE(kAutomaticUsbDetach); #endif // BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) DEVICE_FEATURES_EXPORT BASE_DECLARE_FEATURE(kProductNameOverHidName); #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) 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 c125359c19bc..e3c189ede412 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,47 +1,47 @@ ---- services/device/usb/usb_device_handle_usbfs.cc.orig 2026-07-01 06:24:19 UTC +--- services/device/usb/usb_device_handle_usbfs.cc.orig 2026-08-31 10:59:09 UTC +++ services/device/usb/usb_device_handle_usbfs.cc -@@ -33,7 +33,7 @@ +@@ -34,7 +34,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" -@@ -50,7 +50,7 @@ using mojom::UsbTransferType; +@@ -51,7 +51,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. -@@ -292,7 +292,7 @@ bool UsbDeviceHandleUsbfs::BlockingTaskRunnerHelper::R +@@ -302,7 +302,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) { -@@ -629,7 +629,7 @@ void UsbDeviceHandleUsbfs::ClaimInterface(int interfac +@@ -645,7 +645,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(); -@@ -982,7 +982,7 @@ void UsbDeviceHandleUsbfs::ReleaseInterfaceComplete(in +@@ -998,7 +998,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_network_BUILD.gn b/www/chromium/files/patch-services_network_BUILD.gn index 5b0e229fd851..ea7eca9b231c 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 2026-08-12 09:02:10 UTC +--- services/network/BUILD.gn.orig 2026-08-31 10:59:09 UTC +++ services/network/BUILD.gn -@@ -457,7 +457,6 @@ if (is_linux || is_chromeos) { +@@ -459,7 +459,6 @@ if (is_linux || is_chromeos) { deps = [ "//base", "//components/vrp_flags:buildflags", - "//sandbox/linux:sandbox_services", "//sandbox/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 bf8b20f58dbe..ea8e136d3a43 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 2026-08-12 09:02:10 UTC +--- services/network/network_context.cc.orig 2026-08-31 10:59:09 UTC +++ services/network/network_context.cc -@@ -670,7 +670,7 @@ NetworkContext::NetworkContextHttpAuthPreferences:: +@@ -678,7 +678,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_) { -@@ -2800,7 +2800,7 @@ void NetworkContext::OnHttpAuthDynamicParamsChanged( +@@ -2830,7 +2830,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 3050fc805e47..c2fdb1d94e73 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 2026-08-12 09:02:10 UTC +--- services/network/network_context.h.orig 2026-08-31 10:59:09 UTC +++ services/network/network_context.h -@@ -782,7 +782,7 @@ class COMPONENT_EXPORT(NETWORK_SERVICE) NetworkContext +@@ -806,7 +806,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 63f2da543a5a..c1a07b080e72 100644 --- a/www/chromium/files/patch-services_network_network__service.cc +++ b/www/chromium/files/patch-services_network_network__service.cc @@ -1,29 +1,29 @@ ---- services/network/network_service.cc.orig 2026-08-12 09:02:10 UTC +--- services/network/network_service.cc.orig 2026-08-31 10:59:09 UTC +++ services/network/network_service.cc -@@ -105,7 +105,7 @@ +@@ -107,7 +107,7 @@ #include "third_party/boringssl/src/include/openssl/cpu.h" #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "services/network/network_change_notifier_passive_factory.h" #endif -@@ -1073,7 +1073,7 @@ void NetworkService::SetExplicitlyAllowedPorts( +@@ -1080,7 +1080,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) { -@@ -1213,7 +1213,7 @@ NetworkService::CreateHttpAuthHandlerFactory(NetworkCo +@@ -1223,7 +1223,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 d450816fdc64..5ba11ece7626 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 2026-08-12 09:02:10 UTC +--- services/network/network_service.h.orig 2026-08-31 10:59:09 UTC +++ services/network/network_service.h -@@ -241,7 +241,7 @@ class COMPONENT_EXPORT(NETWORK_SERVICE) NetworkService +@@ -243,7 +243,7 @@ class COMPONENT_EXPORT(NETWORK_SERVICE) NetworkService void SetFirstPartySets(net::GlobalFirstPartySets sets) 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; -@@ -308,7 +308,7 @@ class COMPONENT_EXPORT(NETWORK_SERVICE) NetworkService +@@ -313,7 +313,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) -@@ -595,7 +595,7 @@ class COMPONENT_EXPORT(NETWORK_SERVICE) NetworkService +@@ -600,7 +600,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 df5efa0333be..8d126bf85cda 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 2026-08-12 09:02:10 UTC +--- services/network/public/cpp/BUILD.gn.orig 2026-08-31 10:59:09 UTC +++ services/network/public/cpp/BUILD.gn -@@ -756,7 +756,7 @@ component("cpp_base") { +@@ -736,7 +736,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_network_public_cpp_features.cc b/www/chromium/files/patch-services_network_public_cpp_features.cc index bc7d5fcd2237..a9952b566319 100644 --- a/www/chromium/files/patch-services_network_public_cpp_features.cc +++ b/www/chromium/files/patch-services_network_public_cpp_features.cc @@ -1,11 +1,11 @@ ---- services/network/public/cpp/features.cc.orig 2026-05-07 17:02:56 UTC +--- services/network/public/cpp/features.cc.orig 2026-08-31 10:59:09 UTC +++ services/network/public/cpp/features.cc -@@ -95,7 +95,7 @@ BASE_FEATURE(kSplitAuthCacheByNetworkIsolationKey, +@@ -96,7 +96,7 @@ BASE_FEATURE(kSplitAuthCacheByNetworkIsolationKey, // Enable usage of hardcoded DoH upgrade mapping for use in automatic mode. BASE_FEATURE(kDnsOverHttpsUpgrade, #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) + BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) base::FEATURE_ENABLED_BY_DEFAULT #else base::FEATURE_DISABLED_BY_DEFAULT diff --git a/www/chromium/files/patch-services_network_public_mojom_BUILD.gn b/www/chromium/files/patch-services_network_public_mojom_BUILD.gn index 4b48e8f06e43..15501a820479 100644 --- a/www/chromium/files/patch-services_network_public_mojom_BUILD.gn +++ b/www/chromium/files/patch-services_network_public_mojom_BUILD.gn @@ -1,34 +1,34 @@ ---- services/network/public/mojom/BUILD.gn.orig 2026-08-12 09:02:10 UTC +--- services/network/public/mojom/BUILD.gn.orig 2026-08-31 10:59:09 UTC +++ services/network/public/mojom/BUILD.gn -@@ -739,11 +739,11 @@ mojom("url_loader_base") { +@@ -679,11 +679,11 @@ mojom("url_loader_base") { ] enabled_features = [] - if (is_android || is_chromeos || is_linux) { + if (!is_bsd && (is_android || is_chromeos || is_linux)) { enabled_features += [ "network_change_notifier_in_browser" ] } - if (is_linux) { + if (is_linux && !is_bsd) { # TODO(crbug.com/40263697): Remove this once is_linux in the mojom IDL does # not include lacros. enabled_features += [ "use_network_interface_change_listener" ] -@@ -1137,7 +1137,7 @@ mojom("url_loader_base") { +@@ -1077,7 +1077,7 @@ mojom("url_loader_base") { }, ] - if (is_linux) { + if (is_linux && !is_bsd) { cpp_typemaps += [ { types = [ -@@ -2096,7 +2096,7 @@ mojom("mojom") { +@@ -2037,7 +2037,7 @@ mojom("mojom") { } } - if (is_linux) { + if (is_linux && !is_bsd) { # TODO(crbug.com/40263697): Remove this once is_linux in the mojom IDL does # not include lacros. enabled_features += [ "use_network_interface_change_listener" ] diff --git a/www/chromium/files/patch-services_screen__ai_public_cpp_utilities.cc b/www/chromium/files/patch-services_screen__ai_public_cpp_utilities.cc index 58e4acfd7b3a..6780139dac0b 100644 --- a/www/chromium/files/patch-services_screen__ai_public_cpp_utilities.cc +++ b/www/chromium/files/patch-services_screen__ai_public_cpp_utilities.cc @@ -1,29 +1,29 @@ ---- services/screen_ai/public/cpp/utilities.cc.orig 2025-07-02 06:08:04 UTC +--- services/screen_ai/public/cpp/utilities.cc.orig 2026-08-31 10:59:09 UTC +++ services/screen_ai/public/cpp/utilities.cc -@@ -21,7 +21,7 @@ namespace { +@@ -26,7 +26,7 @@ namespace { // The maximum image dimension which is processed without downsampling by OCR. constexpr uint32_t kMaxImageDimensionForOcr = 2048; -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) constexpr char kBinaryPathSwitch[] = "screen-ai-binary"; #endif -@@ -42,7 +42,7 @@ constexpr char kScreenAIDlcRootPath[] = +@@ -47,7 +47,7 @@ constexpr char kScreenAIDlcRootPath[] = #endif #if BUILDFLAG(ENABLE_SCREEN_AI_BROWSERTESTS) -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) constexpr base::FilePath::CharType kScreenAIResourcePathForTests[] = FILE_PATH_LITERAL("third_party/screen-ai/linux/resources"); #elif BUILDFLAG(IS_MAC) -@@ -131,7 +131,7 @@ base::FilePath GetComponentBinaryPathForTests() { +@@ -170,7 +170,7 @@ base::FilePath GetComponentBinaryPathForTests() { const char* GetBinaryPathSwitch() { // This is only used on Linux and ChromeOS. -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) return kBinaryPathSwitch; #else return nullptr; 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 index 1afd46f8fbab..a9f2d823f361 100644 --- 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 @@ -1,20 +1,20 @@ ---- services/screen_ai/screen_ai_service_impl.cc.orig 2026-07-01 06:24:19 UTC +--- services/screen_ai/screen_ai_service_impl.cc.orig 2026-08-31 10:59:09 UTC +++ services/screen_ai/screen_ai_service_impl.cc @@ -32,7 +32,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(USE_PARTITION_ALLOC_AS_MALLOC) -@@ -209,7 +209,7 @@ ScreenAIService::ScreenAIService( +@@ -212,7 +212,7 @@ ScreenAIService::ScreenAIService( : factory_receiver_(this, std::move(receiver)), ocr_receiver_(this), main_content_extraction_receiver_(this) { -#if BUILDFLAG(IS_LINUX) && PA_BUILDFLAG(USE_PARTITION_ALLOC_AS_MALLOC) +#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && PA_BUILDFLAG(USE_PARTITION_ALLOC_AS_MALLOC) // TODO(crbug.com/418199684): Remove when the bug is fixed. if (base::FeatureList::IsEnabled( ::features::kScreenAIPartitionAllocAdvancedChecksEnabled)) { diff --git a/www/chromium/files/patch-services_webnn_public_cpp_webnn__sandbox__init.cc b/www/chromium/files/patch-services_webnn_public_cpp_webnn__sandbox__init.cc new file mode 100644 index 000000000000..f9d742d51cfc --- /dev/null +++ b/www/chromium/files/patch-services_webnn_public_cpp_webnn__sandbox__init.cc @@ -0,0 +1,26 @@ +--- services/webnn/public/cpp/webnn_sandbox_init.cc.orig 2026-08-31 10:59:09 UTC ++++ services/webnn/public/cpp/webnn_sandbox_init.cc +@@ -9,20 +9,20 @@ + #include "base/path_service.h" + #include "services/webnn/public/cpp/webnn_buildflags.h" + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + #include + #endif + + namespace webnn { + +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + void PreSandboxWebNNInitialization() { + #if BUILDFLAG(WEBNN_USE_WEBGPU_ACCELERATOR) + #if BUILDFLAG(IS_WIN) + base::FilePath library_path( + FILE_PATH_LITERAL("libLiteRtWebGpuAccelerator.dll")); + base::LoadNativeLibrary(library_path, nullptr); +-#elif BUILDFLAG(IS_LINUX) ++#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + base::FilePath library_path; + if (base::PathService::Get(base::DIR_MODULE, &library_path)) { + library_path = diff --git a/www/chromium/files/patch-services_webnn_public_cpp_webnn__sandbox__init.h b/www/chromium/files/patch-services_webnn_public_cpp_webnn__sandbox__init.h new file mode 100644 index 000000000000..c3a77567db7d --- /dev/null +++ b/www/chromium/files/patch-services_webnn_public_cpp_webnn__sandbox__init.h @@ -0,0 +1,11 @@ +--- services/webnn/public/cpp/webnn_sandbox_init.h.orig 2026-08-31 10:59:09 UTC ++++ services/webnn/public/cpp/webnn_sandbox_init.h +@@ -10,7 +10,7 @@ + + namespace webnn { + +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + // Preloads WebNN LiteRT libraries (like the GPU accelerator DLL) before the + // GPU process sandbox is locked down. + COMPONENT_EXPORT(WEBNN_PUBLIC_CPP) diff --git a/www/chromium/files/patch-services_webnn_webnn__graph__impl__fuzzer.cc b/www/chromium/files/patch-services_webnn_webnn__graph__impl__fuzzer.cc index d1d77b33be13..2ec3298e604a 100644 --- a/www/chromium/files/patch-services_webnn_webnn__graph__impl__fuzzer.cc +++ b/www/chromium/files/patch-services_webnn_webnn__graph__impl__fuzzer.cc @@ -1,20 +1,20 @@ ---- services/webnn/webnn_graph_impl_fuzzer.cc.orig 2026-08-12 09:02:10 UTC +--- services/webnn/webnn_graph_impl_fuzzer.cc.orig 2026-08-31 10:59:09 UTC +++ services/webnn/webnn_graph_impl_fuzzer.cc -@@ -1613,7 +1613,7 @@ std::optional SetUpConv2dDescriptor +@@ -2045,7 +2045,7 @@ std::optional SetUpConv2dDescriptor params.groups = params.input_channels; } -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (params.conv2d_kind == mojom::Conv2d::Kind::kTransposed) { // ConvTranspose2d does not support dilation and groups for TFLite backend: // https://source.chromium.org/chromium/chromium/src/+/db6bda50f023057ffa82845f232852dea0f271e1:services/webnn/tflite/graph_builder_tflite.cc;l=4125 -@@ -1950,7 +1950,7 @@ std::optional SetUpPool2dDescriptor +@@ -2461,7 +2461,7 @@ std::optional SetUpPool2dDescriptor Pool2dParams& params) { InputOperandLayout input_layout = context_properties.input_operand_layout; -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Pool2d does not support dilation for TFLite backend: // https://source.chromium.org/chromium/chromium/src/+/4c1aaa2f981951e7e6f636df92fb89e48b642aa6:services/webnn/tflite/graph_builder_tflite.cc;l=7203 // TODO(crbug.com/498987226): Remove this restriction to increase test diff --git a/www/chromium/files/patch-third__party_angle_src_common_system__utils__linux.cpp b/www/chromium/files/patch-third__party_angle_src_common_system__utils__linux.cpp index 75d22a25dbf2..9b3c2af13de2 100644 --- a/www/chromium/files/patch-third__party_angle_src_common_system__utils__linux.cpp +++ b/www/chromium/files/patch-third__party_angle_src_common_system__utils__linux.cpp @@ -1,37 +1,37 @@ ---- third_party/angle/src/common/system_utils_linux.cpp.orig 2025-10-02 04:28:32 UTC +--- third_party/angle/src/common/system_utils_linux.cpp.orig 2026-08-31 10:59:09 UTC +++ third_party/angle/src/common/system_utils_linux.cpp -@@ -19,10 +19,15 @@ +@@ -16,10 +16,15 @@ #include #include +#if ANGLE_PLATFORM_OPENBSD +#include +#endif + #include namespace angle { +#if ANGLE_PLATFORM_LINUX std::string GetExecutablePath() { // We cannot use lstat to get the size of /proc/self/exe as it always returns 0 -@@ -38,6 +43,7 @@ std::string GetExecutablePath() - path[result] = '\0'; +@@ -35,6 +40,7 @@ std::string GetExecutablePath() + ANGLE_UNSAFE_TODO(path[result]) = '\0'; return path; } +#endif std::string GetExecutableDirectory() { -@@ -63,6 +69,10 @@ void SetCurrentThreadName(const char *name) +@@ -60,6 +66,10 @@ void SetCurrentThreadName(const char *name) // There's a 15-character (16 including '\0') limit. If the name is too big (and ERANGE is // returned), name will be ignored. ASSERT(strlen(name) < 16); +#if ANGLE_PLATFORM_OPENBSD + pthread_set_name_np(pthread_self(), name); +#else pthread_setname_np(pthread_self(), name); +#endif } } // namespace angle 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 8e4e3e54fa5a..0ad3b8b6c1cb 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 2026-08-12 09:02:10 UTC +--- third_party/angle/src/libANGLE/Display.cpp.orig 2026-08-31 10:59:09 UTC +++ third_party/angle/src/libANGLE/Display.cpp -@@ -64,7 +64,7 @@ +@@ -61,7 +61,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" -@@ -447,7 +447,7 @@ rx::DisplayImpl *CreateDisplayFromAttribs(EGLAttrib di +@@ -432,7 +432,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) || defined(ANGLE_USE_WAYLAND) if (platformType == 0) { -@@ -505,7 +505,7 @@ rx::DisplayImpl *CreateDisplayFromAttribs(EGLAttrib di +@@ -490,7 +490,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) || defined(ANGLE_USE_WAYLAND) if (platformType == 0) { -@@ -568,7 +568,7 @@ rx::DisplayImpl *CreateDisplayFromAttribs(EGLAttrib di +@@ -553,7 +553,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()) { -@@ -2216,7 +2216,7 @@ static ClientExtensions GenerateClientExtensions() +@@ -2203,7 +2203,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 -@@ -2263,7 +2263,7 @@ static ClientExtensions GenerateClientExtensions() +@@ -2250,7 +2250,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_angle_util_BUILD.gn b/www/chromium/files/patch-third__party_angle_util_BUILD.gn index c7fd8ebb4739..060726fed482 100644 --- a/www/chromium/files/patch-third__party_angle_util_BUILD.gn +++ b/www/chromium/files/patch-third__party_angle_util_BUILD.gn @@ -1,11 +1,11 @@ ---- third_party/angle/util/BUILD.gn.orig 2026-07-01 06:24:19 UTC +--- third_party/angle/util/BUILD.gn.orig 2026-08-31 10:59:09 UTC +++ third_party/angle/util/BUILD.gn -@@ -343,7 +343,7 @@ foreach(is_shared_library, +@@ -346,7 +346,7 @@ foreach(is_shared_library, ] libs = [] - if (is_linux || is_chromeos) { + if ((is_linux || is_chromeos) && !is_bsd) { libs += [ "rt", "dl", diff --git a/www/chromium/files/patch-third__party_blink_common_features.cc b/www/chromium/files/patch-third__party_blink_common_features.cc index 8fcc479698d2..73edb63d8f28 100644 --- a/www/chromium/files/patch-third__party_blink_common_features.cc +++ b/www/chromium/files/patch-third__party_blink_common_features.cc @@ -1,20 +1,20 @@ ---- third_party/blink/common/features.cc.orig 2026-08-12 09:02:10 UTC +--- third_party/blink/common/features.cc.orig 2026-08-31 10:59:09 UTC +++ third_party/blink/common/features.cc -@@ -701,7 +701,7 @@ BASE_FEATURE(kDevToolsAdsPanel, base::FEATURE_DISABLED +@@ -693,7 +693,7 @@ BASE_FEATURE(kDevToolsAdsPanel, base::FEATURE_DISABLED BASE_FEATURE(kDirectCompositorThreadIpc, #if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_WIN) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) base::FEATURE_ENABLED_BY_DEFAULT #else base::FEATURE_DISABLED_BY_DEFAULT -@@ -2064,7 +2064,7 @@ BASE_FEATURE(kPrefetchFontLookupTables, +@@ -1907,7 +1907,7 @@ BASE_FEATURE(kPrefetchFontLookupTables, // currently out of scope. BASE_FEATURE(kPreloadingEagerHoverHeuristics, #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 diff --git a/www/chromium/files/patch-third__party_blink_common_renderer__preferences_renderer__preferences__mojom__traits.cc b/www/chromium/files/patch-third__party_blink_common_renderer__preferences_renderer__preferences__mojom__traits.cc index d171626e5dc8..39d433939b12 100644 --- a/www/chromium/files/patch-third__party_blink_common_renderer__preferences_renderer__preferences__mojom__traits.cc +++ b/www/chromium/files/patch-third__party_blink_common_renderer__preferences_renderer__preferences__mojom__traits.cc @@ -1,20 +1,29 @@ ---- third_party/blink/common/renderer_preferences/renderer_preferences_mojom_traits.cc.orig 2026-06-04 10:12:25 UTC +--- third_party/blink/common/renderer_preferences/renderer_preferences_mojom_traits.cc.orig 2026-08-31 10:59:09 UTC +++ third_party/blink/common/renderer_preferences/renderer_preferences_mojom_traits.cc +@@ -47,7 +47,7 @@ bool StructTraitsuse_custom_colors = data.use_custom_colors(); + +-#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) ++#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) + out->use_overlay_scrollbar = data.use_overlay_scrollbar(); + #endif + @@ -78,7 +78,7 @@ bool StructTraitssend_subresource_notification = data.send_subresource_notification(); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) if (!data.ReadSystemFontFamilyName(&out->system_font_family_name)) return false; #endif @@ -108,7 +108,7 @@ bool StructTraitsselection_clipboard_buffer_available = data.selection_clipboard_buffer_available(); #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) out->middle_click_paste_allowed = data.middle_click_paste_allowed(); #endif out->plugin_fullscreen_allowed = data.plugin_fullscreen_allowed(); diff --git a/www/chromium/files/patch-third__party_blink_public_common_renderer__preferences_renderer__preferences.h b/www/chromium/files/patch-third__party_blink_public_common_renderer__preferences_renderer__preferences.h index 2b50e27f44c1..4c10b283ede9 100644 --- a/www/chromium/files/patch-third__party_blink_public_common_renderer__preferences_renderer__preferences.h +++ b/www/chromium/files/patch-third__party_blink_public_common_renderer__preferences_renderer__preferences.h @@ -1,20 +1,29 @@ ---- third_party/blink/public/common/renderer_preferences/renderer_preferences.h.orig 2026-06-04 10:12:25 UTC +--- third_party/blink/public/common/renderer_preferences/renderer_preferences.h.orig 2026-08-31 10:59:09 UTC +++ third_party/blink/public/common/renderer_preferences/renderer_preferences.h -@@ -66,7 +66,7 @@ struct BLINK_COMMON_EXPORT RendererPreferences { +@@ -54,7 +54,7 @@ struct BLINK_COMMON_EXPORT RendererPreferences { + bool allow_cross_origin_auth_prompt{false}; + bool enable_do_not_track{false}; + bool enable_encrypted_media{true}; +-#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) ++#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) + bool use_overlay_scrollbar{false}; + #endif + blink::mojom::WebRtcIpHandlingPolicy webrtc_ip_handling_policy = +@@ -67,7 +67,7 @@ struct BLINK_COMMON_EXPORT RendererPreferences { UserAgentOverride user_agent_override; std::string accept_languages; bool send_subresource_notification{false}; -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) std::string system_font_family_name; #endif #if BUILDFLAG(IS_WIN) -@@ -84,7 +84,7 @@ struct BLINK_COMMON_EXPORT RendererPreferences { +@@ -85,7 +85,7 @@ struct BLINK_COMMON_EXPORT RendererPreferences { #if BUILDFLAG(IS_OZONE) bool selection_clipboard_buffer_available{false}; #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) bool middle_click_paste_allowed{true}; #endif bool plugin_fullscreen_allowed{true}; diff --git a/www/chromium/files/patch-third__party_blink_public_common_renderer__preferences_renderer__preferences__mojom__traits.h b/www/chromium/files/patch-third__party_blink_public_common_renderer__preferences_renderer__preferences__mojom__traits.h index 8c5b83481506..819d90a04be6 100644 --- a/www/chromium/files/patch-third__party_blink_public_common_renderer__preferences_renderer__preferences__mojom__traits.h +++ b/www/chromium/files/patch-third__party_blink_public_common_renderer__preferences_renderer__preferences__mojom__traits.h @@ -1,20 +1,29 @@ ---- third_party/blink/public/common/renderer_preferences/renderer_preferences_mojom_traits.h.orig 2026-01-14 08:33:23 UTC +--- third_party/blink/public/common/renderer_preferences/renderer_preferences_mojom_traits.h.orig 2026-08-31 10:59:09 UTC +++ third_party/blink/public/common/renderer_preferences/renderer_preferences_mojom_traits.h +@@ -133,7 +133,7 @@ struct BLINK_COMMON_EXPORT + return data.enable_encrypted_media; + } + +-#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) ++#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) + static const bool& use_overlay_scrollbar( + const ::blink::RendererPreferences& data) { + return data.use_overlay_scrollbar; @@ -185,7 +185,7 @@ struct BLINK_COMMON_EXPORT return data.send_subresource_notification; } -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) static const std::string& system_font_family_name( const ::blink::RendererPreferences& data) { return data.system_font_family_name; @@ -199,7 +199,7 @@ struct BLINK_COMMON_EXPORT } #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) static const bool& middle_click_paste_allowed( const ::blink::RendererPreferences& data) { return data.middle_click_paste_allowed; diff --git a/www/chromium/files/patch-third__party_blink_renderer_controller_blink__initializer.cc b/www/chromium/files/patch-third__party_blink_renderer_controller_blink__initializer.cc index 6fce5a623a86..eb6ee83399d5 100644 --- a/www/chromium/files/patch-third__party_blink_renderer_controller_blink__initializer.cc +++ b/www/chromium/files/patch-third__party_blink_renderer_controller_blink__initializer.cc @@ -1,35 +1,35 @@ ---- third_party/blink/renderer/controller/blink_initializer.cc.orig 2026-08-12 09:02:10 UTC +--- third_party/blink/renderer/controller/blink_initializer.cc.orig 2026-08-31 10:59:09 UTC +++ third_party/blink/renderer/controller/blink_initializer.cc @@ -87,12 +87,12 @@ #include "third_party/blink/renderer/platform/fonts/font_cache.h" #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "third_party/blink/renderer/controller/memory_usage_monitor_posix.h" #endif #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || \ - BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_WIN) + BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) #include "third_party/blink/renderer/controller/highest_pmf_reporter.h" #endif -@@ -266,7 +266,7 @@ void BlinkInitializer::RegisterInterfaces(mojo::Binder +@@ -267,7 +267,7 @@ void BlinkInitializer::RegisterInterfaces(mojo::Binder main_thread_task_runner); #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) binders.Add( ConvertToBaseRepeatingCallback( CrossThreadBindRepeating(&MemoryUsageMonitorPosix::Bind)), -@@ -319,7 +319,7 @@ void BlinkInitializer::RegisterMemoryWatchers(Platform +@@ -320,7 +320,7 @@ void BlinkInitializer::RegisterMemoryWatchers(Platform MemorySaverController::Initialize(); #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || \ - BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_WIN) + BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) // Start reporting the highest private memory footprint after the first // navigation. HighestPmfReporter::Initialize(main_thread_task_runner); diff --git a/www/chromium/files/patch-third__party_blink_renderer_core_dom_tree__scope.h b/www/chromium/files/patch-third__party_blink_renderer_core_dom_tree__scope.h index 6a58c8ca10ef..9c38dd087412 100644 --- a/www/chromium/files/patch-third__party_blink_renderer_core_dom_tree__scope.h +++ b/www/chromium/files/patch-third__party_blink_renderer_core_dom_tree__scope.h @@ -1,10 +1,10 @@ ---- third_party/blink/renderer/core/dom/tree_scope.h.orig 2026-01-14 08:33:23 UTC +--- third_party/blink/renderer/core/dom/tree_scope.h.orig 2026-08-31 10:59:09 UTC +++ third_party/blink/renderer/core/dom/tree_scope.h @@ -28,6 +28,7 @@ #define THIRD_PARTY_BLINK_RENDERER_CORE_DOM_TREE_SCOPE_H_ #include "third_party/blink/renderer/core/core_export.h" +#include "third_party/blink/renderer/core/css/css_style_sheet.h" #include "third_party/blink/renderer/core/dom/tree_ordered_map.h" + #include "third_party/blink/renderer/core/html/custom/custom_element_registry_assignment.h" #include "third_party/blink/renderer/core/html/forms/radio_button_group_scope.h" - #include "third_party/blink/renderer/platform/bindings/exception_state.h" 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 e7bd9166e3be..05af49f17c77 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,29 +1,56 @@ ---- third_party/blink/renderer/core/exported/web_view_impl.cc.orig 2026-08-12 09:02:10 UTC +--- third_party/blink/renderer/core/exported/web_view_impl.cc.orig 2026-08-31 10:59:09 UTC +++ third_party/blink/renderer/core/exported/web_view_impl.cc +@@ -196,7 +196,7 @@ + #include "ui/base/ui_base_features.h" + #include "ui/gfx/geometry/skia_conversions.h" + +-#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) ++#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) + #include "ui/native_theme/native_theme.h" + #endif + @@ -402,7 +402,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' -@@ -3631,7 +3631,7 @@ void WebViewImpl::UpdateFontRenderingFromRendererPrefs +@@ -461,7 +461,7 @@ void MaybePreloadSystemFonts(Page* page) { + FROM_HERE, BindOnce([]() { FontCache::MaybePreloadSystemFonts(); })); + } + +-#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) ++#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) + void UpdateUseOverlayScrollbar(bool use_overlay_scrollbar) { + ui::NativeTheme::GetInstanceForWeb()->set_use_overlay_scrollbar( + use_overlay_scrollbar); +@@ -3675,7 +3675,7 @@ void WebViewImpl::UpdateFontRenderingFromRendererPrefs gfx::FontRenderParams::SUBPIXEL_RENDERING_NONE); WebFontRenderStyle::SetSubpixelPositioning( renderer_preferences_.use_subpixel_positioning); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) if (!renderer_preferences_.system_font_family_name.empty()) { WebFontRenderStyle::SetSystemFontFamily(blink::WebString::FromUtf8( renderer_preferences_.system_font_family_name)); -@@ -3781,7 +3781,7 @@ void WebViewImpl::UpdateRendererPreferences( +@@ -3815,7 +3815,7 @@ void WebViewImpl::UpdateRendererPreferences( renderer_preferences_.selection_clipboard_buffer_available); #endif // BUILDFLAG(IS_OZONE) -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) GetSettings()->SetMiddleClickPasteAllowed( renderer_preferences_.middle_click_paste_allowed); #endif // BUILDFLAG(IS_LINUX) +@@ -3823,7 +3823,7 @@ void WebViewImpl::UpdateRendererPreferences( + SetExplicitlyAllowedPorts( + renderer_preferences_.explicitly_allowed_network_ports); + +-#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) ++#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) + if (!ScrollbarTheme::MockScrollbarsEnabled()) { + // DevTools emulation can update Blink's overlay scrollbar setting, + // while OS theme updates can update NativeTheme before renderer preferences 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 0c5d645be152..2cd90047d650 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 2026-08-12 09:02:10 UTC +--- third_party/blink/renderer/core/frame/web_frame_test.cc.orig 2026-08-31 10:59:09 UTC +++ third_party/blink/renderer/core/frame/web_frame_test.cc -@@ -6333,7 +6333,7 @@ TEST_F(WebFrameTest, DISABLED_PositionForPointTest) { +@@ -6352,7 +6352,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 \ -@@ -6743,7 +6743,7 @@ TEST_F(CompositedSelectionBoundsTest, LargeSelectionSc +@@ -6762,7 +6762,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 8fe6892d228b..ab35087c0ab1 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 2026-08-12 09:02:10 UTC +--- third_party/blink/renderer/core/layout/layout_view.cc.orig 2026-08-31 10:59:09 UTC +++ third_party/blink/renderer/core/layout/layout_view.cc @@ -76,7 +76,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 -@@ -851,7 +851,7 @@ void LayoutView::LayoutRoot() { +@@ -845,7 +845,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_core_page_context__menu__controller.cc b/www/chromium/files/patch-third__party_blink_renderer_core_page_context__menu__controller.cc index d3d5548bd42d..92130871a13f 100644 --- a/www/chromium/files/patch-third__party_blink_renderer_core_page_context__menu__controller.cc +++ b/www/chromium/files/patch-third__party_blink_renderer_core_page_context__menu__controller.cc @@ -1,11 +1,11 @@ ---- third_party/blink/renderer/core/page/context_menu_controller.cc.orig 2026-08-12 09:02:10 UTC +--- third_party/blink/renderer/core/page/context_menu_controller.cc.orig 2026-08-31 10:59:09 UTC +++ third_party/blink/renderer/core/page/context_menu_controller.cc -@@ -692,7 +692,7 @@ bool ContextMenuController::ShowContextMenu( +@@ -680,7 +680,7 @@ bool ContextMenuController::ShowContextMenu( if (potential_image_node != nullptr && IsA(potential_image_node)) { data.media_type = mojom::blink::ContextMenuDataMediaType::kCanvas; -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // TODO(crbug.com/40902474): Support reading from the WebGPU front buffer // on Linux and remove the below code, which results in "Copy Image" and // "Save Image To" being grayed out in the context menu. diff --git a/www/chromium/files/patch-third__party_blink_renderer_core_xml_xslt__processor.h b/www/chromium/files/patch-third__party_blink_renderer_core_xml_xslt__processor.h index 823c5dfbd769..77dc4bdde1e3 100644 --- a/www/chromium/files/patch-third__party_blink_renderer_core_xml_xslt__processor.h +++ b/www/chromium/files/patch-third__party_blink_renderer_core_xml_xslt__processor.h @@ -1,14 +1,14 @@ ---- third_party/blink/renderer/core/xml/xslt_processor.h.orig 2026-03-13 06:02:14 UTC +--- third_party/blink/renderer/core/xml/xslt_processor.h.orig 2026-08-31 10:59:09 UTC +++ third_party/blink/renderer/core/xml/xslt_processor.h -@@ -89,7 +89,11 @@ class XSLTProcessor final : public ScriptWrappable { +@@ -91,7 +91,11 @@ class XSLTProcessor final : public ScriptWrappable { void reset(); +#if (LIBXML_VERSION >= 21200) static void ParseErrorFunc(void* user_data, const xmlError*); +#else + static void ParseErrorFunc(void* user_data, xmlError*); +#endif static void GenericErrorFunc(void* user_data, const char* msg, ...); // Only for libXSLT callbacks diff --git a/www/chromium/files/patch-third__party_blink_renderer_modules_canvas_imagebitmap_image__bitmap__rendering__context.cc b/www/chromium/files/patch-third__party_blink_renderer_modules_canvas_imagebitmap_image__bitmap__rendering__context.cc index 1794d45aec0f..71565aa709cc 100644 --- a/www/chromium/files/patch-third__party_blink_renderer_modules_canvas_imagebitmap_image__bitmap__rendering__context.cc +++ b/www/chromium/files/patch-third__party_blink_renderer_modules_canvas_imagebitmap_image__bitmap__rendering__context.cc @@ -1,11 +1,11 @@ ---- third_party/blink/renderer/modules/canvas/imagebitmap/image_bitmap_rendering_context.cc.orig 2026-08-12 09:02:10 UTC +--- third_party/blink/renderer/modules/canvas/imagebitmap/image_bitmap_rendering_context.cc.orig 2026-08-31 10:59:09 UTC +++ third_party/blink/renderer/modules/canvas/imagebitmap/image_bitmap_rendering_context.cc -@@ -59,7 +59,7 @@ scoped_refptr ImageBitmapRenderingC +@@ -70,7 +70,7 @@ scoped_refptr ImageBitmapRenderingC return source; } -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // TODO(b/330865436): On Linux, CanvasResourceProvider doesn't always check // for SCANOUT support correctly on X11 and it's never supported in // practice. Therefore, don't include it until this flow is reworked. 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 180e2d9287f8..bafda3380726 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 2026-08-12 09:02:10 UTC +--- third_party/blink/renderer/modules/webgl/webgl_rendering_context_base.cc.orig 2026-08-31 10:59:09 UTC +++ third_party/blink/renderer/modules/webgl/webgl_rendering_context_base.cc -@@ -6684,7 +6684,7 @@ void WebGLRenderingContextBase::TexImageHelperMediaVid +@@ -6697,7 +6697,7 @@ void WebGLRenderingContextBase::TexImageHelperMediaVid // unmultiply has been requested or we need to never premultiply for Image // creation from a VideoFrame. -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // TODO(crbug.com/1181562): TexSubImage2D via the GPU path performs poorly on // Linux when used with frames backed by SharedImages holding shared memory. // We don't have a way to differentiate this case from that of true texture diff --git a/www/chromium/files/patch-third__party_blink_renderer_modules_webgpu_gpu.cc b/www/chromium/files/patch-third__party_blink_renderer_modules_webgpu_gpu.cc index 772a19cb0e88..929adb82cd00 100644 --- a/www/chromium/files/patch-third__party_blink_renderer_modules_webgpu_gpu.cc +++ b/www/chromium/files/patch-third__party_blink_renderer_modules_webgpu_gpu.cc @@ -1,11 +1,11 @@ ---- third_party/blink/renderer/modules/webgpu/gpu.cc.orig 2026-02-11 09:05:39 UTC +--- third_party/blink/renderer/modules/webgpu/gpu.cc.orig 2026-08-31 10:59:09 UTC +++ third_party/blink/renderer/modules/webgpu/gpu.cc -@@ -427,7 +427,7 @@ V8GPUTextureFormat GPU::getPreferredCanvasFormat() { +@@ -417,7 +417,7 @@ V8GPUTextureFormat GPU::getPreferredCanvasFormat() { } wgpu::TextureFormat GPU::GetPreferredCanvasFormat() { -#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Interop of vulkan and GL has mesa driver bugs for BGRA format // See anglebug.com/40644739 return wgpu::TextureFormat::RGBA8Unorm; diff --git a/www/chromium/files/patch-third__party_blink_renderer_platform_BUILD.gn b/www/chromium/files/patch-third__party_blink_renderer_platform_BUILD.gn index 8b69b9eecaa9..4db056ff70d2 100644 --- a/www/chromium/files/patch-third__party_blink_renderer_platform_BUILD.gn +++ b/www/chromium/files/patch-third__party_blink_renderer_platform_BUILD.gn @@ -1,11 +1,11 @@ ---- third_party/blink/renderer/platform/BUILD.gn.orig 2026-08-12 09:02:10 UTC +--- third_party/blink/renderer/platform/BUILD.gn.orig 2026-08-31 10:59:09 UTC +++ third_party/blink/renderer/platform/BUILD.gn -@@ -2089,7 +2089,7 @@ static_library("test_support") { +@@ -2118,7 +2118,7 @@ static_library("test_support") { ] # fuzzed_data_provider may not work with a custom toolchain. - if (custom_toolchain == "" && is_clang) { + if ((custom_toolchain == "" && is_clang) && !is_bsd) { sources += [ "testing/fuzzed_data_provider.cc", "testing/fuzzed_data_provider.h", diff --git a/www/chromium/files/patch-third__party_blink_renderer_platform_graphics_canvas__2d__resource__provider.cc b/www/chromium/files/patch-third__party_blink_renderer_platform_graphics_canvas__2d__resource__provider.cc new file mode 100644 index 000000000000..67214264ffa3 --- /dev/null +++ b/www/chromium/files/patch-third__party_blink_renderer_platform_graphics_canvas__2d__resource__provider.cc @@ -0,0 +1,11 @@ +--- third_party/blink/renderer/platform/graphics/canvas_2d_resource_provider.cc.orig 2026-08-31 10:59:09 UTC ++++ third_party/blink/renderer/platform/graphics/canvas_2d_resource_provider.cc +@@ -794,7 +794,7 @@ Canvas2DResourceProvider::CreateWithClear( + gpu::SHARED_IMAGE_USAGE_CONCURRENT_READ_WRITE); + #endif + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + // WebGpu preferred canvas on linux is RGBA and interop (vk on gl) is + // dependent on canvas copies being RGBA (not BGRA). + should_force_bgra8_to_rgba = true; diff --git a/www/chromium/files/patch-third__party_blink_renderer_platform_graphics_canvas__non__2d__resource__provider.cc b/www/chromium/files/patch-third__party_blink_renderer_platform_graphics_canvas__non__2d__resource__provider.cc new file mode 100644 index 000000000000..f72e20a153e1 --- /dev/null +++ b/www/chromium/files/patch-third__party_blink_renderer_platform_graphics_canvas__non__2d__resource__provider.cc @@ -0,0 +1,11 @@ +--- third_party/blink/renderer/platform/graphics/canvas_non_2d_resource_provider.cc.orig 2026-08-31 10:59:09 UTC ++++ third_party/blink/renderer/platform/graphics/canvas_non_2d_resource_provider.cc +@@ -98,7 +98,7 @@ CanvasNon2DResourceProvider::Create( + gpu::SHARED_IMAGE_USAGE_CONCURRENT_READ_WRITE); + #endif + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + // WebGpu preferred canvas on linux is RGBA and interop (vk on gl) is + // dependent on canvas copies being RGBA (not BGRA). + should_force_bgra8_to_rgba = true; diff --git a/www/chromium/files/patch-third__party_blink_renderer_platform_graphics_canvas__resource__provider.cc b/www/chromium/files/patch-third__party_blink_renderer_platform_graphics_canvas__resource__provider.cc deleted file mode 100644 index de61f1186ba5..000000000000 --- a/www/chromium/files/patch-third__party_blink_renderer_platform_graphics_canvas__resource__provider.cc +++ /dev/null @@ -1,20 +0,0 @@ ---- third_party/blink/renderer/platform/graphics/canvas_resource_provider.cc.orig 2026-08-12 09:02:10 UTC -+++ third_party/blink/renderer/platform/graphics/canvas_resource_provider.cc -@@ -1713,7 +1713,7 @@ Canvas2DResourceProviderSharedImage::CreateWithClear( - gpu::SHARED_IMAGE_USAGE_CONCURRENT_READ_WRITE); - #endif - --#if BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - // WebGpu preferred canvas on linux is RGBA and interop (vk on gl) is - // dependent on canvas copies being RGBA (not BGRA). - should_force_bgra8_to_rgba = true; -@@ -1871,7 +1871,7 @@ CanvasNon2DResourceProviderSharedImage::Create( - gpu::SHARED_IMAGE_USAGE_CONCURRENT_READ_WRITE); - #endif - --#if BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - // WebGpu preferred canvas on linux is RGBA and interop (vk on gl) is - // dependent on canvas copies being RGBA (not BGRA). - should_force_bgra8_to_rgba = true; diff --git a/www/chromium/files/patch-third__party_blink_renderer_platform_graphics_gpu_webgpu__shared__image__wrapper.cc b/www/chromium/files/patch-third__party_blink_renderer_platform_graphics_gpu_webgpu__shared__image__wrapper.cc new file mode 100644 index 000000000000..a6b79fd6add4 --- /dev/null +++ b/www/chromium/files/patch-third__party_blink_renderer_platform_graphics_gpu_webgpu__shared__image__wrapper.cc @@ -0,0 +1,11 @@ +--- third_party/blink/renderer/platform/graphics/gpu/webgpu_shared_image_wrapper.cc.orig 2026-08-31 10:59:09 UTC ++++ third_party/blink/renderer/platform/graphics/gpu/webgpu_shared_image_wrapper.cc +@@ -108,7 +108,7 @@ std::unique_ptr WebGpuShared + return nullptr; + } + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + // WebGpu preferred canvas on linux is RGBA and interop (vk on gl) is + // dependent on canvas copies being RGBA (not BGRA). + if (format != viz::SinglePlaneFormat::kRGBA_F16) { diff --git a/www/chromium/files/patch-third__party_blink_renderer_platform_runtime__enabled__features.json5 b/www/chromium/files/patch-third__party_blink_renderer_platform_runtime__enabled__features.json5 index 155c02c47ee6..3a34f2c1cd9f 100644 --- a/www/chromium/files/patch-third__party_blink_renderer_platform_runtime__enabled__features.json5 +++ b/www/chromium/files/patch-third__party_blink_renderer_platform_runtime__enabled__features.json5 @@ -1,119 +1,119 @@ ---- third_party/blink/renderer/platform/runtime_enabled_features.json5.orig 2026-08-12 09:02:10 UTC +--- third_party/blink/renderer/platform/runtime_enabled_features.json5.orig 2026-08-31 10:59:09 UTC +++ third_party/blink/renderer/platform/runtime_enabled_features.json5 -@@ -449,7 +449,7 @@ +@@ -459,7 +459,7 @@ "default": "", }, origin_trial_feature_name: "AIPromptAPIParams", - origin_trial_os: ["win", "mac", "linux", "chromeos"], + origin_trial_os: ["win", "mac", "linux", "chromeos", "openbsd", "freebsd"], origin_trial_allows_third_party: true, }, { -@@ -481,7 +481,7 @@ +@@ -491,7 +491,7 @@ "default": "", }, origin_trial_feature_name: "AIProofreaderAPI", - origin_trial_os: ["win", "mac", "linux", "chromeos"], + origin_trial_os: ["win", "mac", "linux", "chromeos", "openbsd", "freebsd"], origin_trial_allows_third_party: true, base_feature_status: "enabled", copied_from_base_feature_if: "overridden", -@@ -496,7 +496,7 @@ +@@ -506,7 +506,7 @@ "default": "", }, origin_trial_feature_name: "AIRewriterAPI", - origin_trial_os: ["win", "mac", "linux", "chromeos"], + origin_trial_os: ["win", "mac", "linux", "chromeos", "openbsd", "freebsd"], origin_trial_allows_third_party: true, base_feature_status: "enabled", copied_from_base_feature_if: "overridden", -@@ -532,7 +532,7 @@ +@@ -542,7 +542,7 @@ "default": "", }, origin_trial_feature_name: "AIWriterAPI", - origin_trial_os: ["win", "mac", "linux", "chromeos"], + origin_trial_os: ["win", "mac", "linux", "chromeos", "openbsd", "freebsd"], origin_trial_allows_third_party: true, base_feature_status: "enabled", copied_from_base_feature_if: "overridden", -@@ -688,7 +688,7 @@ +@@ -698,7 +698,7 @@ name: "AppTitle", status: "experimental", origin_trial_feature_name: "AppTitle", - origin_trial_os: ["win", "mac", "linux", "chromeos"], + origin_trial_os: ["win", "mac", "linux", "chromeos", "openbsd", "freebsd"], base_feature: "WebAppEnableAppTitle", }, { -@@ -1489,7 +1489,7 @@ +@@ -1507,7 +1507,7 @@ name: "CSPHashesV1", base_feature: "none", origin_trial_feature_name: "CSPExtendedScriptSrcHashes", - origin_trial_os: ["win", "linux", "mac", "android", "chromeos"], + origin_trial_os: ["win", "linux", "mac", "android", "chromeos", "openbsd", "freebsd"], status: "experimental", public: true, }, -@@ -2437,7 +2437,7 @@ +@@ -2477,7 +2477,7 @@ name: "DocumentIsolationPolicy", status: "experimental", origin_trial_feature_name: "DocumentIsolationPolicy", - origin_trial_os: ["win", "mac", "linux", "chromeos"], + origin_trial_os: ["win", "mac", "linux", "chromeos", "openbsd", "freebsd"], base_feature: "none", }, { -@@ -2625,7 +2625,7 @@ +@@ -2675,7 +2675,7 @@ public: true, origin_trial_feature_name: "EmailVerificationProtocol", origin_trial_allows_third_party: true, - origin_trial_os: ["win", "mac", "linux", "chromeos"], + origin_trial_os: ["win", "mac", "linux", "chromeos", "openbsd", "freebsd"], status: { "Win": "experimental", "Mac": "experimental", -@@ -2802,7 +2802,7 @@ +@@ -2867,7 +2867,7 @@ base_feature: "none", public: true, origin_trial_feature_name: "FedCmMultipleIdentityProviders", - origin_trial_os: ["win", "mac", "linux", "chromeos"], + origin_trial_os: ["win", "mac", "linux", "chromeos", "openbsd", "freebsd"], origin_trial_allows_third_party: true, }, { -@@ -3662,7 +3662,7 @@ +@@ -3764,7 +3764,7 @@ name: "InstallElement", status: {"Android": "", "default": "test"}, origin_trial_feature_name: "InstallElement", - origin_trial_os: ["win", "mac", "linux", "chromeos"], + origin_trial_os: ["win", "mac", "linux", "chromeos", "openbsd", "freebsd"], public: true, base_feature_status: "enabled", copied_from_base_feature_if: "overridden", -@@ -6500,7 +6500,7 @@ +@@ -6661,7 +6661,7 @@ name: "UnrestrictedSharedArrayBuffer", base_feature: "none", origin_trial_feature_name: "UnrestrictedSharedArrayBuffer", - origin_trial_os: ["win", "mac", "linux", "fuchsia", "chromeos"], + origin_trial_os: ["win", "mac", "linux", "fuchsia", "chromeos", "openbsd", "freebsd"], }, // Enables using policy-controlled feature "usb-unrestricted" to allow // isolated context to access protected USB interface classes and to -@@ -6725,7 +6725,7 @@ +@@ -6889,7 +6889,7 @@ name: "WebAppInstallation", status: {"Android": "", "default": "test"}, origin_trial_feature_name: "WebAppInstallation", - origin_trial_os: ["win", "mac", "linux", "chromeos"], + origin_trial_os: ["win", "mac", "linux", "chromeos", "openbsd", "freebsd"], public: true, base_feature_status: "enabled", copied_from_base_feature_if: "overridden", -@@ -6739,7 +6739,7 @@ +@@ -6903,7 +6903,7 @@ { name: "WebAppScopeExtensions", origin_trial_feature_name: "WebAppScopeExtensions", - origin_trial_os: ["win", "mac", "linux", "chromeos"], + origin_trial_os: ["win", "mac", "linux", "chromeos", "openbsd", "freebsd"], status: "experimental", base_feature: "none", }, diff --git a/www/chromium/files/patch-third__party_dawn_src_utils_BUILD.gn b/www/chromium/files/patch-third__party_dawn_src_utils_BUILD.gn new file mode 100644 index 000000000000..c7e517ab95db --- /dev/null +++ b/www/chromium/files/patch-third__party_dawn_src_utils_BUILD.gn @@ -0,0 +1,19 @@ +--- third_party/dawn/src/utils/BUILD.gn.orig 2026-08-31 10:59:09 UTC ++++ third_party/dawn/src/utils/BUILD.gn +@@ -210,16 +210,6 @@ config("dawn_warnings") { + "-Wno-non-virtual-dtor", + "-Wno-undefined-func-template", + "-Wno-unused-parameter", +- +- # The lifetime-safety-* warnings are part of an experimental analysis. +- # Many individual diagnostics (like +- # -Wlifetime-safety-lifetimebound-violation) are not yet mapped to +- # toggleable warning flags, so we suppress the entire group and disable +- # the analysis pass. +- "-Wno-lifetime-safety", +- "-Wno-lifetime-safety-all", +- "-Xclang=-fno-lifetime-safety-inference", +- "-Xclang=-fno-experimental-lifetime-safety-tu-analysis", + ] + + # P3. Checks that could be nice but probably don't help with hardening. diff --git a/www/chromium/files/patch-third__party_ffmpeg_BUILD.gn b/www/chromium/files/patch-third__party_ffmpeg_BUILD.gn index 78be8dbe872a..0f5a089a7b22 100644 --- a/www/chromium/files/patch-third__party_ffmpeg_BUILD.gn +++ b/www/chromium/files/patch-third__party_ffmpeg_BUILD.gn @@ -1,10 +1,10 @@ ---- third_party/ffmpeg/BUILD.gn.orig 2026-02-11 09:05:39 UTC +--- third_party/ffmpeg/BUILD.gn.orig 2026-08-31 10:59:09 UTC +++ third_party/ffmpeg/BUILD.gn -@@ -362,7 +362,6 @@ target(link_target_type, "ffmpeg_internal") { +@@ -382,7 +382,6 @@ target(link_target_type, "ffmpeg_internal") { libs += [ "m", "z", - "rt", ] } if (is_component_ffmpeg) { diff --git a/www/chromium/files/patch-third__party_ffmpeg_configure b/www/chromium/files/patch-third__party_ffmpeg_configure index d1f33326201b..19c4638a3664 100644 --- a/www/chromium/files/patch-third__party_ffmpeg_configure +++ b/www/chromium/files/patch-third__party_ffmpeg_configure @@ -1,13 +1,13 @@ ---- third_party/ffmpeg/configure.orig 2026-07-01 06:24:19 UTC +--- third_party/ffmpeg/configure.orig 2026-08-31 10:59:09 UTC +++ third_party/ffmpeg/configure -@@ -7256,8 +7256,8 @@ if ! disabled pthreads && ! enabled w32threads && ! en +@@ -7290,8 +7290,8 @@ if ! disabled pthreads && ! enabled w32threads && ! en if enabled pthread_np_h; then hdrs="$hdrs pthread_np.h" fi - check_lib pthread_set_name_np "$hdrs" pthread_set_name_np -lpthread - check_lib pthread_setname_np "$hdrs" pthread_setname_np -lpthread + check_lib pthread_set_name_np pthread_np.h pthread_set_name_np -lpthread + check_lib pthread_setname_np pthread_np.h pthread_setname_np -lpthread - fi - fi - + # _GNU_SOURCE gets defined locally in checkasm where + # pthread_setaffinity_np gets used. + check_lib pthread_setaffinity_np "$hdrs" pthread_setaffinity_np -lpthread -D_GNU_SOURCE diff --git a/www/chromium/files/patch-third__party_fontconfig_src_src_fccompat.c b/www/chromium/files/patch-third__party_fontconfig_src_src_fccompat.c index 5244dd445d6f..444db53ef1ae 100644 --- a/www/chromium/files/patch-third__party_fontconfig_src_src_fccompat.c +++ b/www/chromium/files/patch-third__party_fontconfig_src_src_fccompat.c @@ -1,13 +1,13 @@ ---- third_party/fontconfig/src/src/fccompat.c.orig 2025-07-02 06:08:04 UTC +--- third_party/fontconfig/src/src/fccompat.c.orig 2026-08-31 10:59:09 UTC +++ third_party/fontconfig/src/src/fccompat.c -@@ -175,7 +175,9 @@ FcRandom (void) +@@ -176,7 +176,9 @@ FcRandom (void) { int32_t result; -#if HAVE_RANDOM_R +#if HAVE_ARC4RANDOM + result = arc4random() & 0x7fffffff; +#elif HAVE_RANDOM_R static struct random_data fcrandbuf; static char statebuf[256]; static FcBool initialized = FcFalse; diff --git a/www/chromium/files/patch-third__party_ipcz_src_standalone_base_logging.cc b/www/chromium/files/patch-third__party_ipcz_src_standalone_base_logging.cc deleted file mode 100644 index b28bf070e23c..000000000000 --- a/www/chromium/files/patch-third__party_ipcz_src_standalone_base_logging.cc +++ /dev/null @@ -1,12 +0,0 @@ ---- third_party/ipcz/src/standalone/base/logging.cc.orig 2025-03-05 08:14:56 UTC -+++ third_party/ipcz/src/standalone/base/logging.cc -@@ -55,6 +55,9 @@ LogMessage::LogMessage(const char* file, int line, Lev - #elif BUILDFLAG(IS_ANDROID) - stream_ << getpid() << ":" << gettid() << ":"; - const char* trimmed_file = strrchr(file, '/') + 1; -+#elif BUILDFLAG(IS_BSD) -+ stream_ << getpid() << ":" << pthread_self() << ":"; -+ const char* trimmed_file = strrchr(file, '/') + 1; - #elif BUILDFLAG(IS_WIN) - const char* trimmed_file = file; - stream_ << (::GetCurrentProcessId()) << ":" << ::GetCurrentThreadId() << ":"; diff --git a/www/chromium/files/patch-third__party_libaom_source_config_linux_x64_config_aom__dsp__rtcd.h b/www/chromium/files/patch-third__party_libaom_source_config_linux_x64_config_aom__dsp__rtcd.h new file mode 100644 index 000000000000..5523471b721c --- /dev/null +++ b/www/chromium/files/patch-third__party_libaom_source_config_linux_x64_config_aom__dsp__rtcd.h @@ -0,0 +1,38 @@ +--- third_party/libaom/source/config/linux/x64/config/aom_dsp_rtcd.h.orig 2026-08-31 10:59:09 UTC ++++ third_party/libaom/source/config/linux/x64/config/aom_dsp_rtcd.h +@@ -59,8 +59,6 @@ void aom_blend_a64_vmask_c(uint8_t *dst, uint32_t dst_ + void aom_blend_a64_vmask_sse4_1(uint8_t *dst, uint32_t dst_stride, const uint8_t *src0, uint32_t src0_stride, const uint8_t *src1, uint32_t src1_stride, const uint8_t *mask, int w, int h); + RTCD_EXTERN void (*aom_blend_a64_vmask)(uint8_t *dst, uint32_t dst_stride, const uint8_t *src0, uint32_t src0_stride, const uint8_t *src1, uint32_t src1_stride, const uint8_t *mask, int w, int h); + +-int64_t aom_calc_variance_stat_c(const uint8_t *src, int stride, int bw, int bh); +-int64_t aom_calc_variance_stat_avx2(const uint8_t *src, int stride, int bw, int bh); + RTCD_EXTERN int64_t (*aom_calc_variance_stat)(const uint8_t *src, int stride, int bw, int bh); + + void aom_comp_avg_pred_c(uint8_t *comp_pred, const uint8_t *pred, int width, int height, const uint8_t *ref, int ref_stride); +@@ -445,8 +443,6 @@ void aom_hadamard_lp_8x8_dual_sse2(const int16_t *src_ + void aom_hadamard_lp_8x8_dual_avx2(const int16_t *src_diff, ptrdiff_t src_stride, int16_t *coeff); + RTCD_EXTERN void (*aom_hadamard_lp_8x8_dual)(const int16_t *src_diff, ptrdiff_t src_stride, int16_t *coeff); + +-int64_t aom_highbd_calc_variance_stat_c(const uint16_t *src, int stride, int bw, int bh); +-int64_t aom_highbd_calc_variance_stat_avx2(const uint16_t *src, int stride, int bw, int bh); + RTCD_EXTERN int64_t (*aom_highbd_calc_variance_stat)(const uint16_t *src, int stride, int bw, int bh); + + void aom_ifft16x16_float_c(const float *input, float *temp, float *output); +@@ -1717,8 +1713,6 @@ static void setup_rtcd_internal(void) + if (flags & HAS_AVX2) aom_blend_a64_mask = aom_blend_a64_mask_avx2; + aom_blend_a64_vmask = aom_blend_a64_vmask_c; + if (flags & HAS_SSE4_1) aom_blend_a64_vmask = aom_blend_a64_vmask_sse4_1; +- aom_calc_variance_stat = aom_calc_variance_stat_c; +- if (flags & HAS_AVX2) aom_calc_variance_stat = aom_calc_variance_stat_avx2; + aom_comp_avg_pred = aom_comp_avg_pred_c; + if (flags & HAS_AVX2) aom_comp_avg_pred = aom_comp_avg_pred_avx2; + aom_comp_mask_pred = aom_comp_mask_pred_c; +@@ -1794,8 +1788,6 @@ static void setup_rtcd_internal(void) + if (flags & HAS_AVX2) aom_hadamard_lp_16x16 = aom_hadamard_lp_16x16_avx2; + aom_hadamard_lp_8x8_dual = aom_hadamard_lp_8x8_dual_sse2; + if (flags & HAS_AVX2) aom_hadamard_lp_8x8_dual = aom_hadamard_lp_8x8_dual_avx2; +- aom_highbd_calc_variance_stat = aom_highbd_calc_variance_stat_c; +- if (flags & HAS_AVX2) aom_highbd_calc_variance_stat = aom_highbd_calc_variance_stat_avx2; + aom_ifft16x16_float = aom_ifft16x16_float_sse2; + if (flags & HAS_AVX2) aom_ifft16x16_float = aom_ifft16x16_float_avx2; + aom_ifft32x32_float = aom_ifft32x32_float_sse2; diff --git a/www/chromium/files/patch-third__party_libunwind_src_src_DwarfInstructions.hpp b/www/chromium/files/patch-third__party_libunwind_src_src_DwarfInstructions.hpp index 4032175c82d7..7065fe36d757 100644 --- a/www/chromium/files/patch-third__party_libunwind_src_src_DwarfInstructions.hpp +++ b/www/chromium/files/patch-third__party_libunwind_src_src_DwarfInstructions.hpp @@ -1,34 +1,34 @@ ---- third_party/libunwind/src/src/DwarfInstructions.hpp.orig 2026-02-11 09:05:39 UTC +--- third_party/libunwind/src/src/DwarfInstructions.hpp.orig 2026-08-31 10:59:09 UTC +++ third_party/libunwind/src/src/DwarfInstructions.hpp -@@ -396,6 +396,23 @@ int DwarfInstructions::stepWithDwarf( +@@ -408,6 +408,23 @@ int DwarfInstructions::stepWithDwarf( if (R::getArch() == REGISTERS_PPC64 && returnAddress != 0) { pint_t sp = newRegisters.getRegister(UNW_REG_SP); pint_t r2 = 0; +#if defined(_LIBUNWIND_IS_NATIVE_ONLY) && defined(__OpenBSD__) + // Can't addressSpace.get32(returnAddress), because it might be + // in execute-only memory. If returning to a different shared + // object, then restore r2. This assumes one TOC per object. + // ELFv2 allows more than one (3.3 TOC, Modules Containing + // Multiple TOCs), but we have no way to detect that. + void *IPObject = NULL; + void *RAObject = NULL; + Dl_info info; + if (dladdr((void *)registers.getIP(), &info)) + IPObject = info.dli_fbase; + if (dladdr((void *)returnAddress, &info)) + RAObject = info.dli_fbase; + // Assume ELFv2. + if (IPObject != RAObject) + r2 = addressSpace.get64(sp + PPC64_ELFV2_R2_OFFSET); +#else switch (addressSpace.get32(returnAddress)) { case PPC64_ELFV1_R2_LOAD_INST_ENCODING: r2 = addressSpace.get64(sp + PPC64_ELFV1_R2_OFFSET); -@@ -404,6 +421,7 @@ int DwarfInstructions::stepWithDwarf( +@@ -416,6 +433,7 @@ int DwarfInstructions::stepWithDwarf( r2 = addressSpace.get64(sp + PPC64_ELFV2_R2_OFFSET); break; } +#endif if (r2) newRegisters.setRegister(UNW_PPC64_R2, r2); } diff --git a/www/chromium/files/patch-third__party_libunwind_src_src_UnwindCursor.hpp b/www/chromium/files/patch-third__party_libunwind_src_src_UnwindCursor.hpp index 9a401e006a7d..535390e299e1 100644 --- a/www/chromium/files/patch-third__party_libunwind_src_src_UnwindCursor.hpp +++ b/www/chromium/files/patch-third__party_libunwind_src_src_UnwindCursor.hpp @@ -1,27 +1,27 @@ ---- third_party/libunwind/src/src/UnwindCursor.hpp.orig 2026-02-11 09:05:39 UTC +--- third_party/libunwind/src/src/UnwindCursor.hpp.orig 2026-08-31 10:59:09 UTC +++ third_party/libunwind/src/src/UnwindCursor.hpp @@ -114,6 +114,8 @@ extern "C" _Unwind_Reason_Code __libunwind_seh_persona namespace libunwind { +static thread_local UnwindInfoSectionsCache uwis_cache; + #if defined(_LIBUNWIND_SUPPORT_DWARF_UNWIND) /// Cache of recently found FDEs. template -@@ -2776,7 +2778,14 @@ void UnwindCursor::setInfoBasedOnIPRegister(bool +@@ -2939,7 +2941,14 @@ void UnwindCursor::setInfoBasedOnIPRegister(bool // Ask address space object to find unwind sections for this pc. UnwindInfoSections sects; - if (_addressSpace.template findUnwindSections(pc, sects)) { + bool have_sects = false; + if (uwis_cache.getUnwindInfoSectionsForPC(pc, sects)) + have_sects = true; + else if (_addressSpace.template findUnwindSections(pc, sects)) { + uwis_cache.setUnwindInfoSectionsForPC(pc, sects); + have_sects = true; + } + if (have_sects) { #if defined(_LIBUNWIND_SUPPORT_COMPACT_UNWIND) // If there is a compact unwind encoding table, look there first. if (sects.compact_unwind_section != 0) { diff --git a/www/chromium/files/patch-third__party_pdfium_core_fxge_linux_fx__linux__impl.cpp b/www/chromium/files/patch-third__party_pdfium_core_fxge_linux_fx__linux__impl.cpp index fbb72bbc20a1..767cf65d5ec2 100644 --- a/www/chromium/files/patch-third__party_pdfium_core_fxge_linux_fx__linux__impl.cpp +++ b/www/chromium/files/patch-third__party_pdfium_core_fxge_linux_fx__linux__impl.cpp @@ -1,23 +1,23 @@ ---- third_party/pdfium/core/fxge/linux/fx_linux_impl.cpp.orig 2026-08-12 09:02:10 UTC +--- third_party/pdfium/core/fxge/linux/fx_linux_impl.cpp.orig 2026-08-31 10:59:09 UTC +++ third_party/pdfium/core/fxge/linux/fx_linux_impl.cpp -@@ -19,7 +19,7 @@ +@@ -18,7 +18,7 @@ #include "core/fxge/fx_font.h" #include "core/fxge/systemfontinfo_iface.h" -#if !BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CHROMEOS) && !defined(OS_ASMJS) +#if !BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CHROMEOS) && !defined(OS_ASMJS) && !BUILDFLAG(IS_BSD) #error "Included on the wrong platform" #endif -@@ -182,9 +182,8 @@ class CLinuxPlatform : public CFX_GEModule::PlatformIf - std::unique_ptr CreateDefaultSystemFontInfo() override { - auto pInfo = std::make_unique(); - if (!pInfo->ParseFontCfg(CFX_GEModule::Get()->GetUserFontPaths())) { +@@ -170,9 +170,8 @@ class CLinuxPlatform : public CFX_GEModule::PlatformIf + pInfo->AddPath(path); + } + } else { - pInfo->AddPath("/usr/share/fonts"); - pInfo->AddPath("/usr/share/X11/fonts/Type1"); - pInfo->AddPath("/usr/share/X11/fonts/TTF"); + pInfo->AddPath("/usr/X11R6/lib/X11/fonts/Type1"); + pInfo->AddPath("/usr/X11R6/lib/X11/fonts/TTF"); pInfo->AddPath("/usr/local/share/fonts"); } return pInfo; diff --git a/www/chromium/files/patch-third__party_perfetto_src_base_utils.cc b/www/chromium/files/patch-third__party_perfetto_src_base_utils.cc index a5099b2cf74f..d289276e3e67 100644 --- a/www/chromium/files/patch-third__party_perfetto_src_base_utils.cc +++ b/www/chromium/files/patch-third__party_perfetto_src_base_utils.cc @@ -1,47 +1,47 @@ ---- third_party/perfetto/src/base/utils.cc.orig 2026-08-12 09:02:10 UTC +--- third_party/perfetto/src/base/utils.cc.orig 2026-08-31 10:59:09 UTC +++ third_party/perfetto/src/base/utils.cc -@@ -43,7 +43,8 @@ +@@ -47,7 +47,8 @@ #include #endif -#if PERFETTO_BUILDFLAG(PERFETTO_OS_LINUX_BUT_NOT_QNX) || \ +#if (PERFETTO_BUILDFLAG(PERFETTO_OS_LINUX_BUT_NOT_QNX) && \ + !PERFETTO_BUILDFLAG(PERFETTO_OS_BSD)) || \ PERFETTO_BUILDFLAG(PERFETTO_OS_ANDROID) #include -@@ -293,14 +294,22 @@ void Daemonize(std::function parent_cb) { +@@ -244,14 +245,22 @@ void Daemonize(std::function parent_cb) { std::string GetCurExecutablePath() { std::string self_path; -#if PERFETTO_BUILDFLAG(PERFETTO_OS_LINUX) || \ +#if (PERFETTO_BUILDFLAG(PERFETTO_OS_LINUX) || \ PERFETTO_BUILDFLAG(PERFETTO_OS_ANDROID) || \ - PERFETTO_BUILDFLAG(PERFETTO_OS_FUCHSIA) + PERFETTO_BUILDFLAG(PERFETTO_OS_FUCHSIA)) && \ + !PERFETTO_BUILDFLAG(PERFETTO_OS_BSD) char buf[PATH_MAX]; ssize_t size = readlink("/proc/self/exe", buf, sizeof(buf)); PERFETTO_CHECK(size != -1); // readlink does not null terminate. self_path = std::string(buf, static_cast(size)); +#elif PERFETTO_BUILDFLAG(PERFETTO_OS_BSD) + char *buf; + const char *cpath = "/usr/local/chrome/chrome"; + if ((buf = getenv("CHROME_EXE_PATH")) != NULL) + self_path = std::string(buf); + else + self_path = std::string(cpath); #elif PERFETTO_BUILDFLAG(PERFETTO_OS_APPLE) uint32_t size = 0; PERFETTO_CHECK(_NSGetExecutablePath(nullptr, &size)); -@@ -364,7 +373,8 @@ void AlignedFree(void* ptr) { +@@ -315,7 +324,8 @@ void AlignedFree(void* ptr) { } bool IsSyncMemoryTaggingEnabled() { -#if PERFETTO_BUILDFLAG(PERFETTO_OS_LINUX_BUT_NOT_QNX) || \ +#if (PERFETTO_BUILDFLAG(PERFETTO_OS_LINUX_BUT_NOT_QNX) && \ + !PERFETTO_BUILDFLAG(PERFETTO_OS_BSD)) || \ PERFETTO_BUILDFLAG(PERFETTO_OS_ANDROID) // Compute only once per lifetime of the process. static bool cached_value = [] { diff --git a/www/chromium/files/patch-third__party_protobuf_proto__library.gni b/www/chromium/files/patch-third__party_protobuf_proto__library.gni index 8260b12e5c15..ddbde9e73142 100644 --- a/www/chromium/files/patch-third__party_protobuf_proto__library.gni +++ b/www/chromium/files/patch-third__party_protobuf_proto__library.gni @@ -1,19 +1,19 @@ ---- third_party/protobuf/proto_library.gni.orig 2026-03-13 06:02:14 UTC +--- third_party/protobuf/proto_library.gni.orig 2026-08-31 10:59:09 UTC +++ third_party/protobuf/proto_library.gni -@@ -259,7 +259,15 @@ _protoc_gen_ts_runtime_deps = [ +@@ -269,7 +269,15 @@ _protoc_gen_ts_runtime_deps = [ # When use_remoteexec=true, node actions may run on remote # Linux worker. So it should include linux node binary in inputs. -if (is_linux || is_chromeos || use_remoteexec) { +if (is_openbsd) { + _protoc_gen_ts_runtime_deps += + [ "//third_party/node/openbsd/node-openbsd/bin/node" ] +} +if (is_freebsd) { + _protoc_gen_ts_runtime_deps += + [ "//third_party/node/freebsd/node-freebsd/bin/node" ] +} +if (!is_bsd && (is_linux || is_chromeos || use_remoteexec)) { _protoc_gen_ts_runtime_deps += [ "//third_party/node/linux/node-linux-x64/bin/node" ] } diff --git a/www/chromium/files/patch-third__party_rust_qr__code_v2_BUILD.gn b/www/chromium/files/patch-third__party_rust_qr__code_v2_BUILD.gn index 7d8bb85efdc4..4798d5d7b6c3 100644 --- a/www/chromium/files/patch-third__party_rust_qr__code_v2_BUILD.gn +++ b/www/chromium/files/patch-third__party_rust_qr__code_v2_BUILD.gn @@ -1,13 +1,13 @@ ---- third_party/rust/qr_code/v2/BUILD.gn.orig 2025-09-06 10:01:20 UTC +--- third_party/rust/qr_code/v2/BUILD.gn.orig 2026-08-31 10:59:09 UTC +++ third_party/rust/qr_code/v2/BUILD.gn -@@ -40,6 +40,10 @@ cargo_crate("lib") { +@@ -44,6 +44,10 @@ cargo_crate("lib") { cargo_pkg_repository = "https://github.com/RCasatta/qr_code" cargo_pkg_version = "2.0.0" + rustflags = [ + "--cap-lints=allow", + ] + allow_unsafe = false ##################################################################### diff --git a/www/chromium/files/patch-third__party_sqlite_src_amalgamation__dev_sqlite3.c b/www/chromium/files/patch-third__party_sqlite_src_amalgamation__dev_sqlite3.c index 01613d51fcdc..942041a2490a 100644 --- a/www/chromium/files/patch-third__party_sqlite_src_amalgamation__dev_sqlite3.c +++ b/www/chromium/files/patch-third__party_sqlite_src_amalgamation__dev_sqlite3.c @@ -1,11 +1,11 @@ ---- third_party/sqlite/src/amalgamation_dev/sqlite3.c.orig 2026-07-01 06:24:19 UTC +--- third_party/sqlite/src/amalgamation_dev/sqlite3.c.orig 2026-08-31 10:59:09 UTC +++ third_party/sqlite/src/amalgamation_dev/sqlite3.c -@@ -15161,7 +15161,7 @@ struct fts5_api { +@@ -15172,7 +15172,7 @@ struct fts5_api { ** But _XOPEN_SOURCE define causes problems for Mac OS X, so omit ** it. */ -#if !defined(_XOPEN_SOURCE) && !defined(__DARWIN__) && !defined(__APPLE__) +#if !defined(_XOPEN_SOURCE) && !defined(__DARWIN__) && !defined(__APPLE__) && !defined(__FreeBSD__) # define _XOPEN_SOURCE 600 #endif diff --git a/www/chromium/files/patch-third__party_sqlite_src_amalgamation_sqlite3.c b/www/chromium/files/patch-third__party_sqlite_src_amalgamation_sqlite3.c index 810564424bd7..a39f0d8be9e5 100644 --- a/www/chromium/files/patch-third__party_sqlite_src_amalgamation_sqlite3.c +++ b/www/chromium/files/patch-third__party_sqlite_src_amalgamation_sqlite3.c @@ -1,32 +1,32 @@ ---- third_party/sqlite/src/amalgamation/sqlite3.c.orig 2026-07-01 06:24:19 UTC +--- third_party/sqlite/src/amalgamation/sqlite3.c.orig 2026-08-31 10:59:09 UTC +++ third_party/sqlite/src/amalgamation/sqlite3.c -@@ -15161,7 +15161,7 @@ struct fts5_api { +@@ -15172,7 +15172,7 @@ struct fts5_api { ** But _XOPEN_SOURCE define causes problems for Mac OS X, so omit ** it. */ -#if !defined(_XOPEN_SOURCE) && !defined(__DARWIN__) && !defined(__APPLE__) +#if !defined(_XOPEN_SOURCE) && !defined(__DARWIN__) && !defined(__APPLE__) && !defined(__FreeBSD__) # define _XOPEN_SOURCE 600 #endif -@@ -47271,7 +47271,12 @@ static int unixRandomness(sqlite3_vfs *NotUsed, int nB +@@ -47290,7 +47290,12 @@ static int unixRandomness(sqlite3_vfs *NotUsed, int nB memset(zBuf, 0, nBuf); randomnessPid = osGetpid(0); #if !defined(SQLITE_TEST) && !defined(SQLITE_OMIT_RANDOMNESS) +#if defined(__OpenBSD__) { + arc4random_buf(zBuf, nBuf); + } +#else + { int fd, got; fd = robust_open("/dev/urandom", O_RDONLY, 0); if( fd<0 ){ -@@ -47286,6 +47291,7 @@ static int unixRandomness(sqlite3_vfs *NotUsed, int nB +@@ -47305,6 +47310,7 @@ static int unixRandomness(sqlite3_vfs *NotUsed, int nB robust_close(0, fd, __LINE__); } } +#endif #endif return nBuf; } diff --git a/www/chromium/files/patch-third__party_vulkan-loader_src_loader_vk__loader__platform.h b/www/chromium/files/patch-third__party_vulkan-loader_src_loader_vk__loader__platform.h index 80ce0228d7f1..aa5bb49fe02f 100644 --- a/www/chromium/files/patch-third__party_vulkan-loader_src_loader_vk__loader__platform.h +++ b/www/chromium/files/patch-third__party_vulkan-loader_src_loader_vk__loader__platform.h @@ -1,19 +1,19 @@ ---- third_party/vulkan-loader/src/loader/vk_loader_platform.h.orig 2025-10-02 04:28:32 UTC +--- third_party/vulkan-loader/src/loader/vk_loader_platform.h.orig 2026-08-31 10:59:09 UTC +++ third_party/vulkan-loader/src/loader/vk_loader_platform.h -@@ -357,7 +357,15 @@ static inline char *loader_platform_executable_path(ch +@@ -360,7 +360,15 @@ static inline char *loader_platform_executable_path(ch return buffer; } -#elif defined(__Fuchsia__) || defined(__OpenBSD__) +#elif defined(__OpenBSD__) +static inline char *loader_platform_executable_path(char *buffer, size_t size) { + if ((buffer = getenv("CHROME_EXE_PATH")) != NULL) + return buffer; + else + buffer = "/usr/local/chrome/chrome"; + return buffer; +} +#elif defined(__Fuchsia__) static inline char *loader_platform_executable_path(char *buffer, size_t size) { return NULL; } #elif defined(__QNX__) diff --git a/www/chromium/files/patch-third__party_webrtc_BUILD.gn b/www/chromium/files/patch-third__party_webrtc_BUILD.gn index 39a3a4994524..634f337581f9 100644 --- a/www/chromium/files/patch-third__party_webrtc_BUILD.gn +++ b/www/chromium/files/patch-third__party_webrtc_BUILD.gn @@ -1,12 +1,12 @@ ---- third_party/webrtc/BUILD.gn.orig 2026-08-12 09:02:10 UTC +--- third_party/webrtc/BUILD.gn.orig 2026-08-31 10:59:09 UTC +++ third_party/webrtc/BUILD.gn -@@ -256,6 +256,9 @@ config("common_inherited_config") { +@@ -264,6 +264,9 @@ config("common_inherited_config") { if (is_linux || is_chromeos) { defines += [ "WEBRTC_LINUX" ] } + if (is_bsd) { + defines += [ "WEBRTC_BSD" ] + } if (is_mac) { defines += [ "WEBRTC_MAC" ] } diff --git a/www/chromium/files/patch-third__party_webrtc_modules_desktop__capture_BUILD.gn b/www/chromium/files/patch-third__party_webrtc_modules_desktop__capture_BUILD.gn index 5b7c87ee0976..31785f6f160d 100644 --- a/www/chromium/files/patch-third__party_webrtc_modules_desktop__capture_BUILD.gn +++ b/www/chromium/files/patch-third__party_webrtc_modules_desktop__capture_BUILD.gn @@ -1,11 +1,11 @@ ---- third_party/webrtc/modules/desktop_capture/BUILD.gn.orig 2026-08-12 09:02:10 UTC +--- third_party/webrtc/modules/desktop_capture/BUILD.gn.orig 2026-08-31 10:59:09 UTC +++ third_party/webrtc/modules/desktop_capture/BUILD.gn -@@ -712,6 +712,8 @@ rtc_library("desktop_capture") { +@@ -731,6 +731,8 @@ rtc_library("desktop_capture") { "Xrender", "Xtst", + "X11-xcb", + "xcb-shm" ] } diff --git a/www/chromium/files/patch-third__party_webrtc_rtc__base_network.cc b/www/chromium/files/patch-third__party_webrtc_rtc__base_network.cc index 2560bafc8531..8767036339ea 100644 --- a/www/chromium/files/patch-third__party_webrtc_rtc__base_network.cc +++ b/www/chromium/files/patch-third__party_webrtc_rtc__base_network.cc @@ -1,15 +1,15 @@ ---- third_party/webrtc/rtc_base/network.cc.orig 2026-03-13 06:02:14 UTC +--- third_party/webrtc/rtc_base/network.cc.orig 2026-08-31 10:59:09 UTC +++ third_party/webrtc/rtc_base/network.cc -@@ -310,7 +310,12 @@ AdapterType GetAdapterTypeFromName(absl::string_view n +@@ -314,7 +314,12 @@ AdapterType GetAdapterTypeFromName(absl::string_view n } #endif +#if defined(WEBRTC_BSD) + // Treat all other network interface names as ethernet on BSD + return webrtc::ADAPTER_TYPE_ETHERNET; +#else return ADAPTER_TYPE_UNKNOWN; +#endif } NetworkManager::EnumerationPermission NetworkManager::enumeration_permission() diff --git a/www/chromium/files/patch-third__party_widevine_cdm_widevine.gni b/www/chromium/files/patch-third__party_widevine_cdm_widevine.gni index ab8591177a1c..47c1486923f9 100644 --- a/www/chromium/files/patch-third__party_widevine_cdm_widevine.gni +++ b/www/chromium/files/patch-third__party_widevine_cdm_widevine.gni @@ -1,11 +1,11 @@ ---- third_party/widevine/cdm/widevine.gni.orig 2026-07-01 06:24:19 UTC +--- third_party/widevine/cdm/widevine.gni.orig 2026-08-31 10:59:09 UTC +++ third_party/widevine/cdm/widevine.gni -@@ -27,6 +27,8 @@ library_widevine_cdm_available = - (is_chromeos && - (target_cpu == "x64" || target_cpu == "arm" || target_cpu == "arm64")) || +@@ -26,6 +26,8 @@ if (is_chromeos && !is_chromeos_device) { + library_widevine_cdm_available = + (is_chromeos && (target_cpu == "x64" || target_cpu == "arm64")) || (target_os == "linux" && (target_cpu == "x64" || target_cpu == "arm64")) || + (target_os == "openbsd" && target_cpu == "x64") || + (target_os == "freebsd" && target_cpu == "x64") || (target_os == "mac" && (target_cpu == "x64" || target_cpu == "arm64")) || (target_os == "win" && (target_cpu == "x86" || target_cpu == "x64" || target_cpu == "arm64")) diff --git a/www/chromium/files/patch-tools_json__schema__compiler_feature__compiler.py b/www/chromium/files/patch-tools_json__schema__compiler_feature__compiler.py index 965283bdef72..b3452ffee297 100644 --- a/www/chromium/files/patch-tools_json__schema__compiler_feature__compiler.py +++ b/www/chromium/files/patch-tools_json__schema__compiler_feature__compiler.py @@ -1,11 +1,11 @@ ---- tools/json_schema_compiler/feature_compiler.py.orig 2025-09-06 10:01:20 UTC +--- tools/json_schema_compiler/feature_compiler.py.orig 2026-08-31 10:59:09 UTC +++ tools/json_schema_compiler/feature_compiler.py -@@ -289,6 +289,8 @@ FEATURE_GRAMMAR = ({ +@@ -292,6 +292,8 @@ FEATURE_GRAMMAR = ({ 'linux': 'Feature::LINUX_PLATFORM', 'mac': 'Feature::MACOSX_PLATFORM', 'win': 'Feature::WIN_PLATFORM', + 'openbsd': 'Feature::LINUX_PLATFORM', + 'freebsd': 'Feature::LINUX_PLATFORM', } } }, diff --git a/www/chromium/files/patch-tools_metrics_BUILD.gn b/www/chromium/files/patch-tools_metrics_BUILD.gn deleted file mode 100644 index c49847904d80..000000000000 --- a/www/chromium/files/patch-tools_metrics_BUILD.gn +++ /dev/null @@ -1,19 +0,0 @@ ---- tools/metrics/BUILD.gn.orig 2026-08-12 09:02:10 UTC -+++ tools/metrics/BUILD.gn -@@ -41,11 +41,11 @@ group("metrics_metadata") { - ] - - # Only include histograms_xml if we have access to dirmd data, which -- # is used to populate ownership information. This is only set to false -- # for non-git checkouts. -- # TODO(crbug.com/329080012): Remove this once dirmd works in non-git -- # checkouts. -- if (generate_location_tags) { -+ # is used to populate ownership information. This is disabled -+ # for non-git checkouts, as dirmd doesn't work on non-git checkout. -+ # TODO(crbug.com/329080012): Remove this condition once dirmd works -+ # in non-git checkouts. -+ if (path_exists("//.git")) { - deps += [ ":histograms_xml" ] - } - } diff --git a/www/chromium/files/patch-ui_accessibility_accessibility__features.cc b/www/chromium/files/patch-ui_accessibility_accessibility__features.cc index de1912c8fee9..1052e368f5e3 100644 --- a/www/chromium/files/patch-ui_accessibility_accessibility__features.cc +++ b/www/chromium/files/patch-ui_accessibility_accessibility__features.cc @@ -1,20 +1,20 @@ ---- ui/accessibility/accessibility_features.cc.orig 2026-08-12 09:02:10 UTC +--- ui/accessibility/accessibility_features.cc.orig 2026-08-31 10:59:09 UTC +++ ui/accessibility/accessibility_features.cc -@@ -480,7 +480,7 @@ bool IsScreenAITestModeEnabled() { +@@ -498,7 +498,7 @@ bool IsScreenAITestModeEnabled() { return base::FeatureList::IsEnabled(::features::kScreenAITestMode); } -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) BASE_FEATURE(kScreenAIPartitionAllocAdvancedChecksEnabled, base::FEATURE_DISABLED_BY_DEFAULT); #endif -@@ -521,7 +521,7 @@ bool IsMacAccessibilityTextOperationEnabled() { +@@ -539,7 +539,7 @@ bool IsMacAccessibilityTextOperationEnabled() { } #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) BASE_FEATURE(kWasmTtsEngineAutoInstallDisabled, base::FEATURE_DISABLED_BY_DEFAULT); bool IsWasmTtsEngineAutoInstallDisabled() { diff --git a/www/chromium/files/patch-ui_accessibility_accessibility__features.h b/www/chromium/files/patch-ui_accessibility_accessibility__features.h index 5b383728d0c8..327eb82738fb 100644 --- a/www/chromium/files/patch-ui_accessibility_accessibility__features.h +++ b/www/chromium/files/patch-ui_accessibility_accessibility__features.h @@ -1,20 +1,20 @@ ---- ui/accessibility/accessibility_features.h.orig 2026-08-12 09:02:10 UTC +--- ui/accessibility/accessibility_features.h.orig 2026-08-31 10:59:09 UTC +++ ui/accessibility/accessibility_features.h -@@ -376,7 +376,7 @@ AX_BASE_EXPORT bool IsScreenAIOCREnabled(); +@@ -388,7 +388,7 @@ AX_BASE_EXPORT bool IsScreenAIOCREnabled(); AX_BASE_EXPORT BASE_DECLARE_FEATURE(kScreenAITestMode); AX_BASE_EXPORT bool IsScreenAITestModeEnabled(); -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Enables advanced partition allocation checks in ScreenAI service. // TODO(crbug.com/418199684): Remove when the bug is fixed. AX_BASE_EXPORT BASE_DECLARE_FEATURE( -@@ -408,7 +408,7 @@ AX_BASE_EXPORT BASE_DECLARE_FEATURE(kMacAccessibilityT +@@ -420,7 +420,7 @@ AX_BASE_EXPORT BASE_DECLARE_FEATURE(kMacAccessibilityT AX_BASE_EXPORT bool IsMacAccessibilityTextOperationEnabled(); #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) // Disable the wasm tts engine component to use dev version local extension // files. AX_BASE_EXPORT BASE_DECLARE_FEATURE(kWasmTtsEngineAutoInstallDisabled); diff --git a/www/chromium/files/patch-ui_accessibility_ax__node.cc b/www/chromium/files/patch-ui_accessibility_ax__node.cc index 591e514ab360..0dce0ecf3b51 100644 --- a/www/chromium/files/patch-ui_accessibility_ax__node.cc +++ b/www/chromium/files/patch-ui_accessibility_ax__node.cc @@ -1,20 +1,20 @@ ---- ui/accessibility/ax_node.cc.orig 2026-05-07 17:02:56 UTC +--- ui/accessibility/ax_node.cc.orig 2026-08-31 10:59:09 UTC +++ ui/accessibility/ax_node.cc -@@ -1549,7 +1549,7 @@ AXNode::GetExtraMacNodes() const { +@@ -1537,7 +1537,7 @@ AXNode::GetExtraMacNodes() const { return &table_info->extra_mac_nodes; } -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) AXNode* AXNode::GetExtraAnnouncementNode( ax::mojom::AriaNotificationPriority priority_property) const { if (!tree_->extra_announcement_nodes()) { -@@ -1577,7 +1577,7 @@ bool AXNode::IsGenerated() const { +@@ -1565,7 +1565,7 @@ bool AXNode::IsGenerated() const { GetRole() == ax::mojom::Role::kColumn || GetRole() == ax::mojom::Role::kTableHeaderContainer; DCHECK_EQ(is_generated_node, is_extra_mac_node_role); -#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) // On Linux and Windows, generated nodes are always children of the root, but // not necessarily the root tree. if (GetParent() && GetParent()->GetManager()) { diff --git a/www/chromium/files/patch-ui_accessibility_ax__node.h b/www/chromium/files/patch-ui_accessibility_ax__node.h index 6885a9e4af84..817ee8151b96 100644 --- a/www/chromium/files/patch-ui_accessibility_ax__node.h +++ b/www/chromium/files/patch-ui_accessibility_ax__node.h @@ -1,11 +1,11 @@ ---- ui/accessibility/ax_node.h.orig 2026-08-12 09:02:10 UTC +--- ui/accessibility/ax_node.h.orig 2026-08-31 10:59:09 UTC +++ ui/accessibility/ax_node.h -@@ -584,7 +584,7 @@ class AX_EXPORT AXNode final { +@@ -587,7 +587,7 @@ class AX_EXPORT AXNode final { const std::vector>* GetExtraMacNodes() const; -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) AXNode* GetExtraAnnouncementNode( ax::mojom::AriaNotificationPriority priority_property) const; #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) diff --git a/www/chromium/files/patch-ui_accessibility_ax__tree.cc b/www/chromium/files/patch-ui_accessibility_ax__tree.cc index 6a3404cbe6a3..d8a30aacd27b 100644 --- a/www/chromium/files/patch-ui_accessibility_ax__tree.cc +++ b/www/chromium/files/patch-ui_accessibility_ax__tree.cc @@ -1,56 +1,56 @@ ---- ui/accessibility/ax_tree.cc.orig 2026-06-04 10:12:25 UTC +--- ui/accessibility/ax_tree.cc.orig 2026-08-31 10:59:09 UTC +++ ui/accessibility/ax_tree.cc -@@ -699,7 +699,7 @@ struct AXTreeUpdateState { +@@ -698,7 +698,7 @@ struct AXTreeUpdateState { // (crrev.com/c/2892259). const raw_ref pending_tree_update; -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) bool should_clear_extra_announcement_nodes = false; #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) -@@ -854,7 +854,7 @@ bool AXTree::ComputeNodeIsIgnoredChanged( +@@ -853,7 +853,7 @@ bool AXTree::ComputeNodeIsIgnoredChanged( return old_node_is_ignored != new_node_is_ignored; } -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) ExtraAnnouncementNodes::ExtraAnnouncementNodes(AXNode* root) { assertive_node_ = CreateNode("assertive", root); polite_node_ = CreateNode("polite", root); -@@ -947,7 +947,7 @@ AXNode* AXTree::GetFromId(AXNodeID id) const { +@@ -930,7 +930,7 @@ AXNode* AXTree::GetFromId(AXNodeID id) const { void AXTree::Destroy() { base::ElapsedThreadTimer timer; -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) ClearExtraAnnouncementNodes(); #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) -@@ -1602,7 +1602,7 @@ bool AXTree::Unserialize(const AXTreeUpdate& update) { +@@ -1585,7 +1585,7 @@ bool AXTree::Unserialize(const AXTreeUpdate& update) { observers_.Notify(&AXTreeObserver::OnAtomicUpdateFinished, this, root_->id() != old_root_id, changes); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) if (update_state.should_clear_extra_announcement_nodes) { ClearExtraAnnouncementNodes(); } -@@ -2205,7 +2205,7 @@ void AXTree::NotifyNodeAttributesWillChange( +@@ -2188,7 +2188,7 @@ void AXTree::NotifyNodeAttributesWillChange( new_data); } -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) void AXTree::ClearExtraAnnouncementNodes() { if (!extra_announcement_nodes_) { return; -@@ -2606,7 +2606,7 @@ bool AXTree::CreateNewChildVector( +@@ -2589,7 +2589,7 @@ bool AXTree::CreateNewChildVector( AXTreeUpdateState* update_state) { DCHECK(GetTreeUpdateInProgressState()); bool success = true; -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) // If the root node has children added, clear the extra announcement nodes, // which should always have their indices as the last two children of the root // node. They will be recreated if needed, and given the correct indices. diff --git a/www/chromium/files/patch-ui_accessibility_ax__tree.h b/www/chromium/files/patch-ui_accessibility_ax__tree.h index 091de55358be..7d90729b8e50 100644 --- a/www/chromium/files/patch-ui_accessibility_ax__tree.h +++ b/www/chromium/files/patch-ui_accessibility_ax__tree.h @@ -1,29 +1,29 @@ ---- ui/accessibility/ax_tree.h.orig 2025-09-06 10:01:20 UTC +--- ui/accessibility/ax_tree.h.orig 2026-08-31 10:59:09 UTC +++ ui/accessibility/ax_tree.h -@@ -64,7 +64,7 @@ enum class AXTreeUnserializeError { +@@ -63,7 +63,7 @@ enum class AXTreeUnserializeError { }; // LINT.ThenChange(/tools/metrics/histograms/metadata/accessibility/enums.xml:AccessibilityTreeUnserializeError) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) // To support AriaNotify on older versions of ATK, we need to use the ATK // signal "Text::text-insert". This signal requires a node that is a // text type, and it needs to have aria-live properties set in order for -@@ -289,7 +289,7 @@ class AX_EXPORT AXTree { +@@ -283,7 +283,7 @@ class AX_EXPORT AXTree { void NotifyChildTreeConnectionChanged(AXNode* node, AXTree* child_tree); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) void ClearExtraAnnouncementNodes(); void CreateExtraAnnouncementNodes(); ExtraAnnouncementNodes* extra_announcement_nodes() const { -@@ -548,7 +548,7 @@ class AX_EXPORT AXTree { +@@ -542,7 +542,7 @@ class AX_EXPORT AXTree { std::unique_ptr event_data_; -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) std::unique_ptr extra_announcement_nodes_ = nullptr; #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) }; diff --git a/www/chromium/files/patch-ui_base_resource_resource__bundle.cc b/www/chromium/files/patch-ui_base_resource_resource__bundle.cc index 2dcc2e579600..97a7a82e3792 100644 --- a/www/chromium/files/patch-ui_base_resource_resource__bundle.cc +++ b/www/chromium/files/patch-ui_base_resource_resource__bundle.cc @@ -1,11 +1,11 @@ ---- ui/base/resource/resource_bundle.cc.orig 2026-08-12 09:02:10 UTC +--- ui/base/resource/resource_bundle.cc.orig 2026-08-31 10:59:09 UTC +++ ui/base/resource/resource_bundle.cc -@@ -999,7 +999,7 @@ void ResourceBundle::ReloadFonts() { +@@ -1000,7 +1000,7 @@ void ResourceBundle::ReloadFonts() { } ResourceScaleFactor ResourceBundle::GetMaxResourceScaleFactor() const { -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) return max_scale_factor_; #else return GetMaxSupportedResourceScaleFactor(); diff --git a/www/chromium/files/patch-ui_base_ui__base__features.cc b/www/chromium/files/patch-ui_base_ui__base__features.cc index 5150be92ac2c..f154e6c58b9d 100644 --- a/www/chromium/files/patch-ui_base_ui__base__features.cc +++ b/www/chromium/files/patch-ui_base_ui__base__features.cc @@ -1,29 +1,38 @@ ---- ui/base/ui_base_features.cc.orig 2026-08-12 09:02:10 UTC +--- ui/base/ui_base_features.cc.orig 2026-08-31 10:59:09 UTC +++ ui/base/ui_base_features.cc -@@ -142,7 +142,7 @@ BASE_FEATURE(kWaylandExternalBeginFrameSource, +@@ -144,7 +144,7 @@ BASE_FEATURE(kWaylandExternalBeginFrameSource, base::FEATURE_DISABLED_BY_DEFAULT); #endif // BUILDFLAG(IS_OZONE) -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) BASE_FEATURE(kGlobalShortcutsPortalPreferredTrigger, base::FEATURE_DISABLED_BY_DEFAULT); #endif -@@ -198,7 +198,7 @@ BASE_FEATURE(kUiCompositorUsesLayerLists, base::FEATUR +@@ -200,7 +200,7 @@ BASE_FEATURE(kUiCompositorUsesLayerLists, base::FEATUR // Enables the use of a touch fling curve that is based on the behavior of // native apps on Windows. BASE_FEATURE(kExperimentalFlingAnimation, -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) base::FEATURE_ENABLED_BY_DEFAULT #else base::FEATURE_DISABLED_BY_DEFAULT -@@ -293,7 +293,7 @@ bool IsForcedColorsEnabled() { +@@ -274,7 +274,7 @@ bool IsTouchTextEditingRedesignEnabled() { + // This feature enables drag and drop using touch input devices. + BASE_FEATURE(kTouchDragAndDrop, + #if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_WIN) || \ +- BUILDFLAG(IS_LINUX) ++ BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + base::FEATURE_ENABLED_BY_DEFAULT + #else + base::FEATURE_DISABLED_BY_DEFAULT +@@ -301,7 +301,7 @@ bool IsForcedColorsEnabled() { // milestones. BASE_FEATURE(kEyeDropper, #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 diff --git a/www/chromium/files/patch-ui_base_ui__base__features.h b/www/chromium/files/patch-ui_base_ui__base__features.h index c18848a7adf8..c994afafac5a 100644 --- a/www/chromium/files/patch-ui_base_ui__base__features.h +++ b/www/chromium/files/patch-ui_base_ui__base__features.h @@ -1,11 +1,11 @@ ---- ui/base/ui_base_features.h.orig 2026-08-12 09:02:10 UTC +--- ui/base/ui_base_features.h.orig 2026-08-31 10:59:09 UTC +++ ui/base/ui_base_features.h -@@ -147,7 +147,7 @@ COMPONENT_EXPORT(UI_BASE_FEATURES) +@@ -152,7 +152,7 @@ COMPONENT_EXPORT(UI_BASE_FEATURES) BASE_DECLARE_FEATURE(kWaylandExternalBeginFrameSource); #endif // BUILDFLAG(IS_OZONE) -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) COMPONENT_EXPORT(UI_BASE_FEATURES) BASE_DECLARE_FEATURE(kGlobalShortcutsPortalPreferredTrigger); #endif diff --git a/www/chromium/files/patch-ui_base_webui_web__ui__util.cc b/www/chromium/files/patch-ui_base_webui_web__ui__util.cc index 925da0b9b736..7f48ec7274e2 100644 --- a/www/chromium/files/patch-ui_base_webui_web__ui__util.cc +++ b/www/chromium/files/patch-ui_base_webui_web__ui__util.cc @@ -1,20 +1,20 @@ ---- ui/base/webui/web_ui_util.cc.orig 2026-08-12 09:02:10 UTC +--- ui/base/webui/web_ui_util.cc.orig 2026-08-31 10:59:09 UTC +++ ui/base/webui/web_ui_util.cc @@ -43,7 +43,7 @@ namespace { constexpr float kMaxScaleFactor = 1000.0f; std::string GetFontFamilyMd() { -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) return "Roboto, " + GetFontFamily(); #else return GetFontFamily(); -@@ -223,7 +223,7 @@ void AppendWebUiCssTextDefaults(std::string* html) { +@@ -227,7 +227,7 @@ void AppendWebUiCssTextDefaults(std::string* html) { std::string GetFontFamily() { std::string font_family = l10n_util::GetStringUTF8(IDS_WEB_FONT_FAMILY); -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) std::string font_name = ui::ResourceBundle::GetSharedInstance() .GetFont(ui::ResourceBundle::BaseFont) .GetFontName(); diff --git a/www/chromium/files/patch-ui_base_x_x11__drag__context.cc b/www/chromium/files/patch-ui_base_x_x11__drag__context.cc index a94d60a213f0..86f3ca855e0c 100644 --- a/www/chromium/files/patch-ui_base_x_x11__drag__context.cc +++ b/www/chromium/files/patch-ui_base_x_x11__drag__context.cc @@ -1,29 +1,29 @@ ---- ui/base/x/x11_drag_context.cc.orig 2026-05-07 17:02:56 UTC +--- ui/base/x/x11_drag_context.cc.orig 2026-08-31 10:59:09 UTC +++ ui/base/x/x11_drag_context.cc @@ -15,7 +15,7 @@ #include "ui/gfx/x/connection.h" #include "ui/gfx/x/xproto.h" -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "ui/base/clipboard/clipboard_constants.h" #include "ui/base/clipboard/clipboard_util_linux.h" #include "ui/base/x/selection_utils.h" @@ -150,7 +150,7 @@ void XDragContext::OnSelectionNotify(const x11::Select scoped_refptr data; x11::Atom type = x11::Atom::None; if (GetRawBytesOfProperty(local_window_, property, &data, &type)) { -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // If the source provided a portal key, retrieve the files now. if (target == x11::GetAtom(kMimeTypePortalFileTransfer) || target == x11::GetAtom(kMimeTypePortalFiles)) { -@@ -193,7 +193,7 @@ void XDragContext::RequestNextTargetOrComplete() { +@@ -196,7 +196,7 @@ void XDragContext::RequestNextTargetOrComplete() { } } -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) void XDragContext::OnPortalPathsExtracted(std::vector paths) { if (!paths.empty()) { auto data = base::MakeRefCounted( diff --git a/www/chromium/files/patch-ui_compositor_compositor.cc b/www/chromium/files/patch-ui_compositor_compositor.cc index c91a65d1c9b0..be0e87967ed6 100644 --- a/www/chromium/files/patch-ui_compositor_compositor.cc +++ b/www/chromium/files/patch-ui_compositor_compositor.cc @@ -1,11 +1,11 @@ ---- ui/compositor/compositor.cc.orig 2026-08-12 09:02:10 UTC +--- ui/compositor/compositor.cc.orig 2026-08-31 10:59:09 UTC +++ ui/compositor/compositor.cc -@@ -994,7 +994,7 @@ void Compositor::OnResume() { +@@ -975,7 +975,7 @@ void Compositor::OnResume() { obs.ResetIfActive(); } -#if BUILDFLAG(IS_LINUX) && BUILDFLAG(SUPPORTS_OZONE_X11) +#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && BUILDFLAG(SUPPORTS_OZONE_X11) void Compositor::OnCompleteSwapWithNewSize(const gfx::Size& size) { observer_list_.Notify( &CompositorObserver::OnCompositingCompleteSwapWithNewSize, this, size); diff --git a/www/chromium/files/patch-ui_compositor_compositor.h b/www/chromium/files/patch-ui_compositor_compositor.h index a827869dd04e..27b9526bf704 100644 --- a/www/chromium/files/patch-ui_compositor_compositor.h +++ b/www/chromium/files/patch-ui_compositor_compositor.h @@ -1,11 +1,11 @@ ---- ui/compositor/compositor.h.orig 2026-07-01 06:24:19 UTC +--- ui/compositor/compositor.h.orig 2026-08-31 10:59:09 UTC +++ ui/compositor/compositor.h -@@ -463,7 +463,7 @@ class COMPOSITOR_EXPORT Compositor +@@ -451,7 +451,7 @@ class COMPOSITOR_EXPORT Compositor // base::PowerSuspendObserver: void OnResume() override; -#if BUILDFLAG(IS_LINUX) && BUILDFLAG(SUPPORTS_OZONE_X11) +#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && BUILDFLAG(SUPPORTS_OZONE_X11) void OnCompleteSwapWithNewSize(const gfx::Size& size); #endif // BUILDFLAG(IS_LINUX) && BUILDFLAG(SUPPORTS_OZONE_X11) diff --git a/www/chromium/files/patch-ui_gfx_linux_gbm__wrapper.cc b/www/chromium/files/patch-ui_gfx_linux_gbm__wrapper.cc index f0ad1affa9d2..97545e99c7a1 100644 --- a/www/chromium/files/patch-ui_gfx_linux_gbm__wrapper.cc +++ b/www/chromium/files/patch-ui_gfx_linux_gbm__wrapper.cc @@ -1,11 +1,11 @@ ---- ui/gfx/linux/gbm_wrapper.cc.orig 2025-10-30 15:44:36 UTC +--- ui/gfx/linux/gbm_wrapper.cc.orig 2026-08-31 10:59:09 UTC +++ ui/gfx/linux/gbm_wrapper.cc -@@ -341,7 +341,7 @@ class Device final : public ui::GbmDevice { +@@ -346,7 +346,7 @@ class Device final : public ui::GbmDevice { // of 1x1 BOs which are destroyed before creating the final BO creation used // to instantiate the returned GbmBuffer. gfx::Size size_for_verification = -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) gfx::Size(1, 1); #else requested_size; diff --git a/www/chromium/files/patch-ui_gl_BUILD.gn b/www/chromium/files/patch-ui_gl_BUILD.gn index 1a9be06491d2..caabad8c7070 100644 --- a/www/chromium/files/patch-ui_gl_BUILD.gn +++ b/www/chromium/files/patch-ui_gl_BUILD.gn @@ -1,11 +1,11 @@ ---- ui/gl/BUILD.gn.orig 2026-08-12 09:02:10 UTC +--- ui/gl/BUILD.gn.orig 2026-08-31 10:59:09 UTC +++ ui/gl/BUILD.gn -@@ -429,7 +429,7 @@ component("gl") { +@@ -432,7 +432,7 @@ component("gl") { ] } - if (is_android || is_chromeos || is_linux) { + if ((is_android || is_chromeos || is_linux) && !is_bsd) { # Windows doesn't support base::FileDescriptor. # libsync isn't supported or needed on MacOSX. # Fuchsia is excluded due to a libsync dependency and because it's diff --git a/www/chromium/files/patch-ui_gl_gl__switches.cc b/www/chromium/files/patch-ui_gl_gl__switches.cc index bec240c2e4f9..3ba87b53b94d 100644 --- a/www/chromium/files/patch-ui_gl_gl__switches.cc +++ b/www/chromium/files/patch-ui_gl_gl__switches.cc @@ -1,29 +1,29 @@ ---- ui/gl/gl_switches.cc.orig 2026-08-12 09:02:10 UTC +--- ui/gl/gl_switches.cc.orig 2026-08-31 10:59:09 UTC +++ ui/gl/gl_switches.cc -@@ -16,7 +16,7 @@ +@@ -18,7 +18,7 @@ #endif #if BUILDFLAG(ENABLE_VULKAN) && \ - (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID)) + (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD)) #include #include "third_party/angle/src/gpu_info_util/SystemInfo.h" // nogncheck #endif // BUILDFLAG(ENABLE_VULKAN) && (BUILDFLAG(IS_LINUX) || -@@ -315,7 +315,7 @@ bool IsDefaultANGLEVulkan() { +@@ -341,7 +341,7 @@ bool IsDefaultANGLEVulkan() { } #endif // BUILDFLAG(IS_ANDROID) #if BUILDFLAG(ENABLE_VULKAN) && \ - (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID)) + (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD)) angle::SystemInfo system_info; { TRACE_EVENT("gpu,startup", "angle::GetSystemInfoVulkan"); -@@ -397,7 +397,7 @@ bool IsDefaultANGLEVulkan() { +@@ -423,7 +423,7 @@ bool IsDefaultANGLEVulkan() { } #endif // BUILDFLAG(IS_ANDROID) -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // AMDVLK driver is buggy, so disable Vulkan with AMDVLK for now. // crbug.com/1340081 if (active_gpu.driverId == VK_DRIVER_ID_AMD_OPEN_SOURCE) diff --git a/www/chromium/files/patch-ui_gtk_printing_print__dialog__gtk.cc b/www/chromium/files/patch-ui_gtk_printing_print__dialog__gtk.cc index 02a58f83578e..3b80a49f2158 100644 --- a/www/chromium/files/patch-ui_gtk_printing_print__dialog__gtk.cc +++ b/www/chromium/files/patch-ui_gtk_printing_print__dialog__gtk.cc @@ -1,11 +1,11 @@ ---- ui/gtk/printing/print_dialog_gtk.cc.orig 2026-02-11 09:05:39 UTC +--- ui/gtk/printing/print_dialog_gtk.cc.orig 2026-08-31 10:59:09 UTC +++ ui/gtk/printing/print_dialog_gtk.cc -@@ -464,7 +464,7 @@ void PrintDialogGtk::ShowDialog( +@@ -471,7 +471,7 @@ void PrintDialogGtk::ShowDialog( GtkPrintCapabilities cap = static_cast( GTK_PRINT_CAPABILITY_GENERATE_PDF | GTK_PRINT_CAPABILITY_PAGE_SET | GTK_PRINT_CAPABILITY_COPIES | GTK_PRINT_CAPABILITY_COLLATE | - GTK_PRINT_CAPABILITY_REVERSE); + GTK_PRINT_CAPABILITY_REVERSE | GTK_PRINT_CAPABILITY_GENERATE_PS); gtk_print_unix_dialog_set_manual_capabilities( GTK_PRINT_UNIX_DIALOG(dialog_.get()), cap); gtk_print_unix_dialog_set_embed_page_setup( diff --git a/www/chromium/files/patch-ui_ozone_platform_x11_x11__window.cc b/www/chromium/files/patch-ui_ozone_platform_x11_x11__window.cc index d351c026e335..977a35a6181e 100644 --- a/www/chromium/files/patch-ui_ozone_platform_x11_x11__window.cc +++ b/www/chromium/files/patch-ui_ozone_platform_x11_x11__window.cc @@ -1,11 +1,11 @@ ---- ui/ozone/platform/x11/x11_window.cc.orig 2026-08-12 09:02:10 UTC +--- ui/ozone/platform/x11/x11_window.cc.orig 2026-08-31 10:59:09 UTC +++ ui/ozone/platform/x11/x11_window.cc -@@ -1592,7 +1592,7 @@ void X11Window::OnXWindowStateChanged() { +@@ -1546,7 +1546,7 @@ void X11Window::OnXWindowStateChanged() { WindowTiledEdges tiled_state = GetTiledState(); if (tiled_state != tiled_state_) { tiled_state_ = tiled_state; -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) platform_window_delegate_->OnWindowTiledStateChanged(tiled_state); UpdateDecorationInsets(); #endif diff --git a/www/chromium/files/patch-ui_views_BUILD.gn b/www/chromium/files/patch-ui_views_BUILD.gn index 08824e3c5a18..6b03c325999d 100644 --- a/www/chromium/files/patch-ui_views_BUILD.gn +++ b/www/chromium/files/patch-ui_views_BUILD.gn @@ -1,10 +1,10 @@ ---- ui/views/BUILD.gn.orig 2026-08-12 09:02:10 UTC +--- ui/views/BUILD.gn.orig 2026-08-31 10:59:09 UTC +++ ui/views/BUILD.gn -@@ -897,7 +897,6 @@ component("views") { +@@ -903,7 +903,6 @@ component("views") { "windows_stationarity_monitor_aura.cc", ] deps += [ - "//components/crash/core/common:crash_key", "//ui/aura", "//ui/base/cursor/mojom:cursor_type_shared", "//ui/events", diff --git a/www/chromium/files/patch-ui_views_accessibility_view__accessibility.cc b/www/chromium/files/patch-ui_views_accessibility_view__accessibility.cc index aeb25c09847c..ab8f4d10f958 100644 --- a/www/chromium/files/patch-ui_views_accessibility_view__accessibility.cc +++ b/www/chromium/files/patch-ui_views_accessibility_view__accessibility.cc @@ -1,20 +1,20 @@ ---- ui/views/accessibility/view_accessibility.cc.orig 2026-06-04 10:12:25 UTC +--- ui/views/accessibility/view_accessibility.cc.orig 2026-08-31 10:59:09 UTC +++ ui/views/accessibility/view_accessibility.cc -@@ -36,7 +36,7 @@ +@@ -37,7 +37,7 @@ #include "ui/views/accessibility/view_ax_platform_node_delegate_win.h" #elif BUILDFLAG(IS_MAC) #include "ui/views/accessibility/view_ax_platform_node_delegate_mac.h" -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "ui/views/accessibility/view_ax_platform_node_delegate_auralinux.h" #endif -@@ -106,7 +106,7 @@ std::unique_ptr ViewAccessibility:: +@@ -107,7 +107,7 @@ std::unique_ptr ViewAccessibility:: return ViewAXPlatformNodeDelegateWin::CreatePlatformSpecific(view); #elif BUILDFLAG(IS_MAC) return ViewAXPlatformNodeDelegateMac::CreatePlatformSpecific(view); -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) return ViewAXPlatformNodeDelegateAuraLinux::CreatePlatformSpecific(view); #endif } diff --git a/www/chromium/files/patch-ui_views_controls_textfield_textfield.cc b/www/chromium/files/patch-ui_views_controls_textfield_textfield.cc index 4ba42c995c01..810488e167b8 100644 --- a/www/chromium/files/patch-ui_views_controls_textfield_textfield.cc +++ b/www/chromium/files/patch-ui_views_controls_textfield_textfield.cc @@ -1,65 +1,65 @@ ---- ui/views/controls/textfield/textfield.cc.orig 2026-08-12 09:02:10 UTC +--- ui/views/controls/textfield/textfield.cc.orig 2026-08-31 10:59:09 UTC +++ ui/views/controls/textfield/textfield.cc @@ -90,7 +90,7 @@ #include "base/win/win_util.h" #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "ui/base/ime/linux/text_edit_command_auralinux.h" #include "ui/linux/linux_ui.h" #endif @@ -186,7 +186,7 @@ bool IsControlKeyModifier(int flags) { // Control-modified key combination, but we cannot extend it to other platforms // as Control has different meanings and behaviors. // https://crrev.com/2580483002/#msg46 -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) return flags & ui::EF_CONTROL_DOWN; #else return false; @@ -826,7 +826,7 @@ bool Textfield::OnKeyPressed(const ui::KeyEvent& event return handled; } -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (!handled) { if (auto* linux_ui = ui::LinuxUi::instance()) { const auto command = @@ -1011,7 +1011,7 @@ void Textfield::AboutToRequestFocusFromTabTraversal(bo } bool Textfield::SkipDefaultKeyEventProcessing(const ui::KeyEvent& event) { -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Skip any accelerator handling that conflicts with custom keybindings. if (auto* linux_ui = ui::LinuxUi::instance()) { if (IsTextEditCommandEnabled(linux_ui->GetTextEditCommandForEvent( -@@ -2132,7 +2132,7 @@ bool Textfield::ShouldDoLearning() { +@@ -2143,7 +2143,7 @@ bool Textfield::ShouldDoLearning() { 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) // TODO(crbug.com/41452689): Implement this method to support Korean IME // reconversion feature on native text fields (e.g. find bar). bool Textfield::SetCompositionFromExistingText( -@@ -2659,7 +2659,7 @@ ui::TextEditCommand Textfield::GetCommandForKeyEvent( +@@ -2670,7 +2670,7 @@ ui::TextEditCommand Textfield::GetCommandForKeyEvent( #endif return ui::TextEditCommand::DELETE_BACKWARD; } -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Only erase by line break on Linux and ChromeOS. if (shift) { return ui::TextEditCommand::DELETE_TO_BEGINNING_OF_LINE; -@@ -2667,7 +2667,7 @@ ui::TextEditCommand Textfield::GetCommandForKeyEvent( +@@ -2678,7 +2678,7 @@ ui::TextEditCommand Textfield::GetCommandForKeyEvent( #endif return ui::TextEditCommand::DELETE_WORD_BACKWARD; case ui::VKEY_DELETE: -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Only erase by line break on Linux and ChromeOS. if (shift && control) { return ui::TextEditCommand::DELETE_TO_END_OF_LINE; diff --git a/www/chromium/files/patch-ui_views_controls_textfield_textfield.h b/www/chromium/files/patch-ui_views_controls_textfield_textfield.h index 8a6dc224de13..52de5957d4e2 100644 --- a/www/chromium/files/patch-ui_views_controls_textfield_textfield.h +++ b/www/chromium/files/patch-ui_views_controls_textfield_textfield.h @@ -1,20 +1,20 @@ ---- ui/views/controls/textfield/textfield.h.orig 2026-07-01 06:24:19 UTC +--- ui/views/controls/textfield/textfield.h.orig 2026-08-31 10:59:09 UTC +++ ui/views/controls/textfield/textfield.h @@ -52,7 +52,7 @@ #include "ui/views/view_observer.h" #include "ui/views/word_lookup_client.h" -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include #endif -@@ -497,7 +497,7 @@ class VIEWS_EXPORT Textfield : public View, +@@ -500,7 +500,7 @@ class VIEWS_EXPORT Textfield : public View, // Set whether the text should be used to improve typing suggestions. void SetShouldDoLearning(bool value) { should_do_learning_ = value; } -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) bool SetCompositionFromExistingText( const gfx::Range& range, const std::vector& ui_ime_text_spans) override; diff --git a/www/chromium/files/patch-ui_views_views__features.cc b/www/chromium/files/patch-ui_views_views__features.cc index 3084f21db066..1ac9c1c69e34 100644 --- a/www/chromium/files/patch-ui_views_views__features.cc +++ b/www/chromium/files/patch-ui_views_views__features.cc @@ -1,11 +1,11 @@ ---- ui/views/views_features.cc.orig 2026-08-12 09:02:10 UTC +--- ui/views/views_features.cc.orig 2026-08-31 10:59:09 UTC +++ ui/views/views_features.cc @@ -50,7 +50,7 @@ BASE_FEATURE(kKeyboardAccessibleTooltipInViews, base::FEATURE_ENABLED_BY_DEFAULT); - // Uses NativeViewHostAuraWithClipWindow instead of NativeViewHostAura. + // If enabled, NativeViewHost controls the layers of the native view. -#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - BASE_FEATURE(kUseNativeViewHostAuraWithClipWindow, - base::FEATURE_DISABLED_BY_DEFAULT); + BASE_FEATURE(kNativeViewHostManagesLayers, base::FEATURE_ENABLED_BY_DEFAULT); #else + BASE_FEATURE(kNativeViewHostManagesLayers, base::FEATURE_DISABLED_BY_DEFAULT); diff --git a/www/chromium/files/patch-ui_views_widget_desktop__aura_desktop__window__tree__host__platform.cc b/www/chromium/files/patch-ui_views_widget_desktop__aura_desktop__window__tree__host__platform.cc index bab3aed95c09..efcaded2fde2 100644 --- a/www/chromium/files/patch-ui_views_widget_desktop__aura_desktop__window__tree__host__platform.cc +++ b/www/chromium/files/patch-ui_views_widget_desktop__aura_desktop__window__tree__host__platform.cc @@ -1,29 +1,29 @@ ---- ui/views/widget/desktop_aura/desktop_window_tree_host_platform.cc.orig 2026-08-12 09:02:10 UTC +--- ui/views/widget/desktop_aura/desktop_window_tree_host_platform.cc.orig 2026-08-31 10:59:09 UTC +++ ui/views/widget/desktop_aura/desktop_window_tree_host_platform.cc @@ -53,7 +53,7 @@ #include "ui/wm/core/window_util.h" #include "ui/wm/public/window_move_client.h" -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "ui/views/widget/desktop_aura/desktop_drag_drop_client_ozone_linux.h" #endif -@@ -371,7 +371,7 @@ std::unique_ptr +@@ -373,7 +373,7 @@ std::unique_ptr DesktopWindowTreeHostPlatform::CreateDragDropClient() { ui::WmDragHandler* drag_handler = ui::GetWmDragHandler(*(platform_window())); std::unique_ptr drag_drop_client = -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) std::make_unique(window(), drag_handler); #else std::make_unique(window(), drag_handler); -@@ -1317,7 +1317,7 @@ bool DesktopWindowTreeHostPlatform::RotateFocusForWidg +@@ -1315,7 +1315,7 @@ bool DesktopWindowTreeHostPlatform::RotateFocusForWidg // DesktopWindowTreeHost: // Linux subclasses this host and adds some Linux specific bits. -#if !BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CHROMEOS) +#if !BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CHROMEOS) && !BUILDFLAG(IS_BSD) // static DesktopWindowTreeHost* DesktopWindowTreeHost::Create( internal::NativeWidgetDelegate* native_widget_delegate, diff --git a/www/chromium/files/patch-ui_views_widget_widget.cc b/www/chromium/files/patch-ui_views_widget_widget.cc index 21c610fa6d78..62d1035c4628 100644 --- a/www/chromium/files/patch-ui_views_widget_widget.cc +++ b/www/chromium/files/patch-ui_views_widget_widget.cc @@ -1,20 +1,20 @@ ---- ui/views/widget/widget.cc.orig 2026-08-12 09:02:10 UTC +--- ui/views/widget/widget.cc.orig 2026-08-31 10:59:09 UTC +++ ui/views/widget/widget.cc -@@ -67,7 +67,7 @@ +@@ -72,7 +72,7 @@ #include "ui/views/window/dialog_delegate.h" #include "ui/wm/core/window_properties.h" -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "ui/linux/linux_ui.h" #endif -@@ -2650,7 +2650,7 @@ const ui::NativeTheme* Widget::GetNativeTheme() const +@@ -2759,7 +2759,7 @@ const ui::NativeTheme* Widget::GetNativeTheme() const return parent_->GetNativeTheme(); } -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (auto* linux_ui_theme = ui::LinuxUiTheme::GetForWindow(GetNativeWindow())) { return linux_ui_theme->GetNativeTheme(); diff --git a/www/chromium/files/patch-ui_views_widget_widget.h b/www/chromium/files/patch-ui_views_widget_widget.h index d7bc66826346..3a7d9646db09 100644 --- a/www/chromium/files/patch-ui_views_widget_widget.h +++ b/www/chromium/files/patch-ui_views_widget_widget.h @@ -1,11 +1,11 @@ ---- ui/views/widget/widget.h.orig 2026-07-01 06:24:19 UTC +--- ui/views/widget/widget.h.orig 2026-08-31 10:59:09 UTC +++ ui/views/widget/widget.h -@@ -489,7 +489,7 @@ class VIEWS_EXPORT Widget : public internal::NativeWid +@@ -490,7 +490,7 @@ class VIEWS_EXPORT Widget : public internal::NativeWid bool dont_show_in_taskbar = false; #endif // BUILDFLAG(IS_WIN) -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Only used by X11, for root level windows. Specifies the res_name and // res_class fields, respectively, of the WM_CLASS window property. Controls // window grouping and desktop file matching in Linux window managers. diff --git a/www/chromium/files/patch-v8_BUILD.gn b/www/chromium/files/patch-v8_BUILD.gn index defbbc69ccdf..b36be019b37e 100644 --- a/www/chromium/files/patch-v8_BUILD.gn +++ b/www/chromium/files/patch-v8_BUILD.gn @@ -1,84 +1,84 @@ ---- v8/BUILD.gn.orig 2026-08-12 09:02:10 UTC +--- v8/BUILD.gn.orig 2026-08-31 10:59:09 UTC +++ v8/BUILD.gn -@@ -1052,6 +1052,8 @@ external_v8_defines = [ +@@ -1076,6 +1076,8 @@ external_v8_defines = [ "V8_TARGET_OS_MACOS", "V8_TARGET_OS_WIN", "V8_TARGET_OS_CHROMEOS", + "V8_TARGET_OS_OPENBSD", + "V8_TARGET_OS_FREEBSD", "V8_TARGET_ARCH_ARM64", "V8_TARGET_ARCH_PPC64", "V8_TARGET_ARCH_MIPS64", -@@ -1139,6 +1141,12 @@ if (target_os == "android") { +@@ -1163,6 +1165,12 @@ if (target_os == "android") { } else if (target_os == "chromeos") { enabled_external_v8_defines += [ "V8_HAVE_TARGET_OS" ] enabled_external_v8_defines += [ "V8_TARGET_OS_CHROMEOS" ] +} else if (target_os == "openbsd") { + enabled_external_v8_defines += [ "V8_HAVE_TARGET_OS" ] + enabled_external_v8_defines += [ "V8_TARGET_OS_OPENBSD" ] +} else if (target_os == "freebsd") { + enabled_external_v8_defines += [ "V8_HAVE_TARGET_OS" ] + enabled_external_v8_defines += [ "V8_TARGET_OS_FREEBSD" ] } # Some V8_TARGET_ARCH_ defines that affect Api constants (see usages of -@@ -1824,7 +1832,7 @@ config("toolchain") { +@@ -1852,7 +1860,7 @@ config("toolchain") { # don't block compiler updates in Chromium. We'll resolve these when # rolling the compiler update into V8 instead. if (!build_with_chromium && v8_current_cpu != "ppc64" && - v8_current_cpu != "s390x") { + v8_current_cpu != "s390x" && !is_bsd) { cflags += [ "-Wlifetime-safety-permissive" ] } -@@ -1927,9 +1935,6 @@ config("strict_warnings") { +@@ -1955,9 +1963,6 @@ config("strict_warnings") { cflags += [ "-Wshorten-64-to-32" ] } cflags += [ "-Wmissing-field-initializers" ] - if (v8_current_cpu != "ppc64" && v8_current_cpu != "s390x") { - cflags += [ "-Wunnecessary-virtual-specifier" ] - } } } -@@ -2856,6 +2861,12 @@ template("run_mksnapshot") { +@@ -2885,6 +2890,12 @@ template("run_mksnapshot") { if (!v8_enable_builtins_profiling && v8_enable_builtins_reordering) { args += [ "--reorder-builtins" ] } + + if (v8_current_cpu == "x86") { + args -= [ + "--abort-on-bad-builtin-profile-data", + ] + } } # This is needed to distinguish between generating code for the simulator -@@ -7321,7 +7332,7 @@ v8_component("v8_libbase") { +@@ -7369,7 +7380,7 @@ v8_component("v8_libbase") { } } - if (is_linux || is_chromeos) { + if ((is_linux || is_chromeos) && !is_bsd) { sources += [ "src/base/debug/stack_trace_posix.cc", "src/base/platform/platform-linux.cc", -@@ -7332,6 +7343,18 @@ v8_component("v8_libbase") { +@@ -7380,6 +7391,18 @@ v8_component("v8_libbase") { "dl", "rt", ] + } else if (is_openbsd) { + sources += [ + "src/base/debug/stack_trace_posix.cc", + "src/base/platform/platform-openbsd.cc", + ] + libs = [ "execinfo" ] + } else if (is_freebsd) { + sources += [ + "src/base/debug/stack_trace_posix.cc", + "src/base/platform/platform-freebsd.cc", + ] + libs = [ "execinfo" ] } else if (current_os == "aix") { sources += [ "src/base/debug/stack_trace_posix.cc", diff --git a/www/chromium/files/patch-v8_gni_v8.gni b/www/chromium/files/patch-v8_gni_v8.gni index 598da915a125..573a2f8fb4e2 100644 --- a/www/chromium/files/patch-v8_gni_v8.gni +++ b/www/chromium/files/patch-v8_gni_v8.gni @@ -1,11 +1,11 @@ ---- v8/gni/v8.gni.orig 2026-08-12 09:02:10 UTC +--- v8/gni/v8.gni.orig 2026-08-31 10:59:09 UTC +++ v8/gni/v8.gni -@@ -361,7 +361,7 @@ is_drumbrake_supported = +@@ -357,7 +357,7 @@ is_drumbrake_supported = (v8_current_cpu == "x64" || v8_current_cpu == "arm64" || v8_current_cpu == "riscv64") && (target_os == "win" || target_os == "linux" || target_os == "mac" || - target_os == "ios") + target_os == "ios" || target_os == "openbds" || target_os == "freebsd") # Turbofan is enabled by default, except in lite mode. if (v8_enable_turbofan == "") { diff --git a/www/chromium/files/patch-v8_src_api_api.cc b/www/chromium/files/patch-v8_src_api_api.cc index 30dd08aee24c..e66ae0b450d1 100644 --- a/www/chromium/files/patch-v8_src_api_api.cc +++ b/www/chromium/files/patch-v8_src_api_api.cc @@ -1,20 +1,20 @@ ---- v8/src/api/api.cc.orig 2026-08-12 09:02:10 UTC +--- v8/src/api/api.cc.orig 2026-08-31 10:59:09 UTC +++ v8/src/api/api.cc -@@ -172,7 +172,7 @@ +@@ -175,7 +175,7 @@ #include "src/strings/string-hasher-inl.h" -#if V8_OS_LINUX || V8_OS_DARWIN || V8_OS_FREEBSD +#if V8_OS_LINUX || V8_OS_DARWIN || V8_OS_FREEBSD || V8_OS_OPENBSD #include #include -@@ -6444,7 +6444,7 @@ bool v8::V8::Initialize(const int build_config) { +@@ -6468,7 +6468,7 @@ bool v8::V8::Initialize(const int build_config) { return true; } -#if V8_OS_LINUX || V8_OS_DARWIN +#if V8_OS_LINUX || V8_OS_DARWIN || V8_OS_FREEBSD || V8_OS_OPENBSD bool TryHandleWebAssemblyTrapPosix(int sig_code, siginfo_t* info, void* context) { #if V8_ENABLE_WEBASSEMBLY && V8_TRAP_HANDLER_SUPPORTED diff --git a/www/chromium/files/patch-v8_src_base_platform_platform-openbsd.cc b/www/chromium/files/patch-v8_src_base_platform_platform-openbsd.cc index f54b27c95474..40c8538e378b 100644 --- a/www/chromium/files/patch-v8_src_base_platform_platform-openbsd.cc +++ b/www/chromium/files/patch-v8_src_base_platform_platform-openbsd.cc @@ -1,28 +1,28 @@ ---- v8/src/base/platform/platform-openbsd.cc.orig 2024-07-30 11:12:21 UTC +--- v8/src/base/platform/platform-openbsd.cc.orig 2026-08-31 10:59:09 UTC +++ v8/src/base/platform/platform-openbsd.cc -@@ -6,6 +6,7 @@ - // POSIX-compatible parts, the implementation is in platform-posix.cc. - +@@ -8,6 +8,7 @@ + #include + #include // open #include +#include #include #include - #include + #include @@ -121,6 +122,17 @@ void OS::SignalCodeMovingGC() { } void OS::AdjustSchedulingParams() {} + +// static +Stack::StackSlot Stack::ObtainCurrentThreadStackStart() { + stack_t ss; + void *base; + if (pthread_stackseg_np(pthread_self(), &ss) != 0) + return nullptr; + + base = (void*)((size_t) ss.ss_sp - ss.ss_size); + return reinterpret_cast(base) + ss.ss_size; +} std::optional OS::GetFirstFreeMemoryRangeWithin( OS::Address boundary_start, OS::Address boundary_end, size_t minimum_size, diff --git a/www/chromium/files/patch-v8_src_base_platform_platform-posix.cc b/www/chromium/files/patch-v8_src_base_platform_platform-posix.cc index 4b9faa063a4a..3e357c5acd68 100644 --- a/www/chromium/files/patch-v8_src_base_platform_platform-posix.cc +++ b/www/chromium/files/patch-v8_src_base_platform_platform-posix.cc @@ -1,53 +1,93 @@ ---- v8/src/base/platform/platform-posix.cc.orig 2026-07-01 06:24:19 UTC +--- v8/src/base/platform/platform-posix.cc.orig 2026-08-31 10:59:09 UTC +++ v8/src/base/platform/platform-posix.cc @@ -78,7 +78,7 @@ #include #endif -#if V8_OS_FREEBSD || V8_OS_DARWIN || V8_OS_OPENBSD || V8_OS_SOLARIS +#if V8_OS_FREEBSD || V8_OS_DARWIN || V8_OS_BSD || V8_OS_SOLARIS #define MAP_ANONYMOUS MAP_ANON #endif @@ -359,8 +359,15 @@ void OS::SetRandomMmapSeed(int64_t seed) { } } +#if V8_OS_OPENBSD +// Allow OpenBSD's mmap to select a random address on OpenBSD // static void* OS::GetRandomMmapAddr() { + return nullptr; +} +#else +// static +void* OS::GetRandomMmapAddr() { uintptr_t raw_addr; { MutexGuard guard(rng_mutex.Pointer()); @@ -457,6 +464,7 @@ void* OS::GetRandomMmapAddr() { #endif return reinterpret_cast(raw_addr); } +#endif // TODO(bbudge) Move Cygwin and Fuchsia stuff into platform-specific files. #if !V8_OS_CYGWIN && !V8_OS_FUCHSIA @@ -772,7 +780,7 @@ void OS::DestroySharedMemoryHandle(SharedMemoryHandle #if !V8_OS_ZOS // static bool OS::HasLazyCommits() { -#if V8_OS_AIX || V8_OS_LINUX || V8_OS_DARWIN +#if V8_OS_AIX || V8_OS_LINUX || V8_OS_DARWIN || V8_OS_BSD return true; #else // TODO(bbudge) Return true for all POSIX platforms. @@ -1423,7 +1431,7 @@ void Thread::SetThreadLocal(LocalStorageKey key, void* // keep this version in POSIX as most Linux-compatible derivatives will // support it. MacOS and FreeBSD are different here. #if !defined(V8_OS_FREEBSD) && !defined(V8_OS_DARWIN) && !defined(_AIX) && \ - !defined(V8_OS_SOLARIS) + !defined(V8_OS_SOLARIS) && !defined(V8_OS_OPENBSD) namespace { #if DEBUG +@@ -1486,21 +1494,20 @@ Stack::StackSlot Stack::ObtainCurrentThreadStackStart( + #endif // V8_OS_ZOS + } + ++#endif // !defined(V8_OS_FREEBSD) && !defined(V8_OS_DARWIN) && ++ // !defined(_AIX) && !defined(V8_OS_SOLARIS) ++ + // static + Stack::StackSlot Stack::ObtainCurrentThreadStackReservedLimit() { + #if V8_OS_ZOS + return nullptr; +-#elif V8_OS_OPENBSD +- stack_t stack; +- int error = pthread_stackseg_np(pthread_self(), &stack); +- if (error) { +- DCHECK(MainThreadIsCurrentThread()); +- return nullptr; +- } +- return stack.ss_sp; + #else + pthread_attr_t attr; ++#if V8_OS_BSD ++ int error = pthread_attr_init(&attr); ++#else + int error = pthread_getattr_np(pthread_self(), &attr); ++#endif + if (error) { + DCHECK(MainThreadIsCurrentThread()); + return nullptr; +@@ -1513,10 +1520,6 @@ Stack::StackSlot Stack::ObtainCurrentThreadStackReserv + return base; + #endif // V8_OS_ZOS + } +- +-#endif // !defined(V8_OS_FREEBSD) && !defined(V8_OS_DARWIN) && +- // !defined(_AIX) && !defined(V8_OS_SOLARIS) +- + + + // static diff --git a/www/chromium/files/patch-v8_src_execution_isolate.cc b/www/chromium/files/patch-v8_src_execution_isolate.cc index ab4cb83dc98f..8853c6a70300 100644 --- a/www/chromium/files/patch-v8_src_execution_isolate.cc +++ b/www/chromium/files/patch-v8_src_execution_isolate.cc @@ -1,27 +1,27 @@ ---- v8/src/execution/isolate.cc.orig 2026-08-12 09:02:10 UTC +--- v8/src/execution/isolate.cc.orig 2026-08-31 10:59:09 UTC +++ v8/src/execution/isolate.cc -@@ -178,6 +178,10 @@ +@@ -180,6 +180,10 @@ #include "src/execution/simulator-base.h" #endif +#if defined(V8_OS_OPENBSD) +#include +#endif + extern "C" const uint8_t v8_Default_embedded_blob_code_[]; extern "C" uint32_t v8_Default_embedded_blob_code_size_; extern "C" const uint8_t v8_Default_embedded_blob_data_[]; -@@ -5738,6 +5742,13 @@ void Isolate::InitializeDefaultEmbeddedBlob() { +@@ -5792,6 +5796,13 @@ void Isolate::InitializeDefaultEmbeddedBlob() { uint32_t code_size = DefaultEmbeddedBlobCodeSize(); const uint8_t* data = DefaultEmbeddedBlobData(); uint32_t data_size = DefaultEmbeddedBlobDataSize(); + +#if defined(V8_OS_OPENBSD) && !defined(V8_TARGET_ARCH_IA32) + if (code_size > 0) { + mprotect(reinterpret_cast(const_cast(code)), + code_size, PROT_READ | PROT_EXEC); + } +#endif if (StickyEmbeddedBlobCode() != nullptr) { base::MutexGuard guard(current_embedded_blob_refcount_mutex_.Pointer()); diff --git a/www/chromium/files/patch-v8_src_flags_flags.cc b/www/chromium/files/patch-v8_src_flags_flags.cc index d8499f92936c..74c8789ef992 100644 --- a/www/chromium/files/patch-v8_src_flags_flags.cc +++ b/www/chromium/files/patch-v8_src_flags_flags.cc @@ -1,24 +1,24 @@ ---- v8/src/flags/flags.cc.orig 2026-08-12 09:02:10 UTC +--- v8/src/flags/flags.cc.orig 2026-08-31 10:59:09 UTC +++ v8/src/flags/flags.cc -@@ -17,6 +17,10 @@ - #include +@@ -19,6 +19,10 @@ #include + #include +#if V8_OS_OPENBSD +#include +#endif + #include "src/base/fpu.h" #include "src/base/hashing.h" #include "src/base/lazy-instance.h" -@@ -890,6 +894,10 @@ void FlagList::FreezeFlags() { +@@ -978,6 +982,10 @@ void FlagList::FreezeFlags() { // Note that for string flags we only protect the pointer itself, but not the // string storage. TODO(12887): Fix this. base::OS::SetDataReadOnly(&v8_flags, sizeof(v8_flags)); +#if V8_OS_OPENBSD + if (mimmutable(&v8_flags, sizeof(v8_flags)) == -1) + FATAL("unable to set immutability of v8_flags"); +#endif } // static diff --git a/www/chromium/files/patch-v8_src_sandbox_sandbox.cc b/www/chromium/files/patch-v8_src_sandbox_sandbox.cc index c43619ca7058..ed3b9dbeaf55 100644 --- a/www/chromium/files/patch-v8_src_sandbox_sandbox.cc +++ b/www/chromium/files/patch-v8_src_sandbox_sandbox.cc @@ -1,11 +1,11 @@ ---- v8/src/sandbox/sandbox.cc.orig 2026-07-01 06:24:19 UTC +--- v8/src/sandbox/sandbox.cc.orig 2026-08-31 10:59:09 UTC +++ v8/src/sandbox/sandbox.cc -@@ -82,7 +82,7 @@ static Address DetermineAddressSpaceLimit() { +@@ -273,7 +273,7 @@ static Address DetermineAddressSpaceLimit() { } #endif // V8_TARGET_ARCH_X64 -#if defined(V8_TARGET_ARCH_ARM64) && defined(V8_TARGET_OS_ANDROID) +#if defined(V8_TARGET_ARCH_ARM64) && (defined(V8_TARGET_OS_ANDROID) || defined(V8_TARGET_OS_OPENBSD)) // On Arm64 Android assume a 40-bit virtual address space (39 bits for // userspace and kernel each) as that appears to be the most common // configuration and there seems to be no easy way to retrieve the actual