diff --git a/www/chromium/Makefile b/www/chromium/Makefile index 408f97e8a1e9..9e46d0011a27 100644 --- a/www/chromium/Makefile +++ b/www/chromium/Makefile @@ -1,392 +1,392 @@ PORTNAME= chromium -PORTVERSION= 142.0.7444.175 +PORTVERSION= 143.0.7499.40 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 MAINTAINER= chromium@FreeBSD.org COMMENT= Google web browser based on WebKit WWW= https://www.chromium.org/Home LICENSE= BSD3CLAUSE LGPL21 MPL11 LICENSE_COMB= multi ONLY_FOR_ARCHS= aarch64 amd64 BUILD_DEPENDS= bash:shells/bash \ ${PYTHON_PKGNAMEPREFIX}Jinja2>0:devel/py-Jinja2@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}ply>0:devel/py-ply@${PY_FLAVOR} \ bindgen:devel/rust-bindgen-cli \ gperf:devel/gperf \ flock:sysutils/flock \ node:www/node \ rustc:lang/rust \ xcb-proto>0:x11/xcb-proto \ ${LOCALBASE}/include/linux/videodev2.h:multimedia/v4l_compat \ ${LOCALBASE}/share/usbids/usb.ids:misc/usbids \ ${PYTHON_PKGNAMEPREFIX}html5lib>0:www/py-html5lib@${PY_FLAVOR} \ ${LOCALBASE}/include/va/va.h:multimedia/libva \ ${LOCALBASE}/libdata/pkgconfig/dri.pc:graphics/mesa-dri \ ${LOCALBASE}/libdata/pkgconfig/Qt5Core.pc:devel/qt5-core \ ${LOCALBASE}/libdata/pkgconfig/Qt5Widgets.pc:x11-toolkits/qt5-widgets LIB_DEPENDS= libatk-bridge-2.0.so:accessibility/at-spi2-core \ libatspi.so:accessibility/at-spi2-core \ libspeechd.so:accessibility/speech-dispatcher \ libFLAC.so:audio/flac \ libopus.so:audio/opus \ libspeex.so:audio/speex \ libdbus-1.so:devel/dbus \ libdbus-glib-1.so:devel/dbus-glib \ libepoll-shim.so:devel/libepoll-shim \ libevent.so:devel/libevent \ libffi.so:devel/libffi \ libicuuc.so:devel/icu \ libjsoncpp.so:devel/jsoncpp \ libpci.so:devel/libpci \ libnspr4.so:devel/nspr \ libre2.so:devel/re2 \ libcairo.so:graphics/cairo \ libdrm.so:graphics/libdrm \ libexif.so:graphics/libexif \ libpng.so:graphics/png \ libwebp.so:graphics/webp \ libdav1d.so:multimedia/dav1d \ libopenh264.so:multimedia/openh264 \ libfreetype.so:print/freetype2 \ libharfbuzz.so:print/harfbuzz \ libharfbuzz-icu.so:print/harfbuzz-icu \ libgcrypt.so:security/libgcrypt \ libsecret-1.so:security/libsecret \ libnss3.so:security/nss \ libexpat.so:textproc/expat2 \ libfontconfig.so:x11-fonts/fontconfig \ libwayland-client.so:graphics/wayland \ libxkbcommon.so:x11/libxkbcommon \ libxshmfence.so:x11/libxshmfence RUN_DEPENDS= xdg-open:devel/xdg-utils \ noto-basic>0:x11-fonts/noto-basic USES= bison compiler:c++17-lang cpe desktop-file-utils gl gmake gnome \ iconv:wchar_t jpeg localbase:ldflags ninja perl5 pkgconfig \ python:build qt:5 shebangfix tar:xz xorg CPE_VENDOR= google CPE_PRODUCT= chrome USE_GL= gbm gl USE_GNOME= atk dconf gdkpixbuf glib20 gtk30 libxml2 libxslt USE_LDCONFIG= ${DATADIR} USE_PERL5= build USE_XORG= x11 xcb xcomposite xcursor xext xdamage xfixes xi \ xorgproto xrandr xrender xscrnsaver xtst USE_QT= buildtools:build SHEBANG_FILES= chrome/tools/build/linux/chrome-wrapper #buildtools/linux64/clang-format MAKE_ARGS= -C out/${BUILDTYPE} ALL_TARGET= chrome BINARY_ALIAS= python3=${PYTHON_CMD} # TODO bz@ : install libwidevinecdm.so (see third_party/widevine/cdm/BUILD.gn) # # Run "./out/${BUILDTYPE}/gn args out/${BUILDTYPE} --list" for all variables. # Some parts don't have use_system_* flag, and can be turned on/off by using # replace_gn_files.py script, some parts just turned on/off for target host # OS "target_os == is_bsd", like libusb, libpci. GN_ARGS+= clang_use_chrome_plugins=false \ enable_backup_ref_ptr_support=false \ enable_hangout_services_extension=true \ enable_remoting=false \ enable_widevine=true \ fatal_linker_warnings=false \ icu_use_data_file=false \ is_clang=true \ moc_qt5_path="${QT_TOOLDIR}/moc" \ optimize_webui=true \ toolkit_views=true \ treat_warnings_as_errors=false \ use_allocator_shim=false \ use_aura=true \ use_custom_libcxx=true \ use_custom_libunwind=true \ use_lld=true \ use_partition_alloc=true \ use_partition_alloc_as_malloc=false \ use_qt5=true \ use_sysroot=false \ use_system_freetype=false \ use_system_harfbuzz=true \ use_system_libffi=true \ use_system_libjpeg=true \ use_udev=false \ extra_cxxflags="${CXXFLAGS} -I${LOCALBASE}/include/libepoll-shim ${PINCLUDES}" \ extra_ldflags="${LDFLAGS}" \ ffmpeg_branding="${FFMPEG_BRAND}" # TODO: investigate building with these options: # use_system_minigbm GN_BOOTSTRAP_FLAGS= --no-clean --no-rebuild --skip-generate-buildfiles # FreeBSD Chromium Api Key # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys . # Note: these are for FreeBSD use ONLY. For your own distribution, # please get your own set of keys. GN_ARGS+= google_api_key="AIzaSyBsp9n41JLW8jCokwn7vhoaMejDFRd1mp8" SUB_FILES= chromium-browser.desktop chrome SUB_LIST+= COMMENT="${COMMENT}" OPTIONS_DEFINE= CODECS CUPS DEBUG DRIVER KERBEROS LTO PIPEWIRE TEST WIDEVINE OPTIONS_DEFAULT= CODECS CUPS DRIVER KERBEROS PIPEWIRE SNDIO ALSA PULSEAUDIO OPTIONS_EXCLUDE_aarch64=LTO OPTIONS_GROUP= AUDIO OPTIONS_GROUP_AUDIO= ALSA PULSEAUDIO SNDIO OPTIONS_RADIO= KERBEROS OPTIONS_RADIO_KERBEROS= HEIMDAL HEIMDAL_BASE MIT OPTIONS_SUB= yes CODECS_DESC= Compile and enable patented codecs like H.264 DRIVER_DESC= Install chromedriver HEIMDAL_BASE_DESC= Heimdal Kerberos (base) HEIMDAL_DESC= Heimdal Kerberos (security/heimdal) MIT_DESC= MIT Kerberos (security/krb5) ALSA_LIB_DEPENDS= libasound.so:audio/alsa-lib ALSA_RUN_DEPENDS= ${LOCALBASE}/lib/alsa-lib/libasound_module_pcm_oss.so:audio/alsa-plugins \ alsa-lib>=1.1.1_1:audio/alsa-lib ALSA_VARS= GN_ARGS+=use_alsa=true ALSA_VARS_OFF= GN_ARGS+=use_alsa=false CODECS_VARS= GN_ARGS+=proprietary_codecs=true \ FFMPEG_BRAND="Chrome" CODECS_VARS_OFF= GN_ARGS+=proprietary_codecs=false \ FFMPEG_BRAND="Chromium" CUPS_LIB_DEPENDS= libcups.so:print/cups CUPS_VARS= GN_ARGS+=use_cups=true CUPS_VARS_OFF= GN_ARGS+=use_cups=false DEBUG_BUILD_DEPENDS= esbuild:devel/esbuild DEBUG_VARS= BUILDTYPE=Debug \ GN_ARGS+=is_debug=true \ GN_ARGS+=is_component_build=false \ GN_ARGS+=symbol_level=1 \ GN_BOOTSTRAP_FLAGS+=--debug \ WANTSPACE="60 GB" \ WANTMEM="32 GB" DEBUG_VARS_OFF= BUILDTYPE=Release \ GN_ARGS+=blink_symbol_level=0 \ GN_ARGS+=is_debug=false \ GN_ARGS+=is_official_build=true \ GN_ARGS+=symbol_level=0 \ WANTSPACE="35 GB" \ WANTMEM="8 GB" DRIVER_MAKE_ARGS= chromedriver HEIMDAL_LIB_DEPENDS= libkrb.so.26:security/heimdal KERBEROS_VARS= GN_ARGS+=use_kerberos=true KERBEROS_VARS_OFF= GN_ARGS+=use_kerberos=false LTO_VARS= GN_ARGS+=use_thin_lto=true \ GN_ARGS+=thin_lto_enable_optimizations=true \ WANTSPACE="40 GB" \ WANTMEM="16 GB" LTO_VARS_OFF= GN_ARGS+=use_thin_lto=false MIT_LIB_DEPENDS= libkrb.so.3:security/krb5 PIPEWIRE_DESC= Screen capture via PipeWire PIPEWIRE_LIB_DEPENDS= libpipewire-0.3.so:multimedia/pipewire PIPEWIRE_VARS= GN_ARGS+=rtc_use_pipewire=true \ GN_ARGS+=rtc_link_pipewire=true PIPEWIRE_VARS_OFF= GN_ARGS+=rtc_use_pipewire=false \ GN_ARGS+=rtc_link_pipewire=false PULSEAUDIO_VARS= GN_ARGS+=use_pulseaudio=true \ PINCLUDES="-I${WRKDIR}/pulseaudio-${PULSEV}/src -DPA_MAJOR=${PULSEMV}" PULSEAUDIO_VARS_OFF= GN_ARGS+=use_pulseaudio=false SNDIO_LIB_DEPENDS= libsndio.so:audio/sndio SNDIO_VARS= GN_ARGS+=use_sndio=true SNDIO_VARS_OFF= GN_ARGS+=use_sndio=false WIDEVINE_DESC= Depend on foreign-cdm to enable playback of DRM content WIDEVINE_RUN_DEPENDS= foreign-cdm>0:www/foreign-cdm .include "Makefile.tests" TEST_DISTFILES= ${PORTNAME}-${DISTVERSION}-testdata${EXTRACT_SUFX} TEST_ALL_TARGET= ${TEST_TARGETS} .include .include # for COMPILER_VERSION .if ${PORT_OPTIONS:MHEIMDAL_BASE} && !exists(/usr/lib/libkrb5.so) IGNORE= you have selected HEIMDAL_BASE but do not have Heimdal installed in base .endif LLVM_DEFAULT= 21 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}" pre-everything:: @${ECHO_MSG} @${ECHO_MSG} "To build ${PORTNAME}, you should have at least:" @${ECHO_MSG} "- ${WANTMEM} of memory" @${ECHO_MSG} "- ${WANTSPACE} of free disk space" @${ECHO_MSG} "- 1.5 million free inodes" @${ECHO_MSG} pre-configure: # We used to remove bundled libraries to be sure that chromium uses # system libraries and not shipped ones. # cd ${WRKSRC} && ${PYTHON_CMD} \ #./build/linux/unbundle/remove_bundled_libraries.py [list of preserved] cd ${WRKSRC} && ${SETENV} ${CONFIGURE_ENV} ${PYTHON_CMD} \ ./build/linux/unbundle/replace_gn_files.py --system-libraries \ dav1d flac fontconfig harfbuzz-ng libdrm libpng \ libusb libwebp libxml libxslt openh264 opus || ${FALSE} # Chromium uses an unreleased version of FFmpeg, so configure it cd ${WRKSRC}/media/ffmpeg && \ ${PYTHON_CMD} scripts/build_ffmpeg.py freebsd ${FFMPEG_TARGET} \ --config-only --branding=${FFMPEG_BRAND} cd ${FFMPEG_BDIR} && ${GMAKE} ffversion.h ${MKDIR} ${FFMPEG_CDIR} .for _e in config.h config.asm config_components.h libavcodec libavformat libavutil -${CP} -pR ${FFMPEG_BDIR}/${_e} ${FFMPEG_CDIR} .endfor touch ${WRKDIR}/pulseaudio-${PULSEV}/src/pulse/version.h @${REINPLACE_CMD} -e 's|$${LOCALBASE}|${LOCALBASE}|;s|$${MODCLANG_VERSION}|${LLVM_DEFAULT}|' \ ${WRKSRC}/build/linux/strip_binary.gni \ ${WRKSRC}/build/rust/rust_bindgen.gni \ ${WRKSRC}/build/rust/rust_bindgen_generator.gni do-configure: @( \ echo "#ifndef GPU_WEBGPU_DAWN_COMMIT_HASH_H_" ;\ echo "#define GPU_WEBGPU_DAWN_COMMIT_HASH_H_" ;\ echo "#define DAWN_COMMIT_HASH \"$$(cat ${WRKSRC}/gpu/webgpu/DAWN_VERSION)\"" ;\ echo "#endif // GPU_WEBGPU_DAWN_COMMIT_HASH_H_" \ ) > ${WRKSRC}/gpu/webgpu/dawn_commit_hash.h # GN generator bootstrapping and generating ninja files cd ${WRKSRC} && ${SETENV} ${CONFIGURE_ENV} CC=${CC} CXX=${CXX} LD=${CXX} \ READELF=${READELF} AR=${AR} NM=${NM} ${PYTHON_CMD} \ ./tools/gn/bootstrap/bootstrap.py ${GN_BOOTSTRAP_FLAGS} cd ${WRKSRC} && ${SETENV} ${CONFIGURE_ENV} ./out/${BUILDTYPE}/gn \ gen --args='${GN_ARGS}' out/${BUILDTYPE} # Setup nodejs dependency @${MKDIR} ${WRKSRC}/third_party/node/freebsd/node-freebsd/bin ${LN} -sf ${LOCALBASE}/bin/node ${WRKSRC}/third_party/node/freebsd/node-freebsd/bin/node # Setup buildtools/freebsd @${MKDIR} ${WRKSRC}/buildtools/freebsd ${LN} -sf ${WRKSRC}/buildtools/linux64/clang-format ${WRKSRC}/buildtools/freebsd ${LN} -sf ${WRKSRC}/out/${BUILDTYPE}/gn ${WRKSRC}/buildtools/freebsd ${LN} -sf /usr/bin/strip ${WRKSRC}/buildtools/freebsd/strip do-install: @${MKDIR} ${STAGEDIR}${DATADIR} ${INSTALL_MAN} ${WRKSRC}/chrome/app/resources/manpage.1.in \ ${STAGEDIR}${PREFIX}/share/man/man1/chrome.1 @${SED} -i "" -e 's,\@\@PACKAGE\@\@,chromium,g;s,\@\@MENUNAME\@\@,Chromium Web Browser,g' \ ${STAGEDIR}${PREFIX}/share/man/man1/chrome.1 ${CP} ${WRKSRC}/chrome/app/theme/chromium/product_logo_22_mono.png ${WRKSRC}/chrome/app/theme/chromium/product_logo_22.png .for s in 22 24 48 64 128 256 @${MKDIR} ${STAGEDIR}${PREFIX}/share/icons/hicolor/${s}x${s}/apps ${INSTALL_DATA} ${WRKSRC}/chrome/app/theme/chromium/product_logo_${s}.png \ ${STAGEDIR}${PREFIX}/share/icons/hicolor/${s}x${s}/apps/chrome.png .endfor ${INSTALL_DATA} ${WRKSRC}/out/${BUILDTYPE}/*.png ${STAGEDIR}${DATADIR} ${INSTALL_DATA} ${WRKSRC}/out/${BUILDTYPE}/*.pak ${STAGEDIR}${DATADIR} .for d in protoc mksnapshot ${INSTALL_PROGRAM} ${WRKSRC}/out/${BUILDTYPE}/${d} ${STAGEDIR}${DATADIR} .endfor .for d in snapshot_blob.bin v8_context_snapshot.bin ${INSTALL_DATA} ${WRKSRC}/out/${BUILDTYPE}/${d} ${STAGEDIR}${DATADIR} .endfor ${INSTALL_PROGRAM} ${WRKSRC}/out/${BUILDTYPE}/chrome \ ${STAGEDIR}${DATADIR} cd ${WRKSRC}/out/${BUILDTYPE} && \ ${COPYTREE_SHARE} "locales resources" ${STAGEDIR}${DATADIR} @${MKDIR} ${STAGEDIR}${DESKTOPDIR} ${INSTALL_DATA} ${WRKDIR}/chromium-browser.desktop \ ${STAGEDIR}${DESKTOPDIR} ${INSTALL_SCRIPT} ${WRKDIR}/chrome ${STAGEDIR}${PREFIX}/bin ${INSTALL_SCRIPT} ${WRKSRC}/chrome/tools/build/linux/chrome-wrapper \ ${STAGEDIR}${DATADIR} # ANGLE, EGL, Vk .for f in libEGL.so libGLESv2.so libVkICD_mock_icd.so ${INSTALL_LIB} ${WRKSRC}/out/${BUILDTYPE}/${f} ${STAGEDIR}${DATADIR} .endfor ${INSTALL_LIB} ${WRKSRC}/out/${BUILDTYPE}/libvulkan.so.1 \ ${STAGEDIR}${DATADIR}/libvulkan.so .if ${BUILDTYPE} == Debug ${INSTALL_LIB} ${WRKSRC}/out/${BUILDTYPE}/libVkLayer_khronos_validation.so ${STAGEDIR}${DATADIR} .endif # SwiftShader .if ${ARCH} != aarch64 ${INSTALL_LIB} ${WRKSRC}/out/${BUILDTYPE}/libvk_swiftshader.so ${STAGEDIR}${DATADIR} ${INSTALL_DATA} ${WRKSRC}/out/${BUILDTYPE}/vk_swiftshader_icd.json ${STAGEDIR}${DATADIR} .endif post-install-DEBUG-on: ${INSTALL_LIB} ${WRKSRC}/out/${BUILDTYPE}/*.so \ ${STAGEDIR}${DATADIR} ${INSTALL_PROGRAM} ${WRKSRC}/out/${BUILDTYPE}/character_data_generator \ ${STAGEDIR}${DATADIR} post-install-DRIVER-on: ${INSTALL_PROGRAM} ${WRKSRC}/out/${BUILDTYPE}/chromedriver.unstripped \ ${STAGEDIR}${PREFIX}/bin/chromedriver do-test-TEST-on: .for t in ${TEST_TARGETS} cd ${WRKSRC}/out/${BUILDTYPE} && ${SETENV} LC_ALL=en_US.UTF-8 \ ./${t} --gtest_filter=-${EXCLUDE_${t}:ts:} || ${TRUE} .endfor .include diff --git a/www/chromium/distinfo b/www/chromium/distinfo index 07dd160c7409..71e19c826ac3 100644 --- a/www/chromium/distinfo +++ b/www/chromium/distinfo @@ -1,7 +1,7 @@ -TIMESTAMP = 1763487556 -SHA256 (chromium-142.0.7444.175-lite.tar.xz) = 619b37ab0273f72fac859fff8dd89fbf1b7ae7e7ccb8d67bc79281b24f683bc9 -SIZE (chromium-142.0.7444.175-lite.tar.xz) = 1711108684 +TIMESTAMP = 1764928176 +SHA256 (chromium-143.0.7499.40-lite.tar.xz) = c1ffa0951b98641de2718143a41e3ae13702a220da7b38be62c8eb4d94c929d2 +SIZE (chromium-143.0.7499.40-lite.tar.xz) = 1137895952 SHA256 (pulseaudio-16.1.tar.gz) = 027266c62f2a84422ac45fa721a649508f0f1628fb1fd9242315ac54ce2d7c92 SIZE (pulseaudio-16.1.tar.gz) = 2763111 -SHA256 (chromium-142.0.7444.175-testdata.tar.xz) = 0db5f8a557400dc10538f60610328c9bb636135197db75feab753a23a96aadce -SIZE (chromium-142.0.7444.175-testdata.tar.xz) = 650873 +SHA256 (chromium-143.0.7499.40-testdata.tar.xz) = a6e59013408da5614f8262603fa8e4862c9bad337fc0daec71f928847502a655 +SIZE (chromium-143.0.7499.40-testdata.tar.xz) = 1200244664 diff --git a/www/chromium/files/patch-BUILD.gn b/www/chromium/files/patch-BUILD.gn index 76160e72239c..58b7175718a4 100644 --- a/www/chromium/files/patch-BUILD.gn +++ b/www/chromium/files/patch-BUILD.gn @@ -1,98 +1,98 @@ ---- BUILD.gn.orig 2025-10-30 15:44:36 UTC +--- BUILD.gn.orig 2025-12-05 10:12:50 UTC +++ BUILD.gn -@@ -69,7 +69,7 @@ declare_args() { +@@ -68,7 +68,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) -@@ -102,7 +102,6 @@ group("gn_all") { +@@ -101,7 +101,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", -@@ -430,7 +429,7 @@ group("gn_all") { +@@ -431,7 +430,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", -@@ -596,6 +595,15 @@ group("gn_all") { +@@ -598,6 +597,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)", -@@ -644,7 +652,7 @@ group("gn_all") { +@@ -646,7 +654,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 -@@ -679,7 +687,7 @@ group("gn_all") { +@@ -681,7 +689,7 @@ group("gn_all") { ] } - if (is_mac || is_win || is_android || is_linux || is_chromeos) { + if (!is_bsd && (is_mac || is_win || is_android || is_linux || is_chromeos)) { deps += [ "//third_party/crashpad/crashpad:crashpad_tests", "//third_party/crashpad/crashpad/handler:crashpad_handler", -@@ -1077,7 +1085,7 @@ if (use_blink && !is_cronet_build) { +@@ -1072,7 +1080,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", -@@ -1230,7 +1238,7 @@ if (use_blink && !is_cronet_build) { +@@ -1225,7 +1233,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. -@@ -1244,7 +1252,7 @@ if (use_blink && !is_cronet_build) { +@@ -1239,7 +1247,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. -@@ -1541,7 +1549,7 @@ group("chromium_builder_perf") { +@@ -1536,7 +1544,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 52468e64486c..b7915e0ff11a 100644 --- a/www/chromium/files/patch-base_BUILD.gn +++ b/www/chromium/files/patch-base_BUILD.gn @@ -1,150 +1,150 @@ ---- base/BUILD.gn.orig 2025-10-30 15:44:36 UTC +--- base/BUILD.gn.orig 2025-12-05 10:12:50 UTC +++ base/BUILD.gn -@@ -1115,11 +1115,26 @@ component("base") { +@@ -1124,11 +1124,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" ] -@@ -1139,7 +1154,7 @@ component("base") { +@@ -1148,7 +1163,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" ] } -@@ -2139,6 +2154,22 @@ component("base") { +@@ -2151,6 +2166,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 += [ -@@ -2313,6 +2344,33 @@ component("base") { +@@ -2325,6 +2356,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", -@@ -2719,7 +2777,7 @@ buildflag_header("protected_memory_buildflags") { +@@ -2728,7 +2786,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" ] -@@ -3225,7 +3283,7 @@ if (is_apple) { +@@ -3234,7 +3292,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 -@@ -3923,7 +3981,7 @@ test("base_unittests") { +@@ -3941,7 +3999,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", -@@ -3947,7 +4005,7 @@ test("base_unittests") { +@@ -3965,7 +4023,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", -@@ -3958,7 +4016,7 @@ test("base_unittests") { +@@ -3976,7 +4034,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" ] } -@@ -4145,7 +4203,7 @@ test("base_unittests") { +@@ -4163,7 +4221,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_src_partition__alloc_page__allocator.h b/www/chromium/files/patch-base_allocator_partition__allocator_src_partition__alloc_page__allocator.h index 9481bd46bdc6..26454905596f 100644 --- a/www/chromium/files/patch-base_allocator_partition__allocator_src_partition__alloc_page__allocator.h +++ b/www/chromium/files/patch-base_allocator_partition__allocator_src_partition__alloc_page__allocator.h @@ -1,11 +1,11 @@ ---- base/allocator/partition_allocator/src/partition_alloc/page_allocator.h.orig 2025-09-06 10:01:20 UTC +--- base/allocator/partition_allocator/src/partition_alloc/page_allocator.h.orig 2025-12-05 10:12:50 UTC +++ base/allocator/partition_allocator/src/partition_alloc/page_allocator.h -@@ -278,7 +278,7 @@ bool DecommitAndZeroSystemPages(void* address, +@@ -284,7 +284,7 @@ bool DecommitAndZeroSystemPages(void* address, // recommitted. Do not assume that this will not change over time. constexpr PA_COMPONENT_EXPORT( PARTITION_ALLOC) bool DecommittedMemoryIsAlwaysZeroed() { -#if PA_BUILDFLAG(IS_APPLE) +#if PA_BUILDFLAG(IS_APPLE) || PA_BUILDFLAG(IS_BSD) return false; #else return true; diff --git a/www/chromium/files/patch-base_files_file__util__posix.cc b/www/chromium/files/patch-base_files_file__util__posix.cc index d491961526a1..6c03b19cbeea 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 2025-10-30 15:44:36 UTC +--- base/files/file_util_posix.cc.orig 2025-12-05 10:12:50 UTC +++ base/files/file_util_posix.cc -@@ -943,6 +943,7 @@ bool CreateNewTempDirectory(const FilePath::StringType +@@ -943,6 +943,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)) { @@ -952,8 +953,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; } @@ -971,21 +972,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_functional_unretained__traits.h b/www/chromium/files/patch-base_functional_unretained__traits.h index c8bba80c4ca7..fe4cf9a8c88e 100644 --- a/www/chromium/files/patch-base_functional_unretained__traits.h +++ b/www/chromium/files/patch-base_functional_unretained__traits.h @@ -1,11 +1,11 @@ ---- base/functional/unretained_traits.h.orig 2025-02-19 07:43:18 UTC +--- base/functional/unretained_traits.h.orig 2025-12-05 10:12:50 UTC +++ base/functional/unretained_traits.h -@@ -90,7 +90,7 @@ struct SupportsUnretainedImpl { +@@ -92,7 +92,7 @@ struct SupportsUnretainedImpl { // official builds, and then in non-test code as well. #if defined(FORCE_UNRETAINED_COMPLETENESS_CHECKS_FOR_TESTS) || \ (!defined(UNIT_TEST) && !defined(OFFICIAL_BUILD) && \ - (BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN))) + (BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD))) static_assert(v, "Argument requires unretained storage, but type is not " "fully defined. This prevents determining whether " diff --git a/www/chromium/files/patch-base_i18n_icu__util.cc b/www/chromium/files/patch-base_i18n_icu__util.cc index c9eab0a16a44..db7b79da0907 100644 --- a/www/chromium/files/patch-base_i18n_icu__util.cc +++ b/www/chromium/files/patch-base_i18n_icu__util.cc @@ -1,20 +1,20 @@ ---- base/i18n/icu_util.cc.orig 2025-08-07 06:57:29 UTC +--- base/i18n/icu_util.cc.orig 2025-12-05 10:12:50 UTC +++ base/i18n/icu_util.cc -@@ -52,7 +52,7 @@ +@@ -54,7 +54,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 -@@ -318,7 +318,7 @@ void InitializeIcuTimeZone() { +@@ -327,7 +327,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_system_sys__info.cc b/www/chromium/files/patch-base_system_sys__info.cc index 49503c2fc341..3ee988944f64 100644 --- a/www/chromium/files/patch-base_system_sys__info.cc +++ b/www/chromium/files/patch-base_system_sys__info.cc @@ -1,11 +1,11 @@ ---- base/system/sys_info.cc.orig 2025-10-02 04:28:32 UTC +--- base/system/sys_info.cc.orig 2025-12-05 10:12:50 UTC +++ base/system/sys_info.cc -@@ -222,7 +222,7 @@ std::string SysInfo::SocManufacturer() { +@@ -233,7 +233,7 @@ std::string SysInfo::SocManufacturer() { #endif void SysInfo::GetHardwareInfo(base::OnceCallback callback) { -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) constexpr base::TaskTraits kTraits = {base::MayBlock()}; #else constexpr base::TaskTraits kTraits = {}; diff --git a/www/chromium/files/patch-base_system_sys__info.h b/www/chromium/files/patch-base_system_sys__info.h index 65a57d5dd5b8..2c767b7693d0 100644 --- a/www/chromium/files/patch-base_system_sys__info.h +++ b/www/chromium/files/patch-base_system_sys__info.h @@ -1,20 +1,20 @@ ---- base/system/sys_info.h.orig 2025-10-02 04:28:32 UTC +--- base/system/sys_info.h.orig 2025-12-05 10:12:50 UTC +++ base/system/sys_info.h -@@ -355,6 +355,8 @@ class BASE_EXPORT SysInfo { +@@ -354,6 +354,8 @@ class BASE_EXPORT SysInfo { static void ResetCpuSecurityMitigationsEnabledForTesting(); #endif + static uint64_t MaxSharedMemorySize(); + private: friend class test::ScopedAmountOfPhysicalMemoryOverride; FRIEND_TEST_ALL_PREFIXES(SysInfoTest, AmountOfAvailablePhysicalMemory); -@@ -367,7 +369,7 @@ class BASE_EXPORT SysInfo { +@@ -366,7 +368,7 @@ class BASE_EXPORT SysInfo { static HardwareInfo GetHardwareInfoSync(); #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || \ - BUILDFLAG(IS_AIX) + BUILDFLAG(IS_AIX) || BUILDFLAG(IS_BSD) static ByteCount AmountOfAvailablePhysicalMemory( const SystemMemoryInfo& meminfo); #endif diff --git a/www/chromium/files/patch-base_system_sys__info__posix.cc b/www/chromium/files/patch-base_system_sys__info__posix.cc index c4e90a963746..0e8c2af90b2b 100644 --- a/www/chromium/files/patch-base_system_sys__info__posix.cc +++ b/www/chromium/files/patch-base_system_sys__info__posix.cc @@ -1,29 +1,29 @@ ---- base/system/sys_info_posix.cc.orig 2025-10-02 04:28:32 UTC +--- base/system/sys_info_posix.cc.orig 2025-12-05 10:12:50 UTC +++ base/system/sys_info_posix.cc -@@ -142,7 +142,7 @@ void GetKernelVersionNumbers(int32_t* major_version, +@@ -143,7 +143,7 @@ void GetKernelVersionNumbers(int32_t* major_version, namespace base { -#if !BUILDFLAG(IS_OPENBSD) +#if !BUILDFLAG(IS_BSD) // static int SysInfo::NumberOfProcessors() { #if BUILDFLAG(IS_MAC) -@@ -198,7 +198,7 @@ int SysInfo::NumberOfProcessors() { +@@ -199,7 +199,7 @@ int SysInfo::NumberOfProcessors() { return cached_num_cpus; } -#endif // !BUILDFLAG(IS_OPENBSD) +#endif // !BUILDFLAG(IS_BSD) // static - uint64_t SysInfo::AmountOfVirtualMemory() { -@@ -286,6 +286,8 @@ std::string SysInfo::OperatingSystemArchitecture() { + ByteCount SysInfo::AmountOfVirtualMemory() { +@@ -289,6 +289,8 @@ std::string SysInfo::OperatingSystemArchitecture() { arch = "x86"; } else if (arch == "amd64") { arch = "x86_64"; + } else if (arch == "arm64") { + arch = "aarch64"; } else if (std::string(info.sysname) == "AIX") { arch = "ppc64"; } diff --git a/www/chromium/files/patch-base_trace__event_memory__dump__manager.cc b/www/chromium/files/patch-base_trace__event_memory__dump__manager.cc index 586f720f01cb..d2992462ee77 100644 --- a/www/chromium/files/patch-base_trace__event_memory__dump__manager.cc +++ b/www/chromium/files/patch-base_trace__event_memory__dump__manager.cc @@ -1,11 +1,11 @@ ---- base/trace_event/memory_dump_manager.cc.orig 2025-03-05 08:14:56 UTC +--- base/trace_event/memory_dump_manager.cc.orig 2025-12-05 10:12:50 UTC +++ base/trace_event/memory_dump_manager.cc -@@ -78,7 +78,7 @@ const char* const MemoryDumpManager::kSystemAllocatorP +@@ -79,7 +79,7 @@ const char* const MemoryDumpManager::kSystemAllocatorP #if defined(MALLOC_MEMORY_TRACING_SUPPORTED) MallocDumpProvider::kAllocatedObjects; #else - nullptr; + ""; #endif // static diff --git a/www/chromium/files/patch-build_config_BUILDCONFIG.gn b/www/chromium/files/patch-build_config_BUILDCONFIG.gn index 68f64ffa2b14..3978e45f3758 100644 --- a/www/chromium/files/patch-build_config_BUILDCONFIG.gn +++ b/www/chromium/files/patch-build_config_BUILDCONFIG.gn @@ -1,45 +1,45 @@ ---- build/config/BUILDCONFIG.gn.orig 2025-10-02 04:28:32 UTC +--- build/config/BUILDCONFIG.gn.orig 2025-12-05 10:12:50 UTC +++ build/config/BUILDCONFIG.gn @@ -136,7 +136,8 @@ declare_args() { is_official_build = false # Set to true when compiling with the Clang compiler. - is_clang = current_os != "linux" || + is_clang = current_os != "linux" || current_os == "openbsd" || + current_os == "freebsd" || (current_cpu != "s390x" && current_cpu != "s390" && current_cpu != "ppc64" && current_cpu != "ppc" && - current_cpu != "mips" && current_cpu != "mips64" && -@@ -235,6 +236,10 @@ if (host_toolchain == "") { + current_cpu != "mips" && current_cpu != "mips64") +@@ -234,6 +235,10 @@ if (host_toolchain == "") { host_toolchain = "//build/toolchain/aix:$host_cpu" } else if (host_os == "zos") { host_toolchain = "//build/toolchain/zos:$host_cpu" + } else if (host_os == "openbsd") { + host_toolchain = "//build/toolchain/openbsd:clang_$host_cpu" + } else if (host_os == "freebsd") { + host_toolchain = "//build/toolchain/freebsd:clang_$host_cpu" } else { assert(false, "Unsupported host_os: $host_os") } -@@ -284,6 +289,8 @@ if (target_os == "android") { +@@ -283,6 +288,8 @@ if (target_os == "android") { assert( false, "emscripten is not a supported target_os. It is available only as secondary toolchain.") +} else if (target_os == "openbsd" || target_os == "freebsd") { + _default_toolchain = host_toolchain } else { assert(false, "Unsupported target_os: $target_os") } -@@ -318,7 +325,11 @@ is_android = current_os == "android" +@@ -317,7 +324,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_c++_modules.gni b/www/chromium/files/patch-build_config_c++_modules.gni index 9fbb6a920e72..823768f103fc 100644 --- a/www/chromium/files/patch-build_config_c++_modules.gni +++ b/www/chromium/files/patch-build_config_c++_modules.gni @@ -1,11 +1,11 @@ ---- build/config/c++/modules.gni.orig 2025-10-30 15:44:36 UTC +--- build/config/c++/modules.gni.orig 2025-12-05 10:12:50 UTC +++ build/config/c++/modules.gni @@ -16,7 +16,7 @@ declare_args() { # Eg. linux arm64 and windows were never supported with manual clang modules, # so they should use_autogenerated_modules = true despite not having # autogenerated modules because they're guarded by use_clang_modules. -- use_autogenerated_modules = !is_apple -+ use_autogenerated_modules = !is_apple && !is_bsd +- use_autogenerated_modules = !(is_apple && use_system_xcode) ++ use_autogenerated_modules = !(is_apple && use_system_xcode) && !is_bsd } module_platform = "${current_os}-${current_cpu}" diff --git a/www/chromium/files/patch-build_config_compiler_BUILD.gn b/www/chromium/files/patch-build_config_compiler_BUILD.gn index fda244e76cf3..519d9bd51ecf 100644 --- a/www/chromium/files/patch-build_config_compiler_BUILD.gn +++ b/www/chromium/files/patch-build_config_compiler_BUILD.gn @@ -1,121 +1,121 @@ ---- build/config/compiler/BUILD.gn.orig 2025-10-30 15:44:36 UTC +--- build/config/compiler/BUILD.gn.orig 2025-12-05 10:12:50 UTC +++ build/config/compiler/BUILD.gn -@@ -196,7 +196,7 @@ declare_args() { +@@ -201,7 +201,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 -@@ -270,7 +270,7 @@ assert(!(llvm_force_head_revision && use_remoteexec && +@@ -282,7 +282,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 --------------------------------------------------------- -@@ -288,13 +288,16 @@ config("default_include_dirs") { +@@ -300,13 +300,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 --------------------------------------------------------------------- -@@ -567,6 +570,10 @@ config("compiler") { +@@ -579,6 +582,10 @@ config("compiler") { } } + if (is_openbsd) { + ldflags += [ "-Wl,-z,wxneeded" ] + } + # Linux-specific compiler flags setup. # ------------------------------------ if (use_icf && (!is_apple || use_lld)) { -@@ -657,7 +664,7 @@ config("compiler") { +@@ -669,7 +676,7 @@ config("compiler") { ldflags += [ "-Wl,-z,keep-text-section-prefix" ] } - if (is_clang) { + if (is_clang && !is_bsd) { cflags += [ "-fcrash-diagnostics-dir=" + clang_diagnostic_dir ] if (save_reproducers_on_lld_crash && use_lld) { ldflags += [ -@@ -1315,7 +1322,7 @@ config("compiler_cpu_abi") { +@@ -1297,7 +1304,7 @@ config("compiler_cpu_abi") { # CPU architecture. We may or may not be doing a cross compile now, so for # simplicity we always explicitly set the architecture. if (current_cpu == "x64") { - if (is_clang && !is_android && !is_fuchsia && !is_chromeos_device) { + if (is_clang && !is_android && !is_fuchsia && !is_chromeos_device && !is_bsd) { cflags += [ "--target=x86_64-unknown-linux-gnu" ] ldflags += [ "--target=x86_64-unknown-linux-gnu" ] } else { -@@ -1324,7 +1331,7 @@ config("compiler_cpu_abi") { +@@ -1306,7 +1313,7 @@ config("compiler_cpu_abi") { } cflags += [ "-msse3" ] } else if (current_cpu == "x86") { - if (is_clang && !is_android && !is_chromeos_device) { + if (is_clang && !is_android && !is_chromeos_device && !Is_bsd) { cflags += [ "--target=i386-unknown-linux-gnu" ] ldflags += [ "--target=i386-unknown-linux-gnu" ] } else { -@@ -1336,7 +1343,7 @@ config("compiler_cpu_abi") { +@@ -1318,7 +1325,7 @@ config("compiler_cpu_abi") { "-msse3", ] } else if (current_cpu == "arm") { - if (is_clang && !is_android && !is_chromeos_device) { + if (is_clang && !is_android && !is_chromeos_device && !is_bsd) { cflags += [ "--target=arm-linux-gnueabihf" ] ldflags += [ "--target=arm-linux-gnueabihf" ] } -@@ -1348,7 +1355,7 @@ config("compiler_cpu_abi") { +@@ -1330,7 +1337,7 @@ config("compiler_cpu_abi") { cflags += [ "-mtune=$arm_tune" ] } } else if (current_cpu == "arm64") { - if (is_clang && !is_android && !is_fuchsia && !is_chromeos_device) { + if (is_clang && !is_android && !is_fuchsia && !is_chromeos_device && !is_bsd) { cflags += [ "--target=aarch64-linux-gnu" ] ldflags += [ "--target=aarch64-linux-gnu" ] } -@@ -1747,7 +1754,7 @@ config("compiler_deterministic") { +@@ -1735,7 +1742,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) { -@@ -2955,7 +2962,7 @@ config("afdo_optimize_size") { +@@ -2969,7 +2976,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. -@@ -2982,7 +2989,7 @@ config("afdo") { +@@ -2996,7 +3003,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 58f29aef6c5f..85ac4a648e12 100644 --- a/www/chromium/files/patch-build_config_rust.gni +++ b/www/chromium/files/patch-build_config_rust.gni @@ -1,25 +1,25 @@ ---- build/config/rust.gni.orig 2025-11-05 15:35:54 UTC +--- build/config/rust.gni.orig 2025-12-05 10:12:50 UTC +++ build/config/rust.gni @@ -62,7 +62,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. # -@@ -329,7 +330,11 @@ if (is_linux || is_chromeos) { +@@ -326,7 +327,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_linux_unbundle_icu.gn b/www/chromium/files/patch-build_linux_unbundle_icu.gn index 571e7d758fad..a3f9de02c287 100644 --- a/www/chromium/files/patch-build_linux_unbundle_icu.gn +++ b/www/chromium/files/patch-build_linux_unbundle_icu.gn @@ -1,43 +1,28 @@ ---- build/linux/unbundle/icu.gn.orig 2025-01-15 09:18:26 UTC +--- build/linux/unbundle/icu.gn.orig 2025-12-05 10:12:50 UTC +++ build/linux/unbundle/icu.gn @@ -17,6 +17,15 @@ config("icu_config") { "USING_SYSTEM_ICU=1", "ICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_STATIC", + # As of icu 73 C++ nullptr, char16_t, override, final and noexcept are used + # instead of defines. These definitions can be removed when the bundled icu + # gets updated to 73. For more details, see: + # https://unicode-org.atlassian.net/browse/ICU-21833 and + # https://github.com/unicode-org/icu/commit/28643799377ecf654564f6f31854b02788cebe33 + "U_FINAL=final", + "U_NOEXCEPT=noexcept", + "U_OVERRIDE=override", + # U_EXPORT (defined in unicode/platform.h) is used to set public visibility # on classes through the U_COMMON_API and U_I18N_API macros (among others). # When linking against the system ICU library, we want its symbols to have @@ -34,6 +43,9 @@ config("icu_config") { # to define U_IMPORT to have the same value as U_EXPORT. For more details, # please see: https://crbug.com/822820 "U_IMPORT=U_EXPORT", + + # Unbreak with icu 76 where private symbols are picked up + "U_HIDE_DRAFT_API", ] } -@@ -46,6 +58,14 @@ pkg_config("system_icuuc") { - } - - source_set("icui18n") { -+ deps = [ ":icui18n_shim" ] -+ public_configs = [ -+ ":icu_config", -+ ":system_icui18n", -+ ] -+} -+ -+source_set("icui18n_hidden_visibility") { - deps = [ ":icui18n_shim" ] - public_configs = [ - ":icu_config", diff --git a/www/chromium/files/patch-build_linux_unbundle_libpng.gn b/www/chromium/files/patch-build_linux_unbundle_libpng.gn new file mode 100644 index 000000000000..175a601f1743 --- /dev/null +++ b/www/chromium/files/patch-build_linux_unbundle_libpng.gn @@ -0,0 +1,30 @@ +--- build/linux/unbundle/libpng.gn.orig 2025-12-05 10:12:50 UTC ++++ build/linux/unbundle/libpng.gn +@@ -21,3 +21,27 @@ source_set("libpng") { + deps = [ ":libpng_shim" ] + public_configs = [ ":libpng_config" ] + } ++ ++libpng_testonly_visibility = [ ++ "//chrome/test:accessibility_live_site_tests", ++ "//chrome/test:captured_sites_interactive_tests", ++ "//chrome/test:interactive_ui_tests", ++ "//tools/imagediff", ++ ++ # Using a wildcard, to cover template-generated targets (e.g. ++ # `run_libpng_progressive_read_fuzzer` on `ios-catalyst` trybot). ++ "//testing/libfuzzer/fuzzers:*", ++ ++ # Using a wildcard, to cover template-generated targets (e.g. ++ # `//ui/gfx:gfx_unittests__library__jni_registration__native_sources` or ++ # `//ui/gfx:gfx_unittests__exec`). ++ "//ui/gfx:*", ++] ++ ++group("libpng_for_testonly") { ++ testonly = true ++ public_deps = [ ":libpng" ] ++ ++ visibility = [] ++ visibility = libpng_testonly_visibility ++} diff --git a/www/chromium/files/patch-build_rust_allocator_lib.rs b/www/chromium/files/patch-build_rust_allocator_lib.rs index 5683fb4c4512..5efad650a9b9 100644 --- a/www/chromium/files/patch-build_rust_allocator_lib.rs +++ b/www/chromium/files/patch-build_rust_allocator_lib.rs @@ -1,21 +1,15 @@ ---- build/rust/allocator/lib.rs.orig 2025-11-25 13:37:36 UTC +--- build/rust/allocator/lib.rs.orig 2025-12-06 09:30:09 UTC +++ build/rust/allocator/lib.rs -@@ -96,6 +96,18 @@ mod both_allocators { +@@ -96,6 +96,12 @@ mod both_allocators { 0 } -+ // TODO(crbug.com/422538133) Remove after rolling past -+ // https://github.com/rust-lang/rust/pull/141061 -+ #[no_mangle] -+ #[linkage = "weak"] -+ static __rust_no_alloc_shim_is_unstable: u8 = 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-chrome_app_settings__strings.grdp b/www/chromium/files/patch-chrome_app_settings__strings.grdp index 6c93f8f8346c..3ee0b5122b71 100644 --- a/www/chromium/files/patch-chrome_app_settings__strings.grdp +++ b/www/chromium/files/patch-chrome_app_settings__strings.grdp @@ -1,16 +1,16 @@ ---- chrome/app/settings_strings.grdp.orig 2025-09-06 10:01:20 UTC +--- chrome/app/settings_strings.grdp.orig 2025-12-05 10:12:50 UTC +++ chrome/app/settings_strings.grdp -@@ -240,11 +240,9 @@ +@@ -237,11 +237,9 @@ Reset to default - - + Reset to default theme - - + Customize your toolbar diff --git a/www/chromium/files/patch-chrome_browser_BUILD.gn b/www/chromium/files/patch-chrome_browser_BUILD.gn index 8380c1659228..c76333a860c0 100644 --- a/www/chromium/files/patch-chrome_browser_BUILD.gn +++ b/www/chromium/files/patch-chrome_browser_BUILD.gn @@ -1,16 +1,16 @@ ---- chrome/browser/BUILD.gn.orig 2025-10-30 15:44:36 UTC +--- chrome/browser/BUILD.gn.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/BUILD.gn -@@ -7144,6 +7144,13 @@ static_library("browser") { +@@ -7142,6 +7142,13 @@ static_library("browser") { [ "//third_party/webrtc/modules/desktop_capture:pipewire_config" ] } + if (is_bsd) { + sources -= [ + "metrics/bluetooth_metrics_provider.cc", + "metrics/bluetooth_metrics_provider.h", + ] + } + if (use_dbus) { sources += [ "dbus_memory_pressure_evaluator_linux.cc", diff --git a/www/chromium/files/patch-chrome_browser_about__flags.cc b/www/chromium/files/patch-chrome_browser_about__flags.cc index ab2281ee004f..1d9f218f5c10 100644 --- a/www/chromium/files/patch-chrome_browser_about__flags.cc +++ b/www/chromium/files/patch-chrome_browser_about__flags.cc @@ -1,403 +1,466 @@ ---- chrome/browser/about_flags.cc.orig 2025-11-07 07:17:14 UTC +--- chrome/browser/about_flags.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/about_flags.cc -@@ -334,12 +334,12 @@ +@@ -332,12 +332,12 @@ #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_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) #include "chrome/browser/contextual_cueing/contextual_cueing_features.h" // nogncheck #include "chrome/browser/enterprise/profile_management/profile_management_features.h" #include "chrome/browser/enterprise/webstore/features.h" -@@ -896,6 +896,26 @@ const FeatureEntry::FeatureVariation +@@ -866,6 +866,26 @@ const FeatureEntry::FeatureVariation std::size(kWebIdentityDigitalIdentityCredentialHighRiskDialogParam), nullptr}}; +#if BUILDFLAG(IS_BSD) +const FeatureEntry::FeatureParam kAudioBackendPulseAudio[] = { + { "audio-backend", "pulseaudio" }}; +const FeatureEntry::FeatureParam kAudioBackendSndio[] = { + { "audio-backend", "sndio" }}; +const FeatureEntry::FeatureParam kAudioBackendAlsa[] = { + { "audio-backend", "alsa" }}; +const FeatureEntry::FeatureVariation + kAudioBackendVariations[] = { + {"using PulseAudio by default if available", kAudioBackendPulseAudio, + std::size(kAudioBackendPulseAudio), + nullptr}, + {"using sndio by default if available", kAudioBackendSndio, + std::size(kAudioBackendSndio), + nullptr}, + {"using ALSA by default if available", kAudioBackendAlsa, + std::size(kAudioBackendAlsa), + nullptr}}; +#endif + const FeatureEntry::FeatureParam kClipboardMaximumAge60Seconds[] = { {"UIClipboardMaximumAge", "60"}}; const FeatureEntry::FeatureParam kClipboardMaximumAge90Seconds[] = { -@@ -1265,7 +1285,7 @@ const FeatureEntry::FeatureVariation kRemotePageMetada +@@ -1321,7 +1341,7 @@ const FeatureEntry::FeatureVariation kRemotePageMetada }; #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_WIN) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) // A limited number of combinations of the rich autocompletion params. const FeatureEntry::FeatureParam kOmniboxRichAutocompletionAggressive1[] = { -@@ -3870,7 +3890,7 @@ const FeatureEntry::FeatureVariation +@@ -3968,7 +3988,7 @@ const FeatureEntry::FeatureVariation #endif // BUILDFLAG(IS_ANDROID) #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) const flags_ui::FeatureEntry::FeatureParam kPwaNavigationCapturingDefaultOn[] = {{"link_capturing_state", "on_by_default"}}; const flags_ui::FeatureEntry::FeatureParam kPwaNavigationCapturingDefaultOff[] = -@@ -4130,7 +4150,7 @@ const FeatureEntry::FeatureVariation kSkiaGraphiteVari +@@ -3998,7 +4018,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 FeatureEntry::Choice kReplaceSyncPromosWithSignInPromosChoices[] = { + {"Default", "", ""}, + {"Disabled", switches::kDisableFeatures, +@@ -4224,7 +4244,7 @@ const FeatureEntry::FeatureVariation kSkiaGraphiteVari std::size(kSkiaGraphite_DebugLabelsEnabled), nullptr}, }; -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) const FeatureEntry::FeatureParam kTranslationAPI_SkipLanguagePackLimit[] = { {"TranslationAPIAcceptLanguagesCheck", "false"}, {"TranslationAPILimitLanguagePackCount", "false"}}; -@@ -4150,7 +4170,7 @@ const FeatureEntry::FeatureVariation kSensitiveContent +@@ -4244,7 +4264,7 @@ const FeatureEntry::FeatureVariation kSensitiveContent }; #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 kContextualCueingEnabledNoEngagementCap[] = { {"BackoffTime", "0h"}, {"BackoffMultiplierBase", "0.0"}, -@@ -4899,7 +4919,7 @@ const FeatureEntry::FeatureVariation kMobilePromoOnDes +@@ -5013,7 +5033,7 @@ const FeatureEntry::FeatureVariation kMobilePromoOnDes }; #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - const FeatureEntry::FeatureParam kNtpEnterpriseShortcutsWithFakeData[] = { - {"use_fake_data", "true"}}; - const FeatureEntry::FeatureVariation kNtpEnterpriseShortcutsVariations[] = { -@@ -5545,7 +5565,7 @@ const FeatureEntry kFeatureEntries[] = { + const FeatureEntry::FeatureParam kNtpCustomizeChromeAutoOpenOnEveryNTP[] = { + {"max_customize_chrome_auto_shown_count", "5"}, + {"max_customize_chrome_auto_shown_session_count", "5"}}; +@@ -5149,7 +5169,7 @@ const FeatureEntry::FeatureVariation kSeamlessSigninVa + nullptr}}; + #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 kProfilePickerTextVariation1[] = { + {"profile-picker-variation", "keep-work-and-life-separate"}}; + const FeatureEntry::FeatureParam kProfilePickerTextVariation2[] = { +@@ -5728,7 +5748,7 @@ const FeatureEntry kFeatureEntries[] = { }, #endif // BUILDFLAG(IS_WIN) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) { "fluent-overlay-scrollbars", flag_descriptions::kFluentOverlayScrollbarsName, -@@ -5840,7 +5860,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -6026,7 +6046,7 @@ const FeatureEntry kFeatureEntries[] = { flag_descriptions::kEnableIsolatedWebAppDevModeName, flag_descriptions::kEnableIsolatedWebAppDevModeDescription, kOsDesktop, FEATURE_VALUE_TYPE(features::kIsolatedWebAppDevMode)}, -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) {"enable-iwa-key-distribution-component", flag_descriptions::kEnableIwaKeyDistributionComponentName, flag_descriptions::kEnableIwaKeyDistributionComponentDescription, -@@ -6032,7 +6052,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -6218,7 +6238,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, -@@ -6061,6 +6081,16 @@ const FeatureEntry kFeatureEntries[] = { +@@ -6247,6 +6267,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) -@@ -6927,7 +6957,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -7117,7 +7147,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:: -@@ -7337,7 +7367,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -7531,7 +7561,7 @@ const FeatureEntry kFeatureEntries[] = { kNumSrpZpsRelatedSearches, "PowerTools")}, #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_WIN) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) {"history-embeddings", flag_descriptions::kHistoryEmbeddingsName, flag_descriptions::kHistoryEmbeddingsDescription, kOsDesktop, FEATURE_VALUE_TYPE(history_embeddings::kHistoryEmbeddings)}, -@@ -7815,7 +7845,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -7746,7 +7776,7 @@ const FeatureEntry kFeatureEntries[] = { + "NtpRealboxNext")}, + + #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, +@@ -8025,7 +8055,7 @@ const FeatureEntry kFeatureEntries[] = { FEATURE_VALUE_TYPE(printing::features::kAddPrinterViaPrintscanmgr)}, #endif // BUILDFLAG(IS_CHROMEOS) -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) {"cups-ipp-printing-backend", flag_descriptions::kCupsIppPrintingBackendName, flag_descriptions::kCupsIppPrintingBackendDescription, kOsDesktop, -@@ -8777,7 +8807,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -8963,7 +8993,7 @@ const FeatureEntry kFeatureEntries[] = { FEATURE_VALUE_TYPE(media::kGlobalMediaControlsUpdatedUI)}, #endif // !BUILDFLAG(IS_CHROMEOS) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) {"enable-network-service-sandbox", flag_descriptions::kEnableNetworkServiceSandboxName, flag_descriptions::kEnableNetworkServiceSandboxDescription, -@@ -9355,7 +9385,7 @@ const FeatureEntry kFeatureEntries[] = { - FEATURE_VALUE_TYPE(ash::features::kWallpaperGooglePhotosSharedAlbums)}, - #endif // BUILDFLAG(IS_CHROMEOS) - --#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - {"enable-get-all-screens-media", flag_descriptions::kGetAllScreensMediaName, - flag_descriptions::kGetAllScreensMediaDescription, kOsCrOS | kOsLinux, - FEATURE_VALUE_TYPE(blink::features::kGetAllScreensMedia)}, -@@ -9380,7 +9410,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -9534,7 +9564,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, -@@ -9833,7 +9863,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -9991,7 +10021,7 @@ const FeatureEntry kFeatureEntries[] = { #endif #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) {"media-session-enter-picture-in-picture", flag_descriptions::kMediaSessionEnterPictureInPictureName, flag_descriptions::kMediaSessionEnterPictureInPictureDescription, -@@ -10023,7 +10053,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -10188,7 +10218,7 @@ const FeatureEntry kFeatureEntries[] = { flag_descriptions::kReduceTransferSizeUpdatedIPCDescription, kOsAll, FEATURE_VALUE_TYPE(network::features::kReduceTransferSizeUpdatedIPC)}, -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) {"reduce-user-agent-data-linux-platform-version", flag_descriptions::kReduceUserAgentDataLinuxPlatformVersionName, flag_descriptions::kReduceUserAgentDataLinuxPlatformVersionDescription, -@@ -10495,7 +10525,7 @@ const FeatureEntry kFeatureEntries[] = { - kOsDesktop | kOsAndroid, - FEATURE_VALUE_TYPE(features::kProcessPerSiteUpToMainFrameThreshold)}, - --#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - {"camera-mic-effects", flag_descriptions::kCameraMicEffectsName, - flag_descriptions::kCameraMicEffectsDescription, - static_cast(kOsMac | kOsWin | kOsLinux), -@@ -10606,7 +10636,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -10750,7 +10780,7 @@ const FeatureEntry kFeatureEntries[] = { flag_descriptions::kRcapsDynamicProfileCountryDescription, kOsAll, FEATURE_VALUE_TYPE(switches::kDynamicProfileCountry)}, -#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, -@@ -10627,7 +10657,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -10771,7 +10801,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, -@@ -11165,7 +11195,7 @@ const FeatureEntry kFeatureEntries[] = { - kStandardBoundSessionCredentialsFederatedSessionsVariations, - "standard-device-bound-sessions-federated-sessions")}, +@@ -11285,7 +11315,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, -@@ -11325,7 +11355,7 @@ const FeatureEntry kFeatureEntries[] = { - flag_descriptions::kCanvasHibernationDescription, kOsAll, - FEATURE_VALUE_TYPE(blink::features::kCanvas2DHibernation)}, - --#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - {"sync-enable-bookmarks-in-transport-mode", - flag_descriptions::kSyncEnableBookmarksInTransportModeName, - flag_descriptions::kSyncEnableBookmarksInTransportModeDescription, -@@ -11411,7 +11441,7 @@ const FeatureEntry kFeatureEntries[] = { - "HistoryOptInEducationalTipVariations")}, - #endif // BUILDFLAG(IS_ANDROID) - --#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) -+#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) - {"supervised-user-local-web-approvals", - flag_descriptions::kSupervisedUserLocalWebApprovalsName, - flag_descriptions::kSupervisedUserLocalWebApprovalsDescription, -@@ -11616,7 +11646,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -11701,7 +11731,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, -@@ -11704,7 +11734,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -11772,7 +11802,7 @@ const FeatureEntry kFeatureEntries[] = { FEATURE_VALUE_TYPE( autofill::features::kAutofillEnableCardInfoRuntimeRetrieval)}, -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) {"translation-api", flag_descriptions::kTranslationAPIName, flag_descriptions::kTranslationAPIDescription, kOsMac | kOsWin | kOsLinux, FEATURE_WITH_PARAMS_VALUE_TYPE(blink::features::kTranslationAPI, -@@ -11738,7 +11768,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -11798,7 +11828,7 @@ const FeatureEntry kFeatureEntries[] = { FEATURE_VALUE_TYPE( password_manager::features::kPasswordFormClientsideClassifier)}, -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) {"contextual-cueing", flag_descriptions::kContextualCueingName, flag_descriptions::kContextualCueingDescription, kOsLinux | kOsMac | kOsWin, -@@ -12102,7 +12132,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -12174,7 +12204,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)}, -@@ -12138,7 +12168,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -12210,7 +12240,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, -@@ -12290,7 +12320,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -12355,7 +12385,7 @@ const FeatureEntry kFeatureEntries[] = { apps::chrome_app_deprecation::kAllowUserInstalledChromeApps)}, #endif // BUILDFLAG(IS_CHROMEOS) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) {"chrome-web-store-navigation-throttle", flag_descriptions::kChromeWebStoreNavigationThrottleName, flag_descriptions::kChromeWebStoreNavigationThrottleDescription, -@@ -12319,7 +12349,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -12384,7 +12414,7 @@ const FeatureEntry kFeatureEntries[] = { FEATURE_VALUE_TYPE(supervised_user::kSupervisedUserBlockInterstitialV3)}, #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, -@@ -12334,7 +12364,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -12399,7 +12429,7 @@ const FeatureEntry kFeatureEntries[] = { flag_descriptions::kEnableWebAppPredictableAppUpdatingDescription, kOsAll, FEATURE_VALUE_TYPE(features::kWebAppPredictableAppUpdating)}, -#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, -@@ -12607,7 +12637,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -12676,7 +12706,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)}, -@@ -12700,7 +12730,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -12766,7 +12796,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, -@@ -12824,7 +12854,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -12878,7 +12908,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, -@@ -12897,7 +12927,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -12951,7 +12981,7 @@ const FeatureEntry kFeatureEntries[] = { #endif // BUILDFLAG(ENABLE_DICE_SUPPORT) #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:: -@@ -13174,7 +13204,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -13229,7 +13259,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-ntp-enterprise-shortcuts", flag_descriptions::kEnableNtpEnterpriseShortcutsName, flag_descriptions::kEnableNtpEnterpriseShortcutsDescription, -@@ -13281,7 +13311,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -13336,7 +13366,7 @@ const FeatureEntry kFeatureEntries[] = { autofill::features::kAutofillAndPasswordsInSameSurface)}, #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, -@@ -13309,7 +13339,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -13364,7 +13394,7 @@ const FeatureEntry kFeatureEntries[] = { "EnableBlockCanvasReadback")}, #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) {"autofill-enable-ai-based-amount-extraction", flag_descriptions::kAutofillEnableAiBasedAmountExtractionName, flag_descriptions::kAutofillEnableAiBasedAmountExtractionDescription, -@@ -13354,7 +13384,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -13414,7 +13444,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, +@@ -13472,7 +13502,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)}, +@@ -13509,7 +13539,7 @@ const FeatureEntry kFeatureEntries[] = { + FEATURE_VALUE_TYPE(features::kUserValueDefaultBrowserStrings)}, + + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_CHROMEOS) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + {"read-anything-read-aloud-ts-text-segmentation", + flag_descriptions::kReadAnythingReadAloudTsTextSegmentationName, + flag_descriptions::kReadAnythingReadAloudTsTextSegmentationDescription, +@@ -13521,7 +13551,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) + {"profile-creation-decline-signin-cta-experiment", + flag_descriptions::kProfileCreationDeclineSigninCTAExperimentName, + flag_descriptions::kProfileCreationDeclineSigninCTAExperimentDescription, +@@ -13529,7 +13559,7 @@ const FeatureEntry kFeatureEntries[] = { + FEATURE_VALUE_TYPE(switches::kProfileCreationDeclineSigninCTAExperiment)}, + #endif + +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + {"show-profile-picker-to-all-users-experiment", + flag_descriptions::kShowProfilePickerToAllUsersExperimentName, + flag_descriptions::kShowProfilePickerToAllUsersExperimentDescription, +@@ -13579,7 +13609,7 @@ const FeatureEntry kFeatureEntries[] = { + FEATURE_VALUE_TYPE(features::kAndroidDesktopZoomScaling)}, + #endif + +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + {"profile-picker-text-variations", + flag_descriptions::kProfilePickerTextVariationsName, + flag_descriptions::kProfilePickerTextVariationsDescription, +@@ -13590,7 +13620,7 @@ const FeatureEntry kFeatureEntries[] = { + #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) + {"lens-overlay-optimization-filter", + flag_descriptions::kLensOverlayOptimizationFilterName, + flag_descriptions::kLensOverlayOptimizationFilterDescription, kOsDesktop, +@@ -13609,7 +13639,7 @@ const FeatureEntry kFeatureEntries[] = { + FEATURE_VALUE_TYPE(network::features::kConnectionAllowlists)}, + + #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, +@@ -13617,7 +13647,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, diff --git a/www/chromium/files/patch-chrome_browser_background_extensions_background__mode__manager.cc b/www/chromium/files/patch-chrome_browser_background_extensions_background__mode__manager.cc index a0052fdad9c9..37c78cc65c8d 100644 --- a/www/chromium/files/patch-chrome_browser_background_extensions_background__mode__manager.cc +++ b/www/chromium/files/patch-chrome_browser_background_extensions_background__mode__manager.cc @@ -1,11 +1,11 @@ ---- chrome/browser/background/extensions/background_mode_manager.cc.orig 2025-08-07 06:57:29 UTC +--- chrome/browser/background/extensions/background_mode_manager.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/background/extensions/background_mode_manager.cc -@@ -879,7 +879,7 @@ gfx::ImageSkia GetStatusTrayIcon() { +@@ -877,7 +877,7 @@ gfx::ImageSkia GetStatusTrayIcon() { } return family->CreateExact(size).AsImageSkia(); -#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) return *ui::ResourceBundle::GetSharedInstance().GetImageSkiaNamed( IDR_PRODUCT_LOGO_128); #elif BUILDFLAG(IS_MAC) diff --git a/www/chromium/files/patch-chrome_browser_background_glic_glic__status__icon.cc b/www/chromium/files/patch-chrome_browser_background_glic_glic__status__icon.cc index 8180030d053a..cbdd109ff7fd 100644 --- a/www/chromium/files/patch-chrome_browser_background_glic_glic__status__icon.cc +++ b/www/chromium/files/patch-chrome_browser_background_glic_glic__status__icon.cc @@ -1,38 +1,38 @@ ---- chrome/browser/background/glic/glic_status_icon.cc.orig 2025-10-30 15:44:36 UTC +--- chrome/browser/background/glic/glic_status_icon.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/background/glic/glic_status_icon.cc -@@ -89,7 +89,7 @@ GlicStatusIcon::GlicStatusIcon(GlicController* control +@@ -105,7 +105,7 @@ GlicStatusIcon::GlicStatusIcon(GlicController* control return; } -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Set a vector icon for proper theming on Linux. status_icon_->SetIcon( GlicVectorIconManager::GetVectorIcon(IDR_GLIC_BUTTON_VECTOR_ICON)); -@@ -144,7 +144,7 @@ GlicStatusIcon::~GlicStatusIcon() { +@@ -160,7 +160,7 @@ GlicStatusIcon::~GlicStatusIcon() { context_menu_ = nullptr; if (status_icon_) { -#if !BUILDFLAG(IS_LINUX) +#if !BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) status_icon_->RemoveObserver(this); #endif std::unique_ptr removed_icon = -@@ -258,7 +258,7 @@ void GlicStatusIcon::UpdateHotkey(const ui::Accelerato +@@ -290,7 +290,7 @@ void GlicStatusIcon::UpdateHotkey(const ui::Accelerato } void GlicStatusIcon::UpdateVisibilityOfExitInContextMenu() { -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (context_menu_) { const bool is_visible = BrowserList::GetInstance()->empty(); const std::optional index = -@@ -322,7 +322,7 @@ std::unique_ptr GlicStatusIcon::C +@@ -368,7 +368,7 @@ std::unique_ptr GlicStatusIcon::C menu->AddItem(IDC_GLIC_STATUS_ICON_MENU_SETTINGS, l10n_util::GetStringUTF16(IDS_GLIC_STATUS_ICON_MENU_SETTINGS)); -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) menu->AddSeparator(ui::NORMAL_SEPARATOR); menu->AddItem(IDC_GLIC_STATUS_ICON_MENU_EXIT, l10n_util::GetStringUTF16(IDS_GLIC_STATUS_ICON_MENU_EXIT)); diff --git a/www/chromium/files/patch-chrome_browser_browser__features.cc b/www/chromium/files/patch-chrome_browser_browser__features.cc index e4be3d63191b..6419c02869c2 100644 --- a/www/chromium/files/patch-chrome_browser_browser__features.cc +++ b/www/chromium/files/patch-chrome_browser_browser__features.cc @@ -1,29 +1,29 @@ ---- chrome/browser/browser_features.cc.orig 2025-10-30 15:44:36 UTC +--- chrome/browser/browser_features.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/browser_features.cc @@ -70,7 +70,7 @@ BASE_FEATURE(kCertVerificationNetworkTime, base::FEATU BASE_FEATURE(kClearUserDataUponProfileDestruction, base::FEATURE_ENABLED_BY_DEFAULT); -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Enables usage of os_crypt_async::SecretPortalKeyProvider. Once // `kSecretPortalKeyProviderUseForEncryption` is enabled, this flag cannot be // disabled without losing data. -@@ -85,7 +85,7 @@ BASE_FEATURE(kUseFreedesktopSecretKeyProvider, +@@ -80,7 +80,7 @@ BASE_FEATURE(kDbusSecretPortal, base::FEATURE_ENABLED_ // Destroy profiles when their last browser window is closed, instead of when // the browser exits. BASE_FEATURE(kDestroyProfileOnBrowserClose, -#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); -@@ -204,7 +204,7 @@ BASE_FEATURE(kSandboxExternalProtocolBlocked, base::FE +@@ -198,7 +198,7 @@ BASE_FEATURE(kSandboxExternalProtocolBlocked, base::FE BASE_FEATURE(kSandboxExternalProtocolBlockedWarning, base::FEATURE_ENABLED_BY_DEFAULT); -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // If true, encrypt new data with the key provided by SecretPortalKeyProvider. // Otherwise, it will only decrypt existing data. BASE_FEATURE(kSecretPortalKeyProviderUseForEncryption, diff --git a/www/chromium/files/patch-chrome_browser_browser__features.h b/www/chromium/files/patch-chrome_browser_browser__features.h index bcc6af289cc4..0726955fddbe 100644 --- a/www/chromium/files/patch-chrome_browser_browser__features.h +++ b/www/chromium/files/patch-chrome_browser_browser__features.h @@ -1,20 +1,20 @@ ---- chrome/browser/browser_features.h.orig 2025-10-30 15:44:36 UTC +--- chrome/browser/browser_features.h.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/browser_features.h @@ -41,7 +41,7 @@ BASE_DECLARE_FEATURE(kCertificateTransparencyAskBefore BASE_DECLARE_FEATURE(kCertVerificationNetworkTime); BASE_DECLARE_FEATURE(kClearUserDataUponProfileDestruction); -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) BASE_DECLARE_FEATURE(kDbusSecretPortal); - BASE_DECLARE_FEATURE(kUseFreedesktopSecretKeyProvider); #endif -@@ -92,7 +92,7 @@ BASE_DECLARE_FEATURE(kRestartNetworkServiceUnsandboxed + +@@ -89,7 +89,7 @@ BASE_DECLARE_FEATURE(kRestartNetworkServiceUnsandboxed BASE_DECLARE_FEATURE(kSandboxExternalProtocolBlocked); BASE_DECLARE_FEATURE(kSandboxExternalProtocolBlockedWarning); -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) BASE_DECLARE_FEATURE(kSecretPortalKeyProviderUseForEncryption); - BASE_DECLARE_FEATURE(kUseFreedesktopSecretKeyProviderForEncryption); #endif + 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 c5b4b7ac8ef6..c15d4567dbbd 100644 --- a/www/chromium/files/patch-chrome_browser_browser__process__impl.cc +++ b/www/chromium/files/patch-chrome_browser_browser__process__impl.cc @@ -1,47 +1,47 @@ ---- chrome/browser/browser_process_impl.cc.orig 2025-10-30 15:44:36 UTC +--- chrome/browser/browser_process_impl.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/browser_process_impl.cc -@@ -253,7 +253,7 @@ +@@ -257,7 +257,7 @@ void OnLocalStatePrefsLoaded(); #include "components/enterprise/browser/controller/chrome_browser_cloud_management_controller.h" #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "chrome/browser/browser_features.h" - #include "components/os_crypt/async/browser/fallback_linux_key_provider.h" #include "components/os_crypt/async/browser/freedesktop_secret_key_provider.h" -@@ -265,7 +265,7 @@ - #include "chrome/browser/safe_browsing/safe_browsing_service.h" - #endif - --#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - // How often to check if the persistent instance of Chrome needs to restart - // to install an update. - static const int kUpdateCheckIntervalHours = 6; -@@ -1167,7 +1167,7 @@ void BrowserProcessImpl::RegisterPrefs(PrefRegistrySim + #include "components/os_crypt/async/browser/secret_portal_key_provider.h" +@@ -1182,7 +1182,7 @@ void BrowserProcessImpl::RegisterPrefs(PrefRegistrySim GoogleUpdateSettings::GetCollectStatsConsent()); registry->RegisterBooleanPref(prefs::kDevToolsRemoteDebuggingAllowed, true); -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) os_crypt_async::SecretPortalKeyProvider::RegisterLocalPrefs(registry); #endif } -@@ -1368,7 +1368,7 @@ void BrowserProcessImpl::PreMainMessageLoopRun() { +@@ -1383,7 +1383,7 @@ void BrowserProcessImpl::PreMainMessageLoopRun() { local_state()))); #endif // BUILDFLAG(IS_WIN) -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) base::CommandLine* cmd_line = base::CommandLine::ForCurrentProcess(); - if (cmd_line->GetSwitchValueASCII(password_manager::kPasswordStore) != - "basic") { -@@ -1718,7 +1718,7 @@ void BrowserProcessImpl::Unpin() { + const auto password_store = + cmd_line->GetSwitchValueASCII(password_manager::kPasswordStore); +@@ -1404,7 +1404,7 @@ void BrowserProcessImpl::PreMainMessageLoopRun() { + password_store, l10n_util::GetStringUTF8(IDS_PRODUCT_NAME), nullptr)); + #endif // BUILDFLAG(IS_LINUX) + +-#if BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_MAC) && !BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_MAC) && !BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_BSD) + // On other POSIX systems, this is the only key provider. + providers.emplace_back( + /*precedence=*/5u, std::make_unique()); +@@ -1735,7 +1735,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_browser__process__impl.h b/www/chromium/files/patch-chrome_browser_browser__process__impl.h index 2637f2df12c3..f31aff148def 100644 --- a/www/chromium/files/patch-chrome_browser_browser__process__impl.h +++ b/www/chromium/files/patch-chrome_browser_browser__process__impl.h @@ -1,11 +1,11 @@ ---- chrome/browser/browser_process_impl.h.orig 2025-09-06 10:01:20 UTC +--- chrome/browser/browser_process_impl.h.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/browser_process_impl.h -@@ -414,7 +414,7 @@ class BrowserProcessImpl : public BrowserProcess, +@@ -413,7 +413,7 @@ class BrowserProcessImpl : public BrowserProcess, std::unique_ptr battery_metrics_; -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) base::RepeatingTimer autoupdate_timer_; // Gets called by autoupdate timer to see if browser needs restart and can be 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 4747691e1d63..aa8b7de9f41d 100644 --- a/www/chromium/files/patch-chrome_browser_chrome__browser__field__trials.cc +++ b/www/chromium/files/patch-chrome_browser_chrome__browser__field__trials.cc @@ -1,20 +1,20 @@ ---- chrome/browser/chrome_browser_field_trials.cc.orig 2025-10-30 15:44:36 UTC +--- chrome/browser/chrome_browser_field_trials.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/chrome_browser_field_trials.cc -@@ -48,7 +48,7 @@ +@@ -51,7 +51,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) -@@ -104,7 +104,7 @@ void ChromeBrowserFieldTrials::RegisterFeatureOverride +@@ -107,7 +107,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 de9856b79119..6d2c8f7dafde 100644 --- a/www/chromium/files/patch-chrome_browser_chrome__browser__interface__binders.cc +++ b/www/chromium/files/patch-chrome_browser_chrome__browser__interface__binders.cc @@ -1,29 +1,29 @@ ---- chrome/browser/chrome_browser_interface_binders.cc.orig 2025-09-06 10:01:20 UTC +--- chrome/browser/chrome_browser_interface_binders.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/chrome_browser_interface_binders.cc @@ -82,7 +82,7 @@ #endif // BUILDFLAG(ENABLE_UNHANDLED_TAP) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "chrome/browser/screen_ai/screen_ai_service_router.h" #include "chrome/browser/screen_ai/screen_ai_service_router_factory.h" #include "chrome/browser/ui/web_applications/sub_apps_service_impl.h" -@@ -365,7 +365,7 @@ void BindMediaFoundationPreferences( +@@ -366,7 +366,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) { -@@ -544,7 +544,7 @@ void PopulateChromeFrameBinders( +@@ -545,7 +545,7 @@ void PopulateChromeFrameBinders( #endif // BUILDFLAG(ENABLE_SPEECH_SERVICE) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) if (base::FeatureList::IsEnabled(blink::features::kDesktopPWAsSubApps) && !render_frame_host->GetParentOrOuterDocument()) { // The service binder will reject non-primary main frames, but we still need diff --git a/www/chromium/files/patch-chrome_browser_chrome__browser__interface__binders__webui.cc b/www/chromium/files/patch-chrome_browser_chrome__browser__interface__binders__webui.cc index 9a583a81a336..203b83646d39 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,20 +1,20 @@ ---- chrome/browser/chrome_browser_interface_binders_webui.cc.orig 2025-10-30 15:44:36 UTC +--- chrome/browser/chrome_browser_interface_binders_webui.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/chrome_browser_interface_binders_webui.cc -@@ -36,7 +36,7 @@ +@@ -40,7 +40,7 @@ #include "mojo/public/cpp/bindings/binder_map.h" #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" -@@ -128,7 +128,7 @@ void PopulateChromeWebUIFrameBinders( +@@ -135,7 +135,7 @@ void PopulateChromeWebUIFrameBinders( #endif // BUILDFLAG(IS_CHROMEOS) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_DESKTOP_ANDROID) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_DESKTOP_ANDROID) || BUILDFLAG(IS_BSD) RegisterWebUIControllerInterfaceBinder(map); diff --git a/www/chromium/files/patch-chrome_browser_chrome__browser__interface__binders__webui__parts__desktop.cc b/www/chromium/files/patch-chrome_browser_chrome__browser__interface__binders__webui__parts__desktop.cc index 6b39bc0cbbb6..8f1290ad6b2b 100644 --- a/www/chromium/files/patch-chrome_browser_chrome__browser__interface__binders__webui__parts__desktop.cc +++ b/www/chromium/files/patch-chrome_browser_chrome__browser__interface__binders__webui__parts__desktop.cc @@ -1,37 +1,37 @@ ---- chrome/browser/chrome_browser_interface_binders_webui_parts_desktop.cc.orig 2025-10-30 15:44:36 UTC +--- chrome/browser/chrome_browser_interface_binders_webui_parts_desktop.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/chrome_browser_interface_binders_webui_parts_desktop.cc -@@ -110,7 +110,7 @@ +@@ -117,7 +117,7 @@ #include "ui/webui/resources/js/browser_command/browser_command.mojom.h" #include "ui/webui/resources/js/tracked_element/tracked_element.mojom.h" // nogncheck crbug.com/1125897 -#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_home/app_home.mojom.h" #include "chrome/browser/ui/webui/app_home/app_home_ui.h" #include "chrome/browser/ui/webui/app_settings/web_app_settings_ui.h" -@@ -331,14 +331,14 @@ void PopulateChromeWebUIFrameBindersPartsDesktop( +@@ -335,14 +335,14 @@ void PopulateChromeWebUIFrameBindersPartsDesktop( HistoryClustersSidePanelUI, NewTabPageUI, BookmarksSidePanelUI>(map); } -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) RegisterWebUIControllerInterfaceBinder(map); #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) RegisterWebUIControllerInterfaceBinder< browser_command::mojom::CommandHandlerFactory, -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) WhatsNewUI, #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) NewTabPageUI>(map); -@@ -525,7 +525,7 @@ void PopulateChromeWebUIFrameBindersPartsDesktop( - RegisterWebUIControllerInterfaceBinder< - guest_contents::mojom::GuestContentsHost, WebUIBrowserUI>(map); +@@ -548,7 +548,7 @@ void PopulateChromeWebUIFrameBindersPartsDesktop( + OmniboxPopupUI>(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); 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 410c3860d7a7..5193be00e2c7 100644 --- a/www/chromium/files/patch-chrome_browser_chrome__browser__main.cc +++ b/www/chromium/files/patch-chrome_browser_chrome__browser__main.cc @@ -1,115 +1,161 @@ ---- chrome/browser/chrome_browser_main.cc.orig 2025-10-30 15:44:36 UTC +--- chrome/browser/chrome_browser_main.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/chrome_browser_main.cc -@@ -158,7 +158,7 @@ +@@ -168,7 +168,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 -@@ -184,11 +184,11 @@ +@@ -195,12 +195,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" -@@ -199,7 +199,7 @@ +@@ -211,7 +211,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 -@@ -272,7 +272,7 @@ +@@ -284,7 +284,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) -@@ -295,7 +295,7 @@ +@@ -317,7 +317,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" +@@ -325,7 +325,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" +@@ -334,7 +334,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"); -@@ -444,7 +444,7 @@ void ProcessSingletonNotificationCallbackImpl( +@@ -483,7 +483,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. -@@ -1005,7 +1005,7 @@ int ChromeBrowserMainParts::PreCreateThreadsImpl() { +@@ -549,7 +549,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; +@@ -715,7 +715,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) +@@ -745,7 +745,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 +@@ -762,7 +762,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()); +@@ -1220,7 +1220,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) ++ BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD)) // Create directory for user-level Native Messaging manifest files. This // makes it less likely that the directory will be created by third-party // software with incorrect owner or permission. See crbug.com/725513 . -@@ -1049,7 +1049,7 @@ int ChromeBrowserMainParts::PreCreateThreadsImpl() { +@@ -1264,7 +1264,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( -@@ -1274,7 +1274,7 @@ void ChromeBrowserMainParts::PostProfileInit(Profile* +@@ -1478,7 +1478,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( -@@ -1325,7 +1325,7 @@ void ChromeBrowserMainParts::PostProfileInit(Profile* +@@ -1529,7 +1529,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(); } -@@ -1434,7 +1434,7 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl( +@@ -1638,7 +1638,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(); } -@@ -2003,7 +2003,7 @@ bool ChromeBrowserMainParts::ProcessSingletonNotificat - - // Drop the request if headless mode is in effect or the request is from - // a headless Chrome process. --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) - if (headless::IsHeadlessMode() || - command_line.HasSwitch(switches::kHeadless)) { - return false; diff --git a/www/chromium/files/patch-chrome_browser_chrome__content__browser__client.cc b/www/chromium/files/patch-chrome_browser_chrome__content__browser__client.cc index abec8ed3a4ff..c4d628acb65c 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,225 +1,174 @@ ---- chrome/browser/chrome_content_browser_client.cc.orig 2025-10-30 15:44:36 UTC +--- chrome/browser/chrome_content_browser_client.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/chrome_content_browser_client.cc -@@ -479,7 +479,7 @@ - #include "components/user_manager/user_manager.h" - #include "services/service_manager/public/mojom/interface_provider_spec.mojom.h" - #include "storage/browser/file_system/external_mount_points.h" --#elif BUILDFLAG(IS_LINUX) -+#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - #include "chrome/browser/chrome_browser_main_linux.h" - #include "chrome/browser/ui/views/chrome_browser_main_extra_parts_views_linux.h" - #elif BUILDFLAG(IS_ANDROID) -@@ -577,7 +577,7 @@ +@@ -574,7 +574,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 -@@ -587,12 +587,12 @@ - #include "components/crash/content/browser/crash_handler_host_linux.h" - #endif - --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) - #include "chrome/browser/enterprise/chrome_browser_main_extra_parts_enterprise.h" +@@ -585,7 +585,7 @@ #endif #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) -@@ -601,7 +601,7 @@ - #include "chrome/browser/ui/views/chrome_browser_main_extra_parts_views.h" - #endif - --#if BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - #include "chrome/browser/chrome_browser_main_extra_parts_linux.h" - #elif BUILDFLAG(IS_OZONE) - #include "chrome/browser/chrome_browser_main_extra_parts_ozone.h" -@@ -1426,7 +1426,7 @@ void ChromeContentBrowserClient::RegisterLocalStatePre +@@ -1406,7 +1406,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) -@@ -1649,7 +1649,7 @@ ChromeContentBrowserClient::CreateBrowserMainParts(boo - #elif BUILDFLAG(IS_CHROMEOS) - main_parts = std::make_unique( - is_integration_test, &startup_data_); --#elif BUILDFLAG(IS_LINUX) -+#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - main_parts = std::make_unique( - is_integration_test, &startup_data_); - #elif BUILDFLAG(IS_ANDROID) -@@ -1680,7 +1680,7 @@ ChromeContentBrowserClient::CreateBrowserMainParts(boo - // Construct additional browser parts. Stages are called in the order in - // which they are added. - #if defined(TOOLKIT_VIEWS) --#if BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - main_parts->AddParts( - std::make_unique()); - #else -@@ -1697,7 +1697,7 @@ ChromeContentBrowserClient::CreateBrowserMainParts(boo - main_parts->AddParts(std::make_unique()); - #endif - --#if BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - main_parts->AddParts(std::make_unique()); - #elif BUILDFLAG(IS_OZONE) - main_parts->AddParts(std::make_unique()); -@@ -1716,7 +1716,7 @@ ChromeContentBrowserClient::CreateBrowserMainParts(boo - - chrome::AddMetricsExtraParts(main_parts.get()); - --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) - main_parts->AddParts( - std::make_unique< - enterprise_util::ChromeBrowserMainExtraPartsEnterprise>()); -@@ -1789,7 +1789,7 @@ ChromeContentBrowserClient::GetStoragePartitionConfigF +@@ -1676,7 +1676,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); -@@ -2663,7 +2663,7 @@ bool ChromeContentBrowserClient::ShouldUrlUseApplicati +@@ -2550,7 +2550,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; -@@ -2781,7 +2781,9 @@ void MaybeAppendBlinkSettingsSwitchForFieldTrial( +@@ -2674,7 +2674,9 @@ void MaybeAppendBlinkSettingsSwitchForFieldTrial( void ChromeContentBrowserClient::AppendExtraCommandLineSwitches( base::CommandLine* command_line, int child_process_id) { -+#ifdef notyet ++#if !BUILDFLAG(IS_BSD) crash_keys::AppendStringAnnotationsCommandLineSwitch(command_line); +#endif #if BUILDFLAG(IS_MAC) std::unique_ptr client_info = GoogleUpdateSettings::LoadMetricsClientInfo(); -@@ -2790,7 +2792,7 @@ void ChromeContentBrowserClient::AppendExtraCommandLin +@@ -2683,7 +2685,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( -@@ -3123,7 +3125,7 @@ void ChromeContentBrowserClient::AppendExtraCommandLin +@@ -3016,7 +3018,7 @@ void ChromeContentBrowserClient::AppendExtraCommandLin } } -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -+#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)) && !BUILDFLAG(IS_BSD) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Opt into a hardened stack canary mitigation if it hasn't already been // force-disabled. if (!browser_command_line.HasSwitch(switches::kChangeStackGuardOnFork)) { -@@ -4182,7 +4184,7 @@ GetPreferredColorScheme(const WebPreferences& web_pref +@@ -4075,7 +4077,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 -@@ -5071,7 +5073,7 @@ void ChromeContentBrowserClient::GetAdditionalAllowedS +@@ -5001,7 +5003,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) -@@ -5126,7 +5128,7 @@ void ChromeContentBrowserClient::GetAdditionalFileSyst +@@ -5056,7 +5058,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, -@@ -6002,7 +6004,7 @@ ChromeContentBrowserClient::CreateNonNetworkNavigation +@@ -5932,7 +5934,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()) { -@@ -6028,7 +6030,7 @@ void ChromeContentBrowserClient:: +@@ -5958,7 +5960,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, -@@ -6057,7 +6059,7 @@ void ChromeContentBrowserClient:: +@@ -5987,7 +5989,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, -@@ -6332,7 +6334,7 @@ void ChromeContentBrowserClient:: +@@ -6262,7 +6264,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(); -@@ -7302,7 +7304,7 @@ bool ChromeContentBrowserClient::ShouldSandboxNetworkS +@@ -6955,7 +6957,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/autofill to chrome://settings/yourSavedInfo. + if (url->SchemeIs(content::kChromeUIScheme) && +@@ -7241,7 +7243,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) { -@@ -7725,7 +7727,7 @@ void ChromeContentBrowserClient:: +@@ -7680,7 +7682,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. -@@ -8102,7 +8104,7 @@ ChromeContentBrowserClient::GetAlternativeErrorPageOve +@@ -8057,7 +8059,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 44df09f1a728..e32b8fc3674f 100644 --- a/www/chromium/files/patch-chrome_browser_chrome__content__browser__client.h +++ b/www/chromium/files/patch-chrome_browser_chrome__content__browser__client.h @@ -1,11 +1,11 @@ ---- chrome/browser/chrome_content_browser_client.h.orig 2025-10-30 15:44:36 UTC +--- chrome/browser/chrome_content_browser_client.h.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/chrome_content_browser_client.h -@@ -570,7 +570,7 @@ class ChromeContentBrowserClient : public content::Con +@@ -584,7 +584,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_chrome__content__browser__client__navigation__throttles.cc b/www/chromium/files/patch-chrome_browser_chrome__content__browser__client__navigation__throttles.cc index 5b903a0a2bff..f1b4a2ab2a68 100644 --- a/www/chromium/files/patch-chrome_browser_chrome__content__browser__client__navigation__throttles.cc +++ b/www/chromium/files/patch-chrome_browser_chrome__content__browser__client__navigation__throttles.cc @@ -1,38 +1,38 @@ ---- chrome/browser/chrome_content_browser_client_navigation_throttles.cc.orig 2025-10-30 15:44:36 UTC +--- chrome/browser/chrome_content_browser_client_navigation_throttles.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/chrome_content_browser_client_navigation_throttles.cc -@@ -126,7 +126,7 @@ +@@ -128,7 +128,7 @@ #include "chrome/browser/captive_portal/captive_portal_service_factory.h" #endif // BUILDFLAG(ENABLE_CAPTIVE_PORTAL_DETECTION) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) #include "chrome/browser/browser_switcher/browser_switcher_navigation_throttle.h" #include "chrome/browser/enterprise/profile_management/oidc_auth_response_capture_navigation_throttle.h" #include "chrome/browser/enterprise/profile_management/profile_management_navigation_throttle.h" -@@ -409,7 +409,7 @@ void CreateAndAddChromeThrottlesForNavigation( +@@ -421,7 +421,7 @@ void CreateAndAddChromeThrottlesForNavigation( TypedNavigationUpgradeThrottle::MaybeCreateAndAdd(registry); } -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) WebAppSettingsNavigationThrottle::MaybeCreateAndAdd(registry); profile_management::ProfileManagementNavigationThrottle::MaybeCreateAndAdd( registry); -@@ -427,7 +427,7 @@ void CreateAndAddChromeThrottlesForNavigation( +@@ -439,7 +439,7 @@ void CreateAndAddChromeThrottlesForNavigation( #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) enterprise_connectors::DeviceTrustNavigationThrottle::MaybeCreateAndAdd( registry); #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || -@@ -459,7 +459,7 @@ void CreateAndAddChromeThrottlesForNavigation( - } +@@ -478,7 +478,7 @@ void CreateAndAddChromeThrottlesForNavigation( + registry, ui_manager); #endif // BUILDFLAG(SAFE_BROWSING_AVAILABLE) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) browser_switcher::BrowserSwitcherNavigationThrottle::MaybeCreateAndAdd( registry); #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) diff --git a/www/chromium/files/patch-chrome_browser_component__updater_registration.cc b/www/chromium/files/patch-chrome_browser_component__updater_registration.cc index b04897149a45..cbe0c12a6fdd 100644 --- a/www/chromium/files/patch-chrome_browser_component__updater_registration.cc +++ b/www/chromium/files/patch-chrome_browser_component__updater_registration.cc @@ -1,38 +1,38 @@ ---- chrome/browser/component_updater/registration.cc.orig 2025-09-06 10:01:20 UTC +--- chrome/browser/component_updater/registration.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/component_updater/registration.cc -@@ -94,7 +94,7 @@ +@@ -95,7 +95,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) -@@ -107,7 +107,7 @@ +@@ -108,7 +108,7 @@ #include "chrome/browser/component_updater/lacros_component_remover.h" #endif // BUILDFLAG(IS_CHROMEOS) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "chrome/browser/component_updater/wasm_tts_engine_component_installer.h" #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) -@@ -245,7 +245,7 @@ void RegisterComponentsForUpdate() { +@@ -247,7 +247,7 @@ void RegisterComponentsForUpdate() { RegisterCookieReadinessListComponent(cus); #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) RegisterAmountExtractionHeuristicRegexesComponent(cus); #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || // BUILDFLAG(IS_CHROMEOS) -@@ -257,7 +257,7 @@ void RegisterComponentsForUpdate() { +@@ -259,7 +259,7 @@ void RegisterComponentsForUpdate() { } #endif // BUIDLFLAG(IS_ANDROID) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) 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_devtools_devtools__window.cc b/www/chromium/files/patch-chrome_browser_devtools_devtools__window.cc deleted file mode 100644 index 63569fae78a5..000000000000 --- a/www/chromium/files/patch-chrome_browser_devtools_devtools__window.cc +++ /dev/null @@ -1,11 +0,0 @@ ---- chrome/browser/devtools/devtools_window.cc.orig 2025-10-30 15:44:36 UTC -+++ chrome/browser/devtools/devtools_window.cc -@@ -566,7 +566,7 @@ void DevToolsWindow::RegisterProfilePrefs( - prefs::kDevToolsGoogleDeveloperProgramProfileAvailability, - /* enabled */ 0); - #if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || \ -- BUILDFLAG(IS_MAC) -+ BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) - registry->RegisterListPref(prefs::kDeveloperToolsAvailabilityAllowlist); - registry->RegisterListPref(prefs::kDeveloperToolsAvailabilityBlocklist); - #endif // BUILDFLAG(IS_CHROMEOS) || 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 93f619af9792..37c8bd4538ce 100644 --- a/www/chromium/files/patch-chrome_browser_download_chrome__download__manager__delegate.cc +++ b/www/chromium/files/patch-chrome_browser_download_chrome__download__manager__delegate.cc @@ -1,29 +1,29 @@ ---- chrome/browser/download/chrome_download_manager_delegate.cc.orig 2025-10-02 04:28:32 UTC +--- chrome/browser/download/chrome_download_manager_delegate.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/download/chrome_download_manager_delegate.cc -@@ -1948,7 +1948,7 @@ void ChromeDownloadManagerDelegate::OnDownloadTargetDe +@@ -2018,7 +2018,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(); } -@@ -2084,7 +2084,7 @@ void ChromeDownloadManagerDelegate::CheckDownloadAllow +@@ -2154,7 +2154,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()) { -@@ -2166,7 +2166,7 @@ void ChromeDownloadManagerDelegate::CheckSavePackageAl +@@ -2232,7 +2232,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_enterprise_chrome__browser__main__extra__parts__enterprise.cc b/www/chromium/files/patch-chrome_browser_enterprise_chrome__browser__main__extra__parts__enterprise.cc new file mode 100644 index 000000000000..e4bae154b54a --- /dev/null +++ b/www/chromium/files/patch-chrome_browser_enterprise_chrome__browser__main__extra__parts__enterprise.cc @@ -0,0 +1,20 @@ +--- chrome/browser/enterprise/chrome_browser_main_extra_parts_enterprise.cc.orig 2025-12-05 10:12:50 UTC ++++ chrome/browser/enterprise/chrome_browser_main_extra_parts_enterprise.cc +@@ -7,7 +7,7 @@ + #include "components/enterprise/buildflags/buildflags.h" + #include "content/public/browser/browser_thread.h" + +-#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) + #include "chrome/browser/enterprise/connectors/analysis/content_analysis_sdk_manager.h" // nogncheck + #include "chrome/browser/enterprise/connectors/connectors_service.h" // nogncheck +@@ -53,7 +53,7 @@ ChromeBrowserMainExtraPartsEnterprise::ChromeBrowserMa + ChromeBrowserMainExtraPartsEnterprise:: + ~ChromeBrowserMainExtraPartsEnterprise() = default; + +-#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) + void ChromeBrowserMainExtraPartsEnterprise::PostProfileInit( + Profile* profile, diff --git a/www/chromium/files/patch-chrome_browser_enterprise_chrome__browser__main__extra__parts__enterprise.h b/www/chromium/files/patch-chrome_browser_enterprise_chrome__browser__main__extra__parts__enterprise.h new file mode 100644 index 000000000000..821d9d61cef4 --- /dev/null +++ b/www/chromium/files/patch-chrome_browser_enterprise_chrome__browser__main__extra__parts__enterprise.h @@ -0,0 +1,11 @@ +--- chrome/browser/enterprise/chrome_browser_main_extra_parts_enterprise.h.orig 2025-12-05 10:12:50 UTC ++++ chrome/browser/enterprise/chrome_browser_main_extra_parts_enterprise.h +@@ -25,7 +25,7 @@ class ChromeBrowserMainExtraPartsEnterprise + ~ChromeBrowserMainExtraPartsEnterprise() override; + + // ChromeBrowserMainExtraParts: +-#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) + void PostProfileInit(Profile* profile, bool is_initial_profile) override; + #endif diff --git a/www/chromium/files/patch-chrome_browser_enterprise_connectors_analysis_analysis__service__settings.cc b/www/chromium/files/patch-chrome_browser_enterprise_connectors_analysis_analysis__service__settings.cc index cabaef4500a6..0ef9f8b02bb6 100644 --- a/www/chromium/files/patch-chrome_browser_enterprise_connectors_analysis_analysis__service__settings.cc +++ b/www/chromium/files/patch-chrome_browser_enterprise_connectors_analysis_analysis__service__settings.cc @@ -1,11 +1,11 @@ ---- chrome/browser/enterprise/connectors/analysis/analysis_service_settings.cc.orig 2025-10-30 15:44:36 UTC +--- chrome/browser/enterprise/connectors/analysis/analysis_service_settings.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/enterprise/connectors/analysis/analysis_service_settings.cc -@@ -192,7 +192,7 @@ void AnalysisServiceSettings::ParseVerificationSignatu +@@ -55,7 +55,7 @@ void AnalysisServiceSettings::ParseVerificationSignatu const char* verification_key = kKeyWindowsVerification; #elif BUILDFLAG(IS_MAC) const char* verification_key = kKeyMacVerification; -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) const char* verification_key = kKeyLinuxVerification; #endif 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 6f1ee0316e3c..9de8796862df 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 2025-10-02 04:28:32 UTC +--- chrome/browser/enterprise/connectors/common.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/enterprise/connectors/common.cc -@@ -20,7 +20,7 @@ +@@ -19,7 +19,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 -@@ -306,7 +306,7 @@ std::string GetProfileEmail(Profile* profile) { +@@ -312,7 +312,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_signals_context__info__fetcher.cc b/www/chromium/files/patch-chrome_browser_enterprise_signals_context__info__fetcher.cc index b18c54ca4284..f566d23d2265 100644 --- a/www/chromium/files/patch-chrome_browser_enterprise_signals_context__info__fetcher.cc +++ b/www/chromium/files/patch-chrome_browser_enterprise_signals_context__info__fetcher.cc @@ -1,20 +1,20 @@ ---- chrome/browser/enterprise/signals/context_info_fetcher.cc.orig 2025-10-30 15:44:36 UTC +--- chrome/browser/enterprise/signals/context_info_fetcher.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/enterprise/signals/context_info_fetcher.cc -@@ -182,6 +182,8 @@ std::vector ContextInfoFetcher::GetOnSecu +@@ -183,6 +183,8 @@ std::vector ContextInfoFetcher::GetOnSecu SettingValue ContextInfoFetcher::GetOSFirewall() { #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) return device_signals::GetOSFirewall(); +#elif BUILDFLAG(IS_OPENBSD) + return SettingValue::ENABLED; #elif BUILDFLAG(IS_CHROMEOS) return GetChromeosFirewall(); #else -@@ -201,7 +203,7 @@ ScopedUfwConfigPathForTesting::~ScopedUfwConfigPathFor +@@ -202,7 +204,7 @@ ScopedUfwConfigPathForTesting::~ScopedUfwConfigPathFor #endif // BUILDFLAG(IS_LINUX) std::vector ContextInfoFetcher::GetDnsServers() { -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) return device_signals::GetSystemDnsServers(); #else return std::vector(); diff --git a/www/chromium/files/patch-chrome_browser_enterprise_util_managed__browser__utils.cc b/www/chromium/files/patch-chrome_browser_enterprise_util_managed__browser__utils.cc index 03bd90c352e6..09e541b91ba6 100644 --- a/www/chromium/files/patch-chrome_browser_enterprise_util_managed__browser__utils.cc +++ b/www/chromium/files/patch-chrome_browser_enterprise_util_managed__browser__utils.cc @@ -1,38 +1,38 @@ ---- chrome/browser/enterprise/util/managed_browser_utils.cc.orig 2025-10-30 15:44:36 UTC +--- chrome/browser/enterprise/util/managed_browser_utils.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/enterprise/util/managed_browser_utils.cc -@@ -300,7 +300,7 @@ void SetUserAcceptedAccountManagement(Profile* profile +@@ -302,7 +302,7 @@ void SetUserAcceptedAccountManagement(Profile* profile // The updated consent screen also ask the user for consent to share device // signals. #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) profile->GetPrefs()->SetBoolean( device_signals::prefs::kDeviceSignalsPermanentConsentReceived, accepted); #endif -@@ -309,7 +309,7 @@ void SetUserAcceptedAccountManagement(Profile* profile +@@ -311,7 +311,7 @@ void SetUserAcceptedAccountManagement(Profile* profile profile_manager->GetProfileAttributesStorage() .GetProfileAttributesWithPath(profile->GetPath()); if (entry) { -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) SetEnterpriseProfileLabel(profile); #endif entry->SetUserAcceptedAccountManagement(accepted); -@@ -408,7 +408,7 @@ bool CanShowEnterpriseProfileUI(Profile* profile) { +@@ -410,7 +410,7 @@ bool CanShowEnterpriseProfileUI(Profile* profile) { } bool CanShowEnterpriseBadgingForNTPFooter(Profile* profile) { -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) BrowserManagementNoticeState management_notice_state = GetManagementNoticeStateForNTPFooter(profile); switch (management_notice_state) { -@@ -426,7 +426,7 @@ bool CanShowEnterpriseBadgingForNTPFooter(Profile* pro +@@ -428,7 +428,7 @@ bool CanShowEnterpriseBadgingForNTPFooter(Profile* pro BrowserManagementNoticeState GetManagementNoticeStateForNTPFooter( 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 (!policy::ManagementServiceFactory::GetForProfile(profile) - ->IsBrowserManaged() || - !g_browser_process->local_state()->GetBoolean( + auto* management_service = + policy::ManagementServiceFactory::GetForProfile(profile); + if (!management_service->IsBrowserManaged() || diff --git a/www/chromium/files/patch-chrome_browser_extensions_BUILD.gn b/www/chromium/files/patch-chrome_browser_extensions_BUILD.gn index 012812b075ca..69e52fdec634 100644 --- a/www/chromium/files/patch-chrome_browser_extensions_BUILD.gn +++ b/www/chromium/files/patch-chrome_browser_extensions_BUILD.gn @@ -1,13 +1,13 @@ ---- chrome/browser/extensions/BUILD.gn.orig 2025-10-30 15:44:36 UTC +--- chrome/browser/extensions/BUILD.gn.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/extensions/BUILD.gn -@@ -1518,6 +1518,10 @@ source_set("extensions") { +@@ -1516,6 +1516,10 @@ source_set("extensions") { deps += [ "//chrome/services/printing/public/mojom" ] } + if (is_bsd) { + sources -= [ "api/image_writer_private/removable_storage_provider_linux.cc" ] + } + if (enable_pdf) { deps += [ "//chrome/browser/pdf", diff --git a/www/chromium/files/patch-chrome_browser_extensions_api_settings__private_prefs__util.cc b/www/chromium/files/patch-chrome_browser_extensions_api_settings__private_prefs__util.cc index f255a3f7d34b..b83155d7894e 100644 --- a/www/chromium/files/patch-chrome_browser_extensions_api_settings__private_prefs__util.cc +++ b/www/chromium/files/patch-chrome_browser_extensions_api_settings__private_prefs__util.cc @@ -1,29 +1,29 @@ ---- chrome/browser/extensions/api/settings_private/prefs_util.cc.orig 2025-10-30 15:44:36 UTC +--- chrome/browser/extensions/api/settings_private/prefs_util.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/extensions/api/settings_private/prefs_util.cc -@@ -199,7 +199,7 @@ const PrefsUtil::TypedPrefMap& PrefsUtil::GetAllowlist +@@ -198,7 +198,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::kAutofillAiOptInStatus] = -@@ -219,7 +219,7 @@ const PrefsUtil::TypedPrefMap& PrefsUtil::GetAllowlist + (*s_allowlist)[autofill::prefs::kAutofillAiIdentityEntitiesEnabled] = +@@ -222,7 +222,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 -@@ -236,7 +236,7 @@ const PrefsUtil::TypedPrefMap& PrefsUtil::GetAllowlist +@@ -239,7 +239,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__non__android.cc b/www/chromium/files/patch-chrome_browser_extensions_api_tabs_tabs__api__non__android.cc index 437e119b48f0..686983fd4373 100644 --- a/www/chromium/files/patch-chrome_browser_extensions_api_tabs_tabs__api__non__android.cc +++ b/www/chromium/files/patch-chrome_browser_extensions_api_tabs_tabs__api__non__android.cc @@ -1,11 +1,11 @@ ---- chrome/browser/extensions/api/tabs/tabs_api_non_android.cc.orig 2025-10-30 15:44:36 UTC +--- chrome/browser/extensions/api/tabs/tabs_api_non_android.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/extensions/api/tabs/tabs_api_non_android.cc -@@ -624,7 +624,7 @@ ExtensionFunction::ResponseAction WindowsCreateFunctio +@@ -633,7 +633,7 @@ ExtensionFunction::ResponseAction WindowsCreateFunctio // created as minimized. // TODO(crbug.com/40254339): Remove this workaround when linux is fixed. // TODO(crbug.com/40254339): Find a fix for wayland as well. -#if BUILDFLAG(IS_LINUX) && BUILDFLAG(IS_OZONE_X11) +#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && BUILDFLAG(IS_OZONE_X11) - if (new_window->initial_show_state() == + if (new_window->GetBrowserForMigrationOnly()->initial_show_state() == ui::mojom::WindowShowState::kMinimized) { - new_window->window()->Minimize(); + new_window->GetWindow()->Minimize(); 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 85c58651da2b..d43b050855f2 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 2025-10-30 15:44:36 UTC +--- chrome/browser/extensions/external_provider_impl.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/extensions/external_provider_impl.cc -@@ -832,7 +832,7 @@ void ExternalProviderImpl::CreateExternalProviders( +@@ -836,7 +836,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( -@@ -860,7 +860,7 @@ void ExternalProviderImpl::CreateExternalProviders( +@@ -864,7 +864,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_extensions_sync_extension__sync__service.cc b/www/chromium/files/patch-chrome_browser_extensions_sync_extension__sync__service.cc new file mode 100644 index 000000000000..413ede5e15e4 --- /dev/null +++ b/www/chromium/files/patch-chrome_browser_extensions_sync_extension__sync__service.cc @@ -0,0 +1,11 @@ +--- chrome/browser/extensions/sync/extension_sync_service.cc.orig 2025-12-05 10:12:50 UTC ++++ chrome/browser/extensions/sync/extension_sync_service.cc +@@ -593,7 +593,7 @@ void ExtensionSyncService::ApplySyncData( + AccountExtensionTracker::Get(profile_)->OnExtensionSyncDataReceived(id); + } + +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + // Chrome Apps are deprecated on WML, so we do not want to sync new apps + // installed on other devices. + if (extension_sync_data.is_app()) { 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 7ca558444db8..4eecbe3fa305 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 2025-10-30 15:44:36 UTC +--- chrome/browser/file_system_access/chrome_file_system_access_permission_context.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/file_system_access/chrome_file_system_access_permission_context.cc -@@ -377,7 +377,7 @@ GenerateBlockPaths(bool should_normalize_file_path) { +@@ -400,7 +400,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. {kNoBasePathKey, FILE_PATH_LITERAL("/dev"), BlockType::kBlockAllChildren}, diff --git a/www/chromium/files/patch-chrome_browser_flag__descriptions.cc b/www/chromium/files/patch-chrome_browser_flag__descriptions.cc deleted file mode 100644 index 4013b844effc..000000000000 --- a/www/chromium/files/patch-chrome_browser_flag__descriptions.cc +++ /dev/null @@ -1,172 +0,0 @@ ---- chrome/browser/flag_descriptions.cc.orig 2025-10-30 15:44:36 UTC -+++ chrome/browser/flag_descriptions.cc -@@ -710,7 +710,7 @@ const char kAutofillEnableAllowlistForBmoCardCategoryB - "Autofill suggestions on the allowlisted merchant websites."; - - #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ -- BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) -+ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) - const char kAutofillEnableAmountExtractionName[] = - "Enable checkout amount extraction."; - const char kAutofillEnableAmountExtractionDescription[] = -@@ -726,7 +726,7 @@ const char kAutofillEnableAmountExtractionTestingDescr - // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) - - #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ -- BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) -+ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) - const char kAutofillEnableBuyNowPayLaterName[] = - "Enable buy now pay later on Autofill"; - const char kAutofillEnableBuyNowPayLaterDescription[] = -@@ -1206,7 +1206,7 @@ const char kDevicePostureDescription[] = - "Enables Device Posture API (foldable devices)"; - - #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \ -- BUILDFLAG(IS_CHROMEOS) -+ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - const char kDocumentPictureInPictureAnimateResizeName[] = - "Document Picture-in-Picture Animate Resize"; - const char kDocumentPictureInPictureAnimateResizeDescription[] = -@@ -1330,7 +1330,7 @@ const char kContextMenuEmptySpaceDescription[] = - "space, a context menu containing page-related items will be shown."; - #endif // BUILDFLAG(IS_ANDROID) - --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) - const char kContextualCueingName[] = "Contextual cueing"; - const char kContextualCueingDescription[] = - "Enables the contextual cueing system to support showing actions."; -@@ -1691,7 +1691,7 @@ const char kEnableIsolatedWebAppDevModeName[] = - const char kEnableIsolatedWebAppDevModeDescription[] = - "Enables the installation of unverified Isolated Web Apps"; - --#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - const char kEnableIwaKeyDistributionComponentName[] = - "Enable the Iwa Key Distribution component"; - const char kEnableIwaKeyDistributionComponentDescription[] = -@@ -3660,14 +3660,14 @@ const char kReduceTransferSizeUpdatedIPCDescription[] - "When enabled, the network service will send TransferSizeUpdatedIPC IPC " - "only when DevTools is attached or the request is for an ad request."; - --#if BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - const char kReduceUserAgentDataLinuxPlatformVersionName[] = - "Reduce Linux platform version Client Hint"; - const char kReduceUserAgentDataLinuxPlatformVersionDescription[] = - "Set platform version Client Hint on Linux to empty string."; - #endif // BUILDFLAG(IS_LINUX) - --#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 kReplaceSyncPromosWithSignInPromosName[] = - "Replace all sync-related UI with sign-in ones"; - const char kReplaceSyncPromosWithSignInPromosDescription[] = -@@ -3701,7 +3701,7 @@ const char kRobustWindowManagementExperimentalDescript - "switching and restoration, ensuring they never lose their work or " - "context."; - --#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - const char kRootScrollbarFollowsTheme[] = "Make scrollbar follow theme"; - const char kRootScrollbarFollowsThemeDescription[] = - "If enabled makes the root scrollbar follow the browser's theme color."; -@@ -3950,7 +3950,7 @@ const char kDefaultSiteInstanceGroupsDescription[] = - "SiteInstance."; - - #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ -- BUILDFLAG(IS_CHROMEOS) -+ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - const char kPwaNavigationCapturingName[] = "Desktop PWA Link Capturing"; - const char kPwaNavigationCapturingDescription[] = - "Enables opening links from Chrome in an installed PWA. Currently under " -@@ -4226,7 +4226,7 @@ const char kTouchTextEditingRedesignName[] = "Touch Te - const char kTouchTextEditingRedesignDescription[] = - "Enables new touch text editing features."; - --#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - const char kTranslationAPIName[] = "Experimental translation API"; - const char kTranslationAPIDescription[] = - "Enables the on-device language translation API. " -@@ -7888,7 +7888,7 @@ const char kTetheringExperimentalFunctionalityDescript - - #endif // BUILDFLAG(IS_CHROMEOS) - --#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - const char kGetAllScreensMediaName[] = "GetAllScreensMedia API"; - const char kGetAllScreensMediaDescription[] = - "When enabled, the getAllScreensMedia API for capturing multiple screens " -@@ -8099,7 +8099,7 @@ const char kEnableArmHwdrmDescription[] = "Enable HW b - - // Linux ----------------------------------------------------------------------- - --#if BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - - const char kPulseaudioLoopbackForCastName[] = - "Linux System Audio Loopback for Cast (pulseaudio)"; -@@ -8131,6 +8131,17 @@ const char kWaylandSessionManagementName[] = "Wayland - const char kWaylandSessionManagementDescription[] = - "Enable Wayland's xx/xdg-session-management-v1 experimental support."; - -+#if BUILDFLAG(IS_BSD) -+const char kAudioBackendName[] = -+ "Audio Backend"; -+const char kAudioBackendDescription[] = -+#if BUILDFLAG(IS_OPENBSD) -+ "Select the desired audio backend to use. The default is sndio."; -+#elif BUILDFLAG(IS_FREEBSD) -+ "Select the desired audio backend to use. The default will automatically " -+ "enumerate through the supported backends."; -+#endif -+#endif - #endif // BUILDFLAG(IS_LINUX) - - // Random platform combinations ----------------------------------------------- -@@ -8187,7 +8198,7 @@ const char kGroupPromoPrototypeCpaDescription[] = - "Enables contextual toolbar button for group promo prototype."; - #endif // BUILDFLAG(IS_ANDROID) - --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - const char kEnableNetworkServiceSandboxName[] = - "Enable the network service sandbox."; - const char kEnableNetworkServiceSandboxDescription[] = -@@ -8208,7 +8219,7 @@ const char kWebBluetoothConfirmPairingSupportDescripti - "Bluetooth"; - #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) - --#if BUILDFLAG(IS_LINUX) && BUILDFLAG(ENABLE_PRINTING) -+#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && BUILDFLAG(ENABLE_PRINTING) - const char kCupsIppPrintingBackendName[] = "CUPS IPP Printing Backend"; - const char kCupsIppPrintingBackendDescription[] = - "Use the CUPS IPP printing backend instead of the original CUPS backend " -@@ -8355,7 +8366,7 @@ const char kElementCaptureDescription[] = - "media track into a track capturing just a specific DOM element."; - #endif // !BUILDFLAG(IS_ANDROID) - --#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) -+#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) - const char kUIDebugToolsName[] = "Debugging tools for UI"; - const char kUIDebugToolsDescription[] = - "Enables additional keyboard shortcuts to help debugging."; -@@ -8387,7 +8398,7 @@ const char kThirdPartyDisableChromeAutofillSettingsScr - "Chrome's Address and Payments Autofill are disabled in third party mode."; - #endif // IS_ANDROID - --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) - const char kGlicName[] = "Glic"; - const char kGlicDescription[] = "Enables glic"; - -@@ -8506,7 +8517,7 @@ const char kSupervisedUserBlockInterstitialV3Name[] = - const char kSupervisedUserBlockInterstitialV3Description[] = - "Enables URL filter interstitial V3 for Family Link users."; - --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) - const char kSupervisedUserLocalWebApprovalsName[] = - "Enable local web approvals feature"; - const char kSupervisedUserLocalWebApprovalsDescription[] = diff --git a/www/chromium/files/patch-chrome_browser_flag__descriptions.h b/www/chromium/files/patch-chrome_browser_flag__descriptions.h index b4044ea438e5..56ec5ed1a80d 100644 --- a/www/chromium/files/patch-chrome_browser_flag__descriptions.h +++ b/www/chromium/files/patch-chrome_browser_flag__descriptions.h @@ -1,164 +1,21 @@ ---- chrome/browser/flag_descriptions.h.orig 2025-10-30 15:44:36 UTC +--- chrome/browser/flag_descriptions.h.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/flag_descriptions.h -@@ -458,7 +458,7 @@ extern const char - kAutofillEnableAllowlistForBmoCardCategoryBenefitsDescription[]; - - #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ -- BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) -+ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) - extern const char kAutofillEnableAmountExtractionName[]; - extern const char kAutofillEnableAmountExtractionDescription[]; - extern const char kAutofillEnableAmountExtractionTestingName[]; -@@ -467,7 +467,7 @@ extern const char kAutofillEnableAmountExtractionTesti - // BUILDFLAG(IS_CHROMEOS) || 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) - extern const char kAutofillEnableBuyNowPayLaterName[]; - extern const char kAutofillEnableBuyNowPayLaterDescription[]; - -@@ -721,7 +721,7 @@ extern const char kContextMenuEmptySpaceName[]; - extern const char kContextMenuEmptySpaceDescription[]; - #endif // BUILDFLAG(IS_ANDROID) - --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) - extern const char kContextualCueingName[]; - extern const char kContextualCueingDescription[]; - extern const char kGlicActorName[]; -@@ -888,7 +888,7 @@ extern const char kRouteMatchingName[]; - extern const char kRouteMatchingDescription[]; - - #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \ -- BUILDFLAG(IS_CHROMEOS) -+ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - extern const char kDocumentPictureInPictureAnimateResizeName[]; - extern const char kDocumentPictureInPictureAnimateResizeDescription[]; - -@@ -1064,7 +1064,7 @@ extern const char kEnableIsolatedWebAppAllowlistDescri - extern const char kEnableIsolatedWebAppDevModeName[]; - extern const char kEnableIsolatedWebAppDevModeDescription[]; - --#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - extern const char kEnableIwaKeyDistributionComponentName[]; - extern const char kEnableIwaKeyDistributionComponentDescription[]; - #endif // BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) -@@ -2100,7 +2100,7 @@ extern const char kReduceIPAddressChangeNotificationDe - #endif // BUILDFLAG(IS_MAC) - - #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || \ -- BUILDFLAG(IS_ANDROID) -+ BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) - extern const char kReplaceSyncPromosWithSignInPromosName[]; - extern const char kReplaceSyncPromosWithSignInPromosDescription[]; - #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || -@@ -2112,7 +2112,7 @@ extern const char kRobustWindowManagementDescription[] - extern const char kRobustWindowManagementExperimentalName[]; - extern const char kRobustWindowManagementExperimentalDescription[]; - --#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - extern const char kRootScrollbarFollowsTheme[]; - extern const char kRootScrollbarFollowsThemeDescription[]; - #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) -@@ -2254,7 +2254,7 @@ extern const char kDefaultSiteInstanceGroupsName[]; - extern const char kDefaultSiteInstanceGroupsDescription[]; - - #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ -- BUILDFLAG(IS_CHROMEOS) -+ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - extern const char kPwaNavigationCapturingName[]; - extern const char kPwaNavigationCapturingDescription[]; - #endif -@@ -2434,7 +2434,7 @@ extern const char kTouchSelectionStrategyDirection[]; - extern const char kTouchTextEditingRedesignName[]; - extern const char kTouchTextEditingRedesignDescription[]; - --#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - extern const char kTranslationAPIName[]; - extern const char kTranslationAPIDescription[]; - -@@ -2700,7 +2700,7 @@ extern const char kReduceAcceptLanguageDescription[]; - extern const char kReduceTransferSizeUpdatedIPCName[]; - extern const char kReduceTransferSizeUpdatedIPCDescription[]; - --#if BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - extern const char kReduceUserAgentDataLinuxPlatformVersionName[]; - extern const char kReduceUserAgentDataLinuxPlatformVersionDescription[]; - #endif // #if BUILDFLAG(IS_LINUX) -@@ -4555,7 +4555,7 @@ extern const char kTetheringExperimentalFunctionalityD - - #endif // #if BUILDFLAG(IS_CHROMEOS) - --#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - extern const char kGetAllScreensMediaName[]; - extern const char kGetAllScreensMediaDescription[]; - #endif // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) -@@ -4675,7 +4675,7 @@ extern const char kEnableArmHwdrmDescription[]; - - // Linux --------------------------------------------------------------------- - --#if BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - - extern const char kPulseaudioLoopbackForCastName[]; - extern const char kPulseaudioLoopbackForCastDescription[]; -@@ -4694,6 +4694,8 @@ extern const char kWaylandPerWindowScalingDescription[ - extern const char kWaylandSessionManagementName[]; - extern const char kWaylandSessionManagementDescription[]; - -+extern const char kAudioBackendName[]; -+extern const char kAudioBackendDescription[]; - #endif // BUILDFLAG(IS_LINUX) - - // Random platform combinations ----------------------------------------------- -@@ -4708,7 +4710,7 @@ extern const char kWebBluetoothConfirmPairingSupportNa - extern const char kWebBluetoothConfirmPairingSupportDescription[]; - #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) - --#if BUILDFLAG(IS_LINUX) && BUILDFLAG(ENABLE_PRINTING) -+#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && BUILDFLAG(ENABLE_PRINTING) - extern const char kCupsIppPrintingBackendName[]; - extern const char kCupsIppPrintingBackendDescription[]; - #endif // BUILDFLAG(IS_LINUX) && BUILDFLAG(ENABLE_PRINTING) -@@ -4735,7 +4737,7 @@ extern const char kTaskManagerDesktopRefreshName[]; - extern const char kTaskManagerDesktopRefreshDescription[]; - #endif // BUILDFLAG(IS_ANDROID) - --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - extern const char kEnableNetworkServiceSandboxName[]; - extern const char kEnableNetworkServiceSandboxDescription[]; - -@@ -4831,7 +4833,7 @@ extern const char kElementCaptureName[]; - extern const char kElementCaptureDescription[]; - #endif // !BUILDFLAG(IS_ANDROID) - --#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) -+#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) - extern const char kUIDebugToolsName[]; - extern const char kUIDebugToolsDescription[]; - #endif -@@ -4856,7 +4858,7 @@ extern const char kThirdPartyDisableChromeAutofillSett - extern const char kThirdPartyDisableChromeAutofillSettingsScreenDescription[]; - #endif // IS_ANDROID - --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) - extern const char kGlicName[]; - extern const char kGlicDescription[]; - -@@ -4938,7 +4940,7 @@ extern const char kSearchInSettingsDescription[]; - extern const char kSupervisedUserBlockInterstitialV3Name[]; - extern const char kSupervisedUserBlockInterstitialV3Description[]; - --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) - extern const char kSupervisedUserLocalWebApprovalsName[]; - extern const char kSupervisedUserLocalWebApprovalsDescription[]; - #endif // #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +@@ -8586,6 +8586,18 @@ inline constexpr char kHandleMdmErrorsForDasherAccount + inline constexpr char kHandleMdmErrorsForDasherAccountsDescription[] = + "Enables the mdm error handling feature for dasher accounts"; + ++#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_widget_glic__widget.cc b/www/chromium/files/patch-chrome_browser_glic_widget_glic__widget.cc index cec026f59df3..5892d2c057e0 100644 --- a/www/chromium/files/patch-chrome_browser_glic_widget_glic__widget.cc +++ b/www/chromium/files/patch-chrome_browser_glic_widget_glic__widget.cc @@ -1,11 +1,20 @@ ---- chrome/browser/glic/widget/glic_widget.cc.orig 2025-10-02 04:28:32 UTC +--- chrome/browser/glic/widget/glic_widget.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/glic/widget/glic_widget.cc -@@ -161,7 +161,7 @@ std::unique_ptr GlicWidget::Create( - // Don't change this name. This is used by other code to identify the glic - // window. See b/404947780. - params.name = "GlicWidget"; +@@ -48,7 +48,7 @@ + #include "ui/views/win/hwnd_util.h" + #endif + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + #include "chrome/browser/shell_integration_linux.h" + #endif + +@@ -283,7 +283,7 @@ std::unique_ptr GlicWidget::Create(views:: + #if BUILDFLAG(IS_MAC) + params.animation_enabled = true; + #endif // BUILDFLAG(IS_MAC) -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) params.wm_class_class = shell_integration_linux::GetProgramClassClass(); params.wayland_app_id = params.wm_class_class + "-glic"; - #endif + #endif // BUILDFLAG(IS_LINUX) diff --git a/www/chromium/files/patch-chrome_browser_global__features.cc b/www/chromium/files/patch-chrome_browser_global__features.cc index ee1be9c55ce9..8024177a5b46 100644 --- a/www/chromium/files/patch-chrome_browser_global__features.cc +++ b/www/chromium/files/patch-chrome_browser_global__features.cc @@ -1,29 +1,29 @@ ---- chrome/browser/global_features.cc.orig 2025-10-30 15:44:36 UTC +--- chrome/browser/global_features.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/global_features.cc -@@ -25,7 +25,7 @@ +@@ -27,7 +27,7 @@ #include "chrome/browser/glic/public/glic_enabling.h" // nogncheck #endif -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // This causes a gn error on Android builds, because gn does not understand // buildflags, so we include it only on platforms where it is used. #include "chrome/browser/ui/webui/whats_new/whats_new_registrar.h" -@@ -71,7 +71,7 @@ void GlobalFeatures::ReplaceGlobalFeaturesForTesting( +@@ -73,7 +73,7 @@ void GlobalFeatures::ReplaceGlobalFeaturesForTesting( void GlobalFeatures::Init() { system_permissions_platform_handle_ = CreateSystemPermissionsPlatformHandle(); -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) whats_new_registry_ = CreateWhatsNewRegistry(); #endif -@@ -123,7 +123,7 @@ GlobalFeatures::CreateSystemPermissionsPlatformHandle( +@@ -134,7 +134,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 7339c9bb1c33..598f023c30ea 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 2025-10-30 15:44:36 UTC +--- chrome/browser/global_features.h.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/global_features.h @@ -15,7 +15,7 @@ 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 -@@ -67,7 +67,7 @@ class GlobalFeatures { +@@ -71,7 +71,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(); } -@@ -112,7 +112,7 @@ class GlobalFeatures { +@@ -121,7 +121,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 -@@ -122,7 +122,7 @@ class GlobalFeatures { +@@ -131,7 +131,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_; #endif diff --git a/www/chromium/files/patch-chrome_browser_media_webrtc_webrtc__logging__controller.h b/www/chromium/files/patch-chrome_browser_media_webrtc_webrtc__logging__controller.h index 930613c234db..6763b27f1466 100644 --- a/www/chromium/files/patch-chrome_browser_media_webrtc_webrtc__logging__controller.h +++ b/www/chromium/files/patch-chrome_browser_media_webrtc_webrtc__logging__controller.h @@ -1,20 +1,20 @@ ---- chrome/browser/media/webrtc/webrtc_logging_controller.h.orig 2025-08-07 06:57:29 UTC +--- chrome/browser/media/webrtc/webrtc_logging_controller.h.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/media/webrtc/webrtc_logging_controller.h -@@ -133,7 +133,7 @@ class WebRtcLoggingController +@@ -134,7 +134,7 @@ class WebRtcLoggingController size_t web_app_id, const StartEventLoggingCallback& callback); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) // Ensures that the WebRTC Logs directory exists and then grants render // process access to the 'WebRTC Logs' directory, and invokes |callback| with // the ids necessary to create a DirectoryEntry object. -@@ -197,7 +197,7 @@ class WebRtcLoggingController +@@ -198,7 +198,7 @@ class WebRtcLoggingController content::BrowserContext* GetBrowserContext() const; -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) // Grants the render process access to the 'WebRTC Logs' directory, and // invokes |callback| with the ids necessary to create a DirectoryEntry // object. If the |logs_path| couldn't be created or found, |error_callback| diff --git a/www/chromium/files/patch-chrome_browser_metrics_chrome__metrics__service__client.cc b/www/chromium/files/patch-chrome_browser_metrics_chrome__metrics__service__client.cc index 4f6767445dcc..3df477f44002 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,115 +1,115 @@ ---- chrome/browser/metrics/chrome_metrics_service_client.cc.orig 2025-10-30 15:44:36 UTC +--- chrome/browser/metrics/chrome_metrics_service_client.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/metrics/chrome_metrics_service_client.cc @@ -204,11 +204,11 @@ #include "chrome/browser/metrics/google_update_metrics_provider_mac.h" #endif -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "components/metrics/motherboard_metrics_provider.h" #endif -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "chrome/browser/metrics/chrome_metrics_service_crash_reporter.h" #endif @@ -226,7 +226,7 @@ #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "chrome/browser/ui/tabs/tab_metrics_provider.h" #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || // BUILDFLAG(IS_CHROMEOS) @@ -246,7 +246,7 @@ const int kMaxHistogramGatheringWaitDuration = 60000; // Needs to be kept in sync with the writer in // third_party/crashpad/crashpad/handler/handler_main.cc. const char kCrashpadHistogramAllocatorName[] = "CrashpadMetrics"; -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) ChromeMetricsServiceCrashReporter& GetCrashReporter() { static base::NoDestructor crash_reporter; return *crash_reporter; @@ -556,7 +556,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) @@ -638,7 +638,7 @@ std::string ChromeMetricsServiceClient::GetVersionStri void ChromeMetricsServiceClient::OnEnvironmentUpdate(std::string* environment) { // TODO(https://bugs.chromium.org/p/crashpad/issues/detail?id=135): call this // on Mac when the Crashpad API supports it. -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Register the environment with the crash reporter. Note that there is a // window from startup to this point during which crash reports will not have // an environment set. @@ -740,7 +740,7 @@ void ChromeMetricsServiceClient::Initialize() { this, local_state, g_browser_process->shared_url_loader_factory()); } #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 @@ -800,7 +800,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 @@ -888,7 +888,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) -@@ -990,7 +990,7 @@ void ChromeMetricsServiceClient::RegisterMetricsServic +@@ -987,7 +987,7 @@ void ChromeMetricsServiceClient::RegisterMetricsServic std::make_unique()); #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) metrics_service_->RegisterMetricsProvider( std::make_unique( g_browser_process->profile_manager())); -@@ -1002,7 +1002,7 @@ void ChromeMetricsServiceClient::RegisterMetricsServic +@@ -999,7 +999,7 @@ void ChromeMetricsServiceClient::RegisterMetricsServic std::make_unique()); #endif -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) metrics_service_->RegisterMetricsProvider( metrics::CreateDesktopSessionMetricsProvider()); #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || (BUILDFLAG(IS_LINUX) -@@ -1202,7 +1202,7 @@ bool ChromeMetricsServiceClient::RegisterForProfileEve +@@ -1203,7 +1203,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( -@@ -1551,7 +1551,7 @@ void ChromeMetricsServiceClient::CreateStructuredMetri +@@ -1552,7 +1552,7 @@ void ChromeMetricsServiceClient::CreateStructuredMetri recorder = base::MakeRefCounted( cros_system_profile_provider_.get()); -#elif BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) +#elif BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) // Make sure that Structured Metrics recording delegates have been created // before the service is created. This is handled in other places for ChromeOS diff --git a/www/chromium/files/patch-chrome_browser_net_profile__network__context__service.cc b/www/chromium/files/patch-chrome_browser_net_profile__network__context__service.cc index 940fb239c281..c986f458e2c1 100644 --- a/www/chromium/files/patch-chrome_browser_net_profile__network__context__service.cc +++ b/www/chromium/files/patch-chrome_browser_net_profile__network__context__service.cc @@ -1,29 +1,29 @@ ---- chrome/browser/net/profile_network_context_service.cc.orig 2025-10-30 15:44:36 UTC +--- chrome/browser/net/profile_network_context_service.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/net/profile_network_context_service.cc -@@ -143,7 +143,7 @@ +@@ -147,7 +147,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" -@@ -293,7 +293,7 @@ void UpdateCookieSettings(Profile* profile, ContentSet +@@ -301,7 +301,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) { -@@ -1269,7 +1269,7 @@ ProfileNetworkContextService::CreateClientCertStore() +@@ -1315,7 +1315,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 b1f1df68d417..20c5a7663058 100644 --- a/www/chromium/files/patch-chrome_browser_net_system__network__context__manager.cc +++ b/www/chromium/files/patch-chrome_browser_net_system__network__context__manager.cc @@ -1,138 +1,138 @@ ---- chrome/browser/net/system_network_context_manager.cc.orig 2025-10-30 15:44:36 UTC +--- chrome/browser/net/system_network_context_manager.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/net/system_network_context_manager.cc @@ -138,7 +138,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; @@ -146,7 +146,7 @@ bool g_network_service_will_allow_gssapi_library_load const char* kGssapiDesiredPref = #if BUILDFLAG(IS_CHROMEOS) prefs::kKerberosEnabled; -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) prefs::kReceivedHttpAuthNegotiateHeader; #endif #endif // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) @@ -192,7 +192,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) @@ -207,7 +207,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) @@ -217,7 +217,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 @@ -265,11 +265,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 || @@ -285,7 +285,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) @@ -588,7 +588,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) {} @@ -646,7 +646,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) @@ -660,7 +660,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) @@ -732,7 +732,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) @@ -757,11 +757,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) @@ -815,7 +815,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) -@@ -1042,7 +1042,7 @@ bool SystemNetworkContextManager::IsNetworkSandboxEnab +@@ -1047,7 +1047,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_new__tab__page_new__tab__page__util.cc b/www/chromium/files/patch-chrome_browser_new__tab__page_new__tab__page__util.cc index 734a50499070..124ea2c97ab2 100644 --- a/www/chromium/files/patch-chrome_browser_new__tab__page_new__tab__page__util.cc +++ b/www/chromium/files/patch-chrome_browser_new__tab__page_new__tab__page__util.cc @@ -1,11 +1,11 @@ ---- chrome/browser/new_tab_page/new_tab_page_util.cc.orig 2025-10-02 04:28:32 UTC +--- chrome/browser/new_tab_page/new_tab_page_util.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/new_tab_page/new_tab_page_util.cc -@@ -35,7 +35,7 @@ bool IsOsSupportedForCart() { +@@ -38,7 +38,7 @@ bool IsOsSupportedForCart() { } bool IsOsSupportedForDrive() { -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) return true; #else return false; diff --git a/www/chromium/files/patch-chrome_browser_page__load__metrics_page__load__metrics__initialize.cc b/www/chromium/files/patch-chrome_browser_page__load__metrics_page__load__metrics__initialize.cc index cbfd54100b4b..4a0310aa4cca 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 2025-10-30 15:44:36 UTC +--- chrome/browser/page_load_metrics/page_load_metrics_initialize.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/page_load_metrics/page_load_metrics_initialize.cc @@ -70,7 +70,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) -@@ -342,7 +342,7 @@ bool PageLoadMetricsEmbedder::IsInternalWebUI(const GU +@@ -351,7 +351,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 8a30cf83dc21..d4750394b9ab 100644 --- a/www/chromium/files/patch-chrome_browser_password__manager_chrome__password__manager__client.cc +++ b/www/chromium/files/patch-chrome_browser_password__manager_chrome__password__manager__client.cc @@ -1,38 +1,38 @@ ---- chrome/browser/password_manager/chrome_password_manager_client.cc.orig 2025-10-30 15:44:36 UTC +--- chrome/browser/password_manager/chrome_password_manager_client.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/password_manager/chrome_password_manager_client.cc -@@ -678,7 +678,7 @@ void ChromePasswordManagerClient::ContinueShowKeyboard +@@ -694,7 +694,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; } -@@ -955,7 +955,7 @@ void ChromePasswordManagerClient::NotifyUserCredential +@@ -988,7 +988,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) { -@@ -1987,7 +1987,7 @@ void ChromePasswordManagerClient::HideFillingUI() { +@@ -2016,7 +2016,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; } -@@ -2026,7 +2026,7 @@ bool ChromePasswordManagerClient::IsPasswordManagement +@@ -2055,7 +2055,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 c75c640b719b..02ba03e29788 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 2025-10-30 15:44:36 UTC +--- chrome/browser/picture_in_picture/picture_in_picture_window_manager.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/picture_in_picture/picture_in_picture_window_manager.cc -@@ -22,7 +22,7 @@ +@@ -21,7 +21,7 @@ #include "ui/gfx/geometry/resize_utils.h" #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) @@ -585,7 +585,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/1460025 . 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 2b5f89cc417e..20977f0410cc 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,215 +1,206 @@ ---- chrome/browser/policy/configuration_policy_handler_list_factory.cc.orig 2025-10-30 15:44:36 UTC +--- chrome/browser/policy/configuration_policy_handler_list_factory.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/policy/configuration_policy_handler_list_factory.cc -@@ -247,7 +247,7 @@ +@@ -248,7 +248,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" -@@ -614,7 +614,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = +@@ -623,7 +623,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 }, -@@ -964,7 +964,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = +@@ -973,7 +973,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 }, -@@ -976,7 +976,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = +@@ -985,7 +985,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 }, -@@ -1858,7 +1858,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = - base::Value::Type::BOOLEAN }, +@@ -1864,7 +1864,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 }, -@@ -1920,7 +1920,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = +@@ -1926,7 +1926,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 }, -@@ -1940,12 +1940,12 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = +@@ -1946,12 +1946,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 }, -@@ -1959,7 +1959,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = +@@ -1965,7 +1965,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = prefs::kLiveTranslateEnabled, base::Value::Type::BOOLEAN }, #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) { key::kDefaultBrowserSettingEnabled, prefs::kDefaultBrowserSettingEnabled, base::Value::Type::BOOLEAN }, -@@ -1971,7 +1971,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = +@@ -1977,7 +1977,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = base::Value::Type::BOOLEAN }, #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) \ - || BUILDFLAG(IS_CHROMEOS) + || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) { key::kAutoplayAllowed, prefs::kAutoplayAllowed, base::Value::Type::BOOLEAN }, -@@ -2081,7 +2081,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = +@@ -2087,7 +2087,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 }, -@@ -2186,7 +2186,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = +@@ -2192,7 +2192,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 }, -@@ -2265,7 +2265,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = +@@ -2271,7 +2271,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 }, -@@ -2300,7 +2300,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = +@@ -2306,7 +2306,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = prefs::kRestrictCoreSharingOnRenderer, base::Value::Type::BOOLEAN }, #endif // BUILDFLAG(IS_WIN) -#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) { key::kOutOfProcessSystemDnsResolutionEnabled, prefs::kOutOfProcessSystemDnsResolutionEnabled, base::Value::Type::BOOLEAN }, -@@ -2334,7 +2334,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = +@@ -2340,7 +2340,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}, -@@ -2357,7 +2357,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = +@@ -2363,7 +2363,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = { key::kTabCompareSettings, optimization_guide::prefs::kProductSpecificationsEnterprisePolicyAllowed, base::Value::Type::INTEGER}, -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_ANDROID) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) { key::kChromeForTestingAllowed, prefs::kChromeForTestingAllowed, base::Value::Type::BOOLEAN }, -@@ -2436,7 +2436,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = +@@ -2442,7 +2442,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 }, -@@ -2582,7 +2582,7 @@ std::unique_ptr BuildH +@@ -2593,7 +2593,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, -@@ -2852,7 +2852,7 @@ std::unique_ptr BuildH +@@ -2866,7 +2866,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()); -@@ -2946,7 +2946,7 @@ std::unique_ptr BuildH +@@ -2960,7 +2960,7 @@ std::unique_ptr BuildH std::vector> signin_legacy_policies; #if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || \ - BUILDFLAG(IS_LINUX) + BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) signin_legacy_policies.push_back(std::make_unique( key::kForceBrowserSignin, prefs::kForceBrowserSignin, base::Value::Type::BOOLEAN)); -@@ -3328,7 +3328,7 @@ std::unique_ptr BuildH +@@ -3342,7 +3342,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( -@@ -3336,7 +3336,7 @@ std::unique_ptr BuildH +@@ -3350,7 +3350,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)); -@@ -3389,7 +3389,7 @@ std::unique_ptr BuildH +@@ -3403,7 +3403,7 @@ std::unique_ptr BuildH std::vector gen_ai_default_policies; #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) gen_ai_default_policies.emplace_back( key::kAutofillPredictionSettings, optimization_guide::prefs:: -@@ -3466,7 +3466,7 @@ std::unique_ptr BuildH - std::make_unique())); - #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) - handlers->AddHandler(std::make_unique( - std::make_unique( - key::kCacheEncryptionEnabled, diff --git a/www/chromium/files/patch-chrome_browser_policy_developer__tools__policy__checker__factory.cc b/www/chromium/files/patch-chrome_browser_policy_developer__tools__policy__checker__factory.cc new file mode 100644 index 000000000000..046a91be0127 --- /dev/null +++ b/www/chromium/files/patch-chrome_browser_policy_developer__tools__policy__checker__factory.cc @@ -0,0 +1,11 @@ +--- chrome/browser/policy/developer_tools_policy_checker_factory.cc.orig 2025-12-05 10:12:50 UTC ++++ chrome/browser/policy/developer_tools_policy_checker_factory.cc +@@ -58,7 +58,7 @@ void DeveloperToolsPolicyCheckerFactory::RegisterProfi + static_cast(DeveloperToolsPolicyHandler::Availability:: + kDisallowedForForceInstalledExtensions)); + #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || \ +- BUILDFLAG(IS_CHROMEOS) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + registry->RegisterListPref(prefs::kDeveloperToolsAvailabilityAllowlist); + registry->RegisterListPref(prefs::kDeveloperToolsAvailabilityBlocklist); + #endif 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 3e01d7a47257..18d867eba3ac 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,68 @@ ---- chrome/browser/prefs/browser_prefs.cc.orig 2025-10-30 15:44:36 UTC +--- chrome/browser/prefs/browser_prefs.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/prefs/browser_prefs.cc -@@ -330,7 +330,7 @@ +@@ -334,7 +334,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 -@@ -497,11 +497,11 @@ +@@ -500,11 +500,11 @@ #endif #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "components/device_signals/core/browser/pref_names.h" // nogncheck due to crbug.com/1125897 #endif -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "chrome/browser/browser_switcher/browser_switcher_prefs.h" #include "chrome/browser/enterprise/signin/enterprise_signin_prefs.h" #endif -@@ -529,7 +529,7 @@ +@@ -532,7 +532,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 -@@ -1850,7 +1850,7 @@ void RegisterLocalState(PrefRegistrySimple* registry) +@@ -1666,7 +1666,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 -@@ -2001,7 +2001,7 @@ void RegisterLocalState(PrefRegistrySimple* registry) +@@ -1817,7 +1817,7 @@ void RegisterLocalState(PrefRegistrySimple* registry) #endif // BUILDFLAG(ENABLE_PDF) #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || \ - BUILDFLAG(IS_ANDROID) + BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) registry->RegisterBooleanPref(prefs::kChromeForTestingAllowed, true); #endif -@@ -2375,13 +2375,13 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySync +@@ -2193,13 +2193,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 diff --git a/www/chromium/files/patch-chrome_browser_privacy__sandbox_incognito_privacy__sandbox__incognito__tab__observer.cc b/www/chromium/files/patch-chrome_browser_privacy__sandbox_incognito_privacy__sandbox__incognito__tab__observer.cc deleted file mode 100644 index 928d0308fd1d..000000000000 --- a/www/chromium/files/patch-chrome_browser_privacy__sandbox_incognito_privacy__sandbox__incognito__tab__observer.cc +++ /dev/null @@ -1,29 +0,0 @@ ---- chrome/browser/privacy_sandbox/incognito/privacy_sandbox_incognito_tab_observer.cc.orig 2025-10-30 15:44:36 UTC -+++ chrome/browser/privacy_sandbox/incognito/privacy_sandbox_incognito_tab_observer.cc -@@ -11,7 +11,7 @@ - #include "privacy_sandbox_incognito_survey_service.h" - #include "privacy_sandbox_incognito_survey_service_factory.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 "privacy_sandbox_whats_new_survey_service.h" - #include "privacy_sandbox_whats_new_survey_service_factory.h" - #endif -@@ -40,7 +40,7 @@ void PrivacySandboxIncognitoTabObserver::DidFinishLoad - return; - } - --#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - // What's new page is fully contained within a single iframe for all the - // contents. The survey on the "What's New" page should only appear when the - // *iframe's* content is fully loaded. This happens after the main frame's -@@ -72,7 +72,7 @@ bool PrivacySandboxIncognitoTabObserver::IsNewTabPage( - url == chrome::kChromeUINewTabURL; - } - --#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - // constant kChromeUIWhatsNewURL is defined only for this three. - bool PrivacySandboxIncognitoTabObserver::IsWhatsNewPage(const GURL& url) { - return url == chrome::kChromeUIWhatsNewURL; diff --git a/www/chromium/files/patch-chrome_browser_privacy__sandbox_incognito_privacy__sandbox__incognito__tab__observer.h b/www/chromium/files/patch-chrome_browser_privacy__sandbox_incognito_privacy__sandbox__incognito__tab__observer.h deleted file mode 100644 index 13b3ce41e6d4..000000000000 --- a/www/chromium/files/patch-chrome_browser_privacy__sandbox_incognito_privacy__sandbox__incognito__tab__observer.h +++ /dev/null @@ -1,11 +0,0 @@ ---- chrome/browser/privacy_sandbox/incognito/privacy_sandbox_incognito_tab_observer.h.orig 2025-10-30 15:44:36 UTC -+++ chrome/browser/privacy_sandbox/incognito/privacy_sandbox_incognito_tab_observer.h -@@ -23,7 +23,7 @@ class PrivacySandboxIncognitoTabObserver : public cont - - private: - bool IsNewTabPage(const GURL& url); --#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - bool IsWhatsNewPage(const GURL& url); - #endif - }; diff --git a/www/chromium/files/patch-chrome_browser_privacy__sandbox_incognito_privacy__sandbox__whats__new__survey__service.h b/www/chromium/files/patch-chrome_browser_privacy__sandbox_incognito_privacy__sandbox__whats__new__survey__service.h deleted file mode 100644 index 3c5fef3b12df..000000000000 --- a/www/chromium/files/patch-chrome_browser_privacy__sandbox_incognito_privacy__sandbox__whats__new__survey__service.h +++ /dev/null @@ -1,11 +0,0 @@ ---- chrome/browser/privacy_sandbox/incognito/privacy_sandbox_whats_new_survey_service.h.orig 2025-10-30 15:44:36 UTC -+++ chrome/browser/privacy_sandbox/incognito/privacy_sandbox_whats_new_survey_service.h -@@ -16,7 +16,7 @@ - #include "components/keyed_service/core/keyed_service.h" - #include "content/public/browser/web_contents.h" - --#if !BUILDFLAG(IS_WIN) && !BUILDFLAG(IS_MAC) && !BUILDFLAG(IS_LINUX) -+#if !BUILDFLAG(IS_WIN) && !BUILDFLAG(IS_MAC) && !BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_BSD) - #error This file should only be included on Win, Mac or Linux - #endif - 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 e3678d7b3a1b..d8c0373647b1 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,151 +1,151 @@ ---- chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc.orig 2025-10-30 15:44:36 UTC +--- chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc -@@ -387,7 +387,7 @@ +@@ -390,7 +390,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/client_certificates/certificate_provisioning_service_factory.h" #include "chrome/browser/enterprise/client_certificates/certificate_store_factory.h" #include "chrome/browser/enterprise/idle/idle_service_factory.h" -@@ -432,7 +432,7 @@ +@@ -435,7 +435,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/ui/tabs/saved_tab_groups/collaboration_messaging_observer_factory.h" -@@ -442,11 +442,11 @@ - #if !BUILDFLAG(IS_ANDROID) - #include "chrome/browser/password_manager/startup_passwords_import_service_factory.h" // nogncheck (Desktop only) +@@ -447,11 +447,11 @@ + #include "chrome/browser/webauthn/passkey_unlock_manager_factory.h" + #include "device/fido/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) +#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/signin/enterprise_signin_service_factory.h" #include "chrome/browser/enterprise/signin/oidc_authentication_signin_interceptor_factory.h" -@@ -672,7 +672,7 @@ void ChromeBrowserMainExtraPartsProfiles:: - AccountInvestigatorFactory::GetInstance(); +@@ -676,7 +676,7 @@ void ChromeBrowserMainExtraPartsProfiles:: AccountPasswordStoreFactory::GetInstance(); AccountReconcilorFactory::GetInstance(); + autofill::AccountSettingServiceFactory::GetInstance(); -#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(); #endif #if !BUILDFLAG(IS_ANDROID) -@@ -771,7 +771,7 @@ void ChromeBrowserMainExtraPartsProfiles:: +@@ -775,7 +775,7 @@ void ChromeBrowserMainExtraPartsProfiles:: DiceBoundSessionCookieServiceFactory::GetInstance(); #endif #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) browser_switcher::BrowserSwitcherServiceFactory::GetInstance(); #endif browser_sync::UserEventServiceFactory::GetInstance(); -@@ -834,7 +834,7 @@ void ChromeBrowserMainExtraPartsProfiles:: +@@ -839,7 +839,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(); -@@ -842,7 +842,7 @@ void ChromeBrowserMainExtraPartsProfiles:: - contextual_tasks::ContextualTasksContextControllerFactory::GetInstance(); - contextual_tasks::ContextualTasksServiceFactory::GetInstance(); +@@ -853,7 +853,7 @@ void ChromeBrowserMainExtraPartsProfiles:: + contextual_tasks::ContextualTasksUiServiceFactory::GetInstance(); + #endif ContentIndexProviderFactory::GetInstance(); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) contextual_cueing::ContextualCueingServiceFactory::GetInstance(); #endif - ContextualSessionServiceFactory::GetInstance(); -@@ -895,11 +895,11 @@ void ChromeBrowserMainExtraPartsProfiles:: + ContextualSearchServiceFactory::GetInstance(); +@@ -907,11 +907,11 @@ void ChromeBrowserMainExtraPartsProfiles:: enterprise_connectors::ConnectorsServiceFactory::GetInstance(); enterprise_connectors::ReportingEventRouterFactory::GetInstance(); #if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_WIN) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) enterprise_connectors::DeviceTrustConnectorServiceFactory::GetInstance(); enterprise_connectors::DeviceTrustServiceFactory::GetInstance(); #endif -#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN)) && \ +#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD)) && \ BUILDFLAG(ENTERPRISE_LOCAL_CONTENT_ANALYSIS) && \ BUILDFLAG(SAFE_BROWSING_AVAILABLE) enterprise_connectors::LocalBinaryUploadServiceFactory::GetInstance(); -@@ -909,7 +909,7 @@ void ChromeBrowserMainExtraPartsProfiles:: +@@ -921,7 +921,7 @@ void ChromeBrowserMainExtraPartsProfiles:: 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 -@@ -918,10 +918,10 @@ void ChromeBrowserMainExtraPartsProfiles:: +@@ -930,10 +930,10 @@ void ChromeBrowserMainExtraPartsProfiles:: #endif enterprise_reporting::LegacyTechServiceFactory::GetInstance(); #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(ENABLE_SESSION_SERVICE) -@@ -1059,7 +1059,7 @@ void ChromeBrowserMainExtraPartsProfiles:: +@@ -1069,7 +1069,7 @@ void ChromeBrowserMainExtraPartsProfiles:: #if BUILDFLAG(IS_ANDROID) MerchantViewerDataManagerFactory::GetInstance(); #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) metrics::DesktopProfileSessionDurationsServiceFactory::GetInstance(); #endif #if !BUILDFLAG(IS_ANDROID) -@@ -1147,7 +1147,7 @@ void ChromeBrowserMainExtraPartsProfiles:: +@@ -1162,7 +1162,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(); -@@ -1192,7 +1192,7 @@ void ChromeBrowserMainExtraPartsProfiles:: +@@ -1205,7 +1205,7 @@ void ChromeBrowserMainExtraPartsProfiles:: #if BUILDFLAG(IS_CHROMEOS) policy::PolicyCertServiceFactory::GetInstance(); #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) policy::ProfileTokenPolicyWebSigninServiceFactory::GetInstance(); policy::UserPolicyOidcSigninServiceFactory::GetInstance(); #endif -@@ -1229,7 +1229,7 @@ void ChromeBrowserMainExtraPartsProfiles:: +@@ -1240,7 +1240,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(); - PrivacySandboxWhatsNewSurveyServiceFactory::GetInstance(); -@@ -1250,7 +1250,7 @@ void ChromeBrowserMainExtraPartsProfiles:: + #endif +@@ -1260,7 +1260,7 @@ void ChromeBrowserMainExtraPartsProfiles:: ReduceAcceptLanguageFactory::GetInstance(); RendererUpdaterFactory::GetInstance(); regional_capabilities::RegionalCapabilitiesServiceFactory::GetInstance(); -#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) reporting::ManualTestHeartbeatEventFactory::GetInstance(); #endif - #if !BUILDFLAG(IS_ANDROID) + RevokedPermissionsOSNotificationDisplayManagerFactory::GetInstance(); 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 cfeceba90a4e..b84160bc55c2 100644 --- a/www/chromium/files/patch-chrome_browser_profiles_profile__impl.cc +++ b/www/chromium/files/patch-chrome_browser_profiles_profile__impl.cc @@ -1,40 +1,40 @@ ---- chrome/browser/profiles/profile_impl.cc.orig 2025-10-02 04:28:32 UTC +--- chrome/browser/profiles/profile_impl.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/profiles/profile_impl.cc -@@ -268,6 +268,10 @@ +@@ -265,6 +265,10 @@ #include "chrome/browser/safe_browsing/safe_browsing_service.h" #endif +#if BUILDFLAG(IS_BSD) +#include "sandbox/policy/sandbox.h" +#endif + using bookmarks::BookmarkModel; using content::BrowserThread; using content::DownloadManagerDelegate; -@@ -602,7 +606,7 @@ void ProfileImpl::LoadPrefsForNormalStartup(bool async +@@ -599,7 +603,7 @@ void ProfileImpl::LoadPrefsForNormalStartup(bool async policy_provider = GetUserCloudPolicyManagerAsh(); #else // !BUILDFLAG(IS_CHROMEOS) { -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) ProfileManager* profile_manager = g_browser_process->profile_manager(); ProfileAttributesEntry* entry = profile_manager->GetProfileAttributesStorage() -@@ -876,7 +880,17 @@ void ProfileImpl::DoFinalInit(CreateMode create_mode) +@@ -871,7 +875,17 @@ void ProfileImpl::DoFinalInit(CreateMode create_mode) } base::FilePath ProfileImpl::last_selected_directory() { +#if BUILDFLAG(IS_OPENBSD) + // If unveil(2) is used, force the file dialog directory to something we + // know is available. + auto* sandbox = sandbox::policy::SandboxLinux::GetInstance(); + if (sandbox->unveil_initialized()) + return GetPrefs()->GetFilePath(prefs::kDownloadDefaultDirectory); + else + return GetPrefs()->GetFilePath(prefs::kSelectFileLastDirectory); +#else return GetPrefs()->GetFilePath(prefs::kSelectFileLastDirectory); +#endif } void ProfileImpl::set_last_selected_directory(const base::FilePath& path) { diff --git a/www/chromium/files/patch-chrome_browser_profiles_profile__io__data.cc b/www/chromium/files/patch-chrome_browser_profiles_profile__io__data.cc index 1e84733a35e1..d450c2456a97 100644 --- a/www/chromium/files/patch-chrome_browser_profiles_profile__io__data.cc +++ b/www/chromium/files/patch-chrome_browser_profiles_profile__io__data.cc @@ -1,20 +1,20 @@ ---- chrome/browser/profiles/profile_io_data.cc.orig 2025-10-30 15:44:36 UTC +--- chrome/browser/profiles/profile_io_data.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/profiles/profile_io_data.cc @@ -17,7 +17,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) -@@ -57,7 +57,7 @@ bool ProfileIOData::IsHandledProtocol(const std::strin +@@ -57,7 +57,7 @@ bool ProfileIOData::IsHandledProtocol(std::string_view url::kFileSystemScheme, chrome::kChromeSearchScheme, #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) webapps::kIsolatedAppScheme, #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || // BUILDFLAG(IS_CHROMEOS) 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 f16e42e83a69..bee8b98fbcd4 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 2025-11-12 08:17:34 UTC +--- chrome/browser/renderer_context_menu/render_view_context_menu.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/renderer_context_menu/render_view_context_menu.cc -@@ -243,7 +243,7 @@ +@@ -248,7 +248,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) -@@ -4985,7 +4985,7 @@ void RenderViewContextMenu::OpenLinkInSplitView() { +@@ -5024,7 +5024,7 @@ void RenderViewContextMenu::OpenLinkInSplitView() { #endif // !BUILDFLAG(IS_ANDROID) #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_safe__browsing_chrome__password__protection__service.cc b/www/chromium/files/patch-chrome_browser_safe__browsing_chrome__password__protection__service.cc index 978d683eb739..40e7131bd2f5 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 2025-10-30 15:44:36 UTC +--- chrome/browser/safe_browsing/chrome_password_protection_service.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/safe_browsing/chrome_password_protection_service.cc -@@ -1288,7 +1288,7 @@ std::string ChromePasswordProtectionService::GetOrgani +@@ -1292,7 +1292,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_safe__browsing_cloud__content__scanning_binary__upload__service.cc b/www/chromium/files/patch-chrome_browser_safe__browsing_cloud__content__scanning_binary__upload__service.cc index 192f8b507a6a..534b45b3969a 100644 --- a/www/chromium/files/patch-chrome_browser_safe__browsing_cloud__content__scanning_binary__upload__service.cc +++ b/www/chromium/files/patch-chrome_browser_safe__browsing_cloud__content__scanning_binary__upload__service.cc @@ -1,11 +1,11 @@ ---- chrome/browser/safe_browsing/cloud_content_scanning/binary_upload_service.cc.orig 2025-05-05 10:57:53 UTC +--- chrome/browser/safe_browsing/cloud_content_scanning/binary_upload_service.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/safe_browsing/cloud_content_scanning/binary_upload_service.cc -@@ -20,7 +20,7 @@ +@@ -21,7 +21,7 @@ #include "components/safe_browsing/core/common/safebrowsing_switches.h" #include "net/base/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/enterprise/connectors/analysis/local_binary_upload_service_factory.h" #endif diff --git a/www/chromium/files/patch-chrome_browser_safe__browsing_safe__browsing__pref__change__handler.cc b/www/chromium/files/patch-chrome_browser_safe__browsing_safe__browsing__pref__change__handler.cc index 321f2484a2c5..f1867a408be7 100644 --- a/www/chromium/files/patch-chrome_browser_safe__browsing_safe__browsing__pref__change__handler.cc +++ b/www/chromium/files/patch-chrome_browser_safe__browsing_safe__browsing__pref__change__handler.cc @@ -1,29 +1,29 @@ ---- chrome/browser/safe_browsing/safe_browsing_pref_change_handler.cc.orig 2025-10-30 15:44:36 UTC +--- chrome/browser/safe_browsing/safe_browsing_pref_change_handler.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/safe_browsing/safe_browsing_pref_change_handler.cc -@@ -12,7 +12,7 @@ +@@ -14,7 +14,7 @@ #include "content/public/browser/web_contents.h" #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_WIN) || \ - BUILDFLAG(IS_MAC) + BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) #include "chrome/browser/ui/browser_finder.h" #include "chrome/browser/ui/browser_window/public/browser_window_features.h" #include "chrome/browser/ui/toasts/api/toast_id.h" -@@ -59,7 +59,7 @@ SafeBrowsingPrefChangeHandler::~SafeBrowsingPrefChange +@@ -61,7 +61,7 @@ SafeBrowsingPrefChangeHandler::~SafeBrowsingPrefChange void SafeBrowsingPrefChangeHandler:: MaybeShowEnhancedProtectionSettingChangeNotification() { #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_WIN) || \ - BUILDFLAG(IS_MAC) + BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) if (!profile_ || !base::FeatureList::IsEnabled(safe_browsing::kEsbAsASyncedSetting)) { return; -@@ -186,7 +186,7 @@ void SafeBrowsingPrefChangeHandler:: +@@ -216,7 +216,7 @@ void SafeBrowsingPrefChangeHandler:: } #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_WIN) || \ - BUILDFLAG(IS_MAC) + BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) void SafeBrowsingPrefChangeHandler::SetToastControllerForTesting( ToastController* controller) { toast_controller_for_testing_ = controller; 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 ffa11f9a2c7a..10ed0de36051 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 2025-10-02 04:28:32 UTC +--- chrome/browser/signin/chrome_signin_client.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/signin/chrome_signin_client.cc -@@ -164,7 +164,7 @@ signin_metrics::ProfileSignout kAlwaysAllowedSignoutSo +@@ -165,7 +165,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_signin_signin__hats__util.cc b/www/chromium/files/patch-chrome_browser_signin_signin__hats__util.cc index d8889a8a4ff2..ceb17551c454 100644 --- a/www/chromium/files/patch-chrome_browser_signin_signin__hats__util.cc +++ b/www/chromium/files/patch-chrome_browser_signin_signin__hats__util.cc @@ -1,29 +1,29 @@ ---- chrome/browser/signin/signin_hats_util.cc.orig 2025-09-06 10:01:20 UTC +--- chrome/browser/signin/signin_hats_util.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/signin/signin_hats_util.cc -@@ -36,7 +36,7 @@ +@@ -39,7 +39,7 @@ namespace { -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) constexpr char kChannel[] = "Channel"; constexpr char kChromeVersion[] = "Chrome Version"; constexpr char kNumberOfChromeProfiles[] = "Number of Chrome Profiles"; -@@ -153,7 +153,7 @@ SurveyStringData GetSigninSurveyStringData( +@@ -123,7 +123,7 @@ SurveyStringData GetSigninSurveyStringData( namespace signin { bool IsFeatureEnabledForSigninHatsTrigger(const std::string& trigger) { -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - for (const auto& entry : kChromeIdentityHatsTriggerFeatureMapping) { - if (trigger == entry.trigger) { - return base::FeatureList::IsEnabled(*entry.feature); -@@ -171,7 +171,7 @@ void LaunchSigninHatsSurveyForProfile(const std::strin + static const base::NoDestructor< + base::flat_map> + kChromeIdentityHatsTriggerFeatureMap({ +@@ -168,7 +168,7 @@ void LaunchSigninHatsSurveyForProfile(const std::strin bool defer_if_no_browser, std::optional access_point_for_data_type_promo) { -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (!profile || !IsFeatureEnabledForSigninHatsTrigger(trigger)) { return; } diff --git a/www/chromium/files/patch-chrome_browser_supervised__user_supervised__user__browser__utils.cc b/www/chromium/files/patch-chrome_browser_supervised__user_supervised__user__browser__utils.cc index b9b4a5af9db1..2ce0ed2cc749 100644 --- a/www/chromium/files/patch-chrome_browser_supervised__user_supervised__user__browser__utils.cc +++ b/www/chromium/files/patch-chrome_browser_supervised__user_supervised__user__browser__utils.cc @@ -1,20 +1,20 @@ ---- chrome/browser/supervised_user/supervised_user_browser_utils.cc.orig 2025-05-28 14:55:43 UTC +--- chrome/browser/supervised_user/supervised_user_browser_utils.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/supervised_user/supervised_user_browser_utils.cc @@ -40,7 +40,7 @@ #include "chrome/browser/ash/profiles/profile_helper.h" #include "components/user_manager/user.h" #include "components/user_manager/user_type.h" -#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) #include "chrome/browser/supervised_user/supervised_user_verification_controller_client.h" #include "chrome/browser/supervised_user/supervised_user_verification_page_blocked_sites.h" #include "chrome/browser/supervised_user/supervised_user_verification_page_youtube.h" -@@ -158,7 +158,7 @@ void AssertChildStatusOfTheUser(Profile* profile, bool +@@ -157,7 +157,7 @@ void AssertChildStatusOfTheUser(Profile* profile, bool #endif } -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) std::string CreateReauthenticationInterstitialForYouTube( content::NavigationHandle& navigation_handle) { content::WebContents* web_contents = navigation_handle.GetWebContents(); diff --git a/www/chromium/files/patch-chrome_browser_supervised__user_supervised__user__extensions__manager.h b/www/chromium/files/patch-chrome_browser_supervised__user_supervised__user__extensions__manager.h index 5544712f65e2..47998d16bc5c 100644 --- a/www/chromium/files/patch-chrome_browser_supervised__user_supervised__user__extensions__manager.h +++ b/www/chromium/files/patch-chrome_browser_supervised__user_supervised__user__extensions__manager.h @@ -1,11 +1,11 @@ ---- chrome/browser/supervised_user/supervised_user_extensions_manager.h.orig 2025-10-02 04:28:32 UTC +--- chrome/browser/supervised_user/supervised_user_extensions_manager.h.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/supervised_user/supervised_user_extensions_manager.h -@@ -151,7 +151,7 @@ class SupervisedUserExtensionsManager : public Extensi +@@ -147,7 +147,7 @@ class SupervisedUserExtensionsManager : public Extensi // launched. bool ShouldBlockExtension(const std::string& extension_id) const; -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Triggers an one-time migration of the present extensions as parent-approved // when the feature // `kEnableSupervisedUserSkipParentApprovalToInstallExtensions` becomes 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 aa05a3d198ee..4f85c917683a 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 2025-10-30 15:44:36 UTC +--- chrome/browser/sync/sync_service_factory.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/sync/sync_service_factory.cc -@@ -134,7 +134,7 @@ namespace { +@@ -135,7 +135,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); -@@ -399,7 +399,7 @@ std::unique_ptr BuildSyncService( +@@ -402,7 +402,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_actions_chrome__action__id.h b/www/chromium/files/patch-chrome_browser_ui_actions_chrome__action__id.h index c657c0365b97..6962f6547037 100644 --- a/www/chromium/files/patch-chrome_browser_ui_actions_chrome__action__id.h +++ b/www/chromium/files/patch-chrome_browser_ui_actions_chrome__action__id.h @@ -1,11 +1,11 @@ ---- chrome/browser/ui/actions/chrome_action_id.h.orig 2025-10-30 15:44:36 UTC +--- chrome/browser/ui/actions/chrome_action_id.h.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/ui/actions/chrome_action_id.h -@@ -512,7 +512,7 @@ +@@ -519,7 +519,7 @@ #if BUILDFLAG(IS_CHROMEOS) #define CHROME_PLATFORM_SPECIFIC_ACTION_IDS \ E(kToggleMultitaskMenu, IDC_TOGGLE_MULTITASK_MENU) -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #define CHROME_PLATFORM_SPECIFIC_ACTION_IDS \ E(kUseSystemTitleBar, IDC_USE_SYSTEM_TITLE_BAR) \ E(kRestoreWindow, IDC_RESTORE_WINDOW) diff --git a/www/chromium/files/patch-chrome_browser_ui_browser.h b/www/chromium/files/patch-chrome_browser_ui_browser.h index 429fd3f275a3..86937ce7fb9e 100644 --- a/www/chromium/files/patch-chrome_browser_ui_browser.h +++ b/www/chromium/files/patch-chrome_browser_ui_browser.h @@ -1,11 +1,11 @@ ---- chrome/browser/ui/browser.h.orig 2025-10-02 04:28:32 UTC +--- chrome/browser/ui/browser.h.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/ui/browser.h -@@ -270,7 +270,7 @@ class Browser : public TabStripModelObserver, +@@ -258,7 +258,7 @@ class Browser : public TabStripModelObserver, std::optional display_id; #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // When the browser window is shown, the desktop environment is notified // using this ID. In response, the desktop will stop playing the "waiting // for startup" animation (if any). diff --git a/www/chromium/files/patch-chrome_browser_ui_browser__command__controller.cc b/www/chromium/files/patch-chrome_browser_ui_browser__command__controller.cc index 2bc5d8f98ede..6699d48916fd 100644 --- a/www/chromium/files/patch-chrome_browser_ui_browser__command__controller.cc +++ b/www/chromium/files/patch-chrome_browser_ui_browser__command__controller.cc @@ -1,74 +1,74 @@ ---- chrome/browser/ui/browser_command_controller.cc.orig 2025-10-30 15:44:36 UTC +--- chrome/browser/ui/browser_command_controller.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/ui/browser_command_controller.cc -@@ -129,7 +129,7 @@ +@@ -130,7 +130,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" -@@ -139,7 +139,7 @@ +@@ -140,7 +140,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) -@@ -373,7 +373,7 @@ bool BrowserCommandController::IsReservedCommandOrKey( +@@ -374,7 +374,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(); -@@ -676,7 +676,7 @@ bool BrowserCommandController::ExecuteCommandWithDispo +@@ -677,7 +677,7 @@ bool BrowserCommandController::ExecuteCommandWithDispo break; #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) case IDC_MINIMIZE_WINDOW: browser_->window()->Minimize(); break; -@@ -898,7 +898,7 @@ bool BrowserCommandController::ExecuteCommandWithDispo +@@ -907,7 +907,7 @@ bool BrowserCommandController::ExecuteCommandWithDispo break; case IDC_CREATE_SHORTCUT: base::RecordAction(base::UserMetricsAction("CreateShortcut")); -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) chrome::CreateDesktopShortcutForActiveWebContents(browser_); #else web_app::CreateWebAppFromCurrentWebContents( -@@ -1075,7 +1075,7 @@ bool BrowserCommandController::ExecuteCommandWithDispo +@@ -1087,7 +1087,7 @@ bool BrowserCommandController::ExecuteCommandWithDispo #endif // BUILDFLAG(GOOGLE_CHROME_BRANDING) case IDC_CHROME_WHATS_NEW: #if BUILDFLAG(GOOGLE_CHROME_BRANDING) && \ - (BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX)) + (BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) ShowChromeWhatsNew(browser_); break; #else -@@ -1464,7 +1464,7 @@ void BrowserCommandController::InitCommandState() { +@@ -1474,7 +1474,7 @@ void BrowserCommandController::InitCommandState() { command_updater_.UpdateCommandEnabled(IDC_VISIT_DESKTOP_OF_LRU_USER_4, true); command_updater_.UpdateCommandEnabled(IDC_VISIT_DESKTOP_OF_LRU_USER_5, true); #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) command_updater_.UpdateCommandEnabled(IDC_MINIMIZE_WINDOW, true); command_updater_.UpdateCommandEnabled(IDC_MAXIMIZE_WINDOW, true); command_updater_.UpdateCommandEnabled(IDC_RESTORE_WINDOW, true); -@@ -1824,7 +1824,7 @@ void BrowserCommandController::UpdateCommandsForTabSta +@@ -1838,7 +1838,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 da64a2d11405..1fb9127c127e 100644 --- a/www/chromium/files/patch-chrome_browser_ui_browser__commands.cc +++ b/www/chromium/files/patch-chrome_browser_ui_browser__commands.cc @@ -1,11 +1,11 @@ ---- chrome/browser/ui/browser_commands.cc.orig 2025-10-30 15:44:36 UTC +--- chrome/browser/ui/browser_commands.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/ui/browser_commands.cc -@@ -2298,7 +2298,7 @@ void OpenUpdateChromeDialog(Browser* browser) { +@@ -2354,7 +2354,7 @@ void OpenUpdateChromeDialog(Browser* browser) { } else if (UpgradeDetector::GetInstance()->is_outdated_install_no_au()) { UpgradeDetector::GetInstance()->NotifyOutdatedInstallNoAutoUpdate(); } else { -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (base::FeatureList::IsEnabled(features::kFewerUpdateConfirmations)) { chrome::AttemptRelaunch(); return; diff --git a/www/chromium/files/patch-chrome_browser_ui_browser__ui__prefs.cc b/www/chromium/files/patch-chrome_browser_ui_browser__ui__prefs.cc index b64f5ae015f0..6162edf0673b 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 2025-10-30 15:44:36 UTC +--- chrome/browser/ui/browser_ui_prefs.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/ui/browser_ui_prefs.cc -@@ -82,7 +82,7 @@ void RegisterBrowserPrefs(PrefRegistrySimple* registry +@@ -85,7 +85,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, -@@ -103,7 +103,7 @@ void RegisterBrowserUserPrefs(user_prefs::PrefRegistry +@@ -106,7 +106,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) -@@ -216,7 +216,7 @@ void RegisterBrowserUserPrefs(user_prefs::PrefRegistry +@@ -219,7 +219,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 ab5e577d47d0..e94206cc9563 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 2025-11-12 08:17:34 UTC +--- chrome/browser/ui/browser_window/internal/browser_window_features.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/ui/browser_window/internal/browser_window_features.cc -@@ -133,7 +133,7 @@ +@@ -145,7 +145,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 -@@ -374,7 +374,7 @@ void BrowserWindowFeatures::Init(BrowserWindowInterfac +@@ -391,7 +391,7 @@ void BrowserWindowFeatures::Init(BrowserWindowInterfac browser_select_file_dialog_controller_ = std::make_unique(profile); -#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 c4a609621132..7ecb6c08e092 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,29 +1,29 @@ ---- chrome/browser/ui/browser_window/public/browser_window_features.h.orig 2025-11-12 08:17:34 UTC +--- chrome/browser/ui/browser_window/public/browser_window_features.h.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/ui/browser_window/public/browser_window_features.h -@@ -94,7 +94,7 @@ class PinInfoBarController; +@@ -101,7 +101,7 @@ class PinInfoBarController; } // namespace default_browser #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; namespace session_restore_infobar { class SessionRestoreInfobarController; -@@ -428,7 +428,7 @@ class BrowserWindowFeatures { +@@ -449,7 +449,7 @@ class BrowserWindowFeatures { return browser_select_file_dialog_controller_.get(); } -#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(); -@@ -597,7 +597,7 @@ class BrowserWindowFeatures { +@@ -619,7 +619,7 @@ class BrowserWindowFeatures { std::unique_ptr browser_select_file_dialog_controller_; -#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_; 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 77298ae12ef0..b8606849e6b4 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,20 +1,11 @@ ---- chrome/browser/ui/hats/survey_config.cc.orig 2025-10-30 15:44:36 UTC +--- chrome/browser/ui/hats/survey_config.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/ui/hats/survey_config.cc -@@ -166,7 +166,7 @@ constexpr char kHatsSurveyOrganicTriggerSafetyHubAndro - "safety_hub_android_organic_survey"; - #endif // #if !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 char kHatsSurveyTriggerPrivacySandboxWhatsNewSurvey[] = - "privacy-sandbox-whats-new-survey"; - #endif // !BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) @@ -505,7 +505,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_hats_survey__config.h b/www/chromium/files/patch-chrome_browser_ui_hats_survey__config.h deleted file mode 100644 index dbc960d31456..000000000000 --- a/www/chromium/files/patch-chrome_browser_ui_hats_survey__config.h +++ /dev/null @@ -1,11 +0,0 @@ ---- chrome/browser/ui/hats/survey_config.h.orig 2025-10-30 15:44:36 UTC -+++ chrome/browser/ui/hats/survey_config.h -@@ -89,7 +89,7 @@ extern const char kHatsSurveyTriggerSafetyHubAndroid[] - extern const char kHatsSurveyOrganicTriggerSafetyHubAndroid[]; - #endif // #if !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) - extern const char kHatsSurveyTriggerPrivacySandboxWhatsNewSurvey[]; - #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) - diff --git a/www/chromium/files/patch-chrome_browser_ui_passwords_manage__passwords__ui__controller.cc b/www/chromium/files/patch-chrome_browser_ui_passwords_manage__passwords__ui__controller.cc index 32c50c5f8d02..6d83366f56fb 100644 --- a/www/chromium/files/patch-chrome_browser_ui_passwords_manage__passwords__ui__controller.cc +++ b/www/chromium/files/patch-chrome_browser_ui_passwords_manage__passwords__ui__controller.cc @@ -1,20 +1,20 @@ ---- chrome/browser/ui/passwords/manage_passwords_ui_controller.cc.orig 2025-10-30 15:44:36 UTC +--- chrome/browser/ui/passwords/manage_passwords_ui_controller.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/ui/passwords/manage_passwords_ui_controller.cc -@@ -115,7 +115,7 @@ namespace { +@@ -116,7 +116,7 @@ namespace { using Logger = autofill::SavePasswordProgressLogger; -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Should be kept in sync with constant declared in // bubble_controllers/relaunch_chrome_bubble_controller.cc. constexpr int kMaxNumberOfTimesKeychainErrorBubbleIsShown = 3; -@@ -626,7 +626,7 @@ void ManagePasswordsUIController::OnBiometricAuthBefor +@@ -628,7 +628,7 @@ void ManagePasswordsUIController::OnBiometricAuthBefor } void ManagePasswordsUIController::OnKeychainError() { -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) CHECK(!dialog_controller_); PrefService* prefs = Profile::FromBrowserContext(web_contents()->GetBrowserContext()) diff --git a/www/chromium/files/patch-chrome_browser_ui_sharing__hub_sharing__hub__bubble__controller.h b/www/chromium/files/patch-chrome_browser_ui_sharing__hub_sharing__hub__bubble__controller.h index 4c4eb52ca760..3e02268c41f3 100644 --- a/www/chromium/files/patch-chrome_browser_ui_sharing__hub_sharing__hub__bubble__controller.h +++ b/www/chromium/files/patch-chrome_browser_ui_sharing__hub_sharing__hub__bubble__controller.h @@ -1,11 +1,11 @@ ---- chrome/browser/ui/sharing_hub/sharing_hub_bubble_controller.h.orig 2024-06-17 12:56:06 UTC +--- chrome/browser/ui/sharing_hub/sharing_hub_bubble_controller.h.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/ui/sharing_hub/sharing_hub_bubble_controller.h -@@ -36,7 +36,7 @@ class SharingHubBubbleController { +@@ -39,7 +39,7 @@ class SharingHubBubbleController { // Returns true if the omnibox icon should be shown. virtual bool ShouldOfferOmniboxIcon() = 0; -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // This method returns the set of first-party actions, which are actions // internal to Chrome. Third-party actions (those outside Chrome) are // currently not supported. 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 d0f5c5c16080..a02fb099e691 100644 --- a/www/chromium/files/patch-chrome_browser_ui_signin_signin__view__controller.cc +++ b/www/chromium/files/patch-chrome_browser_ui_signin_signin__view__controller.cc @@ -1,20 +1,20 @@ ---- chrome/browser/ui/signin/signin_view_controller.cc.orig 2025-10-30 15:44:36 UTC +--- chrome/browser/ui/signin/signin_view_controller.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/ui/signin/signin_view_controller.cc -@@ -476,7 +476,7 @@ void SigninViewController::ShowModalSyncConfirmationDi +@@ -472,7 +472,7 @@ void SigninViewController::ShowModalSyncConfirmationDi GetOnModalDialogClosedCallback()); } -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) void SigninViewController::ShowModalHistorySyncOptInDialog( HistorySyncOptinHelper::FlowCompletedCallback callback) { CHECK( -@@ -493,7 +493,7 @@ void SigninViewController::ShowModalHistorySyncOptInDi +@@ -489,7 +489,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_startup_bad__flags__prompt.cc b/www/chromium/files/patch-chrome_browser_ui_startup_bad__flags__prompt.cc index 270b75babfe7..2809ab34478c 100644 --- a/www/chromium/files/patch-chrome_browser_ui_startup_bad__flags__prompt.cc +++ b/www/chromium/files/patch-chrome_browser_ui_startup_bad__flags__prompt.cc @@ -1,11 +1,11 @@ ---- chrome/browser/ui/startup/bad_flags_prompt.cc.orig 2025-09-06 10:01:20 UTC +--- chrome/browser/ui/startup/bad_flags_prompt.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/ui/startup/bad_flags_prompt.cc -@@ -105,7 +105,7 @@ const char* const kBadFlags[] = { +@@ -111,7 +111,7 @@ const char* const kBadFlags[] = { extensions::switches::kExtensionsOnExtensionURLs, #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Speech dispatcher is buggy, it can crash and it can make Chrome freeze. // http://crbug.com/327295 switches::kEnableSpeechDispatcher, diff --git a/www/chromium/files/patch-chrome_browser_ui_startup_startup__browser__creator.cc b/www/chromium/files/patch-chrome_browser_ui_startup_startup__browser__creator.cc index 9ffe461cb7bb..44830e641f99 100644 --- a/www/chromium/files/patch-chrome_browser_ui_startup_startup__browser__creator.cc +++ b/www/chromium/files/patch-chrome_browser_ui_startup_startup__browser__creator.cc @@ -1,38 +1,38 @@ ---- chrome/browser/ui/startup/startup_browser_creator.cc.orig 2025-10-30 15:44:36 UTC +--- chrome/browser/ui/startup/startup_browser_creator.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/ui/startup/startup_browser_creator.cc @@ -135,7 +135,7 @@ #include "chrome/credential_provider/common/gcp_strings.h" #endif // BUILDFLAG(IS_WIN) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) #include "chrome/browser/headless/headless_mode_util.h" #include "chrome/browser/ui/startup/web_app_info_recorder_utils.h" #include "components/headless/policy/headless_mode_policy.h" -@@ -987,7 +987,7 @@ bool StartupBrowserCreator::ProcessCmdLineImpl( +@@ -991,7 +991,7 @@ bool StartupBrowserCreator::ProcessCmdLineImpl( TRACE_EVENT0("startup", "StartupBrowserCreator::ProcessCmdLineImpl"); ComputeAndRecordLaunchMode(command_line); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) if (headless::IsHeadlessMode() && headless::HeadlessModePolicy::IsHeadlessModeDisabled( g_browser_process->local_state())) { -@@ -1090,7 +1090,7 @@ bool StartupBrowserCreator::ProcessCmdLineImpl( +@@ -1114,7 +1114,7 @@ bool StartupBrowserCreator::ProcessCmdLineImpl( silent_launch = true; } -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) // Writes open and installed web apps to the specified file without // launching a new browser window or tab. if (base::FeatureList::IsEnabled(features::kListWebAppsSwitch) && -@@ -1307,7 +1307,7 @@ bool StartupBrowserCreator::ProcessCmdLineImpl( +@@ -1331,7 +1331,7 @@ bool StartupBrowserCreator::ProcessCmdLineImpl( CHECK_EQ(profile_info.mode, StartupProfileMode::kBrowserWindow) << "Failed launch with app: couldn't pick a profile"; std::string app_id = command_line.GetSwitchValueASCII(switches::kAppId); -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // If Chrome Apps are deprecated and |app_id| is a Chrome App, display the // deprecation UI instead of launching the app. if (apps::OpenDeprecatedApplicationPrompt(privacy_safe_profile, app_id)) { diff --git a/www/chromium/files/patch-chrome_browser_ui_startup_startup__tab__provider.cc b/www/chromium/files/patch-chrome_browser_ui_startup_startup__tab__provider.cc index ea187db6beea..4d7d6b7b1771 100644 --- a/www/chromium/files/patch-chrome_browser_ui_startup_startup__tab__provider.cc +++ b/www/chromium/files/patch-chrome_browser_ui_startup_startup__tab__provider.cc @@ -1,20 +1,20 @@ ---- chrome/browser/ui/startup/startup_tab_provider.cc.orig 2025-10-02 04:28:32 UTC +--- chrome/browser/ui/startup/startup_tab_provider.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/ui/startup/startup_tab_provider.cc -@@ -63,7 +63,7 @@ +@@ -66,7 +66,7 @@ #include "extensions/common/manifest_handlers/chrome_url_overrides_handler.h" #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) #include "chrome/browser/headless/headless_mode_util.h" #endif -@@ -102,7 +102,7 @@ bool ValidateUrl(const GURL& url) { +@@ -124,7 +124,7 @@ bool ValidateUrl(const GURL& url) { #endif // BUILDFLAG(IS_CHROMEOS) bool url_scheme_is_chrome = false; -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) // In Headless mode, allow any URL pattern that matches chrome:// scheme if // the user explicitly allowed it. if (headless::IsHeadlessMode() && url.SchemeIs(content::kChromeUIScheme)) { 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 a5564a38d597..44094ae08f65 100644 --- a/www/chromium/files/patch-chrome_browser_ui_tab__helpers.cc +++ b/www/chromium/files/patch-chrome_browser_ui_tab__helpers.cc @@ -1,26 +1,26 @@ ---- chrome/browser/ui/tab_helpers.cc.orig 2025-10-30 15:44:36 UTC +--- chrome/browser/ui/tab_helpers.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/ui/tab_helpers.cc -@@ -222,7 +222,7 @@ +@@ -221,7 +221,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" -@@ -718,12 +718,12 @@ void TabHelpers::AttachTabHelpers(WebContents* web_con +@@ -724,12 +724,12 @@ void TabHelpers::AttachTabHelpers(WebContents* web_con webapps::PreRedirectionURLObserver::CreateForWebContents(web_contents); #endif -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) metrics::DesktopSessionDurationObserver::CreateForWebContents(web_contents); #endif #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) if (base::FeatureList::IsEnabled( features::kHappinessTrackingSurveysForDesktopDemo) || base::FeatureList::IsEnabled(features::kTrustSafetySentimentSurvey) || diff --git a/www/chromium/files/patch-chrome_browser_ui_tabs_features.cc b/www/chromium/files/patch-chrome_browser_ui_tabs_features.cc index 331c3337f9fe..12910f385334 100644 --- a/www/chromium/files/patch-chrome_browser_ui_tabs_features.cc +++ b/www/chromium/files/patch-chrome_browser_ui_tabs_features.cc @@ -1,11 +1,11 @@ ---- chrome/browser/ui/tabs/features.cc.orig 2025-10-30 15:44:36 UTC +--- chrome/browser/ui/tabs/features.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/ui/tabs/features.cc -@@ -52,7 +52,7 @@ bool CanShowTabSearchPositionSetting() { +@@ -50,7 +50,7 @@ bool CanShowTabSearchPositionSetting() { } // Mac and other platforms will always have the tab search position in the // correct location, cros/linux/win git the user the option to change. -#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) return base::FeatureList::IsEnabled(kTabSearchPositionSetting); #else return false; diff --git a/www/chromium/files/patch-chrome_browser_ui_tabs_public_tab__features.h b/www/chromium/files/patch-chrome_browser_ui_tabs_public_tab__features.h index 770a64468ea6..91fb17193d6f 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,20 +1,20 @@ ---- chrome/browser/ui/tabs/public/tab_features.h.orig 2025-10-30 15:44:36 UTC +--- chrome/browser/ui/tabs/public/tab_features.h.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/ui/tabs/public/tab_features.h -@@ -118,7 +118,7 @@ class TabContextualizationController; +@@ -119,7 +119,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 -@@ -451,7 +451,7 @@ class TabFeatures { - bookmarkbar_preload_pipeline_manager_; +@@ -468,7 +468,7 @@ class TabFeatures { + new_tab_page_preload_pipeline_manager_; #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 // Must be the last member. 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 43e180b938d9..158584d51e56 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-09-06 10:01:20 UTC +--- chrome/browser/ui/tabs/tab_dialog_manager.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/ui/tabs/tab_dialog_manager.cc -@@ -88,7 +88,7 @@ bool SupportsGlobalScreenCoordinates() { +@@ -90,7 +90,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 695e097a187e..b85a19498459 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,20 +1,20 @@ ---- chrome/browser/ui/tabs/tab_features.cc.orig 2025-10-30 15:44:36 UTC +--- chrome/browser/ui/tabs/tab_features.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/ui/tabs/tab_features.cc -@@ -80,7 +80,7 @@ +@@ -82,7 +82,7 @@ #include "chrome/browser/ui/web_applications/pwa_install_page_action.h" #include "chrome/browser/ui/webui/webui_embedding_context.h" #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "chrome/browser/wallet/chrome_walletable_pass_client.h" #endif #include "chrome/browser/web_applications/web_app_tab_helper.h" -@@ -401,7 +401,7 @@ void TabFeatures::Init(TabInterface& tab, Profile* pro +@@ -419,7 +419,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(); 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 4a38887f81dc..e9104f01ef4d 100644 --- a/www/chromium/files/patch-chrome_browser_ui_ui__features.cc +++ b/www/chromium/files/patch-chrome_browser_ui_ui__features.cc @@ -1,38 +1,38 @@ ---- chrome/browser/ui/ui_features.cc.orig 2025-10-30 15:44:36 UTC +--- chrome/browser/ui/ui_features.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/ui/ui_features.cc -@@ -38,7 +38,7 @@ BASE_FEATURE(kCloseOmniboxPopupOnInactiveAreaClick, +@@ -39,7 +39,7 @@ BASE_FEATURE(kCloseOmniboxPopupOnInactiveAreaClick, BASE_FEATURE(kCreateNewTabGroupAppMenuTopLevel, 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) // Enables the feature to remove the last confirmation dialog when relaunching // to update Chrome. BASE_FEATURE(kFewerUpdateConfirmations, base::FEATURE_ENABLED_BY_DEFAULT); -@@ -148,7 +148,7 @@ BASE_FEATURE_PARAM(int, +@@ -170,7 +170,7 @@ BASE_FEATURE_PARAM(int, "drop_target_hide_for_os_width", #if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_WIN) 32 -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) 50 #else 0 -@@ -434,7 +434,7 @@ BASE_FEATURE(kViewsFirstRunDialog, base::FEATURE_DISAB +@@ -471,7 +471,7 @@ BASE_FEATURE(kViewsFirstRunDialog, base::FEATURE_ENABL 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 -@@ -634,7 +634,7 @@ bool IsBookmarkTabGroupConversionEnabled() { +@@ -677,7 +677,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 7f1324365dcf..476015344f38 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 2025-10-30 15:44:36 UTC +--- chrome/browser/ui/ui_features.h.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/ui/ui_features.h @@ -30,7 +30,7 @@ BASE_DECLARE_FEATURE(kCloseOmniboxPopupOnInactiveAreaC BASE_DECLARE_FEATURE(kCreateNewTabGroupAppMenuTopLevel); -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) BASE_DECLARE_FEATURE(kFewerUpdateConfirmations); #endif -@@ -63,7 +63,7 @@ enum class PdfInfoBarTrigger { kPdfLoad = 0, kStartup +@@ -61,7 +61,7 @@ enum class PdfInfoBarTrigger { kPdfLoad = 0, kStartup BASE_DECLARE_FEATURE_PARAM(PdfInfoBarTrigger, kPdfInfoBarTrigger); #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); -@@ -345,7 +345,7 @@ BASE_DECLARE_FEATURE(kViewsFirstRunDialog); +@@ -366,7 +366,7 @@ BASE_DECLARE_FEATURE(kViewsFirstRunDialog); BASE_DECLARE_FEATURE(kViewsJSAppModalDialog); #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) BASE_DECLARE_FEATURE(kUsePortalAccentColor); #endif diff --git a/www/chromium/files/patch-chrome_browser_ui_views_data__sharing_collaboration__controller__delegate__desktop.cc b/www/chromium/files/patch-chrome_browser_ui_views_data__sharing_collaboration__controller__delegate__desktop.cc index 41e2bd94334a..c66f9606ceed 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,38 +1,47 @@ ---- chrome/browser/ui/views/data_sharing/collaboration_controller_delegate_desktop.cc.orig 2025-10-30 15:44:36 UTC +--- chrome/browser/ui/views/data_sharing/collaboration_controller_delegate_desktop.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/ui/views/data_sharing/collaboration_controller_delegate_desktop.cc -@@ -91,7 +91,7 @@ DialogText GetPromptDialogTextFromStatus( +@@ -94,7 +94,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 (base::FeatureList::IsEnabled( syncer::kReplaceSyncPromosWithSignInPromos) && status.signin_status != collaboration::SigninStatus::kSigninDisabled) { -@@ -404,7 +404,7 @@ void CollaborationControllerDelegateDesktop::ShowError +@@ -421,7 +421,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(); -@@ -516,7 +516,7 @@ void CollaborationControllerDelegateDesktop:: - .SetLabel(dialog_text.ok_button_text) - .SetEnabled(true)); +@@ -510,7 +510,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) - AccountInfo account_for_promo = signin_ui_util::GetSingleAccountForPromos( - IdentityManagerFactory::GetForProfile(browser_->profile())); + signin_ui_util::GetSingleAccountForPromos( + IdentityManagerFactory::GetForProfile(browser_->profile())); + #else +@@ -545,7 +545,7 @@ void CollaborationControllerDelegateDesktop:: + .SetLabel(dialog_text.ok_button_text) + .SetEnabled(true)); -@@ -569,7 +569,7 @@ void CollaborationControllerDelegateDesktop::OnPromptD +-#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( + syncer::kReplaceSyncPromosWithSignInPromos)) { + dialog_builder.SetFootnote(ui::DialogModelLabel(dialog_text.footnote)); +@@ -598,7 +598,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 (base::FeatureList::IsEnabled( syncer::kReplaceSyncPromosWithSignInPromos)) { MaybeShowSignInUiForHistorySyncOptin(); 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 45cf08cd9852..067ccb9616a5 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 2025-10-30 15:44:36 UTC +--- chrome/browser/ui/views/data_sharing/collaboration_controller_delegate_desktop.h.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/ui/views/data_sharing/collaboration_controller_delegate_desktop.h -@@ -81,7 +81,7 @@ class CollaborationControllerDelegateDesktop +@@ -83,7 +83,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__linux.cc b/www/chromium/files/patch-chrome_browser_ui_views_frame_browser__frame__view__linux.cc index f19af6e36a4e..e7e8487b72a0 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 2025-10-30 15:44:36 UTC +--- chrome/browser/ui/views/frame/browser_frame_view_linux.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/ui/views/frame/browser_frame_view_linux.cc -@@ -70,7 +70,7 @@ gfx::ShadowValues BrowserFrameViewLinux::GetShadowValu +@@ -71,7 +71,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; -@@ -125,7 +125,7 @@ int BrowserFrameViewLinux::NonClientHitTest(const gfx: +@@ -126,7 +126,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 1623c77bbdae..7ae0b3105def 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 2025-10-30 15:44:36 UTC +--- chrome/browser/ui/views/frame/browser_view.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/ui/views/frame/browser_view.cc -@@ -2313,7 +2313,7 @@ void BrowserView::ToolbarSizeChanged(bool is_animating +@@ -2305,7 +2305,7 @@ void BrowserView::ToolbarSizeChanged(bool is_animating } void BrowserView::TabDraggingStatusChanged(bool is_dragging) { -#if !BUILDFLAG(IS_LINUX) +#if !BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_BSD) std::vector contents_web_views = GetAllVisibleContentsWebViews(); -@@ -5880,7 +5880,7 @@ void BrowserView::MaybeShowProfileSwitchIPH() { +@@ -5919,7 +5919,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; } -@@ -5890,7 +5890,7 @@ void BrowserView::MaybeShowSupervisedUserProfileSignIn +@@ -5929,7 +5929,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 81db3d747fb9..71971ceeb23d 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,65 +1,56 @@ ---- chrome/browser/ui/views/frame/browser_widget.cc.orig 2025-10-30 15:44:36 UTC +--- chrome/browser/ui/views/frame/browser_widget.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/ui/views/frame/browser_widget.cc -@@ -53,7 +53,7 @@ +@@ -52,7 +52,7 @@ #include "ui/aura/window.h" #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "ui/display/screen.h" #include "ui/linux/linux_ui.h" #endif -@@ -68,7 +68,7 @@ namespace { - constexpr double kTitlePaddingWidthFraction = 0.1; - #endif - --#if BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - // These values are used for Linux/GTK. - constexpr int kIconTitleSpacing = 4; - constexpr int kCaptionSpacing = 5; -@@ -98,7 +98,7 @@ class ThemeChangedObserver : public views::WidgetObser +@@ -87,7 +87,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; -@@ -214,7 +214,7 @@ void BrowserWidget::InitBrowserWidget() { +@@ -203,7 +203,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()); -@@ -419,7 +419,7 @@ void BrowserWidget::OnNativeWidgetWorkspaceChanged() { +@@ -342,7 +342,7 @@ void BrowserWidget::OnNativeWidgetWorkspaceChanged() { chrome::SaveWindowWorkspace(browser_view_->browser(), GetWorkspace()); chrome::SaveWindowVisibleOnAllWorkspaces(browser_view_->browser(), IsVisibleOnAllWorkspaces()); -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // If the window was sent to a different workspace, prioritize it if // it was sent to the current workspace and deprioritize it // otherwise. This is done by MoveBrowsersInWorkspaceToFront() -@@ -606,7 +606,7 @@ void BrowserWidget::OnMenuClosed() { +@@ -531,7 +531,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(); -@@ -647,7 +647,7 @@ void BrowserWidget::OnTouchUiChanged() { +@@ -572,7 +572,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_browser__widget.h b/www/chromium/files/patch-chrome_browser_ui_views_frame_browser__widget.h index 2f5fc1e55037..9191b6ee4680 100644 --- a/www/chromium/files/patch-chrome_browser_ui_views_frame_browser__widget.h +++ b/www/chromium/files/patch-chrome_browser_ui_views_frame_browser__widget.h @@ -1,20 +1,20 @@ ---- chrome/browser/ui/views/frame/browser_widget.h.orig 2025-10-30 15:44:36 UTC +--- chrome/browser/ui/views/frame/browser_widget.h.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/ui/views/frame/browser_widget.h -@@ -66,7 +66,7 @@ class BrowserWidget : public views::Widget, +@@ -65,7 +65,7 @@ class BrowserWidget : public views::Widget, ~BrowserWidget() override; -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Returns whether the frame is in a tiled state. bool tiled() const { return tiled_; } void set_tiled(bool tiled) { tiled_ = tiled; } -@@ -198,7 +198,7 @@ class BrowserWidget : public views::Widget, +@@ -187,7 +187,7 @@ class BrowserWidget : public views::Widget, // contents for smoother dragging. TabDragKind tab_drag_kind_ = TabDragKind::kNone; -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) bool tiled_ = false; #endif }; 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 eddcec5394d5..4d10d46c53a9 100644 --- a/www/chromium/files/patch-chrome_browser_ui_views_frame_opaque__browser__frame__view.cc +++ b/www/chromium/files/patch-chrome_browser_ui_views_frame_opaque__browser__frame__view.cc @@ -1,38 +1,38 @@ ---- chrome/browser/ui/views/frame/opaque_browser_frame_view.cc.orig 2025-10-30 15:44:36 UTC +--- chrome/browser/ui/views/frame/opaque_browser_frame_view.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/ui/views/frame/opaque_browser_frame_view.cc -@@ -54,7 +54,7 @@ +@@ -55,7 +55,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 -@@ -584,7 +584,7 @@ bool OpaqueBrowserFrameView::EverHasVisibleBackgroundT +@@ -605,7 +605,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; -@@ -603,7 +603,7 @@ bool OpaqueBrowserFrameView::ShouldDrawRestoredFrameSh +@@ -624,7 +624,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(); } -@@ -835,7 +835,7 @@ gfx::Rect OpaqueBrowserFrameView::GetIconBounds() cons +@@ -856,7 +856,7 @@ gfx::Rect OpaqueBrowserFrameView::GetIconBounds() cons } void OpaqueBrowserFrameView::WindowIconPressed() { -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Chrome OS doesn't show the window icon, and Windows handles this on its own // due to the hit test being HTSYSMENU. menu_runner_ = std::make_unique( diff --git a/www/chromium/files/patch-chrome_browser_ui_views_frame_opaque__browser__frame__view.h b/www/chromium/files/patch-chrome_browser_ui_views_frame_opaque__browser__frame__view.h index 97e77c6da59d..ef8055bb6cc1 100644 --- a/www/chromium/files/patch-chrome_browser_ui_views_frame_opaque__browser__frame__view.h +++ b/www/chromium/files/patch-chrome_browser_ui_views_frame_opaque__browser__frame__view.h @@ -1,20 +1,20 @@ ---- chrome/browser/ui/views/frame/opaque_browser_frame_view.h.orig 2025-10-30 15:44:36 UTC +--- chrome/browser/ui/views/frame/opaque_browser_frame_view.h.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/ui/views/frame/opaque_browser_frame_view.h @@ -109,7 +109,7 @@ class OpaqueBrowserFrameView : public BrowserFrameView FrameButtonStyle GetFrameButtonStyle() const override; void UpdateWindowControlsOverlay(const gfx::Rect& bounding_rect) override; bool ShouldDrawRestoredFrameShadow() const override; -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) bool IsTiled() const override; #endif int WebAppButtonHeight() const override; -@@ -229,7 +229,7 @@ class OpaqueBrowserFrameView : public BrowserFrameView +@@ -232,7 +232,7 @@ class OpaqueBrowserFrameView : public BrowserFrameView // Background painter for the window frame. std::unique_ptr frame_background_; -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) std::unique_ptr menu_runner_; #endif diff --git a/www/chromium/files/patch-chrome_browser_ui_views_frame_opaque__browser__frame__view__layout__delegate.h b/www/chromium/files/patch-chrome_browser_ui_views_frame_opaque__browser__frame__view__layout__delegate.h index be72ed0bfb28..b9d090260891 100644 --- a/www/chromium/files/patch-chrome_browser_ui_views_frame_opaque__browser__frame__view__layout__delegate.h +++ b/www/chromium/files/patch-chrome_browser_ui_views_frame_opaque__browser__frame__view__layout__delegate.h @@ -1,20 +1,20 @@ ---- chrome/browser/ui/views/frame/opaque_browser_frame_view_layout_delegate.h.orig 2025-01-15 09:18:26 UTC +--- chrome/browser/ui/views/frame/opaque_browser_frame_view_layout_delegate.h.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/ui/views/frame/opaque_browser_frame_view_layout_delegate.h @@ -9,7 +9,7 @@ #include "build/build_config.h" -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "ui/base/ui_base_types.h" #endif -@@ -92,7 +92,7 @@ class OpaqueBrowserFrameViewLayoutDelegate { +@@ -88,7 +88,7 @@ class OpaqueBrowserFrameViewLayoutDelegate { // Returns true if a client-side shadow should be drawn for restored windows. virtual bool ShouldDrawRestoredFrameShadow() const = 0; -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Returns whether the window is in a tiled state. virtual bool IsTiled() const = 0; #endif 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 bf1b1746cc6d..05d8e99c643c 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 2025-09-06 10:01:20 UTC +--- chrome/browser/ui/views/frame/system_menu_model_delegate.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/ui/views/frame/system_menu_model_delegate.cc -@@ -21,7 +21,7 @@ +@@ -22,7 +22,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 -@@ -38,7 +38,7 @@ SystemMenuModelDelegate::SystemMenuModelDelegate( +@@ -39,7 +39,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(); return !prefs->GetBoolean(prefs::kUseCustomChromeFrame); -@@ -64,7 +64,7 @@ bool SystemMenuModelDelegate::IsCommandIdEnabled(int c +@@ -65,7 +65,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_->window()->IsMaximized(); switch (command_id) { case IDC_MAXIMIZE_WINDOW: diff --git a/www/chromium/files/patch-chrome_browser_ui_views_frame_tab__strip__region__view.cc b/www/chromium/files/patch-chrome_browser_ui_views_frame_tab__strip__region__view.cc deleted file mode 100644 index 047e12237797..000000000000 --- a/www/chromium/files/patch-chrome_browser_ui_views_frame_tab__strip__region__view.cc +++ /dev/null @@ -1,11 +0,0 @@ ---- chrome/browser/ui/views/frame/tab_strip_region_view.cc.orig 2025-10-30 15:44:36 UTC -+++ chrome/browser/ui/views/frame/tab_strip_region_view.cc -@@ -302,7 +302,7 @@ TabStripRegionView::TabStripRegionView(std::unique_ptr - new_tab_button_->GetViewAccessibility().SetName( - l10n_util::GetStringUTF16(IDS_ACCNAME_NEWTAB)); - --#if BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - // The New Tab Button can be middle-clicked on Linux. - new_tab_button_->SetTriggerableEventFlags( - new_tab_button_->GetTriggerableEventFlags() | 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 81921df25dcb..5a5f667459f8 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 2025-11-07 07:17:14 UTC +--- chrome/browser/ui/views/location_bar/location_bar_view.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/ui/views/location_bar/location_bar_view.cc -@@ -539,7 +539,7 @@ bool LocationBarView::IsInitialized() const { - } +@@ -1768,7 +1768,7 @@ void LocationBarView::OnPopupStateChanged(OmniboxPopup + weak_factory_.GetWeakPtr()), + base::Milliseconds(100)); - void LocationBarView::OnPopupOpened() { -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - // It's not great for promos to overlap the omnibox if the user opens the - // drop-down after showing the promo. This especially causes issues on Mac and - // Linux due to z-order/rendering issues, see crbug.com/1225046 and + 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_profiles_avatar__toolbar__button.cc b/www/chromium/files/patch-chrome_browser_ui_views_profiles_avatar__toolbar__button.cc index 6976486391d2..d3ce08d2f288 100644 --- a/www/chromium/files/patch-chrome_browser_ui_views_profiles_avatar__toolbar__button.cc +++ b/www/chromium/files/patch-chrome_browser_ui_views_profiles_avatar__toolbar__button.cc @@ -1,11 +1,11 @@ ---- chrome/browser/ui/views/profiles/avatar_toolbar_button.cc.orig 2025-10-30 15:44:36 UTC +--- chrome/browser/ui/views/profiles/avatar_toolbar_button.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/ui/views/profiles/avatar_toolbar_button.cc -@@ -404,7 +404,7 @@ void AvatarToolbarButton::MaybeShowProfileSwitchIPH() +@@ -405,7 +405,7 @@ void AvatarToolbarButton::MaybeShowProfileSwitchIPH() } } -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) void AvatarToolbarButton::MaybeShowSupervisedUserSignInIPH() { if (!base::FeatureList::IsEnabled( feature_engagement::kIPHSupervisedUserProfileSigninFeature)) { diff --git a/www/chromium/files/patch-chrome_browser_ui_views_profiles_profile__menu__view.cc b/www/chromium/files/patch-chrome_browser_ui_views_profiles_profile__menu__view.cc index 38be83cce744..c47fb061f18f 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 2025-10-30 15:44:36 UTC +--- chrome/browser/ui/views/profiles/profile_menu_view.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/ui/views/profiles/profile_menu_view.cc -@@ -107,7 +107,7 @@ +@@ -108,7 +108,7 @@ #include "ui/views/accessibility/view_accessibility.h" #include "ui/views/widget/widget.h" -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "chrome/browser/enterprise/signin/enterprise_signin_prefs.h" #endif -@@ -563,7 +563,7 @@ void ProfileMenuView::SetMenuTitleForAccessibility() { +@@ -552,7 +552,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_tabs_dragging_tab__drag__controller.cc b/www/chromium/files/patch-chrome_browser_ui_views_tabs_dragging_tab__drag__controller.cc index f44747816c21..5532b5992ee3 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 2025-10-02 04:28:32 UTC +--- chrome/browser/ui/views/tabs/dragging/tab_drag_controller.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/ui/views/tabs/dragging/tab_drag_controller.cc -@@ -179,7 +179,7 @@ bool IsWindowDragUsingSystemDragDropAllowed() { +@@ -181,7 +181,7 @@ bool IsWindowDragUsingSystemDragDropAllowed() { 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(); -@@ -391,7 +391,7 @@ TabDragController::Liveness TabDragController::Init( +@@ -393,7 +393,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_ = -@@ -982,7 +982,7 @@ TabDragController::Liveness TabDragController::DragBro +@@ -984,7 +984,7 @@ TabDragController::Liveness TabDragController::DragBro CHECK_EQ(SetCapture(target_context), Liveness::ALIVE); } -#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. -@@ -2135,7 +2135,7 @@ void TabDragController::CompleteDrag() { +@@ -2115,7 +2115,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/727051) Explore doing this // for other desktop OS's. kMaximizedStateRetainedOnTabDrag in -@@ -2551,7 +2551,7 @@ TabDragController::Liveness TabDragController::GetLoca +@@ -2531,7 +2531,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_tab.cc b/www/chromium/files/patch-chrome_browser_ui_views_tabs_tab.cc index 7a8b9a1860be..6f18e7e7424a 100644 --- a/www/chromium/files/patch-chrome_browser_ui_views_tabs_tab.cc +++ b/www/chromium/files/patch-chrome_browser_ui_views_tabs_tab.cc @@ -1,11 +1,11 @@ ---- chrome/browser/ui/views/tabs/tab.cc.orig 2025-10-02 04:28:32 UTC +--- chrome/browser/ui/views/tabs/tab.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/ui/views/tabs/tab.cc -@@ -678,7 +678,7 @@ void Tab::MaybeUpdateHoverStatus(const ui::MouseEvent& +@@ -679,7 +679,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 b541eb0a4a27..82ce9822210b 100644 --- a/www/chromium/files/patch-chrome_browser_ui_views_tabs_tab__style__views.cc +++ b/www/chromium/files/patch-chrome_browser_ui_views_tabs_tab__style__views.cc @@ -1,11 +1,11 @@ ---- chrome/browser/ui/views/tabs/tab_style_views.cc.orig 2025-10-02 04:28:32 UTC +--- chrome/browser/ui/views/tabs/tab_style_views.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/ui/views/tabs/tab_style_views.cc -@@ -557,7 +557,7 @@ float TabStyleViewsImpl::GetCurrentActiveOpacity() con +@@ -567,7 +567,7 @@ float TabStyleViewsImpl::GetCurrentActiveOpacity() con if (!IsHoverAnimationActive()) { return base_opacity; } - return std::lerp(base_opacity, GetHoverOpacity(), GetHoverAnimationValue()); + return std::lerp(base_opacity, GetHoverOpacity(), static_cast(GetHoverAnimationValue())); } TabActive TabStyleViewsImpl::GetApparentActiveState() const { diff --git a/www/chromium/files/patch-chrome_browser_ui_views_user__education_browser__user__education__service.cc b/www/chromium/files/patch-chrome_browser_ui_views_user__education_browser__user__education__service.cc index 1bcdda3391c7..0f5a43559e9e 100644 --- a/www/chromium/files/patch-chrome_browser_ui_views_user__education_browser__user__education__service.cc +++ b/www/chromium/files/patch-chrome_browser_ui_views_user__education_browser__user__education__service.cc @@ -1,20 +1,20 @@ ---- chrome/browser/ui/views/user_education/browser_user_education_service.cc.orig 2025-11-12 08:17:34 UTC +--- chrome/browser/ui/views/user_education/browser_user_education_service.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/ui/views/user_education/browser_user_education_service.cc -@@ -1165,7 +1165,7 @@ void MaybeRegisterChromeFeaturePromos( +@@ -1178,7 +1178,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( -@@ -1433,7 +1433,7 @@ void MaybeRegisterChromeFeaturePromos( +@@ -1446,7 +1446,7 @@ void MaybeRegisterChromeFeaturePromos( "Triggered to inform users of the availability of the " "new translate screen feature on the Lens Overlay."))); -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) // kIPHDesktopPWAsLinkCapturingLaunch: registry.RegisterFeature(std::move( FeaturePromoSpecification::CreateForCustomAction( diff --git a/www/chromium/files/patch-chrome_browser_ui_views_web__apps_web__app__integration__test__driver.cc b/www/chromium/files/patch-chrome_browser_ui_views_web__apps_web__app__integration__test__driver.cc index 8d3c91f30f34..feafdfefddac 100644 --- a/www/chromium/files/patch-chrome_browser_ui_views_web__apps_web__app__integration__test__driver.cc +++ b/www/chromium/files/patch-chrome_browser_ui_views_web__apps_web__app__integration__test__driver.cc @@ -1,83 +1,83 @@ ---- chrome/browser/ui/views/web_apps/web_app_integration_test_driver.cc.orig 2025-10-30 15:44:36 UTC +--- chrome/browser/ui/views/web_apps/web_app_integration_test_driver.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/ui/views/web_apps/web_app_integration_test_driver.cc -@@ -516,7 +516,7 @@ std::string GetFileExtension(FileExtension file_extens +@@ -518,7 +518,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; -@@ -2088,7 +2088,7 @@ void WebAppIntegrationTestDriver::DeletePlatformShortc +@@ -2099,7 +2099,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( -@@ -3408,7 +3408,7 @@ void WebAppIntegrationTestDriver::CheckRunOnOsLoginEna +@@ -3426,7 +3426,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 -@@ -3423,7 +3423,7 @@ void WebAppIntegrationTestDriver::CheckRunOnOsLoginDis +@@ -3441,7 +3441,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 -@@ -3433,7 +3433,7 @@ void WebAppIntegrationTestDriver::CheckRunOnOsLoginDis +@@ -3451,7 +3451,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; } -@@ -3449,7 +3449,7 @@ void WebAppIntegrationTestDriver::CheckSiteHandlesFile +@@ -3467,7 +3467,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; } -@@ -4274,7 +4274,7 @@ base::FilePath WebAppIntegrationTestDriver::GetShortcu +@@ -4298,7 +4298,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 -@@ -4474,7 +4474,7 @@ bool WebAppIntegrationTestDriver::IsShortcutAndIconCre +@@ -4498,7 +4498,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); -@@ -4518,7 +4518,7 @@ bool WebAppIntegrationTestDriver::DoIconColorsMatch(Pr +@@ -4542,7 +4542,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 edd45b51a6ba..5698f7532b26 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 2025-10-30 15:44:36 UTC +--- chrome/browser/ui/web_applications/app_browser_controller.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/ui/web_applications/app_browser_controller.cc -@@ -492,7 +492,7 @@ std::u16string AppBrowserController::GetLaunchFlashTex +@@ -500,7 +500,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 61540b5ff65f..6592f755b6b7 100644 --- a/www/chromium/files/patch-chrome_browser_ui_web__applications_web__app__ui__manager__impl.cc +++ b/www/chromium/files/patch-chrome_browser_ui_web__applications_web__app__ui__manager__impl.cc @@ -1,20 +1,20 @@ ---- chrome/browser/ui/web_applications/web_app_ui_manager_impl.cc.orig 2025-10-30 15:44:36 UTC +--- chrome/browser/ui/web_applications/web_app_ui_manager_impl.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/ui/web_applications/web_app_ui_manager_impl.cc -@@ -579,7 +579,7 @@ void WebAppUiManagerImpl::MaybeShowIPHPromoForAppsLaun +@@ -587,7 +587,7 @@ void WebAppUiManagerImpl::MaybeShowIPHPromoForAppsLaun Browser* browser, Profile* profile, const std::string& app_id) { -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) WebAppProvider* provider = WebAppProvider::GetForWebApps(profile); CHECK(provider); -@@ -800,7 +800,7 @@ void WebAppUiManagerImpl::ClearWebAppSiteDataIfNeeded( +@@ -808,7 +808,7 @@ void WebAppUiManagerImpl::ClearWebAppSiteDataIfNeeded( } } -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) const base::Feature& GetPromoFeatureEngagementFromBrowser( const 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 5245f9f93382..94c3e9412d0c 100644 --- a/www/chromium/files/patch-chrome_browser_ui_web__applications_web__app__ui__manager__impl.h +++ b/www/chromium/files/patch-chrome_browser_ui_web__applications_web__app__ui__manager__impl.h @@ -1,11 +1,11 @@ ---- chrome/browser/ui/web_applications/web_app_ui_manager_impl.h.orig 2025-09-06 10:01:20 UTC +--- chrome/browser/ui/web_applications/web_app_ui_manager_impl.h.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/ui/web_applications/web_app_ui_manager_impl.h -@@ -243,7 +243,7 @@ class WebAppUiManagerImpl : public BrowserListObserver +@@ -244,7 +244,7 @@ class WebAppUiManagerImpl : public BrowserListObserver UninstallCompleteCallback uninstall_complete_callback, webapps::UninstallResultCode uninstall_code); -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) void ShowIPHPromoForAppsLaunchedViaLinkCapturing(Browser* browser, const webapps::AppId& app_id, bool is_activated); diff --git a/www/chromium/files/patch-chrome_browser_ui_webui_app__home_app__home__page__handler.cc b/www/chromium/files/patch-chrome_browser_ui_webui_app__home_app__home__page__handler.cc index 97d2237b14cf..028073da42b2 100644 --- a/www/chromium/files/patch-chrome_browser_ui_webui_app__home_app__home__page__handler.cc +++ b/www/chromium/files/patch-chrome_browser_ui_webui_app__home_app__home__page__handler.cc @@ -1,11 +1,11 @@ ---- chrome/browser/ui/webui/app_home/app_home_page_handler.cc.orig 2025-07-02 06:08:04 UTC +--- chrome/browser/ui/webui/app_home/app_home_page_handler.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/ui/webui/app_home/app_home_page_handler.cc -@@ -62,7 +62,7 @@ +@@ -61,7 +61,7 @@ #include "ui/base/window_open_disposition_utils.h" #include "url/gurl.h" -static_assert(BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX)); +static_assert(BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)); using content::WebUI; using extensions::Extension; diff --git a/www/chromium/files/patch-chrome_browser_ui_webui_certificate__manager_client__cert__sources.cc b/www/chromium/files/patch-chrome_browser_ui_webui_certificate__manager_client__cert__sources.cc index cd761bd14971..ce7039cb9103 100644 --- a/www/chromium/files/patch-chrome_browser_ui_webui_certificate__manager_client__cert__sources.cc +++ b/www/chromium/files/patch-chrome_browser_ui_webui_certificate__manager_client__cert__sources.cc @@ -1,74 +1,74 @@ ---- chrome/browser/ui/webui/certificate_manager/client_cert_sources.cc.orig 2025-10-30 15:44:36 UTC +--- chrome/browser/ui/webui/certificate_manager/client_cert_sources.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/ui/webui/certificate_manager/client_cert_sources.cc @@ -56,7 +56,7 @@ #include "net/ssl/client_cert_store_mac.h" #endif // BUILDFLAG(IS_MAC) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "chrome/browser/browser_process.h" #include "chrome/browser/enterprise/client_certificates/certificate_provisioning_service_factory.h" #include "chrome/browser/policy/chrome_browser_policy_connector.h" @@ -131,7 +131,7 @@ class ClientCertStoreLoader { active_requests_; }; -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) class ClientCertStoreFactoryNSS : public ClientCertStoreFactory { public: std::unique_ptr CreateClientCertStore() override { @@ -156,7 +156,7 @@ class ClientCertStoreFactoryMac : public ClientCertSto }; #endif -#if !BUILDFLAG(IS_CHROMEOS) && !BUILDFLAG(IS_LINUX) +#if !BUILDFLAG(IS_CHROMEOS) && !BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_BSD) std::unique_ptr CreatePlatformClientCertLoader( Profile* profile) { #if BUILDFLAG(IS_WIN) @@ -171,7 +171,7 @@ std::unique_ptr CreatePlatformC } #endif -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) class ClientCertStoreFactoryProvisioned : public ClientCertStoreFactory { public: explicit ClientCertStoreFactoryProvisioned( @@ -331,7 +331,7 @@ class ClientCertSource : public CertificateManagerPage std::optional certs_; }; -#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // ChromeOS currently can use either Kcer or NSS for listing client certs, and // Linux uses NSS only. This interface provides an abstraction to hide that // from WritableClientCertSource. Currently this class only handles reading -@@ -1052,7 +1052,7 @@ CreatePlatformClientCertSource( +@@ -1054,7 +1054,7 @@ CreatePlatformClientCertSource( mojo::Remote* remote_client, Profile* profile) { -#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) return std::make_unique(remote_client, profile); #else return std::make_unique( -@@ -1060,7 +1060,7 @@ CreatePlatformClientCertSource( +@@ -1062,7 +1062,7 @@ CreatePlatformClientCertSource( #endif } -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) std::unique_ptr CreateProvisionedClientCertSource(Profile* profile) { return std::make_unique( -@@ -1110,7 +1110,7 @@ bool ClientCertManagementAccessControls::IsChangeAllow +@@ -1112,7 +1112,7 @@ bool ClientCertManagementAccessControls::IsChangeAllow return client_cert_policy_ == ClientCertificateManagementPermission::kAll; } -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) ClientCertManagementAccessControls::ClientCertManagementAccessControls( Profile* profile) {} diff --git a/www/chromium/files/patch-chrome_browser_ui_webui_chrome__web__ui__configs.cc b/www/chromium/files/patch-chrome_browser_ui_webui_chrome__web__ui__configs.cc index 40ee16bd6ee2..a9f983f01fd8 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,70 +1,70 @@ ---- chrome/browser/ui/webui/chrome_web_ui_configs.cc.orig 2025-10-30 15:44:36 UTC +--- chrome/browser/ui/webui/chrome_web_ui_configs.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/ui/webui/chrome_web_ui_configs.cc -@@ -154,7 +154,7 @@ +@@ -155,7 +155,7 @@ #include "chrome/browser/ui/webui/conflicts/conflicts_ui.h" #endif // BUILDFLAG(IS_WIN) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "chrome/browser/ui/webui/app_settings/web_app_settings_ui.h" #include "chrome/browser/ui/webui/browser_switch/browser_switch_ui.h" #include "chrome/browser/ui/webui/signin/history_sync_optin/history_sync_optin_ui.h" -@@ -162,13 +162,13 @@ +@@ -163,13 +163,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" #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_DESKTOP_ANDROID) -@@ -196,7 +196,7 @@ +@@ -197,7 +197,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) -@@ -351,7 +351,7 @@ void RegisterChromeWebUIConfigs() { +@@ -353,7 +353,7 @@ void RegisterChromeWebUIConfigs() { map.AddWebUIConfig(std::make_unique()); #endif // BUILDFLAG(IS_ANDROID) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_OPENBSD) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) map.AddWebUIConfig(std::make_unique()); #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || // BUILDFLAG(IS_OPENBSD) -@@ -381,7 +381,7 @@ void RegisterChromeWebUIConfigs() { +@@ -383,7 +383,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()); -@@ -390,13 +390,13 @@ void RegisterChromeWebUIConfigs() { +@@ -392,13 +392,13 @@ 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()); #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_DESKTOP_ANDROID) diff --git a/www/chromium/files/patch-chrome_browser_ui_webui_chrome__web__ui__controller__factory.cc b/www/chromium/files/patch-chrome_browser_ui_webui_chrome__web__ui__controller__factory.cc index 544d9e531a9e..07b9df089076 100644 --- a/www/chromium/files/patch-chrome_browser_ui_webui_chrome__web__ui__controller__factory.cc +++ b/www/chromium/files/patch-chrome_browser_ui_webui_chrome__web__ui__controller__factory.cc @@ -1,51 +1,51 @@ ---- chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc.orig 2025-10-30 15:44:36 UTC +--- chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc -@@ -116,18 +116,18 @@ +@@ -115,18 +115,18 @@ #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/commerce/product_specifications_ui.h" #include "components/webapps/isolated_web_apps/scheme.h" #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || // BUILDFLAG(IS_CHROMEOS) #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 -#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 -@@ -276,7 +276,7 @@ void ChromeWebUIControllerFactory::GetFaviconForURL( +@@ -275,7 +275,7 @@ void ChromeWebUIControllerFactory::GetFaviconForURL( const std::vector& desired_sizes_in_pixel, favicon_base::FaviconResultsCallback callback) const { #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) if (page_url.SchemeIs(webapps::kIsolatedAppScheme)) { ReadIsolatedWebAppFaviconsFromDisk(profile, page_url, std::move(callback)); return; -@@ -411,7 +411,7 @@ base::RefCountedMemory* ChromeWebUIControllerFactory:: +@@ -410,7 +410,7 @@ base::RefCountedMemory* ChromeWebUIControllerFactory:: return NewTabPageUI::GetFaviconResourceBytes(scale_factor); } -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - if (page_url.host_piece() == chrome::kChromeUIWhatsNewHost) { + if (page_url.host() == chrome::kChromeUIWhatsNewHost) { return WhatsNewUI::GetFaviconResourceBytes(scale_factor); } -@@ -450,7 +450,7 @@ base::RefCountedMemory* ChromeWebUIControllerFactory:: +@@ -449,7 +449,7 @@ base::RefCountedMemory* ChromeWebUIControllerFactory:: } #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - if (page_url.host_piece() == commerce::kChromeUICompareHost) { + if (page_url.host() == commerce::kChromeUICompareHost) { return commerce::ProductSpecificationsUI::GetFaviconResourceBytes( scale_factor); 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_promo__cards__handler.cc index 9b1f8e5dd826..5c65c92f93a6 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_promo__cards__handler.cc @@ -1,20 +1,38 @@ ---- chrome/browser/ui/webui/password_manager/promo_cards_handler.cc.orig 2025-01-15 09:18:26 UTC +--- chrome/browser/ui/webui/password_manager/promo_cards_handler.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/ui/webui/password_manager/promo_cards_handler.cc @@ -28,7 +28,7 @@ #include "chrome/browser/ui/webui/password_manager/promo_cards/web_password_manager_promo.h" #endif -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + #include "chrome/browser/browser_process.h" #include "chrome/browser/ui/webui/password_manager/promo_cards/relaunch_chrome_promo.h" - #endif - -@@ -71,7 +71,7 @@ std::vector> Ge + #include "components/os_crypt/async/browser/os_crypt_async.h" +@@ -74,7 +74,7 @@ PromoCardsHandler::PromoCardsHandler(Profile* profile) .get())); #endif -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - promo_cards.push_back( - std::make_unique(profile->GetPrefs())); - #endif + auto relaunch_promo = + std::make_unique(profile->GetPrefs()); + relaunch_chrome_promo_ = relaunch_promo.get(); +@@ -114,7 +114,7 @@ void PromoCardsHandler::HandleGetAvailablePromoCard( + 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()) { + g_browser_process->os_crypt_async()->GetInstance( +@@ -177,7 +177,7 @@ PasswordPromoCardBase* PromoCardsHandler::GetPromoToSh + return promo_to_show; + } + +-#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + void PromoCardsHandler::OnEncryptorReceived( + base::Value callback_id, + os_crypt_async::Encryptor encryptor) { 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 new file mode 100644 index 000000000000..fc7ca18d9e64 --- /dev/null +++ b/www/chromium/files/patch-chrome_browser_ui_webui_password__manager_promo__cards__handler.h @@ -0,0 +1,20 @@ +--- chrome/browser/ui/webui/password_manager/promo_cards_handler.h.orig 2025-12-05 10:12:50 UTC ++++ chrome/browser/ui/webui/password_manager/promo_cards_handler.h +@@ -52,7 +52,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, + os_crypt_async::Encryptor encryptor); + #endif // BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +@@ -60,7 +60,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_password__manager_promo__cards_relaunch__chrome__promo.cc b/www/chromium/files/patch-chrome_browser_ui_webui_password__manager_promo__cards_relaunch__chrome__promo.cc index b8ebcb47f522..69010b2efd96 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_promo__cards_relaunch__chrome__promo.cc @@ -1,20 +1,20 @@ ---- chrome/browser/ui/webui/password_manager/promo_cards/relaunch_chrome_promo.cc.orig 2024-02-23 21:04:38 UTC +--- 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 -@@ -37,7 +37,7 @@ std::u16string RelaunchChromePromo::GetTitle() const { +@@ -36,7 +36,7 @@ std::u16string RelaunchChromePromo::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 ); -@@ -47,7 +47,7 @@ std::u16string RelaunchChromePromo::GetDescription() c +@@ -46,7 +46,7 @@ std::u16string RelaunchChromePromo::GetDescription() c 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_searchbox_searchbox__handler.cc b/www/chromium/files/patch-chrome_browser_ui_webui_searchbox_searchbox__handler.cc index 24a2f33da842..888efe60c3ab 100644 --- a/www/chromium/files/patch-chrome_browser_ui_webui_searchbox_searchbox__handler.cc +++ b/www/chromium/files/patch-chrome_browser_ui_webui_searchbox_searchbox__handler.cc @@ -1,29 +1,29 @@ ---- chrome/browser/ui/webui/searchbox/searchbox_handler.cc.orig 2025-10-30 15:44:36 UTC +--- chrome/browser/ui/webui/searchbox/searchbox_handler.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/ui/webui/searchbox/searchbox_handler.cc -@@ -157,7 +157,7 @@ const char* kMacShareIconResourceName = +@@ -160,7 +160,7 @@ const char* kMacShareIconResourceName = #elif BUILDFLAG(IS_WIN) const char* kWinShareIconResourceName = "//resources/cr_components/searchbox/icons/win_share.svg"; -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) const char* kLinuxShareIconResourceName = "//resources/cr_components/searchbox/icons/share.svg"; #else -@@ -217,7 +217,7 @@ static void DefineChromeRefreshRealboxIcons() { +@@ -220,7 +220,7 @@ static void DefineChromeRefreshRealboxIcons() { #elif BUILDFLAG(IS_WIN) kWinShareIconResourceName = "//resources/cr_components/searchbox/icons/win_share_cr23.svg"; -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) kLinuxShareIconResourceName = "//resources/cr_components/searchbox/icons/share_cr23.svg"; #else -@@ -523,7 +523,7 @@ std::string SearchboxHandler::AutocompleteIconToResour +@@ -539,7 +539,7 @@ std::string SearchboxHandler::AutocompleteIconToResour if (icon.name == omnibox::kShareWinChromeRefreshIcon.name) { return kWinShareIconResourceName; } -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (icon.name == omnibox::kShareLinuxChromeRefreshIcon.name) { return kLinuxShareIconResourceName; } diff --git a/www/chromium/files/patch-chrome_browser_ui_webui_settings_settings__localized__strings__provider.cc b/www/chromium/files/patch-chrome_browser_ui_webui_settings_settings__localized__strings__provider.cc index 9e9355f59eb5..d25e99d842cc 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 2025-10-30 15:44:36 UTC +--- chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc -@@ -137,7 +137,7 @@ +@@ -135,7 +135,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 -@@ -146,7 +146,7 @@ +@@ -144,7 +144,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 -@@ -271,7 +271,7 @@ void AddA11yStrings(content::WebUIDataSource* html_sou +@@ -277,7 +277,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", -@@ -545,7 +545,7 @@ void AddAppearanceStrings(content::WebUIDataSource* ht +@@ -551,7 +551,7 @@ void AddAppearanceStrings(content::WebUIDataSource* ht {"uiFeatureAlignLeft", IDS_SETTINGS_UI_FEATURE_ALIGN_LEFT}, {"uiFeatureAlignRight", IDS_SETTINGS_UI_FEATURE_ALIGN_RIGHT}, {"resetToDefault", IDS_SETTINGS_RESET_TO_DEFAULT}, -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) {"gtkTheme", IDS_SETTINGS_GTK_THEME}, {"useGtkTheme", IDS_SETTINGS_USE_GTK_THEME}, {"qtTheme", IDS_SETTINGS_QT_THEME}, -@@ -553,11 +553,11 @@ void AddAppearanceStrings(content::WebUIDataSource* ht +@@ -559,11 +559,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) -@@ -581,7 +581,7 @@ void AddAppearanceStrings(content::WebUIDataSource* ht +@@ -587,7 +587,7 @@ void AddAppearanceStrings(content::WebUIDataSource* ht html_source->AddBoolean("tabSearchIsRightAlignedAtStartup", tabs::GetTabSearchTrailingTabstrip(profile)); -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) bool show_custom_chrome_frame = ui::OzonePlatform::GetInstance() ->GetPlatformRuntimeProperties() .supports_server_side_window_decorations; -@@ -1591,7 +1591,7 @@ void AddSignOutDialogStrings(content::WebUIDataSource* +@@ -1743,7 +1743,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 2466f2f2cf79..46adc5d68698 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 2025-10-30 15:44:36 UTC +--- chrome/browser/ui/webui/settings/site_settings_handler.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/ui/webui/settings/site_settings_handler.cc -@@ -118,7 +118,7 @@ +@@ -121,7 +121,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) -@@ -2016,7 +2016,7 @@ void SiteSettingsHandler::SendZoomLevels() { +@@ -2086,7 +2086,7 @@ void SiteSettingsHandler::SendZoomLevels() { base::Value::List 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) { -@@ -2118,7 +2118,7 @@ void SiteSettingsHandler::HandleRemoveZoomLevel(const +@@ -2188,7 +2188,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.scheme() == webapps::kIsolatedAppScheme) { + 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_side__panel_customize__chrome_customize__chrome__page__handler.cc b/www/chromium/files/patch-chrome_browser_ui_webui_side__panel_customize__chrome_customize__chrome__page__handler.cc index 92d2212a0d54..5ae59500a07d 100644 --- a/www/chromium/files/patch-chrome_browser_ui_webui_side__panel_customize__chrome_customize__chrome__page__handler.cc +++ b/www/chromium/files/patch-chrome_browser_ui_webui_side__panel_customize__chrome_customize__chrome__page__handler.cc @@ -1,11 +1,11 @@ ---- chrome/browser/ui/webui/side_panel/customize_chrome/customize_chrome_page_handler.cc.orig 2025-10-02 04:28:32 UTC +--- chrome/browser/ui/webui/side_panel/customize_chrome/customize_chrome_page_handler.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/ui/webui/side_panel/customize_chrome/customize_chrome_page_handler.cc -@@ -549,7 +549,7 @@ void CustomizeChromePageHandler::UpdateFooterSettings( +@@ -572,7 +572,7 @@ void CustomizeChromePageHandler::UpdateFooterSettings( side_panel::mojom::ManagementNoticeState::New(); management_notice_state->can_be_shown = false; management_notice_state->enabled_by_policy = false; -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) enterprise_util::BrowserManagementNoticeState state = enterprise_util::GetManagementNoticeStateForNTPFooter(profile_); switch (state) { diff --git a/www/chromium/files/patch-chrome_browser_ui_webui_side__panel_customize__chrome_customize__chrome__page__handler.h b/www/chromium/files/patch-chrome_browser_ui_webui_side__panel_customize__chrome_customize__chrome__page__handler.h index 2ac9e67cb9a5..19ebab437806 100644 --- a/www/chromium/files/patch-chrome_browser_ui_webui_side__panel_customize__chrome_customize__chrome__page__handler.h +++ b/www/chromium/files/patch-chrome_browser_ui_webui_side__panel_customize__chrome_customize__chrome__page__handler.h @@ -1,11 +1,11 @@ ---- chrome/browser/ui/webui/side_panel/customize_chrome/customize_chrome_page_handler.h.orig 2025-10-02 04:28:32 UTC +--- chrome/browser/ui/webui/side_panel/customize_chrome/customize_chrome_page_handler.h.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/ui/webui/side_panel/customize_chrome/customize_chrome_page_handler.h -@@ -208,7 +208,7 @@ class CustomizeChromePageHandler +@@ -217,7 +217,7 @@ class CustomizeChromePageHandler // value needs to be requeried by the page. GURL last_source_url_{GURL(chrome::kChromeUINewTabPageURL)}; -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) PrefChangeRegistrar browser_pref_change_registrar_; #endif PrefChangeRegistrar pref_change_registrar_; diff --git a/www/chromium/files/patch-chrome_browser_ui_webui_signin_profile__picker__handler.cc b/www/chromium/files/patch-chrome_browser_ui_webui_signin_profile__picker__handler.cc index 4852c925ab66..0a90c9d8d86b 100644 --- a/www/chromium/files/patch-chrome_browser_ui_webui_signin_profile__picker__handler.cc +++ b/www/chromium/files/patch-chrome_browser_ui_webui_signin_profile__picker__handler.cc @@ -1,11 +1,11 @@ ---- chrome/browser/ui/webui/signin/profile_picker_handler.cc.orig 2025-10-30 15:44:36 UTC +--- chrome/browser/ui/webui/signin/profile_picker_handler.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/ui/webui/signin/profile_picker_handler.cc -@@ -172,7 +172,7 @@ base::Value::Dict CreateProfileState(const ProfileAttr +@@ -173,7 +173,7 @@ base::Value::Dict CreateProfileState(const ProfileAttr 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_web__applications_test_os__integration__test__override__impl.cc b/www/chromium/files/patch-chrome_browser_web__applications_test_os__integration__test__override__impl.cc index 07e313dd77c3..a0751b164f8f 100644 --- a/www/chromium/files/patch-chrome_browser_web__applications_test_os__integration__test__override__impl.cc +++ b/www/chromium/files/patch-chrome_browser_web__applications_test_os__integration__test__override__impl.cc @@ -1,119 +1,119 @@ ---- chrome/browser/web_applications/test/os_integration_test_override_impl.cc.orig 2025-02-19 07:43:18 UTC +--- chrome/browser/web_applications/test/os_integration_test_override_impl.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/web_applications/test/os_integration_test_override_impl.cc @@ -45,7 +45,7 @@ #include "third_party/skia/include/core/SkBitmap.h" #include "third_party/skia/include/core/SkColor.h" -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "base/nix/xdg_util.h" #endif -@@ -130,7 +130,7 @@ std::vector GetFileExtensionsForProgId( +@@ -132,7 +132,7 @@ std::vector GetFileExtensionsForProgId( } #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Performs a blocking read of app icons from the disk. std::optional IconManagerReadIconForSize( WebAppIconManager& icon_manager, -@@ -315,7 +315,7 @@ bool OsIntegrationTestOverrideImpl::SimulateDeleteShor +@@ -317,7 +317,7 @@ bool OsIntegrationTestOverrideImpl::SimulateDeleteShor GetShortcutPath(profile, chrome_apps_folder(), app_id, app_name); CHECK(base::PathExists(app_folder_shortcut_path)); return base::DeletePathRecursively(app_folder_shortcut_path); -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) base::FilePath desktop_shortcut_path = GetShortcutPath(profile, desktop(), app_id, app_name); LOG(INFO) << desktop_shortcut_path; -@@ -362,7 +362,7 @@ bool OsIntegrationTestOverrideImpl::DeleteApplicationM +@@ -364,7 +364,7 @@ bool OsIntegrationTestOverrideImpl::DeleteApplicationM } #endif // BUILDFLAG(IS_WIN) -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) bool OsIntegrationTestOverrideImpl::DeleteDesktopDirOnLinux() { if (desktop_.IsValid()) { return desktop_.Delete(); -@@ -376,7 +376,7 @@ bool OsIntegrationTestOverrideImpl::IsRunOnOsLoginEnab +@@ -378,7 +378,7 @@ bool OsIntegrationTestOverrideImpl::IsRunOnOsLoginEnab Profile* profile, const webapps::AppId& app_id, const std::string& app_name) { -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) std::string shortcut_filename = "chrome-" + app_id + "-" + profile->GetBaseName().value() + ".desktop"; return base::PathExists(startup().Append(shortcut_filename)); -@@ -431,7 +431,7 @@ bool OsIntegrationTestOverrideImpl::IsFileExtensionHan +@@ -433,7 +433,7 @@ bool OsIntegrationTestOverrideImpl::IsFileExtensionHan is_file_handled = shell_integration::CanApplicationHandleURL(app_path, test_file_url); base::DeleteFile(test_file_path); -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) base::FilePath user_applications_dir = applications(); bool database_update_called = false; for (const LinuxFileRegistration& command : linux_file_registration_) { -@@ -481,7 +481,7 @@ std::optional OsIntegrationTestOverrideImpl: +@@ -483,7 +483,7 @@ std::optional OsIntegrationTestOverrideImpl: return std::nullopt; } return GetIconFromShortcutFile(shortcut_path); -#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) WebAppProvider* provider = WebAppProvider::GetForLocalAppsUnchecked(profile); if (!provider) { return std::nullopt; -@@ -547,7 +547,7 @@ base::FilePath OsIntegrationTestOverrideImpl::GetShort - app_installed_profiles.end()) { - return shortcut_path; +@@ -550,7 +550,7 @@ base::FilePath OsIntegrationTestOverrideImpl::GetShort + return bundle.bundle_path(); + } } -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) std::string shortcut_filename = "chrome-" + app_id + "-" + profile->GetBaseName().value() + ".desktop"; base::FilePath shortcut_path = shortcut_dir.Append(shortcut_filename); -@@ -572,7 +572,7 @@ bool OsIntegrationTestOverrideImpl::IsShortcutCreated( +@@ -575,7 +575,7 @@ bool OsIntegrationTestOverrideImpl::IsShortcutCreated( base::FilePath app_shortcut_path = GetShortcutPath(profile, chrome_apps_folder(), app_id, app_name); return base::PathExists(app_shortcut_path); -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) base::FilePath desktop_shortcut_path = GetShortcutPath(profile, desktop(), app_id, app_name); return base::PathExists(desktop_shortcut_path); -@@ -764,7 +764,7 @@ void OsIntegrationTestOverrideImpl::EnableOrDisablePat +@@ -767,7 +767,7 @@ void OsIntegrationTestOverrideImpl::EnableOrDisablePat } #endif // BUILDFLAG(IS_MAC) -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) base::FilePath OsIntegrationTestOverrideImpl::desktop() { return desktop_.GetPath(); } -@@ -815,7 +815,7 @@ OsIntegrationTestOverrideImpl::OsIntegrationTestOverri +@@ -818,7 +818,7 @@ OsIntegrationTestOverrideImpl::OsIntegrationTestOverri success = chrome_apps_folder_.CreateUniqueTempDirUnderPath( outer_temp_dir_.GetPath()); CHECK(success); -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) success = desktop_.CreateUniqueTempDirUnderPath(outer_temp_dir_.GetPath()); CHECK(success); success = startup_.CreateUniqueTempDirUnderPath(outer_temp_dir_.GetPath()); -@@ -828,7 +828,7 @@ OsIntegrationTestOverrideImpl::OsIntegrationTestOverri +@@ -831,7 +831,7 @@ OsIntegrationTestOverrideImpl::OsIntegrationTestOverri CHECK(success); #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) auto callback = base::BindRepeating([](base::FilePath filename_in, std::string xdg_command, std::string file_contents) { -@@ -900,7 +900,7 @@ OsIntegrationTestOverrideImpl::~OsIntegrationTestOverr +@@ -903,7 +903,7 @@ OsIntegrationTestOverrideImpl::~OsIntegrationTestOverr EXPECT_TRUE(!startup_.IsValid() || startup_.Delete()); #elif BUILDFLAG(IS_MAC) EXPECT_TRUE(!chrome_apps_folder_.IsValid() || DeleteChromeAppsDir()); -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) EXPECT_TRUE(!desktop_.IsValid() || desktop_.Delete()); EXPECT_TRUE(!startup_.IsValid() || startup_.Delete()); EXPECT_TRUE(!xdg_data_home_dir_.IsValid() || xdg_data_home_dir_.Delete()); diff --git a/www/chromium/files/patch-chrome_browser_web__applications_web__app.cc b/www/chromium/files/patch-chrome_browser_web__applications_web__app.cc index e9d87ce819d4..9c2b1626c461 100644 --- a/www/chromium/files/patch-chrome_browser_web__applications_web__app.cc +++ b/www/chromium/files/patch-chrome_browser_web__applications_web__app.cc @@ -1,20 +1,20 @@ ---- chrome/browser/web_applications/web_app.cc.orig 2025-10-30 15:44:36 UTC +--- chrome/browser/web_applications/web_app.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/web_applications/web_app.cc @@ -76,7 +76,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) -@@ -737,7 +737,7 @@ void WebApp::SetCurrentOsIntegrationStates( +@@ -754,7 +754,7 @@ void WebApp::SetCurrentOsIntegrationStates( void WebApp::SetIsolationData(IsolationData isolation_data) { CHECK(manifest_id_.is_valid() #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) && manifest_id_.SchemeIs(webapps::kIsolatedAppScheme)) #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || // BUILDFLAG(IS_CHROMEOS) diff --git a/www/chromium/files/patch-chrome_browser_webauthn_enclave__manager.cc b/www/chromium/files/patch-chrome_browser_webauthn_enclave__manager.cc index eac0d21a0e4a..a41985b4f192 100644 --- a/www/chromium/files/patch-chrome_browser_webauthn_enclave__manager.cc +++ b/www/chromium/files/patch-chrome_browser_webauthn_enclave__manager.cc @@ -1,20 +1,20 @@ ---- chrome/browser/webauthn/enclave_manager.cc.orig 2025-10-30 15:44:36 UTC +--- chrome/browser/webauthn/enclave_manager.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/webauthn/enclave_manager.cc -@@ -779,7 +779,7 @@ base::flat_set GetGaiaIDs( +@@ -795,7 +795,7 @@ base::flat_set GetGaiaIDs( std::string UserVerifyingLabelToString(crypto::UserVerifyingKeyLabel label) { #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) return label; #else return std::string("placeholder"); -@@ -789,7 +789,7 @@ std::string UserVerifyingLabelToString(crypto::UserVer +@@ -805,7 +805,7 @@ std::string UserVerifyingLabelToString(crypto::UserVer std::optional UserVerifyingKeyLabelFromString( std::string saved_label) { #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) return saved_label; #else return std::nullopt; diff --git a/www/chromium/files/patch-chrome_browser_webauthn_unexportable__key__utils.cc b/www/chromium/files/patch-chrome_browser_webauthn_unexportable__key__utils.cc index 8a6c0b6258fd..e1426e138329 100644 --- a/www/chromium/files/patch-chrome_browser_webauthn_unexportable__key__utils.cc +++ b/www/chromium/files/patch-chrome_browser_webauthn_unexportable__key__utils.cc @@ -1,11 +1,11 @@ ---- chrome/browser/webauthn/unexportable_key_utils.cc.orig 2025-05-05 10:57:53 UTC +--- chrome/browser/webauthn/unexportable_key_utils.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/browser/webauthn/unexportable_key_utils.cc -@@ -33,7 +33,7 @@ GetWebAuthnUnexportableKeyProvider() { +@@ -42,7 +42,7 @@ GetWebAuthnUnexportableKeyProvider() { // If there is a scoped UnexportableKeyProvider configured, we always use // that so that tests can still override the key provider. const bool use_software_provider = -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) !crypto::internal::HasScopedUnexportableKeyProvider(); #else false; diff --git a/www/chromium/files/patch-chrome_common_chrome__features.cc b/www/chromium/files/patch-chrome_common_chrome__features.cc index eb33d04d5d2e..f8fdd10475d3 100644 --- a/www/chromium/files/patch-chrome_common_chrome__features.cc +++ b/www/chromium/files/patch-chrome_common_chrome__features.cc @@ -1,65 +1,65 @@ ---- chrome/common/chrome_features.cc.orig 2025-11-18 17:44:48 UTC +--- chrome/common/chrome_features.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/common/chrome_features.cc -@@ -86,7 +86,7 @@ BASE_FEATURE(kUseAdHocSigningForWebAppShims, base::FEA +@@ -90,7 +90,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); -@@ -98,7 +98,7 @@ BASE_FEATURE(kAutofillCardSurvey, base::FEATURE_DISABL +@@ -102,7 +102,7 @@ BASE_FEATURE(kAutofillCardSurvey, base::FEATURE_DISABL BASE_FEATURE(kAutofillPasswordSurvey, base::FEATURE_DISABLED_BY_DEFAULT); #endif -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Enables the Restart background mode optimization. When all Chrome UI is // closed and it goes in the background, allows to restart the browser to // discard memory. -@@ -214,7 +214,7 @@ BASE_FEATURE(kDesktopPWAsElidedExtensionsMenu, +@@ -218,7 +218,7 @@ BASE_FEATURE(kDesktopPWAsElidedExtensionsMenu, // Enables or disables Desktop PWAs to be auto-started on OS login. BASE_FEATURE(kDesktopPWAsRunOnOsLogin, #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 -@@ -248,7 +248,7 @@ BASE_FEATURE(kEnableFullscreenToAnyScreenAndroid, - base::FEATURE_DISABLED_BY_DEFAULT); - #endif +@@ -255,7 +255,7 @@ BASE_FEATURE(kEnableFullscreenToAnyScreenAndroid, + // Enables the new reset banner on the settings page. + BASE_FEATURE(kShowResetProfileBannerV2, base::FEATURE_ENABLED_BY_DEFAULT); -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Controls whether Chrome Apps are supported. See https://crbug.com/1221251. // If the feature is disabled, Chrome Apps continue to work. If enabled, Chrome // Apps will not launch and will be marked in the UI as deprecated. -@@ -625,7 +625,7 @@ BASE_FEATURE(kGlicWarming, base::FEATURE_DISABLED_BY_D +@@ -790,7 +790,7 @@ BASE_FEATURE(kGlicWarming, base::FEATURE_DISABLED_BY_D // Killswitch that controls whether the guest WebContents visibility state is // set to hidden when the Glic panel is warming. BASE_FEATURE(kGlicGuestContentsVisibilityState, -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) base::FEATURE_ENABLED_BY_DEFAULT); #else base::FEATURE_DISABLED_BY_DEFAULT); -@@ -1086,7 +1086,7 @@ BASE_FEATURE(kKAnonymityServiceOHTTPRequests, base::FE +@@ -1295,7 +1295,7 @@ BASE_FEATURE(kKAnonymityServiceOHTTPRequests, base::FE // public keys. BASE_FEATURE(kKAnonymityServiceStorage, base::FEATURE_ENABLED_BY_DEFAULT); -#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: -@@ -1097,7 +1097,7 @@ constexpr base::FeatureParam kLinuxLowMemoryMonit +@@ -1306,7 +1306,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 aff02a69894b..ba6ac26fdddb 100644 --- a/www/chromium/files/patch-chrome_common_chrome__features.h +++ b/www/chromium/files/patch-chrome_common_chrome__features.h @@ -1,45 +1,45 @@ ---- chrome/common/chrome_features.h.orig 2025-11-18 17:44:48 UTC +--- chrome/common/chrome_features.h.orig 2025-12-05 10:12:50 UTC +++ chrome/common/chrome_features.h -@@ -83,13 +83,13 @@ BASE_DECLARE_FEATURE(kUseAdHocSigningForWebAppShims); +@@ -85,13 +85,13 @@ 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); #endif -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) COMPONENT_EXPORT(CHROME_FEATURES) BASE_DECLARE_FEATURE(kBackgroundModeAllowRestart); #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -@@ -173,7 +173,7 @@ BASE_DECLARE_FEATURE(kDesktopPWAsPreventClose); +@@ -178,7 +178,7 @@ BASE_DECLARE_FEATURE(kDesktopPWAsTabStripSettings); COMPONENT_EXPORT(CHROME_FEATURES) - BASE_DECLARE_FEATURE(kDesktopPWAsTabStripSettings); + BASE_DECLARE_FEATURE(kShowResetProfileBannerV2); -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) COMPONENT_EXPORT(CHROME_FEATURES) BASE_DECLARE_FEATURE(kChromeAppsDeprecation); COMPONENT_EXPORT(CHROME_FEATURES) BASE_DECLARE_FEATURE(kShortcutsNotApps); -@@ -806,7 +806,7 @@ BASE_DECLARE_FEATURE(kKAnonymityServiceOHTTPRequests); +@@ -952,7 +952,7 @@ BASE_DECLARE_FEATURE(kKAnonymityServiceOHTTPRequests); COMPONENT_EXPORT(CHROME_FEATURES) BASE_DECLARE_FEATURE(kKAnonymityServiceStorage); -#if BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CHROMEOS) +#if (BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CHROMEOS)) || BUILDFLAG(IS_BSD) COMPONENT_EXPORT(CHROME_FEATURES) BASE_DECLARE_FEATURE(kLinuxLowMemoryMonitor); COMPONENT_EXPORT(CHROME_FEATURES) extern const base::FeatureParam kLinuxLowMemoryMonitorModerateLevel; -@@ -814,7 +814,7 @@ COMPONENT_EXPORT(CHROME_FEATURES) +@@ -960,7 +960,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 707ba49d8c5f..22d5cfb9af1e 100644 --- a/www/chromium/files/patch-chrome_common_chrome__switches.cc +++ b/www/chromium/files/patch-chrome_common_chrome__switches.cc @@ -1,20 +1,20 @@ ---- chrome/common/chrome_switches.cc.orig 2025-10-30 15:44:36 UTC +--- chrome/common/chrome_switches.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/common/chrome_switches.cc -@@ -939,7 +939,7 @@ const char kDebugPrint[] = "debug-print"; +@@ -934,7 +934,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) const char kEnableNewAppMenuIcon[] = "enable-new-app-menu-icon"; // Causes the browser to launch directly in guest mode. -@@ -975,7 +975,7 @@ const char kGlicHostLogging[] = "glic-host-logging"; +@@ -970,7 +970,7 @@ const char kGlicHostLogging[] = "glic-host-logging"; const char kGlicAdminRedirectPatterns[] = "glic-admin-redirect-patterns"; #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) // Writes open and installed web apps for each profile to the specified file // without launching a new browser window or tab. Pass a absolute file path // to specify where to output the information. Can be used together with diff --git a/www/chromium/files/patch-chrome_common_chrome__switches.h b/www/chromium/files/patch-chrome_common_chrome__switches.h index c87c4cb7bf6e..cb325ef9570c 100644 --- a/www/chromium/files/patch-chrome_common_chrome__switches.h +++ b/www/chromium/files/patch-chrome_common_chrome__switches.h @@ -1,20 +1,20 @@ ---- chrome/common/chrome_switches.h.orig 2025-10-30 15:44:36 UTC +--- chrome/common/chrome_switches.h.orig 2025-12-05 10:12:50 UTC +++ chrome/common/chrome_switches.h -@@ -285,7 +285,7 @@ extern const char kDebugPrint[]; +@@ -284,7 +284,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 kEnableNewAppMenuIcon[]; extern const char kGuest[]; extern const char kForceNtpMobilePromo[]; -@@ -305,7 +305,7 @@ extern const char kGlicHostLogging[]; +@@ -304,7 +304,7 @@ extern const char kGlicHostLogging[]; extern const char kGlicAdminRedirectPatterns[]; #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) extern const char kListApps[]; extern const char kProfileBaseName[]; extern const char kProfileManagementAttributes[]; diff --git a/www/chromium/files/patch-chrome_common_pref__names.h b/www/chromium/files/patch-chrome_common_pref__names.h index 79a61dcaa3e7..6705dc41445c 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 2025-10-30 15:44:36 UTC +--- chrome/common/pref_names.h.orig 2025-12-05 10:12:50 UTC +++ chrome/common/pref_names.h @@ -1342,7 +1342,7 @@ inline constexpr char kGeminiSettings[] = "browser.gem inline constexpr char kAllowedDomainsForApps[] = "settings.allowed_domains_for_apps"; -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Linux specific preference on whether we should match the system theme. inline constexpr char kSystemTheme[] = "extensions.theme.system_theme"; #endif @@ -1501,7 +1501,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"; @@ -2113,7 +2113,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[] = @@ -2160,7 +2160,7 @@ inline constexpr char kDownloadDefaultDirectory[] = inline constexpr char kDownloadDirUpgraded[] = "download.directory_upgrade"; #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ - BUILDFLAG(IS_MAC) + BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) inline constexpr char kOpenPdfDownloadInSystemReader[] = "download.open_pdf_in_system_reader"; #endif -@@ -2674,7 +2674,7 @@ inline constexpr char kMediaStorageIdSalt[] = "media.s +@@ -2685,7 +2685,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[] = -@@ -2688,7 +2688,7 @@ inline constexpr char kNetworkServiceSandboxEnabled[] +@@ -2699,7 +2699,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"; -@@ -2780,7 +2780,7 @@ inline constexpr char kIsolatedWebAppInstallForceList[ +@@ -2791,7 +2791,7 @@ inline constexpr char kIsolatedWebAppInstallForceList[ inline constexpr char kIsolatedWebAppPendingInitializationCount[] = "profile.isolated_web_app.install.pending_initialization_count"; -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Boolean that specifies whether OK-AS-DELEGATE flag from KDC is respected // along with kAuthNegotiateDelegateAllowlist. inline constexpr char kAuthNegotiateDelegateByKdcPolicy[] = -@@ -3287,7 +3287,7 @@ inline constexpr char kKioskApplicationLogCollectionEn +@@ -3298,7 +3298,7 @@ inline constexpr char kKioskApplicationLogCollectionEn #endif // BUILDFLAG(IS_CHROMEOS) #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || \ - BUILDFLAG(IS_ANDROID) + BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) // Defines administrator-set availability of Chrome for Testing. inline constexpr char kChromeForTestingAllowed[] = "chrome_for_testing.allowed"; #endif -@@ -3801,7 +3801,7 @@ inline constexpr char kScreenCaptureWithoutGestureAllo +@@ -3812,7 +3812,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[] = -@@ -3990,7 +3990,7 @@ inline constexpr char kLensDesktopNTPSearchEnabled[] = +@@ -4005,7 +4005,7 @@ inline constexpr char kLensDesktopNTPSearchEnabled[] = "policy.lens_desktop_ntp_search_enabled"; #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) // A dict mapping the edition name with the major version it was shown. inline constexpr char kWhatsNewEditionUsed[] = "browser.whats_new.edition_used"; // A list containing the features of each module in order of when they -@@ -4087,7 +4087,7 @@ inline constexpr char kPrintingOAuth2AuthorizationServ +@@ -4102,7 +4102,7 @@ inline constexpr char kPrintingOAuth2AuthorizationServ "printing.oauth2_authorization_servers"; #endif -#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // If this exists and is true, Chrome may run system DNS resolution out of the // network process. If false, Chrome will run system DNS resolution in the // network process. If non-existent, Chrome will decide where to run system DNS diff --git a/www/chromium/files/patch-chrome_common_url__constants.h b/www/chromium/files/patch-chrome_common_url__constants.h index 106a918542af..98ade0d6b95a 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 2025-10-30 15:44:36 UTC +--- chrome/common/url_constants.h.orig 2025-12-05 10:12:50 UTC +++ chrome/common/url_constants.h -@@ -1001,7 +1001,7 @@ inline constexpr char kOutdatedPluginLearnMoreURL[] = +@@ -1027,7 +1027,7 @@ inline constexpr char kOutdatedPluginLearnMoreURL[] = inline constexpr char kPhoneHubPermissionLearnMoreURL[] = "https://support.google.com/chromebook?p=multidevice"; -#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 fad2fec6934a..8fb7b8c25cc0 100644 --- a/www/chromium/files/patch-chrome_common_webui__url__constants.cc +++ b/www/chromium/files/patch-chrome_common_webui__url__constants.cc @@ -1,23 +1,23 @@ ---- chrome/common/webui_url_constants.cc.orig 2025-10-02 04:28:32 UTC +--- chrome/common/webui_url_constants.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/common/webui_url_constants.cc -@@ -199,17 +199,17 @@ base::span ChromeURLHosts() +@@ -202,17 +202,17 @@ base::span ChromeURLHosts() 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 aef6c121404c..b6f84156e896 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,40 @@ ---- chrome/common/webui_url_constants.h.orig 2025-10-30 15:44:36 UTC +--- chrome/common/webui_url_constants.h.orig 2025-12-05 10:12:50 UTC +++ chrome/common/webui_url_constants.h -@@ -556,12 +556,12 @@ inline constexpr char kChromeUIOsUrlAppURL[] = "chrome +@@ -563,12 +563,12 @@ inline constexpr char kChromeUIOsUrlAppURL[] = "chrome #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 kChromeUIWebAppSettingsHost[] = "app-settings"; inline constexpr char kChromeUIWebAppSettingsURL[] = "chrome://app-settings/"; inline constexpr char kChromeUIWhatsNewHost[] = "whats-new"; -@@ -573,11 +573,11 @@ inline constexpr char kChromeUILinuxProxyConfigHost[] +@@ -580,11 +580,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"; -@@ -602,7 +602,7 @@ inline constexpr char kChromeUIHistorySyncOptinURL[] = +@@ -609,7 +609,7 @@ inline constexpr char kChromeUIHistorySyncOptinURL[] = "chrome://history-sync-optin/"; #endif -#if ((BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)) && \ +#if ((BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) || BUILDFLAG(IS_CHROMEOS)) && \ defined(TOOLKIT_VIEWS)) || \ defined(USE_AURA) inline constexpr char kChromeUITabModalConfirmDialogHost[] = diff --git a/www/chromium/files/patch-chrome_updater_configurator.cc b/www/chromium/files/patch-chrome_updater_configurator.cc index eb298fd69c53..cf38eb088ba8 100644 --- a/www/chromium/files/patch-chrome_updater_configurator.cc +++ b/www/chromium/files/patch-chrome_updater_configurator.cc @@ -1,11 +1,11 @@ ---- chrome/updater/configurator.cc.orig 2025-10-02 04:28:32 UTC +--- chrome/updater/configurator.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/updater/configurator.cc -@@ -91,7 +91,7 @@ Configurator::Configurator(scoped_refptr +@@ -90,7 +90,7 @@ Configurator::Configurator(scoped_refptr return std::nullopt; #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) }()) { -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // On Linux creating the NetworkFetcherFactory requires performing blocking IO // to load an external library. This should be done when the configurator is // created. diff --git a/www/chromium/files/patch-chrome_utility_services.cc b/www/chromium/files/patch-chrome_utility_services.cc index 851aa780ad01..b83016b316d0 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 2025-10-30 15:44:36 UTC +--- chrome/utility/services.cc.orig 2025-12-05 10:12:50 UTC +++ chrome/utility/services.cc @@ -50,7 +50,7 @@ #include "chrome/services/system_signals/mac/mac_system_signals_service.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) -@@ -213,7 +213,7 @@ auto RunMacNotificationService( +@@ -207,7 +207,7 @@ auto RunMacNotificationService( } #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) { -@@ -481,7 +481,7 @@ void RegisterMainThreadServices(mojo::ServiceFactory& +@@ -459,7 +459,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-components_BUILD.gn b/www/chromium/files/patch-components_BUILD.gn index ca61b7683adb..49507e5f1bea 100644 --- a/www/chromium/files/patch-components_BUILD.gn +++ b/www/chromium/files/patch-components_BUILD.gn @@ -1,28 +1,28 @@ ---- components/BUILD.gn.orig 2025-10-30 15:44:36 UTC +--- components/BUILD.gn.orig 2025-12-05 10:12:50 UTC +++ components/BUILD.gn -@@ -217,7 +217,6 @@ test("components_unittests") { - "//components/content_settings/core/common:unit_tests", +@@ -220,7 +220,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/cross_device/logging:unit_tests", "//components/crx_file:unit_tests", "//components/data_sharing:unit_tests", -@@ -634,7 +633,7 @@ test("components_unittests") { +@@ -637,7 +636,7 @@ test("components_unittests") { "//components/user_data_importer/content: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", -@@ -800,7 +799,7 @@ test("components_unittests") { +@@ -804,7 +803,7 @@ test("components_unittests") { deps += [ "//components/constrained_window:unit_tests" ] } - if (is_win || is_linux || is_chromeos || is_mac) { + if (is_win || (is_linux && !is_bsd) || is_chromeos || is_mac) { deps += [ "//components/stability_report:unit_tests", "//components/webapps/isolated_web_apps:unit_tests", diff --git a/www/chromium/files/patch-components_autofill_core_browser_data__manager_payments_payments__data__manager.cc b/www/chromium/files/patch-components_autofill_core_browser_data__manager_payments_payments__data__manager.cc index d6d6625738ee..6999e5e65164 100644 --- a/www/chromium/files/patch-components_autofill_core_browser_data__manager_payments_payments__data__manager.cc +++ b/www/chromium/files/patch-components_autofill_core_browser_data__manager_payments_payments__data__manager.cc @@ -1,47 +1,47 @@ ---- components/autofill/core/browser/data_manager/payments/payments_data_manager.cc.orig 2025-10-30 15:44:36 UTC +--- components/autofill/core/browser/data_manager/payments/payments_data_manager.cc.orig 2025-12-05 10:12:50 UTC +++ components/autofill/core/browser/data_manager/payments/payments_data_manager.cc -@@ -479,7 +479,7 @@ void PaymentsDataManager::OnWebDataServiceRequestDone( +@@ -480,7 +480,7 @@ void PaymentsDataManager::OnWebDataServiceRequestDone( bool PaymentsDataManager::ShouldShowBnplSettings() const { #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) // Check `kAutofillEnableBuyNowPayLater` only if the user has seen a BNPL // suggestion before, or there are already linked issuers present, to avoid // unnecessary feature flag checks. The linked issuer check is due to the fact -@@ -1014,7 +1014,7 @@ void PaymentsDataManager::SetPrefService(PrefService* +@@ -1015,7 +1015,7 @@ void PaymentsDataManager::SetPrefService(PrefService* &PaymentsDataManager::OnAutofillPaymentsCardBenefitsPrefChange, base::Unretained(this))); #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) pref_registrar_.Add( prefs::kAutofillBnplEnabled, base::BindRepeating(&PaymentsDataManager::OnBnplEnabledPrefChange, -@@ -1088,7 +1088,7 @@ void PaymentsDataManager::SetAutofillHasSeenIban() { +@@ -1089,7 +1089,7 @@ void PaymentsDataManager::SetAutofillHasSeenIban() { } #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 PaymentsDataManager::IsAutofillHasSeenBnplPrefEnabled() const { return prefs::HasSeenBnpl(pref_service_); } -@@ -2125,7 +2125,7 @@ bool PaymentsDataManager::AreEwalletAccountsSupported( +@@ -2140,7 +2140,7 @@ bool PaymentsDataManager::AreEwalletAccountsSupported( bool PaymentsDataManager::AreBnplIssuersSupported() const { #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) return (app_locale_ == "en-US" || app_locale_ == "en-GB" || app_locale_ == "en-CA") && GetCountryCodeForExperimentGroup() == "US" && -@@ -2160,7 +2160,7 @@ void PaymentsDataManager::ClearAllCreditCardBenefits() +@@ -2175,7 +2175,7 @@ void PaymentsDataManager::ClearAllCreditCardBenefits() } #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) void PaymentsDataManager::OnBnplEnabledPrefChange() { // On pref change to `false`, clearing BNPL issuers is implicitly handled by // `GetBnplIssuers()`, since it returns an empty vector when diff --git a/www/chromium/files/patch-components_autofill_core_browser_data__manager_payments_payments__data__manager.h b/www/chromium/files/patch-components_autofill_core_browser_data__manager_payments_payments__data__manager.h index 68f7d75bf77a..ae6e45119f3b 100644 --- a/www/chromium/files/patch-components_autofill_core_browser_data__manager_payments_payments__data__manager.h +++ b/www/chromium/files/patch-components_autofill_core_browser_data__manager_payments_payments__data__manager.h @@ -1,20 +1,20 @@ ---- components/autofill/core/browser/data_manager/payments/payments_data_manager.h.orig 2025-10-30 15:44:36 UTC +--- components/autofill/core/browser/data_manager/payments/payments_data_manager.h.orig 2025-12-05 10:12:50 UTC +++ components/autofill/core/browser/data_manager/payments/payments_data_manager.h -@@ -377,7 +377,7 @@ class PaymentsDataManager : public AutofillWebDataServ - void SetAutofillHasSeenIban(); +@@ -378,7 +378,7 @@ class PaymentsDataManager : public AutofillWebDataServ + // TODO(crbug.com/430575808): Remove build flags. #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) // Returns the value of the kAutofillHasSeenBnpl pref. - bool IsAutofillHasSeenBnplPrefEnabled() const; + virtual bool IsAutofillHasSeenBnplPrefEnabled() const; -@@ -716,7 +716,7 @@ class PaymentsDataManager : public AutofillWebDataServ +@@ -726,7 +726,7 @@ class PaymentsDataManager : public AutofillWebDataServ void ClearAllCreditCardBenefits(); #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) // Monitors the `kAutofillBnplEnabled` preference for changes and controls the // clearing/loading of payment instruments accordingly. Will also log the // `Autofill.SettingsPage.BnplToggled` metric. diff --git a/www/chromium/files/patch-components_autofill_core_browser_foundations_browser__autofill__manager.cc b/www/chromium/files/patch-components_autofill_core_browser_foundations_browser__autofill__manager.cc index 3d58ce41bd3f..8253151c9f57 100644 --- a/www/chromium/files/patch-components_autofill_core_browser_foundations_browser__autofill__manager.cc +++ b/www/chromium/files/patch-components_autofill_core_browser_foundations_browser__autofill__manager.cc @@ -1,11 +1,11 @@ ---- components/autofill/core/browser/foundations/browser_autofill_manager.cc.orig 2025-10-30 15:44:36 UTC +--- components/autofill/core/browser/foundations/browser_autofill_manager.cc.orig 2025-12-05 10:12:50 UTC +++ components/autofill/core/browser/foundations/browser_autofill_manager.cc -@@ -853,7 +853,7 @@ BrowserAutofillManager::GetAmountExtractionManager() { +@@ -854,7 +854,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_payments_amount__extraction__manager.cc b/www/chromium/files/patch-components_autofill_core_browser_payments_amount__extraction__manager.cc index c6ea2d21468e..1528c9c44026 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,29 @@ ---- components/autofill/core/browser/payments/amount_extraction_manager.cc.orig 2025-10-30 15:44:36 UTC +--- components/autofill/core/browser/payments/amount_extraction_manager.cc.orig 2025-12-05 10:12:50 UTC +++ components/autofill/core/browser/payments/amount_extraction_manager.cc -@@ -185,7 +185,7 @@ void AmountExtractionManager::OnCheckoutAmountReceived - bnpl_manager->OnAmountExtractionReturned(parsed_extracted_amount); +@@ -249,7 +249,7 @@ void AmountExtractionManager::OnCheckoutAmountReceived + /*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( ::autofill::features::kAutofillEnableAmountExtractionTesting)) { VLOG(3) << "The result of amount extraction on domain " -@@ -216,7 +216,7 @@ void AmountExtractionManager::OnTimeoutReached() { +@@ -315,7 +315,7 @@ void AmountExtractionManager::OnTimeoutReached() { /*timeout_reached=*/true); } 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( ::autofill::features::kAutofillEnableAmountExtractionTesting)) { VLOG(3) << "The amount extraction on domain " -@@ -234,7 +234,7 @@ AmountExtractionManager::CheckEligibilityForFeaturesRe +@@ -333,7 +333,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 (BnplManager::IsEligibleForBnpl(autofill_manager_->client())) { + 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 6e6d62baff64..7d5032e7b4f2 100644 --- a/www/chromium/files/patch-components_autofill_core_browser_payments_bnpl__manager.cc +++ b/www/chromium/files/patch-components_autofill_core_browser_payments_bnpl__manager.cc @@ -1,11 +1,11 @@ ---- components/autofill/core/browser/payments/bnpl_manager.cc.orig 2025-10-30 15:44:36 UTC +--- components/autofill/core/browser/payments/bnpl_manager.cc.orig 2025-12-05 10:12:50 UTC +++ components/autofill/core/browser/payments/bnpl_manager.cc -@@ -599,7 +599,7 @@ void BnplManager::MaybeUpdateDesktopSuggestionsWithBnp +@@ -607,7 +607,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_payments__suggestion__generator.cc b/www/chromium/files/patch-components_autofill_core_browser_suggestions_payments_payments__suggestion__generator.cc new file mode 100644 index 000000000000..1cc46c3065f3 --- /dev/null +++ b/www/chromium/files/patch-components_autofill_core_browser_suggestions_payments_payments__suggestion__generator.cc @@ -0,0 +1,11 @@ +--- components/autofill/core/browser/suggestions/payments/payments_suggestion_generator.cc.orig 2025-12-05 10:12:50 UTC ++++ components/autofill/core/browser/suggestions/payments/payments_suggestion_generator.cc +@@ -1462,7 +1462,7 @@ std::vector GetCreditCardSuggestionsForTou + .GetBnplIssuers(), + /*extracted_amount_in_micros=*/std::nullopt)); + #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) + manager.client() + .GetPersonalDataManager() + .payments_data_manager() 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 index 74c1e601e5fd..033114cf9bd6 100644 --- a/www/chromium/files/patch-components_autofill_core_common_autofill__features.cc +++ b/www/chromium/files/patch-components_autofill_core_common_autofill__features.cc @@ -1,11 +1,11 @@ ---- components/autofill/core/common/autofill_features.cc.orig 2025-10-02 04:28:32 UTC +--- components/autofill/core/common/autofill_features.cc.orig 2025-12-05 10:12:50 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); + constexpr bool IS_WALLET_PASSES_SUPPORTED_PLATFORM = !BUILDFLAG(IS_IOS); } - 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 9262327b7225..fa6cda3d8b1c 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,56 +1,65 @@ ---- components/autofill/core/common/autofill_payments_features.cc.orig 2025-10-30 15:44:36 UTC +--- components/autofill/core/common/autofill_payments_features.cc.orig 2025-12-05 10:12:50 UTC +++ components/autofill/core/common/autofill_payments_features.cc @@ -26,7 +26,7 @@ BASE_FEATURE(kAutofillEnableAllowlistForBmoCardCategor // of the allowlisted merchant websites. BASE_FEATURE(kAutofillEnableAmountExtraction, #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); @@ -42,7 +42,7 @@ BASE_FEATURE(kAutofillEnableAmountExtractionTesting, // 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_CHROMEOS) || BUILDFLAG(IS_BSD) base::FEATURE_ENABLED_BY_DEFAULT); #else base::FEATURE_DISABLED_BY_DEFAULT); -@@ -62,7 +62,7 @@ BASE_FEATURE(kAutofillEnableBuyNowPayLaterForKlarna, +@@ -58,7 +58,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); +@@ -67,7 +67,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_CHROMEOS) || BUILDFLAG(IS_BSD) base::FEATURE_ENABLED_BY_DEFAULT); #else base::FEATURE_DISABLED_BY_DEFAULT); -@@ -86,7 +86,7 @@ BASE_FEATURE(kAutofillEnableCardBenefitsForAmericanExp +@@ -91,7 +91,7 @@ BASE_FEATURE(kAutofillEnableCardBenefitsForAmericanExp // UI. BASE_FEATURE(kAutofillEnableCardBenefitsForBmo, #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); -@@ -151,7 +151,7 @@ BASE_FEATURE(kAutofillEnableFlatRateCardBenefitsBlockl +@@ -156,7 +156,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_CHROMEOS) || BUILDFLAG(IS_BSD) base::FEATURE_ENABLED_BY_DEFAULT); #else base::FEATURE_DISABLED_BY_DEFAULT); -@@ -301,7 +301,7 @@ BASE_FEATURE(kAutofillSyncEwalletAccounts, base::FEATU +@@ -306,7 +306,7 @@ BASE_FEATURE(kAutofillSyncEwalletAccounts, base::FEATU #endif // BUILDFLAG(IS_ANDROID) bool ShouldShowImprovedUserConsentForCreditCardSave() { -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // The new user consent UI is fully launched on MacOS, Windows and Linux. return true; #else diff --git a/www/chromium/files/patch-components_autofill_core_common_autofill__prefs.cc b/www/chromium/files/patch-components_autofill_core_common_autofill__prefs.cc index 4e06dd00d918..886417dedc59 100644 --- a/www/chromium/files/patch-components_autofill_core_common_autofill__prefs.cc +++ b/www/chromium/files/patch-components_autofill_core_common_autofill__prefs.cc @@ -1,38 +1,38 @@ ---- components/autofill/core/common/autofill_prefs.cc.orig 2025-10-30 15:44:36 UTC +--- components/autofill/core/common/autofill_prefs.cc.orig 2025-12-05 10:12:50 UTC +++ components/autofill/core/common/autofill_prefs.cc -@@ -131,7 +131,7 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySync +@@ -137,7 +137,7 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySync #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) registry->RegisterBooleanPref( kAutofillBnplEnabled, true, user_prefs::PrefRegistrySyncable::SYNCABLE_PREF); -@@ -373,7 +373,7 @@ void SetFacilitatedPaymentsA2ATriggeredOnce(PrefServic +@@ -386,7 +386,7 @@ void SetFacilitatedPaymentsA2ATriggeredOnce(PrefServic } #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) void SetAutofillBnplEnabled(PrefService* prefs, bool value) { prefs->SetBoolean(kAutofillBnplEnabled, value); } -@@ -382,7 +382,7 @@ void SetAutofillBnplEnabled(PrefService* prefs, bool v +@@ -395,7 +395,7 @@ void SetAutofillBnplEnabled(PrefService* prefs, bool v bool IsAutofillBnplEnabled(const PrefService* prefs) { #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) return prefs->GetBoolean(kAutofillBnplEnabled); #else return false; -@@ -391,7 +391,7 @@ bool IsAutofillBnplEnabled(const PrefService* prefs) { +@@ -404,7 +404,7 @@ bool IsAutofillBnplEnabled(const PrefService* prefs) { } #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 called, always sets the pref to true, and once true, it will follow the // user around forever. void SetAutofillHasSeenBnpl(PrefService* prefs) { diff --git a/www/chromium/files/patch-components_autofill_core_common_autofill__prefs.h b/www/chromium/files/patch-components_autofill_core_common_autofill__prefs.h index 633e5e1d9615..99668ecc6cc3 100644 --- a/www/chromium/files/patch-components_autofill_core_common_autofill__prefs.h +++ b/www/chromium/files/patch-components_autofill_core_common_autofill__prefs.h @@ -1,29 +1,29 @@ ---- components/autofill/core/common/autofill_prefs.h.orig 2025-10-30 15:44:36 UTC +--- components/autofill/core/common/autofill_prefs.h.orig 2025-12-05 10:12:50 UTC +++ components/autofill/core/common/autofill_prefs.h -@@ -36,7 +36,7 @@ inline constexpr char kAutofillAiOptInStatus[] = - inline constexpr char kAutofillAiLastVersionDeduped[] = - "autofill.ai_last_version_deduped"; +@@ -44,7 +44,7 @@ inline constexpr char kAutofillAiLastVersionDeduped[] + inline constexpr char kAutofillAiTravelEntitiesEnabled[] = + "autofill.autofill_ai.travel_entities_enabled"; #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) // Boolean that is true if BNPL on Autofill is enabled. inline constexpr char kAutofillBnplEnabled[] = "autofill.bnpl_enabled"; // Boolean that is true if the user has ever seen a BNPL suggestion. -@@ -265,7 +265,7 @@ bool IsFacilitatedPaymentsA2AEnabled(const PrefService +@@ -277,7 +277,7 @@ bool IsFacilitatedPaymentsA2AEnabled(const PrefService void SetFacilitatedPaymentsA2ATriggeredOnce(PrefService* prefs, bool value); #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) void SetAutofillBnplEnabled(PrefService* prefs, bool value); #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) -@@ -273,7 +273,7 @@ void SetAutofillBnplEnabled(PrefService* prefs, bool v +@@ -285,7 +285,7 @@ void SetAutofillBnplEnabled(PrefService* prefs, bool v bool IsAutofillBnplEnabled(const PrefService* prefs); #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) void SetAutofillHasSeenBnpl(PrefService* prefs); bool HasSeenBnpl(const PrefService* prefs); diff --git a/www/chromium/files/patch-components_commerce_core_commerce__feature__list.cc b/www/chromium/files/patch-components_commerce_core_commerce__feature__list.cc index 804c43b45f9e..46e2636e4632 100644 --- a/www/chromium/files/patch-components_commerce_core_commerce__feature__list.cc +++ b/www/chromium/files/patch-components_commerce_core_commerce__feature__list.cc @@ -1,20 +1,20 @@ ---- components/commerce/core/commerce_feature_list.cc.orig 2025-10-30 15:44:36 UTC +--- components/commerce/core/commerce_feature_list.cc.orig 2025-12-05 10:12:50 UTC +++ components/commerce/core/commerce_feature_list.cc -@@ -178,7 +178,7 @@ BASE_FEATURE(kShoppingAlternateServer, base::FEATURE_D +@@ -175,7 +175,7 @@ BASE_FEATURE(kShoppingAlternateServer, base::FEATURE_D const char kDiscountOnShoppyPageParam[] = "discount-on-shoppy-page"; #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) const base::FeatureParam kDiscountOnShoppyPage{ &kEnableDiscountInfoApi, kDiscountOnShoppyPageParam, true}; #else -@@ -191,7 +191,7 @@ const char kMerchantWideBehaviorParam[] = "merchant-wi +@@ -188,7 +188,7 @@ const char kMerchantWideBehaviorParam[] = "merchant-wi const char kNonMerchantWideBehaviorParam[] = "non-merchant-wide-behavior"; #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) BASE_FEATURE(kDiscountDialogAutoPopupBehaviorSetting, base::FEATURE_ENABLED_BY_DEFAULT); const base::FeatureParam kHistoryClustersBehavior{ diff --git a/www/chromium/files/patch-components_cookie__config_cookie__store__util.cc b/www/chromium/files/patch-components_cookie__config_cookie__store__util.cc index 311eeb2fa98c..35f60f151dc7 100644 --- a/www/chromium/files/patch-components_cookie__config_cookie__store__util.cc +++ b/www/chromium/files/patch-components_cookie__config_cookie__store__util.cc @@ -1,11 +1,11 @@ ---- components/cookie_config/cookie_store_util.cc.orig 2024-02-23 21:04:38 UTC +--- components/cookie_config/cookie_store_util.cc.orig 2025-12-05 10:12:50 UTC +++ components/cookie_config/cookie_store_util.cc -@@ -12,7 +12,7 @@ +@@ -16,7 +16,7 @@ namespace cookie_config { #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) namespace { - // Use the operating system's mechanisms to encrypt cookies before writing + void OnOsCryptReadyOnUi( diff --git a/www/chromium/files/patch-components_crash_core_common_BUILD.gn b/www/chromium/files/patch-components_crash_core_common_BUILD.gn index ed890d4f07a4..57d50707ed96 100644 --- a/www/chromium/files/patch-components_crash_core_common_BUILD.gn +++ b/www/chromium/files/patch-components_crash_core_common_BUILD.gn @@ -1,11 +1,11 @@ ---- components/crash/core/common/BUILD.gn.orig 2023-05-31 08:12:17 UTC +--- components/crash/core/common/BUILD.gn.orig 2025-12-05 10:12:50 UTC +++ components/crash/core/common/BUILD.gn -@@ -9,7 +9,7 @@ import("//components/gwp_asan/buildflags/buildflags.gn +@@ -8,7 +8,7 @@ import("//components/gwp_asan/buildflags/buildflags.gn declare_args() { # If set to true, this will stub out and disable the entire crash key system. - use_crash_key_stubs = is_fuchsia + use_crash_key_stubs = is_fuchsia || is_bsd } group("common") { diff --git a/www/chromium/files/patch-components_device__signals_core_common_signals__features.cc b/www/chromium/files/patch-components_device__signals_core_common_signals__features.cc index 9dd597f4db79..b927ed49734d 100644 --- a/www/chromium/files/patch-components_device__signals_core_common_signals__features.cc +++ b/www/chromium/files/patch-components_device__signals_core_common_signals__features.cc @@ -1,11 +1,11 @@ ---- components/device_signals/core/common/signals_features.cc.orig 2025-10-30 15:44:36 UTC +--- components/device_signals/core/common/signals_features.cc.orig 2025-12-05 10:12:50 UTC +++ components/device_signals/core/common/signals_features.cc -@@ -51,7 +51,7 @@ bool IsDetectedAgentSignalCollectionEnabled() { +@@ -61,7 +61,7 @@ bool IsSystemSignalCollectionImprovementEnabled() { } #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Enables the triggering of device signals consent dialog when conditions met // This feature also requires UnmanagedDeviceSignalsConsentFlowEnabled policy to // be enabled diff --git a/www/chromium/files/patch-components_device__signals_core_common_signals__features.h b/www/chromium/files/patch-components_device__signals_core_common_signals__features.h index eebd069f6fad..a0ef0f65409e 100644 --- a/www/chromium/files/patch-components_device__signals_core_common_signals__features.h +++ b/www/chromium/files/patch-components_device__signals_core_common_signals__features.h @@ -1,11 +1,11 @@ ---- components/device_signals/core/common/signals_features.h.orig 2025-09-06 10:01:20 UTC +--- components/device_signals/core/common/signals_features.h.orig 2025-12-05 10:12:50 UTC +++ components/device_signals/core/common/signals_features.h -@@ -33,7 +33,7 @@ bool IsBrowserSignalsReportingEnabled(); - bool IsDetectedAgentSignalCollectionEnabled(); +@@ -37,7 +37,7 @@ bool IsDetectedAgentSignalCollectionEnabled(); + bool IsSystemSignalCollectionImprovementEnabled(); #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) BASE_DECLARE_FEATURE(kDeviceSignalsConsentDialog); // Returns true if device signals consent dialog has been enabled for 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 c4e7b9df1685..dada75f82326 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,65 +1,65 @@ ---- components/embedder_support/user_agent_utils.cc.orig 2025-09-06 10:01:20 UTC +--- components/embedder_support/user_agent_utils.cc.orig 2025-12-05 10:12:50 UTC +++ components/embedder_support/user_agent_utils.cc @@ -317,7 +317,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; "; @@ -333,7 +333,7 @@ std::string GetUserAgentPlatform() { } std::string GetUnifiedPlatform() { -#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // This constant is only used on Android (desktop) and Linux. constexpr char kUnifiedPlatformLinuxX64[] = "X11; Linux x86_64"; #endif @@ -353,7 +353,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 kUnifiedPlatformLinuxX64; #elif BUILDFLAG(IS_IOS) if (ui::GetDeviceFormFactor() == ui::DEVICE_FORM_FACTOR_TABLET) { @@ -615,7 +615,7 @@ bool GetMobileBitForUAMetadata() { } std::string GetPlatformVersion() { -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // TODO(crbug.com/40245146): Remove this Blink feature if (base::FeatureList::IsEnabled( blink::features::kReduceUserAgentDataLinuxPlatformVersion)) { @@ -661,6 +661,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 -@@ -873,6 +876,16 @@ std::string BuildOSCpuInfoFromOSVersionAndCpuType(cons +@@ -868,6 +871,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_report__util.cc b/www/chromium/files/patch-components_enterprise_browser_reporting_report__util.cc index bf2d9628d01c..b999e4bf36a6 100644 --- a/www/chromium/files/patch-components_enterprise_browser_reporting_report__util.cc +++ b/www/chromium/files/patch-components_enterprise_browser_reporting_report__util.cc @@ -1,11 +1,11 @@ ---- components/enterprise/browser/reporting/report_util.cc.orig 2025-09-22 06:24:40 UTC +--- components/enterprise/browser/reporting/report_util.cc.orig 2025-12-05 10:12:50 UTC +++ components/enterprise/browser/reporting/report_util.cc -@@ -197,7 +197,7 @@ std::string GetSecuritySignalsInReport( +@@ -198,7 +198,7 @@ std::string GetSecuritySignalsInReport( signals_dict.Set("antivirus_info", std::move(anti_virus_list)); signals_dict.Set("hotfixes", RepeatedFieldptrToList(os_report.hotfixes())); -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (os_report.has_distribution_version()) { signals_dict.Set("distribution_version", os_report.distribution_version()); diff --git a/www/chromium/files/patch-components_enterprise_connectors_core_connectors__prefs.cc b/www/chromium/files/patch-components_enterprise_connectors_core_connectors__prefs.cc deleted file mode 100644 index 9d0cd24d8350..000000000000 --- a/www/chromium/files/patch-components_enterprise_connectors_core_connectors__prefs.cc +++ /dev/null @@ -1,20 +0,0 @@ ---- components/enterprise/connectors/core/connectors_prefs.cc.orig 2025-10-30 15:44:36 UTC -+++ components/enterprise/connectors/core/connectors_prefs.cc -@@ -22,7 +22,7 @@ - namespace enterprise_connectors { - - // Profile Prefs --#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - const char kCacheEncryptionEnabledPref[] = - "enterprise_connectors.cache_encryption_enabled"; - #endif -@@ -96,7 +96,7 @@ void RegisterProfilePrefs(PrefRegistrySimple* registry - #if BUILDFLAG(ENTERPRISE_CLIENT_CERTIFICATES) - client_certificates::RegisterProfilePrefs(registry); - #endif // BUILDFLAG(ENTERPRISE_CLIENT_CERTIFICATES) --#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - registry->RegisterBooleanPref(kCacheEncryptionEnabledPref, false); - #endif - } diff --git a/www/chromium/files/patch-components_enterprise_connectors_core_connectors__prefs.h b/www/chromium/files/patch-components_enterprise_connectors_core_connectors__prefs.h deleted file mode 100644 index 3471e4e6b6b2..000000000000 --- a/www/chromium/files/patch-components_enterprise_connectors_core_connectors__prefs.h +++ /dev/null @@ -1,11 +0,0 @@ ---- components/enterprise/connectors/core/connectors_prefs.h.orig 2025-10-30 15:44:36 UTC -+++ components/enterprise/connectors/core/connectors_prefs.h -@@ -11,7 +11,7 @@ class PrefRegistrySimple; - - namespace enterprise_connectors { - --#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - // Pref that maps to the "CacheEncryptionEnabled" policy. - extern const char kCacheEncryptionEnabledPref[]; - #endif diff --git a/www/chromium/files/patch-components_error__page_common_localized__error.cc b/www/chromium/files/patch-components_error__page_common_localized__error.cc index ea6432cc4e68..1e0743c90c4e 100644 --- a/www/chromium/files/patch-components_error__page_common_localized__error.cc +++ b/www/chromium/files/patch-components_error__page_common_localized__error.cc @@ -1,11 +1,11 @@ ---- components/error_page/common/localized_error.cc.orig 2025-10-02 04:28:32 UTC +--- components/error_page/common/localized_error.cc.orig 2025-12-05 10:12:50 UTC +++ components/error_page/common/localized_error.cc -@@ -902,7 +902,7 @@ void AddSuggestionsDetails(int error_code, +@@ -896,7 +896,7 @@ void AddSuggestionsDetails(int error_code, if (suggestions & SUGGEST_PROXY_CONFIG) { // Custom body string. std::u16string inner = -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) l10n_util::GetStringFUTF16( IDS_ERRORPAGES_SUGGESTION_PROXY_DISABLE_PLATFORM, l10n_util::GetStringUTF16(IDS_SETTINGS_TITLE), 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 b58be4459c66..ee353189e771 100644 --- a/www/chromium/files/patch-components_feature__engagement_public_feature__configurations.cc +++ b/www/chromium/files/patch-components_feature__engagement_public_feature__configurations.cc @@ -1,30 +1,30 @@ ---- components/feature_engagement/public/feature_configurations.cc.orig 2025-10-30 15:44:36 UTC +--- components/feature_engagement/public/feature_configurations.cc.orig 2025-12-05 10:12:50 UTC +++ components/feature_engagement/public/feature_configurations.cc @@ -95,7 +95,7 @@ std::optional CreateNewUserGestureInPro std::optional GetClientSideFeatureConfig( const base::Feature* feature) { -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) // The IPH bubble for link capturing has a trigger set to ANY so that it // always shows up. The per app specific guardrails are independently stored @@ -114,7 +114,7 @@ std::optional GetClientSideFeatureConfi #endif // BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) if (kIPHPasswordsManagementBubbleAfterSaveFeature.name == feature->name) { FeatureConfig config; config.valid = true; -@@ -2045,7 +2045,8 @@ std::optional GetClientSideFeatureConfi +@@ -2020,7 +2020,8 @@ std::optional GetClientSideFeatureConfi #endif // BUILDFLAG(IS_ANDROID) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_FUCHSIA) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_FUCHSIA) || \ + BUILDFLAG(IS_BSD) if (kIPHAutofillCreditCardBenefitFeature.name == feature->name) { // The credit card benefit IPH appears up to three times over 10 years and diff --git a/www/chromium/files/patch-components_feature__engagement_public_feature__constants.cc b/www/chromium/files/patch-components_feature__engagement_public_feature__constants.cc index 8ec7c5427dd6..8123853213e2 100644 --- a/www/chromium/files/patch-components_feature__engagement_public_feature__constants.cc +++ b/www/chromium/files/patch-components_feature__engagement_public_feature__constants.cc @@ -1,29 +1,29 @@ ---- components/feature_engagement/public/feature_constants.cc.orig 2025-11-12 08:17:34 UTC +--- components/feature_engagement/public/feature_constants.cc.orig 2025-12-05 10:12:50 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", -@@ -846,7 +846,7 @@ BASE_FEATURE(kIPHiOSAIHubNewBadge, +@@ -847,7 +847,7 @@ BASE_FEATURE(kIPHiOSAIHubNewBadge, #endif // BUILDFLAG(IS_IOS) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || \ +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) || \ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_FUCHSIA) BASE_FEATURE(kIPHAutofillBnplAffirmOrZipSuggestionFeature, "IPH_AutofillBnplAffirmOrZipSuggestion", -@@ -1002,7 +1002,7 @@ BASE_FEATURE(kIPHScalableIphGamingFeature, +@@ -1006,7 +1006,7 @@ BASE_FEATURE(kIPHScalableIphGamingFeature, base::FEATURE_DISABLED_BY_DEFAULT); #endif -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // This can be enabled by default, as the DesktopPWAsLinkCapturing // flag is needed for the IPH linked to this feature to work, and // use-cases to show the IPH are guarded by that flag. diff --git a/www/chromium/files/patch-components_feature__engagement_public_feature__constants.h b/www/chromium/files/patch-components_feature__engagement_public_feature__constants.h index e12ef12da1a8..be8825471c76 100644 --- a/www/chromium/files/patch-components_feature__engagement_public_feature__constants.h +++ b/www/chromium/files/patch-components_feature__engagement_public_feature__constants.h @@ -1,29 +1,29 @@ ---- components/feature_engagement/public/feature_constants.h.orig 2025-11-12 08:17:34 UTC +--- components/feature_engagement/public/feature_constants.h.orig 2025-12-05 10:12:50 UTC +++ components/feature_engagement/public/feature_constants.h @@ -31,7 +31,7 @@ FEATURE_CONSTANTS_DECLARE_FEATURE(kIPHDemoMode); FEATURE_CONSTANTS_DECLARE_FEATURE(kIPHDummyFeature); #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) #if BUILDFLAG(GOOGLE_CHROME_BRANDING) FEATURE_CONSTANTS_DECLARE_FEATURE(kEsbDownloadRowPromoFeature); #endif -@@ -380,7 +380,7 @@ FEATURE_CONSTANTS_DECLARE_FEATURE(kIPHiOSAIHubNewBadge +@@ -385,7 +385,7 @@ FEATURE_CONSTANTS_DECLARE_FEATURE(kIPHiOSAIHubNewBadge #endif // BUILDFLAG(IS_IOS) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || \ +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) || \ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_FUCHSIA) FEATURE_CONSTANTS_DECLARE_FEATURE(kIPHAutofillBnplAffirmOrZipSuggestionFeature); FEATURE_CONSTANTS_DECLARE_FEATURE( -@@ -444,7 +444,7 @@ FEATURE_CONSTANTS_DECLARE_FEATURE(kIPHScalableIphHelpA +@@ -450,7 +450,7 @@ FEATURE_CONSTANTS_DECLARE_FEATURE(kIPHScalableIphHelpA FEATURE_CONSTANTS_DECLARE_FEATURE(kIPHScalableIphGamingFeature); #endif -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) FEATURE_CONSTANTS_DECLARE_FEATURE(kIPHDesktopPWAsLinkCapturingLaunch); FEATURE_CONSTANTS_DECLARE_FEATURE(kIPHDesktopPWAsLinkCapturingLaunchAppInTab); FEATURE_CONSTANTS_DECLARE_FEATURE(kIPHSignInBenefitsFeature); 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 a717debcf19f..ec34fc233e3a 100644 --- a/www/chromium/files/patch-components_feature__engagement_public_feature__list.cc +++ b/www/chromium/files/patch-components_feature__engagement_public_feature__list.cc @@ -1,29 +1,29 @@ ---- components/feature_engagement/public/feature_list.cc.orig 2025-11-12 08:17:34 UTC +--- components/feature_engagement/public/feature_list.cc.orig 2025-12-05 10:12:50 UTC +++ components/feature_engagement/public/feature_list.cc -@@ -203,7 +203,7 @@ const base::Feature* const kAllFeatures[] = { +@@ -202,7 +202,7 @@ const base::Feature* const kAllFeatures[] = { &kIPHiOSReaderModeOptionsFeature, #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 -@@ -278,7 +278,7 @@ const base::Feature* const kAllFeatures[] = { +@@ -277,7 +277,7 @@ const base::Feature* const kAllFeatures[] = { #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || \ +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) || \ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_FUCHSIA) &kIPHAutofillAiOptInFeature, - &kIPHAutofillBnplAffirmOrZipSuggestionFeature, + &kIPHAutofillAiValuablesFeature, @@ -336,7 +336,7 @@ const base::Feature* const kAllFeatures[] = { &kIPHScalableIphGamingFeature, #endif // BUILDFLAG(IS_CHROMEOS) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) &kIPHDesktopPWAsLinkCapturingLaunch, &kIPHDesktopPWAsLinkCapturingLaunchAppInTab, &kIPHSignInBenefitsFeature, 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 663cd200fbe8..dd05ad99c05f 100644 --- a/www/chromium/files/patch-components_feature__engagement_public_feature__list.h +++ b/www/chromium/files/patch-components_feature__engagement_public_feature__list.h @@ -1,58 +1,58 @@ ---- components/feature_engagement/public/feature_list.h.orig 2025-11-12 08:17:34 UTC +--- components/feature_engagement/public/feature_list.h.orig 2025-12-05 10:12:50 UTC +++ components/feature_engagement/public/feature_list.h -@@ -357,7 +357,7 @@ DEFINE_VARIATION_PARAM(kIPHiOSAIHubNewBadge, "IPH_iOSA +@@ -355,7 +355,7 @@ DEFINE_VARIATION_PARAM(kIPHiOSAIHubNewBadge, "IPH_iOSA #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 -@@ -478,7 +478,8 @@ DEFINE_VARIATION_PARAM(kIPHTabGroupsSharedTabFeedbackF +@@ -476,7 +476,8 @@ DEFINE_VARIATION_PARAM(kIPHTabGroupsSharedTabFeedbackF // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_FUCHSIA) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_FUCHSIA) || \ + BUILDFLAG(IS_BSD) DEFINE_VARIATION_PARAM(kIPHAutofillAiOptInFeature, "IPH_AutofillAiOptIn"); - DEFINE_VARIATION_PARAM(kIPHAutofillBnplAffirmOrZipSuggestionFeature, - "IPH_AutofillBnplAffirmOrZipSuggestion"); + DEFINE_VARIATION_PARAM(kIPHAutofillAiValuablesFeature, + "IPH_AutofillAiValuables"); @@ -580,7 +581,7 @@ DEFINE_VARIATION_PARAM(kIPHScalableIphHelpAppBasedTenF DEFINE_VARIATION_PARAM(kIPHScalableIphGamingFeature, "IPH_ScalableIphGaming"); #endif // BUILDFLAG(IS_CHROMEOS) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) DEFINE_VARIATION_PARAM(kIPHDesktopPWAsLinkCapturingLaunch, "IPH_DesktopPWAsLinkCapturingLaunch"); DEFINE_VARIATION_PARAM(kIPHDesktopPWAsLinkCapturingLaunchAppInTab, -@@ -782,7 +783,7 @@ inline constexpr flags_ui::FeatureEntry::FeatureVariat +@@ -781,7 +782,7 @@ inline constexpr flags_ui::FeatureEntry::FeatureVariat VARIATION_ENTRY(kIPHIOSPageActionMenu), VARIATION_ENTRY(kIPHiOSAIHubNewBadge), #elif BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) VARIATION_ENTRY(kIPHBatterySaverModeFeature), VARIATION_ENTRY(kIPHCompanionSidePanelFeature), VARIATION_ENTRY(kIPHCompanionSidePanelRegionSearchFeature), -@@ -844,7 +845,8 @@ inline constexpr flags_ui::FeatureEntry::FeatureVariat +@@ -843,7 +844,8 @@ inline constexpr flags_ui::FeatureEntry::FeatureVariat // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_FUCHSIA) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_FUCHSIA) || \ + BUILDFLAG(IS_BSD) VARIATION_ENTRY(kIPHAutofillAiOptInFeature), + VARIATION_ENTRY(kIPHAutofillAiValuablesFeature), VARIATION_ENTRY(kIPHAutofillCreditCardBenefitFeature), - VARIATION_ENTRY(kIPHAutofillCardInfoRetrievalSuggestionFeature), @@ -899,7 +901,7 @@ inline constexpr flags_ui::FeatureEntry::FeatureVariat VARIATION_ENTRY(kIPHScalableIphGamingFeature), #endif // BUILDFLAG(IS_CHROMEOS) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) VARIATION_ENTRY(kIPHDesktopPWAsLinkCapturingLaunch), VARIATION_ENTRY(kIPHDesktopPWAsLinkCapturingLaunchAppInTab), VARIATION_ENTRY(kIPHSignInBenefitsFeature), diff --git a/www/chromium/files/patch-components_gwp__asan_crash__handler_crash__analyzer.cc b/www/chromium/files/patch-components_gwp__asan_crash__handler_crash__analyzer.cc index 83f9da6b0bf5..8b04e88fbb01 100644 --- a/www/chromium/files/patch-components_gwp__asan_crash__handler_crash__analyzer.cc +++ b/www/chromium/files/patch-components_gwp__asan_crash__handler_crash__analyzer.cc @@ -1,20 +1,20 @@ ---- components/gwp_asan/crash_handler/crash_analyzer.cc.orig 2025-05-05 10:57:53 UTC +--- components/gwp_asan/crash_handler/crash_analyzer.cc.orig 2025-12-05 10:12:50 UTC +++ components/gwp_asan/crash_handler/crash_analyzer.cc -@@ -35,7 +35,7 @@ +@@ -36,7 +36,7 @@ #include "third_party/crashpad/crashpad/snapshot/process_snapshot.h" #include "third_party/crashpad/crashpad/util/process/process_memory.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 #elif BUILDFLAG(IS_APPLE) #include -@@ -113,7 +113,7 @@ bool CrashAnalyzer::GetExceptionInfo( +@@ -114,7 +114,7 @@ bool CrashAnalyzer::GetExceptionInfo( crashpad::VMAddress CrashAnalyzer::GetAccessAddress( const crashpad::ExceptionSnapshot& exception) { -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) if (exception.Exception() == SIGSEGV || exception.Exception() == SIGBUS) return exception.ExceptionAddress(); #elif BUILDFLAG(IS_APPLE) diff --git a/www/chromium/files/patch-components_metrics_dwa_dwa__service.cc b/www/chromium/files/patch-components_metrics_dwa_dwa__service.cc index 47a1fdc44325..3a3233c68fde 100644 --- a/www/chromium/files/patch-components_metrics_dwa_dwa__service.cc +++ b/www/chromium/files/patch-components_metrics_dwa_dwa__service.cc @@ -1,11 +1,11 @@ ---- components/metrics/dwa/dwa_service.cc.orig 2025-10-30 15:44:36 UTC +--- components/metrics/dwa/dwa_service.cc.orig 2025-12-05 10:12:50 UTC +++ components/metrics/dwa/dwa_service.cc -@@ -243,7 +243,7 @@ void DwaService::RecordCoarseSystemInformation( +@@ -244,7 +244,7 @@ void DwaService::RecordCoarseSystemInformation( coarse_system_info->set_platform(::dwa::CoarseSystemInfo::PLATFORM_WINDOWS); #elif BUILDFLAG(IS_MAC) coarse_system_info->set_platform(::dwa::CoarseSystemInfo::PLATFORM_MACOS); -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) coarse_system_info->set_platform(::dwa::CoarseSystemInfo::PLATFORM_LINUX); #elif BUILDFLAG(IS_ANDROID) // TODO(b/366276323): Populate set_platform using more granular diff --git a/www/chromium/files/patch-components_ntp__tiles_pref__names.h b/www/chromium/files/patch-components_ntp__tiles_pref__names.h index fc36568b2426..331518bdf4af 100644 --- a/www/chromium/files/patch-components_ntp__tiles_pref__names.h +++ b/www/chromium/files/patch-components_ntp__tiles_pref__names.h @@ -1,11 +1,11 @@ ---- components/ntp_tiles/pref_names.h.orig 2025-10-02 04:28:32 UTC +--- components/ntp_tiles/pref_names.h.orig 2025-12-05 10:12:50 UTC +++ components/ntp_tiles/pref_names.h -@@ -48,7 +48,7 @@ inline constexpr char kCustomLinksInitialized[] = "cus +@@ -49,7 +49,7 @@ inline constexpr char kCustomLinksInitialized[] = "cus // Prefs used to cache enterprise shortcuts. #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) inline constexpr char kEnterpriseShortcutsPolicyList[] = "enterprise_shortcuts.policy_list"; inline constexpr char kEnterpriseShortcutsUserList[] = 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 index f5915be273fc..c9fd1594203f 100644 --- 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 @@ -1,11 +1,11 @@ ---- components/optimization_guide/core/feature_registry/feature_registration.cc.orig 2025-10-30 15:44:36 UTC +--- components/optimization_guide/core/feature_registry/feature_registration.cc.orig 2025-12-05 10:12:50 UTC +++ components/optimization_guide/core/feature_registry/feature_registration.cc -@@ -65,7 +65,7 @@ BASE_FEATURE(kProductSpecificationsMqlsLogging, +@@ -67,7 +67,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 9d231ad1d6bc..5668da4a9912 100644 --- a/www/chromium/files/patch-components_optimization__guide_core_optimization__guide__features.cc +++ b/www/chromium/files/patch-components_optimization__guide_core_optimization__guide__features.cc @@ -1,11 +1,11 @@ ---- components/optimization_guide/core/optimization_guide_features.cc.orig 2025-10-30 15:44:36 UTC +--- components/optimization_guide/core/optimization_guide_features.cc.orig 2025-12-05 10:12:50 UTC +++ components/optimization_guide/core/optimization_guide_features.cc -@@ -104,7 +104,7 @@ BASE_FEATURE(kOptimizationGuideModelExecution, +@@ -98,7 +98,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_CHROMEOS) || BUILDFLAG(IS_BSD) base::FEATURE_ENABLED_BY_DEFAULT); #else base::FEATURE_DISABLED_BY_DEFAULT); diff --git a/www/chromium/files/patch-components_os__crypt_sync_libsecret__util__linux.cc b/www/chromium/files/patch-components_os__crypt_sync_libsecret__util__linux.cc index eff8fbd34e29..55b1473d31e0 100644 --- a/www/chromium/files/patch-components_os__crypt_sync_libsecret__util__linux.cc +++ b/www/chromium/files/patch-components_os__crypt_sync_libsecret__util__linux.cc @@ -1,27 +1,27 @@ ---- components/os_crypt/sync/libsecret_util_linux.cc.orig 2025-10-02 04:28:32 UTC +--- components/os_crypt/sync/libsecret_util_linux.cc.orig 2025-12-05 10:12:50 UTC +++ components/os_crypt/sync/libsecret_util_linux.cc -@@ -182,16 +182,22 @@ bool LibsecretLoader::EnsureLibsecretLoaded() { +@@ -184,16 +184,22 @@ bool LibsecretLoader::EnsureLibsecretLoaded() { // static bool LibsecretLoader::LoadLibsecret() { +#if BUILDFLAG(IS_BSD) + const char* kSecretLib = "libsecret-1.so"; +#else + const char* kSecretLib = "libsecret-1.so.0"; +#endif + if (libsecret_loaded_) return true; - static void* handle = dlopen("libsecret-1.so.0", RTLD_NOW | RTLD_GLOBAL); + static void* handle = dlopen(kSecretLib, RTLD_NOW | RTLD_GLOBAL); if (!handle) { // We wanted to use libsecret, but we couldn't load it. Warn, because // either the user asked for this, or we autodetected it incorrectly. (Or // the system has broken libraries, which is also good to warn about.) // TODO(crbug.com/40467093): Channel this message to the user-facing log - VLOG(1) << "Could not load libsecret-1.so.0: " << dlerror(); + VLOG(1) << "Could not load " << kSecretLib << ": " << dlerror(); return false; } diff --git a/www/chromium/files/patch-components_os__crypt_sync_os__crypt.h b/www/chromium/files/patch-components_os__crypt_sync_os__crypt.h index ebc3cb1d2abc..94bb6f35e7d2 100644 --- a/www/chromium/files/patch-components_os__crypt_sync_os__crypt.h +++ b/www/chromium/files/patch-components_os__crypt_sync_os__crypt.h @@ -1,63 +1,63 @@ ---- components/os_crypt/sync/os_crypt.h.orig 2025-09-06 10:01:20 UTC +--- components/os_crypt/sync/os_crypt.h.orig 2025-12-05 10:12:50 UTC +++ components/os_crypt/sync/os_crypt.h -@@ -23,7 +23,7 @@ class Keychain; +@@ -28,7 +28,7 @@ class Keychain; } #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) class KeyStorageLinux; #endif // BUILDFLAG(IS_LINUX) -@@ -39,7 +39,7 @@ struct Config; +@@ -44,7 +44,7 @@ struct Config; // Temporary interface due to OSCrypt refactor. See OSCryptImpl for descriptions // of what each function does. namespace OSCrypt { -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) COMPONENT_EXPORT(OS_CRYPT) void SetConfig(std::unique_ptr config); #endif // BUILDFLAG(IS_LINUX) -@@ -84,7 +84,7 @@ COMPONENT_EXPORT(OS_CRYPT) void UseMockKeyForTesting(b +@@ -91,7 +91,7 @@ COMPONENT_EXPORT(OS_CRYPT) void UseMockKeyForTesting(b COMPONENT_EXPORT(OS_CRYPT) void SetLegacyEncryptionForTesting(bool legacy); COMPONENT_EXPORT(OS_CRYPT) void ResetStateForTesting(); #endif // BUILDFLAG(IS_WIN) -#if (BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CASTOS)) +#if (BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CASTOS)) || BUILDFLAG(IS_BSD) COMPONENT_EXPORT(OS_CRYPT) void UseMockKeyStorageForTesting( base::OnceCallback()> -@@ -118,7 +118,7 @@ class COMPONENT_EXPORT(OS_CRYPT) OSCryptImpl { +@@ -125,7 +125,7 @@ class COMPONENT_EXPORT(OS_CRYPT) OSCryptImpl { // Returns singleton instance of OSCryptImpl. static OSCryptImpl* GetInstance(); -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Set the configuration of OSCryptImpl. // This method, or SetRawEncryptionKey(), must be called before using // EncryptString() and DecryptString(). -@@ -214,7 +214,7 @@ class COMPONENT_EXPORT(OS_CRYPT) OSCryptImpl { +@@ -217,7 +217,7 @@ class COMPONENT_EXPORT(OS_CRYPT) OSCryptImpl { void ResetStateForTesting(); #endif -#if (BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CASTOS)) +#if (BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CASTOS)) || BUILDFLAG(IS_BSD) // For unit testing purposes, inject methods to be used. // |storage_provider_factory| provides the desired |KeyStorage| // implementation. If the provider returns |nullptr|, a hardcoded password -@@ -241,13 +241,13 @@ class COMPONENT_EXPORT(OS_CRYPT) OSCryptImpl { +@@ -244,13 +244,13 @@ class COMPONENT_EXPORT(OS_CRYPT) OSCryptImpl { bool DeriveKey(); #endif // BUILDFLAG(IS_APPLE) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_APPLE) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_BSD) // This lock is used to make the GetEncryptionKey and // GetRawEncryptionKey methods thread-safe. static base::Lock& GetLock(); #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_APPLE) -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) static constexpr size_t kDerivedKeyBytes = 16; crypto::SubtlePassKey MakeCryptoPassKey(); diff --git a/www/chromium/files/patch-components_paint__preview_player_player__compositor__delegate.cc b/www/chromium/files/patch-components_paint__preview_player_player__compositor__delegate.cc index b54db3e1de5f..ae5796e9352a 100644 --- a/www/chromium/files/patch-components_paint__preview_player_player__compositor__delegate.cc +++ b/www/chromium/files/patch-components_paint__preview_player_player__compositor__delegate.cc @@ -1,13 +1,13 @@ ---- components/paint_preview/player/player_compositor_delegate.cc.orig 2025-10-02 04:28:32 UTC +--- components/paint_preview/player/player_compositor_delegate.cc.orig 2025-12-05 10:12:50 UTC +++ components/paint_preview/player/player_compositor_delegate.cc -@@ -435,8 +435,8 @@ void PlayerCompositorDelegate::ValidateProtoAndLoadAXT +@@ -432,8 +432,8 @@ void PlayerCompositorDelegate::ValidateProtoAndLoadAXT auto chrome_version = capture_result_->proto.metadata().chrome_version(); const auto& current_chrome_version = version_info::GetVersion(); if (capture_result_->proto.metadata().has_chrome_version() && - chrome_version.major() == current_chrome_version.components()[0] && - chrome_version.minor() == current_chrome_version.components()[1] && + chrome_version.gmajor() == current_chrome_version.components()[0] && + chrome_version.gminor() == current_chrome_version.components()[1] && chrome_version.build() == current_chrome_version.components()[2] && chrome_version.patch() == current_chrome_version.components()[3]) { paint_preview_service_->GetFileMixin()->GetAXTreeUpdate( 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 f2ea30569eae..71a0efa1583b 100644 --- a/www/chromium/files/patch-components_password__manager_core_browser_features_password__features.cc +++ b/www/chromium/files/patch-components_password__manager_core_browser_features_password__features.cc @@ -1,20 +1,20 @@ ---- components/password_manager/core/browser/features/password_features.cc.orig 2025-10-30 15:44:36 UTC +--- components/password_manager/core/browser/features/password_features.cc.orig 2025-12-05 10:12:50 UTC +++ components/password_manager/core/browser/features/password_features.cc -@@ -58,7 +58,7 @@ BASE_FEATURE(kClearUndecryptablePasswords, +@@ -71,7 +71,7 @@ BASE_FEATURE(kClearUndecryptablePasswords, BASE_FEATURE(kClearUndecryptablePasswordsOnSync, "ClearUndecryptablePasswordsInSync", #if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_IOS) || \ - BUILDFLAG(IS_WIN) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) base::FEATURE_ENABLED_BY_DEFAULT #else base::FEATURE_DISABLED_BY_DEFAULT -@@ -120,7 +120,7 @@ BASE_FEATURE(kPasswordManualFallbackAvailable, +@@ -139,7 +139,7 @@ BASE_FEATURE(kPasswordManualFallbackAvailable, BASE_FEATURE(kPasswordManagerLogToTerminal, 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 3fd939e69cd2..cead1cf5e6ad 100644 --- a/www/chromium/files/patch-components_password__manager_core_browser_features_password__features.h +++ b/www/chromium/files/patch-components_password__manager_core_browser_features_password__features.h @@ -1,11 +1,11 @@ ---- components/password_manager/core/browser/features/password_features.h.orig 2025-10-30 15:44:36 UTC +--- components/password_manager/core/browser/features/password_features.h.orig 2025-12-05 10:12:50 UTC +++ components/password_manager/core/browser/features/password_features.h -@@ -147,7 +147,7 @@ BASE_DECLARE_FEATURE(kPasswordManualFallbackAvailable) +@@ -172,7 +172,7 @@ BASE_DECLARE_FEATURE(kPasswordManualFallbackAvailable) // terminal. BASE_DECLARE_FEATURE(kPasswordManagerLogToTerminal); -#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 b08fcf5a6002..059f2b529aa1 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,20 +1,20 @@ ---- components/password_manager/core/browser/password_autofill_manager.cc.orig 2025-10-30 15:44:36 UTC +--- components/password_manager/core/browser/password_autofill_manager.cc.orig 2025-12-05 10:12:50 UTC +++ components/password_manager/core/browser/password_autofill_manager.cc -@@ -387,7 +387,7 @@ void PasswordAutofillManager::DidAcceptSuggestion( +@@ -405,7 +405,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, -@@ -629,7 +629,7 @@ void PasswordAutofillManager::DidNavigateMainFrame() { +@@ -653,7 +653,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__form__filling.cc b/www/chromium/files/patch-components_password__manager_core_browser_password__form__filling.cc index 7708eecae896..27495a4962ee 100644 --- a/www/chromium/files/patch-components_password__manager_core_browser_password__form__filling.cc +++ b/www/chromium/files/patch-components_password__manager_core_browser_password__form__filling.cc @@ -1,11 +1,11 @@ ---- components/password_manager/core/browser/password_form_filling.cc.orig 2025-09-06 10:01:20 UTC +--- components/password_manager/core/browser/password_form_filling.cc.orig 2025-12-05 10:12:50 UTC +++ components/password_manager/core/browser/password_form_filling.cc -@@ -178,7 +178,7 @@ LikelyFormFilling SendFillInformationToRenderer( +@@ -197,7 +197,7 @@ LikelyFormFilling SendFillInformationToRenderer( #endif #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) if (!should_show_popup_without_passwords) { client->MaybeShowSavePasswordPrimingPromo(observed_form.url); } 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 815255e3c4d1..1f46a6419588 100644 --- a/www/chromium/files/patch-components_password__manager_core_browser_password__form__manager.cc +++ b/www/chromium/files/patch-components_password__manager_core_browser_password__form__manager.cc @@ -1,29 +1,20 @@ ---- components/password_manager/core/browser/password_form_manager.cc.orig 2025-10-30 15:44:36 UTC +--- components/password_manager/core/browser/password_form_manager.cc.orig 2025-12-05 10:12:50 UTC +++ components/password_manager/core/browser/password_form_manager.cc -@@ -67,7 +67,7 @@ - #include "components/webauthn/android/webauthn_cred_man_delegate.h" - #endif // BUILDFLAG(IS_ANDROID) - --#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - #include "components/os_crypt/sync/os_crypt.h" - #endif - -@@ -239,7 +239,7 @@ bool ShouldUploadCrowdsourcingVotes(const FormOrDigest +@@ -235,7 +235,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()) { -@@ -940,7 +940,7 @@ void PasswordFormManager::OnFetchCompleted() { +@@ -936,7 +936,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.cc b/www/chromium/files/patch-components_password__manager_core_browser_password__manager.cc index e49b6cbd7245..78d250124e9a 100644 --- a/www/chromium/files/patch-components_password__manager_core_browser_password__manager.cc +++ b/www/chromium/files/patch-components_password__manager_core_browser_password__manager.cc @@ -1,20 +1,20 @@ ---- components/password_manager/core/browser/password_manager.cc.orig 2025-10-30 15:44:36 UTC +--- components/password_manager/core/browser/password_manager.cc.orig 2025-12-05 10:12:50 UTC +++ components/password_manager/core/browser/password_manager.cc -@@ -590,7 +590,7 @@ void PasswordManager::RegisterProfilePrefs( +@@ -607,7 +607,7 @@ void PasswordManager::RegisterProfilePrefs( registry->RegisterListPref(prefs::kPasswordManagerPromoCardsList); #endif // BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_IOS) registry->RegisterBooleanPref(prefs::kPasswordSharingEnabled, true); -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) registry->RegisterIntegerPref(prefs::kRelaunchChromeBubbleDismissedCounter, 0); #endif -@@ -603,7 +603,7 @@ void PasswordManager::RegisterProfilePrefs( +@@ -620,7 +620,7 @@ void PasswordManager::RegisterProfilePrefs( #endif #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_IOS) + BUILDFLAG(IS_IOS) || BUILDFLAG(IS_BSD) registry->RegisterBooleanPref(prefs::kDeletingUndecryptablePasswordsEnabled, true); #endif 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 c96d24ff36fb..45528ec505f2 100644 --- a/www/chromium/files/patch-components_password__manager_core_browser_password__manager__client.h +++ b/www/chromium/files/patch-components_password__manager_core_browser_password__manager__client.h @@ -1,20 +1,20 @@ ---- components/password_manager/core/browser/password_manager_client.h.orig 2025-10-30 15:44:36 UTC +--- components/password_manager/core/browser/password_manager_client.h.orig 2025-12-05 10:12:50 UTC +++ components/password_manager/core/browser/password_manager_client.h @@ -30,7 +30,7 @@ #include "net/cert/cert_status_flags.h" #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "base/i18n/rtl.h" #include "components/password_manager/core/browser/password_cross_domain_confirmation_popup_controller.h" #include "ui/gfx/geometry/rect_f.h" -@@ -540,7 +540,7 @@ class PasswordManagerClient { +@@ -544,7 +544,7 @@ class PasswordManagerClient { virtual void TriggerSignIn(signin_metrics::AccessPoint access_point) const; #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Shows the bubble with the details of the `form`. virtual void OpenPasswordDetailsBubble( const password_manager::PasswordForm& form) = 0; diff --git a/www/chromium/files/patch-components_password__manager_core_browser_password__store_login__database.cc b/www/chromium/files/patch-components_password__manager_core_browser_password__store_login__database.cc index f6ce011afb0f..ff3d252981f0 100644 --- a/www/chromium/files/patch-components_password__manager_core_browser_password__store_login__database.cc +++ b/www/chromium/files/patch-components_password__manager_core_browser_password__store_login__database.cc @@ -1,20 +1,20 @@ ---- components/password_manager/core/browser/password_store/login_database.cc.orig 2025-10-30 15:44:36 UTC +--- components/password_manager/core/browser/password_store/login_database.cc.orig 2025-12-05 10:12:50 UTC +++ components/password_manager/core/browser/password_store/login_database.cc @@ -1043,7 +1043,7 @@ bool ShouldDeleteUndecryptablePasswords( - bool is_user_data_dir_policy_set, bool is_enabled_by_policy, - IsAccountStore is_account_store) { + 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. @@ -1061,7 +1061,7 @@ bool ShouldDeleteUndecryptablePasswords( return false; } -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (command_line->HasSwitch(password_manager::kPasswordStore)) { RecordShouldDeleteUndecryptablePasswordsMetric( ShouldDeleteUndecryptablePasswordsResult:: diff --git a/www/chromium/files/patch-components_password__manager_core_browser_password__store_login__database__async__helper.cc b/www/chromium/files/patch-components_password__manager_core_browser_password__store_login__database__async__helper.cc index 39692156abd5..46e5299ab236 100644 --- a/www/chromium/files/patch-components_password__manager_core_browser_password__store_login__database__async__helper.cc +++ b/www/chromium/files/patch-components_password__manager_core_browser_password__store_login__database__async__helper.cc @@ -1,11 +1,11 @@ ---- components/password_manager/core/browser/password_store/login_database_async_helper.cc.orig 2025-10-30 15:44:36 UTC +--- components/password_manager/core/browser/password_store/login_database_async_helper.cc.orig 2025-12-05 10:12:50 UTC +++ components/password_manager/core/browser/password_store/login_database_async_helper.cc @@ -146,7 +146,7 @@ LoginsResultOrError LoginDatabaseAsyncHelper::FillMatc std::vector matched_forms; if (!login_db_ || !login_db_->GetLogins(form, include_psl, &matched_forms)) { -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) return PasswordStoreBackendError( - OSCrypt::IsEncryptionAvailable() + is_encryption_available_ ? PasswordStoreBackendErrorType::kUncategorized diff --git a/www/chromium/files/patch-components_password__manager_core_browser_password__store_login__database__unittest.cc b/www/chromium/files/patch-components_password__manager_core_browser_password__store_login__database__unittest.cc index bf6fc93ca99a..fe9059b3d11f 100644 --- a/www/chromium/files/patch-components_password__manager_core_browser_password__store_login__database__unittest.cc +++ b/www/chromium/files/patch-components_password__manager_core_browser_password__store_login__database__unittest.cc @@ -1,11 +1,11 @@ ---- components/password_manager/core/browser/password_store/login_database_unittest.cc.orig 2025-10-30 15:44:36 UTC +--- components/password_manager/core/browser/password_store/login_database_unittest.cc.orig 2025-12-05 10:12:50 UTC +++ components/password_manager/core/browser/password_store/login_database_unittest.cc -@@ -2278,7 +2278,7 @@ INSTANTIATE_TEST_SUITE_P(MigrationToVCurrent, - testing::Bool())); +@@ -2227,7 +2227,7 @@ INSTANTIATE_TEST_SUITE_P(MigrationToVCurrent, + testing::Values(1, 2, 3, 24)); #if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_IOS) || \ - BUILDFLAG(IS_WIN) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) class LoginDatabaseUndecryptableLoginsTest : public testing::Test { protected: LoginDatabaseUndecryptableLoginsTest() = default; diff --git a/www/chromium/files/patch-components_password__manager_core_browser_stub__password__manager__client.cc b/www/chromium/files/patch-components_password__manager_core_browser_stub__password__manager__client.cc index 66e4895e2b69..b69d91413c1c 100644 --- a/www/chromium/files/patch-components_password__manager_core_browser_stub__password__manager__client.cc +++ b/www/chromium/files/patch-components_password__manager_core_browser_stub__password__manager__client.cc @@ -1,11 +1,11 @@ ---- components/password_manager/core/browser/stub_password_manager_client.cc.orig 2025-10-02 04:28:32 UTC +--- components/password_manager/core/browser/stub_password_manager_client.cc.orig 2025-12-05 10:12:50 UTC +++ components/password_manager/core/browser/stub_password_manager_client.cc -@@ -211,7 +211,7 @@ version_info::Channel StubPasswordManagerClient::GetCh +@@ -226,7 +226,7 @@ version_info::Channel StubPasswordManagerClient::GetCh } #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) void StubPasswordManagerClient::OpenPasswordDetailsBubble( const password_manager::PasswordForm& form) {} void StubPasswordManagerClient::MaybeShowSavePasswordPrimingPromo( diff --git a/www/chromium/files/patch-components_password__manager_core_browser_stub__password__manager__client.h b/www/chromium/files/patch-components_password__manager_core_browser_stub__password__manager__client.h index 5522c87dd3e7..ec9c239c35bd 100644 --- a/www/chromium/files/patch-components_password__manager_core_browser_stub__password__manager__client.h +++ b/www/chromium/files/patch-components_password__manager_core_browser_stub__password__manager__client.h @@ -1,11 +1,11 @@ ---- components/password_manager/core/browser/stub_password_manager_client.h.orig 2025-10-02 04:28:32 UTC +--- components/password_manager/core/browser/stub_password_manager_client.h.orig 2025-12-05 10:12:50 UTC +++ components/password_manager/core/browser/stub_password_manager_client.h -@@ -80,7 +80,7 @@ class StubPasswordManagerClient : public PasswordManag +@@ -84,7 +84,7 @@ class StubPasswordManagerClient : public PasswordManag MockPasswordFeatureManager* GetPasswordFeatureManager(); version_info::Channel GetChannel() const override; #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) void OpenPasswordDetailsBubble( const password_manager::PasswordForm& form) override; void MaybeShowSavePasswordPrimingPromo(const GURL& current_url) override; diff --git a/www/chromium/files/patch-components_performance__manager_decorators_process__metrics__decorator.cc b/www/chromium/files/patch-components_performance__manager_decorators_process__metrics__decorator.cc index cbadc90f1790..11a515e64e7e 100644 --- a/www/chromium/files/patch-components_performance__manager_decorators_process__metrics__decorator.cc +++ b/www/chromium/files/patch-components_performance__manager_decorators_process__metrics__decorator.cc @@ -1,11 +1,11 @@ ---- components/performance_manager/decorators/process_metrics_decorator.cc.orig 2025-10-02 04:28:32 UTC +--- components/performance_manager/decorators/process_metrics_decorator.cc.orig 2025-12-05 10:12:50 UTC +++ components/performance_manager/decorators/process_metrics_decorator.cc -@@ -266,7 +266,7 @@ void ProcessMetricsDecorator::DidGetMemoryUsage( - base::ByteCount process_rss = - base::KiB(process_dump_iter.os_dump().resident_set_kb); - process_node->set_resident_set(process_rss); +@@ -54,7 +54,7 @@ class ProcessMetricsDecorator::NodeMetricsUpdater { + auto* process_node = ProcessNodeImpl::FromNode(context.GetProcessNode()); + process_node->set_private_footprint(memory_summary_->private_footprint); + process_node->set_resident_set(memory_summary_->resident_set_size); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) - process_node->set_private_swap( - base::KiB(process_dump_iter.os_dump().private_footprint_swap_kb)); + process_node->set_private_swap(memory_summary_->private_swap); #endif + } diff --git a/www/chromium/files/patch-components_policy_core_common_cloud_cloud__policy__refresh__scheduler.cc b/www/chromium/files/patch-components_policy_core_common_cloud_cloud__policy__refresh__scheduler.cc index 4a71da13e71c..e355ed676afd 100644 --- a/www/chromium/files/patch-components_policy_core_common_cloud_cloud__policy__refresh__scheduler.cc +++ b/www/chromium/files/patch-components_policy_core_common_cloud_cloud__policy__refresh__scheduler.cc @@ -1,20 +1,20 @@ ---- components/policy/core/common/cloud/cloud_policy_refresh_scheduler.cc.orig 2025-10-30 15:44:36 UTC +--- components/policy/core/common/cloud/cloud_policy_refresh_scheduler.cc.orig 2025-12-05 10:12:50 UTC +++ components/policy/core/common/cloud/cloud_policy_refresh_scheduler.cc -@@ -25,7 +25,7 @@ namespace policy { +@@ -26,7 +26,7 @@ namespace policy { namespace { -#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(kRetryWithKeyReset, base::FEATURE_ENABLED_BY_DEFAULT); #endif -@@ -218,7 +218,7 @@ void CloudPolicyRefreshScheduler::OnStoreError(CloudPo +@@ -219,7 +219,7 @@ void CloudPolicyRefreshScheduler::OnStoreError(CloudPo // continue using the stale information. Thus, no specific response to a store // error is required. NB: Changes to is_managed fire OnStoreLoaded(). -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Client is registered means we have successfully get policy key once. However, // a following policy fetch request is failed because we can't verified // signature. Delete the policy key so that we can get it again with next diff --git a/www/chromium/files/patch-components_regional__capabilities_regional__capabilities__switches.cc b/www/chromium/files/patch-components_regional__capabilities_regional__capabilities__switches.cc index a133fe41c89a..eb65bf66a9ef 100644 --- a/www/chromium/files/patch-components_regional__capabilities_regional__capabilities__switches.cc +++ b/www/chromium/files/patch-components_regional__capabilities_regional__capabilities__switches.cc @@ -1,11 +1,11 @@ ---- components/regional_capabilities/regional_capabilities_switches.cc.orig 2025-10-30 15:44:36 UTC +--- components/regional_capabilities/regional_capabilities_switches.cc.orig 2025-12-05 10:12:50 UTC +++ components/regional_capabilities/regional_capabilities_switches.cc @@ -23,7 +23,7 @@ BASE_FEATURE(kResolveRegionalCapabilitiesFromDevice, base::FEATURE_ENABLED_BY_DEFAULT); #endif -#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) BASE_FEATURE(kUseFinchPermanentCountryForFetchCountryId, "UseFinchPermanentCountyForFetchCountryId", - base::FEATURE_DISABLED_BY_DEFAULT); + base::FEATURE_ENABLED_BY_DEFAULT); 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 ac2c1c250097..35579a8476f6 100644 --- a/www/chromium/files/patch-components_search__engines_template__url__service.cc +++ b/www/chromium/files/patch-components_search__engines_template__url__service.cc @@ -1,11 +1,11 @@ ---- components/search_engines/template_url_service.cc.orig 2025-10-02 04:28:32 UTC +--- components/search_engines/template_url_service.cc.orig 2025-12-05 10:12:50 UTC +++ components/search_engines/template_url_service.cc -@@ -3587,7 +3587,7 @@ bool TemplateURLService::MatchesDefaultSearchProvider( +@@ -3590,7 +3590,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_segmentation__platform_embedder_default__model_cross__device__user__segment.cc b/www/chromium/files/patch-components_segmentation__platform_embedder_default__model_cross__device__user__segment.cc index 22c7a886bc4c..6a8f8186e98f 100644 --- a/www/chromium/files/patch-components_segmentation__platform_embedder_default__model_cross__device__user__segment.cc +++ b/www/chromium/files/patch-components_segmentation__platform_embedder_default__model_cross__device__user__segment.cc @@ -1,11 +1,11 @@ ---- components/segmentation_platform/embedder/default_model/cross_device_user_segment.cc.orig 2025-02-19 07:43:18 UTC +--- components/segmentation_platform/embedder/default_model/cross_device_user_segment.cc.orig 2025-12-05 10:12:50 UTC +++ components/segmentation_platform/embedder/default_model/cross_device_user_segment.cc -@@ -147,7 +147,7 @@ void CrossDeviceUserSegment::ExecuteModelWithInput( +@@ -122,7 +122,7 @@ void CrossDeviceUserSegment::ExecuteModelWithInput( // Check for current device type and subtract it from the device count // calculation. #if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_WIN) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) desktop_count -= 1; #elif BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_IOS) if (ui::GetDeviceFormFactor() == ui::DEVICE_FORM_FACTOR_TABLET) { 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 dcfbe8c05133..337836524523 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,29 +1,44 @@ ---- components/signin/public/base/signin_switches.cc.orig 2025-10-30 15:44:36 UTC +--- components/signin/public/base/signin_switches.cc.orig 2025-12-05 10:12:50 UTC +++ components/signin/public/base/signin_switches.cc -@@ -96,7 +96,7 @@ BASE_FEATURE(kBrowserSigninInSyncHeaderOnGaiaIntegrati - BASE_FEATURE(kCctSignInPrompt, base::FEATURE_ENABLED_BY_DEFAULT); +@@ -107,7 +107,7 @@ BASE_FEATURE(kChromeAndroidIdentitySurveyBookmarkPromo + base::FEATURE_DISABLED_BY_DEFAULT); #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) BASE_FEATURE(kChromeIdentitySurveyAddressBubbleSignin, base::FEATURE_DISABLED_BY_DEFAULT); BASE_FEATURE(kChromeIdentitySurveyDiceWebSigninAccepted, -@@ -123,7 +123,7 @@ BASE_FEATURE(kChromeIdentitySurveySwitchProfileFromPro +@@ -134,7 +134,7 @@ BASE_FEATURE(kChromeIdentitySurveySwitchProfileFromPro base::FEATURE_DISABLED_BY_DEFAULT); #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, -@@ -325,7 +325,7 @@ BASE_FEATURE(kRetryInterceptionBubbleOnDiceSyncHeaderT +@@ -343,7 +343,7 @@ BASE_FEATURE_PARAM(base::TimeDelta, + base::Days(7)); + #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(kProfileCreationDeclineSigninCTAExperiment, + base::FEATURE_DISABLED_BY_DEFAULT); + +@@ -372,12 +372,12 @@ BASE_FEATURE(kProfilesReordering, base::FEATURE_DISABL BASE_FEATURE(kRollbackDiceMigration, 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(kShowProfilePickerToAllUsersExperiment, + base::FEATURE_DISABLED_BY_DEFAULT); + #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(kSignInPromoMaterialNextUI, 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 46408caa2f37..fc496371ceca 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,29 +1,46 @@ ---- components/signin/public/base/signin_switches.h.orig 2025-10-30 15:44:36 UTC +--- components/signin/public/base/signin_switches.h.orig 2025-12-05 10:12:50 UTC +++ components/signin/public/base/signin_switches.h -@@ -77,7 +77,7 @@ COMPONENT_EXPORT(SIGNIN_SWITCHES) - BASE_DECLARE_FEATURE(kCctSignInPrompt); +@@ -95,7 +95,7 @@ COMPONENT_EXPORT(SIGNIN_SWITCHES) + BASE_DECLARE_FEATURE(kChromeAndroidIdentitySurveyBookmarkPromo); #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. -@@ -109,7 +109,7 @@ BASE_DECLARE_FEATURE(kChromeIdentitySurveySwitchProfil +@@ -127,7 +127,7 @@ BASE_DECLARE_FEATURE(kChromeIdentitySurveySwitchProfil // 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); -@@ -277,7 +277,7 @@ COMPONENT_EXPORT(SIGNIN_SWITCHES) +@@ -287,7 +287,7 @@ BASE_DECLARE_FEATURE_PARAM(base::TimeDelta, + kOfferMigrationToDiceUsersMinTimeBetweenDialogs); + #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) + // Experimenting with changing the secondary CTA for FRE and new profile + // creation. + COMPONENT_EXPORT(SIGNIN_SWITCHES) +@@ -318,14 +318,14 @@ COMPONENT_EXPORT(SIGNIN_SWITCHES) BASE_DECLARE_FEATURE(kRollbackDiceMigration); #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) + // Experimenting with showing the profile picker to all users (not only the + // users with multiple profiles). + COMPONENT_EXPORT(SIGNIN_SWITCHES) + BASE_DECLARE_FEATURE(kShowProfilePickerToAllUsersExperiment); + #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) // Uses the Material Next theme for the signin promo. COMPONENT_EXPORT(SIGNIN_SWITCHES) BASE_DECLARE_FEATURE(kSignInPromoMaterialNextUI); diff --git a/www/chromium/files/patch-components_soda_soda__util.cc b/www/chromium/files/patch-components_soda_soda__util.cc index bf98e7eeae7d..d29fbbec8b25 100644 --- a/www/chromium/files/patch-components_soda_soda__util.cc +++ b/www/chromium/files/patch-components_soda_soda__util.cc @@ -1,29 +1,29 @@ ---- components/soda/soda_util.cc.orig 2025-05-05 10:57:53 UTC +--- components/soda/soda_util.cc.orig 2025-12-05 10:12:50 UTC +++ components/soda/soda_util.cc @@ -23,7 +23,7 @@ #include "base/win/windows_version.h" #endif -#if BUILDFLAG(IS_LINUX) && defined(ARCH_CPU_X86_FAMILY) +#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && defined(ARCH_CPU_X86_FAMILY) #include "base/cpu.h" #endif @@ -39,7 +39,7 @@ bool IsSupportedChromeOS() { } #endif // BUILDFLAG(IS_CHROMEOS) -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) bool IsSupportedLinux() { #if defined(ARCH_CPU_X86_FAMILY) // Check if the CPU has the required instruction set to run the Speech -@@ -70,7 +70,7 @@ bool IsSupportedWin() { - bool IsOnDeviceSpeechRecognitionSupported() { +@@ -73,7 +73,7 @@ bool IsOnDeviceSpeechRecognitionSupported() { + // support Gemini Nano. #if BUILDFLAG(IS_CHROMEOS) return IsSupportedChromeOS(); -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) return IsSupportedLinux(); #elif BUILDFLAG(IS_WIN) return IsSupportedWin(); diff --git a/www/chromium/files/patch-components_sync__bookmarks_bookmark__model__view.cc b/www/chromium/files/patch-components_sync__bookmarks_bookmark__model__view.cc index 791f33895def..42dfcf440ba8 100644 --- a/www/chromium/files/patch-components_sync__bookmarks_bookmark__model__view.cc +++ b/www/chromium/files/patch-components_sync__bookmarks_bookmark__model__view.cc @@ -1,20 +1,20 @@ ---- components/sync_bookmarks/bookmark_model_view.cc.orig 2025-10-30 15:44:36 UTC +--- components/sync_bookmarks/bookmark_model_view.cc.orig 2025-12-05 10:12:50 UTC +++ components/sync_bookmarks/bookmark_model_view.cc @@ -9,7 +9,7 @@ #include "components/bookmarks/browser/bookmark_model.h" #include "components/bookmarks/browser/bookmark_node.h" #include "components/bookmarks/common/bookmark_metrics.h" -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - #include "components/sync_bookmarks/initial_account_bookmark_deduplicator.h" - #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) - -@@ -250,7 +250,7 @@ void BookmarkModelViewUsingAccountNodes::RemoveAllSync + #include "base/metrics/histogram_base.h" + #include "base/metrics/histogram_functions.h" + #include "base/time/time.h" +@@ -253,7 +253,7 @@ void BookmarkModelViewUsingAccountNodes::RemoveAllSync void BookmarkModelViewUsingAccountNodes:: MaybeRemoveUnderlyingModelDuplicatesUponInitialSync() { -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - InitialAccountBookmarkDeduplicator initial_account_bookmark_deduplicator( - underlying_model()); - initial_account_bookmark_deduplicator.Deduplicate(); + BeginExtensiveChanges(); + + const base::Time deduplication_start_time = base::Time::Now(); diff --git a/www/chromium/files/patch-components_sync__preferences_common__syncable__prefs__database.cc b/www/chromium/files/patch-components_sync__preferences_common__syncable__prefs__database.cc index 0c53da4cc602..f500fd13fdee 100644 --- a/www/chromium/files/patch-components_sync__preferences_common__syncable__prefs__database.cc +++ b/www/chromium/files/patch-components_sync__preferences_common__syncable__prefs__database.cc @@ -1,11 +1,11 @@ ---- components/sync_preferences/common_syncable_prefs_database.cc.orig 2025-10-30 15:44:36 UTC +--- components/sync_preferences/common_syncable_prefs_database.cc.orig 2025-12-05 10:12:50 UTC +++ components/sync_preferences/common_syncable_prefs_database.cc -@@ -365,7 +365,7 @@ constexpr auto kCommonSyncablePrefsAllowlist = +@@ -410,7 +410,7 @@ constexpr auto kCommonSyncablePrefsAllowlist = syncer::PREFERENCES, PrefSensitivity::kNone, MergeBehavior::kNone}}, #endif // BUILDFLAG(IS_ANDROID) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) {autofill::prefs::kAutofillBnplEnabled, {syncable_prefs_ids::kAutofillBnplEnabled, syncer::PREFERENCES, PrefSensitivity::kNone, MergeBehavior::kNone}}, diff --git a/www/chromium/files/patch-components_sync_service_sync__service__impl.cc b/www/chromium/files/patch-components_sync_service_sync__service__impl.cc index ab4c89b38523..0359ee129ec0 100644 --- a/www/chromium/files/patch-components_sync_service_sync__service__impl.cc +++ b/www/chromium/files/patch-components_sync_service_sync__service__impl.cc @@ -1,11 +1,11 @@ ---- components/sync/service/sync_service_impl.cc.orig 2025-10-30 15:44:36 UTC +--- components/sync/service/sync_service_impl.cc.orig 2025-12-05 10:12:50 UTC +++ components/sync/service/sync_service_impl.cc -@@ -1376,7 +1376,7 @@ void SyncServiceImpl::ReconfigureDataTypesDueToCrypto( +@@ -1384,7 +1384,7 @@ void SyncServiceImpl::ReconfigureDataTypesDueToCrypto( void SyncServiceImpl::PassphraseTypeChanged(PassphraseType passphrase_type) { DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); -#if !(BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX)) +#if !(BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) // If kReplaceSyncPromosWithSignInPromos is enabled, new users with custom // passphrase should have kAutofill disabled upon the initial sign-in. This is // done to prevent confusion, as addresses are NOT encrypted by the custom diff --git a/www/chromium/files/patch-components_url__formatter_spoof__checks_idn__spoof__checker.cc b/www/chromium/files/patch-components_url__formatter_spoof__checks_idn__spoof__checker.cc index 12895da0523c..9a4ddf5f4154 100644 --- a/www/chromium/files/patch-components_url__formatter_spoof__checks_idn__spoof__checker.cc +++ b/www/chromium/files/patch-components_url__formatter_spoof__checks_idn__spoof__checker.cc @@ -1,11 +1,11 @@ ---- components/url_formatter/spoof_checks/idn_spoof_checker.cc.orig 2025-10-02 04:28:32 UTC +--- components/url_formatter/spoof_checks/idn_spoof_checker.cc.orig 2025-12-05 10:12:50 UTC +++ components/url_formatter/spoof_checks/idn_spoof_checker.cc -@@ -299,7 +299,7 @@ IDNSpoofChecker::IDNSpoofChecker() { +@@ -305,7 +305,7 @@ IDNSpoofChecker::IDNSpoofChecker() { // The ideal fix would be to change the omnibox font used for Thai. In // that case, the Linux-only list should be revisited and potentially // removed. -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) "[ทนบพรหเแ๐ดลปฟม]", #else "[บพเแ๐]", 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 b0c80721f43a..5fa9123f4f25 100644 --- a/www/chromium/files/patch-components_variations_service_variations__service.cc +++ b/www/chromium/files/patch-components_variations_service_variations__service.cc @@ -1,11 +1,11 @@ ---- components/variations/service/variations_service.cc.orig 2025-10-02 04:28:32 UTC +--- components/variations/service/variations_service.cc.orig 2025-12-05 10:12:50 UTC +++ components/variations/service/variations_service.cc -@@ -100,7 +100,7 @@ std::string GetPlatformString() { +@@ -99,7 +99,7 @@ std::string GetPlatformString() { return "android"; #elif BUILDFLAG(IS_FUCHSIA) return "fuchsia"; -#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) || BUILDFLAG(IS_SOLARIS) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) || BUILDFLAG(IS_SOLARIS) || BUILDFLAG(IS_BSD) // Default BSD and SOLARIS to Linux to not break those builds, although these // platforms are not officially supported by Chrome. return "linux"; diff --git a/www/chromium/files/patch-components_viz_host_gpu__host__impl.cc b/www/chromium/files/patch-components_viz_host_gpu__host__impl.cc index 0c97419e52eb..efc75645e51e 100644 --- a/www/chromium/files/patch-components_viz_host_gpu__host__impl.cc +++ b/www/chromium/files/patch-components_viz_host_gpu__host__impl.cc @@ -1,11 +1,11 @@ ---- components/viz/host/gpu_host_impl.cc.orig 2025-10-30 15:44:36 UTC +--- components/viz/host/gpu_host_impl.cc.orig 2025-12-05 10:12:50 UTC +++ components/viz/host/gpu_host_impl.cc -@@ -156,7 +156,7 @@ GpuHostImpl::GpuHostImpl(Delegate* delegate, +@@ -157,7 +157,7 @@ GpuHostImpl::GpuHostImpl(Delegate* delegate, mojom::GpuServiceCreationParams::New(); #if BUILDFLAG(IS_OZONE) -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Linux has an issue when running in single-process mode wherein // GetPlatformRuntimeProperties() browser-side calls can have a data race with // in-process GPU service initialization. The call to 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 9b7ebd0d24e6..d427b892ea90 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 2025-10-30 15:44:36 UTC +--- components/viz/service/display_embedder/skia_output_surface_impl.cc.orig 2025-12-05 10:12:50 UTC +++ components/viz/service/display_embedder/skia_output_surface_impl.cc -@@ -1557,7 +1557,7 @@ GrBackendFormat SkiaOutputSurfaceImpl::GetGrBackendFor +@@ -1556,7 +1556,7 @@ GrBackendFormat SkiaOutputSurfaceImpl::GetGrBackendFor ->GetVulkanPhysicalDevice(), VK_IMAGE_TILING_OPTIMAL, vk_format, si_format, yuv_color_space, 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 fc79a69e2975..630a12d31063 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 2025-10-30 15:44:36 UTC +--- components/viz/service/display/skia_renderer.cc.orig 2025-12-05 10:12:50 UTC +++ components/viz/service/display/skia_renderer.cc -@@ -1379,7 +1379,7 @@ void SkiaRenderer::ClearFramebuffer() { +@@ -1299,7 +1299,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 5beab67b79db..0dfed3ea6f56 100644 --- a/www/chromium/files/patch-components_viz_service_frame__sinks_root__compositor__frame__sink__impl.cc +++ b/www/chromium/files/patch-components_viz_service_frame__sinks_root__compositor__frame__sink__impl.cc @@ -1,20 +1,20 @@ ---- components/viz/service/frame_sinks/root_compositor_frame_sink_impl.cc.orig 2025-10-30 15:44:36 UTC +--- components/viz/service/frame_sinks/root_compositor_frame_sink_impl.cc.orig 2025-12-05 10:12:50 UTC +++ components/viz/service/frame_sinks/root_compositor_frame_sink_impl.cc -@@ -141,7 +141,7 @@ RootCompositorFrameSinkImpl::Create( +@@ -142,7 +142,7 @@ RootCompositorFrameSinkImpl::Create( output_surface->SetNeedsSwapSizeNotifications( params->send_swap_size_notifications); -#if BUILDFLAG(IS_LINUX) && BUILDFLAG(IS_OZONE_X11) +#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && BUILDFLAG(IS_OZONE_X11) // For X11, we need notify client about swap completion after resizing, so the // client can use it for synchronize with X11 WM. output_surface->SetNeedsSwapSizeNotifications(true); -@@ -903,7 +903,7 @@ void RootCompositorFrameSinkImpl::DisplayDidCompleteSw +@@ -904,7 +904,7 @@ void RootCompositorFrameSinkImpl::DisplayDidCompleteSw if (display_client_ && enable_swap_completion_callback_) { display_client_->DidCompleteSwapWithSize(pixel_size); } -#elif BUILDFLAG(IS_LINUX) && BUILDFLAG(IS_OZONE_X11) +#elif (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && BUILDFLAG(IS_OZONE_X11) if (display_client_ && pixel_size != last_swap_pixel_size_) { last_swap_pixel_size_ = pixel_size; display_client_->DidCompleteSwapWithNewSize(last_swap_pixel_size_); diff --git a/www/chromium/files/patch-components_viz_service_gl_gpu__service__impl.cc b/www/chromium/files/patch-components_viz_service_gl_gpu__service__impl.cc index d1c2a851ad6f..723061d426ff 100644 --- a/www/chromium/files/patch-components_viz_service_gl_gpu__service__impl.cc +++ b/www/chromium/files/patch-components_viz_service_gl_gpu__service__impl.cc @@ -1,20 +1,20 @@ ---- components/viz/service/gl/gpu_service_impl.cc.orig 2025-10-30 15:44:36 UTC +--- components/viz/service/gl/gpu_service_impl.cc.orig 2025-12-05 10:12:50 UTC +++ components/viz/service/gl/gpu_service_impl.cc -@@ -481,7 +481,7 @@ void GpuServiceImpl::InitializeWithHostInternal( +@@ -460,7 +460,7 @@ void GpuServiceImpl::InitializeWithHostInternal( mojo::Remote gpu_host(std::move(pending_gpu_host)); -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) gpu_extra_info_.is_gmb_nv12_supported = IsGMBNV12Supported(); #endif -@@ -1246,7 +1246,7 @@ bool GpuServiceImpl::OnBeginFrameDerivedImpl(const Beg +@@ -1223,7 +1223,7 @@ bool GpuServiceImpl::OnBeginFrameDerivedImpl(const Beg return true; } -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) bool GpuServiceImpl::IsGMBNV12Supported() { CHECK(main_runner_->BelongsToCurrentThread()); diff --git a/www/chromium/files/patch-components_viz_service_gl_gpu__service__impl.h b/www/chromium/files/patch-components_viz_service_gl_gpu__service__impl.h index b70c45314e0a..1edfcee70521 100644 --- a/www/chromium/files/patch-components_viz_service_gl_gpu__service__impl.h +++ b/www/chromium/files/patch-components_viz_service_gl_gpu__service__impl.h @@ -1,11 +1,11 @@ ---- components/viz/service/gl/gpu_service_impl.h.orig 2025-10-30 15:44:36 UTC +--- components/viz/service/gl/gpu_service_impl.h.orig 2025-12-05 10:12:50 UTC +++ components/viz/service/gl/gpu_service_impl.h -@@ -448,7 +448,7 @@ class VIZ_SERVICE_EXPORT GpuServiceImpl +@@ -442,7 +442,7 @@ class VIZ_SERVICE_EXPORT GpuServiceImpl void OnBeginFrameOnIO(const BeginFrameArgs& args); -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) bool IsGMBNV12Supported(); #endif diff --git a/www/chromium/files/patch-content_app_BUILD.gn b/www/chromium/files/patch-content_app_BUILD.gn index 517bba9740d2..b1c38a0a15cd 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-10-02 04:28:32 UTC +--- content/app/BUILD.gn.orig 2025-12-05 10:12:50 UTC +++ content/app/BUILD.gn -@@ -91,7 +91,10 @@ source_set("content_main_runner_app") { +@@ -90,7 +90,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_browser_browser__child__process__host__impl.cc b/www/chromium/files/patch-content_browser_browser__child__process__host__impl.cc index a7394a0ec3fc..4bbb6b1729c5 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 2025-10-30 15:44:36 UTC +--- content/browser/browser_child_process_host_impl.cc.orig 2025-12-05 10:12:50 UTC +++ content/browser/browser_child_process_host_impl.cc -@@ -296,6 +296,7 @@ void BrowserChildProcessHostImpl::LaunchWithoutExtraCo +@@ -291,6 +291,7 @@ void BrowserChildProcessHostImpl::LaunchWithoutExtraCo switches::kIPCConnectionTimeout, switches::kLogBestEffortTasks, switches::kPerfettoDisableInterning, + switches::kDisableUnveil, }; cmd_line->CopySwitchesFrom(browser_command_line, kForwardSwitches); -@@ -660,7 +661,7 @@ void BrowserChildProcessHostImpl::OnProcessLaunched() +@@ -648,7 +649,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 0b90a5967a14..31bca2f1dfe7 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 2025-09-06 10:01:20 UTC +--- content/browser/browser_child_process_host_impl.h.orig 2025-12-05 10:12:50 UTC +++ content/browser/browser_child_process_host_impl.h @@ -36,7 +36,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) -@@ -276,7 +276,7 @@ class BrowserChildProcessHostImpl +@@ -273,7 +273,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 4c2ea17b6f46..aa382bdc7d6c 100644 --- a/www/chromium/files/patch-content_browser_browser__main__loop.cc +++ b/www/chromium/files/patch-content_browser_browser__main__loop.cc @@ -1,37 +1,37 @@ ---- content/browser/browser_main_loop.cc.orig 2025-10-30 15:44:36 UTC +--- content/browser/browser_main_loop.cc.orig 2025-12-05 10:12:50 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 -@@ -543,6 +549,12 @@ int BrowserMainLoop::EarlyInitialization() { +@@ -545,6 +551,12 @@ int BrowserMainLoop::EarlyInitialization() { // by now since a thread to start the ServiceManager has been created // before the browser main loop starts. DCHECK(SandboxHostLinux::GetInstance()->IsInitialized()); +#elif BUILDFLAG(IS_BSD) + base::FileHandleMappingVector additional_remapped_fds; + base::LaunchOptions options; + SandboxHostLinux::GetInstance()->Init(); + const int sfd = SandboxHostLinux::GetInstance()->GetChildSocket(); + options.fds_to_remap.push_back(std::make_pair(sfd, GetSandboxFD())); #endif // GLib's spawning of new processes is buggy, so it's important that at this -@@ -575,7 +587,7 @@ int BrowserMainLoop::EarlyInitialization() { +@@ -577,7 +589,7 @@ int BrowserMainLoop::EarlyInitialization() { base::ThreadType::kDisplayCritical); #if BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ - BUILDFLAG(IS_ANDROID) + BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) // We use quite a few file descriptors for our IPC as well as disk the disk // cache, and the default limit on Apple is low (256), so bump it up. diff --git a/www/chromium/files/patch-content_browser_gpu_gpu__process__host.cc b/www/chromium/files/patch-content_browser_gpu_gpu__process__host.cc index 976e24bc0977..772683483938 100644 --- a/www/chromium/files/patch-content_browser_gpu_gpu__process__host.cc +++ b/www/chromium/files/patch-content_browser_gpu_gpu__process__host.cc @@ -1,19 +1,19 @@ ---- content/browser/gpu/gpu_process_host.cc.orig 2025-10-30 15:44:36 UTC +--- content/browser/gpu/gpu_process_host.cc.orig 2025-12-05 10:12:50 UTC +++ content/browser/gpu/gpu_process_host.cc -@@ -280,6 +280,7 @@ static const char* const kSwitchNames[] = { +@@ -282,6 +282,7 @@ static const char* const kSwitchNames[] = { switches::kDisableSkiaGraphite, switches::kDisableSkiaGraphitePrecompilation, switches::kDisableLowEndDeviceMode, + switches::kDisableUnveil, switches::kProfilingAtStart, switches::kProfilingFile, switches::kProfilingFlush, -@@ -305,7 +306,7 @@ static const char* const kSwitchNames[] = { +@@ -307,7 +308,7 @@ static const char* const kSwitchNames[] = { switches::kEnableNativeGpuMemoryBuffers, switches::kRenderNodeOverride, #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) switches::kX11Display, switches::kNoXshm, #endif diff --git a/www/chromium/files/patch-content_browser_media_frameless__media__interface__proxy.h b/www/chromium/files/patch-content_browser_media_frameless__media__interface__proxy.h index 479feb625a2e..968a11dc5a3d 100644 --- a/www/chromium/files/patch-content_browser_media_frameless__media__interface__proxy.h +++ b/www/chromium/files/patch-content_browser_media_frameless__media__interface__proxy.h @@ -1,20 +1,20 @@ ---- content/browser/media/frameless_media_interface_proxy.h.orig 2025-05-28 14:55:43 UTC +--- content/browser/media/frameless_media_interface_proxy.h.orig 2025-12-05 10:12:50 UTC +++ content/browser/media/frameless_media_interface_proxy.h @@ -19,7 +19,7 @@ #include "mojo/public/cpp/bindings/receiver_set.h" #include "mojo/public/cpp/bindings/remote.h" -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "media/mojo/mojom/video_decoder.mojom.h" #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -@@ -98,7 +98,7 @@ class FramelessMediaInterfaceProxy final +@@ -96,7 +96,7 @@ class FramelessMediaInterfaceProxy final // Connections to the renderer. mojo::ReceiverSet receivers_; -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Connection to the InterfaceFactory that lives in a utility process. // This is only used for out-of-process video decoding and only when the // FramelessMediaInterfaceProxy is created without a RenderProcessHost 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 cca63591cbc5..b25381940082 100644 --- a/www/chromium/files/patch-content_browser_renderer__host_delegated__frame__host.cc +++ b/www/chromium/files/patch-content_browser_renderer__host_delegated__frame__host.cc @@ -1,11 +1,11 @@ ---- content/browser/renderer_host/delegated_frame_host.cc.orig 2025-08-07 06:57:29 UTC +--- content/browser/renderer_host/delegated_frame_host.cc.orig 2025-12-05 10:12:50 UTC +++ content/browser/renderer_host/delegated_frame_host.cc -@@ -334,7 +334,7 @@ void DelegatedFrameHost::EmbedSurface( +@@ -338,7 +338,7 @@ void DelegatedFrameHost::EmbedSurface( if (!primary_surface_id || primary_surface_id->local_surface_id() != local_surface_id_) { -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // On Windows and Linux, we would like to produce new content as soon as // possible or the OS will create an additional black gutter. Until we can // block resize on surface synchronization on these platforms, we will not diff --git a/www/chromium/files/patch-content_browser_renderer__host_navigation__transitions_navigation__entry__screenshot.cc b/www/chromium/files/patch-content_browser_renderer__host_navigation__transitions_navigation__entry__screenshot.cc index bef2ac1d6961..085a7b1f2c1d 100644 --- a/www/chromium/files/patch-content_browser_renderer__host_navigation__transitions_navigation__entry__screenshot.cc +++ b/www/chromium/files/patch-content_browser_renderer__host_navigation__transitions_navigation__entry__screenshot.cc @@ -1,20 +1,20 @@ ---- content/browser/renderer_host/navigation_transitions/navigation_entry_screenshot.cc.orig 2025-10-30 15:44:36 UTC +--- content/browser/renderer_host/navigation_transitions/navigation_entry_screenshot.cc.orig 2025-12-05 10:12:50 UTC +++ content/browser/renderer_host/navigation_transitions/navigation_entry_screenshot.cc -@@ -26,7 +26,7 @@ +@@ -28,7 +28,7 @@ #include "third_party/skia/include/core/SkBitmap.h" #include "ui/gfx/skia_span_util.h" -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include #ifndef MADV_POPULATE_WRITE -@@ -77,7 +77,7 @@ void CompressNavigationScreenshotOnWorkerThread( +@@ -73,7 +73,7 @@ void CompressNavigationScreenshotOnWorkerThread( #endif // BUILDFLAG(IS_ANDROID) void AdviseBitmap(SkBitmap& bitmap) { -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) size_t size = bitmap.info().computeByteSize(bitmap.info().minRowBytes()); if (madvise(bitmap.getPixels(), size, MADV_POPULATE_WRITE) == 0) { return; 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 56ea3b698c0d..ef8b7f51d0a7 100644 --- a/www/chromium/files/patch-content_browser_renderer__host_render__process__host__impl.cc +++ b/www/chromium/files/patch-content_browser_renderer__host_render__process__host__impl.cc @@ -1,55 +1,55 @@ ---- content/browser/renderer_host/render_process_host_impl.cc.orig 2025-10-30 15:44:36 UTC +--- content/browser/renderer_host/render_process_host_impl.cc.orig 2025-12-05 10:12:50 UTC +++ content/browser/renderer_host/render_process_host_impl.cc @@ -228,7 +228,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 -@@ -1127,7 +1127,7 @@ static constexpr size_t kUnknownPlatformProcessLimit = +@@ -1142,7 +1142,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; -@@ -1363,7 +1363,7 @@ RenderProcessHostImpl::IOThreadHostImpl::~IOThreadHost +@@ -1385,7 +1385,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) } -@@ -3509,7 +3509,7 @@ void RenderProcessHostImpl::AppendRendererCommandLine( +@@ -3616,7 +3616,7 @@ void RenderProcessHostImpl::AppendRendererCommandLine( base::TimeTicks::UnixEpoch().since_origin().InMicroseconds())); } -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Append `kDisableVideoCaptureUseGpuMemoryBuffer` flag if there is no support // for NV12 GPU memory buffer. if (switches::IsVideoCaptureUseGpuMemoryBufferEnabled() && -@@ -3565,6 +3565,7 @@ void RenderProcessHostImpl::PropagateBrowserCommandLin +@@ -3672,6 +3672,7 @@ void RenderProcessHostImpl::PropagateBrowserCommandLin switches::kDisableSkiaRuntimeOpts, switches::kDisableSpeechAPI, switches::kDisableThreadedCompositing, + switches::kDisableUnveil, switches::kDisableV8IdleTasks, switches::kDisableVideoCaptureUseGpuMemoryBuffer, switches::kDisableWebGLImageChromium, -@@ -5487,7 +5488,7 @@ uint64_t RenderProcessHostImpl::GetPrivateMemoryFootpr +@@ -5550,7 +5551,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 66d172ba9b45..717217b05cc0 100644 --- a/www/chromium/files/patch-content_browser_renderer__host_render__process__host__impl.h +++ b/www/chromium/files/patch-content_browser_renderer__host_render__process__host__impl.h @@ -1,29 +1,29 @@ ---- content/browser/renderer_host/render_process_host_impl.h.orig 2025-10-30 15:44:36 UTC +--- content/browser/renderer_host/render_process_host_impl.h.orig 2025-12-05 10:12:50 UTC +++ content/browser/renderer_host/render_process_host_impl.h @@ -103,7 +103,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 -@@ -1014,7 +1014,7 @@ class CONTENT_EXPORT RenderProcessHostImpl +@@ -1021,7 +1021,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 }; -@@ -1268,7 +1268,7 @@ class CONTENT_EXPORT RenderProcessHostImpl +@@ -1275,7 +1275,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 08cfbc7b4031..e39ccb482e67 100644 --- a/www/chromium/files/patch-content_browser_renderer__host_render__widget__host__view__aura.cc +++ b/www/chromium/files/patch-content_browser_renderer__host_render__widget__host__view__aura.cc @@ -1,47 +1,47 @@ ---- content/browser/renderer_host/render_widget_host_view_aura.cc.orig 2025-10-30 15:44:36 UTC +--- content/browser/renderer_host/render_widget_host_view_aura.cc.orig 2025-12-05 10:12:50 UTC +++ content/browser/renderer_host/render_widget_host_view_aura.cc -@@ -122,7 +122,7 @@ - #include "ui/gfx/gdi_util.h" +@@ -127,7 +127,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" -@@ -477,7 +477,7 @@ gfx::NativeViewAccessible RenderWidgetHostViewAura::Ge +@@ -531,7 +531,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()) -@@ -1880,7 +1880,7 @@ bool RenderWidgetHostViewAura::ShouldDoLearning() { +@@ -1958,7 +1958,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) { -@@ -2861,7 +2861,7 @@ bool RenderWidgetHostViewAura::NeedsInputGrab() { +@@ -2946,7 +2946,7 @@ bool RenderWidgetHostViewAura::NeedsInputGrab() { } bool RenderWidgetHostViewAura::NeedsMouseCapture() { -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) return NeedsInputGrab(); #else return false; -@@ -3045,7 +3045,7 @@ void RenderWidgetHostViewAura::ForwardKeyboardEventWit +@@ -3132,7 +3132,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 e56bbd807bda..d0b42d17fbc1 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 2025-03-05 08:14:56 UTC +--- content/browser/renderer_host/render_widget_host_view_aura.h.orig 2025-12-05 10:12:50 UTC +++ content/browser/renderer_host/render_widget_host_view_aura.h -@@ -276,7 +276,7 @@ class CONTENT_EXPORT RenderWidgetHostViewAura +@@ -288,7 +288,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_service__host_utility__process__host.cc b/www/chromium/files/patch-content_browser_service__host_utility__process__host.cc index 5c46f019fa23..67d1a7681e84 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 2025-10-02 04:28:32 UTC +--- content/browser/service_host/utility_process_host.cc.orig 2025-12-05 10:12:50 UTC +++ content/browser/service_host/utility_process_host.cc -@@ -68,7 +68,7 @@ +@@ -64,7 +64,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" -@@ -97,7 +97,7 @@ namespace content { +@@ -93,7 +93,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; -@@ -495,7 +495,7 @@ bool UtilityProcessHost::StartProcess() { +@@ -491,7 +491,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) { -@@ -513,7 +513,7 @@ bool UtilityProcessHost::StartProcess() { +@@ -509,7 +509,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_service__host_utility__sandbox__delegate.cc b/www/chromium/files/patch-content_browser_service__host_utility__sandbox__delegate.cc index ebc613f6e870..6cda6be42080 100644 --- a/www/chromium/files/patch-content_browser_service__host_utility__sandbox__delegate.cc +++ b/www/chromium/files/patch-content_browser_service__host_utility__sandbox__delegate.cc @@ -1,57 +1,57 @@ ---- content/browser/service_host/utility_sandbox_delegate.cc.orig 2025-09-06 10:01:20 UTC +--- content/browser/service_host/utility_sandbox_delegate.cc.orig 2025-12-05 10:12:50 UTC +++ content/browser/service_host/utility_sandbox_delegate.cc -@@ -28,7 +28,7 @@ - #include "chromeos/ash/components/assistant/buildflags.h" - #endif // BUILDFLAG(IS_CHROMEOS) +@@ -24,7 +24,7 @@ + #include "sandbox/policy/sandbox_type.h" + #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "media/gpu/buildflags.h" #include "media/media_buildflags.h" #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -@@ -79,7 +79,7 @@ UtilitySandboxedProcessLauncherDelegate:: - #if BUILDFLAG(IS_FUCHSIA) +@@ -72,10 +72,10 @@ UtilitySandboxedProcessLauncherDelegate:: + sandbox_type_ == sandbox::mojom::Sandbox::kOnDeviceModelExecution || + sandbox_type_ == sandbox::mojom::Sandbox::kCdm || + sandbox_type_ == sandbox::mojom::Sandbox::kPrintCompositor || +-#if BUILDFLAG(IS_FUCHSIA) ++#if BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) sandbox_type_ == sandbox::mojom::Sandbox::kVideoCapture || #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) sandbox_type_ == sandbox::mojom::Sandbox::kShapeDetection || #if BUILDFLAG(ALLOW_OOP_VIDEO_DECODER) sandbox_type_ == sandbox::mojom::Sandbox::kHardwareVideoDecoding || -@@ -97,14 +97,14 @@ UtilitySandboxedProcessLauncherDelegate:: - #endif // BUILDFLAG(ENABLE_CROS_LIBASSISTANT) +@@ -90,11 +90,11 @@ UtilitySandboxedProcessLauncherDelegate:: + sandbox_type_ == sandbox::mojom::Sandbox::kNearby || #endif // BUILDFLAG(IS_CHROMEOS) #if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_WIN) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) sandbox_type_ == sandbox::mojom::Sandbox::kScreenAI || sandbox_type_ == sandbox::mojom::Sandbox::kPrintBackend || #endif --#if BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - sandbox_type_ == sandbox::mojom::Sandbox::kVideoEffects || - #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) sandbox_type_ == sandbox::mojom::Sandbox::kOnDeviceTranslation || #endif sandbox_type_ == sandbox::mojom::Sandbox::kAudio || -@@ -164,15 +164,15 @@ ZygoteCommunication* UtilitySandboxedProcessLauncherDe - #endif // BUILDFLAG(ENABLE_CROS_LIBASSISTANT) +@@ -151,15 +151,15 @@ ZygoteCommunication* UtilitySandboxedProcessLauncherDe + sandbox_type_ == sandbox::mojom::Sandbox::kNearby || #endif // BUILDFLAG(IS_CHROMEOS) sandbox_type_ == sandbox::mojom::Sandbox::kAudio || -#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) sandbox_type_ == sandbox::mojom::Sandbox::kShapeDetection || #endif #if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_WIN) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) sandbox_type_ == sandbox::mojom::Sandbox::kPrintBackend || sandbox_type_ == sandbox::mojom::Sandbox::kScreenAI || #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - sandbox_type_ == sandbox::mojom::Sandbox::kVideoEffects || sandbox_type_ == sandbox::mojom::Sandbox::kOnDeviceTranslation || #endif // BUILDFLAG(IS_LINUX) + sandbox_type_ == sandbox::mojom::Sandbox::kSpeechRecognition) { diff --git a/www/chromium/files/patch-content_browser_shape__detection_shape__detection__service__host.cc b/www/chromium/files/patch-content_browser_shape__detection_shape__detection__service.cc similarity index 84% rename from www/chromium/files/patch-content_browser_shape__detection_shape__detection__service__host.cc rename to www/chromium/files/patch-content_browser_shape__detection_shape__detection__service.cc index 2feabbd333dc..477bce16d25d 100644 --- a/www/chromium/files/patch-content_browser_shape__detection_shape__detection__service__host.cc +++ b/www/chromium/files/patch-content_browser_shape__detection_shape__detection__service.cc @@ -1,20 +1,20 @@ ---- content/browser/shape_detection/shape_detection_service_host.cc.orig 2025-10-02 04:28:32 UTC -+++ content/browser/shape_detection/shape_detection_service_host.cc +--- content/browser/shape_detection/shape_detection_service.cc.orig 2025-12-05 10:12:50 UTC ++++ content/browser/shape_detection/shape_detection_service.cc @@ -15,7 +15,7 @@ #endif #if BUILDFLAG(IS_WIN) || (BUILDFLAG(GOOGLE_CHROME_BRANDING) && \ - (BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX))) + (BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD))) #include "content/public/browser/service_process_host.h" #else #include "content/browser/gpu/gpu_process_host.h" @@ -29,7 +29,7 @@ shape_detection::mojom::ShapeDetectionService* GetShap remote; if (!*remote) { #if BUILDFLAG(IS_WIN) || (BUILDFLAG(GOOGLE_CHROME_BRANDING) && \ - (BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX))) + (BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD))) ServiceProcessHost::Launch( remote->BindNewPipeAndPassReceiver(), ServiceProcessHost::Options() 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 9b694c8400f5..1b529ce4abeb 100644 --- a/www/chromium/files/patch-content_browser_web__contents_web__contents__view__aura.cc +++ b/www/chromium/files/patch-content_browser_web__contents_web__contents__view__aura.cc @@ -1,29 +1,29 @@ ---- content/browser/web_contents/web_contents_view_aura.cc.orig 2025-09-06 10:01:20 UTC +--- content/browser/web_contents/web_contents_view_aura.cc.orig 2025-12-05 10:12:50 UTC +++ content/browser/web_contents/web_contents_view_aura.cc -@@ -175,7 +175,7 @@ class WebDragSourceAura : public content::WebContentsO +@@ -176,7 +176,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, -@@ -260,7 +260,7 @@ void PrepareDragData(const DropData& drop_data, +@@ -261,7 +261,7 @@ void PrepareDragData(const DropData& drop_data, if (!drop_data.download_metadata.empty()) PrepareDragForDownload(drop_data, provider, web_contents); #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) // We set the file contents before the URL because the URL also sets file // contents (to a .URL shortcut). We want to prefer file content data over // a shortcut so we add it first. -@@ -1326,7 +1326,7 @@ void WebContentsViewAura::OnMouseEvent(ui::MouseEvent* +@@ -1344,7 +1344,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 25e2154a3baa..098e2fbcde74 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 2025-10-30 15:44:36 UTC +--- content/browser/web_contents/web_contents_view_aura_unittest.cc.orig 2025-12-05 10:12:50 UTC +++ content/browser/web_contents/web_contents_view_aura_unittest.cc @@ -42,7 +42,7 @@ #include "ui/base/dragdrop/os_exchange_data_provider_win.h" #endif -#if BUILDFLAG(IS_LINUX) && BUILDFLAG(IS_OZONE_X11) +#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && BUILDFLAG(IS_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" @@ -98,7 +98,7 @@ class TestDragDropClient : public aura::client::DragDr drag_drop_data_ = std::move(data); 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 -@@ -235,7 +235,7 @@ TEST_F(WebContentsViewAuraTest, WebContentsDestroyedDu +@@ -236,7 +236,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); -@@ -301,7 +301,7 @@ TEST_F(WebContentsViewAuraTest, MAYBE_DragDropFiles) { +@@ -302,7 +302,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 || -@@ -341,7 +341,7 @@ TEST_F(WebContentsViewAuraTest, MAYBE_DragDropFiles) { +@@ -342,7 +342,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 || -@@ -399,7 +399,7 @@ TEST_F(WebContentsViewAuraTest, MAYBE_DragDropFilesOri +@@ -400,7 +400,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 || -@@ -431,7 +431,7 @@ TEST_F(WebContentsViewAuraTest, MAYBE_DragDropFilesOri +@@ -432,7 +432,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 || -@@ -462,7 +462,7 @@ TEST_F(WebContentsViewAuraTest, MAYBE_DragDropImageFro +@@ -463,7 +463,7 @@ TEST_F(WebContentsViewAuraTest, MAYBE_DragDropImageFro auto data = std::make_unique(); -#if BUILDFLAG(IS_LINUX) && BUILDFLAG(IS_OZONE_X11) +#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && BUILDFLAG(IS_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_child_BUILD.gn b/www/chromium/files/patch-content_child_BUILD.gn index 67475a951683..32ef9e219245 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 2025-04-04 08:52:13 UTC +--- content/child/BUILD.gn.orig 2025-12-05 10:12:50 UTC +++ content/child/BUILD.gn -@@ -135,6 +135,13 @@ target(link_target_type, "child") { +@@ -134,6 +134,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 e42bf05c912a..bf445c06f7b2 100644 --- a/www/chromium/files/patch-content_common_BUILD.gn +++ b/www/chromium/files/patch-content_common_BUILD.gn @@ -1,36 +1,36 @@ ---- content/common/BUILD.gn.orig 2025-09-06 10:01:20 UTC +--- content/common/BUILD.gn.orig 2025-12-05 10:12:50 UTC +++ content/common/BUILD.gn -@@ -367,19 +367,28 @@ source_set("common") { +@@ -365,19 +365,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 5874d775b706..7db108a8f18e 100644 --- a/www/chromium/files/patch-content_common_features.cc +++ b/www/chromium/files/patch-content_common_features.cc @@ -1,11 +1,11 @@ ---- content/common/features.cc.orig 2025-10-30 15:44:36 UTC +--- content/common/features.cc.orig 2025-12-05 10:12:50 UTC +++ content/common/features.cc -@@ -144,7 +144,7 @@ BASE_FEATURE(kDocumentPolicyNegotiation, base::FEATURE +@@ -171,7 +171,7 @@ BASE_FEATURE(kDocumentPolicyNegotiation, base::FEATURE 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) diff --git a/www/chromium/files/patch-content_common_features.h b/www/chromium/files/patch-content_common_features.h index d583a869cbad..0737761cf5cb 100644 --- a/www/chromium/files/patch-content_common_features.h +++ b/www/chromium/files/patch-content_common_features.h @@ -1,11 +1,11 @@ ---- content/common/features.h.orig 2025-09-06 10:01:20 UTC +--- content/common/features.h.orig 2025-12-05 10:12:50 UTC +++ content/common/features.h -@@ -60,7 +60,7 @@ CONTENT_EXPORT BASE_DECLARE_FEATURE(kCommittedOriginEn - CONTENT_EXPORT BASE_DECLARE_FEATURE(kCommittedOriginTracking); +@@ -65,7 +65,7 @@ CONTENT_EXPORT BASE_DECLARE_FEATURE(kCopyFromSurfaceAl CONTENT_EXPORT BASE_DECLARE_FEATURE(kCriticalClientHint); + CONTENT_EXPORT BASE_DECLARE_FEATURE(kDelayRfhDestructionsOnUnloadAndDetach); CONTENT_EXPORT BASE_DECLARE_FEATURE(kDocumentPolicyNegotiation); -#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); 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 a165a86ca0c7..21336c2eb155 100644 --- a/www/chromium/files/patch-content_public_browser_content__browser__client.cc +++ b/www/chromium/files/patch-content_public_browser_content__browser__client.cc @@ -1,11 +1,11 @@ ---- content/public/browser/content_browser_client.cc.orig 2025-10-30 15:44:36 UTC +--- content/public/browser/content_browser_client.cc.orig 2025-12-05 10:12:50 UTC +++ content/public/browser/content_browser_client.cc -@@ -1410,7 +1410,7 @@ bool ContentBrowserClient::ShouldRunOutOfProcessSystem +@@ -1434,7 +1434,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 8973063f8efe..17bf29b9dcc5 100644 --- a/www/chromium/files/patch-content_public_common_content__features.cc +++ b/www/chromium/files/patch-content_public_common_content__features.cc @@ -1,36 +1,36 @@ ---- content/public/common/content_features.cc.orig 2025-10-30 15:44:36 UTC +--- content/public/common/content_features.cc.orig 2025-12-05 10:12:50 UTC +++ content/public/common/content_features.cc -@@ -95,7 +95,7 @@ BASE_FEATURE(kAudioServiceLaunchOnStartup, base::FEATU +@@ -106,7 +106,7 @@ BASE_FEATURE(kAudioServiceLaunchOnStartup, base::FEATU // 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 -@@ -1152,10 +1152,10 @@ BASE_FEATURE(kWebAssemblyTiering, base::FEATURE_ENABLE +@@ -1165,10 +1165,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 -@@ -1203,7 +1203,11 @@ BASE_FEATURE(kWebUIJSErrorReportingExtended, base::FEA +@@ -1216,7 +1216,11 @@ BASE_FEATURE(kWebUIJSErrorReportingExtended, base::FEA // 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 82ad43511102..364ca6b19598 100644 --- a/www/chromium/files/patch-content_public_common_content__switches.cc +++ b/www/chromium/files/patch-content_public_common_content__switches.cc @@ -1,20 +1,20 @@ ---- content/public/common/content_switches.cc.orig 2025-10-02 04:28:32 UTC +--- content/public/common/content_switches.cc.orig 2025-12-05 10:12:50 UTC +++ content/public/common/content_switches.cc @@ -347,6 +347,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. -@@ -940,7 +942,7 @@ const char kPreventResizingContentsForTesting[] = +@@ -946,7 +948,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 43b2dca7aa9b..d9a1037529d8 100644 --- a/www/chromium/files/patch-content_public_common_content__switches.h +++ b/www/chromium/files/patch-content_public_common_content__switches.h @@ -1,19 +1,19 @@ ---- content/public/common/content_switches.h.orig 2025-10-02 04:28:32 UTC +--- content/public/common/content_switches.h.orig 2025-12-05 10:12:50 UTC +++ content/public/common/content_switches.h @@ -108,6 +108,7 @@ CONTENT_EXPORT extern const char kEnableGpuMemoryBuffe CONTENT_EXPORT extern const char kEnableIsolatedWebAppsInRenderer[]; CONTENT_EXPORT extern const char kEnableLCDText[]; CONTENT_EXPORT extern const char kEnableLogging[]; +CONTENT_EXPORT extern const char kDisableUnveil[]; CONTENT_EXPORT extern const char kEnableNetworkInformationDownlinkMax[]; CONTENT_EXPORT extern const char kEnableCanvas2DLayers[]; CONTENT_EXPORT extern const char kEnablePluginPlaceholderTesting[]; -@@ -256,7 +257,7 @@ CONTENT_EXPORT extern const char kRendererWaitForJavaD +@@ -259,7 +260,7 @@ CONTENT_EXPORT extern const char kRendererWaitForJavaD CONTENT_EXPORT extern const char kPreventResizingContentsForTesting[]; #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) CONTENT_EXPORT extern const char kEnableSpeechDispatcher[]; #endif diff --git a/www/chromium/files/patch-content_renderer_render__thread__impl.cc b/www/chromium/files/patch-content_renderer_render__thread__impl.cc index cdc5fd4abd06..50524eaf0ff6 100644 --- a/www/chromium/files/patch-content_renderer_render__thread__impl.cc +++ b/www/chromium/files/patch-content_renderer_render__thread__impl.cc @@ -1,38 +1,38 @@ ---- content/renderer/render_thread_impl.cc.orig 2025-10-30 15:44:36 UTC +--- content/renderer/render_thread_impl.cc.orig 2025-12-05 10:12:50 UTC +++ content/renderer/render_thread_impl.cc -@@ -204,6 +204,8 @@ +@@ -205,6 +205,8 @@ #if BUILDFLAG(IS_APPLE) #include +#elif BUILDFLAG(IS_BSD) +#include #else #include #endif -@@ -989,7 +991,7 @@ media::GpuVideoAcceleratorFactories* RenderThreadImpl: +@@ -981,7 +983,7 @@ media::GpuVideoAcceleratorFactories* RenderThreadImpl: /*lose_context_when_out_of_memory=*/true); const bool enable_video_decode_accelerator = -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) base::FeatureList::IsEnabled(media::kAcceleratedVideoDecodeLinux) && #endif // BUILDFLAG(IS_LINUX) !cmd_line->HasSwitch(switches::kDisableAcceleratedVideoDecode) && -@@ -998,7 +1000,7 @@ media::GpuVideoAcceleratorFactories* RenderThreadImpl: +@@ -990,7 +992,7 @@ media::GpuVideoAcceleratorFactories* RenderThreadImpl: gpu::kGpuFeatureStatusEnabled); const bool enable_video_encode_accelerator = -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) base::FeatureList::IsEnabled(media::kAcceleratedVideoEncodeLinux) && #else !cmd_line->HasSwitch(switches::kDisableAcceleratedVideoEncode) && -@@ -1760,7 +1762,7 @@ RenderThreadImpl::CreateMediaMojoCodecFactory( +@@ -1750,7 +1752,7 @@ RenderThreadImpl::CreateMediaMojoCodecFactory( bool enable_video_encode_accelerator) { mojo::PendingRemote vea_provider; -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) if (base::FeatureList::IsEnabled(media::kUseOutOfProcessVideoEncoding)) { BindHostReceiver(vea_provider.InitWithNewPipeAndPassReceiver()); } else { diff --git a/www/chromium/files/patch-content_renderer_renderer__blink__platform__impl.cc b/www/chromium/files/patch-content_renderer_renderer__blink__platform__impl.cc index 7e9eba1a3e73..f6294172d2d0 100644 --- a/www/chromium/files/patch-content_renderer_renderer__blink__platform__impl.cc +++ b/www/chromium/files/patch-content_renderer_renderer__blink__platform__impl.cc @@ -1,45 +1,45 @@ ---- content/renderer/renderer_blink_platform_impl.cc.orig 2025-10-30 15:44:36 UTC +--- content/renderer/renderer_blink_platform_impl.cc.orig 2025-12-05 10:12:50 UTC +++ content/renderer/renderer_blink_platform_impl.cc -@@ -124,7 +124,7 @@ +@@ -125,7 +125,7 @@ #if BUILDFLAG(IS_MAC) #include "content/child/child_process_sandbox_support_impl_mac.h" -#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "content/child/child_process_sandbox_support_impl_linux.h" #include "content/child/sandboxed_process_thread_type_handler.h" #endif -@@ -200,13 +200,13 @@ RendererBlinkPlatformImpl::RendererBlinkPlatformImpl( +@@ -201,13 +201,13 @@ RendererBlinkPlatformImpl::RendererBlinkPlatformImpl( is_locked_to_site_(false), main_thread_scheduler_(main_thread_scheduler), next_frame_sink_id_(uint32_t{std::numeric_limits::max()} + 1) { -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) sk_sp font_loader; #endif // RenderThread may not exist in some tests. if (RenderThreadImpl::current()) { -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) mojo::PendingRemote font_service; RenderThreadImpl::current()->BindHostReceiver( font_service.InitWithNewPipeAndPassReceiver()); -@@ -230,7 +230,7 @@ RendererBlinkPlatformImpl::RendererBlinkPlatformImpl( +@@ -231,7 +231,7 @@ RendererBlinkPlatformImpl::RendererBlinkPlatformImpl( } #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_WIN) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) if (sandboxEnabled()) { #if BUILDFLAG(IS_MAC) sandbox_support_ = std::make_unique(); -@@ -303,7 +303,7 @@ RendererBlinkPlatformImpl::GetWebUIBundledCodeCacheRes +@@ -304,7 +304,7 @@ RendererBlinkPlatformImpl::GetWebUIBundledCodeCacheRes blink::WebSandboxSupport* RendererBlinkPlatformImpl::GetSandboxSupport() { #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_WIN) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) return sandbox_support_.get(); #else // These platforms do not require sandbox support. diff --git a/www/chromium/files/patch-content_renderer_renderer__blink__platform__impl.h b/www/chromium/files/patch-content_renderer_renderer__blink__platform__impl.h index d5191361080a..59179a233c29 100644 --- a/www/chromium/files/patch-content_renderer_renderer__blink__platform__impl.h +++ b/www/chromium/files/patch-content_renderer_renderer__blink__platform__impl.h @@ -1,11 +1,11 @@ ---- content/renderer/renderer_blink_platform_impl.h.orig 2025-10-30 15:44:36 UTC +--- content/renderer/renderer_blink_platform_impl.h.orig 2025-12-05 10:12:50 UTC +++ content/renderer/renderer_blink_platform_impl.h -@@ -279,7 +279,7 @@ class CONTENT_EXPORT RendererBlinkPlatformImpl : publi +@@ -280,7 +280,7 @@ class CONTENT_EXPORT RendererBlinkPlatformImpl : publi const gpu::GPUInfo& gpu_info) const; #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_WIN) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) std::unique_ptr sandbox_support_; #endif diff --git a/www/chromium/files/patch-content_shell_BUILD.gn b/www/chromium/files/patch-content_shell_BUILD.gn index e2dd08b4e397..3bd2ddfd1970 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 2025-10-30 15:44:36 UTC +--- content/shell/BUILD.gn.orig 2025-12-05 10:12:50 UTC +++ content/shell/BUILD.gn -@@ -1098,7 +1098,7 @@ group("content_shell_crash_test") { +@@ -1103,7 +1103,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_app_shell__main__delegate.cc b/www/chromium/files/patch-content_shell_app_shell__main__delegate.cc index 36f2b9e49ba3..320b4e292e17 100644 --- a/www/chromium/files/patch-content_shell_app_shell__main__delegate.cc +++ b/www/chromium/files/patch-content_shell_app_shell__main__delegate.cc @@ -1,11 +1,11 @@ ---- content/shell/app/shell_main_delegate.cc.orig 2025-10-30 15:44:36 UTC +--- content/shell/app/shell_main_delegate.cc.orig 2025-12-05 10:12:50 UTC +++ content/shell/app/shell_main_delegate.cc -@@ -297,7 +297,7 @@ void ShellMainDelegate::PreSandboxStartup() { +@@ -299,7 +299,7 @@ void ShellMainDelegate::PreSandboxStartup() { // Reporting for sub-processes will be initialized in ZygoteForked. if (process_type != switches::kZygoteProcess) { crash_reporter::InitializeCrashpad(process_type.empty(), process_type); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) crash_reporter::SetFirstChanceExceptionHandler( v8::TryHandleWebAssemblyTrapPosix); #endif diff --git a/www/chromium/files/patch-content_utility_services.cc b/www/chromium/files/patch-content_utility_services.cc index b910d34e6540..ef14a21f9bdf 100644 --- a/www/chromium/files/patch-content_utility_services.cc +++ b/www/chromium/files/patch-content_utility_services.cc @@ -1,46 +1,46 @@ ---- content/utility/services.cc.orig 2025-10-02 04:28:32 UTC +--- content/utility/services.cc.orig 2025-12-05 10:12:50 UTC +++ content/utility/services.cc -@@ -74,14 +74,14 @@ +@@ -68,14 +68,14 @@ extern sandbox::TargetServices* g_utility_target_services; #endif // BUILDFLAG(IS_WIN) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "sandbox/linux/services/libc_interceptor.h" #include "sandbox/policy/mojom/sandbox.mojom.h" #include "sandbox/policy/sandbox_type.h" #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) #if BUILDFLAG(IS_WIN) || (BUILDFLAG(GOOGLE_CHROME_BRANDING) && \ - (BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX))) + (BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD))) #include "services/shape_detection/public/mojom/shape_detection_service.mojom.h" // nogncheck #include "services/shape_detection/shape_detection_service.h" // nogncheck #endif // BUILDFLAG(IS_WIN) || (BUILDFLAG(GOOGLE_CHROME_BRANDING) && -@@ -237,7 +237,7 @@ auto RunAudio(mojo::PendingReceiver receiver) { -@@ -436,7 +436,7 @@ void RegisterMainThreadServices(mojo::ServiceFactory& +@@ -406,7 +406,7 @@ void RegisterMainThreadServices(mojo::ServiceFactory& } #if BUILDFLAG(IS_WIN) || (BUILDFLAG(GOOGLE_CHROME_BRANDING) && \ - (BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX))) + (BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD))) services.Add(RunShapeDetectionService); #endif diff --git a/www/chromium/files/patch-content_utility_utility__main.cc b/www/chromium/files/patch-content_utility_utility__main.cc index 7502545e588c..1dcef777554e 100644 --- a/www/chromium/files/patch-content_utility_utility__main.cc +++ b/www/chromium/files/patch-content_utility_utility__main.cc @@ -1,124 +1,111 @@ ---- content/utility/utility_main.cc.orig 2025-10-02 04:28:32 UTC +--- content/utility/utility_main.cc.orig 2025-12-05 10:12:50 UTC +++ content/utility/utility_main.cc -@@ -39,17 +39,21 @@ +@@ -38,22 +38,31 @@ + #include "services/on_device_model/public/mojom/on_device_model_service.mojom.h" #include "services/tracing/public/cpp/trace_startup.h" - #include "services/video_effects/public/cpp/buildflags.h" -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "base/file_descriptor_store.h" #include "base/files/file_util.h" #include "base/pickle.h" #include "content/child/sandboxed_process_thread_type_handler.h" +#if !BUILDFLAG(IS_BSD) #include "content/common/gpu_pre_sandbox_hook_linux.h" +#endif #include "content/public/common/content_descriptor_keys.h" #include "content/utility/speech/speech_recognition_sandbox_hook_linux.h" #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" -@@ -84,7 +88,12 @@ + #include "services/shape_detection/shape_detection_sandbox_hook.h" - #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) - --#if BUILDFLAG(ENABLE_VIDEO_EFFECTS) && BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_BSD) +#include "sandbox/policy/sandbox.h" +#include "content/common/gpu_pre_sandbox_hook_bsd.h" +#endif + -+#if BUILDFLAG(ENABLE_VIDEO_EFFECTS) && (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) - #include "services/video_effects/video_effects_sandbox_hook_linux.h" // nogncheck - #endif // BUILDFLAG(IS_LINUX) - -@@ -121,7 +130,7 @@ + #if BUILDFLAG(USE_LINUX_VIDEO_ACCELERATION) + #include "gpu/config/gpu_info_collector.h" + #include "media/gpu/sandbox/hardware_video_encoding_sandbox_hook_linux.h" +@@ -111,7 +120,7 @@ sandbox::TargetServices* g_utility_target_services = nullptr; #endif // BUILDFLAG(IS_WIN) -#if BUILDFLAG(ENABLE_ON_DEVICE_TRANSLATION) && BUILDFLAG(IS_LINUX) +#if BUILDFLAG(ENABLE_ON_DEVICE_TRANSLATION) && (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) #include "components/services/on_device_translation/sandbox_hook.h" #endif // BUILDFLAG(ENABLE_ON_DEVICE_TRANSLATION) && BUILDFLAG(IS_LINUX) -@@ -129,7 +138,7 @@ namespace content { +@@ -119,7 +128,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( -@@ -285,7 +294,7 @@ int UtilityMain(MainFunctionParams parameters) { +@@ -275,7 +284,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 -@@ -300,7 +309,10 @@ int UtilityMain(MainFunctionParams parameters) { +@@ -290,7 +299,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 -@@ -332,7 +344,7 @@ int UtilityMain(MainFunctionParams parameters) { +@@ -322,7 +334,7 @@ int UtilityMain(MainFunctionParams parameters) { pre_sandbox_hook = base::BindOnce(&speech::SpeechRecognitionPreSandboxHook); break; -#if BUILDFLAG(ENABLE_ON_DEVICE_TRANSLATION) && BUILDFLAG(IS_LINUX) +#if BUILDFLAG(ENABLE_ON_DEVICE_TRANSLATION) && (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) case sandbox::mojom::Sandbox::kOnDeviceTranslation: pre_sandbox_hook = base::BindOnce( &on_device_translation::OnDeviceTranslationSandboxHook); -@@ -348,7 +360,7 @@ int UtilityMain(MainFunctionParams parameters) { +@@ -338,7 +350,7 @@ int UtilityMain(MainFunctionParams parameters) { #else NOTREACHED(); #endif --#if BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - case sandbox::mojom::Sandbox::kVideoEffects: - #if BUILDFLAG(ENABLE_VIDEO_EFFECTS) - pre_sandbox_hook = -@@ -356,7 +368,7 @@ int UtilityMain(MainFunctionParams parameters) { - #endif - break; - #endif // BUILDFLAG(IS_LINUX) -#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); -@@ -391,6 +403,7 @@ int UtilityMain(MainFunctionParams parameters) { +@@ -367,6 +379,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 = -@@ -398,6 +411,11 @@ int UtilityMain(MainFunctionParams parameters) { +@@ -374,6 +387,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_features.cc b/www/chromium/files/patch-device_fido_features.cc new file mode 100644 index 000000000000..b6635fddc3a4 --- /dev/null +++ b/www/chromium/files/patch-device_fido_features.cc @@ -0,0 +1,11 @@ +--- device/fido/features.cc.orig 2025-12-05 10:12:50 UTC ++++ device/fido/features.cc +@@ -37,7 +37,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); + #endif diff --git a/www/chromium/files/patch-device_fido_features.h b/www/chromium/files/patch-device_fido_features.h new file mode 100644 index 000000000000..537b20b95b17 --- /dev/null +++ b/www/chromium/files/patch-device_fido_features.h @@ -0,0 +1,11 @@ +--- device/fido/features.h.orig 2025-12-05 10:12:50 UTC ++++ device/fido/features.h +@@ -13,7 +13,7 @@ + namespace device { + + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_CHROMEOS) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + // Allows the passkey unlock error UI to be shown. + COMPONENT_EXPORT(DEVICE_FIDO) + BASE_DECLARE_FEATURE(kPasskeyUnlockErrorUi); diff --git a/www/chromium/files/patch-device_gamepad_gamepad__provider.cc b/www/chromium/files/patch-device_gamepad_gamepad__provider.cc index e512d0e6a804..18a36551215d 100644 --- a/www/chromium/files/patch-device_gamepad_gamepad__provider.cc +++ b/www/chromium/files/patch-device_gamepad_gamepad__provider.cc @@ -1,11 +1,11 @@ ---- device/gamepad/gamepad_provider.cc.orig 2025-10-30 15:44:36 UTC +--- device/gamepad/gamepad_provider.cc.orig 2025-12-05 10:12:50 UTC +++ device/gamepad/gamepad_provider.cc -@@ -160,7 +160,7 @@ void GamepadProvider::Initialize(std::unique_ptr("Gamepad polling thread"); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // On Linux, the data fetcher needs to watch file descriptors, so the message // loop needs to be a libevent loop. const base::MessagePumpType kMessageLoopType = base::MessagePumpType::IO; 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 b1d5aea8093d..2542de30ab2a 100644 --- a/www/chromium/files/patch-extensions_common_api___permission__features.json +++ b/www/chromium/files/patch-extensions_common_api___permission__features.json @@ -1,187 +1,187 @@ ---- extensions/common/api/_permission_features.json.orig 2025-10-30 15:44:36 UTC +--- extensions/common/api/_permission_features.json.orig 2025-12-05 10:12:50 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", @@ -77,7 +77,7 @@ "channel": "stable", "extension_types": ["platform_app"], // "desktop_android" is not supported. - "platforms": ["chromeos", "linux", "mac", "win"] + "platforms": ["chromeos", "linux", "mac", "win", "openbsd", "freebsd"] }, "audio": [ { @@ -98,13 +98,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", @@ -142,7 +142,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 @@ -217,7 +217,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", @@ -266,7 +266,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 @@ -288,12 +288,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 @@ -330,13 +330,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 -@@ -490,7 +490,7 @@ +@@ -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. -@@ -570,7 +570,7 @@ +@@ -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. -@@ -582,13 +582,13 @@ +@@ -576,13 +576,13 @@ "channel": "stable", "extension_types": ["platform_app"], // "desktop_android" is not supported. - "platforms": ["chromeos", "linux", "mac", "win"] + "platforms": ["chromeos", "linux", "mac", "win", "openbsd", "freebsd"] }, "socket": { "channel": "stable", "extension_types": ["platform_app"], // "desktop_android" is not supported. - "platforms": ["chromeos", "linux", "mac", "win"] + "platforms": ["chromeos", "linux", "mac", "win", "openbsd", "freebsd"] }, "storage": [ { -@@ -678,13 +678,13 @@ +@@ -672,13 +672,13 @@ "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"] }, { "channel": "stable", "extension_types": ["hosted_app"], // "desktop_android" is not supported. - "platforms": ["chromeos", "linux", "mac", "win"], + "platforms": ["chromeos", "linux", "mac", "win", "openbsd", "freebsd"], "allowlist": ["B44D08FD98F1523ED5837D78D0A606EA9D6206E5"] // Web Store } ], -@@ -693,13 +693,13 @@ +@@ -687,13 +687,13 @@ "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"] }, { "channel": "stable", "extension_types": ["hosted_app"], // "desktop_android" is not supported. - "platforms": ["chromeos", "linux", "mac", "win"], + "platforms": ["chromeos", "linux", "mac", "win", "openbsd", "freebsd"], "allowlist": ["B44D08FD98F1523ED5837D78D0A606EA9D6206E5"] // Web Store } ], -@@ -727,7 +727,7 @@ - "channel": "stable", - "extension_types": ["platform_app"], - // "desktop_android" is not supported. -- "platforms": ["chromeos", "linux", "mac", "win"] -+ "platforms": ["chromeos", "linux", "mac", "win", "openbsd", "freebsd"] - }, +@@ -720,7 +720,7 @@ + "channel": "stable", + "extension_types": ["platform_app"], + // "desktop_android" is not supported. +- "platforms": ["chromeos", "linux", "mac", "win"] ++ "platforms": ["chromeos", "linux", "mac", "win", "openbsd", "freebsd"] + }, + "usbDevices": [ { - "channel": "dev", -@@ -813,7 +813,7 @@ +@@ -788,7 +788,7 @@ "channel": "stable", "extension_types": ["platform_app"], // "desktop_android" is not supported. - "platforms": ["chromeos", "linux", "mac", "win"] + "platforms": ["chromeos", "linux", "mac", "win", "openbsd", "freebsd"] }, "webRequest": [ { diff --git a/www/chromium/files/patch-gpu_command__buffer_client_test__shared__image__interface.cc b/www/chromium/files/patch-gpu_command__buffer_client_test__shared__image__interface.cc index 4a431da9ba3d..44228fa71a64 100644 --- a/www/chromium/files/patch-gpu_command__buffer_client_test__shared__image__interface.cc +++ b/www/chromium/files/patch-gpu_command__buffer_client_test__shared__image__interface.cc @@ -1,20 +1,20 @@ ---- gpu/command_buffer/client/test_shared_image_interface.cc.orig 2025-09-06 10:01:20 UTC +--- gpu/command_buffer/client/test_shared_image_interface.cc.orig 2025-12-05 10:12:50 UTC +++ gpu/command_buffer/client/test_shared_image_interface.cc -@@ -30,7 +30,7 @@ +@@ -29,7 +29,7 @@ #include "ui/gfx/gpu_fence.h" #include "ui/gfx/gpu_memory_buffer_handle.h" -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include #endif @@ -154,7 +154,7 @@ TestSharedImageInterface::TestSharedImageInterface() { TestSharedImageInterface::~TestSharedImageInterface() = default; // static -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) gfx::GpuMemoryBufferHandle TestSharedImageInterface::CreatePixmapHandle( const gfx::Size& size, - gfx::BufferFormat format) { + viz::SharedImageFormat format) { 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 cd39cec16010..56e04e8065ef 100644 --- a/www/chromium/files/patch-gpu_command__buffer_service_gles2__cmd__decoder.cc +++ b/www/chromium/files/patch-gpu_command__buffer_service_gles2__cmd__decoder.cc @@ -1,11 +1,11 @@ ---- gpu/command_buffer/service/gles2_cmd_decoder.cc.orig 2025-10-30 15:44:36 UTC +--- gpu/command_buffer/service/gles2_cmd_decoder.cc.orig 2025-12-05 10:12:50 UTC +++ gpu/command_buffer/service/gles2_cmd_decoder.cc -@@ -2851,7 +2851,7 @@ std::unique_ptr GLES2Decoder::Create( +@@ -2850,7 +2850,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.h b/www/chromium/files/patch-gpu_command__buffer_service_shared__context__state.h index fa3c96cafdc2..6283ea563517 100644 --- a/www/chromium/files/patch-gpu_command__buffer_service_shared__context__state.h +++ b/www/chromium/files/patch-gpu_command__buffer_service_shared__context__state.h @@ -1,20 +1,20 @@ ---- gpu/command_buffer/service/shared_context_state.h.orig 2025-09-06 10:01:20 UTC +--- gpu/command_buffer/service/shared_context_state.h.orig 2025-12-05 10:12:50 UTC +++ gpu/command_buffer/service/shared_context_state.h -@@ -236,7 +236,7 @@ class GPU_GLES2_EXPORT SharedContextState +@@ -235,7 +235,7 @@ class GPU_GLES2_EXPORT SharedContextState return &memory_type_tracker_; } #if BUILDFLAG(ENABLE_VULKAN) && \ - (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_WIN)) + (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD)) ExternalSemaphorePool* external_semaphore_pool() { return external_semaphore_pool_.get(); } -@@ -401,7 +401,7 @@ class GPU_GLES2_EXPORT SharedContextState +@@ -400,7 +400,7 @@ class GPU_GLES2_EXPORT SharedContextState bool disable_check_reset_status_throttling_for_test_ = false; #if BUILDFLAG(ENABLE_VULKAN) && \ - (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_WIN)) + (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD)) std::unique_ptr external_semaphore_pool_; #endif diff --git a/www/chromium/files/patch-gpu_command__buffer_service_shared__image_angle__vulkan__image__backing__factory.cc b/www/chromium/files/patch-gpu_command__buffer_service_shared__image_angle__vulkan__image__backing__factory.cc index 8bdd24b1dd24..49801f5a9281 100644 --- a/www/chromium/files/patch-gpu_command__buffer_service_shared__image_angle__vulkan__image__backing__factory.cc +++ b/www/chromium/files/patch-gpu_command__buffer_service_shared__image_angle__vulkan__image__backing__factory.cc @@ -1,20 +1,20 @@ ---- gpu/command_buffer/service/shared_image/angle_vulkan_image_backing_factory.cc.orig 2025-05-05 10:57:53 UTC +--- gpu/command_buffer/service/shared_image/angle_vulkan_image_backing_factory.cc.orig 2025-12-05 10:12:50 UTC +++ gpu/command_buffer/service/shared_image/angle_vulkan_image_backing_factory.cc @@ -20,7 +20,7 @@ namespace { // TODO(penghuang): verify the scanout is the right usage for video playback. // crbug.com/1280798 constexpr SharedImageUsageSet kSupportedUsage = -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) SHARED_IMAGE_USAGE_SCANOUT | #endif SHARED_IMAGE_USAGE_GLES2_READ | SHARED_IMAGE_USAGE_GLES2_WRITE | -@@ -121,7 +121,7 @@ bool AngleVulkanImageBackingFactory::IsGMBSupported( +@@ -119,7 +119,7 @@ bool AngleVulkanImageBackingFactory::IsGMBSupported( switch (gmb_type) { case gfx::EMPTY_BUFFER: return true; -#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: { auto* vulkan_implementation = context_state_->vk_context_provider()->GetVulkanImplementation(); diff --git a/www/chromium/files/patch-gpu_command__buffer_service_shared__image_external__vk__image__backing.cc b/www/chromium/files/patch-gpu_command__buffer_service_shared__image_external__vk__image__backing.cc index 9b086026e4f1..d7d425ee7550 100644 --- a/www/chromium/files/patch-gpu_command__buffer_service_shared__image_external__vk__image__backing.cc +++ b/www/chromium/files/patch-gpu_command__buffer_service_shared__image_external__vk__image__backing.cc @@ -1,20 +1,20 @@ ---- gpu/command_buffer/service/shared_image/external_vk_image_backing.cc.orig 2025-10-02 04:28:32 UTC +--- gpu/command_buffer/service/shared_image/external_vk_image_backing.cc.orig 2025-12-05 10:12:50 UTC +++ gpu/command_buffer/service/shared_image/external_vk_image_backing.cc -@@ -58,7 +58,7 @@ +@@ -57,7 +57,7 @@ #include "ui/gl/gl_version_info.h" #include "ui/gl/scoped_binders.h" -#if BUILDFLAG(IS_LINUX) && BUILDFLAG(USE_DAWN) +#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && BUILDFLAG(USE_DAWN) #include "gpu/command_buffer/service/shared_image/external_vk_image_dawn_representation.h" #if BUILDFLAG(DAWN_ENABLE_BACKEND_OPENGLES) #include "gpu/command_buffer/service/shared_image/dawn_gl_texture_representation.h" @@ -708,7 +708,7 @@ std::unique_ptr ExternalVkIma wgpu::BackendType backend_type, std::vector view_formats, scoped_refptr context_state) { -#if BUILDFLAG(IS_LINUX) && BUILDFLAG(USE_DAWN) +#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && BUILDFLAG(USE_DAWN) auto wgpu_format = ToDawnFormat(format()); if (wgpu_format == wgpu::TextureFormat::Undefined) { diff --git a/www/chromium/files/patch-gpu_command__buffer_service_shared__image_external__vk__image__backing__factory.cc b/www/chromium/files/patch-gpu_command__buffer_service_shared__image_external__vk__image__backing__factory.cc index 9f59e2184d48..a849c15e43f7 100644 --- a/www/chromium/files/patch-gpu_command__buffer_service_shared__image_external__vk__image__backing__factory.cc +++ b/www/chromium/files/patch-gpu_command__buffer_service_shared__image_external__vk__image__backing__factory.cc @@ -1,11 +1,11 @@ ---- gpu/command_buffer/service/shared_image/external_vk_image_backing_factory.cc.orig 2025-07-02 06:08:04 UTC +--- gpu/command_buffer/service/shared_image/external_vk_image_backing_factory.cc.orig 2025-12-05 10:12:50 UTC +++ gpu/command_buffer/service/shared_image/external_vk_image_backing_factory.cc -@@ -140,7 +140,7 @@ bool IsFormatSupported(viz::SharedImageFormat format, +@@ -139,7 +139,7 @@ bool IsFormatSupported(viz::SharedImageFormat format, SharedImageUsageSet SupportedUsage() { SharedImageUsageSet supported_usage = -#if BUILDFLAG(IS_LINUX) && BUILDFLAG(USE_DAWN) +#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && BUILDFLAG(USE_DAWN) SHARED_IMAGE_USAGE_WEBGPU_READ | SHARED_IMAGE_USAGE_WEBGPU_WRITE | SHARED_IMAGE_USAGE_WEBGPU_SWAP_CHAIN_TEXTURE | SHARED_IMAGE_USAGE_WEBGPU_STORAGE_TEXTURE | diff --git a/www/chromium/files/patch-gpu_command__buffer_service_shared__image_gpu__memory__buffer__factory.cc b/www/chromium/files/patch-gpu_command__buffer_service_shared__image_gpu__memory__buffer__factory.cc deleted file mode 100644 index 7786f78b3307..000000000000 --- a/www/chromium/files/patch-gpu_command__buffer_service_shared__image_gpu__memory__buffer__factory.cc +++ /dev/null @@ -1,20 +0,0 @@ ---- gpu/command_buffer/service/shared_image/gpu_memory_buffer_factory.cc.orig 2025-10-30 15:44:36 UTC -+++ gpu/command_buffer/service/shared_image/gpu_memory_buffer_factory.cc -@@ -14,7 +14,7 @@ - #include "gpu/command_buffer/service/shared_image/gpu_memory_buffer_factory_io_surface.h" - #endif - --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) - #include "gpu/command_buffer/service/shared_image/gpu_memory_buffer_factory_native_pixmap.h" - #endif - -@@ -36,7 +36,7 @@ GpuMemoryBufferFactory::CreateNativeType( - // AHardwareBuffers), but the codebase is structured such that it is easier - // to create a dummy factory than create no factory. - return std::make_unique(); --#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) -+#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) - return std::make_unique( - vulkan_context_provider); - #elif BUILDFLAG(IS_WIN) 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 aaa6f03658c8..fe8dbd75dc07 100644 --- a/www/chromium/files/patch-gpu_command__buffer_service_shared__image_shared__image__factory.cc +++ b/www/chromium/files/patch-gpu_command__buffer_service_shared__image_shared__image__factory.cc @@ -1,38 +1,38 @@ ---- gpu/command_buffer/service/shared_image/shared_image_factory.cc.orig 2025-10-30 15:44:36 UTC +--- gpu/command_buffer/service/shared_image/shared_image_factory.cc.orig 2025-12-05 10:12:50 UTC +++ gpu/command_buffer/service/shared_image/shared_image_factory.cc -@@ -54,7 +54,7 @@ +@@ -52,7 +52,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 -@@ -112,7 +112,7 @@ const char* GmbTypeToString(gfx::GpuMemoryBufferType t +@@ -109,7 +109,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 -@@ -133,7 +133,7 @@ gfx::GpuMemoryBufferType GetNativeBufferType() { +@@ -130,7 +130,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; -@@ -318,7 +318,7 @@ SharedImageFactory::SharedImageFactory( +@@ -316,7 +316,7 @@ SharedImageFactory::SharedImageFactory( context_state_, workarounds_); factories_.push_back(std::move(ozone_factory)); } -#if BUILDFLAG(ENABLE_VULKAN) && (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_FUCHSIA)) +#if BUILDFLAG(ENABLE_VULKAN) && (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD)) if (gr_context_type_ == GrContextType::kVulkan) { auto external_vk_image_factory = std::make_unique(context_state_); diff --git a/www/chromium/files/patch-gpu_command__buffer_service_shared__image_shared__image__manager.cc b/www/chromium/files/patch-gpu_command__buffer_service_shared__image_shared__image__manager.cc index 67275d2dccaf..e51c918cc5e0 100644 --- a/www/chromium/files/patch-gpu_command__buffer_service_shared__image_shared__image__manager.cc +++ b/www/chromium/files/patch-gpu_command__buffer_service_shared__image_shared__image__manager.cc @@ -1,11 +1,11 @@ ---- gpu/command_buffer/service/shared_image/shared_image_manager.cc.orig 2025-10-30 15:44:36 UTC +--- gpu/command_buffer/service/shared_image/shared_image_manager.cc.orig 2025-12-05 10:12:50 UTC +++ gpu/command_buffer/service/shared_image/shared_image_manager.cc -@@ -765,7 +765,7 @@ bool SharedImageManager::SupportsScanoutImages() { +@@ -769,7 +769,7 @@ bool SharedImageManager::SupportsScanoutImages() { return true; #elif BUILDFLAG(IS_ANDROID) - return base::AndroidHardwareBufferCompat::IsSupportAvailable(); + return true; -#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) return supports_overlays_on_ozone_; #elif BUILDFLAG(IS_WIN) return gl::DirectCompositionTextureSupported(); 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 9a0260268406..699f049e116f 100644 --- a/www/chromium/files/patch-gpu_command__buffer_service_webgpu__decoder__impl.cc +++ b/www/chromium/files/patch-gpu_command__buffer_service_webgpu__decoder__impl.cc @@ -1,20 +1,20 @@ ---- gpu/command_buffer/service/webgpu_decoder_impl.cc.orig 2025-10-02 04:28:32 UTC +--- gpu/command_buffer/service/webgpu_decoder_impl.cc.orig 2025-12-05 10:12:50 UTC +++ gpu/command_buffer/service/webgpu_decoder_impl.cc -@@ -1747,7 +1747,7 @@ wgpu::Adapter WebGPUDecoderImpl::CreatePreferredAdapte +@@ -1758,7 +1758,7 @@ wgpu::Adapter WebGPUDecoderImpl::CreatePreferredAdapte backend_types = {wgpu::BackendType::D3D12}; #elif BUILDFLAG(IS_APPLE) backend_types = {wgpu::BackendType::Metal}; -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (shared_context_state_->GrContextIsVulkan() || shared_context_state_->IsGraphiteDawnVulkan()) { backend_types = {wgpu::BackendType::Vulkan}; -@@ -1992,7 +1992,7 @@ WebGPUDecoderImpl::AssociateMailboxDawn( +@@ -2003,7 +2003,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__info__collector.cc b/www/chromium/files/patch-gpu_config_gpu__info__collector.cc index 6486f0c63cec..d8d688a3b413 100644 --- a/www/chromium/files/patch-gpu_config_gpu__info__collector.cc +++ b/www/chromium/files/patch-gpu_config_gpu__info__collector.cc @@ -1,11 +1,11 @@ ---- gpu/config/gpu_info_collector.cc.orig 2025-10-30 15:44:36 UTC +--- gpu/config/gpu_info_collector.cc.orig 2025-12-05 10:12:50 UTC +++ gpu/config/gpu_info_collector.cc -@@ -363,7 +363,7 @@ void ReportWebGPUAdapterMetrics(dawn::native::Instance +@@ -362,7 +362,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 7ec6893236eb..f49ebdb915fb 100644 --- a/www/chromium/files/patch-gpu_ipc_service_gpu__init.cc +++ b/www/chromium/files/patch-gpu_ipc_service_gpu__init.cc @@ -1,83 +1,83 @@ ---- gpu/ipc/service/gpu_init.cc.orig 2025-09-06 10:01:20 UTC +--- gpu/ipc/service/gpu_init.cc.orig 2025-12-05 10:12:50 UTC +++ gpu/ipc/service/gpu_init.cc -@@ -155,7 +155,7 @@ void InitializePlatformOverlaySettings(GPUInfo* gpu_in +@@ -156,7 +156,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; -@@ -417,7 +417,7 @@ bool GpuInit::InitializeAndStartSandbox(base::CommandL +@@ -418,7 +418,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 -@@ -455,7 +455,7 @@ bool GpuInit::InitializeAndStartSandbox(base::CommandL +@@ -456,7 +456,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. -@@ -552,7 +552,7 @@ bool GpuInit::InitializeAndStartSandbox(base::CommandL +@@ -553,7 +553,7 @@ bool GpuInit::InitializeAndStartSandbox(base::CommandL gpu_preferences_.gr_context_type = GrContextType::kGL; } -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // The ContentSandboxHelper is currently the only one implementation of // GpuSandboxHelper and it has no dependency. Except on Linux where // VaapiWrapper checks the GL implementation to determine which display -@@ -610,7 +610,7 @@ bool GpuInit::InitializeAndStartSandbox(base::CommandL +@@ -611,7 +611,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; -@@ -778,7 +778,7 @@ bool GpuInit::InitializeAndStartSandbox(base::CommandL +@@ -779,7 +779,7 @@ bool GpuInit::InitializeAndStartSandbox(base::CommandL ->GetSupportedFormatsForGLNativePixmapImport(); #endif // BUILDFLAG(IS_OZONE) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Driver may create a compatibility profile context when collect graphics // information on Linux platform. Try to collect graphics information // based on core profile context after disabling platform extensions. -@@ -830,7 +830,7 @@ bool GpuInit::InitializeAndStartSandbox(base::CommandL +@@ -831,7 +831,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 -@@ -1032,7 +1032,7 @@ void GpuInit::InitializeInProcess(base::CommandLine* c +@@ -1033,7 +1033,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 -@@ -1088,7 +1088,7 @@ void GpuInit::InitializeInProcess(base::CommandLine* c +@@ -1089,7 +1089,7 @@ void GpuInit::InitializeInProcess(base::CommandLine* c } } -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Driver may create a compatibility profile context when collect graphics // information on Linux platform. Try to collect graphics information // based on core profile context after disabling platform extensions. diff --git a/www/chromium/files/patch-gpu_vulkan_vulkan__util.cc b/www/chromium/files/patch-gpu_vulkan_vulkan__util.cc index d1d7909d4dda..8a5334acef94 100644 --- a/www/chromium/files/patch-gpu_vulkan_vulkan__util.cc +++ b/www/chromium/files/patch-gpu_vulkan_vulkan__util.cc @@ -1,11 +1,11 @@ ---- gpu/vulkan/vulkan_util.cc.orig 2025-10-02 04:28:32 UTC +--- gpu/vulkan/vulkan_util.cc.orig 2025-12-05 10:12:50 UTC +++ gpu/vulkan/vulkan_util.cc -@@ -481,7 +481,7 @@ bool CheckVulkanCompatibilities( +@@ -474,7 +474,7 @@ bool CheckVulkanCompatibilities( } } -#if BUILDFLAG(IS_LINUX) && !defined(OZONE_PLATFORM_IS_X11) +#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && !defined(OZONE_PLATFORM_IS_X11) // Vulkan is only supported with X11 on Linux for now. return false; #else diff --git a/www/chromium/files/patch-headless_BUILD.gn b/www/chromium/files/patch-headless_BUILD.gn index ae3acad64e64..76ef5a9689cd 100644 --- a/www/chromium/files/patch-headless_BUILD.gn +++ b/www/chromium/files/patch-headless_BUILD.gn @@ -1,11 +1,11 @@ ---- headless/BUILD.gn.orig 2025-10-02 04:28:32 UTC +--- headless/BUILD.gn.orig 2025-12-05 10:12:50 UTC +++ headless/BUILD.gn -@@ -483,7 +483,7 @@ component("headless_non_renderer") { +@@ -489,7 +489,7 @@ component("headless_non_renderer") { } } - if (!is_fuchsia) { + if (!is_fuchsia && !is_bsd) { deps += [ "//components/crash/content/browser", "//components/crash/core/app", diff --git a/www/chromium/files/patch-headless_lib_browser_headless__browser__impl.cc b/www/chromium/files/patch-headless_lib_browser_headless__browser__impl.cc new file mode 100644 index 000000000000..64821899dcb2 --- /dev/null +++ b/www/chromium/files/patch-headless_lib_browser_headless__browser__impl.cc @@ -0,0 +1,20 @@ +--- headless/lib/browser/headless_browser_impl.cc.orig 2025-12-05 10:12:50 UTC ++++ headless/lib/browser/headless_browser_impl.cc +@@ -40,7 +40,7 @@ + #include "components/os_crypt/async/browser/keychain_key_provider.h" + #endif + +-#if BUILDFLAG(IS_LINUX) && BUILDFLAG(USE_DBUS) ++#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && BUILDFLAG(USE_DBUS) + #include "base/command_line.h" + #include "components/os_crypt/async/browser/freedesktop_secret_key_provider.h" + #include "components/password_manager/core/browser/password_manager_switches.h" // nogncheck +@@ -413,7 +413,7 @@ void HeadlessBrowserImpl::CreateOSCryptAsync() { + providers.emplace_back(std::make_pair( + /*precedence=*/10u, + std::make_unique())); +-#elif BUILDFLAG(IS_LINUX) && BUILDFLAG(USE_DBUS) ++#elif (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); diff --git a/www/chromium/files/patch-headless_lib_browser_headless__content__browser__client.cc b/www/chromium/files/patch-headless_lib_browser_headless__content__browser__client.cc index 7cd7c023e54b..64f42ccf0c4a 100644 --- a/www/chromium/files/patch-headless_lib_browser_headless__content__browser__client.cc +++ b/www/chromium/files/patch-headless_lib_browser_headless__content__browser__client.cc @@ -1,20 +1,20 @@ ---- headless/lib/browser/headless_content_browser_client.cc.orig 2025-07-02 06:08:04 UTC +--- headless/lib/browser/headless_content_browser_client.cc.orig 2025-12-05 10:12:50 UTC +++ headless/lib/browser/headless_content_browser_client.cc -@@ -59,7 +59,7 @@ +@@ -61,7 +61,7 @@ #include "content/public/common/content_descriptors.h" #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -#if (BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX)) && defined(HEADLESS_USE_PREFS) +#if (BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && defined(HEADLESS_USE_PREFS) #include "components/os_crypt/sync/os_crypt.h" // nogncheck #include "content/public/browser/network_service_util.h" #endif -@@ -557,7 +557,7 @@ void HeadlessContentBrowserClient::HandleExplicitlyAll +@@ -569,7 +569,7 @@ void HeadlessContentBrowserClient::HandleExplicitlyAll void HeadlessContentBrowserClient::SetEncryptionKey( ::network::mojom::NetworkService* network_service) { -#if (BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX)) && defined(HEADLESS_USE_PREFS) +#if (BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && defined(HEADLESS_USE_PREFS) // The OSCrypt keys are process bound, so if network service is out of // process, send it the required key if it is available. if (content::IsOutOfProcessNetworkService() diff --git a/www/chromium/files/patch-headless_lib_browser_headless__web__contents__impl.cc b/www/chromium/files/patch-headless_lib_browser_headless__web__contents__impl.cc index 509f119cf966..82761b3a7c69 100644 --- a/www/chromium/files/patch-headless_lib_browser_headless__web__contents__impl.cc +++ b/www/chromium/files/patch-headless_lib_browser_headless__web__contents__impl.cc @@ -1,11 +1,11 @@ ---- headless/lib/browser/headless_web_contents_impl.cc.orig 2025-10-30 15:44:36 UTC +--- headless/lib/browser/headless_web_contents_impl.cc.orig 2025-12-05 10:12:50 UTC +++ headless/lib/browser/headless_web_contents_impl.cc -@@ -69,7 +69,7 @@ BASE_FEATURE(kPrerender2InHeadlessMode, base::FEATURE_ +@@ -71,7 +71,7 @@ BASE_FEATURE(kPrerender2InHeadlessMode, base::FEATURE_ namespace { void UpdatePrefsFromSystemSettings(blink::RendererPreferences* prefs) { -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) content::UpdateFontRendererPreferencesFromSystemSettings(prefs); #endif diff --git a/www/chromium/files/patch-ipc_ipc__channel.cc b/www/chromium/files/patch-ipc_ipc__channel.cc index d2976060d4d0..c52eea11740b 100644 --- a/www/chromium/files/patch-ipc_ipc__channel.cc +++ b/www/chromium/files/patch-ipc_ipc__channel.cc @@ -1,20 +1,29 @@ ---- ipc/ipc_channel.cc.orig 2025-10-30 15:44:36 UTC +--- ipc/ipc_channel.cc.orig 2025-12-05 10:12:50 UTC +++ ipc/ipc_channel.cc -@@ -22,7 +22,7 @@ namespace { +@@ -41,7 +41,7 @@ namespace { // Global atomic used to guarantee channel IDs are unique. base::AtomicSequenceNumber g_last_id; -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) int g_global_pid = 0; -@@ -60,7 +60,7 @@ std::string Channel::GenerateUniqueRandomChannelID() { +@@ -83,7 +83,7 @@ class ThreadSafeChannelProxy : public mojo::ThreadSafe + }; + + base::ProcessId GetSelfPID() { +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + if (int global_pid = Channel::GetGlobalPid()) { + return global_pid; + } +@@ -123,7 +123,7 @@ std::string Channel::GenerateUniqueRandomChannelID() { base::RandInt(0, std::numeric_limits::max())); } -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // static void Channel::SetGlobalPid(int pid) { g_global_pid = pid; diff --git a/www/chromium/files/patch-ipc_ipc__channel.h b/www/chromium/files/patch-ipc_ipc__channel.h index 9b99fb612cd8..78609233b191 100644 --- a/www/chromium/files/patch-ipc_ipc__channel.h +++ b/www/chromium/files/patch-ipc_ipc__channel.h @@ -1,11 +1,11 @@ ---- ipc/ipc_channel.h.orig 2025-10-30 15:44:36 UTC +--- ipc/ipc_channel.h.orig 2025-12-05 10:12:50 UTC +++ ipc/ipc_channel.h -@@ -206,7 +206,7 @@ class COMPONENT_EXPORT(IPC) Channel : public Sender { +@@ -201,7 +201,7 @@ class COMPONENT_EXPORT(IPC) Channel final // Generates a channel ID that's non-predictable and unique. static std::string GenerateUniqueRandomChannelID(); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Sandboxed processes live in a PID namespace, so when sending the IPC hello // message from client to server we need to send the PID from the global // PID namespace. diff --git a/www/chromium/files/patch-ipc_ipc__channel__mojo.cc b/www/chromium/files/patch-ipc_ipc__channel__mojo.cc deleted file mode 100644 index 447a81768c0a..000000000000 --- a/www/chromium/files/patch-ipc_ipc__channel__mojo.cc +++ /dev/null @@ -1,11 +0,0 @@ ---- ipc/ipc_channel_mojo.cc.orig 2025-10-30 15:44:36 UTC -+++ ipc/ipc_channel_mojo.cc -@@ -72,7 +72,7 @@ class ThreadSafeChannelProxy : public mojo::ThreadSafe - }; - - base::ProcessId GetSelfPID() { --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - if (int global_pid = Channel::GetGlobalPid()) - return global_pid; - #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) diff --git a/www/chromium/files/patch-ipc_ipc__message__utils.h b/www/chromium/files/patch-ipc_param__traits__utils.h similarity index 76% rename from www/chromium/files/patch-ipc_ipc__message__utils.h rename to www/chromium/files/patch-ipc_param__traits__utils.h index 59710005b6a7..8c9e6b665473 100644 --- a/www/chromium/files/patch-ipc_ipc__message__utils.h +++ b/www/chromium/files/patch-ipc_param__traits__utils.h @@ -1,11 +1,11 @@ ---- ipc/ipc_message_utils.h.orig 2025-10-30 15:44:36 UTC -+++ ipc/ipc_message_utils.h -@@ -178,7 +178,7 @@ struct ParamTraits { +--- ipc/param_traits_utils.h.orig 2025-12-05 10:12:50 UTC ++++ ipc/param_traits_utils.h +@@ -177,7 +177,7 @@ struct ParamTraits { // Since we want to support Android 32<>64 bit IPC, as long as we don't have // these traits for 32 bit ARM then that'll catch any errors. #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ - BUILDFLAG(IS_FUCHSIA) || \ + BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) || \ (BUILDFLAG(IS_ANDROID) && defined(ARCH_CPU_64_BITS)) template <> struct ParamTraits { diff --git a/www/chromium/files/patch-media_base_media__switches.cc b/www/chromium/files/patch-media_base_media__switches.cc index 6e722f4a5252..36b497a90ce0 100644 --- a/www/chromium/files/patch-media_base_media__switches.cc +++ b/www/chromium/files/patch-media_base_media__switches.cc @@ -1,120 +1,120 @@ ---- media/base/media_switches.cc.orig 2025-10-30 15:44:36 UTC +--- media/base/media_switches.cc.orig 2025-12-05 10:12:50 UTC +++ media/base/media_switches.cc @@ -19,7 +19,7 @@ #include "ui/gl/gl_features.h" #include "ui/gl/gl_utils.h" -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "base/cpu.h" #endif -@@ -368,13 +368,35 @@ BASE_FEATURE(kMacCatapLoopbackAudioForScreenShare, +@@ -367,13 +367,35 @@ BASE_FEATURE(kMacCatapLoopbackAudioForScreenShare, BASE_FEATURE(kUseSCContentSharingPicker, base::FEATURE_DISABLED_BY_DEFAULT); #endif // BUILDFLAG(IS_MAC) -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Enables system audio mirroring using pulseaudio. BASE_FEATURE(kPulseaudioLoopbackForCast, 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 -@@ -626,7 +648,7 @@ BASE_FEATURE(kFileDialogsTuckPictureInPicture, +@@ -614,7 +636,7 @@ BASE_FEATURE(kFileDialogsTuckPictureInPicture, // Show toolbar button that opens dialog for controlling media sessions. BASE_FEATURE(kGlobalMediaControls, -#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 -@@ -644,7 +666,7 @@ BASE_FEATURE(kGlobalMediaControlsUpdatedUI, base::FEAT +@@ -632,7 +654,7 @@ BASE_FEATURE(kGlobalMediaControlsUpdatedUI, base::FEAT #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 -@@ -655,7 +677,7 @@ BASE_FEATURE(kMediaRemotingWithoutFullscreen, +@@ -643,7 +665,7 @@ BASE_FEATURE(kMediaRemotingWithoutFullscreen, // Show picture-in-picture button in Global Media Controls. BASE_FEATURE(kGlobalMediaControlsPictureInPicture, #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 -@@ -677,7 +699,7 @@ BASE_FEATURE(kSuspendMediaForFrozenFrames, base::FEATU +@@ -665,7 +687,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. BASE_FEATURE(kAcceleratedVideoDecodeLinux, -@@ -733,7 +755,7 @@ BASE_FEATURE(kVaapiVp9SModeHWEncoding, base::FEATURE_E +@@ -721,7 +743,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); -@@ -1235,7 +1257,7 @@ BASE_FEATURE(kUseOutOfProcessVideoDecoding, - ); +@@ -1220,7 +1242,7 @@ BASE_FEATURE(kUseOutOfProcessVideoDecoding, + BASE_FEATURE(kUseSharedImageInOOPVDProcess, base::FEATURE_DISABLED_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); -@@ -1297,7 +1319,7 @@ BASE_FEATURE(kRecordMediaEngagementScores, base::FEATU +@@ -1282,7 +1304,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. -@@ -1565,7 +1587,7 @@ bool IsSystemLoopbackCaptureSupported() { +@@ -1545,7 +1567,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 f55f1b3bfed6..323661bf9bc8 100644 --- a/www/chromium/files/patch-media_base_media__switches.h +++ b/www/chromium/files/patch-media_base_media__switches.h @@ -1,57 +1,57 @@ ---- media/base/media_switches.h.orig 2025-10-30 15:44:36 UTC +--- media/base/media_switches.h.orig 2025-12-05 10:12:50 UTC +++ media/base/media_switches.h -@@ -342,13 +342,25 @@ MEDIA_EXPORT BASE_DECLARE_FEATURE(kMediaRecorderHEVCSu +@@ -334,13 +334,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); -@@ -366,7 +378,7 @@ MEDIA_EXPORT BASE_DECLARE_FEATURE(kUnifiedAutoplay); +@@ -358,7 +370,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); -@@ -382,7 +394,7 @@ MEDIA_EXPORT BASE_DECLARE_FEATURE(kVaapiAV1TemporalLay +@@ -374,7 +386,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); -@@ -501,7 +513,7 @@ MEDIA_EXPORT BASE_DECLARE_FEATURE(kBackgroundListening - MEDIA_EXPORT BASE_DECLARE_FEATURE(kUseOutOfProcessVideoDecoding); +@@ -478,7 +490,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 16692d1e511f..5c6d3ea43dfc 100644 --- a/www/chromium/files/patch-media_base_video__frame.cc +++ b/www/chromium/files/patch-media_base_video__frame.cc @@ -1,47 +1,47 @@ ---- media/base/video_frame.cc.orig 2025-10-30 15:44:36 UTC +--- media/base/video_frame.cc.orig 2025-12-05 10:12:50 UTC +++ media/base/video_frame.cc -@@ -86,7 +86,7 @@ std::string VideoFrame::StorageTypeToString( +@@ -85,7 +85,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 -@@ -100,7 +100,7 @@ std::string VideoFrame::StorageTypeToString( +@@ -99,7 +99,7 @@ std::string VideoFrame::StorageTypeToString( // static bool VideoFrame::IsStorageTypeMappable(VideoFrame::StorageType storage_type) { return -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // This is not strictly needed but makes explicit that, at VideoFrame // level, DmaBufs are not mappable from userspace. storage_type != VideoFrame::STORAGE_DMABUFS && -@@ -395,7 +395,7 @@ scoped_refptr VideoFrame::CreateFrameForMa +@@ -503,7 +503,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(); -@@ -852,7 +852,7 @@ scoped_refptr VideoFrame::WrapExternalGpuM +@@ -800,7 +800,7 @@ scoped_refptr VideoFrame::WrapExternalGpuM } #endif -#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, -@@ -1539,7 +1539,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_base_video__frame.h b/www/chromium/files/patch-media_base_video__frame.h index 72088637dbd2..5f7b03f94656 100644 --- a/www/chromium/files/patch-media_base_video__frame.h +++ b/www/chromium/files/patch-media_base_video__frame.h @@ -1,47 +1,47 @@ ---- media/base/video_frame.h.orig 2025-10-02 04:28:32 UTC +--- media/base/video_frame.h.orig 2025-12-05 10:12:50 UTC +++ media/base/video_frame.h @@ -41,7 +41,7 @@ #include "ui/gfx/geometry/size.h" #include "ui/gfx/hdr_metadata.h" -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "base/files/scoped_file.h" #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) @@ -95,7 +95,7 @@ class MEDIA_EXPORT VideoFrame : public base::RefCounte STORAGE_UNOWNED_MEMORY = 2, // External, non owned data pointers. STORAGE_OWNED_MEMORY = 3, // VideoFrame has allocated its own data buffer. STORAGE_SHMEM = 4, // Backed by read-only shared memory. -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) STORAGE_DMABUFS = 5, // Each plane is stored into a DmaBuf. #endif STORAGE_GPU_MEMORY_BUFFER = 6, -@@ -370,7 +370,7 @@ class MEDIA_EXPORT VideoFrame : public base::RefCounte +@@ -348,7 +348,7 @@ class MEDIA_EXPORT VideoFrame : public base::RefCounte base::TimeDelta timestamp); #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Wraps provided dmabufs // (https://www.kernel.org/doc/html/latest/driver-api/dma-buf.html) with a // VideoFrame. The frame will take ownership of |dmabuf_fds|, and will -@@ -712,7 +712,7 @@ class MEDIA_EXPORT VideoFrame : public base::RefCounte +@@ -693,7 +693,7 @@ class MEDIA_EXPORT VideoFrame : public base::RefCounte // wait for the included sync point. scoped_refptr shared_image() const; -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // The number of DmaBufs will be equal or less than the number of planes of // the frame. If there are less, this means that the last FD contains the // remaining planes. Should be > 0 for STORAGE_DMABUFS. -@@ -947,7 +947,7 @@ class MEDIA_EXPORT VideoFrame : public base::RefCounte +@@ -909,7 +909,7 @@ class MEDIA_EXPORT VideoFrame : public base::RefCounte // GpuMemoryBuffers. Clients will set this flag while creating a VideoFrame. bool is_mappable_si_enabled_ = false; -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Dmabufs for the frame, used when storage is STORAGE_DMABUFS. Size is either // equal or less than the number of planes of the frame. If it is less, then // the memory area represented by the last FD contains the remaining planes. diff --git a/www/chromium/files/patch-media_capture_video_video__capture__device__client.cc b/www/chromium/files/patch-media_capture_video_video__capture__device__client.cc index d55bbbd310f8..6f8770574f86 100644 --- a/www/chromium/files/patch-media_capture_video_video__capture__device__client.cc +++ b/www/chromium/files/patch-media_capture_video_video__capture__device__client.cc @@ -1,11 +1,11 @@ ---- media/capture/video/video_capture_device_client.cc.orig 2025-10-30 15:44:36 UTC +--- media/capture/video/video_capture_device_client.cc.orig 2025-12-05 10:12:50 UTC +++ media/capture/video/video_capture_device_client.cc -@@ -167,7 +167,7 @@ FourccAndFlip GetFourccAndFlipFromPixelFormat( +@@ -168,7 +168,7 @@ FourccAndFlip GetFourccAndFlipFromPixelFormat( CHECK(!is_width_odd && !is_height_odd); return {libyuv::FOURCC_UYVY}; case media::PIXEL_FORMAT_RGB24: - if constexpr (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)) { + if constexpr (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD)) { // Linux RGB24 defines red at lowest byte address, // see http://linuxtv.org/downloads/v4l-dvb-apis/packed-rgb.html. return {libyuv::FOURCC_RAW}; diff --git a/www/chromium/files/patch-media_gpu_chromeos_gl__image__processor__backend.cc b/www/chromium/files/patch-media_gpu_chromeos_gl__image__processor__backend.cc index 6a42aab37898..0f0b93b71a23 100644 --- a/www/chromium/files/patch-media_gpu_chromeos_gl__image__processor__backend.cc +++ b/www/chromium/files/patch-media_gpu_chromeos_gl__image__processor__backend.cc @@ -1,13 +1,13 @@ ---- media/gpu/chromeos/gl_image_processor_backend.cc.orig 2024-06-18 16:34:35 UTC +--- media/gpu/chromeos/gl_image_processor_backend.cc.orig 2025-12-05 10:12:50 UTC +++ media/gpu/chromeos/gl_image_processor_backend.cc -@@ -28,6 +28,10 @@ +@@ -29,6 +29,10 @@ #include "ui/ozone/public/ozone_platform.h" #include "ui/ozone/public/surface_factory_ozone.h" +#ifndef GL_CONTEXT_LOST_KHR +#define GL_CONTEXT_LOST_KHR 0x0507 +#endif + namespace media { namespace { diff --git a/www/chromium/files/patch-media_gpu_chromeos_platform__video__frame__utils.cc b/www/chromium/files/patch-media_gpu_chromeos_platform__video__frame__utils.cc index cc73dd5b1f71..d8247ed6c854 100644 --- a/www/chromium/files/patch-media_gpu_chromeos_platform__video__frame__utils.cc +++ b/www/chromium/files/patch-media_gpu_chromeos_platform__video__frame__utils.cc @@ -1,20 +1,20 @@ ---- media/gpu/chromeos/platform_video_frame_utils.cc.orig 2025-10-02 04:28:32 UTC +--- media/gpu/chromeos/platform_video_frame_utils.cc.orig 2025-12-05 10:12:50 UTC +++ media/gpu/chromeos/platform_video_frame_utils.cc -@@ -71,7 +71,7 @@ static std::unique_ptr CreateGbmDevice( +@@ -70,7 +70,7 @@ static std::unique_ptr CreateGbmDevice( const base::FilePath dev_path(FILE_PATH_LITERAL( base::StrCat({drm_node_file_prefix, base::NumberToString(i)}))); -#if BUILDFLAG(IS_LINUX) && BUILDFLAG(USE_V4L2_CODEC) +#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && BUILDFLAG(USE_V4L2_CODEC) const bool is_render_node = base::Contains(drm_node_file_prefix, "render"); // TODO(b/313513760): don't guard base::File::FLAG_WRITE behind -@@ -176,7 +176,7 @@ class GbmDeviceWrapper { +@@ -175,7 +175,7 @@ class GbmDeviceWrapper { const base::FilePath dev_path( base::CommandLine::ForCurrentProcess()->GetSwitchValuePath( switches::kRenderNodeOverride)); -#if BUILDFLAG(IS_LINUX) && BUILDFLAG(USE_V4L2_CODEC) +#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && BUILDFLAG(USE_V4L2_CODEC) const bool is_render_node = base::Contains(dev_path.value(), "render"); // TODO(b/313513760): don't guard base::File::FLAG_WRITE behind 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 31b99f7f4211..d5c46b3bd04e 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,29 +1,29 @@ ---- media/gpu/chromeos/video_decoder_pipeline.cc.orig 2025-05-28 14:55:43 UTC +--- media/gpu/chromeos/video_decoder_pipeline.cc.orig 2025-12-05 10:12:50 UTC +++ media/gpu/chromeos/video_decoder_pipeline.cc -@@ -1128,7 +1128,7 @@ VideoDecoderPipeline::PickDecoderOutputFormat( +@@ -1132,7 +1132,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()); -@@ -1137,7 +1137,7 @@ VideoDecoderPipeline::PickDecoderOutputFormat( +@@ -1141,7 +1141,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 -@@ -1311,7 +1311,7 @@ VideoDecoderPipeline::PickDecoderOutputFormat( +@@ -1315,7 +1315,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_test_video__frame__helpers.cc b/www/chromium/files/patch-media_gpu_test_video__frame__helpers.cc index 7b1e3c290f98..290d68fc7da7 100644 --- a/www/chromium/files/patch-media_gpu_test_video__frame__helpers.cc +++ b/www/chromium/files/patch-media_gpu_test_video__frame__helpers.cc @@ -1,11 +1,11 @@ ---- media/gpu/test/video_frame_helpers.cc.orig 2025-08-07 06:57:29 UTC +--- media/gpu/test/video_frame_helpers.cc.orig 2025-12-05 10:12:50 UTC +++ media/gpu/test/video_frame_helpers.cc -@@ -23,7 +23,7 @@ - #include "ui/gfx/buffer_format_util.h" +@@ -22,7 +22,7 @@ + #include "third_party/libyuv/include/libyuv.h" #include "ui/gfx/gpu_memory_buffer_handle.h" -#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include #endif // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) diff --git a/www/chromium/files/patch-media_gpu_vaapi_vaapi__video__decoder.cc b/www/chromium/files/patch-media_gpu_vaapi_vaapi__video__decoder.cc index 6a586e88afc9..bb1d6bde7ebb 100644 --- a/www/chromium/files/patch-media_gpu_vaapi_vaapi__video__decoder.cc +++ b/www/chromium/files/patch-media_gpu_vaapi_vaapi__video__decoder.cc @@ -1,11 +1,11 @@ ---- media/gpu/vaapi/vaapi_video_decoder.cc.orig 2025-09-06 10:01:20 UTC +--- media/gpu/vaapi/vaapi_video_decoder.cc.orig 2025-12-05 10:12:50 UTC +++ media/gpu/vaapi/vaapi_video_decoder.cc -@@ -787,7 +787,7 @@ void VaapiVideoDecoder::ApplyResolutionChangeWithScree +@@ -786,7 +786,7 @@ void VaapiVideoDecoder::ApplyResolutionChangeWithScree const gfx::Size decoder_natural_size = aspect_ratio_.GetNaturalSize(decoder_visible_rect); -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) std::optional allocator = base::BindRepeating(&AllocateCustomFrameProxy, weak_this_); std::vector candidates = { diff --git a/www/chromium/files/patch-media_gpu_vaapi_vaapi__wrapper.cc b/www/chromium/files/patch-media_gpu_vaapi_vaapi__wrapper.cc index 7e286d70030d..905a4d7d4d14 100644 --- a/www/chromium/files/patch-media_gpu_vaapi_vaapi__wrapper.cc +++ b/www/chromium/files/patch-media_gpu_vaapi_vaapi__wrapper.cc @@ -1,11 +1,11 @@ ---- media/gpu/vaapi/vaapi_wrapper.cc.orig 2025-10-02 04:28:32 UTC +--- media/gpu/vaapi/vaapi_wrapper.cc.orig 2025-12-05 10:12:50 UTC +++ media/gpu/vaapi/vaapi_wrapper.cc -@@ -85,7 +85,7 @@ +@@ -84,7 +84,7 @@ using media_gpu_vaapi::kModuleVa_prot; #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "base/files/file_util.h" #include "base/strings/string_split.h" #endif diff --git a/www/chromium/files/patch-media_mojo_mojom_BUILD.gn b/www/chromium/files/patch-media_mojo_mojom_BUILD.gn index 38ce13e53287..94035d4f22e7 100644 --- a/www/chromium/files/patch-media_mojo_mojom_BUILD.gn +++ b/www/chromium/files/patch-media_mojo_mojom_BUILD.gn @@ -1,11 +1,11 @@ ---- media/mojo/mojom/BUILD.gn.orig 2025-10-30 15:44:36 UTC +--- media/mojo/mojom/BUILD.gn.orig 2025-12-05 10:12:50 UTC +++ media/mojo/mojom/BUILD.gn -@@ -970,7 +970,7 @@ source_set("test_support") { +@@ -1037,7 +1037,7 @@ source_set("test_support") { sources = [] deps = [] - if (is_linux || is_chromeos) { + if (!is_bsd && (is_linux || is_chromeos)) { sources += [ "buffer_handle_test_util.cc", "buffer_handle_test_util.h", diff --git a/www/chromium/files/patch-media_mojo_mojom_video__frame__mojom__traits.cc b/www/chromium/files/patch-media_mojo_mojom_video__frame__mojom__traits.cc index eee95cf32b3f..0bebb9e15030 100644 --- a/www/chromium/files/patch-media_mojo_mojom_video__frame__mojom__traits.cc +++ b/www/chromium/files/patch-media_mojo_mojom_video__frame__mojom__traits.cc @@ -1,38 +1,38 @@ ---- media/mojo/mojom/video_frame_mojom_traits.cc.orig 2025-10-02 04:28:32 UTC +--- media/mojo/mojom/video_frame_mojom_traits.cc.orig 2025-12-05 10:12:50 UTC +++ media/mojo/mojom/video_frame_mojom_traits.cc -@@ -21,7 +21,7 @@ +@@ -22,7 +22,7 @@ #include "ui/gfx/mojom/color_space_mojom_traits.h" #include "ui/gfx/mojom/hdr_metadata_mojom_traits.h" -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "base/posix/eintr_wrapper.h" #include "media/gpu/buffer_validation.h" #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -@@ -182,7 +182,7 @@ media::mojom::VideoFrameDataPtr MakeVideoFrameData( +@@ -183,7 +183,7 @@ media::mojom::VideoFrameDataPtr MakeVideoFrameData( media::mojom::OpaqueVideoFrameData::New()); } -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) if (input->storage_type() == media::VideoFrame::STORAGE_DMABUFS) { // Duplicates the DMA buffer FDs to a new vector since this cannot take // ownership of the FDs in |input| due to constness. -@@ -213,7 +213,7 @@ media::mojom::VideoFrameDataPtr MakeVideoFrameData( +@@ -214,7 +214,7 @@ media::mojom::VideoFrameDataPtr MakeVideoFrameData( } // namespace -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // static bool StructTraits< media::mojom::ColorPlaneLayoutDataView, -@@ -445,7 +445,7 @@ bool StructTraitsHasSharedImage(); -#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 -@@ -1080,7 +1080,7 @@ scoped_refptr GpuMemoryBufferVideoFramePoo +@@ -1078,7 +1078,7 @@ scoped_refptr GpuMemoryBufferVideoFramePoo media::IOSurfaceIsWebGPUCompatible(handle.io_surface().get()); #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) is_webgpu_compatible = handle.type == gfx::NATIVE_PIXMAP && handle.native_pixmap_handle().supports_zero_copy_webgpu_import; -@@ -1248,7 +1248,7 @@ GpuMemoryBufferVideoFramePool::PoolImpl::GetOrCreateFr +@@ -1246,7 +1246,7 @@ GpuMemoryBufferVideoFramePool::PoolImpl::GetOrCreateFr si_usage |= gpu::SHARED_IMAGE_USAGE_SCANOUT; } -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // TODO(crbug.com/40194712): Always add the flag once the // OzoneImageBacking is by default turned on. if (base::CommandLine::ForCurrentProcess()->HasSwitch( diff --git a/www/chromium/files/patch-media_webrtc_audio__processor.cc b/www/chromium/files/patch-media_webrtc_audio__processor.cc index f6bdaa9ab780..8e32d227b852 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 2025-09-06 10:01:20 UTC +--- media/webrtc/audio_processor.cc.orig 2025-12-05 10:12:50 UTC +++ media/webrtc/audio_processor.cc -@@ -510,7 +510,7 @@ std::optional AudioProcessor::ProcessData( +@@ -517,7 +517,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 83c31ec58eca..06325bc1c831 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 2025-05-28 14:55:43 UTC +--- media/webrtc/helpers.cc.orig 2025-12-05 10:12:50 UTC +++ media/webrtc/helpers.cc -@@ -46,14 +46,14 @@ void ConfigAutomaticGainControl(const AudioProcessingS +@@ -48,14 +48,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-media_webrtc_helpers__unittests.cc b/www/chromium/files/patch-media_webrtc_helpers__unittests.cc index afba69847ae4..c6e320fa2590 100644 --- a/www/chromium/files/patch-media_webrtc_helpers__unittests.cc +++ b/www/chromium/files/patch-media_webrtc_helpers__unittests.cc @@ -1,38 +1,38 @@ ---- media/webrtc/helpers_unittests.cc.orig 2025-09-06 10:01:20 UTC +--- media/webrtc/helpers_unittests.cc.orig 2025-12-05 10:12:50 UTC +++ media/webrtc/helpers_unittests.cc -@@ -38,7 +38,7 @@ TEST(CreateWebRtcAudioProcessingModuleTest, CheckDefau +@@ -37,7 +37,7 @@ TEST(CreateWebRtcAudioProcessingModuleTest, CheckDefau EXPECT_TRUE(config.echo_canceller.enabled); #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) EXPECT_FALSE(config.gain_controller1.enabled); EXPECT_TRUE(config.gain_controller2.enabled); #elif BUILDFLAG(IS_CASTOS) || BUILDFLAG(IS_CAST_ANDROID) -@@ -65,7 +65,7 @@ TEST(CreateWebRtcAudioProcessingModuleTest, +@@ -63,7 +63,7 @@ TEST(CreateWebRtcAudioProcessingModuleTest, } #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) TEST(CreateWebRtcAudioProcessingModuleTest, InputVolumeAdjustmentEnabledWithAgc2) { ::base::test::ScopedFeatureList feature_list; -@@ -81,7 +81,7 @@ TEST(CreateWebRtcAudioProcessingModuleTest, +@@ -79,7 +79,7 @@ TEST(CreateWebRtcAudioProcessingModuleTest, #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) TEST(CreateWebRtcAudioProcessingModuleTest, CanDisableInputVolumeAdjustmentWithAgc2) { ::base::test::ScopedFeatureList feature_list; -@@ -98,7 +98,7 @@ TEST(CreateWebRtcAudioProcessingModuleTest, +@@ -96,7 +96,7 @@ TEST(CreateWebRtcAudioProcessingModuleTest, #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_FUCHSIA) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) TEST(CreateWebRtcAudioProcessingModuleTest, OnlyOneInputVolumeControllerEnabledOnDesktopPlatforms) { auto config = CreateApmGetConfig( diff --git a/www/chromium/files/patch-mojo_core_channel.cc b/www/chromium/files/patch-mojo_core_channel.cc index 4c14b9b193a8..f8bdc8bb9a3c 100644 --- a/www/chromium/files/patch-mojo_core_channel.cc +++ b/www/chromium/files/patch-mojo_core_channel.cc @@ -1,23 +1,32 @@ ---- mojo/core/channel.cc.orig 2025-10-30 15:44:36 UTC +--- mojo/core/channel.cc.orig 2025-12-05 10:12:50 UTC +++ mojo/core/channel.cc @@ -81,7 +81,11 @@ const size_t kMaxAttachedHandles = 64; const size_t kMaxAttachedHandles = 253; #endif // BUILDFLAG(IS_FUCHSIA) +#if defined(__i386__) && defined(OS_FREEBSD) +const size_t kChannelMessageAlignment = 4; +#else static_assert(alignof(std::max_align_t) >= kChannelMessageAlignment, ""); +#endif Channel::AlignedBuffer MakeAlignedBuffer(size_t size) { // Generic allocators (such as malloc) return a pointer that is suitably // aligned for storing any type of object with a fundamental alignment -@@ -1121,7 +1125,7 @@ bool Channel::OnControlMessage(Message::MessageType me +@@ -274,7 +278,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 { + +@@ -1306,7 +1310,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_SYSTEM_IMPL_EXPORT bool Channel::SupportsChannelUpgrade() { return false; diff --git a/www/chromium/files/patch-mojo_core_channel.h b/www/chromium/files/patch-mojo_core_channel.h new file mode 100644 index 000000000000..d334ee9170ec --- /dev/null +++ b/www/chromium/files/patch-mojo_core_channel.h @@ -0,0 +1,11 @@ +--- mojo/core/channel.h.orig 2025-12-05 10:12:50 UTC ++++ mojo/core/channel.h +@@ -167,7 +167,7 @@ class MOJO_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-mojo_core_channel__posix.cc b/www/chromium/files/patch-mojo_core_channel__posix.cc new file mode 100644 index 000000000000..af6d2cdce632 --- /dev/null +++ b/www/chromium/files/patch-mojo_core_channel__posix.cc @@ -0,0 +1,16 @@ +--- mojo/core/channel_posix.cc.orig 2025-12-05 10:12:50 UTC ++++ mojo/core/channel_posix.cc +@@ -594,6 +594,13 @@ void Channel::OfferChannelUpgrade() { + } + static_cast(this)->OfferSharedMemUpgrade(); + } ++#elif BUILDFLAG(IS_BSD) ++// static ++bool Channel::SupportsChannelUpgrade() { ++ return false; ++} ++void Channel::OfferChannelUpgrade() { ++} + #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || + // BUILDFLAG(IS_ANDROID) + diff --git a/www/chromium/files/patch-mojo_core_embedder_features.h b/www/chromium/files/patch-mojo_core_embedder_features.h index af452a35d6c5..5ddecdef1c22 100644 --- a/www/chromium/files/patch-mojo_core_embedder_features.h +++ b/www/chromium/files/patch-mojo_core_embedder_features.h @@ -1,11 +1,11 @@ ---- mojo/core/embedder/features.h.orig 2025-09-06 10:01:20 UTC +--- mojo/core/embedder/features.h.orig 2025-12-05 10:12:50 UTC +++ mojo/core/embedder/features.h -@@ -15,7 +15,7 @@ namespace mojo { +@@ -14,7 +14,7 @@ + namespace mojo { namespace core { - #if BUILDFLAG(IS_POSIX) && !BUILDFLAG(MOJO_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) COMPONENT_EXPORT(MOJO_CORE_EMBEDDER_FEATURES) - BASE_DECLARE_FEATURE(kMojoLinuxChannelSharedMem); + BASE_DECLARE_FEATURE(kMojoUseEventFd); diff --git a/www/chromium/files/patch-mojo_public_tools_bindings_mojom.gni b/www/chromium/files/patch-mojo_public_tools_bindings_mojom.gni index f2f5752f5aec..828724236f84 100644 --- a/www/chromium/files/patch-mojo_public_tools_bindings_mojom.gni +++ b/www/chromium/files/patch-mojo_public_tools_bindings_mojom.gni @@ -1,19 +1,19 @@ ---- mojo/public/tools/bindings/mojom.gni.orig 2025-10-30 15:44:36 UTC +--- mojo/public/tools/bindings/mojom.gni.orig 2025-12-05 10:12:50 UTC +++ mojo/public/tools/bindings/mojom.gni -@@ -763,6 +763,16 @@ template("mojom") { +@@ -751,6 +751,16 @@ template("mojom") { enabled_features += [ "is_apple" ] } + if (is_openbsd) { + enabled_features += [ "is_openbsd" ] + enabled_features += [ "is_bsd" ] + } + + if (is_freebsd) { + enabled_features += [ "is_freebsd" ] + enabled_features += [ "is_bsd" ] + } + action_outputs = [] foreach(base_path, output_file_base_paths) { filename = get_path_info(base_path, "file") diff --git a/www/chromium/files/patch-net_BUILD.gn b/www/chromium/files/patch-net_BUILD.gn index f9ad012e2175..3816315cae6d 100644 --- a/www/chromium/files/patch-net_BUILD.gn +++ b/www/chromium/files/patch-net_BUILD.gn @@ -1,95 +1,95 @@ ---- net/BUILD.gn.orig 2025-10-30 15:44:36 UTC +--- net/BUILD.gn.orig 2025-12-05 10:12:50 UTC +++ net/BUILD.gn @@ -126,7 +126,7 @@ net_configs = [ "//build/config/compiler:wexit_time_destructors", ] -if (is_linux || is_chromeos) { +if ((is_linux || is_chromeos) && !is_bsd) { net_configs += [ "//build/config/linux:libresolv" ] } -@@ -1376,6 +1376,19 @@ component("net") { +@@ -1379,6 +1379,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", -@@ -1541,7 +1554,7 @@ component("net") { +@@ -1544,7 +1557,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", -@@ -2277,7 +2290,7 @@ static_library("test_support") { +@@ -2290,7 +2303,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", -@@ -3076,14 +3089,14 @@ target(_test_target_type, "net_unittests") { +@@ -3091,14 +3104,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", -@@ -3185,6 +3198,10 @@ target(_test_target_type, "net_unittests") { +@@ -3204,6 +3217,10 @@ target(_test_target_type, "net_unittests") { ] } + if (is_bsd) { + deps += [ "//sandbox/policy" ] + } + if (enable_websockets) { sources += [ "server/http_connection_unittest.cc", -@@ -3241,7 +3258,7 @@ target(_test_target_type, "net_unittests") { +@@ -3260,7 +3277,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" ] } -@@ -3371,7 +3388,7 @@ target(_test_target_type, "net_unittests") { +@@ -3390,7 +3407,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 0752eab51a06..4d15ca6b2166 100644 --- a/www/chromium/files/patch-net_base_features.cc +++ b/www/chromium/files/patch-net_base_features.cc @@ -1,38 +1,38 @@ ---- net/base/features.cc.orig 2025-10-30 15:44:36 UTC +--- net/base/features.cc.orig 2025-12-05 10:12:50 UTC +++ net/base/features.cc @@ -29,7 +29,7 @@ BASE_FEATURE(kCapReferrerToOriginOnCrossOrigin, 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 -@@ -521,7 +521,7 @@ BASE_FEATURE(kDisableBlackholeOnNoNewNetwork, - "DisableBlackHoleOnNoNewNetwork", - base::FEATURE_DISABLED_BY_DEFAULT); +@@ -519,7 +519,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) -@@ -616,7 +616,7 @@ BASE_FEATURE(kReportingApiEnableEnterpriseCookieIssues +@@ -627,7 +627,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 -@@ -680,7 +680,7 @@ BASE_FEATURE(kHttpCacheMappedFileFlushWin, base::FEATU - #endif +@@ -712,7 +712,7 @@ BASE_FEATURE(kHttpCacheMappedFileFlushWin, base::FEATU BASE_FEATURE(kHttpCacheNoVarySearch, --#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) base::FEATURE_ENABLED_BY_DEFAULT #else base::FEATURE_DISABLED_BY_DEFAULT diff --git a/www/chromium/files/patch-net_dns_BUILD.gn b/www/chromium/files/patch-net_dns_BUILD.gn index 001bd4d8d9ab..4c05239603f8 100644 --- a/www/chromium/files/patch-net_dns_BUILD.gn +++ b/www/chromium/files/patch-net_dns_BUILD.gn @@ -1,39 +1,39 @@ ---- net/dns/BUILD.gn.orig 2025-10-30 15:44:36 UTC +--- net/dns/BUILD.gn.orig 2025-12-05 10:12:50 UTC +++ net/dns/BUILD.gn -@@ -142,7 +142,7 @@ source_set("dns") { - "dns_config_service_android.cc", - "dns_config_service_android.h", +@@ -144,7 +144,7 @@ source_set("dns") { + "platform_dns_query_executor_android.cc", + "platform_dns_query_executor_android.h", ] - } else if (is_linux) { + } else if (is_linux && !is_bsd) { sources += [ "dns_config_service_linux.cc", "dns_config_service_linux.h", -@@ -176,6 +176,7 @@ source_set("dns") { +@@ -178,6 +178,7 @@ source_set("dns") { } deps = [ "//net:net_deps" ] + deps += [ "//services/screen_ai/buildflags" ] public_deps = [ ":dns_client", -@@ -183,6 +184,7 @@ source_set("dns") { - ":host_resolver_manager", - ":mdns_client", - "//net:net_public_deps", +@@ -258,6 +259,7 @@ source_set("host_resolver") { + deps = [ + "//net:net_deps", + "//net/dns/public", + "//printing/buildflags", ] + public_deps = [ "//net:net_public_deps" ] - if (enable_mdns) { -@@ -458,9 +460,9 @@ source_set("tests") { - - if (is_android) { - sources += [ "dns_config_service_android_unittest.cc" ] +@@ -463,9 +465,9 @@ source_set("tests") { + "dns_config_service_android_unittest.cc", + "platform_dns_query_executor_android_unittest.cc", + ] - } else if (is_linux) { + } else if (is_linux && !is_bsd) { sources += [ "dns_config_service_linux_unittest.cc" ] - } else if (is_posix) { + } else if (is_posix && !is_bsd) { sources += [ "dns_config_service_posix_unittest.cc" ] } diff --git a/www/chromium/files/patch-printing_printing__context__linux.cc b/www/chromium/files/patch-printing_printing__context__linux.cc index 2cf9be972aea..f63693ae805e 100644 --- a/www/chromium/files/patch-printing_printing__context__linux.cc +++ b/www/chromium/files/patch-printing_printing__context__linux.cc @@ -1,38 +1,38 @@ ---- printing/printing_context_linux.cc.orig 2025-05-28 14:55:43 UTC +--- printing/printing_context_linux.cc.orig 2025-12-05 10:12:50 UTC +++ printing/printing_context_linux.cc -@@ -23,7 +23,7 @@ +@@ -22,7 +22,7 @@ #endif // Avoid using LinuxUi on Fuchsia. -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "ui/linux/linux_ui.h" #endif -@@ -69,7 +69,7 @@ mojom::ResultCode PrintingContextLinux::UseDefaultSett +@@ -68,7 +68,7 @@ mojom::ResultCode PrintingContextLinux::UseDefaultSett ResetSettings(); -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (!ui::LinuxUi::instance()) return mojom::ResultCode::kSuccess; -@@ -85,7 +85,7 @@ mojom::ResultCode PrintingContextLinux::UseDefaultSett +@@ -84,7 +84,7 @@ mojom::ResultCode PrintingContextLinux::UseDefaultSett } gfx::Size PrintingContextLinux::GetPdfPaperSizeDeviceUnits() { -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (ui::LinuxUi::instance()) return ui::LinuxUi::instance()->GetPdfPaperSize(this); #endif -@@ -98,7 +98,7 @@ mojom::ResultCode PrintingContextLinux::UpdatePrinterS +@@ -97,7 +97,7 @@ mojom::ResultCode PrintingContextLinux::UpdatePrinterS DCHECK(!printer_settings.show_system_dialog); DCHECK(!in_print_job_); -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (!ui::LinuxUi::instance()) return mojom::ResultCode::kSuccess; diff --git a/www/chromium/files/patch-remoting_host_client__session.cc b/www/chromium/files/patch-remoting_host_client__session.cc index 39bc7665a847..05fa4fd14ce2 100644 --- a/www/chromium/files/patch-remoting_host_client__session.cc +++ b/www/chromium/files/patch-remoting_host_client__session.cc @@ -1,11 +1,11 @@ ---- remoting/host/client_session.cc.orig 2025-05-05 10:57:53 UTC +--- remoting/host/client_session.cc.orig 2025-12-05 10:12:50 UTC +++ remoting/host/client_session.cc -@@ -188,7 +188,7 @@ void ClientSession::NotifyClientResolution( +@@ -195,7 +195,7 @@ void ClientSession::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 26506ebb50d0..ccf464cea262 100644 --- a/www/chromium/files/patch-remoting_host_remoting__me2me__host.cc +++ b/www/chromium/files/patch-remoting_host_remoting__me2me__host.cc @@ -1,155 +1,155 @@ ---- remoting/host/remoting_me2me_host.cc.orig 2025-10-02 04:28:32 UTC +--- remoting/host/remoting_me2me_host.cc.orig 2025-12-05 10:12:50 UTC +++ remoting/host/remoting_me2me_host.cc @@ -140,7 +140,7 @@ #include "remoting/host/mac/permission_utils.h" #endif // BUILDFLAG(IS_APPLE) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #if defined(REMOTING_USE_X11) #include @@ -151,7 +151,7 @@ #endif // defined(REMOTING_USE_X11) #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "base/linux_util.h" #include "remoting/host/linux/audio_capturer_linux.h" #include "remoting/host/linux/certificate_watcher.h" @@ -166,7 +166,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) @@ -200,7 +200,7 @@ const char kApplicationName[] = "chromoting"; const char kStdinConfigPath[] = "-"; #endif // !defined(REMOTING_MULTI_PROCESS) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // The command line switch used to pass name of the pipe to capture audio on // linux. const char kAudioPipeSwitchName[] = "audio-pipe-name"; @@ -448,7 +448,7 @@ class HostProcess : public ConfigWatcher::Delegate, std::unique_ptr agent_process_broker_client_; #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Watch for certificate changes and kill the host when changes occur std::unique_ptr cert_watcher_; #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) @@ -510,7 +510,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_; @@ -837,7 +837,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) } @@ -914,7 +914,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, @@ -1052,7 +1052,7 @@ void HostProcess::StartOnUiThread() { base::BindRepeating(&HostProcess::OnPolicyUpdate, base::Unretained(this)), base::BindRepeating(&HostProcess::OnPolicyError, base::Unretained(this))); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // If an audio pipe is specific on the command-line then initialize // AudioCapturerLinux to capture from it. base::FilePath audio_pipe_name = @@ -1131,7 +1131,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. @@ -1139,7 +1139,7 @@ void HostProcess::ShutdownOnUiThread() { AudioCapturerLinux::InitializePipeReader(nullptr, base::FilePath()); #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)) && defined(REMOTING_USE_X11) +#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD)) && defined(REMOTING_USE_X11) context_->input_task_runner()->PostTask( FROM_HERE, base::BindOnce([]() { delete ui::X11EventSource::GetInstance(); })); -@@ -1835,7 +1835,7 @@ void HostProcess::StartHost() { +@@ -1829,7 +1829,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()) { GnomeRemoteDesktopSession::GetInstance()->Init( base::BindOnce([](base::expected result) { -@@ -1925,7 +1925,7 @@ void HostProcess::StartHost() { +@@ -1919,7 +1919,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_ = -@@ -1960,7 +1960,7 @@ void HostProcess::StartHost() { +@@ -1954,7 +1954,7 @@ void HostProcess::StartHost() { // addresses. host_->Start(*host_owner_emails_.begin()); -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // For Windows and Mac, ChromotingHostServices connections are handled by // another process, then the message pipe is forwarded to the network process. host_->StartChromotingHostServices(); -@@ -2105,7 +2105,7 @@ int HostProcessMain() { +@@ -2099,7 +2099,7 @@ int HostProcessMain() { HOST_LOG << "Starting host process: version " << STRINGIZE(VERSION); const base::CommandLine* cmd_line = base::CommandLine::ForCurrentProcess(); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #if defined(REMOTING_USE_X11) // Initialize Xlib for multi-threaded use, allowing non-Chromium code to // use X11 safely (such as the WebRTC capturer, GTK ...) -@@ -2150,7 +2150,7 @@ int HostProcessMain() { +@@ -2144,7 +2144,7 @@ int HostProcessMain() { return kInitializationFailed; } -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Log and cleanup the crash database. We do this after a short delay so that // the crash database has a chance to be updated properly if we just got // relaunched after a crash. -@@ -2170,7 +2170,7 @@ int HostProcessMain() { +@@ -2164,7 +2164,7 @@ int HostProcessMain() { std::unique_ptr network_change_notifier( net::NetworkChangeNotifier::CreateIfNeeded()); -#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)) && defined(REMOTING_USE_X11) +#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD)) && defined(REMOTING_USE_X11) // Create an X11EventSource on all UI threads, so the global X11 connection // (x11::Connection::Get()) can dispatch X events. auto event_source = diff --git a/www/chromium/files/patch-remoting_protocol_webrtc__video__stream.cc b/www/chromium/files/patch-remoting_protocol_webrtc__video__stream.cc index cd6e8b17d80f..c4d8a8cfb4c8 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 2025-09-06 10:01:20 UTC +--- remoting/protocol/webrtc_video_stream.cc.orig 2025-12-05 10:12:50 UTC +++ remoting/protocol/webrtc_video_stream.cc -@@ -271,7 +271,7 @@ WebrtcVideoStream::WebrtcVideoStream(const SessionOpti +@@ -276,7 +276,7 @@ WebrtcVideoStream::WebrtcVideoStream(const SessionOpti : session_options_(session_options) { // TODO(joedow): Dig into the threading model on other platforms to see if they // 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_linux_BUILD.gn b/www/chromium/files/patch-sandbox_linux_BUILD.gn index 218995084a3d..d4c169927a75 100644 --- a/www/chromium/files/patch-sandbox_linux_BUILD.gn +++ b/www/chromium/files/patch-sandbox_linux_BUILD.gn @@ -1,35 +1,35 @@ ---- sandbox/linux/BUILD.gn.orig 2025-09-06 10:01:20 UTC +--- sandbox/linux/BUILD.gn.orig 2025-12-05 10:12:50 UTC +++ sandbox/linux/BUILD.gn -@@ -11,11 +11,11 @@ if (is_android) { +@@ -10,11 +10,11 @@ if (is_android) { } declare_args() { - compile_suid_client = is_linux || is_chromeos + compile_suid_client = (is_linux || is_chromeos) && !is_bsd - compile_credentials = is_linux || is_chromeos + compile_credentials = (is_linux || is_chromeos) && !is_bsd - compile_syscall_broker = is_linux || is_chromeos + compile_syscall_broker = (is_linux || is_chromeos) && !is_bsd # On Android, use plain GTest. use_base_test_suite = is_linux || is_chromeos -@@ -373,6 +373,17 @@ component("sandbox_services") { +@@ -372,6 +372,17 @@ component("sandbox_services") { "services/libc_interceptor.h", ] } + + if (is_bsd) { + sources -= [ + "services/scoped_process.cc", + "services/scoped_process.h", + "services/syscall_wrappers.cc", + "services/syscall_wrappers.h", + "services/yama.cc", + "services/yama.h", + ] + } } source_set("sandbox_services_headers") { diff --git a/www/chromium/files/patch-sandbox_policy_BUILD.gn b/www/chromium/files/patch-sandbox_policy_BUILD.gn index afb14c34e9c8..56feaeb7025d 100644 --- a/www/chromium/files/patch-sandbox_policy_BUILD.gn +++ b/www/chromium/files/patch-sandbox_policy_BUILD.gn @@ -1,38 +1,38 @@ ---- sandbox/policy/BUILD.gn.orig 2025-10-30 15:44:36 UTC +--- sandbox/policy/BUILD.gn.orig 2025-12-05 10:12:50 UTC +++ sandbox/policy/BUILD.gn -@@ -47,7 +47,7 @@ component("policy") { +@@ -46,7 +46,7 @@ component("policy") { "//third_party/jni_zero", ] } - if (is_linux || is_chromeos) { + if ((is_linux || is_chromeos) && !is_bsd) { sources += [ "linux/bpf_audio_policy_linux.cc", "linux/bpf_audio_policy_linux.h", -@@ -117,6 +117,26 @@ component("policy") { +@@ -116,6 +116,26 @@ component("policy") { "//sandbox/linux:sandbox_services", "//sandbox/linux:seccomp_bpf", "//sandbox/linux:suid_sandbox_client", + ] + } + if (is_openbsd) { + sources += [ + "openbsd/sandbox_openbsd.cc", + "openbsd/sandbox_openbsd.h", + ] + libs = [ "util" ] + } + if (is_freebsd) { + sources += [ + "freebsd/sandbox_freebsd.cc", + "freebsd/sandbox_freebsd.h", + ] + } + if (is_bsd) { + deps += [ + "//sandbox:sandbox_buildflags", + "//skia", + "//ui/gfx/x", ] } if (is_chromeos) { diff --git a/www/chromium/files/patch-sandbox_policy_mojom_sandbox.mojom b/www/chromium/files/patch-sandbox_policy_mojom_sandbox.mojom index d26a8139d27e..0c4d75712dc7 100644 --- a/www/chromium/files/patch-sandbox_policy_mojom_sandbox.mojom +++ b/www/chromium/files/patch-sandbox_policy_mojom_sandbox.mojom @@ -1,15 +1,15 @@ ---- sandbox/policy/mojom/sandbox.mojom.orig 2025-09-06 10:01:20 UTC +--- sandbox/policy/mojom/sandbox.mojom.orig 2025-12-05 10:12:50 UTC +++ sandbox/policy/mojom/sandbox.mojom -@@ -71,6 +71,12 @@ enum Sandbox { +@@ -68,6 +68,12 @@ enum Sandbox { // Minimally privileged sandbox on Fuchsia. [EnableIf=is_fuchsia] kVideoCapture, + [EnableIf=is_openbsd] + kVideoCapture, + + [EnableIf=is_freebsd] + kVideoCapture, + // Allows access to file contents and Windows APIs for parsing icons from PE // files. [EnableIf=is_win] kIconReader, diff --git a/www/chromium/files/patch-sandbox_policy_sandbox__type.cc b/www/chromium/files/patch-sandbox_policy_sandbox__type.cc index b01ed0083c17..453851625167 100644 --- a/www/chromium/files/patch-sandbox_policy_sandbox__type.cc +++ b/www/chromium/files/patch-sandbox_policy_sandbox__type.cc @@ -1,178 +1,167 @@ ---- sandbox/policy/sandbox_type.cc.orig 2025-09-06 10:01:20 UTC +--- sandbox/policy/sandbox_type.cc.orig 2025-12-05 10:12:50 UTC +++ sandbox/policy/sandbox_type.cc -@@ -16,7 +16,7 @@ - #include "chromeos/ash/components/assistant/buildflags.h" - #endif // BUILDFLAG(IS_CHROMEOS) +@@ -12,7 +12,7 @@ + #include "sandbox/policy/mojom/sandbox.mojom.h" + #include "sandbox/policy/switches.h" -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "media/gpu/buildflags.h" // nogncheck #include "media/media_buildflags.h" // nogncheck #endif -@@ -38,7 +38,7 @@ constexpr char kServiceSandboxWithJit[] = "service_wit +@@ -34,7 +34,7 @@ constexpr char kServiceSandboxWithJit[] = "service_wit constexpr char kSpeechRecognitionSandbox[] = "speech_recognition"; #if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_WIN) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) constexpr char kPrintBackendSandbox[] = "print_backend"; constexpr char kScreenAISandbox[] = "screen_ai"; #endif -@@ -56,15 +56,15 @@ constexpr char kWindowsSystemProxyResolverSandbox[] = +@@ -52,11 +52,11 @@ constexpr char kWindowsSystemProxyResolverSandbox[] = constexpr char kMirroringSandbox[] = "mirroring"; #endif // BUILDFLAG(IS_MAC) --#if BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - constexpr char kVideoEffectsSandbox[] = "video_effects"; - #endif - -#if BUILDFLAG(IS_FUCHSIA) +#if BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) constexpr char kVideoCaptureSandbox[] = "video_capture"; #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) constexpr char kShapeDetectionSandbox[] = "shape_detection"; // USE_LINUX_VIDEO_ACCELERATION implies IS_LINUX || IS_CHROMEOS, so this double // #if is redundant, however, we cannot include "media/gpu/buildflags.h" on all -@@ -85,7 +85,7 @@ constexpr char kLibassistantSandbox[] = "libassistant" - #endif // BUILDFLAG(ENABLE_CROS_LIBASSISTANT) +@@ -74,7 +74,7 @@ constexpr char kTtsSandbox[] = "tts"; + constexpr char kNearbySandbox[] = "nearby"; #endif // BUILDFLAG(IS_CHROMEOS) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) constexpr char kOnDeviceTranslationSandbox[] = "on_device_translation"; #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) -@@ -135,7 +135,7 @@ void SetCommandLineFlagsForSandboxType(base::CommandLi +@@ -124,7 +124,7 @@ void SetCommandLineFlagsForSandboxType(base::CommandLi case Sandbox::kCdm: case Sandbox::kPrintCompositor: case Sandbox::kAudio: -#if BUILDFLAG(IS_FUCHSIA) +#if BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) case Sandbox::kVideoCapture: #endif #if BUILDFLAG(IS_WIN) -@@ -146,7 +146,7 @@ void SetCommandLineFlagsForSandboxType(base::CommandLi +@@ -135,7 +135,7 @@ void SetCommandLineFlagsForSandboxType(base::CommandLi case Sandbox::kMediaFoundationCdm: case Sandbox::kWindowsSystemProxyResolver: #endif // BUILDFLAG(IS_WIN) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) case Sandbox::kShapeDetection: #if BUILDFLAG(USE_LINUX_VIDEO_ACCELERATION) case Sandbox::kHardwareVideoDecoding: -@@ -165,15 +165,15 @@ void SetCommandLineFlagsForSandboxType(base::CommandLi +@@ -151,12 +151,12 @@ void SetCommandLineFlagsForSandboxType(base::CommandLi case Sandbox::kMirroring: #endif // BUILDFLAG(IS_MAC) #if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_WIN) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) case Sandbox::kPrintBackend: case Sandbox::kScreenAI: #endif case Sandbox::kSpeechRecognition: --#if BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - case Sandbox::kVideoEffects: - #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) case Sandbox::kOnDeviceTranslation: #endif DCHECK(command_line->GetSwitchValueASCII(switches::kProcessType) == -@@ -183,7 +183,7 @@ void SetCommandLineFlagsForSandboxType(base::CommandLi +@@ -166,7 +166,7 @@ void SetCommandLineFlagsForSandboxType(base::CommandLi switches::kServiceSandboxType, StringFromUtilitySandboxType(sandbox_type)); return; -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) case Sandbox::kZygoteIntermediateSandbox: return; #endif -@@ -214,7 +214,7 @@ sandbox::mojom::Sandbox SandboxTypeFromCommandLine( +@@ -197,7 +197,7 @@ sandbox::mojom::Sandbox SandboxTypeFromCommandLine( return Sandbox::kGpu; } -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Intermediate process gains a sandbox later. if (process_type == switches::kZygoteProcessType) return Sandbox::kZygoteIntermediateSandbox; -@@ -252,7 +252,7 @@ std::string StringFromUtilitySandboxType(Sandbox sandb +@@ -235,7 +235,7 @@ std::string StringFromUtilitySandboxType(Sandbox sandb return kUtilitySandbox; case Sandbox::kAudio: return kAudioSandbox; -#if BUILDFLAG(IS_FUCHSIA) +#if BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) case Sandbox::kVideoCapture: return kVideoCaptureSandbox; #endif -@@ -263,17 +263,17 @@ std::string StringFromUtilitySandboxType(Sandbox sandb +@@ -246,13 +246,13 @@ std::string StringFromUtilitySandboxType(Sandbox sandb case Sandbox::kSpeechRecognition: return kSpeechRecognitionSandbox; #if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_WIN) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) case Sandbox::kPrintBackend: return kPrintBackendSandbox; case Sandbox::kScreenAI: return kScreenAISandbox; #endif --#if BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - case Sandbox::kVideoEffects: - return kVideoEffectsSandbox; - #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) case Sandbox::kOnDeviceTranslation: return kOnDeviceTranslationSandbox; #endif -@@ -293,7 +293,7 @@ std::string StringFromUtilitySandboxType(Sandbox sandb +@@ -272,7 +272,7 @@ std::string StringFromUtilitySandboxType(Sandbox sandb case Sandbox::kMirroring: return kMirroringSandbox; #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) case Sandbox::kShapeDetection: return kShapeDetectionSandbox; #if BUILDFLAG(ALLOW_OOP_VIDEO_DECODER) -@@ -394,7 +394,7 @@ sandbox::mojom::Sandbox UtilitySandboxTypeFromString( +@@ -295,7 +295,7 @@ std::string StringFromUtilitySandboxType(Sandbox sandb + // The following are not utility processes so should not occur. + case Sandbox::kRenderer: + case Sandbox::kGpu: +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + case Sandbox::kZygoteIntermediateSandbox: + #endif + NOTREACHED(); +@@ -369,7 +369,7 @@ sandbox::mojom::Sandbox UtilitySandboxTypeFromString( return Sandbox::kSpeechRecognition; } #if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_WIN) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) if (sandbox_string == kPrintBackendSandbox) { return Sandbox::kPrintBackend; } -@@ -402,22 +402,22 @@ sandbox::mojom::Sandbox UtilitySandboxTypeFromString( +@@ -377,17 +377,17 @@ sandbox::mojom::Sandbox UtilitySandboxTypeFromString( return Sandbox::kScreenAI; } #endif --#if BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - if (sandbox_string == kVideoEffectsSandbox) { - return Sandbox::kVideoEffects; - } - #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) if (sandbox_string == kOnDeviceTranslationSandbox) { return Sandbox::kOnDeviceTranslation; } #endif -#if BUILDFLAG(IS_FUCHSIA) +#if BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) if (sandbox_string == kVideoCaptureSandbox) { return Sandbox::kVideoCapture; } #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) if (sandbox_string == kShapeDetectionSandbox) { return Sandbox::kShapeDetection; } 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 9300e14579c3..ad197f09750e 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,20 +1,11 @@ ---- services/device/public/cpp/device_features.cc.orig 2025-10-30 15:44:36 UTC +--- services/device/public/cpp/device_features.cc.orig 2025-12-05 10:12:50 UTC +++ services/device/public/cpp/device_features.cc -@@ -81,7 +81,7 @@ BASE_FEATURE(kBatteryStatusManagerBroadcastReceiverInB - // Modifies the internal allowlist behavior that enables privileged extensions - // to bypass the HID blocklist when accessing FIDO devices. When enabled, - // privileged extensions can access non-FIDO interfaces on known security keys. --#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(kSecurityKeyHidInterfacesAreFido, - base::FEATURE_ENABLED_BY_DEFAULT); - #else -@@ -130,7 +130,7 @@ bool IsOsLevelGeolocationPermissionSupportEnabled() { +@@ -125,7 +125,7 @@ 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) diff --git a/www/chromium/files/patch-services_device_usb_usb__device__handle__usbfs.h b/www/chromium/files/patch-services_device_usb_usb__device__handle__usbfs.h index 448537157c55..c44a026f0b43 100644 --- a/www/chromium/files/patch-services_device_usb_usb__device__handle__usbfs.h +++ b/www/chromium/files/patch-services_device_usb_usb__device__handle__usbfs.h @@ -1,38 +1,38 @@ ---- services/device/usb/usb_device_handle_usbfs.h.orig 2025-05-05 10:57:53 UTC +--- services/device/usb/usb_device_handle_usbfs.h.orig 2025-12-05 10:12:50 UTC +++ services/device/usb/usb_device_handle_usbfs.h -@@ -19,7 +19,7 @@ +@@ -20,7 +20,7 @@ #include "base/threading/sequence_bound.h" #include "services/device/usb/usb_device_handle.h" -#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "base/containers/flat_set.h" #endif // BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) -@@ -215,7 +215,7 @@ class UsbDeviceHandleUsbfs::BlockingTaskRunnerHelper { +@@ -216,7 +216,7 @@ class UsbDeviceHandleUsbfs::BlockingTaskRunnerHelper { bool ClearHalt(uint8_t endpoint_address); void DiscardUrb(Transfer* transfer); -#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Detach the interface from a kernel driver before ClaimInterface virtual bool DetachInterface(int interface_number, const CombinedInterfaceInfo& interfaceInfo); -@@ -228,7 +228,7 @@ class UsbDeviceHandleUsbfs::BlockingTaskRunnerHelper { +@@ -229,7 +229,7 @@ class UsbDeviceHandleUsbfs::BlockingTaskRunnerHelper { // Called when |fd_| is writable without blocking. void OnFileCanWriteWithoutBlocking(); -#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Called from |DetachInterface|. std::string GetKernelDriver(int interface_number) const; #endif // BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) -@@ -240,7 +240,7 @@ class UsbDeviceHandleUsbfs::BlockingTaskRunnerHelper { +@@ -241,7 +241,7 @@ class UsbDeviceHandleUsbfs::BlockingTaskRunnerHelper { std::unique_ptr watch_controller_; SEQUENCE_CHECKER(sequence_checker_); -#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // All interfaces that have been detached from kernel drivers base::flat_set detached_interfaces_; #endif // BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) diff --git a/www/chromium/files/patch-services_network_BUILD.gn b/www/chromium/files/patch-services_network_BUILD.gn index c5a9417693ca..2a2cd13e9fcc 100644 --- a/www/chromium/files/patch-services_network_BUILD.gn +++ b/www/chromium/files/patch-services_network_BUILD.gn @@ -1,10 +1,10 @@ ---- services/network/BUILD.gn.orig 2025-10-02 04:28:32 UTC +--- services/network/BUILD.gn.orig 2025-12-05 10:12:50 UTC +++ services/network/BUILD.gn -@@ -426,7 +426,6 @@ if (is_linux || is_chromeos) { +@@ -423,7 +423,6 @@ if (is_linux || is_chromeos) { ] deps = [ "//base", - "//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 bb2bcda1e5ee..1ca5978c3c58 100644 --- a/www/chromium/files/patch-services_network_network__context.cc +++ b/www/chromium/files/patch-services_network_network__context.cc @@ -1,20 +1,20 @@ ---- services/network/network_context.cc.orig 2025-10-30 15:44:36 UTC +--- services/network/network_context.cc.orig 2025-12-05 10:12:50 UTC +++ services/network/network_context.cc @@ -630,7 +630,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_) { -@@ -2620,7 +2620,7 @@ void NetworkContext::OnHttpAuthDynamicParamsChanged( +@@ -2627,7 +2627,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 652b2cffdcba..4a7de7d53e16 100644 --- a/www/chromium/files/patch-services_network_network__context.h +++ b/www/chromium/files/patch-services_network_network__context.h @@ -1,11 +1,11 @@ ---- services/network/network_context.h.orig 2025-10-30 15:44:36 UTC +--- services/network/network_context.h.orig 2025-12-05 10:12:50 UTC +++ services/network/network_context.h -@@ -751,7 +751,7 @@ class COMPONENT_EXPORT(NETWORK_SERVICE) NetworkContext +@@ -757,7 +757,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_public_cpp_BUILD.gn b/www/chromium/files/patch-services_network_public_cpp_BUILD.gn index f14d391b9445..d81d1310a610 100644 --- a/www/chromium/files/patch-services_network_public_cpp_BUILD.gn +++ b/www/chromium/files/patch-services_network_public_cpp_BUILD.gn @@ -1,11 +1,11 @@ ---- services/network/public/cpp/BUILD.gn.orig 2025-09-06 10:01:20 UTC +--- services/network/public/cpp/BUILD.gn.orig 2025-12-05 10:12:50 UTC +++ services/network/public/cpp/BUILD.gn -@@ -699,7 +699,7 @@ component("cpp_base") { +@@ -721,7 +721,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 4766f5ef2072..b45393b23543 100644 --- a/www/chromium/files/patch-services_network_public_cpp_features.cc +++ b/www/chromium/files/patch-services_network_public_cpp_features.cc @@ -1,20 +1,20 @@ ---- services/network/public/cpp/features.cc.orig 2025-10-30 15:44:36 UTC +--- services/network/public/cpp/features.cc.orig 2025-12-05 10:12:50 UTC +++ services/network/public/cpp/features.cc @@ -93,7 +93,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 -@@ -345,7 +345,7 @@ BASE_FEATURE(kAvoidResourceRequestCopies, base::FEATUR +@@ -361,7 +361,7 @@ BASE_FEATURE(kAvoidResourceRequestCopies, base::FEATUR // https://github.com/WICG/document-isolation-policy BASE_FEATURE(kDocumentIsolationPolicy, #if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_CHROMEOS) || \ - BUILDFLAG(IS_LINUX) + 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 5ca8cb832e6c..a04451e78ac1 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 2025-09-06 10:01:20 UTC +--- services/network/public/mojom/BUILD.gn.orig 2025-12-05 10:12:50 UTC +++ services/network/public/mojom/BUILD.gn -@@ -690,11 +690,11 @@ mojom("url_loader_base") { - } +@@ -719,11 +719,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" ] -@@ -1007,7 +1007,7 @@ mojom("url_loader_base") { +@@ -1044,7 +1044,7 @@ mojom("url_loader_base") { }, ] - if (is_linux) { + if (is_linux && !is_bsd) { cpp_typemaps += [ { types = [ -@@ -1797,7 +1797,7 @@ mojom("mojom") { +@@ -1830,7 +1830,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_on__device__model_ml_gpu__blocklist.cc b/www/chromium/files/patch-services_on__device__model_ml_gpu__blocklist.cc index 1926fa5d1715..be2ca05cb16f 100644 --- a/www/chromium/files/patch-services_on__device__model_ml_gpu__blocklist.cc +++ b/www/chromium/files/patch-services_on__device__model_ml_gpu__blocklist.cc @@ -1,11 +1,11 @@ ---- services/on_device_model/ml/gpu_blocklist.cc.orig 2025-11-07 07:17:14 UTC +--- services/on_device_model/ml/gpu_blocklist.cc.orig 2025-12-05 10:12:50 UTC +++ services/on_device_model/ml/gpu_blocklist.cc @@ -24,7 +24,7 @@ const base::FeatureParam kGpuBlockList{ &optimization_guide::features::kOnDeviceModelPerformanceParams, "on_device_model_gpu_block_list", // These devices are nearly always crashing or have very low performance. -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - "8086:64a0|" // TODO(b/456603738): Remove when fixed. + "8086:64a0|8086:e20b|" // TODO(b/456603738): Remove when fixed. #endif // BUILDFLAG(IS_LINUX) "8086:412|8086:a16|8086:41e|8086:416|8086:402|8086:166|8086:1616|8086:22b1|" diff --git a/www/chromium/files/patch-services_resource__coordinator_memory__instrumentation_queued__request__dispatcher.cc b/www/chromium/files/patch-services_resource__coordinator_memory__instrumentation_queued__request__dispatcher.cc index 9506602658e3..7bd70ddb5cb8 100644 --- a/www/chromium/files/patch-services_resource__coordinator_memory__instrumentation_queued__request__dispatcher.cc +++ b/www/chromium/files/patch-services_resource__coordinator_memory__instrumentation_queued__request__dispatcher.cc @@ -1,65 +1,65 @@ ---- services/resource_coordinator/memory_instrumentation/queued_request_dispatcher.cc.orig 2025-08-07 06:57:29 UTC +--- services/resource_coordinator/memory_instrumentation/queued_request_dispatcher.cc.orig 2025-12-05 10:12:50 UTC +++ services/resource_coordinator/memory_instrumentation/queued_request_dispatcher.cc -@@ -55,7 +55,7 @@ uint32_t CalculatePrivateFootprintKb(const mojom::RawO +@@ -56,7 +56,7 @@ uint32_t CalculatePrivateFootprintKb(const mojom::RawO uint32_t shared_resident_kb) { DCHECK(os_dump.platform_private_footprint); #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || \ - BUILDFLAG(IS_FUCHSIA) + BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) uint64_t rss_anon_bytes = os_dump.platform_private_footprint->rss_anon_bytes; uint64_t vm_swap_bytes = os_dump.platform_private_footprint->vm_swap_bytes; return (rss_anon_bytes + vm_swap_bytes) / 1024; -@@ -84,7 +84,7 @@ memory_instrumentation::mojom::OSMemDumpPtr CreatePubl +@@ -85,7 +85,7 @@ memory_instrumentation::mojom::OSMemDumpPtr CreatePubl os_dump->is_peak_rss_resettable = internal_os_dump.is_peak_rss_resettable; os_dump->private_footprint_kb = CalculatePrivateFootprintKb(internal_os_dump, shared_resident_kb); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) os_dump->private_footprint_swap_kb = internal_os_dump.platform_private_footprint->vm_swap_bytes / 1024; os_dump->mappings_count = internal_os_dump.mappings_count; -@@ -223,7 +223,7 @@ void QueuedRequestDispatcher::SetUpAndDispatch( +@@ -224,7 +224,7 @@ void QueuedRequestDispatcher::SetUpAndDispatch( // On most platforms each process can dump data about their own process // so ask each process to do so Linux is special see below. -#if !BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CHROMEOS) +#if !BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CHROMEOS) && !BUILDFLAG(IS_BSD) request->pending_responses.insert({client_info.pid, ResponseType::kOSDump}); client->RequestOSMemoryDump( request->memory_map_option(), request->memory_dump_flags(), -@@ -238,7 +238,7 @@ void QueuedRequestDispatcher::SetUpAndDispatch( +@@ -239,7 +239,7 @@ void QueuedRequestDispatcher::SetUpAndDispatch( // In some cases, OS stats can only be dumped from a privileged process to // get around to sandboxing/selinux restrictions (see crbug.com/461788). -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) std::vector pids; mojom::ClientProcess* browser_client = nullptr; base::ProcessId browser_client_pid = base::kNullProcessId; @@ -285,7 +285,7 @@ void QueuedRequestDispatcher::SetUpAndDispatchVmRegion const OsCallback& os_callback) { // On Linux, OS stats can only be dumped from a privileged process to // get around to sandboxing/selinux restrictions (see crbug.com/461788). -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) mojom::ClientProcess* browser_client = nullptr; base::ProcessId browser_client_pid = 0; for (const auto& client_info : clients) { @@ -335,7 +335,7 @@ QueuedRequestDispatcher::FinalizeVmRegionRequest( // each client process provides 1 OS dump, % the case where the client is // disconnected mid dump. OSMemDumpMap& extra_os_dumps = response.second.os_dumps; -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) for (auto& kv : extra_os_dumps) { auto pid = kv.first == base::kNullProcessId ? original_pid : kv.first; DCHECK(results.find(pid) == results.end()); @@ -396,7 +396,7 @@ void QueuedRequestDispatcher::Finalize(QueuedRequest* // crash). In the latter case (OS_LINUX) we expect the full map to come // from the browser process response. OSMemDumpMap& extra_os_dumps = response.second.os_dumps; -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) for (const auto& kv : extra_os_dumps) { auto pid = kv.first == base::kNullProcessId ? original_pid : kv.first; DCHECK_EQ(pid_to_os_dump[pid], nullptr); diff --git a/www/chromium/files/patch-services_screen__ai_screen__ai__service__impl.cc b/www/chromium/files/patch-services_screen__ai_screen__ai__service__impl.cc index 34ed40fa0f09..a1b8e109845d 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 2025-08-07 06:57:29 UTC +--- services/screen_ai/screen_ai_service_impl.cc.orig 2025-12-05 10:12:50 UTC +++ services/screen_ai/screen_ai_service_impl.cc -@@ -38,7 +38,7 @@ +@@ -34,7 +34,7 @@ #include "ui/accessibility/ax_tree_id.h" #include "ui/gfx/geometry/rect_f.h" -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "partition_alloc/buildflags.h" #if PA_BUILDFLAG( \ -@@ -266,7 +266,7 @@ ScreenAIService::ScreenAIService( +@@ -237,7 +237,7 @@ ScreenAIService::ScreenAIService( : factory_receiver_(this, std::move(receiver)), ocr_receiver_(this), main_content_extraction_receiver_(this) { -#if BUILDFLAG(IS_LINUX) && \ +#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && \ PA_BUILDFLAG( \ ENABLE_ALLOCATOR_SHIM_PARTITION_ALLOC_DISPATCH_WITH_ADVANCED_CHECKS_SUPPORT) // TODO(crbug.com/418199684): Remove when the bug is fixed. diff --git a/www/chromium/files/patch-services_video__effects_video__effects__sandbox__hook__linux.cc b/www/chromium/files/patch-services_video__effects_video__effects__sandbox__hook__linux.cc deleted file mode 100644 index 99b5d37be9e1..000000000000 --- a/www/chromium/files/patch-services_video__effects_video__effects__sandbox__hook__linux.cc +++ /dev/null @@ -1,27 +0,0 @@ ---- services/video_effects/video_effects_sandbox_hook_linux.cc.orig 2025-02-19 07:43:18 UTC -+++ services/video_effects/video_effects_sandbox_hook_linux.cc -@@ -6,7 +6,13 @@ - - #include - -+#include "build/build_config.h" -+ -+#if BUILDFLAG(IS_BSD) -+#include "sandbox/policy/sandbox.h" -+#else - #include "sandbox/policy/linux/sandbox_linux.h" -+#endif - #include "services/on_device_model/ml/chrome_ml_holder.h" - - namespace video_effects { -@@ -29,8 +35,10 @@ bool VideoEffectsPreSandboxHook( - DVLOG(1) << "Successfully opened Chrome ML shared library."; - } - -+#if !BUILDFLAG(IS_BSD) - auto* instance = sandbox::policy::SandboxLinux::GetInstance(); - instance->EngageNamespaceSandboxIfPossible(); -+#endif - return true; - } - diff --git a/www/chromium/files/patch-services_video__effects_video__effects__sandbox__hook__linux.h b/www/chromium/files/patch-services_video__effects_video__effects__sandbox__hook__linux.h deleted file mode 100644 index 2db51ef5a895..000000000000 --- a/www/chromium/files/patch-services_video__effects_video__effects__sandbox__hook__linux.h +++ /dev/null @@ -1,16 +0,0 @@ ---- services/video_effects/video_effects_sandbox_hook_linux.h.orig 2024-11-14 07:57:23 UTC -+++ services/video_effects/video_effects_sandbox_hook_linux.h -@@ -5,7 +5,13 @@ - #ifndef SERVICES_VIDEO_EFFECTS_VIDEO_EFFECTS_SANDBOX_HOOK_LINUX_H_ - #define SERVICES_VIDEO_EFFECTS_VIDEO_EFFECTS_SANDBOX_HOOK_LINUX_H_ - -+#include "build/build_config.h" -+ -+#if BUILDFLAG(IS_BSD) -+#include "sandbox/policy/sandbox.h" -+#else - #include "sandbox/policy/linux/sandbox_linux.h" -+#endif - - namespace video_effects { - diff --git a/www/chromium/files/patch-sql_database.cc b/www/chromium/files/patch-sql_database.cc new file mode 100644 index 000000000000..6c1d606cf6d1 --- /dev/null +++ b/www/chromium/files/patch-sql_database.cc @@ -0,0 +1,11 @@ +--- sql/database.cc.orig 2025-12-05 10:12:50 UTC ++++ sql/database.cc +@@ -106,7 +106,7 @@ bool FilePathIsFixedSSD(const base::FilePath& path) { + + return !drive_info->has_seek_penalty.value_or(false) + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_CHROMEOS) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + && !drive_info->is_removable.value_or(false) + #endif + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) 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 a1db041f2cfb..ae1c9030121d 100644 --- a/www/chromium/files/patch-third__party_blink_common_features.cc +++ b/www/chromium/files/patch-third__party_blink_common_features.cc @@ -1,11 +1,20 @@ ---- third_party/blink/common/features.cc.orig 2025-10-30 15:44:36 UTC +--- third_party/blink/common/features.cc.orig 2025-12-05 10:12:50 UTC +++ third_party/blink/common/features.cc -@@ -572,7 +572,7 @@ BASE_FEATURE_PARAM(base::TimeDelta, +@@ -588,7 +588,7 @@ BASE_FEATURE_PARAM(base::TimeDelta, BASE_FEATURE(kDevToolsImprovedNetworkError, base::FEATURE_DISABLED_BY_DEFAULT); BASE_FEATURE(kDirectCompositorThreadIpc, -#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) base::FEATURE_ENABLED_BY_DEFAULT #else base::FEATURE_DISABLED_BY_DEFAULT +@@ -1946,7 +1946,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_public_platform_platform.h b/www/chromium/files/patch-third__party_blink_public_platform_platform.h index 2eac34e4c2bf..3e8ca7dd7b1d 100644 --- a/www/chromium/files/patch-third__party_blink_public_platform_platform.h +++ b/www/chromium/files/patch-third__party_blink_public_platform_platform.h @@ -1,11 +1,11 @@ ---- third_party/blink/public/platform/platform.h.orig 2025-09-06 10:01:20 UTC +--- third_party/blink/public/platform/platform.h.orig 2025-12-05 10:12:50 UTC +++ third_party/blink/public/platform/platform.h -@@ -376,7 +376,7 @@ class BLINK_PLATFORM_EXPORT Platform { +@@ -377,7 +377,7 @@ class BLINK_PLATFORM_EXPORT Platform { return nullptr; } -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // This is called after the thread is created, so the embedder // can initiate an IPC to change its thread type (on Linux we can't // increase the nice value, so we need to ask the browser process). This diff --git a/www/chromium/files/patch-third__party_blink_renderer_controller_blink__initializer.cc b/www/chromium/files/patch-third__party_blink_renderer_controller_blink__initializer.cc index 3ea13513f16e..d4bbb7ffe6b0 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 2025-10-02 04:28:32 UTC +--- third_party/blink/renderer/controller/blink_initializer.cc.orig 2025-12-05 10:12:50 UTC +++ third_party/blink/renderer/controller/blink_initializer.cc -@@ -82,12 +82,12 @@ +@@ -83,12 +83,12 @@ #include "third_party/blink/renderer/controller/private_memory_footprint_provider.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" #include "third_party/blink/renderer/controller/user_level_memory_pressure_signal_generator.h" #endif -@@ -255,7 +255,7 @@ void BlinkInitializer::RegisterInterfaces(mojo::Binder +@@ -261,7 +261,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)), -@@ -304,7 +304,7 @@ void BlinkInitializer::RegisterMemoryWatchers(Platform +@@ -310,7 +310,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_exported_web__view__impl.cc b/www/chromium/files/patch-third__party_blink_renderer_core_exported_web__view__impl.cc index 77faa5409996..46ce63a40d09 100644 --- a/www/chromium/files/patch-third__party_blink_renderer_core_exported_web__view__impl.cc +++ b/www/chromium/files/patch-third__party_blink_renderer_core_exported_web__view__impl.cc @@ -1,20 +1,20 @@ ---- third_party/blink/renderer/core/exported/web_view_impl.cc.orig 2025-10-30 15:44:36 UTC +--- third_party/blink/renderer/core/exported/web_view_impl.cc.orig 2025-12-05 10:12:50 UTC +++ third_party/blink/renderer/core/exported/web_view_impl.cc -@@ -422,7 +422,7 @@ void RecordPrerenderActivationSignalDelay(const String +@@ -423,7 +423,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' -@@ -3467,7 +3467,7 @@ void WebViewImpl::UpdateFontRenderingFromRendererPrefs +@@ -3478,7 +3478,7 @@ void WebViewImpl::UpdateFontRenderingFromRendererPrefs gfx::FontRenderParams::SUBPIXEL_RENDERING_NONE); WebFontRenderStyle::SetSubpixelPositioning( renderer_preferences_.use_subpixel_positioning); -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (!renderer_preferences_.system_font_family_name.empty()) { WebFontRenderStyle::SetSystemFontFamily(blink::WebString::FromUTF8( renderer_preferences_.system_font_family_name)); diff --git a/www/chromium/files/patch-third__party_blink_renderer_core_frame_web__frame__test.cc b/www/chromium/files/patch-third__party_blink_renderer_core_frame_web__frame__test.cc index dca2eecd192f..8fa7ae7d3a3c 100644 --- a/www/chromium/files/patch-third__party_blink_renderer_core_frame_web__frame__test.cc +++ b/www/chromium/files/patch-third__party_blink_renderer_core_frame_web__frame__test.cc @@ -1,20 +1,20 @@ ---- third_party/blink/renderer/core/frame/web_frame_test.cc.orig 2025-10-02 04:28:32 UTC +--- third_party/blink/renderer/core/frame/web_frame_test.cc.orig 2025-12-05 10:12:50 UTC +++ third_party/blink/renderer/core/frame/web_frame_test.cc -@@ -6469,7 +6469,7 @@ TEST_F(WebFrameTest, DISABLED_PositionForPointTest) { +@@ -6475,7 +6475,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 \ -@@ -6878,7 +6878,7 @@ TEST_F(CompositedSelectionBoundsTest, LargeSelectionSc +@@ -6884,7 +6884,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_origin__trials_origin__trial__context.cc b/www/chromium/files/patch-third__party_blink_renderer_core_origin__trials_origin__trial__context.cc index ae1096ded863..0e8efbe72bbb 100644 --- a/www/chromium/files/patch-third__party_blink_renderer_core_origin__trials_origin__trial__context.cc +++ b/www/chromium/files/patch-third__party_blink_renderer_core_origin__trials_origin__trial__context.cc @@ -1,11 +1,20 @@ ---- third_party/blink/renderer/core/origin_trials/origin_trial_context.cc.orig 2025-10-30 15:44:36 UTC +--- third_party/blink/renderer/core/origin_trials/origin_trial_context.cc.orig 2025-12-05 10:12:50 UTC +++ third_party/blink/renderer/core/origin_trials/origin_trial_context.cc @@ -559,7 +559,7 @@ bool OriginTrialContext::CanEnableTrialFromName(const } if (trial_name == "TranslationAPI") { -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) return base::FeatureList::IsEnabled(features::kTranslationAPI); #else return false; +@@ -572,7 +572,7 @@ bool OriginTrialContext::CanEnableTrialFromName(const + + if (trial_name == "WebAppInstallation") { + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_CHROMEOS) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + return base::FeatureList::IsEnabled(blink::features::kWebAppInstallation); + #else + return false; 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 4072e924078f..ddcf64a9525e 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 2025-10-30 15:44:36 UTC +--- third_party/blink/renderer/core/page/context_menu_controller.cc.orig 2025-12-05 10:12:50 UTC +++ third_party/blink/renderer/core/page/context_menu_controller.cc -@@ -649,7 +649,7 @@ bool ContextMenuController::ShowContextMenu(LocalFrame +@@ -650,7 +650,7 @@ bool ContextMenuController::ShowContextMenu(LocalFrame 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_modules_webgl_webgl__rendering__context__base.cc b/www/chromium/files/patch-third__party_blink_renderer_modules_webgl_webgl__rendering__context__base.cc index 0e48f132f513..64ff0dda251b 100644 --- a/www/chromium/files/patch-third__party_blink_renderer_modules_webgl_webgl__rendering__context__base.cc +++ b/www/chromium/files/patch-third__party_blink_renderer_modules_webgl_webgl__rendering__context__base.cc @@ -1,11 +1,11 @@ ---- third_party/blink/renderer/modules/webgl/webgl_rendering_context_base.cc.orig 2025-10-30 15:44:36 UTC +--- third_party/blink/renderer/modules/webgl/webgl_rendering_context_base.cc.orig 2025-12-05 10:12:50 UTC +++ third_party/blink/renderer/modules/webgl/webgl_rendering_context_base.cc -@@ -6621,7 +6621,7 @@ void WebGLRenderingContextBase::TexImageHelperMediaVid +@@ -6588,7 +6588,7 @@ void WebGLRenderingContextBase::TexImageHelperMediaVid // unmultiply has been requested or we need to never premultiply for Image // creation from a VideoFrame. -#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // TODO(crbug.com/1175907): Only TexImage2D seems to work with the GPU path on // Android M -- appears to work fine on R, but to avoid regressions in