diff --git a/www/iridium/Makefile b/www/iridium/Makefile index a79aab4540cc..7c7563c221e7 100644 --- a/www/iridium/Makefile +++ b/www/iridium/Makefile @@ -1,359 +1,359 @@ PORTNAME= iridium -PORTVERSION= 2025.09.140.3 +PORTVERSION= 2025.10.141.2 PULSEMV= 16 PULSEV= ${PULSEMV}.1 CATEGORIES= www wayland MASTER_SITES= https://downloads.iridiumbrowser.de/source/ \ https://freedesktop.org/software/pulseaudio/releases/:pulseaudio PKGNAMESUFFIX= -browser DISTNAME= ${PORTNAME}${PKGNAMESUFFIX}-${PORTVERSION} DISTFILES= ${DISTNAME}${EXTRACT_SUFX} \ pulseaudio-${PULSEV}.tar.gz:pulseaudio MAINTAINER= chromium@FreeBSD.org COMMENT= Iridium browser WWW= https://iridiumbrowser.de/ 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 \ 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} \ moc=${PREFIX}/bin/moc-qt5 # 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 \ chrome_pgo_phase=0 \ enable_backup_ref_ptr_support=false \ enable_hangout_services_extension=true \ enable_remoting=false \ fatal_linker_warnings=false \ icu_use_data_file=false \ is_clang=true \ 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_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 SUB_FILES= iridium-browser.desktop iridium SUB_LIST+= COMMENT="${COMMENT}" OPTIONS_DEFINE= CODECS CUPS DEBUG KERBEROS LTO PIPEWIRE OPTIONS_DEFAULT= CODECS CUPS 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 HEIMDAL_BASE_DESC= Heimdal Kerberos (base) HEIMDAL_DESC= Heimdal Kerberos (security/heimdal) MIT_DESC= MIT Kerberos (security/krb5) ALSA_LIB_DEPENDS= libasound.so:audio/alsa-lib ALSA_RUN_DEPENDS= ${LOCALBASE}/lib/alsa-lib/libasound_module_pcm_oss.so:audio/alsa-plugins \ alsa-lib>=1.1.1_1:audio/alsa-lib ALSA_VARS= GN_ARGS+=use_alsa=true ALSA_VARS_OFF= GN_ARGS+=use_alsa=false CODECS_VARS= GN_ARGS+=proprietary_codecs=true \ FFMPEG_BRAND="Chrome" CODECS_VARS_OFF= GN_ARGS+=proprietary_codecs=false \ FFMPEG_BRAND="Chromium" CUPS_LIB_DEPENDS= libcups.so:print/cups CUPS_VARS= GN_ARGS+=use_cups=true CUPS_VARS_OFF= GN_ARGS+=use_cups=false DEBUG_VARS= BUILDTYPE=Debug \ GN_ARGS+=is_debug=true \ GN_ARGS+=is_component_build=false \ GN_ARGS+=symbol_level=1 \ GN_BOOTSTRAP_FLAGS+=--debug \ WANTSPACE="60 GB" \ WANTMEM="32 GB" DEBUG_VARS_OFF= BUILDTYPE=Release \ GN_ARGS+=blink_symbol_level=0 \ GN_ARGS+=is_debug=false \ GN_ARGS+=is_official_build=true \ GN_ARGS+=symbol_level=0 \ WANTSPACE="35 GB" \ WANTMEM="8 GB" 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 .include .include # for COMPILER_VERSION .if ${PORT_OPTIONS:MHEIMDAL_BASE} && !exists(/usr/lib/libkrb5.so) IGNORE= you have selected HEIMDAL_BASE but do not have Heimdal installed in base .endif LLVM_DEFAULT= 19 BUILD_DEPENDS+= clang${LLVM_DEFAULT}:devel/llvm${LLVM_DEFAULT} BINARY_ALIAS+= cpp=${LOCALBASE}/bin/clang-cpp${LLVM_DEFAULT} \ cc=${LOCALBASE}/bin/clang${LLVM_DEFAULT} \ c++=${LOCALBASE}/bin/clang++${LLVM_DEFAULT} \ ar=${LOCALBASE}/bin/llvm-ar${LLVM_DEFAULT} \ nm=${LOCALBASE}/bin/llvm-nm${LLVM_DEFAULT} \ ld=${LOCALBASE}/bin/ld.lld${LLVM_DEFAULT} # - swiftshader/lib/{libEGL.so,libGLESv2.so} is x86 only # - map ffmpeg target to ${ARCH} .if ${ARCH} == aarch64 PLIST_SUB+= NOT_AARCH64="@comment " FFMPEG_TARGET= arm64 .elif ${ARCH} == amd64 BUILD_DEPENDS+= nasm:devel/nasm PLIST_SUB+= NOT_AARCH64="" FFMPEG_TARGET= x64 .elif ${ARCH} == i386 BUILD_DEPENDS+= nasm:devel/nasm PLIST_SUB+= NOT_AARCH64="" FFMPEG_TARGET= ia32 .endif FFMPEG_BDIR= ${WRKSRC}/third_party/ffmpeg/build.${FFMPEG_TARGET}.freebsd/${FFMPEG_BRAND} FFMPEG_CDIR= ${WRKSRC}/third_party/ffmpeg/chromium/config/${FFMPEG_BRAND}/freebsd/${FFMPEG_TARGET} # Allow relocations against read-only segments (override lld default) LDFLAGS_i386= -Wl,-znotext # TODO: -isystem, would be just as ugly as this approach, but more reliably # build would fail without C_INCLUDE_PATH/CPLUS_INCLUDE_PATH env var set. MAKE_ENV+= C_INCLUDE_PATH=${LOCALBASE}/include \ CPLUS_INCLUDE_PATH=${LOCALBASE}/include # rust RUSTC_VERSION!= rustc -V 2>/dev/null || true MAKE_ENV+= RUSTC_BOOTSTRAP=1 GN_ARGS+= enable_rust=true \ rust_sysroot_absolute="${LOCALBASE}" \ rustc_version="${RUSTC_VERSION}" pre-everything:: @${ECHO_MSG} @${ECHO_MSG} "To build ${PORTNAME}, you should have at least:" @${ECHO_MSG} "- ${WANTMEM} of memory" @${ECHO_MSG} "- ${WANTSPACE} of free disk space" @${ECHO_MSG} "- 1.5 million free inodes" @${ECHO_MSG} pre-configure: # We used to remove bundled libraries to be sure that chromium uses # system libraries and not shipped ones. # cd ${WRKSRC} && ${PYTHON_CMD} \ #./build/linux/unbundle/remove_bundled_libraries.py [list of preserved] cd ${WRKSRC} && ${SETENV} ${CONFIGURE_ENV} ${PYTHON_CMD} \ ./build/linux/unbundle/replace_gn_files.py --system-libraries \ dav1d flac fontconfig harfbuzz-ng libdrm libpng \ libusb libwebp libxml libxslt openh264 opus || ${FALSE} # Iridium uses an unreleased version of FFmpeg, so configure it cd ${WRKSRC}/media/ffmpeg && \ ${PYTHON_CMD} scripts/build_ffmpeg.py freebsd ${FFMPEG_TARGET} \ --config-only --branding=${FFMPEG_BRAND} cd ${FFMPEG_BDIR} && ${GMAKE} ffversion.h ${MKDIR} ${FFMPEG_CDIR} .for _e in config.h config.asm config_components.h libavcodec libavformat libavutil -${CP} -pR ${FFMPEG_BDIR}/${_e} ${FFMPEG_CDIR} .endfor touch ${WRKDIR}/pulseaudio-${PULSEV}/src/pulse/version.h @${REINPLACE_CMD} -e 's|$${LOCALBASE}|${LOCALBASE}|;s|$${MODCLANG_VERSION}|${LLVM_DEFAULT}|' \ ${WRKSRC}/build/rust/rust_bindgen.gni \ ${WRKSRC}/build/rust/rust_bindgen_generator.gni do-configure: # GN generator bootstrapping and generating ninja files cd ${WRKSRC} && ${SETENV} ${CONFIGURE_ENV} CC=${CC} CXX=${CXX} LD=${CXX} \ READELF=${READELF} AR=${AR} NM=${NM} ${PYTHON_CMD} \ ./tools/gn/bootstrap/bootstrap.py ${GN_BOOTSTRAP_FLAGS} cd ${WRKSRC} && ${SETENV} ${CONFIGURE_ENV} ./out/${BUILDTYPE}/gn \ gen --args='${GN_ARGS}' out/${BUILDTYPE} # Setup nodejs dependency @${MKDIR} ${WRKSRC}/third_party/node/freebsd/node-freebsd/bin ${LN} -sf ${LOCALBASE}/bin/node ${WRKSRC}/third_party/node/freebsd/node-freebsd/bin/node # Setup buildtools/freebsd @${MKDIR} ${WRKSRC}/buildtools/freebsd ${LN} -sf ${WRKSRC}/buildtools/linux64/clang-format ${WRKSRC}/buildtools/freebsd ${LN} -sf ${WRKSRC}/out/${BUILDTYPE}/gn ${WRKSRC}/buildtools/freebsd ${LN} -sf /usr/bin/strip ${WRKSRC}/buildtools/freebsd/strip do-install: @${MKDIR} ${STAGEDIR}${DATADIR} ${INSTALL_MAN} ${WRKSRC}/chrome/app/resources/manpage.1.in \ ${STAGEDIR}${PREFIX}/share/man/man1/iridium.1 @${SED} -i "" -e 's,\@\@PACKAGE\@\@,chromium,g;s,\@\@MENUNAME\@\@,Iridium Web Browser,g' \ ${STAGEDIR}${PREFIX}/share/man/man1/iridium.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/iridium.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}/iridium cd ${WRKSRC}/out/${BUILDTYPE} && \ ${COPYTREE_SHARE} "locales resources" ${STAGEDIR}${DATADIR} @${MKDIR} ${STAGEDIR}${DESKTOPDIR} ${INSTALL_DATA} ${WRKDIR}/iridium-browser.desktop \ ${STAGEDIR}${DESKTOPDIR} ${INSTALL_SCRIPT} ${WRKDIR}/iridium ${STAGEDIR}${PREFIX}/bin # 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 @${MKDIR} ${STAGEDIR}${DATADIR}/swiftshader ${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} .include diff --git a/www/iridium/distinfo b/www/iridium/distinfo index d2558eee4bfc..d4dab8371eff 100644 --- a/www/iridium/distinfo +++ b/www/iridium/distinfo @@ -1,5 +1,5 @@ -TIMESTAMP = 1758707689 -SHA256 (iridium-browser-2025.09.140.3.tar.xz) = cad0c01396c27024fb374e2c79062c686c41c0fd554a658e72c6a7fe101a2a31 -SIZE (iridium-browser-2025.09.140.3.tar.xz) = 3158716008 +TIMESTAMP = 1761663106 +SHA256 (iridium-browser-2025.10.141.2.tar.xz) = 07c15d77c9503b73c505d9ea9821ac9a22b0a1f842e46b393f62cceaa2db19e0 +SIZE (iridium-browser-2025.10.141.2.tar.xz) = 3135567340 SHA256 (pulseaudio-16.1.tar.gz) = 027266c62f2a84422ac45fa721a649508f0f1628fb1fd9242315ac54ce2d7c92 SIZE (pulseaudio-16.1.tar.gz) = 2763111 diff --git a/www/iridium/files/patch-BUILD.gn b/www/iridium/files/patch-BUILD.gn index 0dae6dbc0f3d..1a6852881d67 100644 --- a/www/iridium/files/patch-BUILD.gn +++ b/www/iridium/files/patch-BUILD.gn @@ -1,98 +1,98 @@ ---- BUILD.gn.orig 2025-09-11 13:19:19 UTC +--- BUILD.gn.orig 2025-10-28 14:29:43 UTC +++ BUILD.gn @@ -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) @@ -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", @@ -441,7 +440,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", @@ -607,6 +606,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)", @@ -655,7 +663,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 @@ -690,7 +698,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", -@@ -1093,7 +1101,7 @@ if (use_blink && !is_cronet_build) { +@@ -1092,7 +1100,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", -@@ -1246,7 +1254,7 @@ if (use_blink && !is_cronet_build) { +@@ -1245,7 +1253,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. -@@ -1260,7 +1268,7 @@ if (use_blink && !is_cronet_build) { +@@ -1259,7 +1267,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. @@ -1714,7 +1722,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/iridium/files/patch-base_BUILD.gn b/www/iridium/files/patch-base_BUILD.gn index 04381b5fdb67..e3abadc5223c 100644 --- a/www/iridium/files/patch-base_BUILD.gn +++ b/www/iridium/files/patch-base_BUILD.gn @@ -1,150 +1,150 @@ ---- base/BUILD.gn.orig 2025-09-11 13:19:19 UTC +--- base/BUILD.gn.orig 2025-10-28 14:29:43 UTC +++ base/BUILD.gn -@@ -1110,11 +1110,26 @@ component("base") { +@@ -1113,11 +1113,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" ] -@@ -1134,7 +1149,7 @@ component("base") { +@@ -1137,7 +1152,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" ] } -@@ -2143,6 +2158,22 @@ component("base") { +@@ -2139,6 +2154,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 += [ -@@ -2317,6 +2348,33 @@ component("base") { +@@ -2313,6 +2344,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", -@@ -2723,7 +2781,7 @@ buildflag_header("protected_memory_buildflags") { +@@ -2719,7 +2777,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" ] -@@ -3229,7 +3287,7 @@ if (is_apple) { +@@ -3225,7 +3283,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 -@@ -3922,7 +3980,7 @@ test("base_unittests") { - ] +@@ -3920,7 +3978,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", -@@ -3946,7 +4004,7 @@ test("base_unittests") { +@@ -3944,7 +4002,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", -@@ -3957,7 +4015,7 @@ test("base_unittests") { +@@ -3955,7 +4013,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" ] } -@@ -4144,7 +4202,7 @@ test("base_unittests") { +@@ -4142,7 +4200,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/iridium/files/patch-base_allocator_partition__alloc__features.cc b/www/iridium/files/patch-base_allocator_partition__alloc__features.cc index e14c0e549e8b..e38bc1344998 100644 --- a/www/iridium/files/patch-base_allocator_partition__alloc__features.cc +++ b/www/iridium/files/patch-base_allocator_partition__alloc__features.cc @@ -1,11 +1,11 @@ ---- base/allocator/partition_alloc_features.cc.orig 2025-09-11 13:19:19 UTC +--- base/allocator/partition_alloc_features.cc.orig 2025-10-28 14:29:43 UTC +++ base/allocator/partition_alloc_features.cc -@@ -154,7 +154,7 @@ BASE_FEATURE(kPartitionAllocEventuallyZeroFreedMemory, +@@ -143,7 +143,7 @@ BASE_FEATURE(PartitionAllocEventuallyZeroFreedMemory, + // Evaluated and positive stability and peformance-wise on Linux-based systems, // disabled elsewhere (for now). Does not apply to Windows. - BASE_FEATURE(kPartitionAllocFewerMemoryRegions, - "PartitionAllocFewerMemoryRegions", + BASE_FEATURE(PartitionAllocFewerMemoryRegions, -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) FEATURE_ENABLED_BY_DEFAULT); #else FEATURE_DISABLED_BY_DEFAULT); diff --git a/www/iridium/files/patch-base_allocator_partition__allocator_partition__alloc.gni b/www/iridium/files/patch-base_allocator_partition__allocator_partition__alloc.gni index 7ad7d18fac39..2ee780dc64ea 100644 --- a/www/iridium/files/patch-base_allocator_partition__allocator_partition__alloc.gni +++ b/www/iridium/files/patch-base_allocator_partition__allocator_partition__alloc.gni @@ -1,20 +1,20 @@ ---- base/allocator/partition_allocator/partition_alloc.gni.orig 2025-09-11 13:19:19 UTC +--- base/allocator/partition_allocator/partition_alloc.gni.orig 2025-10-28 14:29:43 UTC +++ base/allocator/partition_allocator/partition_alloc.gni @@ -87,7 +87,7 @@ if (current_cpu == "x64" || current_cpu == "arm64" || # TODO(crbug.com/329199197): Clean this up when experiments are complete. use_large_empty_slot_span_ring = true -has_memory_tagging = current_cpu == "arm64" && is_clang && !is_asan && +has_memory_tagging = current_cpu == "arm64" && !is_bsd && is_clang && !is_asan && !is_hwasan && (is_linux || is_android) declare_args() { -@@ -493,7 +493,7 @@ assert(!use_asan_backup_ref_ptr || use_raw_ptr_hookabl +@@ -482,7 +482,7 @@ assert(!use_asan_backup_ref_ptr || use_raw_ptr_hookabl # dependencies that use partition_allocator are compiled in AOSP against a # version of glibc that does not include pkeys syscall numbers. is_pkeys_available = - (is_linux || is_chromeos) && current_cpu == "x64" && !is_cronet_build + !is_bsd && (is_linux || is_chromeos) && current_cpu == "x64" && !is_cronet_build declare_args() { enable_pkeys = is_pkeys_available } diff --git a/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_partition__alloc__constants.h b/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_partition__alloc__constants.h index bd9ea21cb574..46a0bcaa2777 100644 --- a/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_partition__alloc__constants.h +++ b/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_partition__alloc__constants.h @@ -1,20 +1,20 @@ ---- base/allocator/partition_allocator/src/partition_alloc/partition_alloc_constants.h.orig 2025-09-11 13:19:19 UTC +--- base/allocator/partition_allocator/src/partition_alloc/partition_alloc_constants.h.orig 2025-10-28 14:29:43 UTC +++ base/allocator/partition_allocator/src/partition_alloc/partition_alloc_constants.h -@@ -313,7 +313,7 @@ PA_DEFINE_OPERATORS_FOR_FLAGS(PoolHandleMask); +@@ -315,7 +315,7 @@ PA_DEFINE_OPERATORS_FOR_FLAGS(PoolHandleMask); // 8GB for each of the glued pools). #if PA_BUILDFLAG(HAS_64_BIT_POINTERS) #if PA_BUILDFLAG(IS_ANDROID) || PA_BUILDFLAG(IS_IOS) || \ - PA_BUILDFLAG(ENABLE_POINTER_COMPRESSION) + PA_BUILDFLAG(ENABLE_POINTER_COMPRESSION) || PA_BUILDFLAG(IS_BSD) constexpr size_t kPoolMaxSize = 8 * kGiB; #else constexpr size_t kPoolMaxSize = 16 * kGiB; -@@ -397,7 +397,7 @@ PA_ALWAYS_INLINE constexpr size_t MaxDirectMapped() { +@@ -399,7 +399,7 @@ PA_ALWAYS_INLINE constexpr size_t MaxDirectMapped() { // TODO(casey.smalley@arm.com): under 64k pages we can end up in a situation // where a normal slot span will be large enough to contain multiple items, // but the address will go over the final partition page after being aligned. -#if PA_BUILDFLAG(IS_LINUX) && PA_BUILDFLAG(PA_ARCH_CPU_ARM64) +#if (PA_BUILDFLAG(IS_LINUX) || PA_BUILDFLAG(IS_BSD)) && PA_BUILDFLAG(PA_ARCH_CPU_ARM64) constexpr size_t kMaxSupportedAlignment = kSuperPageSize / 4; #else constexpr size_t kMaxSupportedAlignment = kSuperPageSize / 2; diff --git a/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_partition__root.h b/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_partition__root.h index 77173952b00f..750a7aa1ecfd 100644 --- a/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_partition__root.h +++ b/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_partition__root.h @@ -1,11 +1,11 @@ ---- base/allocator/partition_allocator/src/partition_alloc/partition_root.h.orig 2025-09-11 13:19:19 UTC +--- base/allocator/partition_allocator/src/partition_alloc/partition_root.h.orig 2025-10-28 14:29:43 UTC +++ base/allocator/partition_allocator/src/partition_alloc/partition_root.h -@@ -197,7 +197,7 @@ struct PartitionOptions { +@@ -202,7 +202,7 @@ struct PartitionOptions { // system to configure PartitionAlloc. EnableToggle fewer_memory_regions = #if PA_BUILDFLAG(IS_LINUX) || PA_BUILDFLAG(IS_ANDROID) || \ - PA_BUILDFLAG(IS_CHROMEOS) + PA_BUILDFLAG(IS_CHROMEOS) || PA_BUILDFLAG(IS_BSD) kEnabled; #else kDisabled; diff --git a/www/iridium/files/patch-base_debug_stack__trace.cc b/www/iridium/files/patch-base_debug_stack__trace.cc index 81fe117bfb42..e357ec2b2776 100644 --- a/www/iridium/files/patch-base_debug_stack__trace.cc +++ b/www/iridium/files/patch-base_debug_stack__trace.cc @@ -1,39 +1,39 @@ ---- base/debug/stack_trace.cc.orig 2025-05-07 06:48:23 UTC +--- base/debug/stack_trace.cc.orig 2025-10-28 14:29:43 UTC +++ base/debug/stack_trace.cc -@@ -268,7 +268,7 @@ bool StackTrace::WillSymbolizeToStreamForTesting() { +@@ -271,7 +271,7 @@ bool StackTrace::WillSymbolizeToStreamForTesting() { // Symbols are not expected to be reliable when gn args specifies // symbol_level=0. return false; -#elif defined(__UCLIBC__) || defined(_AIX) +#elif defined(__UCLIBC__) || defined(_AIX) || BUILDFLAG(IS_BSD) // StackTrace::OutputToStream() is not implemented under uclibc, nor AIX. // See https://crbug.com/706728 return false; -@@ -321,7 +321,9 @@ void StackTrace::OutputToStreamWithPrefix(std::ostream +@@ -324,7 +324,9 @@ void StackTrace::OutputToStreamWithPrefix(std::ostream } return; } +#if !BUILDFLAG(IS_BSD) OutputToStreamWithPrefixImpl(os, prefix_string); +#endif } std::string StackTrace::ToString() const { -@@ -330,7 +332,7 @@ std::string StackTrace::ToString() const { +@@ -333,7 +335,7 @@ std::string StackTrace::ToString() const { std::string StackTrace::ToStringWithPrefix(cstring_view prefix_string) const { std::stringstream stream; -#if !defined(__UCLIBC__) && !defined(_AIX) +#if !defined(__UCLIBC__) && !defined(_AIX) && !BUILDFLAG(IS_BSD) OutputToStreamWithPrefix(&stream, prefix_string); #endif return stream.str(); -@@ -354,7 +356,7 @@ bool StackTrace::ShouldSuppressOutput() { +@@ -357,7 +359,7 @@ bool StackTrace::ShouldSuppressOutput() { } std::ostream& operator<<(std::ostream& os, const StackTrace& s) { -#if !defined(__UCLIBC__) && !defined(_AIX) +#if !defined(__UCLIBC__) && !defined(_AIX) && !BUILDFLAG(IS_BSD) s.OutputToStream(&os); #else os << "StackTrace::OutputToStream not implemented."; diff --git a/www/iridium/files/patch-base_files_file__util__unittest.cc b/www/iridium/files/patch-base_files_file__util__unittest.cc index 9be0bc93987f..921bd98bdb51 100644 --- a/www/iridium/files/patch-base_files_file__util__unittest.cc +++ b/www/iridium/files/patch-base_files_file__util__unittest.cc @@ -1,40 +1,40 @@ ---- base/files/file_util_unittest.cc.orig 2025-09-11 13:19:19 UTC +--- base/files/file_util_unittest.cc.orig 2025-10-28 14:29:43 UTC +++ base/files/file_util_unittest.cc -@@ -4101,7 +4101,7 @@ TEST_F(FileUtilTest, ReadFileToStringWithNamedPipe) { +@@ -4123,7 +4123,7 @@ TEST_F(FileUtilTest, ReadFileToStringWithNamedPipe) { } #endif // BUILDFLAG(IS_WIN) -#if BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_APPLE) +#if BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_APPLE) && !BUILDFLAG(IS_BSD) TEST_F(FileUtilTest, ReadFileToStringWithProcFileSystem) { FilePath file_path("/proc/cpuinfo"); std::string data = "temp"; -@@ -4686,6 +4686,19 @@ TEST_F(FileUtilTest, CreateDirectoryOnlyCheckMissingSu +@@ -4708,6 +4708,19 @@ TEST_F(FileUtilTest, CreateDirectoryOnlyCheckMissingSu #endif // BUILDFLAG(IS_ANDROID) +#if BUILDFLAG(IS_OPENBSD) +TEST_F(FileUtilTest, CreateDirectoryInUnveiledPath) { + FilePath dir = PathService::CheckedGet(DIR_GEN_TEST_DATA_ROOT); + dir = dir.Append(FILE_PATH_LITERAL("base")); + dir = dir.Append(FILE_PATH_LITERAL("test")); + dir = dir.Append(FILE_PATH_LITERAL("unveil")); + unveil(dir.value().c_str(), "rwc"); + EXPECT_TRUE(CreateDirectory(dir)); + dir = dir.Append(FILE_PATH_LITERAL("test")); + EXPECT_FALSE(CreateDirectory(dir)); +} +#endif + #if BUILDFLAG(IS_WIN) && BUILDFLAG(GOOGLE_CHROME_BRANDING) && \ defined(ARCH_CPU_32_BITS) // TODO(crbug.com/327582285): Re-enable these tests. They may be failing due to -@@ -4852,7 +4865,7 @@ TEST(FileUtilMultiThreadedTest, MultiThreadedTempFiles +@@ -4874,7 +4887,7 @@ TEST(FileUtilMultiThreadedTest, MultiThreadedTempFiles NULL); #else size_t bytes_written = - ::write(::fileno(output_file.get()), content.c_str(), content.length()); + ::write(fileno(output_file.get()), content.c_str(), content.length()); #endif EXPECT_EQ(content.length(), bytes_written); ::fflush(output_file.get()); diff --git a/www/iridium/files/patch-base_memory_discardable__memory.cc b/www/iridium/files/patch-base_memory_discardable__memory.cc index 8bd5eb030d3b..762aaa3801d0 100644 --- a/www/iridium/files/patch-base_memory_discardable__memory.cc +++ b/www/iridium/files/patch-base_memory_discardable__memory.cc @@ -1,38 +1,38 @@ ---- base/memory/discardable_memory.cc.orig 2025-05-07 06:48:23 UTC +--- base/memory/discardable_memory.cc.orig 2025-10-28 14:29:43 UTC +++ base/memory/discardable_memory.cc -@@ -26,7 +26,7 @@ BASE_FEATURE(kMadvFreeDiscardableMemory, - base::FEATURE_DISABLED_BY_DEFAULT); +@@ -24,7 +24,7 @@ namespace features { + BASE_FEATURE(MadvFreeDiscardableMemory, base::FEATURE_DISABLED_BY_DEFAULT); #endif // BUILDFLAG(IS_POSIX) -#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - BASE_FEATURE(kDiscardableMemoryBackingTrial, - "DiscardableMemoryBackingTrial", - base::FEATURE_DISABLED_BY_DEFAULT); -@@ -44,7 +44,7 @@ BASE_FEATURE_ENUM_PARAM(DiscardableMemoryTrialGroup, + BASE_FEATURE(DiscardableMemoryBackingTrial, base::FEATURE_DISABLED_BY_DEFAULT); + + BASE_FEATURE_ENUM_PARAM(DiscardableMemoryTrialGroup, +@@ -40,7 +40,7 @@ BASE_FEATURE_ENUM_PARAM(DiscardableMemoryTrialGroup, namespace { -#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) DiscardableMemoryBacking GetBackingForFieldTrial() { DiscardableMemoryTrialGroup trial_group = -@@ -63,7 +63,7 @@ DiscardableMemoryBacking GetBackingForFieldTrial() { +@@ -59,7 +59,7 @@ DiscardableMemoryBacking GetBackingForFieldTrial() { } // namespace -#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Probe capabilities of this device to determine whether we should participate // in the discardable memory backing trial. -@@ -95,7 +95,7 @@ DiscardableMemory::DiscardableMemory() = default; +@@ -91,7 +91,7 @@ DiscardableMemory::DiscardableMemory() = default; DiscardableMemory::~DiscardableMemory() = default; DiscardableMemoryBacking GetDiscardableMemoryBacking() { -#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) if (DiscardableMemoryBackingFieldTrialIsEnabled()) { return GetBackingForFieldTrial(); } diff --git a/www/iridium/files/patch-base_memory_madv__free__discardable__memory__posix.cc b/www/iridium/files/patch-base_memory_madv__free__discardable__memory__posix.cc index 889814b88c88..bc653bab5493 100644 --- a/www/iridium/files/patch-base_memory_madv__free__discardable__memory__posix.cc +++ b/www/iridium/files/patch-base_memory_madv__free__discardable__memory__posix.cc @@ -1,21 +1,21 @@ ---- base/memory/madv_free_discardable_memory_posix.cc.orig 2025-09-11 13:19:19 UTC +--- base/memory/madv_free_discardable_memory_posix.cc.orig 2025-10-28 14:29:43 UTC +++ base/memory/madv_free_discardable_memory_posix.cc -@@ -298,6 +298,10 @@ void MadvFreeDiscardableMemoryPosix::SetKeepMemoryForT +@@ -297,6 +297,10 @@ void MadvFreeDiscardableMemoryPosix::SetKeepMemoryForT bool MadvFreeDiscardableMemoryPosix::IsResident() const { DFAKE_SCOPED_RECURSIVE_LOCK(thread_collision_warner_); +// XXX mincore +#if BUILDFLAG(IS_BSD) + return false; +#else #if BUILDFLAG(IS_APPLE) std::vector vec(allocated_pages_); #else -@@ -314,6 +318,7 @@ bool MadvFreeDiscardableMemoryPosix::IsResident() cons +@@ -313,6 +317,7 @@ bool MadvFreeDiscardableMemoryPosix::IsResident() cons } } return true; +#endif } bool MadvFreeDiscardableMemoryPosix::IsDiscarded() const { diff --git a/www/iridium/files/patch-base_memory_platform__shared__memory__region.h b/www/iridium/files/patch-base_memory_platform__shared__memory__region.h index 3259c61c9cd5..e28a549e9591 100644 --- a/www/iridium/files/patch-base_memory_platform__shared__memory__region.h +++ b/www/iridium/files/patch-base_memory_platform__shared__memory__region.h @@ -1,38 +1,20 @@ ---- base/memory/platform_shared_memory_region.h.orig 2025-09-11 13:19:19 UTC +--- base/memory/platform_shared_memory_region.h.orig 2025-10-28 14:29:43 UTC +++ base/memory/platform_shared_memory_region.h -@@ -19,7 +19,7 @@ - #include "base/unguessable_token.h" - #include "build/build_config.h" - --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - namespace content { - class SandboxIPCHandler; - } -@@ -86,7 +86,7 @@ class BASE_EXPORT PlatformSharedMemoryRegion { - kMaxValue = GET_SHMEM_TEMP_DIR_FAILURE - }; - --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - // Structure to limit access to executable region creation. - struct ExecutableRegion { - private: -@@ -125,7 +125,7 @@ class BASE_EXPORT PlatformSharedMemoryRegion { +@@ -99,7 +99,7 @@ class BASE_EXPORT PlatformSharedMemoryRegion { #if BUILDFLAG(IS_FUCHSIA) kNotVmo, #endif -#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) kFcntlFailed, kReadOnlyFdNotReadOnly, kUnexpectedReadOnlyFd, -@@ -256,7 +256,7 @@ class BASE_EXPORT PlatformSharedMemoryRegion { +@@ -230,7 +230,7 @@ class BASE_EXPORT PlatformSharedMemoryRegion { CheckPlatformHandlePermissionsCorrespondToMode); static PlatformSharedMemoryRegion Create(Mode mode, size_t size -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) , bool executable = false #endif diff --git a/www/iridium/files/patch-base_memory_platform__shared__memory__region__posix.cc b/www/iridium/files/patch-base_memory_platform__shared__memory__region__posix.cc index e671d6171bf1..6b9d56d7ef6e 100644 --- a/www/iridium/files/patch-base_memory_platform__shared__memory__region__posix.cc +++ b/www/iridium/files/patch-base_memory_platform__shared__memory__region__posix.cc @@ -1,29 +1,20 @@ ---- base/memory/platform_shared_memory_region_posix.cc.orig 2025-09-11 13:19:19 UTC +--- base/memory/platform_shared_memory_region_posix.cc.orig 2025-10-28 14:29:43 UTC +++ base/memory/platform_shared_memory_region_posix.cc -@@ -59,7 +59,7 @@ std::optional CheckFDAccessMode(int - - } // namespace - --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - // static - ScopedFD PlatformSharedMemoryRegion::ExecutableRegion::CreateFD(size_t size) { - PlatformSharedMemoryRegion region = -@@ -184,7 +184,7 @@ bool PlatformSharedMemoryRegion::ConvertToUnsafe() { +@@ -172,7 +172,7 @@ bool PlatformSharedMemoryRegion::ConvertToUnsafe() { // static PlatformSharedMemoryRegion PlatformSharedMemoryRegion::Create(Mode mode, size_t size -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) , bool executable #endif -@@ -209,7 +209,7 @@ PlatformSharedMemoryRegion PlatformSharedMemoryRegion: +@@ -197,7 +197,7 @@ PlatformSharedMemoryRegion PlatformSharedMemoryRegion: // flag. FilePath directory; if (!GetShmemTempDir( -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) executable, #else false /* executable */, diff --git a/www/iridium/files/patch-base_message__loop_message__pump__epoll.cc b/www/iridium/files/patch-base_message__loop_message__pump__epoll.cc index 09df04ad4c43..f287d9ce7a90 100644 --- a/www/iridium/files/patch-base_message__loop_message__pump__epoll.cc +++ b/www/iridium/files/patch-base_message__loop_message__pump__epoll.cc @@ -1,11 +1,11 @@ ---- base/message_loop/message_pump_epoll.cc.orig 2025-09-11 13:19:19 UTC +--- base/message_loop/message_pump_epoll.cc.orig 2025-10-28 14:29:43 UTC +++ base/message_loop/message_pump_epoll.cc -@@ -49,7 +49,7 @@ std::atomic_bool g_use_batched_version = false; +@@ -44,7 +44,7 @@ std::atomic_bool g_use_batched_version = false; std::atomic_bool g_use_poll = false; constexpr std::pair kEpollToPollEvents[] = { - {EPOLLIN, POLLIN}, {EPOLLOUT, POLLOUT}, {EPOLLRDHUP, POLLRDHUP}, + {EPOLLIN, POLLIN}, {EPOLLOUT, POLLOUT}, {EPOLLPRI, POLLPRI}, {EPOLLERR, POLLERR}, {EPOLLHUP, POLLHUP}}; void SetEventsForPoll(const uint32_t epoll_events, struct pollfd* poll_entry) { diff --git a/www/iridium/files/patch-base_native__library__posix.cc b/www/iridium/files/patch-base_native__library__posix.cc deleted file mode 100644 index 1dd35780c630..000000000000 --- a/www/iridium/files/patch-base_native__library__posix.cc +++ /dev/null @@ -1,11 +0,0 @@ ---- base/native_library_posix.cc.orig 2025-05-07 06:48:23 UTC -+++ base/native_library_posix.cc -@@ -34,7 +34,7 @@ NativeLibrary LoadNativeLibraryWithOptions(const FileP - // http://crbug.com/17943, http://crbug.com/17557, http://crbug.com/36892, - // and http://crbug.com/40794. - int flags = RTLD_LAZY; --#if BUILDFLAG(IS_ANDROID) || !defined(RTLD_DEEPBIND) -+#if BUILDFLAG(IS_ANDROID) || !defined(RTLD_DEEPBIND) || BUILDFLAG(IS_BSD) - // Certain platforms don't define RTLD_DEEPBIND. Android dlopen() requires - // further investigation, as it might vary across versions. Crash here to - // warn developers that they're trying to rely on uncertain behavior. diff --git a/www/iridium/files/patch-base_native__library__unittest.cc b/www/iridium/files/patch-base_native__library__unittest.cc deleted file mode 100644 index 9e19b16afd0e..000000000000 --- a/www/iridium/files/patch-base_native__library__unittest.cc +++ /dev/null @@ -1,11 +0,0 @@ ---- base/native_library_unittest.cc.orig 2025-05-07 06:48:23 UTC -+++ base/native_library_unittest.cc -@@ -135,7 +135,7 @@ TEST(NativeLibraryTest, LoadLibrary) { - // versions with respect to symbol resolution scope. - // TSan and MSan error out on RTLD_DEEPBIND, https://crbug.com/705255 - #if !BUILDFLAG(IS_ANDROID) && !defined(THREAD_SANITIZER) && \ -- !defined(MEMORY_SANITIZER) -+ !defined(MEMORY_SANITIZER) && !BUILDFLAG(IS_BSD) - - // Verifies that the |prefer_own_symbols| option satisfies its guarantee that - // a loaded library will always prefer local symbol resolution before diff --git a/www/iridium/files/patch-base_process_process__metrics.h b/www/iridium/files/patch-base_process_process__metrics.h index 325f7cd0dd21..8f71d0cce098 100644 --- a/www/iridium/files/patch-base_process_process__metrics.h +++ b/www/iridium/files/patch-base_process_process__metrics.h @@ -1,106 +1,116 @@ ---- base/process/process_metrics.h.orig 2025-09-11 13:19:19 UTC +--- base/process/process_metrics.h.orig 2025-10-28 14:29:43 UTC +++ base/process/process_metrics.h -@@ -39,7 +39,7 @@ +@@ -40,7 +40,7 @@ #endif #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || \ - BUILDFLAG(IS_AIX) + BUILDFLAG(IS_AIX) || BUILDFLAG(IS_BSD) #include #include #include -@@ -49,7 +49,7 @@ +@@ -50,7 +50,7 @@ namespace base { -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) // Minor and major page fault counts since the process creation. // Both counts are process-wide, and exclude child processes. // -@@ -179,7 +179,7 @@ class BASE_EXPORT ProcessMetrics { +@@ -88,7 +88,7 @@ struct ProcessMemoryInfo { + #endif // BUILDFLAG(IS_APPLE) + + #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || \ +- BUILDFLAG(IS_FUCHSIA) ++ BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) + uint64_t rss_anon_bytes = 0; + uint64_t vm_swap_bytes = 0; + #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || +@@ -180,7 +180,7 @@ class BASE_EXPORT ProcessMetrics { base::expected GetCumulativeCPUUsage(); #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || \ - BUILDFLAG(IS_AIX) + BUILDFLAG(IS_AIX) || BUILDFLAG(IS_BSD) // Emits the cumulative CPU usage for all currently active threads since they // were started into the output parameter (replacing its current contents). // Threads that have already terminated will not be reported. Thus, the sum of -@@ -224,7 +224,7 @@ class BASE_EXPORT ProcessMetrics { +@@ -225,7 +225,7 @@ class BASE_EXPORT ProcessMetrics { int GetOpenFdSoftLimit() const; #endif // BUILDFLAG(IS_POSIX) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) // Minor and major page fault count as reported by /proc/[pid]/stat. // Returns true for success. bool GetPageFaultCounts(PageFaultCounts* counts) const; -@@ -242,7 +242,7 @@ class BASE_EXPORT ProcessMetrics { +@@ -243,7 +243,7 @@ class BASE_EXPORT ProcessMetrics { #endif // !BUILDFLAG(IS_MAC) #if BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ - BUILDFLAG(IS_AIX) + BUILDFLAG(IS_AIX) || BUILDFLAG(IS_BSD) int CalculateIdleWakeupsPerSecond(uint64_t absolute_idle_wakeups); #endif #if BUILDFLAG(IS_APPLE) -@@ -264,12 +264,10 @@ class BASE_EXPORT ProcessMetrics { +@@ -265,12 +265,12 @@ class BASE_EXPORT ProcessMetrics { // Used to store the previous times and CPU usage counts so we can // compute the CPU usage between calls. TimeTicks last_cpu_time_; -#if !BUILDFLAG(IS_FREEBSD) || !BUILDFLAG(IS_POSIX) ++#if BUILDFLAG(IS_POSIX) TimeDelta last_cumulative_cpu_; --#endif + #endif #if BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ - BUILDFLAG(IS_AIX) + BUILDFLAG(IS_AIX) || BUILDFLAG(IS_BSD) // Same thing for idle wakeups. TimeTicks last_idle_wakeups_time_; uint64_t last_absolute_idle_wakeups_; -@@ -310,7 +308,7 @@ BASE_EXPORT void IncreaseFdLimitTo(unsigned int max_de +@@ -311,7 +311,7 @@ BASE_EXPORT void IncreaseFdLimitTo(unsigned int max_de #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || \ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_AIX) || \ - BUILDFLAG(IS_FUCHSIA) + BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) - // Data about system-wide memory consumption. Values are in KB. Available on - // Windows, Mac, Linux, Android and Chrome OS. + // Data about system-wide memory consumption. Available on Windows, Mac, Linux, + // Android and Chrome OS. // -@@ -342,7 +340,7 @@ struct BASE_EXPORT SystemMemoryInfoKB { +@@ -346,7 +346,7 @@ struct BASE_EXPORT SystemMemoryInfo { #endif #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || \ - BUILDFLAG(IS_AIX) + BUILDFLAG(IS_AIX) || BUILDFLAG(IS_BSD) // This provides an estimate of available memory as described here: // https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=34e431b0ae398fc54ea69ff85ec700722c9da773 // NOTE: this is ONLY valid in kernels 3.14 and up. Its value will always -@@ -357,7 +355,7 @@ struct BASE_EXPORT SystemMemoryInfoKB { +@@ -361,7 +361,7 @@ struct BASE_EXPORT SystemMemoryInfo { #endif #if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ - BUILDFLAG(IS_AIX) || BUILDFLAG(IS_FUCHSIA) + BUILDFLAG(IS_AIX) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) - int buffers = 0; - int cached = 0; - int active_anon = 0; -@@ -394,7 +392,7 @@ BASE_EXPORT bool GetSystemMemoryInfo(SystemMemoryInfoK + ByteCount buffers; + ByteCount cached; + ByteCount active_anon; +@@ -398,7 +398,7 @@ BASE_EXPORT bool GetSystemMemoryInfo(SystemMemoryInfo* // BUILDFLAG(IS_FUCHSIA) #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || \ - BUILDFLAG(IS_AIX) + BUILDFLAG(IS_AIX) || BUILDFLAG(IS_BSD) // Parse the data found in /proc//stat and return the sum of the // CPU-related ticks. Returns -1 on parse error. // Exposed for testing. -@@ -570,7 +568,7 @@ class BASE_EXPORT SystemMetrics { +@@ -574,7 +574,7 @@ class BASE_EXPORT SystemMetrics { FRIEND_TEST_ALL_PREFIXES(SystemMetricsTest, SystemMetrics); size_t committed_memory_; -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) - SystemMemoryInfoKB memory_info_; + SystemMemoryInfo memory_info_; VmStatInfo vmstat_info_; SystemDiskInfo disk_info_; diff --git a/www/iridium/files/patch-base_process_process__metrics__freebsd.cc b/www/iridium/files/patch-base_process_process__metrics__freebsd.cc index b183a67d8e57..6318b26f573e 100644 --- a/www/iridium/files/patch-base_process_process__metrics__freebsd.cc +++ b/www/iridium/files/patch-base_process_process__metrics__freebsd.cc @@ -1,225 +1,225 @@ ---- base/process/process_metrics_freebsd.cc.orig 2025-09-11 13:19:19 UTC +--- base/process/process_metrics_freebsd.cc.orig 2025-10-28 14:29:43 UTC +++ base/process/process_metrics_freebsd.cc @@ -3,41 +3,92 @@ // found in the LICENSE file. #include "base/process/process_metrics.h" +#include "base/notimplemented.h" #include +#include #include #include #include +#include /* O_RDONLY */ +#include +#include + #include "base/memory/ptr_util.h" +#include "base/values.h" namespace base { +namespace { +int GetPageShift() { + int pagesize = getpagesize(); + int pageshift = 0; -ProcessMetrics::ProcessMetrics(ProcessHandle process) - : process_(process), last_cpu_(0) {} + while (pagesize > 1) { + pageshift++; + pagesize >>= 1; + } + return pageshift; +} +} + +ProcessMetrics::ProcessMetrics(ProcessHandle process) : process_(process) {} + // static std::unique_ptr ProcessMetrics::CreateProcessMetrics( ProcessHandle process) { return WrapUnique(new ProcessMetrics(process)); } -base::expected -ProcessMetrics::GetPlatformIndependentCPUUsage() { - struct kinfo_proc info; - int mib[] = {CTL_KERN, KERN_PROC, KERN_PROC_PID, process_}; - size_t length = sizeof(info); +base::expected +ProcessMetrics::GetMemoryInfo() const { + ProcessMemoryInfo memory_info; + kvm_t *kd = kvm_open(nullptr, "/dev/null", nullptr, O_RDONLY, "kvm_open"); + struct kinfo_proc *pp; + int nproc; - if (sysctl(mib, std::size(mib), &info, &length, NULL, 0) < 0) { - return base::unexpected(ProcessCPUUsageError::kSystemError); + if (kd == nullptr) { + return base::unexpected(ProcessUsageError::kSystemError); } - return base::ok(double{info.ki_pctcpu} / FSCALE * 100.0); + if ((pp = kvm_getprocs(kd, KERN_PROC_PID, process_, &nproc)) == nullptr) { + kvm_close(kd); + return base::unexpected(ProcessUsageError::kProcessNotFound); + } + + if (nproc > 0) { + memory_info.resident_set_bytes = pp->ki_rssize << GetPageShift(); + } else { + kvm_close(kd); + return base::unexpected(ProcessUsageError::kProcessNotFound); + } + + kvm_close(kd); + return memory_info; } base::expected ProcessMetrics::GetCumulativeCPUUsage() { - NOTREACHED(); + struct kinfo_proc info; + size_t length = sizeof(struct kinfo_proc); + struct timeval tv; + + int mib[] = { CTL_KERN, KERN_PROC, KERN_PROC_PID, process_ }; + + if (process_ == 0) { + return base::unexpected(ProcessCPUUsageError::kSystemError); + } + + if (sysctl(mib, std::size(mib), &info, &length, NULL, 0) < 0) { + return base::unexpected(ProcessCPUUsageError::kSystemError); + } + + if (length == 0) { + return base::unexpected(ProcessCPUUsageError::kProcessNotFound); + } + + return base::ok(Microseconds(info.ki_runtime)); } size_t GetSystemCommitCharge() { @@ -65,5 +116,118 @@ size_t GetSystemCommitCharge() { return mem_total - (mem_free * pagesize) - (mem_inactive * pagesize); } + +int64_t GetNumberOfThreads(ProcessHandle process) { + // Taken from FreeBSD top (usr.bin/top/machine.c) + + kvm_t* kd = kvm_open(NULL, "/dev/null", NULL, O_RDONLY, "kvm_open"); + if (kd == NULL) + return 0; + + struct kinfo_proc* pbase; + int nproc; + pbase = kvm_getprocs(kd, KERN_PROC_PID, process, &nproc); + if (pbase == NULL) + return 0; + + if (kvm_close(kd) == -1) + return 0; + + return nproc; +} + -+bool GetSystemMemoryInfo(SystemMemoryInfoKB *meminfo) { ++bool GetSystemMemoryInfo(SystemMemoryInfo *meminfo) { + unsigned int mem_total, mem_free, swap_total, swap_used; + size_t length; -+ int pagesizeKB; ++ int pagesize; + -+ pagesizeKB = getpagesize() / 1024; ++ pagesize = getpagesize(); + + length = sizeof(mem_total); + if (sysctlbyname("vm.stats.vm.v_page_count", &mem_total, + &length, NULL, 0) != 0 || length != sizeof(mem_total)) + return false; + + length = sizeof(mem_free); + if (sysctlbyname("vm.stats.vm.v_free_count", &mem_free, &length, NULL, 0) + != 0 || length != sizeof(mem_free)) + return false; + + length = sizeof(swap_total); + if (sysctlbyname("vm.swap_size", &swap_total, &length, NULL, 0) + != 0 || length != sizeof(swap_total)) + return false; + + length = sizeof(swap_used); + if (sysctlbyname("vm.swap_anon_use", &swap_used, &length, NULL, 0) + != 0 || length != sizeof(swap_used)) + return false; + -+ meminfo->total = mem_total * pagesizeKB; -+ meminfo->free = mem_free * pagesizeKB; -+ meminfo->swap_total = swap_total * pagesizeKB; -+ meminfo->swap_free = (swap_total - swap_used) * pagesizeKB; ++ meminfo->total = ByteCount::FromUnsigned(mem_total * pagesize); ++ meminfo->free = ByteCount::FromUnsigned(mem_free * pagesize); ++ meminfo->swap_total = ByteCount::FromUnsigned(swap_total * pagesize); ++ meminfo->swap_free = ByteCount::FromUnsigned((swap_total - swap_used) * pagesize); + + return true; +} + +int ProcessMetrics::GetOpenFdCount() const { + struct kinfo_file * kif; + int cnt; + + if ((kif = kinfo_getfile(process_, &cnt)) == NULL) + return -1; + + free(kif); + + return cnt; +} + +int ProcessMetrics::GetOpenFdSoftLimit() const { + size_t length; + int total_count = 0; + int mib[] = { CTL_KERN, KERN_MAXFILESPERPROC }; + + length = sizeof(total_count); + + if (sysctl(mib, std::size(mib), &total_count, &length, NULL, 0) < 0) { + total_count = -1; + } + + return total_count; +} + +int ProcessMetrics::GetIdleWakeupsPerSecond() { + NOTIMPLEMENTED(); + return 0; +} + +bool GetSystemDiskInfo(SystemDiskInfo* diskinfo) { + NOTIMPLEMENTED(); + return false; +} + +bool GetVmStatInfo(VmStatInfo* vmstat) { + NOTIMPLEMENTED(); + return false; +} + +SystemDiskInfo::SystemDiskInfo() { + reads = 0; + reads_merged = 0; + sectors_read = 0; + read_time = 0; + writes = 0; + writes_merged = 0; + sectors_written = 0; + write_time = 0; + io = 0; + io_time = 0; + weighted_io_time = 0; +} + +SystemDiskInfo::SystemDiskInfo(const SystemDiskInfo& other) = default; + +SystemDiskInfo& SystemDiskInfo::operator=(const SystemDiskInfo&) = default; } // namespace base diff --git a/www/iridium/files/patch-base_process_process__metrics__openbsd.cc b/www/iridium/files/patch-base_process_process__metrics__openbsd.cc index f33de0efc824..db8ca0a0b66d 100644 --- a/www/iridium/files/patch-base_process_process__metrics__openbsd.cc +++ b/www/iridium/files/patch-base_process_process__metrics__openbsd.cc @@ -1,186 +1,186 @@ ---- base/process/process_metrics_openbsd.cc.orig 2025-09-11 13:19:19 UTC +--- base/process/process_metrics_openbsd.cc.orig 2025-10-28 14:29:43 UTC +++ base/process/process_metrics_openbsd.cc @@ -6,73 +6,85 @@ #include #include +#include #include #include +#include +#include + #include "base/memory/ptr_util.h" #include "base/types/expected.h" +#include "base/values.h" +#include "base/notimplemented.h" namespace base { -namespace { +ProcessMetrics::ProcessMetrics(ProcessHandle process) : process_(process) {} -base::expected GetProcessCPU(pid_t pid) { +base::expected +ProcessMetrics::GetMemoryInfo() const { + ProcessMemoryInfo memory_info; struct kinfo_proc info; - size_t length; - int mib[] = { - CTL_KERN, KERN_PROC, KERN_PROC_PID, pid, sizeof(struct kinfo_proc), 0}; + size_t length = sizeof(struct kinfo_proc); - if (sysctl(mib, std::size(mib), NULL, &length, NULL, 0) < 0) { - return base::unexpected(ProcessCPUUsageError::kSystemError); + int mib[] = { CTL_KERN, KERN_PROC, KERN_PROC_PID, process_, + sizeof(struct kinfo_proc), 1 }; + + if (process_ == 0) { + return base::unexpected(ProcessUsageError::kSystemError); } - mib[5] = (length / sizeof(struct kinfo_proc)); - if (sysctl(mib, std::size(mib), &info, &length, NULL, 0) < 0) { - return base::unexpected(ProcessCPUUsageError::kSystemError); + return base::unexpected(ProcessUsageError::kSystemError); } - return base::ok(info.p_pctcpu); -} + if (length == 0) { + return base::unexpected(ProcessUsageError::kProcessNotFound); + } -} // namespace + memory_info.resident_set_bytes = + checked_cast(info.p_vm_rssize * getpagesize()); -// static -std::unique_ptr ProcessMetrics::CreateProcessMetrics( - ProcessHandle process) { - return WrapUnique(new ProcessMetrics(process)); + return memory_info; } -base::expected -ProcessMetrics::GetPlatformIndependentCPUUsage() { - TimeTicks time = TimeTicks::Now(); +base::expected +ProcessMetrics::GetCumulativeCPUUsage() { + struct kinfo_proc info; + size_t length = sizeof(struct kinfo_proc); + struct timeval tv; - if (last_cpu_time_.is_zero()) { - // First call, just set the last values. - last_cpu_time_ = time; - return base::ok(0.0); + int mib[] = { CTL_KERN, KERN_PROC, KERN_PROC_PID, process_, + sizeof(struct kinfo_proc), 1 }; + + if (process_ == 0) { + return base::unexpected(ProcessCPUUsageError::kSystemError); } - const base::expected cpu = GetProcessCPU(process_); - if (!cpu.has_value()) { - return base::unexpected(cpu.error()); + if (sysctl(mib, std::size(mib), &info, &length, NULL, 0) < 0) { + return base::unexpected(ProcessCPUUsageError::kSystemError); } - last_cpu_time_ = time; - return base::ok(double{cpu.value()} / FSCALE * 100.0); + if (length == 0) { + return base::unexpected(ProcessCPUUsageError::kProcessNotFound); + } + + tv.tv_sec = info.p_rtime_sec; + tv.tv_usec = info.p_rtime_usec; + + return base::ok(Microseconds(TimeValToMicroseconds(tv))); } -base::expected -ProcessMetrics::GetCumulativeCPUUsage() { - NOTREACHED(); +// static +std::unique_ptr ProcessMetrics::CreateProcessMetrics( + ProcessHandle process) { + return WrapUnique(new ProcessMetrics(process)); } -ProcessMetrics::ProcessMetrics(ProcessHandle process) - : process_(process), last_cpu_(0) {} - size_t GetSystemCommitCharge() { int mib[] = {CTL_VM, VM_METER}; - int pagesize; + size_t pagesize; struct vmtotal vmtotal; unsigned long mem_total, mem_free, mem_inactive; size_t len = sizeof(vmtotal); @@ -85,9 +97,60 @@ size_t GetSystemCommitCharge() { mem_free = vmtotal.t_free; mem_inactive = vmtotal.t_vm - vmtotal.t_avm; - pagesize = getpagesize(); + pagesize = checked_cast(getpagesize()); return mem_total - (mem_free * pagesize) - (mem_inactive * pagesize); } + +int ProcessMetrics::GetOpenFdCount() const { + return (process_ == getpid()) ? getdtablecount() : -1; +} + +int ProcessMetrics::GetOpenFdSoftLimit() const { + return getdtablesize(); +} + +bool ProcessMetrics::GetPageFaultCounts(PageFaultCounts* counts) const { + NOTIMPLEMENTED(); + return false; +} + -+bool GetSystemMemoryInfo(SystemMemoryInfoKB* meminfo) { ++bool GetSystemMemoryInfo(SystemMemoryInfo* meminfo) { + NOTIMPLEMENTED(); + return false; +} + +bool GetSystemDiskInfo(SystemDiskInfo* diskinfo) { + NOTIMPLEMENTED(); + return false; +} + +bool GetVmStatInfo(VmStatInfo* vmstat) { + NOTIMPLEMENTED(); + return false; +} + +int ProcessMetrics::GetIdleWakeupsPerSecond() { + NOTIMPLEMENTED(); + return 0; +} + +SystemDiskInfo::SystemDiskInfo() { + reads = 0; + reads_merged = 0; + sectors_read = 0; + read_time = 0; + writes = 0; + writes_merged = 0; + sectors_written = 0; + write_time = 0; + io = 0; + io_time = 0; + weighted_io_time = 0; +} + +SystemDiskInfo::SystemDiskInfo(const SystemDiskInfo&) = default; + +SystemDiskInfo& SystemDiskInfo::operator=(const SystemDiskInfo&) = default; } // namespace base diff --git a/www/iridium/files/patch-base_process_process__metrics__unittest.cc b/www/iridium/files/patch-base_process_process__metrics__unittest.cc index 03c9401132c1..d7145d892bbc 100644 --- a/www/iridium/files/patch-base_process_process__metrics__unittest.cc +++ b/www/iridium/files/patch-base_process_process__metrics__unittest.cc @@ -1,12 +1,12 @@ ---- base/process/process_metrics_unittest.cc.orig 2025-05-07 06:48:23 UTC +--- base/process/process_metrics_unittest.cc.orig 2025-10-28 14:29:43 UTC +++ base/process/process_metrics_unittest.cc -@@ -61,7 +61,8 @@ +@@ -62,7 +62,8 @@ #endif #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_WIN) || \ - BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_APPLE) + BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_APPLE) || \ + BUILDFLAG(IS_BSD) #define ENABLE_CPU_TESTS 1 #else #define ENABLE_CPU_TESTS 0 diff --git a/www/iridium/files/patch-base_profiler_stack__base__address__posix.cc b/www/iridium/files/patch-base_profiler_stack__base__address__posix.cc index cf0c2b4b7ff6..3d63625d79ea 100644 --- a/www/iridium/files/patch-base_profiler_stack__base__address__posix.cc +++ b/www/iridium/files/patch-base_profiler_stack__base__address__posix.cc @@ -1,59 +1,67 @@ ---- base/profiler/stack_base_address_posix.cc.orig 2025-05-07 06:48:23 UTC +--- base/profiler/stack_base_address_posix.cc.orig 2025-10-28 14:29:43 UTC +++ base/profiler/stack_base_address_posix.cc -@@ -18,6 +18,10 @@ +@@ -7,6 +7,7 @@ + #include "base/check_op.h" + #include "base/compiler_specific.h" + #include "base/logging.h" ++#include "base/numerics/safe_conversions.h" + #include "base/process/process_handle.h" + #include "build/build_config.h" + +@@ -18,6 +19,10 @@ #include "base/files/scoped_file.h" #endif +#if BUILDFLAG(IS_BSD) +#include +#endif + #if BUILDFLAG(IS_CHROMEOS) extern "C" void* __libc_stack_end; #endif -@@ -49,7 +53,21 @@ std::optional GetAndroidMainThreadStackBase +@@ -49,7 +54,21 @@ std::optional GetAndroidMainThreadStackBase #if !BUILDFLAG(IS_LINUX) uintptr_t GetThreadStackBaseAddressImpl(pthread_t pthread_id) { +#if BUILDFLAG(IS_OPENBSD) + stack_t ss; + void *address; + size_t size; + if (pthread_stackseg_np(pthread_id, &ss) != 0) + return 0; + size = ss.ss_size; + address = (void*)((size_t) ss.ss_sp - ss.ss_size); +#else pthread_attr_t attr; +#if BUILDFLAG(IS_FREEBSD) + int result; + pthread_attr_init(&attr); + pthread_attr_get_np(pthread_id, &attr); +#else // pthread_getattr_np will crash on ChromeOS & Linux if we are in the sandbox // and pthread_id refers to a different thread, due to the use of // sched_getaffinity(). -@@ -62,12 +80,14 @@ uintptr_t GetThreadStackBaseAddressImpl(pthread_t pthr +@@ -62,12 +81,14 @@ uintptr_t GetThreadStackBaseAddressImpl(pthread_t pthr << logging::SystemErrorCodeToString(result); // See crbug.com/617730 for limitations of this approach on Linux-like // systems. +#endif void* address; size_t size; result = pthread_attr_getstack(&attr, &address, &size); CHECK_EQ(result, 0) << "pthread_attr_getstack returned " << logging::SystemErrorCodeToString(result); pthread_attr_destroy(&attr); +#endif const uintptr_t base_address = reinterpret_cast(address) + size; return base_address; } -@@ -84,7 +104,7 @@ std::optional GetThreadStackBaseAddress(Pla +@@ -84,7 +105,7 @@ std::optional GetThreadStackBaseAddress(Pla // trying to work around the problem. return std::nullopt; #else - const bool is_main_thread = id.raw() == GetCurrentProcId(); + const bool is_main_thread = id.raw() == (checked_cast(GetCurrentProcId())); if (is_main_thread) { #if BUILDFLAG(IS_ANDROID) // The implementation of pthread_getattr_np() in Bionic reads proc/self/maps diff --git a/www/iridium/files/patch-base_rand__util__posix.cc b/www/iridium/files/patch-base_rand__util__posix.cc index 431914ec5c84..87168dcf5466 100644 --- a/www/iridium/files/patch-base_rand__util__posix.cc +++ b/www/iridium/files/patch-base_rand__util__posix.cc @@ -1,60 +1,60 @@ ---- base/rand_util_posix.cc.orig 2025-09-11 13:19:19 UTC +--- base/rand_util_posix.cc.orig 2025-10-28 14:29:43 UTC +++ base/rand_util_posix.cc @@ -30,7 +30,7 @@ #include "build/build_config.h" #include "third_party/boringssl/src/include/openssl/rand.h" -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)) && !BUILDFLAG(IS_BSD) #include "third_party/lss/linux_syscall_support.h" #elif BUILDFLAG(IS_MAC) // TODO(crbug.com/40641285): Waiting for this header to appear in the iOS SDK. @@ -42,6 +42,7 @@ namespace base { namespace { +#if !BUILDFLAG(IS_BSD) #if BUILDFLAG(IS_AIX) // AIX has no 64-bit support for O_CLOEXEC. static constexpr int kOpenFlags = O_RDONLY; @@ -66,8 +67,9 @@ class URandomFd { private: const int fd_; }; +#endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) +#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID)) && !BUILDFLAG(IS_BSD) bool KernelSupportsGetRandom() { return base::SysInfo::KernelVersionNumber::Current() >= -@@ -122,6 +124,7 @@ bool UseBoringSSLForRandBytes() { +@@ -120,6 +122,7 @@ bool UseBoringSSLForRandBytes() { namespace { void RandBytesInternal(span output, bool avoid_allocation) { +#if !BUILDFLAG(IS_BSD) // The BoringSSL experiment takes priority over everything else. if (!avoid_allocation && internal::UseBoringSSLForRandBytes()) { // BoringSSL's RAND_bytes always returns 1. Any error aborts the program. -@@ -152,6 +155,9 @@ void RandBytesInternal(span output, bool avoi +@@ -150,6 +153,9 @@ void RandBytesInternal(span output, bool avoi const int urandom_fd = GetUrandomFD(); const bool success = ReadFromFD(urandom_fd, as_writable_chars(output)); CHECK(success); +#else + arc4random_buf(output.data(), output.size()); +#endif } } // namespace -@@ -171,9 +177,11 @@ void RandBytes(span output) { +@@ -169,9 +175,11 @@ void RandBytes(span output) { RandBytesInternal(output, /*avoid_allocation=*/false); } +#if !BUILDFLAG(IS_BSD) int GetUrandomFD() { static NoDestructor urandom_fd; return urandom_fd->fd(); } +#endif } // namespace base diff --git a/www/iridium/files/patch-base_strings_safe__sprintf__unittest.cc b/www/iridium/files/patch-base_strings_safe__sprintf__unittest.cc index 9b63f7e93be1..aa66555f146c 100644 --- a/www/iridium/files/patch-base_strings_safe__sprintf__unittest.cc +++ b/www/iridium/files/patch-base_strings_safe__sprintf__unittest.cc @@ -1,18 +1,18 @@ ---- base/strings/safe_sprintf_unittest.cc.orig 2025-06-19 07:37:57 UTC +--- base/strings/safe_sprintf_unittest.cc.orig 2025-10-28 14:29:43 UTC +++ base/strings/safe_sprintf_unittest.cc -@@ -746,6 +746,7 @@ TEST(SafeSPrintfTest, EmbeddedNul) { +@@ -747,6 +747,7 @@ TEST(SafeSPrintfTest, EmbeddedNul) { #endif } +#if !BUILDFLAG(IS_BSD) TEST(SafeSPrintfTest, EmitNULL) { char buf[40]; #if defined(__GNUC__) -@@ -762,6 +763,7 @@ TEST(SafeSPrintfTest, EmitNULL) { +@@ -763,6 +764,7 @@ TEST(SafeSPrintfTest, EmitNULL) { #pragma GCC diagnostic pop #endif } +#endif TEST(SafeSPrintfTest, PointerSize) { // The internal data representation is a 64bit value, independent of the diff --git a/www/iridium/files/patch-base_system_sys__info.cc b/www/iridium/files/patch-base_system_sys__info.cc index 428cca8a8e62..d6fd8af66b57 100644 --- a/www/iridium/files/patch-base_system_sys__info.cc +++ b/www/iridium/files/patch-base_system_sys__info.cc @@ -1,11 +1,11 @@ ---- base/system/sys_info.cc.orig 2025-05-07 06:48:23 UTC +--- base/system/sys_info.cc.orig 2025-10-28 14:29:43 UTC +++ base/system/sys_info.cc -@@ -224,7 +224,7 @@ std::string SysInfo::SocManufacturer() { +@@ -222,7 +222,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/iridium/files/patch-base_system_sys__info.h b/www/iridium/files/patch-base_system_sys__info.h index 3cf3261e17d1..9a79dec7c55e 100644 --- a/www/iridium/files/patch-base_system_sys__info.h +++ b/www/iridium/files/patch-base_system_sys__info.h @@ -1,20 +1,20 @@ ---- base/system/sys_info.h.orig 2025-09-11 13:19:19 UTC +--- base/system/sys_info.h.orig 2025-10-28 14:29:43 UTC +++ base/system/sys_info.h -@@ -360,6 +360,8 @@ class BASE_EXPORT SysInfo { +@@ -355,6 +355,8 @@ class BASE_EXPORT SysInfo { static void ResetCpuSecurityMitigationsEnabledForTesting(); #endif + static uint64_t MaxSharedMemorySize(); + private: friend class test::ScopedAmountOfPhysicalMemoryOverride; FRIEND_TEST_ALL_PREFIXES(SysInfoTest, AmountOfAvailablePhysicalMemory); -@@ -372,7 +374,7 @@ class BASE_EXPORT SysInfo { +@@ -367,7 +369,7 @@ class BASE_EXPORT SysInfo { static HardwareInfo GetHardwareInfoSync(); #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || \ - BUILDFLAG(IS_AIX) + BUILDFLAG(IS_AIX) || BUILDFLAG(IS_BSD) - static uint64_t AmountOfAvailablePhysicalMemory( - const SystemMemoryInfoKB& meminfo); + static ByteCount AmountOfAvailablePhysicalMemory( + const SystemMemoryInfo& meminfo); #endif diff --git a/www/iridium/files/patch-base_system_sys__info__freebsd.cc b/www/iridium/files/patch-base_system_sys__info__freebsd.cc index c5aec5efde0d..483ff4e74500 100644 --- a/www/iridium/files/patch-base_system_sys__info__freebsd.cc +++ b/www/iridium/files/patch-base_system_sys__info__freebsd.cc @@ -1,112 +1,103 @@ ---- base/system/sys_info_freebsd.cc.orig 2025-05-07 06:48:23 UTC +--- base/system/sys_info_freebsd.cc.orig 2025-10-28 14:29:43 UTC +++ base/system/sys_info_freebsd.cc -@@ -9,28 +9,103 @@ +@@ -9,28 +9,95 @@ #include #include "base/notreached.h" +#include "base/process/process_metrics.h" +#include "base/strings/string_util.h" namespace base { --int64_t SysInfo::AmountOfPhysicalMemoryImpl() { -- int pages, page_size; +int SysInfo::NumberOfProcessors() { + int mib[] = {CTL_HW, HW_NCPU}; + int ncpu; + size_t size = sizeof(ncpu); + if (sysctl(mib, std::size(mib), &ncpu, &size, NULL, 0) < 0) { + NOTREACHED(); + return 1; + } + return ncpu; +} -+ -+uint64_t SysInfo::AmountOfPhysicalMemoryImpl() { ++ + ByteCount SysInfo::AmountOfPhysicalMemoryImpl() { +- int pages, page_size; + int pages, page_size, r = 0; size_t size = sizeof(pages); - sysctlbyname("vm.stats.vm.v_page_count", &pages, &size, NULL, 0); - sysctlbyname("vm.stats.vm.v_page_size", &page_size, &size, NULL, 0); - if (pages == -1 || page_size == -1) { + + if (r == 0) + r = sysctlbyname("vm.stats.vm.v_page_count", &pages, &size, NULL, 0); -+ if (r == 0) ++ if (r == 0) + r = sysctlbyname("vm.stats.vm.v_page_size", &page_size, &size, NULL, 0); + + if (r == -1) { NOTREACHED(); } -- return static_cast(pages) * page_size; +- return ByteCount(page_size) * pages; + -+ return static_cast(pages) * page_size; ++ return ByteCount::FromUnsigned(static_cast(pages) * page_size); } -+uint64_t SysInfo::AmountOfAvailablePhysicalMemoryImpl() { ++ByteCount SysInfo::AmountOfAvailablePhysicalMemoryImpl() { + int page_size, r = 0; + unsigned int pgfree, pginact, pgcache; + size_t size = sizeof(page_size); + size_t szpg = sizeof(pgfree); -+ ++ + if (r == 0) + r = sysctlbyname("vm.stats.vm.v_page_size", &page_size, &size, NULL, 0); + if (r == 0) + r = sysctlbyname("vm.stats.vm.v_free_count", &pgfree, &szpg, NULL, 0); + if (r == 0) + r = sysctlbyname("vm.stats.vm.v_inactive_count", &pginact, &szpg, NULL, 0); + if (r == 0) + r = sysctlbyname("vm.stats.vm.v_cache_count", &pgcache, &szpg, NULL, 0); + + if (r == -1) { + NOTREACHED(); -+ return 0; ++ return ByteCount(); + } + -+ return static_cast((pgfree + pginact + pgcache) * page_size); ++ return ByteCount::FromUnsigned(static_cast((pgfree + pginact + pgcache) * page_size)); +} + // static -+uint64_t SysInfo::AmountOfAvailablePhysicalMemory(const SystemMemoryInfoKB& info) { -+ uint64_t res_kb = info.available != 0 -+ ? info.available - info.active_file -+ : info.free + info.reclaimable + info.inactive_file; -+ return res_kb * 1024; -+} -+ -+// static +std::string SysInfo::CPUModelName() { + int mib[] = { CTL_HW, HW_MODEL }; + char name[256]; + size_t size = std::size(name); + + if (sysctl(mib, std::size(mib), &name, &size, NULL, 0) == 0) { + return name; + } + + return std::string(); +} + +// static uint64_t SysInfo::MaxSharedMemorySize() { size_t limit; size_t size = sizeof(limit); + if (sysctlbyname("kern.ipc.shmmax", &limit, &size, NULL, 0) < 0) { NOTREACHED(); } return static_cast(limit); +} + +SysInfo::HardwareInfo SysInfo::GetHardwareInfoSync() { + HardwareInfo info; + + info.manufacturer = "FreeBSD"; + info.model = HardwareModelName(); + + DCHECK(IsStringUTF8(info.manufacturer)); + DCHECK(IsStringUTF8(info.model)); + + return info; } } // namespace base diff --git a/www/iridium/files/patch-base_system_sys__info__openbsd.cc b/www/iridium/files/patch-base_system_sys__info__openbsd.cc index 68c46e199e39..f93cb0422df5 100644 --- a/www/iridium/files/patch-base_system_sys__info__openbsd.cc +++ b/www/iridium/files/patch-base_system_sys__info__openbsd.cc @@ -1,85 +1,83 @@ ---- base/system/sys_info_openbsd.cc.orig 2025-05-07 06:48:23 UTC +--- base/system/sys_info_openbsd.cc.orig 2025-10-28 14:29:43 UTC +++ base/system/sys_info_openbsd.cc @@ -12,6 +12,7 @@ #include "base/notreached.h" #include "base/posix/sysctl.h" +#include "base/strings/string_util.h" - namespace { + namespace base { -@@ -28,9 +29,14 @@ uint64_t AmountOfMemory(int pages_name) { +@@ -28,9 +29,14 @@ ByteCount AmountOfMemory(int pages_name) { - namespace base { + } // namespace +// pledge(2) -+uint64_t aofpmem = 0; ++ByteCount aofpmem = ByteCount(0); +uint64_t shmmax = 0; +char cpumodel[256]; + // static int SysInfo::NumberOfProcessors() { - int mib[] = {CTL_HW, HW_NCPU}; + int mib[] = {CTL_HW, HW_NCPUONLINE}; int ncpu; size_t size = sizeof(ncpu); if (sysctl(mib, std::size(mib), &ncpu, &size, NULL, 0) < 0) { -@@ -41,10 +47,26 @@ int SysInfo::NumberOfProcessors() { - - // static - uint64_t SysInfo::AmountOfPhysicalMemoryImpl() { -- return AmountOfMemory(_SC_PHYS_PAGES); -+ // pledge(2) -+ if (!aofpmem) -+ aofpmem = AmountOfMemory(_SC_PHYS_PAGES); -+ return aofpmem; +@@ -40,8 +46,24 @@ int SysInfo::NumberOfProcessors() { } // static +std::string SysInfo::CPUModelName() { + int mib[] = {CTL_HW, HW_MODEL}; + size_t len = std::size(cpumodel); + + if (cpumodel[0] == '\0') { + if (sysctl(mib, std::size(mib), cpumodel, &len, NULL, 0) < 0) + return std::string(); + } + + return std::string(cpumodel, len - 1); +} + +// static - uint64_t SysInfo::AmountOfAvailablePhysicalMemoryImpl() { - // We should add inactive file-backed memory also but there is no such - // information from OpenBSD unfortunately. + ByteCount SysInfo::AmountOfPhysicalMemoryImpl() { +- return AmountOfMemory(_SC_PHYS_PAGES); ++ // pledge(2) ++ if (aofpmem == ByteCount(0)) ++ aofpmem = AmountOfMemory(_SC_PHYS_PAGES); ++ return aofpmem; + } + + // static @@ -56,15 +78,27 @@ uint64_t SysInfo::MaxSharedMemorySize() { int mib[] = {CTL_KERN, KERN_SHMINFO, KERN_SHMINFO_SHMMAX}; size_t limit; size_t size = sizeof(limit); + // pledge(2) + if (shmmax) + goto out; if (sysctl(mib, std::size(mib), &limit, &size, NULL, 0) < 0) { NOTREACHED(); } - return static_cast(limit); + shmmax = static_cast(limit); +out: + return shmmax; } // static -std::string SysInfo::CPUModelName() { - return StringSysctl({CTL_HW, HW_MODEL}).value(); +SysInfo::HardwareInfo SysInfo::GetHardwareInfoSync() { + HardwareInfo info; + // Set the manufacturer to "OpenBSD" and the model to + // an empty string. + info.manufacturer = "OpenBSD"; + info.model = HardwareModelName(); + DCHECK(IsStringUTF8(info.manufacturer)); + DCHECK(IsStringUTF8(info.model)); + return info; } } // namespace base diff --git a/www/iridium/files/patch-base_system_sys__info__posix.cc b/www/iridium/files/patch-base_system_sys__info__posix.cc index aac90d40875a..e23f076118b1 100644 --- a/www/iridium/files/patch-base_system_sys__info__posix.cc +++ b/www/iridium/files/patch-base_system_sys__info__posix.cc @@ -1,29 +1,29 @@ ---- base/system/sys_info_posix.cc.orig 2025-09-11 13:19:19 UTC +--- base/system/sys_info_posix.cc.orig 2025-10-28 14:29:43 UTC +++ base/system/sys_info_posix.cc -@@ -144,7 +144,7 @@ void GetKernelVersionNumbers(int32_t* major_version, +@@ -142,7 +142,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) -@@ -200,7 +200,7 @@ int SysInfo::NumberOfProcessors() { +@@ -198,7 +198,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() { 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/iridium/files/patch-base_system_sys__info__unittest.cc b/www/iridium/files/patch-base_system_sys__info__unittest.cc index 49073e5ece38..f425ddcbe5b4 100644 --- a/www/iridium/files/patch-base_system_sys__info__unittest.cc +++ b/www/iridium/files/patch-base_system_sys__info__unittest.cc @@ -1,20 +1,20 @@ ---- base/system/sys_info_unittest.cc.orig 2025-05-07 06:48:23 UTC +--- base/system/sys_info_unittest.cc.orig 2025-10-28 14:29:43 UTC +++ base/system/sys_info_unittest.cc -@@ -265,12 +265,16 @@ TEST_F(SysInfoTest, GetHardwareInfo) { +@@ -263,12 +263,16 @@ TEST_F(SysInfoTest, GetHardwareInfo) { EXPECT_TRUE(IsStringUTF8(hardware_info->model)); bool empty_result_expected = #if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_WIN) || \ - BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) + BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) || \ + BUILDFLAG(IS_BSD) false; #else true; #endif EXPECT_EQ(hardware_info->manufacturer.empty(), empty_result_expected); +#if BUILDFLAG(IS_BSD) + empty_result_expected = true; +#endif EXPECT_EQ(hardware_info->model.empty(), empty_result_expected); } diff --git a/www/iridium/files/patch-base_threading_platform__thread.h b/www/iridium/files/patch-base_threading_platform__thread.h index 44533c630484..d2f115a297ca 100644 --- a/www/iridium/files/patch-base_threading_platform__thread.h +++ b/www/iridium/files/patch-base_threading_platform__thread.h @@ -1,11 +1,11 @@ ---- base/threading/platform_thread.h.orig 2025-05-07 06:48:23 UTC +--- base/threading/platform_thread.h.orig 2025-10-28 14:29:43 UTC +++ base/threading/platform_thread.h -@@ -55,6 +55,8 @@ class BASE_EXPORT PlatformThreadId { +@@ -56,6 +56,8 @@ class BASE_EXPORT PlatformThreadId { using UnderlyingType = zx_koid_t; #elif BUILDFLAG(IS_APPLE) using UnderlyingType = uint64_t; +#elif BUILDFLAG(IS_BSD) + using UnderlyingType = uint64_t; #elif BUILDFLAG(IS_POSIX) using UnderlyingType = pid_t; #endif diff --git a/www/iridium/files/patch-base_threading_platform__thread__internal__posix.cc b/www/iridium/files/patch-base_threading_platform__thread__internal__posix.cc index d8e5c92f11d9..ad027793e4a5 100644 --- a/www/iridium/files/patch-base_threading_platform__thread__internal__posix.cc +++ b/www/iridium/files/patch-base_threading_platform__thread__internal__posix.cc @@ -1,21 +1,30 @@ ---- base/threading/platform_thread_internal_posix.cc.orig 2025-09-11 13:19:19 UTC +--- base/threading/platform_thread_internal_posix.cc.orig 2025-10-28 14:29:43 UTC +++ base/threading/platform_thread_internal_posix.cc -@@ -31,6 +31,10 @@ ThreadPriorityForTest NiceValueToThreadPriorityForTest +@@ -31,10 +31,19 @@ ThreadPriorityForTest NiceValueToThreadPriorityForTest } int GetCurrentThreadNiceValue() { +#if BUILDFLAG(IS_BSD) + NOTIMPLEMENTED(); + return 0; ++#else + return GetThreadNiceValue(PlatformThreadId{0}); ++#endif + } + + int GetThreadNiceValue(PlatformThreadId id) { ++#if BUILDFLAG(IS_BSD) ++ NOTIMPLEMENTED(); ++ return 0; +#else // Need to clear errno before calling getpriority(): // http://man7.org/linux/man-pages/man2/getpriority.2.html errno = 0; -@@ -42,6 +46,7 @@ int GetCurrentThreadNiceValue() { +@@ -46,6 +55,7 @@ int GetThreadNiceValue(PlatformThreadId id) { } return nice_value; +#endif } } // namespace base::internal diff --git a/www/iridium/files/patch-base_threading_platform__thread__metrics.cc b/www/iridium/files/patch-base_threading_platform__thread__metrics.cc index 5a0e9d3f73b3..377ed165257d 100644 --- a/www/iridium/files/patch-base_threading_platform__thread__metrics.cc +++ b/www/iridium/files/patch-base_threading_platform__thread__metrics.cc @@ -1,11 +1,11 @@ ---- base/threading/platform_thread_metrics.cc.orig 2025-09-11 13:19:19 UTC +--- base/threading/platform_thread_metrics.cc.orig 2025-10-28 14:29:43 UTC +++ base/threading/platform_thread_metrics.cc -@@ -26,7 +26,7 @@ PlatformThreadMetrics::CreateForCurrentThread() { +@@ -55,7 +55,7 @@ PlatformThreadMetrics::CreateForCurrentThread() { } #elif BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_CHROMEOS) || \ - BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_LINUX) + BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // static std::unique_ptr diff --git a/www/iridium/files/patch-base_threading_platform__thread__metrics.h b/www/iridium/files/patch-base_threading_platform__thread__metrics.h index 401ba96b13f5..0c83c6f61aae 100644 --- a/www/iridium/files/patch-base_threading_platform__thread__metrics.h +++ b/www/iridium/files/patch-base_threading_platform__thread__metrics.h @@ -1,20 +1,20 @@ ---- base/threading/platform_thread_metrics.h.orig 2025-09-11 13:19:19 UTC +--- base/threading/platform_thread_metrics.h.orig 2025-10-28 14:29:43 UTC +++ base/threading/platform_thread_metrics.h -@@ -51,7 +51,7 @@ class BASE_EXPORT PlatformThreadMetrics { +@@ -67,7 +67,7 @@ class BASE_EXPORT PlatformThreadMetrics { PlatformThreadHandle handle); #endif -#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_CHROMEOS) || \ +#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) || \ BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) static std::unique_ptr CreateFromId( PlatformThreadId tid); -@@ -93,7 +93,7 @@ class BASE_EXPORT PlatformThreadMetrics { +@@ -109,7 +109,7 @@ class BASE_EXPORT PlatformThreadMetrics { PlatformThreadHandle handle_; #elif BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_CHROMEOS) || \ - BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_LINUX) + BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) explicit PlatformThreadMetrics(PlatformThreadId tid) : tid_(tid) {} PlatformThreadId tid_; diff --git a/www/iridium/files/patch-base_threading_platform__thread__posix.cc b/www/iridium/files/patch-base_threading_platform__thread__posix.cc index d608fe9e9148..8644dbb2ffef 100644 --- a/www/iridium/files/patch-base_threading_platform__thread__posix.cc +++ b/www/iridium/files/patch-base_threading_platform__thread__posix.cc @@ -1,82 +1,82 @@ ---- base/threading/platform_thread_posix.cc.orig 2025-09-11 13:19:19 UTC +--- base/threading/platform_thread_posix.cc.orig 2025-10-28 14:29:43 UTC +++ base/threading/platform_thread_posix.cc -@@ -79,6 +79,7 @@ void* ThreadFunc(void* params) { +@@ -80,6 +80,7 @@ void* ThreadFunc(void* params) { base::DisallowSingleton(); } +#if !BUILDFLAG(IS_BSD) #if PA_BUILDFLAG(USE_PARTITION_ALLOC_AS_MALLOC) partition_alloc::internal::StackTopRegistry::Get().NotifyThreadCreated(); #endif -@@ -92,6 +93,7 @@ void* ThreadFunc(void* params) { +@@ -93,6 +94,7 @@ void* ThreadFunc(void* params) { // where they were created. This explicitly sets the priority of all new // threads. PlatformThread::SetCurrentThreadType(thread_params->thread_type); +#endif } ThreadIdNameManager::GetInstance()->RegisterThread( -@@ -266,6 +268,8 @@ PlatformThreadId PlatformThreadBase::CurrentId() { +@@ -270,6 +272,8 @@ PlatformThreadId PlatformThreadBase::CurrentId() { #elif BUILDFLAG(IS_POSIX) && BUILDFLAG(IS_AIX) return PlatformThreadId(pthread_self()); +#elif BUILDFLAG(IS_BSD) + return PlatformThreadId(reinterpret_cast(pthread_self())); #elif BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_AIX) return PlatformThreadId(reinterpret_cast(pthread_self())); #endif -@@ -359,6 +363,9 @@ void PlatformThreadBase::Detach(PlatformThreadHandle t +@@ -363,6 +367,9 @@ void PlatformThreadBase::Detach(PlatformThreadHandle t // static bool PlatformThreadBase::CanChangeThreadType(ThreadType from, ThreadType to) { +#if BUILDFLAG(IS_BSD) + return false; +#else if (from >= to) { // Decreasing thread priority on POSIX is always allowed. return true; -@@ -368,12 +375,18 @@ bool PlatformThreadBase::CanChangeThreadType(ThreadTyp +@@ -372,12 +379,18 @@ bool PlatformThreadBase::CanChangeThreadType(ThreadTyp } return internal::CanLowerNiceTo(internal::ThreadTypeToNiceValue(to)); +#endif } namespace internal { void SetCurrentThreadTypeImpl(ThreadType thread_type, MessagePumpType pump_type_hint) { +#if BUILDFLAG(IS_BSD) + // pledge(2) violation + NOTIMPLEMENTED(); + return; +#else if (internal::SetCurrentThreadTypeForPlatform(thread_type, pump_type_hint)) { return; } -@@ -389,12 +402,17 @@ void SetCurrentThreadTypeImpl(ThreadType thread_type, +@@ -393,12 +406,17 @@ void SetCurrentThreadTypeImpl(ThreadType thread_type, DVPLOG(1) << "Failed to set nice value of thread (" << PlatformThread::CurrentId() << ") to " << nice_setting; } +#endif } } // namespace internal // static ThreadPriorityForTest PlatformThreadBase::GetCurrentThreadPriorityForTest() { +#if BUILDFLAG(IS_BSD) + NOTIMPLEMENTED(); + return ThreadPriorityForTest::kNormal; +#else // Mirrors SetCurrentThreadPriority()'s implementation. auto platform_specific_priority = internal::GetCurrentThreadPriorityForPlatformForTest(); // IN-TEST -@@ -405,6 +423,7 @@ ThreadPriorityForTest PlatformThreadBase::GetCurrentTh +@@ -409,6 +427,7 @@ ThreadPriorityForTest PlatformThreadBase::GetCurrentTh int nice_value = internal::GetCurrentThreadNiceValue(); return internal::NiceValueToThreadPriorityForTest(nice_value); // IN-TEST +#endif } #endif // !BUILDFLAG(IS_APPLE) && !BUILDFLAG(IS_FUCHSIA) diff --git a/www/iridium/files/patch-build_config_BUILDCONFIG.gn b/www/iridium/files/patch-build_config_BUILDCONFIG.gn index ec5edf87ac15..adb9c205af17 100644 --- a/www/iridium/files/patch-build_config_BUILDCONFIG.gn +++ b/www/iridium/files/patch-build_config_BUILDCONFIG.gn @@ -1,45 +1,45 @@ ---- build/config/BUILDCONFIG.gn.orig 2025-09-11 13:19:19 UTC +--- build/config/BUILDCONFIG.gn.orig 2025-10-28 14:29:43 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" && -@@ -242,6 +243,10 @@ if (host_toolchain == "") { +@@ -235,6 +236,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") } -@@ -291,6 +296,8 @@ if (target_os == "android") { +@@ -284,6 +289,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") } -@@ -325,7 +332,11 @@ is_android = current_os == "android" +@@ -318,7 +325,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" - - # TODO(crbug.com/40511454): Remove is_nacl from all build files, then + is_wasm = current_os == "emscripten" + is_watchos = current_os == "watchos" diff --git a/www/iridium/files/patch-build_config_clang_BUILD.gn b/www/iridium/files/patch-build_config_clang_BUILD.gn index 67dcda4ce448..ea81c7de644c 100644 --- a/www/iridium/files/patch-build_config_clang_BUILD.gn +++ b/www/iridium/files/patch-build_config_clang_BUILD.gn @@ -1,16 +1,16 @@ ---- build/config/clang/BUILD.gn.orig 2025-09-11 13:19:19 UTC +--- build/config/clang/BUILD.gn.orig 2025-10-28 14:29:43 UTC +++ build/config/clang/BUILD.gn -@@ -268,7 +268,12 @@ template("clang_lib") { +@@ -224,7 +224,12 @@ template("clang_lib") { # Adds a dependency on the Clang runtime library clang_rt.builtins. clang_lib("compiler_builtins") { - if (is_mac) { + if (is_bsd) { + # Since there's no Rust in the toolchain, there's no concern that we'll use + # the Rust stdlib's intrinsics here. + # + # Don't define libname which makes this target do nothing. + } else if (is_mac) { libname = "osx" } else if (is_ios) { if (target_platform == "iphoneos") { diff --git a/www/iridium/files/patch-build_config_clang_clang.gni b/www/iridium/files/patch-build_config_clang_clang.gni new file mode 100644 index 000000000000..05e96bf79fcd --- /dev/null +++ b/www/iridium/files/patch-build_config_clang_clang.gni @@ -0,0 +1,11 @@ +--- build/config/clang/clang.gni.orig 2025-10-28 14:29:43 UTC ++++ build/config/clang/clang.gni +@@ -58,7 +58,7 @@ declare_args() { + # + # TODO(https://crbug.com/440260716): Enable for Cronet in AOSP once gn2bp + # supports copy targets. +- use_clang_modules = ++ use_clang_modules = !is_bsd && + # Clang modules doesn't work with translation_unit used in codesearch + # pipeline http://b/436082487. + !enable_kythe_annotations && is_clang && is_linux && diff --git a/www/iridium/files/patch-build_config_compiler_BUILD.gn b/www/iridium/files/patch-build_config_compiler_BUILD.gn index b35e3228b496..5794ac66426d 100644 --- a/www/iridium/files/patch-build_config_compiler_BUILD.gn +++ b/www/iridium/files/patch-build_config_compiler_BUILD.gn @@ -1,131 +1,131 @@ ---- build/config/compiler/BUILD.gn.orig 2025-09-11 13:19:19 UTC +--- build/config/compiler/BUILD.gn.orig 2025-10-28 14:29:43 UTC +++ build/config/compiler/BUILD.gn -@@ -194,7 +194,7 @@ declare_args() { +@@ -193,7 +193,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 -@@ -272,7 +272,7 @@ assert(!(llvm_force_head_revision && use_remoteexec && +@@ -268,7 +268,7 @@ assert(!(llvm_force_head_revision && use_remoteexec && # Since this is referenced both when passing the file and when deciding which # warnings to enable, store it in a separate variable here. use_clang_warning_suppression_file = -- default_toolchain != "//build/toolchain/cros:target" && -+ !is_bsd && default_toolchain != "//build/toolchain/cros:target" && - !llvm_android_mainline && is_clang && clang_warning_suppression_file != "" +- !llvm_android_mainline && is_clang && clang_warning_suppression_file != "" ++ !is_bsd && !llvm_android_mainline && is_clang && clang_warning_suppression_file != "" # default_include_dirs --------------------------------------------------------- -@@ -290,13 +290,16 @@ config("default_include_dirs") { + # +@@ -285,13 +285,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 --------------------------------------------------------------------- -@@ -564,6 +567,10 @@ config("compiler") { +@@ -559,6 +562,10 @@ config("compiler") { } } + if (is_openbsd) { + ldflags += [ "-Wl,-z,wxneeded" ] + } + # Linux-specific compiler flags setup. # ------------------------------------ if (use_icf && (!is_apple || use_lld)) { -@@ -639,7 +646,7 @@ config("compiler") { +@@ -634,7 +641,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 += [ -@@ -1281,7 +1288,7 @@ config("compiler_cpu_abi") { +@@ -1274,7 +1281,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 { -@@ -1290,7 +1297,7 @@ config("compiler_cpu_abi") { +@@ -1283,7 +1290,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 { -@@ -1302,7 +1309,7 @@ config("compiler_cpu_abi") { +@@ -1295,7 +1302,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" ] } -@@ -1314,7 +1321,7 @@ config("compiler_cpu_abi") { +@@ -1307,7 +1314,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" ] } -@@ -1713,7 +1720,7 @@ config("compiler_deterministic") { +@@ -1706,7 +1713,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) { -@@ -2134,9 +2141,6 @@ config("default_warnings") { +@@ -2128,9 +2135,6 @@ config("default_warnings") { # TODO(crbug.com/40284799): Fix and re-enable. "-Wno-thread-safety-reference-return", - - # TODO(crbug.com/376641662): Fix and re-enable. - "-Wno-nontrivial-memcall", ] cflags_cc += [ -@@ -2920,7 +2924,7 @@ config("afdo_optimize_size") { +@@ -2915,7 +2919,7 @@ config("afdo_optimize_size") { # There are some targeted places that AFDO regresses, so we provide a separate # config to allow AFDO to be disabled per-target. config("afdo") { - if (is_clang) { + if (is_clang && !is_bsd) { cflags = [] if (clang_emit_debug_info_for_profiling) { # Add the following flags to generate debug info for profiling. -@@ -2947,7 +2951,7 @@ config("afdo") { +@@ -2942,7 +2946,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/iridium/files/patch-build_config_rust.gni b/www/iridium/files/patch-build_config_rust.gni index 67f69c98dbe6..9ebdaa4ca544 100644 --- a/www/iridium/files/patch-build_config_rust.gni +++ b/www/iridium/files/patch-build_config_rust.gni @@ -1,15 +1,15 @@ ---- build/config/rust.gni.orig 2025-09-11 13:19:19 UTC +--- build/config/rust.gni.orig 2025-10-28 14:29:43 UTC +++ build/config/rust.gni -@@ -369,7 +369,11 @@ if (is_linux || is_chromeos) { +@@ -329,7 +329,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/iridium/files/patch-build_rust_allocator_lib.rs b/www/iridium/files/patch-build_rust_allocator_lib.rs index a7c57ee2aa80..8d8e82aab2c9 100644 --- a/www/iridium/files/patch-build_rust_allocator_lib.rs +++ b/www/iridium/files/patch-build_rust_allocator_lib.rs @@ -1,15 +1,15 @@ ---- build/rust/allocator/lib.rs.orig 2025-09-11 13:19:19 UTC +--- build/rust/allocator/lib.rs.orig 2025-10-28 14:29:43 UTC +++ build/rust/allocator/lib.rs -@@ -90,6 +90,12 @@ mod both_allocators { - #[linkage = "weak"] - fn __rust_no_alloc_shim_is_unstable_v2() {} +@@ -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; + // Mangle the symbol name as rustc expects. + // 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)] diff --git a/www/iridium/files/patch-build_toolchain_gcc__toolchain.gni b/www/iridium/files/patch-build_toolchain_gcc__toolchain.gni index 7897b260ec06..0af7b5b119a3 100644 --- a/www/iridium/files/patch-build_toolchain_gcc__toolchain.gni +++ b/www/iridium/files/patch-build_toolchain_gcc__toolchain.gni @@ -1,44 +1,44 @@ ---- build/toolchain/gcc_toolchain.gni.orig 2025-09-11 13:19:19 UTC +--- build/toolchain/gcc_toolchain.gni.orig 2025-10-28 14:29:43 UTC +++ build/toolchain/gcc_toolchain.gni @@ -49,6 +49,13 @@ if (enable_resource_allowlist_generation) { "enable_resource_allowlist_generation=true does not work for target_os=$target_os") } +declare_args() { + extra_cflags = "" + extra_cppflags = "" + extra_cxxflags = "" + extra_ldflags = "" +} + # This template defines a toolchain for something that works like gcc # (including clang). # -@@ -893,22 +900,12 @@ template("gcc_toolchain") { +@@ -881,22 +888,12 @@ template("gcc_toolchain") { # actually just be doing a native compile. template("clang_toolchain") { gcc_toolchain(target_name) { - _path = "$clang_base_path/bin" - _is_path_absolute = get_path_info(_path, "abspath") == _path - - # Preserve absolute paths for tools like distcc. - if (_is_path_absolute && filter_include([ _path ], [ "//*" ]) == []) { - prefix = _path - } else { - prefix = rebase_path(_path, root_build_dir) - } - - cc = "${prefix}/clang" - cxx = "${prefix}/clang++" + cc = "cc" + cxx = "c++" ld = cxx - readelf = "${prefix}/llvm-readelf" - ar = "${prefix}/llvm-ar" - nm = "${prefix}/llvm-nm" + readelf = "readelf" + ar = "ar" + nm = "nm" forward_variables_from(invoker, "*", [ "toolchain_args" ]) diff --git a/www/iridium/files/patch-cc_base_features.cc b/www/iridium/files/patch-cc_base_features.cc index 18370f11e9dc..cdd8df4797a3 100644 --- a/www/iridium/files/patch-cc_base_features.cc +++ b/www/iridium/files/patch-cc_base_features.cc @@ -1,11 +1,11 @@ ---- cc/base/features.cc.orig 2025-09-11 13:19:19 UTC +--- cc/base/features.cc.orig 2025-10-28 14:29:43 UTC +++ cc/base/features.cc -@@ -55,7 +55,7 @@ const base::FeatureParam kDeferImplInvalidationFr +@@ -51,7 +51,7 @@ const base::FeatureParam kDeferImplInvalidationFr // be using a separate flag to control the launch on GL. BASE_FEATURE(kUseDMSAAForTiles, "UseDMSAAForTiles", -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) base::FEATURE_ENABLED_BY_DEFAULT #else base::FEATURE_DISABLED_BY_DEFAULT diff --git a/www/iridium/files/patch-chrome_app_chrome__main.cc b/www/iridium/files/patch-chrome_app_chrome__main.cc index cfa6c781feed..d0f3e7dba9c6 100644 --- a/www/iridium/files/patch-chrome_app_chrome__main.cc +++ b/www/iridium/files/patch-chrome_app_chrome__main.cc @@ -1,43 +1,43 @@ ---- chrome/app/chrome_main.cc.orig 2025-05-07 06:48:23 UTC +--- chrome/app/chrome_main.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/app/chrome_main.cc @@ -28,11 +28,11 @@ #include "chrome/app/chrome_main_mac.h" #endif -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "base/base_switches.h" #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "chrome/app/chrome_main_linux.h" #endif @@ -57,7 +57,7 @@ // sometime after old headless code is removed from Chrome. // See https://crbug.com/373672160. #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_WIN) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) #define ENABLE_OLD_HEADLESS_INFO #endif @@ -115,7 +115,7 @@ int ChromeMain(int argc, const char** argv) { #error Unknown platform. #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) PossiblyDetermineFallbackChromeChannel(argv[0]); #endif -@@ -181,7 +181,7 @@ int ChromeMain(int argc, const char** argv) { +@@ -180,7 +180,7 @@ int ChromeMain(int argc, const char** argv) { SetUpBundleOverrides(); #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) AppendExtraArgumentsToCommandLine(command_line); #endif diff --git a/www/iridium/files/patch-chrome_app_chrome__main__delegate.cc b/www/iridium/files/patch-chrome_app_chrome__main__delegate.cc index 7e8cd3d117d4..520edb63064b 100644 --- a/www/iridium/files/patch-chrome_app_chrome__main__delegate.cc +++ b/www/iridium/files/patch-chrome_app_chrome__main__delegate.cc @@ -1,113 +1,113 @@ ---- chrome/app/chrome_main_delegate.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/app/chrome_main_delegate.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/app/chrome_main_delegate.cc @@ -179,17 +179,17 @@ #include "v8/include/v8.h" #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "base/environment.h" #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "base/nix/scoped_xdg_activation_token_injector.h" #include "ui/linux/display_server_utils.h" #endif #if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_ANDROID) || \ - BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "chrome/browser/policy/policy_path_parser.h" #include "components/crash/core/app/crashpad.h" #endif @@ -294,7 +294,7 @@ void AdjustLinuxOOMScore(const std::string& process_ty // and resources loaded. bool SubprocessNeedsResourceBundle(const std::string& process_type) { return -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // The zygote process opens the resources for the renderers. process_type == switches::kZygoteProcess || #endif @@ -373,7 +373,7 @@ bool HandleVersionSwitches(const base::CommandLine& co return false; } -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Show the man page if --help or -h is on the command line. void HandleHelpSwitches(const base::CommandLine& command_line) { if (command_line.HasSwitch(switches::kHelp) || @@ -385,7 +385,7 @@ void HandleHelpSwitches(const base::CommandLine& comma } #endif // BUILDFLAG(IS_LINUX) -#if !BUILDFLAG(IS_MAC) && !BUILDFLAG(IS_ANDROID) +#if !BUILDFLAG(IS_MAC) && !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_BSD) void SIGTERMProfilingShutdown(int signal) { content::Profiling::Stop(); struct sigaction sigact; @@ -467,7 +467,7 @@ std::optional AcquireProcessSingleton( // process can be exited. ChromeProcessSingleton::CreateInstance(user_data_dir); -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Read the xdg-activation token and set it in the command line for the // duration of the notification in order to ensure this is propagated to an // already running browser process if it exists. @@ -545,7 +545,7 @@ void InitializeUserDataDir(base::CommandLine* command_ std::string process_type = command_line->GetSwitchValueASCII(switches::kProcessType); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // On Linux, Chrome does not support running multiple copies under different // DISPLAYs, so the profile directory can be specified in the environment to // support the virtual desktop use-case. -@@ -643,7 +643,7 @@ void RecordMainStartupMetrics(const StartupTimestamps& +@@ -651,7 +651,7 @@ void RecordMainStartupMetrics(const StartupTimestamps& #endif #if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Record the startup process creation time on supported platforms. On Android // this is recorded in ChromeMainDelegateAndroid. startup_metric_utils::GetCommon().RecordStartupProcessCreationTime( -@@ -802,7 +802,7 @@ std::optional ChromeMainDelegate::PostEarlyInitia +@@ -810,7 +810,7 @@ std::optional ChromeMainDelegate::PostEarlyInitia #if BUILDFLAG(IS_OZONE) // Initialize Ozone platform and add required feature flags as per platform's // properties. -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) ui::SetOzonePlatformForLinuxIfNeeded(*base::CommandLine::ForCurrentProcess()); #endif ui::OzonePlatform::PreEarlyInitialization(); -@@ -957,7 +957,7 @@ void ChromeMainDelegate::CommonEarlyInitialization() { +@@ -965,7 +965,7 @@ void ChromeMainDelegate::CommonEarlyInitialization() { const bool is_canary_dev = IsCanaryDev(); const bool emit_crashes = #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_WIN) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) is_canary_dev; #else false; -@@ -1105,7 +1105,7 @@ std::optional ChromeMainDelegate::BasicStartupCom +@@ -1113,7 +1113,7 @@ std::optional ChromeMainDelegate::BasicStartupCom return 0; // Got a --credits switch; exit with a success error code. } -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // This will directly exit if the user asked for help. HandleHelpSwitches(command_line); #endif -@@ -1409,7 +1409,7 @@ void ChromeMainDelegate::PreSandboxStartup() { +@@ -1426,7 +1426,7 @@ void ChromeMainDelegate::PreSandboxStartup() { CHECK(!loaded_locale.empty()) << "Locale could not be found for " << locale; } -#if BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_MAC) && !BUILDFLAG(IS_BSD) // Zygote needs to call InitCrashReporter() in RunZygote(). if (process_type != switches::kZygoteProcess && !command_line.HasSwitch(switches::kDisableCrashpadForTesting)) { diff --git a/www/iridium/files/patch-chrome_browser_BUILD.gn b/www/iridium/files/patch-chrome_browser_BUILD.gn index 3aa300f2b1bf..12b4df7b622f 100644 --- a/www/iridium/files/patch-chrome_browser_BUILD.gn +++ b/www/iridium/files/patch-chrome_browser_BUILD.gn @@ -1,16 +1,16 @@ ---- chrome/browser/BUILD.gn.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/BUILD.gn.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/BUILD.gn -@@ -7039,6 +7039,13 @@ static_library("browser") { +@@ -7091,6 +7091,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/iridium/files/patch-chrome_browser_about__flags.cc b/www/iridium/files/patch-chrome_browser_about__flags.cc index 562a1a3871d9..3dbfbb3218ca 100644 --- a/www/iridium/files/patch-chrome_browser_about__flags.cc +++ b/www/iridium/files/patch-chrome_browser_about__flags.cc @@ -1,385 +1,403 @@ ---- chrome/browser/about_flags.cc.orig 2025-09-22 12:54:03 UTC +--- chrome/browser/about_flags.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/about_flags.cc -@@ -329,12 +329,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" -@@ -905,6 +905,26 @@ const FeatureEntry::FeatureVariation +@@ -895,6 +895,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[] = { -@@ -1285,7 +1305,7 @@ const FeatureEntry::FeatureVariation kRemotePageMetada +@@ -1280,7 +1300,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[] = { -@@ -3921,7 +3941,7 @@ const FeatureEntry::FeatureVariation +@@ -3914,7 +3934,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[] = -@@ -4217,7 +4237,7 @@ const FeatureEntry::FeatureVariation kSkiaGraphiteVari +@@ -4174,7 +4194,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"}}; -@@ -4258,7 +4278,7 @@ const FeatureEntry::FeatureVariation +@@ -4215,7 +4235,7 @@ const FeatureEntry::FeatureVariation 1, nullptr}, }; -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) const FeatureEntry::FeatureParam kContextualCueingEnabledNoEngagementCap[] = { {"BackoffTime", "0h"}, {"BackoffMultiplierBase", "0.0"}, -@@ -5469,7 +5489,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -4886,7 +4906,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[] = { +@@ -5461,7 +5481,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, -@@ -5768,7 +5788,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -5751,7 +5771,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, -@@ -5982,7 +6002,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -5962,7 +5982,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, -@@ -6015,6 +6035,16 @@ const FeatureEntry kFeatureEntries[] = { +@@ -5991,6 +6011,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) -@@ -6916,7 +6946,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -6884,7 +6914,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:: -@@ -7320,7 +7350,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -7279,7 +7309,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)}, -@@ -7825,7 +7855,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -7772,7 +7802,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, -@@ -8786,7 +8816,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -8734,7 +8764,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, -@@ -9413,7 +9443,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -9333,7 +9363,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)}, -@@ -9438,7 +9468,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -9358,7 +9388,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, -@@ -9894,7 +9924,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -9802,7 +9832,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, -@@ -10080,7 +10110,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -9988,7 +10018,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, -@@ -10579,7 +10609,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -10493,7 +10523,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), -@@ -10702,7 +10732,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -10616,7 +10646,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) - {"third-party-profile-management", - flag_descriptions::kThirdPartyProfileManagementName, - flag_descriptions::kThirdPartyProfileManagementDescription, -@@ -10731,7 +10761,7 @@ const FeatureEntry kFeatureEntries[] = { + {"enable-generic-oidc-auth-profile-management", + flag_descriptions::kEnableGenericOidcAuthProfileManagementName, + flag_descriptions::kEnableGenericOidcAuthProfileManagementDescription, +@@ -10637,7 +10667,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, -@@ -11296,7 +11326,7 @@ const FeatureEntry kFeatureEntries[] = { - PLATFORM_FEATURE_NAME_TYPE("CrOSLateBootGravedigger")}, - #endif // BUILDFLAG(IS_CHROMEOS) +@@ -11175,7 +11205,7 @@ const FeatureEntry kFeatureEntries[] = { + kOsMac | kOsWin | kOsLinux, + FEATURE_VALUE_TYPE(net::features::kPersistDeviceBoundSessions)}, -#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, -@@ -11455,7 +11485,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -11334,7 +11364,7 @@ const FeatureEntry kFeatureEntries[] = { flag_descriptions::kCanvasHibernationDescription, kOsAll, FEATURE_VALUE_TYPE(blink::features::kCanvas2DHibernation)}, -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) {"enable-history-sync-optin", flag_descriptions::kEnableHistorySyncOptinName, flag_descriptions::kEnableHistorySyncOptinDescription, -@@ -11558,7 +11588,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -11425,7 +11455,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, -@@ -11784,7 +11814,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -11622,7 +11652,7 @@ const FeatureEntry kFeatureEntries[] = { segmentation_platform::features::kSegmentationSurveyPage)}, #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ -- BUILDFLAG(IS_CHROMEOS) -+ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) +- 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, kOsDesktop, -@@ -11883,7 +11913,7 @@ const FeatureEntry kFeatureEntries[] = { + flag_descriptions::kAutofillEnableBuyNowPayLaterDescription, +@@ -11727,7 +11757,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, -@@ -11917,7 +11947,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -11755,7 +11785,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, -@@ -12247,7 +12277,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -12103,7 +12133,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)}, -@@ -12291,7 +12321,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -12147,7 +12177,7 @@ const FeatureEntry kFeatureEntries[] = { #endif // !BUILDFLAG(IS_ANDROID) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ -- BUILDFLAG(IS_CHROMEOS) -+ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - {"autofill-enable-amount-extraction-desktop", - flag_descriptions::kAutofillEnableAmountExtractionDesktopName, - flag_descriptions::kAutofillEnableAmountExtractionDesktopDescription, -@@ -12311,7 +12341,7 @@ const FeatureEntry kFeatureEntries[] = { +- 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, +@@ -12167,7 +12197,7 @@ const FeatureEntry kFeatureEntries[] = { FEATURE_VALUE_TYPE(blink::features::kClipboardChangeEvent)}, #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ -- BUILDFLAG(IS_CHROMEOS) -+ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - {"autofill-enable-amount-extraction-allowlist-desktop", - flag_descriptions::kAutofillEnableAmountExtractionAllowlistDesktopName, - flag_descriptions:: -@@ -12443,7 +12473,7 @@ const FeatureEntry kFeatureEntries[] = { +- BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) + {"autofill-enable-amount-extraction-allowlist", + flag_descriptions::kAutofillEnableAmountExtractionAllowlistName, + flag_descriptions::kAutofillEnableAmountExtractionAllowlistDescription, +@@ -12306,7 +12336,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, -@@ -12479,7 +12509,7 @@ const FeatureEntry kFeatureEntries[] = { - #endif // BUILDFLAG(IS_ANDROID) +@@ -12335,7 +12365,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, -@@ -12494,7 +12524,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -12350,7 +12380,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, -@@ -12745,7 +12775,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -12613,7 +12643,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)}, -@@ -12831,7 +12861,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -12706,7 +12736,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, -@@ -12954,7 +12984,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -12829,7 +12859,7 @@ const FeatureEntry kFeatureEntries[] = { #endif // !BUILDFLAG(IS_ANDROID) #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_WIN) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) {"lens-search-side-panel-default-width-change", flag_descriptions::kLensSearchSidePanelDefaultWidthChangeName, flag_descriptions::kLensSearchSidePanelDefaultWidthChangeDescription, -@@ -12978,7 +13008,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -12860,7 +12890,7 @@ const FeatureEntry kFeatureEntries[] = { #endif // BUILDFLAG(IS_ANDROID) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ -- BUILDFLAG(IS_CHROMEOS) -+ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) +- 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, -@@ -13016,7 +13046,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -12898,7 +12928,7 @@ const FeatureEntry kFeatureEntries[] = { autofill::features::kAutofillEnableDownstreamCardAwarenessIph)}, #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_WIN) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) {"enable-lens-overlay-back-to-page", flag_descriptions::kLensOverlayBackToPageName, flag_descriptions::kLensOverlayBackToPageDescription, kOsDesktop, -@@ -13065,7 +13095,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -12950,7 +12980,7 @@ const FeatureEntry kFeatureEntries[] = { #endif // BUILDFLAG(ENABLE_DICE_SUPPORT) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ -- BUILDFLAG(IS_CHROMEOS) -+ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) +- BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) {"autofill-enable-buy-now-pay-later-for-externally-linked", flag_descriptions::kAutofillEnableBuyNowPayLaterForExternallyLinkedName, flag_descriptions:: +@@ -13215,7 +13245,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, diff --git a/www/iridium/files/patch-chrome_browser_accessibility_page__colors.cc b/www/iridium/files/patch-chrome_browser_accessibility_page__colors__controller.cc similarity index 62% rename from www/iridium/files/patch-chrome_browser_accessibility_page__colors.cc rename to www/iridium/files/patch-chrome_browser_accessibility_page__colors__controller.cc index 576bb772d25a..ba0ddfd6a9b1 100644 --- a/www/iridium/files/patch-chrome_browser_accessibility_page__colors.cc +++ b/www/iridium/files/patch-chrome_browser_accessibility_page__colors__controller.cc @@ -1,20 +1,20 @@ ---- chrome/browser/accessibility/page_colors.cc.orig 2025-05-07 06:48:23 UTC -+++ chrome/browser/accessibility/page_colors.cc -@@ -12,7 +12,7 @@ - #include "components/sync_preferences/pref_service_syncable.h" +--- chrome/browser/accessibility/page_colors_controller.cc.orig 2025-10-28 14:29:43 UTC ++++ chrome/browser/accessibility/page_colors_controller.cc +@@ -11,7 +11,7 @@ + #include "components/prefs/pref_service.h" #include "ui/native_theme/native_theme.h" -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "ui/linux/linux_ui.h" #include "ui/linux/linux_ui_factory.h" #endif // BUILDFLAG(IS_LINUX) -@@ -55,7 +55,7 @@ void PageColors::Init() { +@@ -88,7 +88,7 @@ void PageColorsController::OnPreferredContrastChanged( - void PageColors::OnPageColorsChanged() { + void PageColorsController::OnPageColorsChanged() { auto* native_theme = ui::NativeTheme::GetInstanceForNativeUi(); -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Allow the Linux native theme to update its state for page colors. if (auto* linux_ui_theme = ui::GetDefaultLinuxUiTheme()) { if (auto* linux_native_theme = linux_ui_theme->GetNativeTheme()) { diff --git a/www/iridium/files/patch-chrome_browser_background_glic_glic__status__icon.cc b/www/iridium/files/patch-chrome_browser_background_glic_glic__status__icon.cc index 0cc0e0d9c0de..4bb2d9992926 100644 --- a/www/iridium/files/patch-chrome_browser_background_glic_glic__status__icon.cc +++ b/www/iridium/files/patch-chrome_browser_background_glic_glic__status__icon.cc @@ -1,38 +1,38 @@ ---- chrome/browser/background/glic/glic_status_icon.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/background/glic/glic_status_icon.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/background/glic/glic_status_icon.cc -@@ -93,7 +93,7 @@ GlicStatusIcon::GlicStatusIcon(GlicController* control - if (!status_icon_) { +@@ -89,7 +89,7 @@ GlicStatusIcon::GlicStatusIcon(GlicController* control return; } + -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - // Set a vector icon for proper themeing on Linux. + // Set a vector icon for proper theming on Linux. status_icon_->SetIcon( GlicVectorIconManager::GetVectorIcon(IDR_GLIC_BUTTON_VECTOR_ICON)); -@@ -135,7 +135,7 @@ GlicStatusIcon::~GlicStatusIcon() { +@@ -144,7 +144,7 @@ GlicStatusIcon::~GlicStatusIcon() { context_menu_ = nullptr; if (status_icon_) { -#if !BUILDFLAG(IS_LINUX) -+#if !BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_BSD) ++#if !BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) status_icon_->RemoveObserver(this); #endif std::unique_ptr removed_icon = -@@ -243,7 +243,7 @@ void GlicStatusIcon::UpdateHotkey(const ui::Accelerato +@@ -257,7 +257,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 = -@@ -293,7 +293,7 @@ std::unique_ptr GlicStatusIcon::C +@@ -321,7 +321,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/iridium/files/patch-chrome_browser_browser__features.cc b/www/iridium/files/patch-chrome_browser_browser__features.cc index 178992a63448..3d27f24d951f 100644 --- a/www/iridium/files/patch-chrome_browser_browser__features.cc +++ b/www/iridium/files/patch-chrome_browser_browser__features.cc @@ -1,29 +1,29 @@ ---- chrome/browser/browser_features.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/browser_features.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/browser_features.cc -@@ -80,7 +80,7 @@ BASE_FEATURE(kClearUserDataUponProfileDestruction, +@@ -86,7 +86,7 @@ BASE_FEATURE(kClearUserDataUponProfileDestruction, "ClearUserDataUponProfileDestruction", 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. -@@ -99,7 +99,7 @@ BASE_FEATURE(kUseFreedesktopSecretKeyProvider, +@@ -105,7 +105,7 @@ BASE_FEATURE(kUseFreedesktopSecretKeyProvider, // the browser exits. BASE_FEATURE(kDestroyProfileOnBrowserClose, "DestroyProfileOnBrowserClose", -#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); @@ -241,7 +241,7 @@ BASE_FEATURE(kSandboxExternalProtocolBlockedWarning, "SandboxExternalProtocolBlockedWarning", 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/iridium/files/patch-chrome_browser_browser__features.h b/www/iridium/files/patch-chrome_browser_browser__features.h index afbef539d545..53effbd91b20 100644 --- a/www/iridium/files/patch-chrome_browser_browser__features.h +++ b/www/iridium/files/patch-chrome_browser_browser__features.h @@ -1,20 +1,20 @@ ---- chrome/browser/browser_features.h.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/browser_features.h.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/browser_features.h -@@ -39,7 +39,7 @@ BASE_DECLARE_FEATURE(kCertificateTransparencyAskBefore +@@ -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 -@@ -87,7 +87,7 @@ BASE_DECLARE_FEATURE(kRestartNetworkServiceUnsandboxed +@@ -91,7 +91,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/iridium/files/patch-chrome_browser_browser__process__impl.cc b/www/iridium/files/patch-chrome_browser_browser__process__impl.cc index 49c2e2c45775..cdc194dfae54 100644 --- a/www/iridium/files/patch-chrome_browser_browser__process__impl.cc +++ b/www/iridium/files/patch-chrome_browser_browser__process__impl.cc @@ -1,47 +1,47 @@ ---- chrome/browser/browser_process_impl.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/browser_process_impl.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/browser_process_impl.cc -@@ -257,7 +257,7 @@ +@@ -253,7 +253,7 @@ #include "components/enterprise/browser/controller/chrome_browser_cloud_management_controller.h" #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "chrome/browser/browser_features.h" #include "components/os_crypt/async/browser/fallback_linux_key_provider.h" #include "components/os_crypt/async/browser/freedesktop_secret_key_provider.h" -@@ -269,7 +269,7 @@ +@@ -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; -@@ -1170,7 +1170,7 @@ void BrowserProcessImpl::RegisterPrefs(PrefRegistrySim +@@ -1167,7 +1167,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 } -@@ -1438,7 +1438,7 @@ void BrowserProcessImpl::PreMainMessageLoopRun() { +@@ -1435,7 +1435,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() { +@@ -1715,7 +1715,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/iridium/files/patch-chrome_browser_chrome__browser__field__trials.cc b/www/iridium/files/patch-chrome_browser_chrome__browser__field__trials.cc index cfb35b3e9ae2..0cfc8c4e972f 100644 --- a/www/iridium/files/patch-chrome_browser_chrome__browser__field__trials.cc +++ b/www/iridium/files/patch-chrome_browser_chrome__browser__field__trials.cc @@ -1,20 +1,20 @@ ---- chrome/browser/chrome_browser_field_trials.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/chrome_browser_field_trials.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/chrome_browser_field_trials.cc -@@ -45,7 +45,7 @@ +@@ -47,7 +47,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) -@@ -101,7 +101,7 @@ void ChromeBrowserFieldTrials::RegisterFeatureOverride +@@ -103,7 +103,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/iridium/files/patch-chrome_browser_chrome__browser__interface__binders__webui.cc b/www/iridium/files/patch-chrome_browser_chrome__browser__interface__binders__webui.cc index e22e9172c1c0..4dcacc3fb426 100644 --- a/www/iridium/files/patch-chrome_browser_chrome__browser__interface__binders__webui.cc +++ b/www/iridium/files/patch-chrome_browser_chrome__browser__interface__binders__webui.cc @@ -1,59 +1,59 @@ ---- chrome/browser/chrome_browser_interface_binders_webui.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/chrome_browser_interface_binders_webui.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/chrome_browser_interface_binders_webui.cc @@ -51,18 +51,18 @@ #include "mojo/public/cpp/bindings/binder_map.h" #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "ui/webui/resources/cr_components/app_management/app_management.mojom.h" #endif #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_DESKTOP_ANDROID) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_DESKTOP_ANDROID) || BUILDFLAG(IS_BSD) #include "chrome/browser/ui/webui/discards/discards.mojom.h" #include "chrome/browser/ui/webui/discards/discards_ui.h" #include "chrome/browser/ui/webui/discards/site_data.mojom.h" #endif -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "chrome/browser/ui/webui/app_settings/web_app_settings_ui.h" #include "chrome/browser/ui/webui/on_device_translation_internals/on_device_translation_internals_ui.h" #include "chrome/browser/ui/webui/signin/history_sync_optin/history_sync_optin.mojom.h" -@@ -483,7 +483,7 @@ void PopulateChromeWebUIFrameBinders( +@@ -489,7 +489,7 @@ void PopulateChromeWebUIFrameBinders( policy::DlpInternalsUI>(map); #endif -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) RegisterWebUIControllerInterfaceBinder< app_management::mojom::PageHandlerFactory, WebAppSettingsUI>(map); -@@ -635,14 +635,14 @@ void PopulateChromeWebUIFrameBinders( +@@ -642,14 +642,14 @@ void PopulateChromeWebUIFrameBinders( HistoryClustersSidePanelUI, NewTabPageUI, BookmarksSidePanelUI>(map); } -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) RegisterWebUIControllerInterfaceBinder(map); #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) RegisterWebUIControllerInterfaceBinder< browser_command::mojom::CommandHandlerFactory, -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) WhatsNewUI, #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) NewTabPageUI>(map); -@@ -1193,7 +1193,7 @@ void PopulateChromeWebUIFrameBinders( +@@ -1200,7 +1200,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/iridium/files/patch-chrome_browser_chrome__browser__main.cc b/www/iridium/files/patch-chrome_browser_chrome__browser__main.cc index d1fdd61521e8..e8e9cd6ca56d 100644 --- a/www/iridium/files/patch-chrome_browser_chrome__browser__main.cc +++ b/www/iridium/files/patch-chrome_browser_chrome__browser__main.cc @@ -1,115 +1,115 @@ ---- chrome/browser/chrome_browser_main.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/chrome_browser_main.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/chrome_browser_main.cc -@@ -153,7 +153,7 @@ +@@ -155,7 +155,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 -@@ -179,11 +179,11 @@ +@@ -181,11 +181,11 @@ #include "components/enterprise/browser/controller/chrome_browser_cloud_management_controller.h" #endif // BUILDFLAG(IS_CHROMEOS) -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "chrome/browser/first_run/upgrade_util_linux.h" #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) #include "chrome/browser/headless/headless_mode_metrics.h" // nogncheck #include "chrome/browser/headless/headless_mode_util.h" // nogncheck #include "chrome/browser/metrics/desktop_session_duration/desktop_session_duration_tracker.h" -@@ -194,7 +194,7 @@ +@@ -196,7 +196,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 -@@ -266,7 +266,7 @@ +@@ -269,7 +269,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) -@@ -289,7 +289,7 @@ +@@ -292,7 +292,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"); -@@ -440,7 +440,7 @@ void ProcessSingletonNotificationCallbackImpl( +@@ -441,7 +441,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. -@@ -1007,7 +1007,7 @@ int ChromeBrowserMainParts::PreCreateThreadsImpl() { +@@ -1002,7 +1002,7 @@ int ChromeBrowserMainParts::PreCreateThreadsImpl() { #if BUILDFLAG(ENABLE_EXTENSIONS_CORE) && \ (BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_ANDROID)) + BUILDFLAG(IS_ANDROID)) || BUILDFLAG(IS_BSD) // Create directory for user-level Native Messaging manifest files. This // makes it less likely that the directory will be created by third-party // software with incorrect owner or permission. See crbug.com/725513 . -@@ -1051,7 +1051,7 @@ int ChromeBrowserMainParts::PreCreateThreadsImpl() { +@@ -1046,7 +1046,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( -@@ -1271,7 +1271,7 @@ void ChromeBrowserMainParts::PostProfileInit(Profile* +@@ -1266,7 +1266,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( -@@ -1322,7 +1322,7 @@ void ChromeBrowserMainParts::PostProfileInit(Profile* +@@ -1317,7 +1317,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(); } -@@ -1431,7 +1431,7 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl( +@@ -1426,7 +1426,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(); } -@@ -1967,7 +1967,7 @@ bool ChromeBrowserMainParts::ProcessSingletonNotificat +@@ -1992,7 +1992,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/iridium/files/patch-chrome_browser_chrome__browser__main__linux.cc b/www/iridium/files/patch-chrome_browser_chrome__browser__main__linux.cc index d3fd7b9d43ef..124a0b57e338 100644 --- a/www/iridium/files/patch-chrome_browser_chrome__browser__main__linux.cc +++ b/www/iridium/files/patch-chrome_browser_chrome__browser__main__linux.cc @@ -1,39 +1,40 @@ ---- chrome/browser/chrome_browser_main_linux.cc.orig 2025-05-07 06:48:23 UTC +--- chrome/browser/chrome_browser_main_linux.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/chrome_browser_main_linux.cc -@@ -24,7 +24,7 @@ - #include "device/bluetooth/dbus/bluez_dbus_thread_manager.h" +@@ -23,7 +23,7 @@ + #include "device/bluetooth/dbus/bluez_dbus_manager.h" #include "ui/base/l10n/l10n_util.h" -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + #include "components/dbus/thread_linux/dbus_thread_linux.h" #include "ui/ozone/public/ozone_platform.h" #endif - -@@ -65,7 +65,9 @@ void ChromeBrowserMainPartsLinux::PostCreateMainMessag +@@ -65,8 +65,10 @@ void ChromeBrowserMainPartsLinux::PostCreateMainMessag #endif // BUILDFLAG(IS_CHROMEOS) #if !BUILDFLAG(IS_CHROMEOS) +#if !BUILDFLAG(IS_BSD) - bluez::BluezDBusManager::Initialize(nullptr /* system_bus */); + bluez::BluezDBusManager::Initialize( + dbus_thread_linux::GetSharedSystemBus().get()); +#endif // Set up crypt config. This needs to be done before anything starts the // network service, as the raw encryption key needs to be shared with the -@@ -91,7 +93,7 @@ void ChromeBrowserMainPartsLinux::PostCreateMainMessag +@@ -92,7 +94,7 @@ void ChromeBrowserMainPartsLinux::PostCreateMainMessag ChromeBrowserMainPartsPosix::PostCreateMainMessageLoop(); } -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) void ChromeBrowserMainPartsLinux::PostMainMessageLoopRun() { ChromeBrowserMainPartsPosix::PostMainMessageLoopRun(); ui::OzonePlatform::GetInstance()->PostMainMessageLoopRun(); -@@ -129,7 +131,7 @@ void ChromeBrowserMainPartsLinux::PostBrowserStart() { +@@ -130,7 +132,7 @@ void ChromeBrowserMainPartsLinux::PostBrowserStart() { #endif // BUILDFLAG(USE_DBUS) && !BUILDFLAG(IS_CHROMEOS) void ChromeBrowserMainPartsLinux::PostDestroyThreads() { -#if BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // No-op; per PostBrowserStart() comment, this is done elsewhere. #else bluez::BluezDBusManager::Shutdown(); diff --git a/www/iridium/files/patch-chrome_browser_chrome__browser__main__posix.cc b/www/iridium/files/patch-chrome_browser_chrome__browser__main__posix.cc index 02a95414dec1..e1e159fa1010 100644 --- a/www/iridium/files/patch-chrome_browser_chrome__browser__main__posix.cc +++ b/www/iridium/files/patch-chrome_browser_chrome__browser__main__posix.cc @@ -1,11 +1,11 @@ ---- chrome/browser/chrome_browser_main_posix.cc.orig 2025-05-07 06:48:23 UTC +--- chrome/browser/chrome_browser_main_posix.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/chrome_browser_main_posix.cc -@@ -81,7 +81,7 @@ void ExitHandler::ExitWhenPossibleOnUIThread(int signa +@@ -77,7 +77,7 @@ void ExitHandler::ExitWhenPossibleOnUIThread(int signa // ExitHandler takes care of deleting itself. new ExitHandler(); } else { -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) switch (signal) { case SIGINT: case SIGHUP: diff --git a/www/iridium/files/patch-chrome_browser_chrome__content__browser__client.cc b/www/iridium/files/patch-chrome_browser_chrome__content__browser__client.cc index 86a62da911fe..5aee25e55998 100644 --- a/www/iridium/files/patch-chrome_browser_chrome__content__browser__client.cc +++ b/www/iridium/files/patch-chrome_browser_chrome__content__browser__client.cc @@ -1,147 +1,138 @@ ---- chrome/browser/chrome_content_browser_client.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/chrome_content_browser_client.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/chrome_content_browser_client.cc -@@ -467,7 +467,7 @@ +@@ -481,7 +481,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) -@@ -565,7 +565,7 @@ +@@ -581,7 +581,7 @@ #include "services/network/public/mojom/permissions_policy/permissions_policy_feature.mojom.h" #endif // !BUILDFLAG(IS_ANDROID) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "components/crash/core/app/crash_switches.h" #include "components/crash/core/app/crashpad.h" #endif -@@ -574,7 +574,7 @@ +@@ -591,7 +591,7 @@ #include "components/crash/content/browser/crash_handler_host_linux.h" #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) #include "chrome/browser/enterprise/chrome_browser_main_extra_parts_enterprise.h" #endif -@@ -582,7 +582,7 @@ +@@ -599,7 +599,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" -@@ -1406,7 +1406,7 @@ void ChromeContentBrowserClient::RegisterLocalStatePre +@@ -1449,7 +1449,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) -@@ -1628,7 +1628,7 @@ ChromeContentBrowserClient::CreateBrowserMainParts(boo +@@ -1671,7 +1671,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) -@@ -1659,7 +1659,7 @@ ChromeContentBrowserClient::CreateBrowserMainParts(boo +@@ -1702,7 +1702,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 -@@ -1676,7 +1676,7 @@ ChromeContentBrowserClient::CreateBrowserMainParts(boo +@@ -1719,7 +1719,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()); -@@ -1695,7 +1695,7 @@ ChromeContentBrowserClient::CreateBrowserMainParts(boo +@@ -1738,7 +1738,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>()); -@@ -2703,7 +2703,9 @@ void MaybeAppendBlinkSettingsSwitchForFieldTrial( +@@ -2835,7 +2835,9 @@ void MaybeAppendBlinkSettingsSwitchForFieldTrial( void ChromeContentBrowserClient::AppendExtraCommandLineSwitches( base::CommandLine* command_line, int child_process_id) { +#ifdef notyet crash_keys::AppendStringAnnotationsCommandLineSwitch(command_line); +#endif #if BUILDFLAG(IS_MAC) std::unique_ptr client_info = GoogleUpdateSettings::LoadMetricsClientInfo(); -@@ -2712,7 +2714,7 @@ void ChromeContentBrowserClient::AppendExtraCommandLin +@@ -2844,7 +2846,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( -@@ -3044,7 +3046,7 @@ void ChromeContentBrowserClient::AppendExtraCommandLin +@@ -3177,7 +3179,7 @@ void ChromeContentBrowserClient::AppendExtraCommandLin } } -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)) && !BUILDFLAG(IS_BSD) // Opt into a hardened stack canary mitigation if it hasn't already been // force-disabled. if (!browser_command_line.HasSwitch(switches::kChangeStackGuardOnFork)) { -@@ -4109,7 +4111,7 @@ bool UpdatePreferredColorScheme(WebPreferences* web_pr - return old_preferred_color_scheme != web_prefs->preferred_color_scheme; - } - --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) - // Sets the `root_scrollbar_theme_color` web pref if the user has enabled a - // custom colored frame for the UI. - void UpdateRootScrollbarThemeColor(Profile* profile, -@@ -4752,7 +4754,7 @@ void ChromeContentBrowserClient::OverrideWebPreference +@@ -4236,7 +4238,7 @@ GetPreferredColorScheme(const WebPreferences& web_pref - UpdatePreferredColorScheme(web_prefs, main_frame_site.GetSiteURL(), - web_contents, GetWebTheme()); + 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) - UpdateRootScrollbarThemeColor(profile, web_contents, web_prefs); - #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) - -@@ -5030,7 +5032,7 @@ void ChromeContentBrowserClient::GetAdditionalFileSyst + root_scrollbar_follows_browser_theme = base::FeatureList::IsEnabled( + blink::features::kRootScrollbarFollowsBrowserTheme); + #endif +@@ -5171,7 +5173,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, -@@ -7174,7 +7176,7 @@ bool ChromeContentBrowserClient::ShouldSandboxNetworkS +@@ -7356,7 +7358,7 @@ bool ChromeContentBrowserClient::ShouldSandboxNetworkS bool ChromeContentBrowserClient::ShouldRunOutOfProcessSystemDnsResolution() { // This enterprise policy is supported on Android, but the feature will not be // launched there. -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) // This is possibly called before `g_browser_process` is initialized. PrefService* local_state; if (g_browser_process) { diff --git a/www/iridium/files/patch-chrome_browser_chrome__content__browser__client.h b/www/iridium/files/patch-chrome_browser_chrome__content__browser__client.h index f56d5318aa4c..310646a53cf7 100644 --- a/www/iridium/files/patch-chrome_browser_chrome__content__browser__client.h +++ b/www/iridium/files/patch-chrome_browser_chrome__content__browser__client.h @@ -1,11 +1,11 @@ ---- chrome/browser/chrome_content_browser_client.h.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/chrome_content_browser_client.h.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/chrome_content_browser_client.h -@@ -571,7 +571,7 @@ class ChromeContentBrowserClient : public content::Con +@@ -579,7 +579,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/iridium/files/patch-chrome_browser_download_chrome__download__manager__delegate.cc b/www/iridium/files/patch-chrome_browser_download_chrome__download__manager__delegate.cc index 25401d053cb5..9bee463bd5a9 100644 --- a/www/iridium/files/patch-chrome_browser_download_chrome__download__manager__delegate.cc +++ b/www/iridium/files/patch-chrome_browser_download_chrome__download__manager__delegate.cc @@ -1,29 +1,29 @@ ---- chrome/browser/download/chrome_download_manager_delegate.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/download/chrome_download_manager_delegate.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/download/chrome_download_manager_delegate.cc -@@ -1944,7 +1944,7 @@ void ChromeDownloadManagerDelegate::OnDownloadTargetDe +@@ -1948,7 +1948,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(); } -@@ -2080,7 +2080,7 @@ void ChromeDownloadManagerDelegate::CheckDownloadAllow +@@ -2084,7 +2084,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()) { -@@ -2162,7 +2162,7 @@ void ChromeDownloadManagerDelegate::CheckSavePackageAl +@@ -2166,7 +2166,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/iridium/files/patch-chrome_browser_download_download__commands.cc b/www/iridium/files/patch-chrome_browser_download_download__commands.cc index 15efa7040404..7fbdaeca575d 100644 --- a/www/iridium/files/patch-chrome_browser_download_download__commands.cc +++ b/www/iridium/files/patch-chrome_browser_download_download__commands.cc @@ -1,20 +1,20 @@ ---- chrome/browser/download/download_commands.cc.orig 2025-05-07 06:48:23 UTC +--- chrome/browser/download/download_commands.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/download/download_commands.cc @@ -27,7 +27,7 @@ #include "ui/base/clipboard/scoped_clipboard_writer.h" #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ - BUILDFLAG(IS_MAC) + BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) #include "chrome/browser/ui/browser.h" #include "chrome/browser/ui/browser_finder.h" #include "chrome/browser/ui/scoped_tabbed_browser_displayer.h" -@@ -177,7 +177,7 @@ void DownloadCommands::ExecuteCommand(Command command) +@@ -174,7 +174,7 @@ void DownloadCommands::ExecuteCommand(Command command) } #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) Browser* DownloadCommands::GetBrowser() const { if (!model_) diff --git a/www/iridium/files/patch-chrome_browser_download_download__item__model.cc b/www/iridium/files/patch-chrome_browser_download_download__item__model.cc index 9b79d30ce458..3696ab75ea28 100644 --- a/www/iridium/files/patch-chrome_browser_download_download__item__model.cc +++ b/www/iridium/files/patch-chrome_browser_download_download__item__model.cc @@ -1,29 +1,29 @@ ---- chrome/browser/download/download_item_model.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/download/download_item_model.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/download/download_item_model.cc -@@ -723,7 +723,7 @@ bool DownloadItemModel::IsCommandChecked( +@@ -724,7 +724,7 @@ bool DownloadItemModel::IsCommandChecked( download_crx_util::IsExtensionDownload(*download_); case DownloadCommands::ALWAYS_OPEN_TYPE: #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ - BUILDFLAG(IS_MAC) + BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) if (download_commands->CanOpenPdfInSystemViewer()) { DownloadPrefs* prefs = DownloadPrefs::FromBrowserContext(profile()); return prefs->ShouldOpenPdfInSystemReader(); -@@ -771,7 +771,7 @@ void DownloadItemModel::ExecuteCommand(DownloadCommand +@@ -772,7 +772,7 @@ void DownloadItemModel::ExecuteCommand(DownloadCommand DownloadCommands::ALWAYS_OPEN_TYPE); DownloadPrefs* prefs = DownloadPrefs::FromBrowserContext(profile()); #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ - BUILDFLAG(IS_MAC) + BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) if (download_commands->CanOpenPdfInSystemViewer()) { prefs->SetShouldOpenPdfInSystemReader(!is_checked); SetShouldPreferOpeningInBrowser(is_checked); -@@ -1174,7 +1174,7 @@ void DownloadItemModel::DetermineAndSetShouldPreferOpe +@@ -1175,7 +1175,7 @@ void DownloadItemModel::DetermineAndSetShouldPreferOpe return; } -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) if (download_->GetOriginalMimeType() == "application/x-x509-user-cert") { SetShouldPreferOpeningInBrowser(true); return; diff --git a/www/iridium/files/patch-chrome_browser_enterprise_browser__management_browser__management__service.cc b/www/iridium/files/patch-chrome_browser_enterprise_browser__management_browser__management__service.cc index c985c44cc5dc..5f70fb62a412 100644 --- a/www/iridium/files/patch-chrome_browser_enterprise_browser__management_browser__management__service.cc +++ b/www/iridium/files/patch-chrome_browser_enterprise_browser__management_browser__management__service.cc @@ -1,47 +1,47 @@ ---- chrome/browser/enterprise/browser_management/browser_management_service.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/enterprise/browser_management/browser_management_service.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/enterprise/browser_management/browser_management_service.cc @@ -50,7 +50,7 @@ GetManagementStatusProviders(Profile* profile) { BrowserManagementService::BrowserManagementService(Profile* profile) : ManagementService(GetManagementStatusProviders(profile)) { -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) base::SequencedTaskRunner::GetCurrentDefault()->PostTask( FROM_HERE, base::BindOnce(&BrowserManagementService::UpdateManagementIconForProfile, @@ -74,7 +74,7 @@ BrowserManagementService::BrowserManagementService(Pro } ui::ImageModel* BrowserManagementService::GetManagementIconForProfile() { -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) return management_icon_for_profile_.IsEmpty() ? nullptr : &management_icon_for_profile_; #else @@ -83,7 +83,7 @@ ui::ImageModel* BrowserManagementService::GetManagemen } gfx::Image* BrowserManagementService::GetManagementIconForBrowser() { -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) return management_icon_for_browser_.IsEmpty() ? nullptr : &management_icon_for_browser_; #else @@ -96,7 +96,7 @@ void BrowserManagementService::TriggerPolicyStatusChan OnPolicyStatusChanged(); } -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) void BrowserManagementService::SetBrowserManagementIconForTesting( const gfx::Image& management_icon) { CHECK_IS_TEST(); -@@ -183,7 +183,7 @@ void BrowserManagementService::SetManagementIconForBro +@@ -185,7 +185,7 @@ void BrowserManagementService::SetManagementIconForBro #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) void BrowserManagementService::OnPolicyStatusChanged() { -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) NotifyEnterpriseLabelUpdated(); #endif } diff --git a/www/iridium/files/patch-chrome_browser_enterprise_connectors_common.cc b/www/iridium/files/patch-chrome_browser_enterprise_connectors_common.cc index 596087ac1807..255b5d49c683 100644 --- a/www/iridium/files/patch-chrome_browser_enterprise_connectors_common.cc +++ b/www/iridium/files/patch-chrome_browser_enterprise_connectors_common.cc @@ -1,20 +1,20 @@ ---- chrome/browser/enterprise/connectors/common.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/enterprise/connectors/common.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/enterprise/connectors/common.cc -@@ -19,7 +19,7 @@ +@@ -20,7 +20,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 -@@ -235,7 +235,7 @@ std::string GetProfileEmail(Profile* profile) { +@@ -306,7 +306,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/iridium/files/patch-chrome_browser_enterprise_connectors_reporting_realtime__reporting__client.cc b/www/iridium/files/patch-chrome_browser_enterprise_connectors_reporting_realtime__reporting__client.cc index d97039625117..b1d970069514 100644 --- a/www/iridium/files/patch-chrome_browser_enterprise_connectors_reporting_realtime__reporting__client.cc +++ b/www/iridium/files/patch-chrome_browser_enterprise_connectors_reporting_realtime__reporting__client.cc @@ -1,38 +1,47 @@ ---- chrome/browser/enterprise/connectors/reporting/realtime_reporting_client.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/enterprise/connectors/reporting/realtime_reporting_client.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/enterprise/connectors/reporting/realtime_reporting_client.cc @@ -53,7 +53,7 @@ #include "base/strings/utf_string_conversions.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/signals/signals_aggregator_factory.h" #include "chrome/browser/enterprise/signin/enterprise_signin_prefs.h" #include "components/device_signals/core/browser/signals_aggregator.h" -@@ -158,7 +158,7 @@ void RealtimeReportingClient::ReportPastEvent(const st +@@ -62,7 +62,7 @@ + + 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) + using Event = ::chrome::cros::reporting::proto::Event; + #endif + +@@ -162,7 +162,7 @@ void RealtimeReportingClient::ReportPastEvent(const st /*include_profile_user_name=*/false); } -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) void AddCrowdstrikeSignalsToEvent( base::Value::Dict& event, -@@ -194,7 +194,7 @@ std::string RealtimeReportingClient::GetProfileUserNam +@@ -283,7 +283,7 @@ std::string RealtimeReportingClient::GetProfileUserNam username_ = identity_manager_ ? GetProfileEmail(identity_manager_) : std::string(); -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (username_.empty()) { username_ = Profile::FromBrowserContext(context_)->GetPrefs()->GetString( enterprise_signin::prefs::kProfileUserEmail); -@@ -251,7 +251,7 @@ std::string RealtimeReportingClient::GetBrowserClientI +@@ -340,7 +340,7 @@ std::string RealtimeReportingClient::GetBrowserClientI return client_id; } -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if (BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && defined(notyet) void RealtimeReportingClient::MaybeCollectDeviceSignalsAndReportEvent( - ::chrome::cros::reporting::proto::Event event, + Event event, policy::CloudPolicyClient* client, diff --git a/www/iridium/files/patch-chrome_browser_enterprise_signals_signals__aggregator__factory.cc b/www/iridium/files/patch-chrome_browser_enterprise_signals_signals__aggregator__factory.cc index 0ede8f64109c..59df417bb1b6 100644 --- a/www/iridium/files/patch-chrome_browser_enterprise_signals_signals__aggregator__factory.cc +++ b/www/iridium/files/patch-chrome_browser_enterprise_signals_signals__aggregator__factory.cc @@ -1,20 +1,20 @@ ---- chrome/browser/enterprise/signals/signals_aggregator_factory.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/enterprise/signals/signals_aggregator_factory.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/enterprise/signals/signals_aggregator_factory.cc @@ -49,7 +49,7 @@ #include "components/device_signals/core/browser/settings_client.h" #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "components/device_signals/core/browser/agent_signals_collector.h" #include "components/device_signals/core/browser/crowdstrike_client.h" - #include "components/device_signals/core/browser/detected_agent_client.h" -@@ -114,7 +114,7 @@ SignalsAggregatorFactory::BuildServiceInstanceForBrows + #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +@@ -113,7 +113,7 @@ SignalsAggregatorFactory::BuildServiceInstanceForBrows service_host)); #endif // !BUILDFLAG(IS_ANDROID) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) collectors.push_back(std::make_unique( - device_signals::CrowdStrikeClient::Create(), - device_signals::DetectedAgentClient::Create())); + device_signals::CrowdStrikeClient::Create())); + #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) diff --git a/www/iridium/files/patch-chrome_browser_enterprise_util_managed__browser__utils.cc b/www/iridium/files/patch-chrome_browser_enterprise_util_managed__browser__utils.cc index da07c90c3341..d0d8489afb51 100644 --- a/www/iridium/files/patch-chrome_browser_enterprise_util_managed__browser__utils.cc +++ b/www/iridium/files/patch-chrome_browser_enterprise_util_managed__browser__utils.cc @@ -1,38 +1,38 @@ ---- chrome/browser/enterprise/util/managed_browser_utils.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/enterprise/util/managed_browser_utils.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/enterprise/util/managed_browser_utils.cc -@@ -220,7 +220,7 @@ void SetUserAcceptedAccountManagement(Profile* profile +@@ -300,7 +300,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 -@@ -229,7 +229,7 @@ void SetUserAcceptedAccountManagement(Profile* profile +@@ -309,7 +309,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); -@@ -348,7 +348,7 @@ bool CanShowEnterpriseProfileUI(Profile* profile) { +@@ -428,7 +428,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) { -@@ -366,7 +366,7 @@ bool CanShowEnterpriseBadgingForNTPFooter(Profile* pro +@@ -446,7 +446,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( diff --git a/www/iridium/files/patch-chrome_browser_extensions_BUILD.gn b/www/iridium/files/patch-chrome_browser_extensions_BUILD.gn index 0ddd190ed8d1..411f0c9fb041 100644 --- a/www/iridium/files/patch-chrome_browser_extensions_BUILD.gn +++ b/www/iridium/files/patch-chrome_browser_extensions_BUILD.gn @@ -1,13 +1,13 @@ ---- chrome/browser/extensions/BUILD.gn.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/extensions/BUILD.gn.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/extensions/BUILD.gn -@@ -1516,6 +1516,10 @@ source_set("extensions") { +@@ -1522,6 +1522,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/iridium/files/patch-chrome_browser_extensions_api_runtime_chrome__runtime__api__delegate.cc b/www/iridium/files/patch-chrome_browser_extensions_api_runtime_chrome__runtime__api__delegate.cc index 20ca34101cf8..dedd6e0bb2f3 100644 --- a/www/iridium/files/patch-chrome_browser_extensions_api_runtime_chrome__runtime__api__delegate.cc +++ b/www/iridium/files/patch-chrome_browser_extensions_api_runtime_chrome__runtime__api__delegate.cc @@ -1,13 +1,13 @@ ---- chrome/browser/extensions/api/runtime/chrome_runtime_api_delegate.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/extensions/api/runtime/chrome_runtime_api_delegate.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/extensions/api/runtime/chrome_runtime_api_delegate.cc -@@ -356,7 +356,9 @@ bool ChromeRuntimeAPIDelegate::GetPlatformInfo(Platfor - } else if (strcmp(os, "linux") == 0) { +@@ -353,7 +353,9 @@ bool ChromeRuntimeAPIDelegate::GetPlatformInfo(Platfor + } else if (UNSAFE_TODO(strcmp(os, "linux")) == 0) { info->os = extensions::api::runtime::PlatformOs::kLinux; - } else if (strcmp(os, "openbsd") == 0) { + } else if (UNSAFE_TODO(strcmp(os, "openbsd")) == 0) { - info->os = extensions::api::runtime::PlatformOs::kOpenbsd; + info->os = extensions::api::runtime::PlatformOs::kLinux; -+ } else if (strcmp(os, "freebsd") == 0) { ++ } else if (UNSAFE_TODO(strcmp(os, "freebsd")) == 0) { + info->os = extensions::api::runtime::PlatformOs::kLinux; - } else if (strcmp(os, "android") == 0) { + } else if (UNSAFE_TODO(strcmp(os, "android")) == 0) { info->os = extensions::api::runtime::PlatformOs::kAndroid; } else { diff --git a/www/iridium/files/patch-chrome_browser_extensions_api_settings__private_prefs__util.cc b/www/iridium/files/patch-chrome_browser_extensions_api_settings__private_prefs__util.cc index 531923ce233a..73dd312cdb19 100644 --- a/www/iridium/files/patch-chrome_browser_extensions_api_settings__private_prefs__util.cc +++ b/www/iridium/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-09-11 13:19:19 UTC +--- chrome/browser/extensions/api/settings_private/prefs_util.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/extensions/api/settings_private/prefs_util.cc -@@ -197,7 +197,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] = -@@ -217,7 +217,7 @@ const PrefsUtil::TypedPrefMap& PrefsUtil::GetAllowlist +@@ -218,7 +218,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 -@@ -231,7 +231,7 @@ const PrefsUtil::TypedPrefMap& PrefsUtil::GetAllowlist - (*s_allowlist)[::prefs::kCurrentThemeID] = settings_api::PrefType::kString; +@@ -235,7 +235,7 @@ const PrefsUtil::TypedPrefMap& PrefsUtil::GetAllowlist (*s_allowlist)[::prefs::kPinnedActions] = settings_api::PrefType::kList; - (*s_allowlist)[::prefs::kPolicyThemeColor] = settings_api::PrefType::kNumber; + (*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/iridium/files/patch-chrome_browser_extensions_api_tabs_tabs__api__non__android.cc b/www/iridium/files/patch-chrome_browser_extensions_api_tabs_tabs__api__non__android.cc index 3f59d945e7d7..4f0d85db2788 100644 --- a/www/iridium/files/patch-chrome_browser_extensions_api_tabs_tabs__api__non__android.cc +++ b/www/iridium/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-09-11 13:19:19 UTC +--- chrome/browser/extensions/api/tabs/tabs_api_non_android.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/extensions/api/tabs/tabs_api_non_android.cc -@@ -756,7 +756,7 @@ ExtensionFunction::ResponseAction WindowsCreateFunctio +@@ -663,7 +663,7 @@ ExtensionFunction::ResponseAction WindowsCreateFunctio // created as minimized. // TODO(crbug.com/40254339): Remove this workaround when linux is fixed. // TODO(crbug.com/40254339): Find a fix for wayland as well. -#if BUILDFLAG(IS_LINUX) && BUILDFLAG(IS_OZONE_X11) +#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && BUILDFLAG(IS_OZONE_X11) if (new_window->initial_show_state() == ui::mojom::WindowShowState::kMinimized) { new_window->window()->Minimize(); diff --git a/www/iridium/files/patch-chrome_browser_extensions_api_webstore__private_webstore__private__api.cc b/www/iridium/files/patch-chrome_browser_extensions_api_webstore__private_webstore__private__api.cc index f1f520b36c7e..d9908b4f50da 100644 --- a/www/iridium/files/patch-chrome_browser_extensions_api_webstore__private_webstore__private__api.cc +++ b/www/iridium/files/patch-chrome_browser_extensions_api_webstore__private_webstore__private__api.cc @@ -1,11 +1,11 @@ ---- chrome/browser/extensions/api/webstore_private/webstore_private_api.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/extensions/api/webstore_private/webstore_private_api.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/extensions/api/webstore_private/webstore_private_api.cc -@@ -912,7 +912,7 @@ void WebstorePrivateBeginInstallWithManifest3Function: +@@ -938,7 +938,7 @@ void WebstorePrivateBeginInstallWithManifest3Function: #if BUILDFLAG(IS_CHROMEOS) RequestExtensionApproval(contents); return; -#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) // Shows a parental permission dialog directly bypassing the extension // install dialog view. The parental permission dialog contains a superset // of data from the extension install dialog: requested extension diff --git a/www/iridium/files/patch-chrome_browser_extensions_external__provider__impl.cc b/www/iridium/files/patch-chrome_browser_extensions_external__provider__impl.cc index e7c5b3189659..62fc5d86ff25 100644 --- a/www/iridium/files/patch-chrome_browser_extensions_external__provider__impl.cc +++ b/www/iridium/files/patch-chrome_browser_extensions_external__provider__impl.cc @@ -1,20 +1,20 @@ ---- chrome/browser/extensions/external_provider_impl.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/extensions/external_provider_impl.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/extensions/external_provider_impl.cc -@@ -827,7 +827,7 @@ void ExternalProviderImpl::CreateExternalProviders( +@@ -829,7 +829,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( -@@ -855,7 +855,7 @@ void ExternalProviderImpl::CreateExternalProviders( +@@ -857,7 +857,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/iridium/files/patch-chrome_browser_file__system__access_chrome__file__system__access__permission__context.cc b/www/iridium/files/patch-chrome_browser_file__system__access_chrome__file__system__access__permission__context.cc index fb94218366e0..24543458bb17 100644 --- a/www/iridium/files/patch-chrome_browser_file__system__access_chrome__file__system__access__permission__context.cc +++ b/www/iridium/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-09-11 13:19:19 UTC +--- chrome/browser/file_system_access/chrome_file_system_access_permission_context.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/file_system_access/chrome_file_system_access_permission_context.cc -@@ -374,7 +374,7 @@ GenerateBlockPaths(bool should_normalize_file_path) { +@@ -376,7 +376,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/iridium/files/patch-chrome_browser_first__run_first__run__internal.h b/www/iridium/files/patch-chrome_browser_first__run_first__run__internal.h index fdc0415892a7..697ea7d21156 100644 --- a/www/iridium/files/patch-chrome_browser_first__run_first__run__internal.h +++ b/www/iridium/files/patch-chrome_browser_first__run_first__run__internal.h @@ -1,11 +1,11 @@ ---- chrome/browser/first_run/first_run_internal.h.orig 2025-05-07 06:48:23 UTC +--- chrome/browser/first_run/first_run_internal.h.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/first_run/first_run_internal.h -@@ -53,7 +53,7 @@ FirstRunState DetermineFirstRunState(bool has_sentinel +@@ -72,7 +72,7 @@ FirstRunState DetermineFirstRunState(bool has_sentinel bool force_first_run, bool no_first_run); -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // For testing, forces the first run dialog to either be shown or not. If not // called, the decision to show the dialog or not will be made by Chrome based // on a number of factors (such as install type, whether it's a Chrome-branded diff --git a/www/iridium/files/patch-chrome_browser_flag__descriptions.cc b/www/iridium/files/patch-chrome_browser_flag__descriptions.cc index ae916a8b51dd..9c5e80976d76 100644 --- a/www/iridium/files/patch-chrome_browser_flag__descriptions.cc +++ b/www/iridium/files/patch-chrome_browser_flag__descriptions.cc @@ -1,182 +1,172 @@ ---- chrome/browser/flag_descriptions.cc.orig 2025-09-22 12:54:03 UTC +--- chrome/browser/flag_descriptions.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/flag_descriptions.cc -@@ -671,7 +671,7 @@ const char kAutofillEnableAllowlistForBmoCardCategoryB +@@ -696,7 +696,7 @@ const char kAutofillEnableAllowlistForBmoCardCategoryB "Autofill suggestions on the allowlisted merchant websites."; - #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ -- BUILDFLAG(IS_CHROMEOS) -+ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - const char kAutofillEnableAmountExtractionAllowlistDesktopName[] = - "Enable loading and querying the checkout amount extraction allowlist on " - "Chrome Desktop"; -@@ -689,7 +689,7 @@ const char kAutofillEnableAmountExtractionDesktopDescr - // BUILDFLAG(IS_CHROMEOS) - #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) - const char kAutofillEnableAmountExtractionTestingName[] = - "Enable amount extraction testing on Chrome desktop and Clank"; - const char kAutofillEnableAmountExtractionTestingDescription[] = -@@ -700,7 +700,7 @@ const char kAutofillEnableAmountExtractionTestingDescr + const char kAutofillEnableAmountExtractionName[] = + "Enable checkout amount extraction."; + const char kAutofillEnableAmountExtractionDescription[] = +@@ -719,7 +719,7 @@ const char kAutofillEnableAmountExtractionTestingDescr // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ -- BUILDFLAG(IS_CHROMEOS) -+ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) +- 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[] = -@@ -1193,7 +1193,7 @@ const char kDevicePostureDescription[] = +@@ -1203,7 +1203,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[] = -@@ -1339,7 +1339,7 @@ const char kContextMenuEmptySpaceDescription[] = +@@ -1349,7 +1349,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."; -@@ -1690,7 +1690,7 @@ const char kEnableIsolatedWebAppDevModeName[] = +@@ -1688,7 +1688,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[] = -@@ -3625,14 +3625,14 @@ const char kReduceTransferSizeUpdatedIPCDescription[] +@@ -3637,14 +3637,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[] = -@@ -3670,7 +3670,7 @@ const char kRobustWindowManagementDescription[] = - "experiencing predictable and reliable window behavior similar to desktop " - "browsers."; +@@ -3678,7 +3678,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."; -@@ -3920,7 +3920,7 @@ const char kDefaultSiteInstanceGroupsDescription[] = +@@ -3934,7 +3934,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 " -@@ -4193,7 +4193,7 @@ const char kTouchTextEditingRedesignName[] = "Touch Te +@@ -4210,7 +4210,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 kEnableHistorySyncOptinName[] = "History Sync Opt-in"; const char kEnableHistorySyncOptinDescription[] = "Enables the History Sync Opt-in screen on Desktop platforms. The screen " -@@ -7763,7 +7763,7 @@ const char kTetheringExperimentalFunctionalityDescript +@@ -7866,7 +7866,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 " -@@ -7990,7 +7990,7 @@ const char kEnableArmHwdrmDescription[] = "Enable HW b +@@ -8090,7 +8090,7 @@ const char kEnableArmHwdrmDescription[] = "Enable HW b // Linux ----------------------------------------------------------------------- -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - const char kPulseaudioLoopbackForCastName[] = -@@ -8028,6 +8028,18 @@ const char kWaylandUiScalingDescription[] = - "Enable experimental support for text scaling in the Wayland backend " - "backed by full UI scaling. Requires #wayland-per-window-scaling to be " - "enabled too."; -+ + "Linux System Audio Loopback for Cast (pulseaudio)"; +@@ -8122,6 +8122,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 ----------------------------------------------- -@@ -8077,7 +8089,7 @@ const char kGroupPromoPrototypeCpaDescription[] = +@@ -8171,7 +8182,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[] = -@@ -8098,7 +8110,7 @@ const char kWebBluetoothConfirmPairingSupportDescripti +@@ -8192,7 +8203,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 " -@@ -8234,7 +8246,7 @@ const char kElementCaptureDescription[] = +@@ -8328,7 +8339,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."; -@@ -8271,7 +8283,7 @@ const char kThirdPartyDisableChromeAutofillSettingsScr +@@ -8360,7 +8371,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 kThirdPartyProfileManagementName[] = - "Third party profile management"; - const char kThirdPartyProfileManagementDescription[] = -@@ -8394,7 +8406,7 @@ const char kSupervisedUserBlockInterstitialV3Name[] = + const char kGlicName[] = "Glic"; + const char kGlicDescription[] = "Enables glic"; + +@@ -8485,7 +8496,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/iridium/files/patch-chrome_browser_flag__descriptions.h b/www/iridium/files/patch-chrome_browser_flag__descriptions.h index 7ccfbf3642e1..69367f2a9741 100644 --- a/www/iridium/files/patch-chrome_browser_flag__descriptions.h +++ b/www/iridium/files/patch-chrome_browser_flag__descriptions.h @@ -1,173 +1,164 @@ ---- chrome/browser/flag_descriptions.h.orig 2025-09-22 12:54:03 UTC +--- chrome/browser/flag_descriptions.h.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/flag_descriptions.h -@@ -438,7 +438,7 @@ extern const char +@@ -451,7 +451,7 @@ extern const char kAutofillEnableAllowlistForBmoCardCategoryBenefitsDescription[]; - #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ -- BUILDFLAG(IS_CHROMEOS) -+ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - extern const char kAutofillEnableAmountExtractionAllowlistDesktopName[]; - extern const char kAutofillEnableAmountExtractionAllowlistDesktopDescription[]; - extern const char kAutofillEnableAmountExtractionDesktopName[]; -@@ -447,14 +447,14 @@ extern const char kAutofillEnableAmountExtractionDeskt - // BUILDFLAG(IS_CHROMEOS) - #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) - extern const char kAutofillEnableAmountExtractionTestingName[]; - extern const char kAutofillEnableAmountExtractionTestingDescription[]; - #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || + extern const char kAutofillEnableAmountExtractionName[]; + extern const char kAutofillEnableAmountExtractionDescription[]; + extern const char kAutofillEnableAmountExtractionAllowlistName[]; +@@ -462,7 +462,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_CHROMEOS) || BUILDFLAG(IS_BSD) +- BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) extern const char kAutofillEnableBuyNowPayLaterName[]; extern const char kAutofillEnableBuyNowPayLaterDescription[]; -@@ -717,7 +717,7 @@ extern const char kContextMenuEmptySpaceName[]; +@@ -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 kDocumentPatchingName[]; +@@ -885,7 +885,7 @@ extern const char kDocumentPatchingName[]; extern const char kDocumentPatchingDescription[]; #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[]; -@@ -1057,7 +1057,7 @@ extern const char kEnableIsolatedWebAppAllowlistDescri +@@ -1061,7 +1061,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) -@@ -2064,7 +2064,7 @@ extern const char kReduceIPAddressChangeNotificationDe +@@ -2079,7 +2079,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) || -@@ -2078,7 +2078,7 @@ extern const char kRetainOmniboxOnFocusDescription[]; - extern const char kRobustWindowManagementName[]; - extern const char kRobustWindowManagementDescription[]; +@@ -2091,7 +2091,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) -@@ -2219,7 +2219,7 @@ extern const char kDefaultSiteInstanceGroupsName[]; +@@ -2236,7 +2236,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 -@@ -2395,7 +2395,7 @@ extern const char kTouchSelectionStrategyDirection[]; +@@ -2416,7 +2416,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 kEnableHistorySyncOptinName[]; extern const char kEnableHistorySyncOptinDescription[]; -@@ -2665,7 +2665,7 @@ extern const char kReduceAcceptLanguageDescription[]; +@@ -2688,7 +2688,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) -@@ -4481,7 +4481,7 @@ extern const char kTetheringExperimentalFunctionalityD +@@ -4534,7 +4534,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) -@@ -4613,7 +4613,7 @@ extern const char kEnableArmHwdrmDescription[]; +@@ -4663,7 +4663,7 @@ extern const char kEnableArmHwdrmDescription[]; // Linux --------------------------------------------------------------------- -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - extern const char kPulseaudioLoopbackForCastName[]; -@@ -4635,6 +4635,9 @@ extern const char kWaylandSessionManagementDescription + extern const char kPulseaudioLoopbackForCastDescription[]; +@@ -4682,6 +4682,8 @@ extern const char kWaylandPerWindowScalingDescription[ + extern const char kWaylandSessionManagementName[]; + extern const char kWaylandSessionManagementDescription[]; - extern const char kWaylandUiScalingName[]; - extern const char kWaylandUiScalingDescription[]; -+ +extern const char kAudioBackendName[]; +extern const char kAudioBackendDescription[]; #endif // BUILDFLAG(IS_LINUX) // Random platform combinations ----------------------------------------------- -@@ -4649,7 +4652,7 @@ extern const char kWebBluetoothConfirmPairingSupportNa +@@ -4696,7 +4698,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) -@@ -4673,7 +4676,7 @@ extern const char kTaskManagerDesktopRefreshName[]; +@@ -4720,7 +4722,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[]; -@@ -4756,7 +4759,7 @@ extern const char kElementCaptureName[]; +@@ -4803,7 +4805,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 -@@ -4784,7 +4787,7 @@ extern const char kThirdPartyDisableChromeAutofillSett +@@ -4828,7 +4830,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 kThirdPartyProfileManagementName[]; - extern const char kThirdPartyProfileManagementDescription[]; + extern const char kGlicName[]; + extern const char kGlicDescription[]; -@@ -4860,7 +4863,7 @@ extern const char kEnableManagementPromotionBannerDesc +@@ -4908,7 +4910,7 @@ extern const char kEnableManagementPromotionBannerDesc 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) diff --git a/www/iridium/files/patch-chrome_browser_glic_widget_glic__widget.cc b/www/iridium/files/patch-chrome_browser_glic_widget_glic__widget.cc index 75c32cc74d82..954a32e6d53f 100644 --- a/www/iridium/files/patch-chrome_browser_glic_widget_glic__widget.cc +++ b/www/iridium/files/patch-chrome_browser_glic_widget_glic__widget.cc @@ -1,11 +1,11 @@ ---- chrome/browser/glic/widget/glic_widget.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/glic/widget/glic_widget.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/glic/widget/glic_widget.cc -@@ -127,7 +127,7 @@ std::unique_ptr GlicWidget::Create( +@@ -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"; -#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 diff --git a/www/iridium/files/patch-chrome_browser_global__features.cc b/www/iridium/files/patch-chrome_browser_global__features.cc index e9d49b022d4c..c175942e4a6c 100644 --- a/www/iridium/files/patch-chrome_browser_global__features.cc +++ b/www/iridium/files/patch-chrome_browser_global__features.cc @@ -1,29 +1,29 @@ ---- chrome/browser/global_features.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/global_features.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/global_features.cc @@ -24,7 +24,7 @@ - #include "chrome/browser/glic/host/glic_synthetic_trial_manager.h" // nogncheck + #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" @@ -70,7 +70,7 @@ void GlobalFeatures::ReplaceGlobalFeaturesForTesting( void GlobalFeatures::Init() { system_permissions_platform_handle_ = CreateSystemPermissionsPlatformHandle(); -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) whats_new_registry_ = CreateWhatsNewRegistry(); #endif @@ -119,7 +119,7 @@ GlobalFeatures::CreateSystemPermissionsPlatformHandle( return system_permission_settings::PlatformHandle::Create(); } -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) std::unique_ptr GlobalFeatures::CreateWhatsNewRegistry() { return whats_new::CreateWhatsNewRegistry(); diff --git a/www/iridium/files/patch-chrome_browser_headless_headless__mode__util.cc b/www/iridium/files/patch-chrome_browser_headless_headless__mode__util.cc deleted file mode 100644 index 3a9da67f5e85..000000000000 --- a/www/iridium/files/patch-chrome_browser_headless_headless__mode__util.cc +++ /dev/null @@ -1,29 +0,0 @@ ---- chrome/browser/headless/headless_mode_util.cc.orig 2025-09-11 13:19:19 UTC -+++ chrome/browser/headless/headless_mode_util.cc -@@ -10,7 +10,7 @@ - // New headless mode is available on Linux, Windows and Mac platforms. - // More platforms will be added later, so avoid function level clutter - // by providing stub implementations at the end of the file. --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) - - #include "base/base_switches.h" - #include "base/files/file_path.h" -@@ -19,7 +19,7 @@ - #include "chrome/common/chrome_switches.h" - #include "content/public/common/content_switches.h" - --#if BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - #include "ui/gl/gl_switches.h" // nogncheck - #include "ui/ozone/public/ozone_switches.h" // nogncheck - #endif // BUILDFLAG(IS_LINUX) -@@ -94,7 +94,7 @@ class HeadlessModeHandleImpl : public HeadlessModeHand - } - } - --#if BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - // Headless mode on Linux relies on ozone/headless platform. - command_line->AppendSwitchASCII(::switches::kOzonePlatform, - switches::kHeadless); diff --git a/www/iridium/files/patch-chrome_browser_metrics_chrome__browser__main__extra__parts__metrics.cc b/www/iridium/files/patch-chrome_browser_metrics_chrome__browser__main__extra__parts__metrics.cc index b3ca3ec042bd..f9368bba74a8 100644 --- a/www/iridium/files/patch-chrome_browser_metrics_chrome__browser__main__extra__parts__metrics.cc +++ b/www/iridium/files/patch-chrome_browser_metrics_chrome__browser__main__extra__parts__metrics.cc @@ -1,52 +1,52 @@ ---- chrome/browser/metrics/chrome_browser_main_extra_parts_metrics.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/metrics/chrome_browser_main_extra_parts_metrics.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/metrics/chrome_browser_main_extra_parts_metrics.cc -@@ -86,7 +86,7 @@ +@@ -82,7 +82,7 @@ #include "chrome/browser/flags/android/chrome_session_state.h" #endif // BUILDFLAG(IS_ANDROID) -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #if defined(__GLIBC__) #include #endif // defined(__GLIBC__) -@@ -111,7 +111,7 @@ +@@ -107,7 +107,7 @@ #include "chrome/installer/util/taskbar_util.h" #endif // BUILDFLAG(IS_WIN) -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "chrome/browser/metrics/pressure/pressure_metrics_reporter.h" #endif // BUILDFLAG(IS_LINUX) -@@ -120,7 +120,7 @@ +@@ -116,7 +116,7 @@ #include "components/user_manager/user_manager.h" #endif // BUILDFLAG(IS_CHROMEOS) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "components/power_metrics/system_power_monitor.h" #endif -@@ -900,7 +900,7 @@ void RecordStartupMetrics() { +@@ -897,7 +897,7 @@ void RecordStartupMetrics() { // Record whether Chrome is the default browser or not. // Disabled on Linux due to hanging browser tests, see crbug.com/1216328. -#if !BUILDFLAG(IS_LINUX) +#if !BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_BSD) shell_integration::DefaultWebClientState default_state = shell_integration::GetDefaultBrowser(); base::UmaHistogramEnumeration("DefaultBrowser.State", default_state, -@@ -1211,11 +1211,11 @@ void ChromeBrowserMainExtraPartsMetrics::PostBrowserSt +@@ -1208,11 +1208,11 @@ void ChromeBrowserMainExtraPartsMetrics::PostBrowserSt std::make_unique(); #endif // !BUILDFLAG(IS_ANDROID) -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) pressure_metrics_reporter_ = std::make_unique(); #endif // BUILDFLAG(IS_LINUX) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) base::trace_event::TraceLog::GetInstance()->AddEnabledStateObserver( power_metrics::SystemPowerMonitor::GetInstance()); #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) diff --git a/www/iridium/files/patch-chrome_browser_metrics_chrome__metrics__service__client.cc b/www/iridium/files/patch-chrome_browser_metrics_chrome__metrics__service__client.cc index 52c17dc5bd33..0281119814c1 100644 --- a/www/iridium/files/patch-chrome_browser_metrics_chrome__metrics__service__client.cc +++ b/www/iridium/files/patch-chrome_browser_metrics_chrome__metrics__service__client.cc @@ -1,115 +1,115 @@ ---- chrome/browser/metrics/chrome_metrics_service_client.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/metrics/chrome_metrics_service_client.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/metrics/chrome_metrics_service_client.cc -@@ -202,11 +202,11 @@ +@@ -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 -@@ -224,7 +224,7 @@ +@@ -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) -@@ -244,7 +244,7 @@ const int kMaxHistogramGatheringWaitDuration = 60000; +@@ -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; -@@ -554,7 +554,7 @@ void ChromeMetricsServiceClient::RegisterPrefs(PrefReg +@@ -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) -@@ -636,7 +636,7 @@ std::string ChromeMetricsServiceClient::GetVersionStri +@@ -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. -@@ -738,7 +738,7 @@ void ChromeMetricsServiceClient::Initialize() { +@@ -740,7 +740,7 @@ void ChromeMetricsServiceClient::Initialize() { std::make_unique(this, local_state); } #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) metrics::structured::Recorder::GetInstance()->SetUiTaskRunner( base::SequencedTaskRunner::GetCurrentDefault()); #endif -@@ -798,7 +798,7 @@ void ChromeMetricsServiceClient::RegisterMetricsServic +@@ -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 -@@ -886,7 +886,7 @@ void ChromeMetricsServiceClient::RegisterMetricsServic +@@ -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) -@@ -988,7 +988,7 @@ void ChromeMetricsServiceClient::RegisterMetricsServic +@@ -990,7 +990,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())); -@@ -1000,7 +1000,7 @@ void ChromeMetricsServiceClient::RegisterMetricsServic +@@ -1002,7 +1002,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) -@@ -1191,7 +1191,7 @@ bool ChromeMetricsServiceClient::RegisterForProfileEve +@@ -1202,7 +1202,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( -@@ -1540,7 +1540,7 @@ void ChromeMetricsServiceClient::CreateStructuredMetri +@@ -1551,7 +1551,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/iridium/files/patch-chrome_browser_net_profile__network__context__service.cc b/www/iridium/files/patch-chrome_browser_net_profile__network__context__service.cc index 21bf59ce6db4..7b44627a1f4a 100644 --- a/www/iridium/files/patch-chrome_browser_net_profile__network__context__service.cc +++ b/www/iridium/files/patch-chrome_browser_net_profile__network__context__service.cc @@ -1,29 +1,29 @@ ---- chrome/browser/net/profile_network_context_service.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/net/profile_network_context_service.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/net/profile_network_context_service.cc -@@ -137,7 +137,7 @@ +@@ -138,7 +138,7 @@ #include "extensions/common/constants.h" #endif -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "chrome/browser/enterprise/client_certificates/certificate_provisioning_service_factory.h" #include "chrome/browser/policy/chrome_browser_policy_connector.h" #include "components/enterprise/browser/controller/chrome_browser_cloud_management_controller.h" -@@ -286,7 +286,7 @@ void UpdateCookieSettings(Profile* profile, ContentSet +@@ -287,7 +287,7 @@ void UpdateCookieSettings(Profile* profile, ContentSet }); } -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) std::unique_ptr GetWrappedCertStore( Profile* profile, std::unique_ptr platform_store) { -@@ -1289,7 +1289,7 @@ ProfileNetworkContextService::CreateClientCertStore() +@@ -1292,7 +1292,7 @@ ProfileNetworkContextService::CreateClientCertStore() std::make_unique( base::BindRepeating(&CreateCryptoModuleBlockingPasswordDelegate, kCryptoModulePasswordClientAuth)); -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) return GetWrappedCertStore(profile_, std::move(store)); #else return store; diff --git a/www/iridium/files/patch-chrome_browser_net_system__network__context__manager.cc b/www/iridium/files/patch-chrome_browser_net_system__network__context__manager.cc index 09efe48ee065..66663e7a6e6a 100644 --- a/www/iridium/files/patch-chrome_browser_net_system__network__context__manager.cc +++ b/www/iridium/files/patch-chrome_browser_net_system__network__context__manager.cc @@ -1,138 +1,138 @@ ---- chrome/browser/net/system_network_context_manager.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/net/system_network_context_manager.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/net/system_network_context_manager.cc -@@ -142,7 +142,7 @@ enum class NetworkSandboxState { +@@ -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; -@@ -150,7 +150,7 @@ bool g_network_service_will_allow_gssapi_library_load +@@ -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) -@@ -196,7 +196,7 @@ network::mojom::HttpAuthDynamicParamsPtr CreateHttpAut +@@ -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) -@@ -211,7 +211,7 @@ network::mojom::HttpAuthDynamicParamsPtr CreateHttpAut +@@ -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) -@@ -221,7 +221,7 @@ network::mojom::HttpAuthDynamicParamsPtr CreateHttpAut +@@ -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 -@@ -269,11 +269,11 @@ NetworkSandboxState IsNetworkSandboxEnabledInternal() +@@ -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 || -@@ -289,7 +289,7 @@ NetworkSandboxState IsNetworkSandboxEnabledInternal() +@@ -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) -@@ -594,7 +594,7 @@ void SystemNetworkContextManager::DeleteInstance() { +@@ -590,7 +590,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) {} -@@ -652,7 +652,7 @@ SystemNetworkContextManager::SystemNetworkContextManag +@@ -648,7 +648,7 @@ SystemNetworkContextManager::SystemNetworkContextManag pref_change_registrar_.Add(prefs::kAllHttpAuthSchemesAllowedForOrigins, auth_pref_callback); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) pref_change_registrar_.Add(prefs::kAuthNegotiateDelegateByKdcPolicy, auth_pref_callback); #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_CHROMEOS) -@@ -666,7 +666,7 @@ SystemNetworkContextManager::SystemNetworkContextManag +@@ -662,7 +662,7 @@ SystemNetworkContextManager::SystemNetworkContextManag auth_pref_callback); #endif // BUILDFLAG(IS_ANDROID) -#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) pref_change_registrar_.Add(kGssapiDesiredPref, auth_pref_callback); #endif // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) -@@ -738,7 +738,7 @@ void SystemNetworkContextManager::RegisterPrefs(PrefRe +@@ -734,7 +734,7 @@ void SystemNetworkContextManager::RegisterPrefs(PrefRe registry->RegisterStringPref(prefs::kAuthNegotiateDelegateAllowlist, std::string()); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) registry->RegisterBooleanPref(prefs::kAuthNegotiateDelegateByKdcPolicy, false); #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_CHROMEOS) -@@ -763,11 +763,11 @@ void SystemNetworkContextManager::RegisterPrefs(PrefRe +@@ -759,11 +759,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) -@@ -821,7 +821,7 @@ void SystemNetworkContextManager::OnNetworkServiceCrea +@@ -817,7 +817,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) -@@ -1048,7 +1048,7 @@ bool SystemNetworkContextManager::IsNetworkSandboxEnab +@@ -1044,7 +1044,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/iridium/files/patch-chrome_browser_new__tab__page_new__tab__page__util.cc b/www/iridium/files/patch-chrome_browser_new__tab__page_new__tab__page__util.cc index 7e12560f3c02..0198238f068a 100644 --- a/www/iridium/files/patch-chrome_browser_new__tab__page_new__tab__page__util.cc +++ b/www/iridium/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-09-11 13:19:19 UTC +--- chrome/browser/new_tab_page/new_tab_page_util.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/new_tab_page/new_tab_page_util.cc -@@ -32,7 +32,7 @@ bool IsOsSupportedForCart() { +@@ -35,7 +35,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/iridium/files/patch-chrome_browser_ntp__tiles_chrome__most__visited__sites__factory.cc b/www/iridium/files/patch-chrome_browser_ntp__tiles_chrome__most__visited__sites__factory.cc new file mode 100644 index 000000000000..90546980de9a --- /dev/null +++ b/www/iridium/files/patch-chrome_browser_ntp__tiles_chrome__most__visited__sites__factory.cc @@ -0,0 +1,11 @@ +--- chrome/browser/ntp_tiles/chrome_most_visited_sites_factory.cc.orig 2025-10-28 14:29:43 UTC ++++ chrome/browser/ntp_tiles/chrome_most_visited_sites_factory.cc +@@ -59,7 +59,7 @@ bool ShouldCreateCustomLinksManager() { + + bool ShouldCreateEnterpriseShortcutsManager() { + #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || \ +- BUILDFLAG(IS_CHROMEOS) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + return base::FeatureList::IsEnabled(ntp_tiles::kNtpEnterpriseShortcuts); + #else + return false; diff --git a/www/iridium/files/patch-chrome_browser_password__manager_chrome__password__manager__client.cc b/www/iridium/files/patch-chrome_browser_password__manager_chrome__password__manager__client.cc index c31d38b6fe5a..a5aebf500d51 100644 --- a/www/iridium/files/patch-chrome_browser_password__manager_chrome__password__manager__client.cc +++ b/www/iridium/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-09-11 13:19:19 UTC +--- chrome/browser/password_manager/chrome_password_manager_client.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/password_manager/chrome_password_manager_client.cc -@@ -729,7 +729,7 @@ void ChromePasswordManagerClient:: +@@ -692,7 +692,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; } -@@ -1008,7 +1008,7 @@ void ChromePasswordManagerClient::NotifyUserCredential +@@ -969,7 +969,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) { -@@ -2083,7 +2083,7 @@ void ChromePasswordManagerClient::HideFillingUI() { +@@ -2032,7 +2032,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; } -@@ -2122,7 +2122,7 @@ bool ChromePasswordManagerClient::IsPasswordManagement +@@ -2071,7 +2071,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/iridium/files/patch-chrome_browser_password__manager_factories_password__reuse__manager__factory.cc b/www/iridium/files/patch-chrome_browser_password__manager_factories_password__reuse__manager__factory.cc index 76bb8908840a..2cfac4a163e6 100644 --- a/www/iridium/files/patch-chrome_browser_password__manager_factories_password__reuse__manager__factory.cc +++ b/www/iridium/files/patch-chrome_browser_password__manager_factories_password__reuse__manager__factory.cc @@ -1,11 +1,11 @@ ---- chrome/browser/password_manager/factories/password_reuse_manager_factory.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/password_manager/factories/password_reuse_manager_factory.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/password_manager/factories/password_reuse_manager_factory.cc -@@ -128,7 +128,7 @@ PasswordReuseManagerFactory::BuildServiceInstanceForBr +@@ -124,7 +124,7 @@ PasswordReuseManagerFactory::BuildServiceInstanceForBr // Prepare password hash data for reuse detection. reuse_manager->PreparePasswordHashData(GetSignInStateForMetrics(profile)); -#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 notifier = std::make_unique< password_manager::PasswordReuseManagerSigninNotifierImpl>( diff --git a/www/iridium/files/patch-chrome_browser_policy_configuration__policy__handler__list__factory.cc b/www/iridium/files/patch-chrome_browser_policy_configuration__policy__handler__list__factory.cc index 9fd83e4009d6..f4cb5f3d15df 100644 --- a/www/iridium/files/patch-chrome_browser_policy_configuration__policy__handler__list__factory.cc +++ b/www/iridium/files/patch-chrome_browser_policy_configuration__policy__handler__list__factory.cc @@ -1,206 +1,206 @@ ---- chrome/browser/policy/configuration_policy_handler_list_factory.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/policy/configuration_policy_handler_list_factory.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/policy/configuration_policy_handler_list_factory.cc -@@ -246,7 +246,7 @@ +@@ -247,7 +247,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" -@@ -583,7 +583,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = +@@ -587,7 +587,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 }, -@@ -957,7 +957,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = +@@ -958,7 +958,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 }, -@@ -969,7 +969,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = +@@ -970,7 +970,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 }, -@@ -1839,7 +1839,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = +@@ -1843,7 +1843,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 }, -@@ -1904,7 +1904,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = +@@ -1908,7 +1908,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 }, -@@ -1924,12 +1924,12 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = +@@ -1928,12 +1928,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 }, -@@ -1943,7 +1943,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = +@@ -1947,7 +1947,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 }, -@@ -1955,7 +1955,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = +@@ -1959,7 +1959,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 }, -@@ -2059,7 +2059,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = +@@ -2063,7 +2063,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 }, -@@ -2164,7 +2164,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = +@@ -2168,7 +2168,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 }, -@@ -2238,7 +2238,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = +@@ -2242,7 +2242,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 }, -@@ -2273,7 +2273,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = +@@ -2277,7 +2277,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 }, -@@ -2304,7 +2304,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = +@@ -2308,7 +2308,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}, -@@ -2327,7 +2327,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = +@@ -2331,7 +2331,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 }, -@@ -2403,7 +2403,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = +@@ -2407,7 +2407,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = policy_prefs::kBuiltInAIAPIsEnabled, base::Value::Type::BOOLEAN }, #endif // BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_FUCHSIA) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) { key::kNTPFooterManagementNoticeEnabled, prefs::kNTPFooterManagementNoticeEnabled, base::Value::Type::BOOLEAN }, -@@ -2537,7 +2537,7 @@ std::unique_ptr BuildH +@@ -2541,7 +2541,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, -@@ -2816,7 +2816,7 @@ std::unique_ptr BuildH +@@ -2822,7 +2822,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()); -@@ -2910,7 +2910,7 @@ std::unique_ptr BuildH +@@ -2916,7 +2916,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)); -@@ -3288,7 +3288,7 @@ std::unique_ptr BuildH +@@ -3298,7 +3298,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( -@@ -3296,7 +3296,7 @@ std::unique_ptr BuildH +@@ -3306,7 +3306,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)); -@@ -3349,7 +3349,7 @@ std::unique_ptr BuildH +@@ -3359,7 +3359,7 @@ std::unique_ptr BuildH std::vector gen_ai_default_policies; #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) gen_ai_default_policies.emplace_back( key::kAutofillPredictionSettings, optimization_guide::prefs:: diff --git a/www/iridium/files/patch-chrome_browser_prefs_browser__prefs.cc b/www/iridium/files/patch-chrome_browser_prefs_browser__prefs.cc index 106a7c72fc21..6141ecf83a63 100644 --- a/www/iridium/files/patch-chrome_browser_prefs_browser__prefs.cc +++ b/www/iridium/files/patch-chrome_browser_prefs_browser__prefs.cc @@ -1,67 +1,68 @@ ---- chrome/browser/prefs/browser_prefs.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/prefs/browser_prefs.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/prefs/browser_prefs.cc -@@ -326,7 +326,7 @@ +@@ -329,7 +329,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 -@@ -493,11 +493,11 @@ +@@ -495,11 +495,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 -@@ -525,7 +525,7 @@ +@@ -527,7 +527,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 -@@ -1705,7 +1705,7 @@ void RegisterLocalState(PrefRegistrySimple* registry) +@@ -1792,7 +1792,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 -@@ -1860,7 +1860,7 @@ void RegisterLocalState(PrefRegistrySimple* registry) +@@ -1944,7 +1944,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 -@@ -2231,12 +2231,12 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySync +@@ -2317,13 +2317,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/iridium/files/patch-chrome_browser_profiles_chrome__browser__main__extra__parts__profiles.cc b/www/iridium/files/patch-chrome_browser_profiles_chrome__browser__main__extra__parts__profiles.cc index 055e764bcc8a..04e2e9315aba 100644 --- a/www/iridium/files/patch-chrome_browser_profiles_chrome__browser__main__extra__parts__profiles.cc +++ b/www/iridium/files/patch-chrome_browser_profiles_chrome__browser__main__extra__parts__profiles.cc @@ -1,132 +1,150 @@ ---- chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc -@@ -375,7 +375,7 @@ +@@ -379,7 +379,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" - #include "chrome/browser/enterprise/signals/signals_aggregator_factory.h" - #endif -@@ -419,14 +419,14 @@ +@@ -425,14 +425,14 @@ #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" #include "chrome/browser/ui/tabs/saved_tab_groups/saved_tab_group_utils.h" #endif -#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) #include "chrome/browser/policy/messaging_layer/util/manual_test_heartbeat_event_factory.h" #endif -@@ -434,7 +434,7 @@ +@@ -440,7 +440,7 @@ #include "chrome/browser/history_embeddings/history_embeddings_service_factory.h" #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) #include "chrome/browser/browser_switcher/browser_switcher_service_factory.h" - #include "chrome/browser/enterprise/client_certificates/certificate_provisioning_service_factory.h" - #include "chrome/browser/enterprise/client_certificates/certificate_store_factory.h" -@@ -760,7 +760,7 @@ void ChromeBrowserMainExtraPartsProfiles:: + #include "chrome/browser/enterprise/signin/enterprise_signin_service_factory.h" + #include "chrome/browser/enterprise/signin/oidc_authentication_signin_interceptor_factory.h" +@@ -665,7 +665,7 @@ void ChromeBrowserMainExtraPartsProfiles:: + AccountInvestigatorFactory::GetInstance(); + AccountPasswordStoreFactory::GetInstance(); + AccountReconcilorFactory::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) +@@ -764,7 +764,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(); -@@ -821,13 +821,13 @@ void ChromeBrowserMainExtraPartsProfiles:: +@@ -827,13 +827,13 @@ 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(); ConsentAuditorFactory::GetInstance(); ContentIndexProviderFactory::GetInstance(); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) contextual_cueing::ContextualCueingServiceFactory::GetInstance(); #endif - CookieControlsServiceFactory::GetInstance(); -@@ -886,17 +886,17 @@ void ChromeBrowserMainExtraPartsProfiles:: + CookieSettingsFactory::GetInstance(); +@@ -885,17 +885,17 @@ void ChromeBrowserMainExtraPartsProfiles:: enterprise_connectors::ConnectorsServiceFactory::GetInstance(); enterprise_connectors::ReportingEventRouterFactory::GetInstance(); #if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_WIN) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) enterprise_connectors::DeviceTrustConnectorServiceFactory::GetInstance(); enterprise_connectors::DeviceTrustServiceFactory::GetInstance(); #endif -#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN)) && \ +#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD)) && \ BUILDFLAG(ENTERPRISE_LOCAL_CONTENT_ANALYSIS) && \ BUILDFLAG(SAFE_BROWSING_AVAILABLE) enterprise_connectors::LocalBinaryUploadServiceFactory::GetInstance(); #endif #if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_WIN) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) enterprise_idle::IdleServiceFactory::GetInstance(); enterprise_signals::SignalsAggregatorFactory::GetInstance(); #endif -@@ -905,10 +905,10 @@ void ChromeBrowserMainExtraPartsProfiles:: +@@ -904,10 +904,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) -@@ -1044,7 +1044,7 @@ void ChromeBrowserMainExtraPartsProfiles:: +@@ -1047,7 +1047,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) -@@ -1174,7 +1174,7 @@ void ChromeBrowserMainExtraPartsProfiles:: +@@ -1134,7 +1134,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(); +@@ -1179,7 +1179,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 -@@ -1217,7 +1217,7 @@ void ChromeBrowserMainExtraPartsProfiles:: +@@ -1222,7 +1222,7 @@ void ChromeBrowserMainExtraPartsProfiles:: #if !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_CHROMEOS) ProfileStatisticsFactory::GetInstance(); #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) ProfileTokenWebSigninInterceptorFactory::GetInstance(); OidcAuthenticationSigninInterceptorFactory::GetInstance(); #endif -@@ -1237,7 +1237,7 @@ void ChromeBrowserMainExtraPartsProfiles:: +@@ -1242,7 +1242,7 @@ void ChromeBrowserMainExtraPartsProfiles:: ReduceAcceptLanguageFactory::GetInstance(); RendererUpdaterFactory::GetInstance(); regional_capabilities::RegionalCapabilitiesServiceFactory::GetInstance(); -#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) reporting::ManualTestHeartbeatEventFactory::GetInstance(); #endif #if !BUILDFLAG(IS_ANDROID) diff --git a/www/iridium/files/patch-chrome_browser_profiles_profile__impl.cc b/www/iridium/files/patch-chrome_browser_profiles_profile__impl.cc index 12caa72cb195..ef34c6450e0b 100644 --- a/www/iridium/files/patch-chrome_browser_profiles_profile__impl.cc +++ b/www/iridium/files/patch-chrome_browser_profiles_profile__impl.cc @@ -1,40 +1,40 @@ ---- chrome/browser/profiles/profile_impl.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/profiles/profile_impl.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/profiles/profile_impl.cc -@@ -269,6 +269,10 @@ +@@ -268,6 +268,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; -@@ -603,7 +607,7 @@ void ProfileImpl::LoadPrefsForNormalStartup(bool async +@@ -602,7 +606,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() -@@ -886,7 +890,17 @@ void ProfileImpl::DoFinalInit(CreateMode create_mode) +@@ -876,7 +880,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/iridium/files/patch-chrome_browser_renderer__preferences__util.cc b/www/iridium/files/patch-chrome_browser_renderer__preferences__util.cc index ee990b556290..7f8aa8a17e8b 100644 --- a/www/iridium/files/patch-chrome_browser_renderer__preferences__util.cc +++ b/www/iridium/files/patch-chrome_browser_renderer__preferences__util.cc @@ -1,29 +1,29 @@ ---- chrome/browser/renderer_preferences_util.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/renderer_preferences_util.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/renderer_preferences_util.cc -@@ -40,7 +40,7 @@ - #include "ui/views/controls/textfield/textfield.h" - #endif +@@ -38,7 +38,7 @@ + #include "ui/base/ui_base_features.h" + #include "ui/native_theme/native_theme.h" -#if defined(USE_AURA) && BUILDFLAG(IS_LINUX) +#if defined(USE_AURA) && (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) #include "chrome/browser/themes/theme_service.h" #include "chrome/browser/themes/theme_service_factory.h" #include "ui/linux/linux_ui.h" -@@ -185,7 +185,7 @@ void UpdateFromSystemSettings(blink::RendererPreferenc - prefs->caret_blink_interval = views::Textfield::GetCaretBlinkInterval(); - #endif - --#if defined(USE_AURA) && BUILDFLAG(IS_LINUX) -+#if defined(USE_AURA) && (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) - auto* linux_ui_theme = ui::LinuxUiTheme::GetForProfile(profile); - if (linux_ui_theme) { - if (ThemeServiceFactory::GetForProfile(profile)->UsingSystemTheme()) { -@@ -208,7 +208,7 @@ void UpdateFromSystemSettings(blink::RendererPreferenc - #endif - +@@ -109,7 +109,7 @@ void UpdateFromSystemSettings(blink::RendererPreferenc + Profile* profile) { + const PrefService* pref_service = profile->GetPrefs(); #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || \ - BUILDFLAG(IS_WIN) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) content::UpdateFontRendererPreferencesFromSystemSettings(prefs); + #endif + prefs->focus_ring_color = BUILDFLAG(IS_MAC) ? SkColorSetRGB(0x00, 0x5F, 0xCC) +@@ -125,7 +125,7 @@ void UpdateFromSystemSettings(blink::RendererPreferenc + prefs->inactive_selection_fg_color = SK_ColorBLACK; #endif +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + if (auto* linux_ui_theme = ui::LinuxUiTheme::GetForProfile(profile)) { + if (ThemeServiceFactory::GetForProfile(profile)->UsingSystemTheme()) { + linux_ui_theme->GetFocusRingColor(&prefs->focus_ring_color); diff --git a/www/iridium/files/patch-chrome_browser_sessions_session__restore.cc b/www/iridium/files/patch-chrome_browser_sessions_session__restore.cc index d53a8e53a513..709ab14a7f9f 100644 --- a/www/iridium/files/patch-chrome_browser_sessions_session__restore.cc +++ b/www/iridium/files/patch-chrome_browser_sessions_session__restore.cc @@ -1,20 +1,20 @@ ---- chrome/browser/sessions/session_restore.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/sessions/session_restore.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/sessions/session_restore.cc -@@ -108,7 +108,7 @@ +@@ -109,7 +109,7 @@ #include "ui/wm/core/scoped_animation_disabler.h" #endif // BUILDFLAG(IS_CHROMEOS) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "chrome/browser/ui/webui/whats_new/whats_new_fetcher.h" #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) -@@ -1182,7 +1182,7 @@ class SessionRestoreImpl : public BrowserListObserver +@@ -1183,7 +1183,7 @@ class SessionRestoreImpl : public BrowserListObserver bool is_first_tab = true; for (const auto& startup_tab : startup_tabs) { const GURL& url = startup_tab.url; -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (url == whats_new::GetWebUIStartupURL()) { whats_new::StartWhatsNewFetch(browser); continue; diff --git a/www/iridium/files/patch-chrome_browser_signin_accounts__policy__manager.cc b/www/iridium/files/patch-chrome_browser_signin_accounts__policy__manager.cc deleted file mode 100644 index 021ab0f4eb1f..000000000000 --- a/www/iridium/files/patch-chrome_browser_signin_accounts__policy__manager.cc +++ /dev/null @@ -1,38 +0,0 @@ ---- chrome/browser/signin/accounts_policy_manager.cc.orig 2025-05-07 06:48:23 UTC -+++ chrome/browser/signin/accounts_policy_manager.cc -@@ -41,7 +41,7 @@ - #include "chrome/browser/ui/webui/profile_helper.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 "components/policy/core/common/features.h" - #include "components/signin/public/identity_manager/accounts_mutator.h" - #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) -@@ -209,7 +209,7 @@ void AccountsPolicyManager::Initialize() { - &AccountsPolicyManager::OnGoogleServicesUsernamePatternChanged, - weak_pointer_factory_.GetWeakPtr())); - --#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - auto* identity_manager = IdentityManagerFactory::GetForProfile(profile_); - identity_manager_observation_.Observe(identity_manager); - profile_pref_change_registrar_.Init(profile_->GetPrefs()); -@@ -224,7 +224,7 @@ void AccountsPolicyManager::Initialize() { - } - - void AccountsPolicyManager::Shutdown() { --#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - profile_pref_change_registrar_.RemoveAll(); - #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) - local_state_pref_registrar_.RemoveAll(); -@@ -332,7 +332,7 @@ void AccountsPolicyManager::OnUserConfirmedProfileDele - } - #endif // defined(TOOLKIT_VIEWS) && !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) - void AccountsPolicyManager::OnRefreshTokensLoaded() { - RemoveUnallowedAccounts(); - identity_manager_observation_.Reset(); diff --git a/www/iridium/files/patch-chrome_browser_signin_accounts__policy__manager.h b/www/iridium/files/patch-chrome_browser_signin_accounts__policy__manager.h deleted file mode 100644 index 3ed85de1cc84..000000000000 --- a/www/iridium/files/patch-chrome_browser_signin_accounts__policy__manager.h +++ /dev/null @@ -1,29 +0,0 @@ ---- chrome/browser/signin/accounts_policy_manager.h.orig 2025-05-07 06:48:23 UTC -+++ chrome/browser/signin/accounts_policy_manager.h -@@ -13,7 +13,7 @@ - #include "components/signin/public/base/signin_metrics.h" - #include "components/signin/public/identity_manager/identity_manager.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 "base/scoped_observation.h" - #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) - -@@ -64,7 +64,7 @@ class AccountsPolicyManager : public KeyedService, - } - #endif - --#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - void RemoveUnallowedAccounts(); - - // IdentityManager::Observer implementation. -@@ -85,7 +85,7 @@ class AccountsPolicyManager : public KeyedService, - bool hide_ui_for_testing_ = false; - #endif - --#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - base::ScopedObservation - identity_manager_observation_{this}; diff --git a/www/iridium/files/patch-chrome_browser_signin_chrome__signin__client.cc b/www/iridium/files/patch-chrome_browser_signin_chrome__signin__client.cc index 195f04499c9e..8d0f59acf43c 100644 --- a/www/iridium/files/patch-chrome_browser_signin_chrome__signin__client.cc +++ b/www/iridium/files/patch-chrome_browser_signin_chrome__signin__client.cc @@ -1,11 +1,11 @@ ---- chrome/browser/signin/chrome_signin_client.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/signin/chrome_signin_client.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/signin/chrome_signin_client.cc -@@ -163,7 +163,7 @@ signin_metrics::ProfileSignout kAlwaysAllowedSignoutSo +@@ -164,7 +164,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/iridium/files/patch-chrome_browser_supervised__user_supervised__user__extensions__delegate__impl.cc b/www/iridium/files/patch-chrome_browser_supervised__user_supervised__user__extensions__delegate__impl.cc index 81e9f26ed4c8..380e234bfad6 100644 --- a/www/iridium/files/patch-chrome_browser_supervised__user_supervised__user__extensions__delegate__impl.cc +++ b/www/iridium/files/patch-chrome_browser_supervised__user_supervised__user__extensions__delegate__impl.cc @@ -1,11 +1,11 @@ ---- chrome/browser/supervised_user/supervised_user_extensions_delegate_impl.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/supervised_user/supervised_user_extensions_delegate_impl.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/supervised_user/supervised_user_extensions_delegate_impl.cc -@@ -205,7 +205,7 @@ void SupervisedUserExtensionsDelegateImpl::RequestExte +@@ -194,7 +194,7 @@ void SupervisedUserExtensionsDelegateImpl::RequestExte return; } } -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) CHECK(contents.value()); content::WebContents* web_contents = contents.value().get(); // Always invoke the parent permission dialog. diff --git a/www/iridium/files/patch-chrome_browser_supervised__user_supervised__user__extensions__manager.cc b/www/iridium/files/patch-chrome_browser_supervised__user_supervised__user__extensions__manager.cc index 249a6611e52b..f85949dc6bea 100644 --- a/www/iridium/files/patch-chrome_browser_supervised__user_supervised__user__extensions__manager.cc +++ b/www/iridium/files/patch-chrome_browser_supervised__user_supervised__user__extensions__manager.cc @@ -1,20 +1,20 @@ ---- chrome/browser/supervised_user/supervised_user_extensions_manager.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/supervised_user/supervised_user_extensions_manager.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/supervised_user/supervised_user_extensions_manager.cc -@@ -350,7 +350,7 @@ void SupervisedUserExtensionsManager:: +@@ -345,7 +345,7 @@ void SupervisedUserExtensionsManager:: ActivateManagementPolicyAndUpdateRegistration() { SetActiveForSupervisedUsers(); UpdateManagementPolicyRegistration(); -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) MaybeMarkExtensionsLocallyParentApproved(); #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) } -@@ -449,7 +449,7 @@ bool SupervisedUserExtensionsManager::ShouldBlockExten +@@ -444,7 +444,7 @@ bool SupervisedUserExtensionsManager::ShouldBlockExten return false; } -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) void SupervisedUserExtensionsManager:: MaybeMarkExtensionsLocallyParentApproved() { supervised_user::LocallyParentApprovedExtensionsMigrationState diff --git a/www/iridium/files/patch-chrome_browser_supervised__user_supervised__user__extensions__manager.h b/www/iridium/files/patch-chrome_browser_supervised__user_supervised__user__extensions__manager.h index 34edc47bebfe..96a7d2bc8cec 100644 --- a/www/iridium/files/patch-chrome_browser_supervised__user_supervised__user__extensions__manager.h +++ b/www/iridium/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-09-11 13:19:19 UTC +--- chrome/browser/supervised_user/supervised_user_extensions_manager.h.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/supervised_user/supervised_user_extensions_manager.h -@@ -154,7 +154,7 @@ class SupervisedUserExtensionsManager : public Extensi +@@ -151,7 +151,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/iridium/files/patch-chrome_browser_supervised__user_supervised__user__navigation__observer.cc b/www/iridium/files/patch-chrome_browser_supervised__user_supervised__user__navigation__observer.cc index 637666638eb5..57a195a7f5af 100644 --- a/www/iridium/files/patch-chrome_browser_supervised__user_supervised__user__navigation__observer.cc +++ b/www/iridium/files/patch-chrome_browser_supervised__user_supervised__user__navigation__observer.cc @@ -1,20 +1,20 @@ ---- chrome/browser/supervised_user/supervised_user_navigation_observer.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/supervised_user/supervised_user_navigation_observer.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/supervised_user/supervised_user_navigation_observer.cc -@@ -48,7 +48,7 @@ +@@ -49,7 +49,7 @@ #include "chrome/browser/supervised_user/android/supervised_user_web_content_handler_impl.h" #elif BUILDFLAG(IS_CHROMEOS) #include "chrome/browser/supervised_user/chromeos/supervised_user_web_content_handler_impl.h" -#elif BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) +#elif BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) #include "chrome/browser/supervised_user/linux_mac_windows/supervised_user_web_content_handler_impl.h" #endif -@@ -68,7 +68,7 @@ std::unique_ptr Cr +@@ -69,7 +69,7 @@ std::unique_ptr Cr #elif BUILDFLAG(IS_ANDROID) return std::make_unique( web_contents, frame_id, navigation_id); -#elif BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) +#elif BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) return std::make_unique( web_contents, frame_id, navigation_id); #endif diff --git a/www/iridium/files/patch-chrome_browser_sync_sync__service__factory.cc b/www/iridium/files/patch-chrome_browser_sync_sync__service__factory.cc index e82e78ff7b2c..420e0556c999 100644 --- a/www/iridium/files/patch-chrome_browser_sync_sync__service__factory.cc +++ b/www/iridium/files/patch-chrome_browser_sync_sync__service__factory.cc @@ -1,38 +1,20 @@ ---- chrome/browser/sync/sync_service_factory.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/sync/sync_service_factory.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/sync/sync_service_factory.cc -@@ -115,7 +115,7 @@ - #endif // BUILDFLAG(IS_CHROMEOS) - - #if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \ -- BUILDFLAG(IS_WIN) -+ BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) - #include "chrome/browser/ui/tabs/saved_tab_groups/saved_tab_group_keyed_service.h" - #include "chrome/browser/ui/tabs/saved_tab_groups/saved_tab_group_service_factory.h" - #include "chrome/browser/ui/tabs/saved_tab_groups/saved_tab_group_utils.h" -@@ -142,7 +142,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::SavedTabGroupUtils::GetServiceForProfile(profile); + tab_groups::TabGroupSyncServiceFactory::GetForProfile(profile); CHECK(service); -@@ -405,7 +405,7 @@ std::unique_ptr BuildSyncService( +@@ -399,7 +399,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); -@@ -544,7 +544,7 @@ SyncServiceFactory::SyncServiceFactory() - DependsOn(ProfilePasswordStoreFactory::GetInstance()); - DependsOn(PowerBookmarkServiceFactory::GetInstance()); - #if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \ -- BUILDFLAG(IS_WIN) -+ BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) - DependsOn(tab_groups::SavedTabGroupServiceFactory::GetInstance()); - #elif BUILDFLAG(IS_ANDROID) - DependsOn(tab_groups::TabGroupSyncServiceFactory::GetInstance()); diff --git a/www/iridium/files/patch-chrome_browser_task__manager_sampling_task__group.cc b/www/iridium/files/patch-chrome_browser_task__manager_sampling_task__group.cc index 36bc9f085fd0..8dac021ef9fd 100644 --- a/www/iridium/files/patch-chrome_browser_task__manager_sampling_task__group.cc +++ b/www/iridium/files/patch-chrome_browser_task__manager_sampling_task__group.cc @@ -1,38 +1,29 @@ ---- chrome/browser/task_manager/sampling/task_group.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/task_manager/sampling/task_group.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/task_manager/sampling/task_group.cc -@@ -32,7 +32,7 @@ const int kBackgroundRefreshTypesMask = +@@ -33,7 +33,7 @@ const int kBackgroundRefreshTypesMask = #if BUILDFLAG(IS_WIN) REFRESH_TYPE_START_TIME | REFRESH_TYPE_CPU_TIME | #endif // BUILDFLAG(IS_WIN) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) REFRESH_TYPE_FD_COUNT | #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) REFRESH_TYPE_PRIORITY; -@@ -100,7 +100,7 @@ TaskGroup::TaskGroup( - user_peak_handles_(-1), - hard_faults_per_second_(-1), - #endif // BUILDFLAG(IS_WIN) --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) - open_fd_count_(-1), - #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) - idle_wakeups_per_second_(-1), -@@ -115,7 +115,7 @@ TaskGroup::TaskGroup( +@@ -93,7 +93,7 @@ TaskGroup::TaskGroup( weak_ptr_factory_.GetWeakPtr()), base::BindRepeating(&TaskGroup::OnIdleWakeupsRefreshDone, weak_ptr_factory_.GetWeakPtr()), -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) base::BindRepeating(&TaskGroup::OnOpenFdCountRefreshDone, weak_ptr_factory_.GetWeakPtr()), #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) -@@ -257,7 +257,7 @@ void TaskGroup::RefreshWindowsHandles() { +@@ -236,7 +236,7 @@ void TaskGroup::RefreshWindowsHandles() { #endif // BUILDFLAG(IS_WIN) } -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) void TaskGroup::OnOpenFdCountRefreshDone(int open_fd_count) { DCHECK_CURRENTLY_ON(content::BrowserThread::UI); diff --git a/www/iridium/files/patch-chrome_browser_task__manager_sampling_task__group.h b/www/iridium/files/patch-chrome_browser_task__manager_sampling_task__group.h index ce15d3781c16..066fa93d34a1 100644 --- a/www/iridium/files/patch-chrome_browser_task__manager_sampling_task__group.h +++ b/www/iridium/files/patch-chrome_browser_task__manager_sampling_task__group.h @@ -1,38 +1,38 @@ ---- chrome/browser/task_manager/sampling/task_group.h.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/task_manager/sampling/task_group.h.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/task_manager/sampling/task_group.h -@@ -40,7 +40,7 @@ inline constexpr int kUnsupportedVMRefreshFlags = +@@ -41,7 +41,7 @@ inline constexpr int kUnsupportedVMRefreshFlags = REFRESH_TYPE_WEBCACHE_STATS | REFRESH_TYPE_NETWORK_USAGE | REFRESH_TYPE_IDLE_WAKEUPS | REFRESH_TYPE_HANDLES | REFRESH_TYPE_START_TIME | REFRESH_TYPE_CPU_TIME | REFRESH_TYPE_PRIORITY | -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) REFRESH_TYPE_FD_COUNT | #endif REFRESH_TYPE_HARD_FAULTS; -@@ -136,7 +136,7 @@ class TaskGroup { +@@ -141,7 +141,7 @@ class TaskGroup { int64_t hard_faults_per_second() const { return hard_faults_per_second_; } #endif // BUILDFLAG(IS_WIN) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) int open_fd_count() const { return open_fd_count_; } void set_open_fd_count(int open_fd_count) { open_fd_count_ = open_fd_count; } #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) -@@ -151,7 +151,7 @@ class TaskGroup { +@@ -156,7 +156,7 @@ class TaskGroup { void RefreshWindowsHandles(); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) void OnOpenFdCountRefreshDone(int open_fd_count); #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) -@@ -219,7 +219,7 @@ class TaskGroup { - int64_t user_peak_handles_; - int64_t hard_faults_per_second_; +@@ -226,7 +226,7 @@ class TaskGroup { + int64_t user_peak_handles_ = -1; + int64_t hard_faults_per_second_ = -1; #endif // BUILDFLAG(IS_WIN) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) // The number of file descriptors currently open by the process. - int open_fd_count_; + int open_fd_count_ = -1; #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) diff --git a/www/iridium/files/patch-chrome_browser_task__manager_sampling_task__group__sampler.h b/www/iridium/files/patch-chrome_browser_task__manager_sampling_task__group__sampler.h index dea06ad15f06..c206aac024eb 100644 --- a/www/iridium/files/patch-chrome_browser_task__manager_sampling_task__group__sampler.h +++ b/www/iridium/files/patch-chrome_browser_task__manager_sampling_task__group__sampler.h @@ -1,38 +1,38 @@ ---- chrome/browser/task_manager/sampling/task_group_sampler.h.orig 2025-05-07 06:48:23 UTC +--- chrome/browser/task_manager/sampling/task_group_sampler.h.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/task_manager/sampling/task_group_sampler.h -@@ -31,7 +31,7 @@ class TaskGroupSampler : public base::RefCountedThread - using OnCpuRefreshCallback = base::RepeatingCallback; - using OnSwappedMemRefreshCallback = base::RepeatingCallback; +@@ -33,7 +33,7 @@ class TaskGroupSampler : public base::RefCountedThread + using OnSwappedMemRefreshCallback = + base::RepeatingCallback; using OnIdleWakeupsCallback = base::RepeatingCallback; -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) using OnOpenFdCountCallback = base::RepeatingCallback; #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) using OnProcessPriorityCallback = -@@ -43,7 +43,7 @@ class TaskGroupSampler : public base::RefCountedThread +@@ -45,7 +45,7 @@ class TaskGroupSampler : public base::RefCountedThread const OnCpuRefreshCallback& on_cpu_refresh, const OnSwappedMemRefreshCallback& on_memory_refresh, const OnIdleWakeupsCallback& on_idle_wakeups, -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) const OnOpenFdCountCallback& on_open_fd_count, #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) const OnProcessPriorityCallback& on_process_priority); -@@ -63,7 +63,7 @@ class TaskGroupSampler : public base::RefCountedThread +@@ -65,7 +65,7 @@ class TaskGroupSampler : public base::RefCountedThread double RefreshCpuUsage(); - int64_t RefreshSwappedMem(); + base::ByteCount RefreshSwappedMem(); int RefreshIdleWakeupsPerSecond(); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) int RefreshOpenFdCount(); #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) base::Process::Priority RefreshProcessPriority(); -@@ -87,7 +87,7 @@ class TaskGroupSampler : public base::RefCountedThread +@@ -89,7 +89,7 @@ class TaskGroupSampler : public base::RefCountedThread const OnCpuRefreshCallback on_cpu_refresh_callback_; const OnSwappedMemRefreshCallback on_swapped_mem_refresh_callback_; const OnIdleWakeupsCallback on_idle_wakeups_callback_; -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) const OnOpenFdCountCallback on_open_fd_count_callback_; #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) const OnProcessPriorityCallback on_process_priority_callback_; diff --git a/www/iridium/files/patch-chrome_browser_task__manager_sampling_task__manager__impl.cc b/www/iridium/files/patch-chrome_browser_task__manager_sampling_task__manager__impl.cc index 2eab12df964a..1c8005ff768f 100644 --- a/www/iridium/files/patch-chrome_browser_task__manager_sampling_task__manager__impl.cc +++ b/www/iridium/files/patch-chrome_browser_task__manager_sampling_task__manager__impl.cc @@ -1,11 +1,11 @@ ---- chrome/browser/task_manager/sampling/task_manager_impl.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/task_manager/sampling/task_manager_impl.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/task_manager/sampling/task_manager_impl.cc -@@ -226,7 +226,7 @@ void TaskManagerImpl::GetUSERHandles(TaskId task_id, +@@ -227,7 +227,7 @@ void TaskManagerImpl::GetUSERHandles(TaskId task_id, } int TaskManagerImpl::GetOpenFdCount(TaskId task_id) const { -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) return GetTaskGroupByTaskId(task_id)->open_fd_count(); #else return -1; diff --git a/www/iridium/files/patch-chrome_browser_themes_theme__service.cc b/www/iridium/files/patch-chrome_browser_themes_theme__service.cc index c2fa6baef4ec..3366095571d1 100644 --- a/www/iridium/files/patch-chrome_browser_themes_theme__service.cc +++ b/www/iridium/files/patch-chrome_browser_themes_theme__service.cc @@ -1,20 +1,20 @@ ---- chrome/browser/themes/theme_service.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/themes/theme_service.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/themes/theme_service.cc -@@ -72,7 +72,7 @@ +@@ -73,7 +73,7 @@ #include "extensions/browser/extension_registry_observer.h" #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "ui/linux/linux_ui.h" #include "ui/ozone/public/ozone_platform.h" // nogncheck #endif -@@ -331,7 +331,7 @@ CustomThemeSupplier* ThemeService::GetThemeSupplier() +@@ -332,7 +332,7 @@ CustomThemeSupplier* ThemeService::GetThemeSupplier() } bool ThemeService::ShouldUseCustomFrame() const { -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (!ui::OzonePlatform::GetInstance() ->GetPlatformRuntimeProperties() .supports_server_side_window_decorations) { diff --git a/www/iridium/files/patch-chrome_browser_themes_theme__service__factory.cc b/www/iridium/files/patch-chrome_browser_themes_theme__service__factory.cc index 6c4a682de9c9..2d551a6054e4 100644 --- a/www/iridium/files/patch-chrome_browser_themes_theme__service__factory.cc +++ b/www/iridium/files/patch-chrome_browser_themes_theme__service__factory.cc @@ -1,29 +1,29 @@ ---- chrome/browser/themes/theme_service_factory.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/themes/theme_service_factory.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/themes/theme_service_factory.cc -@@ -25,7 +25,7 @@ +@@ -26,7 +26,7 @@ #include "chrome/browser/themes/theme_helper_win.h" #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "chrome/browser/themes/theme_service_aura_linux.h" #include "ui/linux/linux_ui_factory.h" #endif -@@ -105,7 +105,7 @@ ThemeServiceFactory::~ThemeServiceFactory() = default; +@@ -106,7 +106,7 @@ ThemeServiceFactory::~ThemeServiceFactory() = default; std::unique_ptr ThemeServiceFactory::BuildServiceInstanceForBrowserContext( content::BrowserContext* profile) const { -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) using ThemeService = ThemeServiceAuraLinux; #endif -@@ -117,7 +117,7 @@ ThemeServiceFactory::BuildServiceInstanceForBrowserCon +@@ -118,7 +118,7 @@ ThemeServiceFactory::BuildServiceInstanceForBrowserCon void ThemeServiceFactory::RegisterProfilePrefs( user_prefs::PrefRegistrySyncable* registry) { -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) registry->RegisterIntegerPref(prefs::kSystemTheme, static_cast(ui::GetDefaultSystemTheme())); #endif diff --git a/www/iridium/files/patch-chrome_browser_ui_views_accelerator__table.cc b/www/iridium/files/patch-chrome_browser_ui_accelerator__table.cc similarity index 93% rename from www/iridium/files/patch-chrome_browser_ui_views_accelerator__table.cc rename to www/iridium/files/patch-chrome_browser_ui_accelerator__table.cc index 012885966a75..91c3e47b5af3 100644 --- a/www/iridium/files/patch-chrome_browser_ui_views_accelerator__table.cc +++ b/www/iridium/files/patch-chrome_browser_ui_accelerator__table.cc @@ -1,34 +1,34 @@ ---- chrome/browser/ui/views/accelerator_table.cc.orig 2025-09-11 13:19:19 UTC -+++ chrome/browser/ui/views/accelerator_table.cc +--- chrome/browser/ui/accelerator_table.cc.orig 2025-10-28 14:29:43 UTC ++++ chrome/browser/ui/accelerator_table.cc @@ -72,11 +72,11 @@ const AcceleratorMapping kAcceleratorMap[] = { {ui::VKEY_S, ui::EF_PLATFORM_ACCELERATOR, IDC_SAVE_PAGE}, {ui::VKEY_9, ui::EF_PLATFORM_ACCELERATOR, IDC_SELECT_LAST_TAB}, {ui::VKEY_NUMPAD9, ui::EF_PLATFORM_ACCELERATOR, IDC_SELECT_LAST_TAB}, -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) {ui::VKEY_9, ui::EF_ALT_DOWN, IDC_SELECT_LAST_TAB}, {ui::VKEY_NUMPAD9, ui::EF_ALT_DOWN, IDC_SELECT_LAST_TAB}, #endif // BUILDFLAG(IS_LINUX) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) {ui::VKEY_NEXT, ui::EF_CONTROL_DOWN | ui::EF_SHIFT_DOWN, IDC_MOVE_TAB_NEXT}, {ui::VKEY_PRIOR, ui::EF_CONTROL_DOWN | ui::EF_SHIFT_DOWN, IDC_MOVE_TAB_PREVIOUS}, @@ -104,7 +104,7 @@ const AcceleratorMapping kAcceleratorMap[] = { {ui::VKEY_NUMPAD7, ui::EF_PLATFORM_ACCELERATOR, IDC_SELECT_TAB_6}, {ui::VKEY_8, ui::EF_PLATFORM_ACCELERATOR, IDC_SELECT_TAB_7}, {ui::VKEY_NUMPAD8, ui::EF_PLATFORM_ACCELERATOR, IDC_SELECT_TAB_7}, -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) {ui::VKEY_1, ui::EF_ALT_DOWN, IDC_SELECT_TAB_0}, {ui::VKEY_NUMPAD1, ui::EF_ALT_DOWN, IDC_SELECT_TAB_0}, {ui::VKEY_2, ui::EF_ALT_DOWN, IDC_SELECT_TAB_1}, @@ -156,7 +156,7 @@ const AcceleratorMapping kAcceleratorMap[] = { IDC_SHOW_AVATAR_MENU}, // Platform-specific key maps. -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) {ui::VKEY_BROWSER_BACK, ui::EF_NONE, IDC_BACK}, {ui::VKEY_BROWSER_FORWARD, ui::EF_NONE, IDC_FORWARD}, {ui::VKEY_BROWSER_HOME, ui::EF_NONE, IDC_HOME}, diff --git a/www/iridium/files/patch-chrome_browser_ui_browser.h b/www/iridium/files/patch-chrome_browser_ui_browser.h index 32088a432220..f5bb84354958 100644 --- a/www/iridium/files/patch-chrome_browser_ui_browser.h +++ b/www/iridium/files/patch-chrome_browser_ui_browser.h @@ -1,11 +1,11 @@ ---- chrome/browser/ui/browser.h.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/ui/browser.h.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/ui/browser.h -@@ -279,7 +279,7 @@ class Browser : public TabStripModelObserver, +@@ -270,7 +270,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/iridium/files/patch-chrome_browser_ui_browser__command__controller.cc b/www/iridium/files/patch-chrome_browser_ui_browser__command__controller.cc index aed80b0b2dec..e2720f1745a2 100644 --- a/www/iridium/files/patch-chrome_browser_ui_browser__command__controller.cc +++ b/www/iridium/files/patch-chrome_browser_ui_browser__command__controller.cc @@ -1,74 +1,74 @@ ---- chrome/browser/ui/browser_command_controller.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/ui/browser_command_controller.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/ui/browser_command_controller.cc -@@ -129,7 +129,7 @@ +@@ -128,7 +128,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 @@ +@@ -138,7 +138,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) -@@ -366,7 +366,7 @@ bool BrowserCommandController::IsReservedCommandOrKey( +@@ -372,7 +372,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(); -@@ -654,7 +654,7 @@ bool BrowserCommandController::ExecuteCommandWithDispo +@@ -669,7 +669,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; -@@ -871,7 +871,7 @@ bool BrowserCommandController::ExecuteCommandWithDispo +@@ -891,7 +891,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( -@@ -1044,7 +1044,7 @@ bool BrowserCommandController::ExecuteCommandWithDispo +@@ -1064,7 +1064,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 -@@ -1421,7 +1421,7 @@ void BrowserCommandController::InitCommandState() { +@@ -1444,7 +1444,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); -@@ -1774,7 +1774,7 @@ void BrowserCommandController::UpdateCommandsForTabSta +@@ -1800,7 +1800,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/iridium/files/patch-chrome_browser_ui_browser__commands.cc b/www/iridium/files/patch-chrome_browser_ui_browser__commands.cc index 75f6832d4ec7..8cdb3fcd3d55 100644 --- a/www/iridium/files/patch-chrome_browser_ui_browser__commands.cc +++ b/www/iridium/files/patch-chrome_browser_ui_browser__commands.cc @@ -1,11 +1,11 @@ ---- chrome/browser/ui/browser_commands.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/ui/browser_commands.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/ui/browser_commands.cc -@@ -2214,7 +2214,7 @@ void OpenUpdateChromeDialog(Browser* browser) { +@@ -2283,7 +2283,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/iridium/files/patch-chrome_browser_ui_browser__ui__prefs.cc b/www/iridium/files/patch-chrome_browser_ui_browser__ui__prefs.cc index c6b0120dec62..7d5b6e38d207 100644 --- a/www/iridium/files/patch-chrome_browser_ui_browser__ui__prefs.cc +++ b/www/iridium/files/patch-chrome_browser_ui_browser__ui__prefs.cc @@ -1,20 +1,20 @@ ---- chrome/browser/ui/browser_ui_prefs.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/ui/browser_ui_prefs.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/ui/browser_ui_prefs.cc -@@ -84,7 +84,7 @@ void RegisterBrowserPrefs(PrefRegistrySimple* registry - registry->RegisterTimePref(prefs::kPdfInfoBarLastShown, base::Time()); - registry->RegisterIntegerPref(prefs::kPdfInfoBarTimesShown, 0); +@@ -82,7 +82,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, -@@ -208,7 +208,7 @@ void RegisterBrowserUserPrefs(user_prefs::PrefRegistry +@@ -212,7 +212,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/iridium/files/patch-chrome_browser_ui_chrome__pages.cc b/www/iridium/files/patch-chrome_browser_ui_chrome__pages.cc index bf2bd06fb8bb..27e553ac75b2 100644 --- a/www/iridium/files/patch-chrome_browser_ui_chrome__pages.cc +++ b/www/iridium/files/patch-chrome_browser_ui_chrome__pages.cc @@ -1,29 +1,29 @@ ---- chrome/browser/ui/chrome_pages.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/ui/chrome_pages.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/ui/chrome_pages.cc -@@ -85,7 +85,7 @@ +@@ -86,7 +86,7 @@ #include "components/signin/public/identity_manager/identity_manager.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/web_applications/web_app_utils.h" #endif -@@ -393,7 +393,7 @@ void ShowChromeTips(Browser* browser) { +@@ -394,7 +394,7 @@ void ShowChromeTips(Browser* browser) { ShowSingletonTab(browser, GURL(kChromeTipsURL)); } -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) void ShowChromeWhatsNew(Browser* browser) { ShowSingletonTab(browser, GURL(kChromeUIWhatsNewURL)); } -@@ -717,7 +717,7 @@ void ShowShortcutCustomizationApp(Profile* profile, +@@ -719,7 +719,7 @@ void ShowShortcutCustomizationApp(Profile* profile, } #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) void ShowWebAppSettingsImpl(Browser* browser, Profile* profile, const std::string& app_id, diff --git a/www/iridium/files/patch-chrome_browser_ui_chrome__pages.h b/www/iridium/files/patch-chrome_browser_ui_chrome__pages.h index beef2f0e0ab0..8b2f4ac9d1ad 100644 --- a/www/iridium/files/patch-chrome_browser_ui_chrome__pages.h +++ b/www/iridium/files/patch-chrome_browser_ui_chrome__pages.h @@ -1,20 +1,20 @@ ---- chrome/browser/ui/chrome_pages.h.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/ui/chrome_pages.h.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/ui/chrome_pages.h @@ -39,7 +39,7 @@ namespace signin { enum class ConsentLevel; } // namespace signin -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) namespace web_app { enum class AppSettingsPageEntryPoint; } // namespace web_app -@@ -177,7 +177,7 @@ void ShowShortcutCustomizationApp(Profile* profile, +@@ -178,7 +178,7 @@ void ShowShortcutCustomizationApp(Profile* profile, const std::string& category); #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 chrome://app-settings/ page. void ShowWebAppSettings(Browser* browser, const std::string& app_id, diff --git a/www/iridium/files/patch-chrome_browser_ui_omnibox_omnibox__pedal__implementations.cc b/www/iridium/files/patch-chrome_browser_ui_omnibox_omnibox__pedal__implementations.cc index 59c8cc7a1405..5fe9384baaf9 100644 --- a/www/iridium/files/patch-chrome_browser_ui_omnibox_omnibox__pedal__implementations.cc +++ b/www/iridium/files/patch-chrome_browser_ui_omnibox_omnibox__pedal__implementations.cc @@ -1,11 +1,11 @@ ---- chrome/browser/ui/omnibox/omnibox_pedal_implementations.cc.orig 2025-05-07 06:48:23 UTC +--- chrome/browser/ui/omnibox/omnibox_pedal_implementations.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/ui/omnibox/omnibox_pedal_implementations.cc -@@ -1985,7 +1985,7 @@ const gfx::VectorIcon& GetSharingHubVectorIcon() { +@@ -1964,7 +1964,7 @@ const gfx::VectorIcon& GetSharingHubVectorIcon() { return omnibox::kShareMacChromeRefreshIcon; #elif BUILDFLAG(IS_WIN) return omnibox::kShareWinChromeRefreshIcon; -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) return omnibox::kShareLinuxChromeRefreshIcon; #else return omnibox::kShareChromeRefreshIcon; diff --git a/www/iridium/files/patch-chrome_browser_ui_passwords_manage__passwords__ui__controller.cc b/www/iridium/files/patch-chrome_browser_ui_passwords_manage__passwords__ui__controller.cc index fb78098f6044..e1b32ddc9593 100644 --- a/www/iridium/files/patch-chrome_browser_ui_passwords_manage__passwords__ui__controller.cc +++ b/www/iridium/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-09-11 13:19:19 UTC +--- chrome/browser/ui/passwords/manage_passwords_ui_controller.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/ui/passwords/manage_passwords_ui_controller.cc @@ -113,7 +113,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; -@@ -622,7 +622,7 @@ void ManagePasswordsUIController::OnBiometricAuthBefor +@@ -624,7 +624,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/iridium/files/patch-chrome_browser_ui_prefs_prefs__tab__helper.cc b/www/iridium/files/patch-chrome_browser_ui_prefs_prefs__tab__helper.cc index 0f776335e81a..8b488712ba1c 100644 --- a/www/iridium/files/patch-chrome_browser_ui_prefs_prefs__tab__helper.cc +++ b/www/iridium/files/patch-chrome_browser_ui_prefs_prefs__tab__helper.cc @@ -1,11 +1,11 @@ ---- chrome/browser/ui/prefs/prefs_tab_helper.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/ui/prefs/prefs_tab_helper.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/ui/prefs/prefs_tab_helper.cc -@@ -68,7 +68,7 @@ +@@ -64,7 +64,7 @@ #endif #if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(ENABLE_DESKTOP_ANDROID_EXTENSIONS) + BUILDFLAG(ENABLE_DESKTOP_ANDROID_EXTENSIONS) || BUILDFLAG(IS_BSD) // If a font name in prefs default values starts with a comma, consider it's a // comma-separated font list and resolve it to the first available font. #define PREFS_FONT_LIST 1 diff --git a/www/iridium/files/patch-chrome_browser_ui_startup_infobar__utils.cc b/www/iridium/files/patch-chrome_browser_ui_startup_infobar__utils.cc new file mode 100644 index 000000000000..46cb024bf4cd --- /dev/null +++ b/www/iridium/files/patch-chrome_browser_ui_startup_infobar__utils.cc @@ -0,0 +1,11 @@ +--- chrome/browser/ui/startup/infobar_utils.cc.orig 2025-10-28 14:29:43 UTC ++++ chrome/browser/ui/startup/infobar_utils.cc +@@ -197,7 +197,7 @@ void AddInfoBarsIfNecessary(Browser* 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) + if (base::FeatureList::IsEnabled(features::kSessionRestoreInfobar)) { + // TODO(crbug.com/431828875): Instantiate and initialize the session + // restore controller. diff --git a/www/iridium/files/patch-chrome_browser_ui_startup_startup__browser__creator.cc b/www/iridium/files/patch-chrome_browser_ui_startup_startup__browser__creator.cc index af3b596a90f3..fe55f0cecb96 100644 --- a/www/iridium/files/patch-chrome_browser_ui_startup_startup__browser__creator.cc +++ b/www/iridium/files/patch-chrome_browser_ui_startup_startup__browser__creator.cc @@ -1,38 +1,38 @@ ---- chrome/browser/ui/startup/startup_browser_creator.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/ui/startup/startup_browser_creator.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/ui/startup/startup_browser_creator.cc @@ -134,7 +134,7 @@ #include "chrome/credential_provider/common/gcp_strings.h" #endif // BUILDFLAG(IS_WIN) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) #include "chrome/browser/headless/headless_mode_util.h" #include "chrome/browser/ui/startup/web_app_info_recorder_utils.h" #include "components/headless/policy/headless_mode_policy.h" -@@ -1019,7 +1019,7 @@ bool StartupBrowserCreator::ProcessCmdLineImpl( +@@ -986,7 +986,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())) { -@@ -1122,7 +1122,7 @@ bool StartupBrowserCreator::ProcessCmdLineImpl( +@@ -1089,7 +1089,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) && -@@ -1339,7 +1339,7 @@ bool StartupBrowserCreator::ProcessCmdLineImpl( +@@ -1306,7 +1306,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/iridium/files/patch-chrome_browser_ui_startup_startup__tab__provider.cc b/www/iridium/files/patch-chrome_browser_ui_startup_startup__tab__provider.cc index 8b5d4497c25a..f232d32a4b80 100644 --- a/www/iridium/files/patch-chrome_browser_ui_startup_startup__tab__provider.cc +++ b/www/iridium/files/patch-chrome_browser_ui_startup_startup__tab__provider.cc @@ -1,20 +1,20 @@ ---- chrome/browser/ui/startup/startup_tab_provider.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/ui/startup/startup_tab_provider.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/ui/startup/startup_tab_provider.cc @@ -63,7 +63,7 @@ - #include "extensions/browser/extension_registry.h" + #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) { #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/iridium/files/patch-chrome_browser_ui_tab__helpers.cc b/www/iridium/files/patch-chrome_browser_ui_tab__helpers.cc index c4f02011c1e7..61a601989c3d 100644 --- a/www/iridium/files/patch-chrome_browser_ui_tab__helpers.cc +++ b/www/iridium/files/patch-chrome_browser_ui_tab__helpers.cc @@ -1,26 +1,26 @@ ---- chrome/browser/ui/tab_helpers.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/ui/tab_helpers.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/ui/tab_helpers.cc -@@ -218,7 +218,7 @@ +@@ -220,7 +220,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" -@@ -702,12 +702,12 @@ void TabHelpers::AttachTabHelpers(WebContents* web_con +@@ -711,12 +711,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/iridium/files/patch-chrome_browser_ui_tabs_features.cc b/www/iridium/files/patch-chrome_browser_ui_tabs_features.cc index 010c498e69e1..8002d91af170 100644 --- a/www/iridium/files/patch-chrome_browser_ui_tabs_features.cc +++ b/www/iridium/files/patch-chrome_browser_ui_tabs_features.cc @@ -1,11 +1,11 @@ ---- chrome/browser/ui/tabs/features.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/ui/tabs/features.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/ui/tabs/features.cc -@@ -60,7 +60,7 @@ bool CanShowTabSearchPositionSetting() { +@@ -64,7 +64,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/iridium/files/patch-chrome_browser_ui_tabs_tab__features.cc b/www/iridium/files/patch-chrome_browser_ui_tabs_tab__features.cc index 07fd34fbe262..30d4dd90a542 100644 --- a/www/iridium/files/patch-chrome_browser_ui_tabs_tab__features.cc +++ b/www/iridium/files/patch-chrome_browser_ui_tabs_tab__features.cc @@ -1,11 +1,11 @@ ---- chrome/browser/ui/tabs/tab_features.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/ui/tabs/tab_features.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/ui/tabs/tab_features.cc -@@ -356,7 +356,7 @@ void TabFeatures::Init(TabInterface& tab, Profile* pro +@@ -366,7 +366,7 @@ void TabFeatures::Init(TabInterface& tab, Profile* pro task_manager::WebContentsTags::CreateForTabContents(tab.GetContents()); #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) inactive_window_mouse_event_controller_ = std::make_unique(); - #endif + diff --git a/www/iridium/files/patch-chrome_browser_ui_task__manager_task__manager__table__model.cc b/www/iridium/files/patch-chrome_browser_ui_task__manager_task__manager__table__model.cc index 302d5bac09dc..811718ee3057 100644 --- a/www/iridium/files/patch-chrome_browser_ui_task__manager_task__manager__table__model.cc +++ b/www/iridium/files/patch-chrome_browser_ui_task__manager_task__manager__table__model.cc @@ -1,38 +1,38 @@ ---- chrome/browser/ui/task_manager/task_manager_table_model.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/ui/task_manager/task_manager_table_model.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/ui/task_manager/task_manager_table_model.cc -@@ -376,7 +376,7 @@ TaskManagerTableModel::~TaskManagerTableModel() { +@@ -374,7 +374,7 @@ TaskManagerTableModel::~TaskManagerTableModel() { // Note: system_total_time_ is used for both since there is no functional // difference between browser & system (they are essentially the same tab). // Instead, the data is routed to the platform appropriate bucket. -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) task_manager::RecordTabSwitchEvent(CategoryRecord::kBrowser, system_total_time_); #elif BUILDFLAG(IS_CHROMEOS) -@@ -509,7 +509,7 @@ std::u16string TaskManagerTableModel::GetText(size_t r +@@ -507,7 +507,7 @@ std::u16string TaskManagerTableModel::GetText(size_t r ? stringifier_->backgrounded_string() : stringifier_->foregrounded_string(); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) case IDS_TASK_MANAGER_OPEN_FD_COUNT_COLUMN: { const int fd_count = observed_task_manager()->GetOpenFdCount(tasks_[row]); return fd_count >= 0 ? base::FormatNumber(fd_count) -@@ -667,7 +667,7 @@ int TaskManagerTableModel::CompareValues(size_t row1, +@@ -665,7 +665,7 @@ int TaskManagerTableModel::CompareValues(size_t row1, return BooleanCompare(is_proc1_bg, is_proc2_bg); } -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) case IDS_TASK_MANAGER_OPEN_FD_COUNT_COLUMN: { const int proc1_fd_count = observed_task_manager()->GetOpenFdCount(tasks_[row1]); -@@ -979,7 +979,7 @@ void TaskManagerTableModel::UpdateRefreshTypes(int col +@@ -977,7 +977,7 @@ void TaskManagerTableModel::UpdateRefreshTypes(int col type = REFRESH_TYPE_KEEPALIVE_COUNT; break; -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) case IDS_TASK_MANAGER_OPEN_FD_COUNT_COLUMN: type = REFRESH_TYPE_FD_COUNT; break; diff --git a/www/iridium/files/patch-chrome_browser_ui_ui__features.cc b/www/iridium/files/patch-chrome_browser_ui_ui__features.cc index 85fb5a48830b..931e1887bda2 100644 --- a/www/iridium/files/patch-chrome_browser_ui_ui__features.cc +++ b/www/iridium/files/patch-chrome_browser_ui_ui__features.cc @@ -1,20 +1,38 @@ ---- chrome/browser/ui/ui_features.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/ui/ui_features.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/ui/ui_features.cc @@ -38,7 +38,7 @@ BASE_FEATURE(kCloseOmniboxPopupOnInactiveAreaClick, "CloseOmniboxPopupOnInactiveAreaClick", base::FEATURE_ENABLED_BY_DEFAULT); -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Enables the feature to remove the last confirmation dialog when relaunching // to update Chrome. BASE_FEATURE(kFewerUpdateConfirmations, -@@ -398,7 +398,7 @@ BASE_FEATURE(kViewsJSAppModalDialog, +@@ -171,7 +171,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 +@@ -511,7 +511,7 @@ BASE_FEATURE(kViewsJSAppModalDialog, base::FEATURE_DISABLED_BY_DEFAULT); #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) BASE_FEATURE(kUsePortalAccentColor, "UsePortalAccentColor", base::FEATURE_ENABLED_BY_DEFAULT); +@@ -732,7 +732,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, + "SessionRestoreInfobar", + base::FEATURE_DISABLED_BY_DEFAULT); diff --git a/www/iridium/files/patch-chrome_browser_ui_ui__features.h b/www/iridium/files/patch-chrome_browser_ui_ui__features.h index 788fb1271a49..0272cb67c3cd 100644 --- a/www/iridium/files/patch-chrome_browser_ui_ui__features.h +++ b/www/iridium/files/patch-chrome_browser_ui_ui__features.h @@ -1,20 +1,29 @@ ---- chrome/browser/ui/ui_features.h.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/ui/ui_features.h.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/ui/ui_features.h @@ -28,7 +28,7 @@ BASE_DECLARE_FEATURE(kAllowEyeDropperWGCScreenCapture) BASE_DECLARE_FEATURE(kCloseOmniboxPopupOnInactiveAreaClick); -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) BASE_DECLARE_FEATURE(kFewerUpdateConfirmations); #endif -@@ -292,7 +292,7 @@ BASE_DECLARE_FEATURE(kViewsFirstRunDialog); +@@ -56,7 +56,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); + #endif +@@ -336,7 +336,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/iridium/files/patch-chrome_browser_ui_views_frame_browser__frame.cc b/www/iridium/files/patch-chrome_browser_ui_views_frame_browser__frame.cc index ba8d9a9407e9..327bb7c15d7e 100644 --- a/www/iridium/files/patch-chrome_browser_ui_views_frame_browser__frame.cc +++ b/www/iridium/files/patch-chrome_browser_ui_views_frame_browser__frame.cc @@ -1,65 +1,65 @@ ---- chrome/browser/ui/views/frame/browser_frame.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/ui/views/frame/browser_frame.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/ui/views/frame/browser_frame.cc @@ -53,7 +53,7 @@ #include "ui/aura/window.h" #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "ui/display/screen.h" #include "ui/linux/linux_ui.h" #endif @@ -68,7 +68,7 @@ namespace { constexpr double kTitlePaddingWidthFraction = 0.1; #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // These values are used for Linux/GTK. constexpr int kIconTitleSpacing = 4; constexpr int kCaptionSpacing = 5; @@ -98,7 +98,7 @@ class ThemeChangedObserver : public views::WidgetObser }; bool IsUsingLinuxSystemTheme(Profile* profile) { -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) return ThemeServiceFactory::GetForProfile(profile)->UsingSystemTheme(); #else return false; -@@ -196,7 +196,7 @@ void BrowserFrame::InitBrowserFrame() { +@@ -204,7 +204,7 @@ void BrowserFrame::InitBrowserFrame() { Init(std::move(params)); -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) SelectNativeTheme(); #else SetNativeTheme(ui::NativeTheme::GetInstanceForNativeUi()); -@@ -434,7 +434,7 @@ void BrowserFrame::OnNativeWidgetWorkspaceChanged() { +@@ -450,7 +450,7 @@ void BrowserFrame::OnNativeWidgetWorkspaceChanged() { chrome::SaveWindowWorkspace(browser_view_->browser(), GetWorkspace()); chrome::SaveWindowVisibleOnAllWorkspaces(browser_view_->browser(), IsVisibleOnAllWorkspaces()); -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // If the window was sent to a different workspace, prioritize it if // it was sent to the current workspace and deprioritize it // otherwise. This is done by MoveBrowsersInWorkspaceToFront() -@@ -633,7 +633,7 @@ void BrowserFrame::OnMenuClosed() { +@@ -649,7 +649,7 @@ void BrowserFrame::OnMenuClosed() { } void BrowserFrame::SelectNativeTheme() { -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Use the regular NativeTheme instance if running incognito mode, regardless // of system theme (gtk, qt etc). ui::NativeTheme* native_theme = ui::NativeTheme::GetInstanceForNativeUi(); -@@ -674,7 +674,7 @@ void BrowserFrame::OnTouchUiChanged() { +@@ -690,7 +690,7 @@ void BrowserFrame::OnTouchUiChanged() { bool BrowserFrame::RegenerateFrameOnThemeChange( BrowserThemeChangeType theme_change_type) { bool need_regenerate = false; -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // System and user theme changes can both change frame buttons, so the frame // always needs to be regenerated on Linux. need_regenerate = true; diff --git a/www/iridium/files/patch-chrome_browser_ui_views_frame_browser__view.cc b/www/iridium/files/patch-chrome_browser_ui_views_frame_browser__view.cc index 6e9a2d0b48fe..8e3765710da9 100644 --- a/www/iridium/files/patch-chrome_browser_ui_views_frame_browser__view.cc +++ b/www/iridium/files/patch-chrome_browser_ui_views_frame_browser__view.cc @@ -1,20 +1,20 @@ ---- chrome/browser/ui/views/frame/browser_view.cc.orig 2025-09-22 12:54:03 UTC +--- chrome/browser/ui/views/frame/browser_view.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/ui/views/frame/browser_view.cc -@@ -2476,7 +2476,7 @@ void BrowserView::ToolbarSizeChanged(bool is_animating +@@ -2463,7 +2463,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(); -@@ -5972,7 +5972,7 @@ void BrowserView::MaybeShowProfileSwitchIPH() { +@@ -5954,7 +5954,7 @@ void BrowserView::MaybeShowProfileSwitchIPH() { } void BrowserView::MaybeShowSupervisedUserProfileSignInIPH() { -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (!ShouldShowAvatarToolbarIPH()) { return; } diff --git a/www/iridium/files/patch-chrome_browser_ui_views_frame_picture__in__picture__browser__frame__view.cc b/www/iridium/files/patch-chrome_browser_ui_views_frame_picture__in__picture__browser__frame__view.cc index 3802691c8c38..d003370dc3ab 100644 --- a/www/iridium/files/patch-chrome_browser_ui_views_frame_picture__in__picture__browser__frame__view.cc +++ b/www/iridium/files/patch-chrome_browser_ui_views_frame_picture__in__picture__browser__frame__view.cc @@ -1,11 +1,11 @@ ---- chrome/browser/ui/views/frame/picture_in_picture_browser_frame_view.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/ui/views/frame/picture_in_picture_browser_frame_view.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/ui/views/frame/picture_in_picture_browser_frame_view.cc -@@ -74,7 +74,7 @@ +@@ -75,7 +75,7 @@ // Windows, Mac and CrOS do not clip child widgets to their parents, so we // don't have to worry about resizing quite as much. -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #define PLATFORM_CLIPS_CHILD_WINDOWS #endif diff --git a/www/iridium/files/patch-chrome_browser_ui_views_frame_system__menu__model__builder.cc b/www/iridium/files/patch-chrome_browser_ui_views_frame_system__menu__model__builder.cc index a4636069b8dc..41319652e8d5 100644 --- a/www/iridium/files/patch-chrome_browser_ui_views_frame_system__menu__model__builder.cc +++ b/www/iridium/files/patch-chrome_browser_ui_views_frame_system__menu__model__builder.cc @@ -1,29 +1,29 @@ ---- chrome/browser/ui/views/frame/system_menu_model_builder.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/ui/views/frame/system_menu_model_builder.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/ui/views/frame/system_menu_model_builder.cc -@@ -74,7 +74,7 @@ void SystemMenuModelBuilder::BuildMenu(ui::SimpleMenuM +@@ -80,7 +80,7 @@ void SystemMenuModelBuilder::BuildMenu(ui::SimpleMenuM void SystemMenuModelBuilder::BuildSystemMenuForBrowserWindow( ui::SimpleMenuModel* model) { -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) model->AddItemWithStringId(IDC_MINIMIZE_WINDOW, IDS_MINIMIZE_WINDOW_MENU); model->AddItemWithStringId(IDC_MAXIMIZE_WINDOW, IDS_MAXIMIZE_WINDOW_MENU); model->AddItemWithStringId(IDC_RESTORE_WINDOW, IDS_RESTORE_WINDOW_MENU); -@@ -100,7 +100,7 @@ void SystemMenuModelBuilder::BuildSystemMenuForBrowser +@@ -123,7 +123,7 @@ void SystemMenuModelBuilder::BuildSystemMenuForBrowser model->AddSeparator(ui::NORMAL_SEPARATOR); model->AddItemWithStringId(IDC_TASK_MANAGER_CONTEXT_MENU, IDS_TASK_MANAGER); } -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) model->AddSeparator(ui::NORMAL_SEPARATOR); bool supports_server_side_decorations = true; #if BUILDFLAG(IS_OZONE) && !BUILDFLAG(IS_CHROMEOS) -@@ -174,7 +174,7 @@ void SystemMenuModelBuilder::BuildSystemMenuForAppOrPo +@@ -197,7 +197,7 @@ void SystemMenuModelBuilder::BuildSystemMenuForAppOrPo model->AddSeparator(ui::NORMAL_SEPARATOR); model->AddItemWithStringId(IDC_TASK_MANAGER, IDS_TASK_MANAGER); } -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) model->AddSeparator(ui::NORMAL_SEPARATOR); model->AddItemWithStringId(IDC_CLOSE_WINDOW, IDS_CLOSE); #endif diff --git a/www/iridium/files/patch-chrome_browser_ui_views_frame_tab__strip__region__view.cc b/www/iridium/files/patch-chrome_browser_ui_views_frame_tab__strip__region__view.cc index 6df141af0216..fb9e959bb0e5 100644 --- a/www/iridium/files/patch-chrome_browser_ui_views_frame_tab__strip__region__view.cc +++ b/www/iridium/files/patch-chrome_browser_ui_views_frame_tab__strip__region__view.cc @@ -1,11 +1,11 @@ ---- chrome/browser/ui/views/frame/tab_strip_region_view.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/ui/views/frame/tab_strip_region_view.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/ui/views/frame/tab_strip_region_view.cc -@@ -222,7 +222,7 @@ TabStripRegionView::TabStripRegionView(std::unique_ptr +@@ -304,7 +304,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/iridium/files/patch-chrome_browser_ui_views_omnibox_omnibox__view__views.cc b/www/iridium/files/patch-chrome_browser_ui_views_omnibox_omnibox__view__views.cc index 44d01ce5c526..b87d75615ff0 100644 --- a/www/iridium/files/patch-chrome_browser_ui_views_omnibox_omnibox__view__views.cc +++ b/www/iridium/files/patch-chrome_browser_ui_views_omnibox_omnibox__view__views.cc @@ -1,11 +1,11 @@ ---- chrome/browser/ui/views/omnibox/omnibox_view_views.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/ui/views/omnibox/omnibox_view_views.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/ui/views/omnibox/omnibox_view_views.cc -@@ -2320,7 +2320,7 @@ void OmniboxViewViews::MaybeAddSendTabToSelfItem( +@@ -2335,7 +2335,7 @@ void OmniboxViewViews::MaybeAddSendTabToSelfItem( } void OmniboxViewViews::OnPopupOpened() { -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // It's not great for promos to overlap the omnibox if the user opens the // drop-down after showing the promo. This especially causes issues on Mac and // Linux due to z-order/rendering issues, see crbug.com/1225046 and diff --git a/www/iridium/files/patch-chrome_browser_ui_views_profiles_profile__menu__coordinator.cc b/www/iridium/files/patch-chrome_browser_ui_views_profiles_profile__menu__coordinator.cc index 89795a1eb02d..508ac7d0c3b9 100644 --- a/www/iridium/files/patch-chrome_browser_ui_views_profiles_profile__menu__coordinator.cc +++ b/www/iridium/files/patch-chrome_browser_ui_views_profiles_profile__menu__coordinator.cc @@ -1,11 +1,11 @@ ---- chrome/browser/ui/views/profiles/profile_menu_coordinator.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/ui/views/profiles/profile_menu_coordinator.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/ui/views/profiles/profile_menu_coordinator.cc -@@ -55,7 +55,7 @@ void ProfileMenuCoordinator::Show( +@@ -54,7 +54,7 @@ void ProfileMenuCoordinator::Show( ->NotifyFeaturePromoFeatureUsed( feature_engagement::kIPHProfileSwitchFeature, FeaturePromoFeatureUsedAction::kClosePromoIfPresent); -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) BrowserUserEducationInterface::From(GetBrowser()) ->NotifyFeaturePromoFeatureUsed( feature_engagement::kIPHSupervisedUserProfileSigninFeature, diff --git a/www/iridium/files/patch-chrome_browser_ui_views_profiles_profile__menu__view.cc b/www/iridium/files/patch-chrome_browser_ui_views_profiles_profile__menu__view.cc index cd850ed37116..8c99b0cbf9b3 100644 --- a/www/iridium/files/patch-chrome_browser_ui_views_profiles_profile__menu__view.cc +++ b/www/iridium/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-09-11 13:19:19 UTC +--- chrome/browser/ui/views/profiles/profile_menu_view.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/ui/views/profiles/profile_menu_view.cc -@@ -102,7 +102,7 @@ +@@ -103,7 +103,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 -@@ -585,7 +585,7 @@ void ProfileMenuView::SetMenuTitleForAccessibility() { +@@ -557,7 +557,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/iridium/files/patch-chrome_browser_ui_views_profiles_signin__view__controller__delegate__views.cc b/www/iridium/files/patch-chrome_browser_ui_views_profiles_signin__view__controller__delegate__views.cc index 1aa1eba500a8..fd243a22b677 100644 --- a/www/iridium/files/patch-chrome_browser_ui_views_profiles_signin__view__controller__delegate__views.cc +++ b/www/iridium/files/patch-chrome_browser_ui_views_profiles_signin__view__controller__delegate__views.cc @@ -1,73 +1,73 @@ ---- chrome/browser/ui/views/profiles/signin_view_controller_delegate_views.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/ui/views/profiles/signin_view_controller_delegate_views.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/ui/views/profiles/signin_view_controller_delegate_views.cc @@ -63,14 +63,14 @@ #include "chrome/browser/ui/webui/signin/signout_confirmation/signout_confirmation_ui.h" #endif // BUILDFLAG(ENABLE_DICE_SUPPORT) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) #include "chrome/browser/ui/webui/signin/history_sync_optin/history_sync_optin_ui.h" #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) namespace { const int kModalDialogWidth = 448; -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) const int kManagedUserNoticeConfirmationDialogWidth = 780; const int kManagedUserNoticeConfirmationDialogHeight = 560; #endif @@ -137,7 +137,7 @@ SigninViewControllerDelegateViews::CreateSyncConfirmat kSyncConfirmationDialogWidth, InitializeSigninWebDialogUI(true)); } -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) std::unique_ptr SigninViewControllerDelegateViews::CreateHistorySyncOptInWebView( Browser* browser, -@@ -227,7 +227,7 @@ SigninViewControllerDelegateViews::CreateSignoutConfir +@@ -228,7 +228,7 @@ SigninViewControllerDelegateViews::CreateSignoutConfir } #endif // BUILDFLAG(ENABLE_DICE_SUPPORT) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // static std::unique_ptr SigninViewControllerDelegateViews::CreateManagedUserNoticeConfirmationWebView( -@@ -402,7 +402,7 @@ SigninViewControllerDelegateViews::SigninViewControlle +@@ -404,7 +404,7 @@ SigninViewControllerDelegateViews::SigninViewControlle SetButtons(static_cast(ui::mojom::DialogButton::kNone)); -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // On the local profile creation dialog, cancelling the dialog (for instance // through the VKEY_ESCAPE accelerator) should delete the profile. if (delete_profile_on_cancel) { -@@ -494,7 +494,7 @@ void SigninViewControllerDelegateViews::DisplayModal() +@@ -496,7 +496,7 @@ void SigninViewControllerDelegateViews::DisplayModal() content_view_->RequestFocus(); } -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) void SigninViewControllerDelegateViews::DeleteProfileOnCancel() { ProfileAttributesEntry* entry = g_browser_process->profile_manager() -@@ -534,7 +534,7 @@ SigninViewControllerDelegate::CreateSyncConfirmationDe +@@ -536,7 +536,7 @@ SigninViewControllerDelegate::CreateSyncConfirmationDe /*animate_on_resize=*/true); } -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // static SigninViewControllerDelegate* SigninViewControllerDelegate::CreateSyncHistoryOptInDelegate( -@@ -591,7 +591,7 @@ SigninViewControllerDelegate::CreateSignoutConfirmatio +@@ -593,7 +593,7 @@ SigninViewControllerDelegate::CreateSignoutConfirmatio } #endif // BUILDFLAG(ENABLE_DICE_SUPPORT) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // static SigninViewControllerDelegate* SigninViewControllerDelegate::CreateManagedUserNoticeDelegate( diff --git a/www/iridium/files/patch-chrome_browser_ui_views_tabs_dragging_tab__drag__controller.cc b/www/iridium/files/patch-chrome_browser_ui_views_tabs_dragging_tab__drag__controller.cc index 5920bb28fb35..963fb071ee67 100644 --- a/www/iridium/files/patch-chrome_browser_ui_views_tabs_dragging_tab__drag__controller.cc +++ b/www/iridium/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-09-11 13:19:19 UTC +--- chrome/browser/ui/views/tabs/dragging/tab_drag_controller.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/ui/views/tabs/dragging/tab_drag_controller.cc -@@ -194,7 +194,7 @@ bool IsWindowDragUsingSystemDragDropAllowed() { +@@ -179,7 +179,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(); -@@ -406,7 +406,7 @@ TabDragController::Liveness TabDragController::Init( +@@ -391,7 +391,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_ = -@@ -980,7 +980,7 @@ TabDragController::Liveness TabDragController::DragBro +@@ -982,7 +982,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. -@@ -2132,7 +2132,7 @@ void TabDragController::CompleteDrag() { +@@ -2135,7 +2135,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 -@@ -2549,7 +2549,7 @@ TabDragController::Liveness TabDragController::GetLoca +@@ -2551,7 +2551,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/iridium/files/patch-chrome_browser_ui_views_tabs_tab.cc b/www/iridium/files/patch-chrome_browser_ui_views_tabs_tab.cc index 9d9ea2d30fcf..eceb16b534f5 100644 --- a/www/iridium/files/patch-chrome_browser_ui_views_tabs_tab.cc +++ b/www/iridium/files/patch-chrome_browser_ui_views_tabs_tab.cc @@ -1,11 +1,11 @@ ---- chrome/browser/ui/views/tabs/tab.cc.orig 2025-09-22 12:54:03 UTC +--- chrome/browser/ui/views/tabs/tab.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/ui/views/tabs/tab.cc -@@ -677,7 +677,7 @@ void Tab::MaybeUpdateHoverStatus(const ui::MouseEvent& +@@ -678,7 +678,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/iridium/files/patch-chrome_browser_ui_views_tabs_tab__hover__card__bubble__view.cc b/www/iridium/files/patch-chrome_browser_ui_views_tabs_tab__hover__card__bubble__view.cc index 28ba982b6e47..88b9e21e2633 100644 --- a/www/iridium/files/patch-chrome_browser_ui_views_tabs_tab__hover__card__bubble__view.cc +++ b/www/iridium/files/patch-chrome_browser_ui_views_tabs_tab__hover__card__bubble__view.cc @@ -1,11 +1,11 @@ ---- chrome/browser/ui/views/tabs/tab_hover_card_bubble_view.cc.orig 2025-05-07 06:48:23 UTC +--- chrome/browser/ui/views/tabs/tab_hover_card_bubble_view.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/ui/views/tabs/tab_hover_card_bubble_view.cc -@@ -380,7 +380,7 @@ TabHoverCardBubbleView::TabHoverCardBubbleView(Tab* ta +@@ -381,7 +381,7 @@ TabHoverCardBubbleView::TabHoverCardBubbleView(Tab* ta // not become active. Setting this to false creates the need to explicitly // hide the hovercard on press, touch, and keyboard events. SetCanActivate(false); -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) set_accept_events(false); #endif diff --git a/www/iridium/files/patch-chrome_browser_ui_views_tabs_tab__style__views.cc b/www/iridium/files/patch-chrome_browser_ui_views_tabs_tab__style__views.cc index 84b6bc5b94c0..61aca3d55d2f 100644 --- a/www/iridium/files/patch-chrome_browser_ui_views_tabs_tab__style__views.cc +++ b/www/iridium/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-09-11 13:19:19 UTC +--- chrome/browser/ui/views/tabs/tab_style_views.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/ui/views/tabs/tab_style_views.cc -@@ -575,7 +575,7 @@ float TabStyleViewsImpl::GetCurrentActiveOpacity() con +@@ -557,7 +557,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/iridium/files/patch-chrome_browser_ui_views_user__education_browser__user__education__service.cc b/www/iridium/files/patch-chrome_browser_ui_views_user__education_browser__user__education__service.cc index f0a6c017a46e..84e61b56c2b2 100644 --- a/www/iridium/files/patch-chrome_browser_ui_views_user__education_browser__user__education__service.cc +++ b/www/iridium/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-09-11 13:19:19 UTC +--- chrome/browser/ui/views/user_education/browser_user_education_service.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/ui/views/user_education/browser_user_education_service.cc -@@ -1090,7 +1090,7 @@ void MaybeRegisterChromeFeaturePromos( +@@ -1125,7 +1125,7 @@ void MaybeRegisterChromeFeaturePromos( "Triggered when a shared tab becomes the active tab."))); } -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) // kIPHSupervisedUserProfileSigninFeature registry.RegisterFeature(std::move( FeaturePromoSpecification::CreateForCustomAction( -@@ -1337,7 +1337,7 @@ void MaybeRegisterChromeFeaturePromos( +@@ -1372,7 +1372,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/iridium/files/patch-chrome_browser_ui_views_web__apps_web__app__integration__test__driver.cc b/www/iridium/files/patch-chrome_browser_ui_views_web__apps_web__app__integration__test__driver.cc index 2741e0b6b4d6..29fd8ba89ea3 100644 --- a/www/iridium/files/patch-chrome_browser_ui_views_web__apps_web__app__integration__test__driver.cc +++ b/www/iridium/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-09-11 13:19:19 UTC +--- chrome/browser/ui/views/web_apps/web_app_integration_test_driver.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/ui/views/web_apps/web_app_integration_test_driver.cc -@@ -516,7 +516,7 @@ std::string GetFileExtension(FileExtension file_extens +@@ -515,7 +515,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; -@@ -2076,7 +2076,7 @@ void WebAppIntegrationTestDriver::DeletePlatformShortc +@@ -2088,7 +2088,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( -@@ -3394,7 +3394,7 @@ void WebAppIntegrationTestDriver::CheckRunOnOsLoginEna +@@ -3411,7 +3411,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 -@@ -3409,7 +3409,7 @@ void WebAppIntegrationTestDriver::CheckRunOnOsLoginDis +@@ -3426,7 +3426,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 -@@ -3419,7 +3419,7 @@ void WebAppIntegrationTestDriver::CheckRunOnOsLoginDis +@@ -3436,7 +3436,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; } -@@ -3435,7 +3435,7 @@ void WebAppIntegrationTestDriver::CheckSiteHandlesFile +@@ -3452,7 +3452,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; } -@@ -4260,7 +4260,7 @@ base::FilePath WebAppIntegrationTestDriver::GetShortcu +@@ -4277,7 +4277,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 -@@ -4460,7 +4460,7 @@ bool WebAppIntegrationTestDriver::IsShortcutAndIconCre +@@ -4477,7 +4477,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); -@@ -4504,7 +4504,7 @@ bool WebAppIntegrationTestDriver::DoIconColorsMatch(Pr +@@ -4521,7 +4521,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/iridium/files/patch-chrome_browser_ui_web__applications_web__app__dialogs.h b/www/iridium/files/patch-chrome_browser_ui_web__applications_web__app__dialogs.h index 0c278e46fbc6..57050acc2e87 100644 --- a/www/iridium/files/patch-chrome_browser_ui_web__applications_web__app__dialogs.h +++ b/www/iridium/files/patch-chrome_browser_ui_web__applications_web__app__dialogs.h @@ -1,11 +1,11 @@ ---- chrome/browser/ui/web_applications/web_app_dialogs.h.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/ui/web_applications/web_app_dialogs.h.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/ui/web_applications/web_app_dialogs.h @@ -24,7 +24,7 @@ - #include "ui/gfx/native_widget_types.h" + #include "ui/gfx/native_window_types.h" static_assert(BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || - BUILDFLAG(IS_CHROMEOS)); + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD)); class GURL; class Profile; diff --git a/www/iridium/files/patch-chrome_browser_ui_web__applications_web__app__ui__manager__impl.cc b/www/iridium/files/patch-chrome_browser_ui_web__applications_web__app__ui__manager__impl.cc index 4e5d8ad3f779..2fc2085a1131 100644 --- a/www/iridium/files/patch-chrome_browser_ui_web__applications_web__app__ui__manager__impl.cc +++ b/www/iridium/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-09-11 13:19:19 UTC +--- chrome/browser/ui/web_applications/web_app_ui_manager_impl.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/ui/web_applications/web_app_ui_manager_impl.cc -@@ -564,7 +564,7 @@ void WebAppUiManagerImpl::MaybeShowIPHPromoForAppsLaun +@@ -574,7 +574,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); -@@ -793,7 +793,7 @@ void WebAppUiManagerImpl::ClearWebAppSiteDataIfNeeded( +@@ -803,7 +803,7 @@ void WebAppUiManagerImpl::ClearWebAppSiteDataIfNeeded( } } -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) const base::Feature& GetPromoFeatureEngagementFromBrowser( const Browser* browser) { diff --git a/www/iridium/files/patch-chrome_browser_ui_webui__browser_webui__browser__window.cc b/www/iridium/files/patch-chrome_browser_ui_webui__browser_webui__browser__window.cc index 74e96bfe80f4..2389ca733ef3 100644 --- a/www/iridium/files/patch-chrome_browser_ui_webui__browser_webui__browser__window.cc +++ b/www/iridium/files/patch-chrome_browser_ui_webui__browser_webui__browser__window.cc @@ -1,11 +1,11 @@ ---- chrome/browser/ui/webui_browser/webui_browser_window.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/ui/webui_browser/webui_browser_window.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/ui/webui_browser/webui_browser_window.cc -@@ -22,7 +22,7 @@ namespace { +@@ -42,7 +42,7 @@ const char* const kWebUIBrowserWindowKey = "__WEBUI_BR // Copied from chrome/browser/ui/views/frame/browser_frame.cc. bool IsUsingLinuxSystemTheme(Profile* profile) { -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) return ThemeServiceFactory::GetForProfile(profile)->UsingSystemTheme(); #else return false; diff --git a/www/iridium/files/patch-chrome_browser_ui_webui_certificate__manager_certificate__manager__handler.cc b/www/iridium/files/patch-chrome_browser_ui_webui_certificate__manager_certificate__manager__handler.cc index f6a3f407f517..69935fae3230 100644 --- a/www/iridium/files/patch-chrome_browser_ui_webui_certificate__manager_certificate__manager__handler.cc +++ b/www/iridium/files/patch-chrome_browser_ui_webui_certificate__manager_certificate__manager__handler.cc @@ -1,11 +1,11 @@ ---- chrome/browser/ui/webui/certificate_manager/certificate_manager_handler.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/ui/webui/certificate_manager/certificate_manager_handler.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/ui/webui/certificate_manager/certificate_manager_handler.cc -@@ -219,7 +219,7 @@ CertificateManagerPageHandler::GetCertSource( +@@ -217,7 +217,7 @@ CertificateManagerPageHandler::GetCertSource( CERTIFICATE_TRUST_TYPE_DISTRUSTED, profile_, &remote_client_); break; -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) case certificate_manager::mojom::CertificateSource:: kProvisionedClientCert: source_ptr = CreateProvisionedClientCertSource(profile_); diff --git a/www/iridium/files/patch-chrome_browser_ui_webui_chrome__web__ui__configs.cc b/www/iridium/files/patch-chrome_browser_ui_webui_chrome__web__ui__configs.cc index a8cf1591af13..8daf50047859 100644 --- a/www/iridium/files/patch-chrome_browser_ui_webui_chrome__web__ui__configs.cc +++ b/www/iridium/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-09-11 13:19:19 UTC +--- chrome/browser/ui/webui/chrome_web_ui_configs.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/ui/webui/chrome_web_ui_configs.cc -@@ -152,7 +152,7 @@ +@@ -153,7 +153,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" -@@ -160,13 +160,13 @@ +@@ -161,13 +161,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) -@@ -194,7 +194,7 @@ +@@ -195,7 +195,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) -@@ -347,7 +347,7 @@ void RegisterChromeWebUIConfigs() { +@@ -349,7 +349,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) -@@ -377,7 +377,7 @@ void RegisterChromeWebUIConfigs() { +@@ -379,7 +379,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()); -@@ -386,13 +386,13 @@ void RegisterChromeWebUIConfigs() { +@@ -388,13 +388,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/iridium/files/patch-chrome_browser_ui_webui_connectors__internals_connectors__internals__page__handler.cc b/www/iridium/files/patch-chrome_browser_ui_webui_connectors__internals_connectors__internals__page__handler.cc index 291139833741..4841dec31320 100644 --- a/www/iridium/files/patch-chrome_browser_ui_webui_connectors__internals_connectors__internals__page__handler.cc +++ b/www/iridium/files/patch-chrome_browser_ui_webui_connectors__internals_connectors__internals__page__handler.cc @@ -1,20 +1,20 @@ ---- chrome/browser/ui/webui/connectors_internals/connectors_internals_page_handler.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/ui/webui/connectors_internals/connectors_internals_page_handler.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/ui/webui/connectors_internals/connectors_internals_page_handler.cc @@ -85,7 +85,7 @@ connectors_internals::mojom::ClientIdentityPtr GetIden #endif // BUILDFLAG(ENTERPRISE_CLIENT_CERTIFICATES) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_ANDROID) + BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) std::string GetStringFromTimestamp(base::Time timestamp) { return (timestamp == base::Time()) ? std::string() : base::UnlocalizedTimeFormatWithPattern( -@@ -202,7 +202,7 @@ void ConnectorsInternalsPageHandler::GetClientCertific +@@ -200,7 +200,7 @@ void ConnectorsInternalsPageHandler::GetClientCertific void ConnectorsInternalsPageHandler::GetSignalsReportingState( GetSignalsReportingStateCallback callback) { #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_ANDROID) + BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) auto* profile_prefs = profile_->GetPrefs(); std::string last_upload_attempt_time_string = diff --git a/www/iridium/files/patch-chrome_browser_ui_webui_connectors__internals_device__trust__utils.cc b/www/iridium/files/patch-chrome_browser_ui_webui_connectors__internals_device__trust__utils.cc index 89db73b3f093..36247091fd3b 100644 --- a/www/iridium/files/patch-chrome_browser_ui_webui_connectors__internals_device__trust__utils.cc +++ b/www/iridium/files/patch-chrome_browser_ui_webui_connectors__internals_device__trust__utils.cc @@ -1,29 +1,29 @@ ---- chrome/browser/ui/webui/connectors_internals/device_trust_utils.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/ui/webui/connectors_internals/device_trust_utils.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/ui/webui/connectors_internals/device_trust_utils.cc -@@ -7,7 +7,7 @@ - #include "build/build_config.h" +@@ -8,7 +8,7 @@ #include "components/enterprise/buildflags/buildflags.h" --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) + #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || \ +- BUILDFLAG(IS_ANDROID) ++ BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) #include "base/base64url.h" #include "chrome/browser/browser_process.h" #include "chrome/browser/policy/chrome_browser_policy_connector.h" -@@ -39,7 +39,7 @@ namespace enterprise_connectors::utils { - +@@ -42,7 +42,7 @@ namespace enterprise_connectors::utils { namespace { --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) + #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || \ +- BUILDFLAG(IS_ANDROID) ++ BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) connectors_internals::mojom::KeyTrustLevel ParseTrustLevel( BPKUR::KeyTrustLevel trust_level) { -@@ -176,7 +176,7 @@ connectors_internals::mojom::CertificateMetadataPtr Co - } // namespace +@@ -183,7 +183,7 @@ connectors_internals::mojom::CertificateMetadataPtr Co connectors_internals::mojom::KeyInfoPtr GetKeyInfo() { --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) + #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || \ +- BUILDFLAG(IS_ANDROID) ++ BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) auto* key_manager = g_browser_process->browser_policy_connector() ->chrome_browser_cloud_management_controller() ->GetDeviceTrustKeyManager(); diff --git a/www/iridium/files/patch-chrome_browser_ui_webui_management_management__ui__handler.cc b/www/iridium/files/patch-chrome_browser_ui_webui_management_management__ui__handler.cc index 344d1816e4c0..d70f03914a2e 100644 --- a/www/iridium/files/patch-chrome_browser_ui_webui_management_management__ui__handler.cc +++ b/www/iridium/files/patch-chrome_browser_ui_webui_management_management__ui__handler.cc @@ -1,38 +1,38 @@ ---- chrome/browser/ui/webui/management/management_ui_handler.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/ui/webui/management/management_ui_handler.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/ui/webui/management/management_ui_handler.cc -@@ -68,7 +68,7 @@ +@@ -70,7 +70,7 @@ #include "ui/base/l10n/l10n_util.h" #include "ui/base/webui/web_ui_util.h" -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "chrome/browser/enterprise/signals/user_permission_service_factory.h" #include "components/device_signals/core/browser/user_permission_service.h" // nogncheck #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) -@@ -381,7 +381,7 @@ void ManagementUIHandler::AddReportingInfo(base::Value +@@ -383,7 +383,7 @@ void ManagementUIHandler::AddReportingInfo(base::Value report_sources->Append(std::move(data)); } -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) auto device_signal_data = GetDeviceSignalGrantedMessage(); if (!device_signal_data.empty()) { report_sources->Append(std::move(device_signal_data)); -@@ -403,7 +403,7 @@ void ManagementUIHandler::AddReportingInfo(base::Value +@@ -405,7 +405,7 @@ void ManagementUIHandler::AddReportingInfo(base::Value report_sources->Append(std::move(data)); } -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) auto device_signal_data = GetDeviceSignalGrantedMessage(); if (!device_signal_data.empty()) { report_sources->Append(std::move(device_signal_data)); -@@ -589,7 +589,7 @@ policy::PolicyService* ManagementUIHandler::GetPolicyS +@@ -595,7 +595,7 @@ policy::PolicyService* ManagementUIHandler::GetPolicyS ->policy_service(); } -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) device_signals::UserPermissionService* ManagementUIHandler::GetUserPermissionService() { return enterprise_signals::UserPermissionServiceFactory::GetForProfile( diff --git a/www/iridium/files/patch-chrome_browser_ui_webui_searchbox_searchbox__handler.cc b/www/iridium/files/patch-chrome_browser_ui_webui_searchbox_searchbox__handler.cc index 0f3aa0104299..9b6a696930c2 100644 --- a/www/iridium/files/patch-chrome_browser_ui_webui_searchbox_searchbox__handler.cc +++ b/www/iridium/files/patch-chrome_browser_ui_webui_searchbox_searchbox__handler.cc @@ -1,29 +1,29 @@ ---- chrome/browser/ui/webui/searchbox/searchbox_handler.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/ui/webui/searchbox/searchbox_handler.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/ui/webui/searchbox/searchbox_handler.cc -@@ -128,7 +128,7 @@ const char* kMacShareIconResourceName = +@@ -135,7 +135,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 -@@ -188,7 +188,7 @@ static void DefineChromeRefreshRealboxIcons() { +@@ -195,7 +195,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 -@@ -656,7 +656,7 @@ std::string SearchboxHandler::ActionVectorIconToResour +@@ -706,7 +706,7 @@ std::string SearchboxHandler::ActionVectorIconToResour icon.name == omnibox::kShareWinChromeRefreshIcon.name) { return kWinShareIconResourceName; } -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (icon.name == omnibox::kShareIcon.name || icon.name == omnibox::kShareLinuxChromeRefreshIcon.name) { return kLinuxShareIconResourceName; diff --git a/www/iridium/files/patch-chrome_browser_ui_webui_settings_appearance__handler.cc b/www/iridium/files/patch-chrome_browser_ui_webui_settings_appearance__handler.cc index 7934d2832441..a45091dd50b4 100644 --- a/www/iridium/files/patch-chrome_browser_ui_webui_settings_appearance__handler.cc +++ b/www/iridium/files/patch-chrome_browser_ui_webui_settings_appearance__handler.cc @@ -1,11 +1,11 @@ ---- chrome/browser/ui/webui/settings/appearance_handler.cc.orig 2025-05-07 06:48:23 UTC +--- chrome/browser/ui/webui/settings/appearance_handler.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/ui/webui/settings/appearance_handler.cc -@@ -32,7 +32,7 @@ void AppearanceHandler::RegisterMessages() { +@@ -33,7 +33,7 @@ void AppearanceHandler::RegisterMessages() { "useDefaultTheme", base::BindRepeating(&AppearanceHandler::HandleUseTheme, base::Unretained(this), ui::SystemTheme::kDefault)); -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) web_ui()->RegisterMessageCallback( "useGtkTheme", base::BindRepeating(&AppearanceHandler::HandleUseTheme, diff --git a/www/iridium/files/patch-chrome_browser_ui_webui_settings_settings__localized__strings__provider.cc b/www/iridium/files/patch-chrome_browser_ui_webui_settings_settings__localized__strings__provider.cc index e5adde0cee8a..b732ffb37562 100644 --- a/www/iridium/files/patch-chrome_browser_ui_webui_settings_settings__localized__strings__provider.cc +++ b/www/iridium/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-09-11 13:19:19 UTC +--- chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc @@ -137,7 +137,7 @@ #include "chrome/browser/ui/webui/settings/system_handler.h" #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "ui/display/screen.h" #endif -@@ -153,7 +153,7 @@ - #endif // BUILDFLAG(GOOGLE_CHROME_BRANDING) +@@ -146,7 +146,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 -@@ -278,7 +278,7 @@ void AddA11yStrings(content::WebUIDataSource* html_sou +@@ -271,7 +271,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", -@@ -548,7 +548,7 @@ void AddAppearanceStrings(content::WebUIDataSource* ht +@@ -543,7 +543,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}, -@@ -556,11 +556,11 @@ void AddAppearanceStrings(content::WebUIDataSource* ht +@@ -551,11 +551,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) -@@ -582,7 +582,7 @@ void AddAppearanceStrings(content::WebUIDataSource* ht +@@ -579,7 +579,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* +@@ -1577,7 +1577,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/iridium/files/patch-chrome_browser_ui_webui_side__panel_customize__chrome_customize__chrome__page__handler.cc b/www/iridium/files/patch-chrome_browser_ui_webui_side__panel_customize__chrome_customize__chrome__page__handler.cc index 1d994ab022d6..89624ed92bee 100644 --- a/www/iridium/files/patch-chrome_browser_ui_webui_side__panel_customize__chrome_customize__chrome__page__handler.cc +++ b/www/iridium/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-09-11 13:19:19 UTC +--- chrome/browser/ui/webui/side_panel/customize_chrome/customize_chrome_page_handler.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/ui/webui/side_panel/customize_chrome/customize_chrome_page_handler.cc -@@ -516,7 +516,7 @@ void CustomizeChromePageHandler::UpdateFooterSettings( +@@ -549,7 +549,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/iridium/files/patch-chrome_browser_ui_webui_side__panel_customize__chrome_customize__chrome__page__handler.h b/www/iridium/files/patch-chrome_browser_ui_webui_side__panel_customize__chrome_customize__chrome__page__handler.h index fb8eecf88d32..347f441124ae 100644 --- a/www/iridium/files/patch-chrome_browser_ui_webui_side__panel_customize__chrome_customize__chrome__page__handler.h +++ b/www/iridium/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-09-11 13:19:19 UTC +--- chrome/browser/ui/webui/side_panel/customize_chrome/customize_chrome_page_handler.h.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/ui/webui/side_panel/customize_chrome/customize_chrome_page_handler.h -@@ -206,7 +206,7 @@ class CustomizeChromePageHandler +@@ -208,7 +208,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/iridium/files/patch-chrome_browser_ui_webui_signin_profile__picker__handler.cc b/www/iridium/files/patch-chrome_browser_ui_webui_signin_profile__picker__handler.cc index d8b674b1c9f5..31e5cefa43e7 100644 --- a/www/iridium/files/patch-chrome_browser_ui_webui_signin_profile__picker__handler.cc +++ b/www/iridium/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-09-11 13:19:19 UTC +--- chrome/browser/ui/webui/signin/profile_picker_handler.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/ui/webui/signin/profile_picker_handler.cc -@@ -168,7 +168,7 @@ base::Value::Dict CreateProfileEntry(const ProfileAttr +@@ -169,7 +169,7 @@ base::Value::Dict CreateProfileEntry(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/iridium/files/patch-chrome_browser_ui_webui_user__education__internals_user__education__internals__page__handler__impl.cc b/www/iridium/files/patch-chrome_browser_ui_webui_user__education__internals_user__education__internals__page__handler__impl.cc index 5ee9e0315c43..4f5df2620c84 100644 --- a/www/iridium/files/patch-chrome_browser_ui_webui_user__education__internals_user__education__internals__page__handler__impl.cc +++ b/www/iridium/files/patch-chrome_browser_ui_webui_user__education__internals_user__education__internals__page__handler__impl.cc @@ -1,29 +1,29 @@ ---- chrome/browser/ui/webui/user_education_internals/user_education_internals_page_handler_impl.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/ui/webui/user_education_internals/user_education_internals_page_handler_impl.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/ui/webui/user_education_internals/user_education_internals_page_handler_impl.cc @@ -49,7 +49,7 @@ #include "ui/base/l10n/l10n_util.h" #include "ui/base/webui/resource_path.h" -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "chrome/browser/ui/browser_navigator.h" #include "chrome/browser/ui/browser_navigator_params.h" #include "net/base/url_util.h" @@ -89,7 +89,7 @@ user_education::NewBadgeRegistry* GetNewBadgeRegistry( } whats_new::WhatsNewRegistry* GetWhatsNewRegistry() { -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) return g_browser_process->GetFeatures()->whats_new_registry(); #else return nullptr; -@@ -912,7 +912,7 @@ void UserEducationInternalsPageHandlerImpl::ClearWhats +@@ -913,7 +913,7 @@ void UserEducationInternalsPageHandlerImpl::ClearWhats } void UserEducationInternalsPageHandlerImpl::LaunchWhatsNewStaging() { -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) GURL url = net::AppendQueryParameter(GURL(chrome::kChromeUIWhatsNewURL), "staging", "true"); NavigateParams params(profile_, url, ui::PAGE_TRANSITION_TYPED); diff --git a/www/iridium/files/patch-chrome_browser_web__applications_icons_icon__masker.cc b/www/iridium/files/patch-chrome_browser_web__applications_icons_icon__masker.cc new file mode 100644 index 000000000000..d6d60ae34e06 --- /dev/null +++ b/www/iridium/files/patch-chrome_browser_web__applications_icons_icon__masker.cc @@ -0,0 +1,11 @@ +--- chrome/browser/web_applications/icons/icon_masker.cc.orig 2025-10-28 14:29:43 UTC ++++ chrome/browser/web_applications/icons/icon_masker.cc +@@ -12,7 +12,7 @@ + + namespace web_app { + +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) + void MaskIconOnOs(SkBitmap input_bitmap, MaskedIconCallback masked_callback) { + base::SequencedTaskRunner::GetCurrentDefault()->PostTask( + FROM_HERE, diff --git a/www/iridium/files/patch-chrome_browser_web__applications_os__integration_web__app__shortcut.cc b/www/iridium/files/patch-chrome_browser_web__applications_os__integration_web__app__shortcut.cc index 334211771134..2fe2788a28b5 100644 --- a/www/iridium/files/patch-chrome_browser_web__applications_os__integration_web__app__shortcut.cc +++ b/www/iridium/files/patch-chrome_browser_web__applications_os__integration_web__app__shortcut.cc @@ -1,20 +1,20 @@ ---- chrome/browser/web_applications/os_integration/web_app_shortcut.cc.orig 2025-05-07 06:48:23 UTC +--- chrome/browser/web_applications/os_integration/web_app_shortcut.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/web_applications/os_integration/web_app_shortcut.cc -@@ -71,7 +71,7 @@ namespace { +@@ -67,7 +67,7 @@ namespace { #if BUILDFLAG(IS_MAC) const int kDesiredIconSizesForShortcut[] = {16, 32, 128, 256, 512}; -#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Linux supports icons of any size. FreeDesktop Icon Theme Specification states // that "Minimally you should install a 48x48 icon in the hicolor theme." const int kDesiredIconSizesForShortcut[] = {16, 32, 48, 128, 256, 512}; -@@ -253,7 +253,7 @@ std::unique_ptr BuildShortcutInfoWithout +@@ -249,7 +249,7 @@ std::unique_ptr BuildShortcutInfoWithout // TODO(crbug.com/40257107): Implement tests on Linux for using shortcuts_menu // actions. -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) const std::vector& shortcuts_menu_item_infos = CreateShortcutsMenuItemInfos(state.shortcut_menus()); DCHECK_LE(shortcuts_menu_item_infos.size(), kMaxApplicationDockMenuItems); diff --git a/www/iridium/files/patch-chrome_browser_webauthn_enclave__manager.cc b/www/iridium/files/patch-chrome_browser_webauthn_enclave__manager.cc index 8e62dbca8994..7e401b8a5b80 100644 --- a/www/iridium/files/patch-chrome_browser_webauthn_enclave__manager.cc +++ b/www/iridium/files/patch-chrome_browser_webauthn_enclave__manager.cc @@ -1,20 +1,20 @@ ---- chrome/browser/webauthn/enclave_manager.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/browser/webauthn/enclave_manager.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/browser/webauthn/enclave_manager.cc -@@ -709,7 +709,7 @@ base::flat_set GetGaiaIDs( +@@ -750,7 +750,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"); -@@ -719,7 +719,7 @@ std::string UserVerifyingLabelToString(crypto::UserVer +@@ -760,7 +760,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/iridium/files/patch-chrome_browser_webauthn_password__credential__controller.cc b/www/iridium/files/patch-chrome_browser_webauthn_password__credential__controller.cc deleted file mode 100644 index 33ec5decd8c9..000000000000 --- a/www/iridium/files/patch-chrome_browser_webauthn_password__credential__controller.cc +++ /dev/null @@ -1,11 +0,0 @@ ---- chrome/browser/webauthn/password_credential_controller.cc.orig 2025-09-11 13:19:19 UTC -+++ chrome/browser/webauthn/password_credential_controller.cc -@@ -46,7 +46,7 @@ password_manager::PasswordManagerClient* GetPasswordMa - - #if !BUILDFLAG(IS_ANDROID) - std::u16string GetAuthenticationMessage(std::string_view rp_id) { --#if BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - return u""; - #else - return l10n_util::GetStringFUTF16(IDS_PASSWORD_MANAGER_FILLING_REAUTH, diff --git a/www/iridium/files/patch-chrome_browser_webauthn_password__credential__ui__controller.cc b/www/iridium/files/patch-chrome_browser_webauthn_password__credential__ui__controller.cc new file mode 100644 index 000000000000..c271ee667fdd --- /dev/null +++ b/www/iridium/files/patch-chrome_browser_webauthn_password__credential__ui__controller.cc @@ -0,0 +1,11 @@ +--- chrome/browser/webauthn/password_credential_ui_controller.cc.orig 2025-10-28 14:29:43 UTC ++++ chrome/browser/webauthn/password_credential_ui_controller.cc +@@ -26,7 +26,7 @@ using content::WebContents; + namespace { + + std::u16string GetAuthenticationMessage(std::string_view rp_id) { +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + return u""; + #else + return l10n_util::GetStringFUTF16(IDS_PASSWORD_MANAGER_FILLING_REAUTH, diff --git a/www/iridium/files/patch-chrome_common_chrome__features.cc b/www/iridium/files/patch-chrome_common_chrome__features.cc index a5f0fa90c2db..4ac341faa8c0 100644 --- a/www/iridium/files/patch-chrome_common_chrome__features.cc +++ b/www/iridium/files/patch-chrome_common_chrome__features.cc @@ -1,56 +1,65 @@ ---- chrome/common/chrome_features.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/common/chrome_features.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/common/chrome_features.cc -@@ -80,7 +80,7 @@ BASE_FEATURE(kUseAdHocSigningForWebAppShims, +@@ -64,7 +64,7 @@ BASE_FEATURE(UseAdHocSigningForWebAppShims, base::FEAT #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, -@@ -98,7 +98,7 @@ BASE_FEATURE(kAutofillPasswordSurvey, - base::FEATURE_DISABLED_BY_DEFAULT); + BASE_FEATURE(AutofillAddressSurvey, base::FEATURE_DISABLED_BY_DEFAULT); +@@ -76,7 +76,7 @@ BASE_FEATURE(AutofillCardSurvey, base::FEATURE_DISABLE + BASE_FEATURE(AutofillPasswordSurvey, 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. -@@ -257,7 +257,7 @@ BASE_FEATURE(kDesktopPWAsElidedExtensionsMenu, - BASE_FEATURE(kDesktopPWAsRunOnOsLogin, - "DesktopPWAsRunOnOsLogin", +@@ -188,7 +188,7 @@ BASE_FEATURE(DesktopPWAsElidedExtensionsMenu, + // Enables or disables Desktop PWAs to be auto-started on OS login. + BASE_FEATURE(DesktopPWAsRunOnOsLogin, #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) base::FEATURE_ENABLED_BY_DEFAULT #else base::FEATURE_DISABLED_BY_DEFAULT -@@ -304,7 +304,7 @@ BASE_FEATURE(kEnableFullscreenToAnyScreenAndroid, +@@ -222,7 +222,7 @@ BASE_FEATURE(EnableFullscreenToAnyScreenAndroid, base::FEATURE_DISABLED_BY_DEFAULT); #endif -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Controls whether Chrome Apps are supported. See https://crbug.com/1221251. // If the feature is disabled, Chrome Apps continue to work. If enabled, Chrome // Apps will not launch and will be marked in the UI as deprecated. -@@ -1170,7 +1170,7 @@ BASE_FEATURE(kKAnonymityServiceStorage, - "KAnonymityServiceStorage", +@@ -578,7 +578,7 @@ BASE_FEATURE(GlicDisableWarming, base::FEATURE_ENABLED + // set to hidden when the Glic panel is warming. + BASE_FEATURE(kGlicGuestContentsVisibilityState, + "GlicGuestContentsVisibilityState", +-#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); +@@ -1008,7 +1008,7 @@ BASE_FEATURE(KAnonymityServiceOHTTPRequests, base::FEA + // public keys. + BASE_FEATURE(KAnonymityServiceStorage, base::FEATURE_ENABLED_BY_DEFAULT); -#if BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CHROMEOS) +#if (BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CHROMEOS)) || BUILDFLAG(IS_BSD) - BASE_FEATURE(kLinuxLowMemoryMonitor, - "LinuxLowMemoryMonitor", - base::FEATURE_DISABLED_BY_DEFAULT); -@@ -1183,7 +1183,7 @@ constexpr base::FeatureParam kLinuxLowMemoryMonit + BASE_FEATURE(LinuxLowMemoryMonitor, base::FEATURE_DISABLED_BY_DEFAULT); + // Values taken from the low-memory-monitor documentation and also apply to the + // portal API: +@@ -1019,7 +1019,7 @@ constexpr base::FeatureParam kLinuxLowMemoryMonit &kLinuxLowMemoryMonitor, "critical_level", 255}; #endif // BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CHROMEOS) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) - BASE_FEATURE(kListWebAppsSwitch, - "ListWebAppsSwitch", - base::FEATURE_DISABLED_BY_DEFAULT); + BASE_FEATURE(ListWebAppsSwitch, base::FEATURE_DISABLED_BY_DEFAULT); + #endif + diff --git a/www/iridium/files/patch-chrome_common_chrome__features.h b/www/iridium/files/patch-chrome_common_chrome__features.h index 0599e4983bc3..b857e05a7922 100644 --- a/www/iridium/files/patch-chrome_common_chrome__features.h +++ b/www/iridium/files/patch-chrome_common_chrome__features.h @@ -1,45 +1,45 @@ ---- chrome/common/chrome_features.h.orig 2025-09-11 13:19:19 UTC +--- chrome/common/chrome_features.h.orig 2025-10-28 14:29:43 UTC +++ chrome/common/chrome_features.h @@ -49,13 +49,13 @@ BASE_DECLARE_FEATURE(kUseAdHocSigningForWebAppShims); #endif // BUILDFLAG(IS_MAC) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) COMPONENT_EXPORT(CHROME_FEATURES) BASE_DECLARE_FEATURE(kAutofillAddressSurvey); COMPONENT_EXPORT(CHROME_FEATURES) BASE_DECLARE_FEATURE(kAutofillCardSurvey); COMPONENT_EXPORT(CHROME_FEATURES) BASE_DECLARE_FEATURE(kAutofillPasswordSurvey); #endif -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) COMPONENT_EXPORT(CHROME_FEATURES) BASE_DECLARE_FEATURE(kBackgroundModeAllowRestart); #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -@@ -153,7 +153,7 @@ BASE_DECLARE_FEATURE(kDesktopPWAsPreventClose); +@@ -136,7 +136,7 @@ BASE_DECLARE_FEATURE(kDesktopPWAsPreventClose); COMPONENT_EXPORT(CHROME_FEATURES) BASE_DECLARE_FEATURE(kDesktopPWAsTabStripSettings); -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) COMPONENT_EXPORT(CHROME_FEATURES) BASE_DECLARE_FEATURE(kChromeAppsDeprecation); COMPONENT_EXPORT(CHROME_FEATURES) BASE_DECLARE_FEATURE(kShortcutsNotApps); -@@ -697,7 +697,7 @@ BASE_DECLARE_FEATURE(kKAnonymityServiceOHTTPRequests); +@@ -730,7 +730,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; -@@ -705,7 +705,7 @@ COMPONENT_EXPORT(CHROME_FEATURES) +@@ -738,7 +738,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/iridium/files/patch-chrome_common_chrome__paths.cc b/www/iridium/files/patch-chrome_common_chrome__paths.cc index 7a75ac38897c..19bd110fe86a 100644 --- a/www/iridium/files/patch-chrome_common_chrome__paths.cc +++ b/www/iridium/files/patch-chrome_common_chrome__paths.cc @@ -1,82 +1,82 @@ ---- chrome/common/chrome_paths.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/common/chrome_paths.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/common/chrome_paths.cc @@ -31,7 +31,7 @@ #include "base/apple/foundation_util.h" #endif -#if BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_MAC) && !BUILDFLAG(IS_OPENBSD) +#if BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_MAC) #include "components/policy/core/common/policy_paths.h" #endif @@ -47,14 +47,14 @@ namespace { std::optional g_override_using_default_data_directory_for_testing; -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // The path to the external extension .json files. // /usr/share seems like a good choice, see: http://www.pathname.com/fhs/ const base::FilePath::CharType kFilepathSinglePrefExtensions[] = #if BUILDFLAG(GOOGLE_CHROME_BRANDING) - FILE_PATH_LITERAL("/usr/share/google-chrome/extensions"); + FILE_PATH_LITERAL("/usr/local/share/chromium/extensions"); #else - FILE_PATH_LITERAL("/usr/share/chromium/extensions"); + FILE_PATH_LITERAL("/usr/local/share/chromium/extensions"); #endif // BUILDFLAG(GOOGLE_CHROME_BRANDING) #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -@@ -188,7 +188,7 @@ bool PathProvider(int key, base::FilePath* result) { +@@ -176,7 +176,7 @@ bool PathProvider(int key, base::FilePath* result) { } break; case chrome::DIR_DEFAULT_DOWNLOADS_SAFE: -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) if (!GetUserDownloadsDirectorySafe(&cur)) { return false; } -@@ -436,13 +436,13 @@ bool PathProvider(int key, base::FilePath* result) { +@@ -407,13 +407,13 @@ bool PathProvider(int key, base::FilePath* result) { break; } #endif -#if BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_MAC) && !BUILDFLAG(IS_OPENBSD) +#if BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_MAC) case chrome::DIR_POLICY_FILES: { cur = base::FilePath(policy::kPolicyPath); break; } #endif -#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || \ +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) || \ (BUILDFLAG(IS_LINUX) && BUILDFLAG(CHROMIUM_BRANDING)) case chrome::DIR_USER_EXTERNAL_EXTENSIONS: { if (!base::PathService::Get(chrome::DIR_USER_DATA, &cur)) { -@@ -452,7 +452,7 @@ bool PathProvider(int key, base::FilePath* result) { +@@ -423,7 +423,7 @@ bool PathProvider(int key, base::FilePath* result) { break; } #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) case chrome::DIR_STANDALONE_EXTERNAL_EXTENSIONS: { cur = base::FilePath(kFilepathSinglePrefExtensions); break; -@@ -491,7 +491,7 @@ bool PathProvider(int key, base::FilePath* result) { +@@ -462,7 +462,7 @@ bool PathProvider(int key, base::FilePath* result) { #if BUILDFLAG(ENABLE_EXTENSIONS_CORE) && \ (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_ANDROID)) + BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD)) case chrome::DIR_NATIVE_MESSAGING: #if BUILDFLAG(IS_MAC) #if BUILDFLAG(GOOGLE_CHROME_BRANDING) -@@ -505,6 +505,9 @@ bool PathProvider(int key, base::FilePath* result) { +@@ -476,6 +476,9 @@ bool PathProvider(int key, base::FilePath* result) { #if BUILDFLAG(GOOGLE_CHROME_BRANDING) cur = base::FilePath( FILE_PATH_LITERAL("/etc/iridium-browser/native-messaging-hosts")); +#elif BUILDFLAG(IS_FREEBSD) + cur = base::FilePath(FILE_PATH_LITERAL( + "/usr/local/etc/iridium-browser/native-messaging-hosts")); #else cur = base::FilePath( FILE_PATH_LITERAL("/etc/iridium-browser/native-messaging-hosts")); diff --git a/www/iridium/files/patch-chrome_common_chrome__paths.h b/www/iridium/files/patch-chrome_common_chrome__paths.h index d79afb69c69e..778d30fac228 100644 --- a/www/iridium/files/patch-chrome_common_chrome__paths.h +++ b/www/iridium/files/patch-chrome_common_chrome__paths.h @@ -1,29 +1,29 @@ ---- chrome/common/chrome_paths.h.orig 2025-09-11 13:19:19 UTC +--- chrome/common/chrome_paths.h.orig 2025-10-28 14:29:43 UTC +++ chrome/common/chrome_paths.h @@ -58,7 +58,7 @@ enum { // to set policies for chrome. This directory // contains subdirectories. #endif -#if BUILDFLAG(IS_CHROMEOS) || \ +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) || \ (BUILDFLAG(IS_LINUX) && BUILDFLAG(CHROMIUM_BRANDING)) || BUILDFLAG(IS_MAC) DIR_USER_EXTERNAL_EXTENSIONS, // Directory for per-user external extensions // on Chrome Mac and Chromium Linux. @@ -67,7 +67,7 @@ enum { // create it. #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) DIR_STANDALONE_EXTERNAL_EXTENSIONS, // Directory for 'per-extension' // definition manifest files that // describe extensions which are to be -@@ -112,7 +112,7 @@ enum { - #endif +@@ -107,7 +107,7 @@ enum { + #if BUILDFLAG(ENABLE_EXTENSIONS_CORE) && \ (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_ANDROID)) + BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD)) DIR_NATIVE_MESSAGING, // System directory where native messaging host // manifest files are stored. DIR_USER_NATIVE_MESSAGING, // Directory with Native Messaging Hosts diff --git a/www/iridium/files/patch-chrome_common_chrome__switches.cc b/www/iridium/files/patch-chrome_common_chrome__switches.cc index 34e90e951974..08636d12117b 100644 --- a/www/iridium/files/patch-chrome_common_chrome__switches.cc +++ b/www/iridium/files/patch-chrome_common_chrome__switches.cc @@ -1,20 +1,20 @@ ---- chrome/common/chrome_switches.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/common/chrome_switches.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/common/chrome_switches.cc -@@ -908,7 +908,7 @@ const char kDebugPrint[] = "debug-print"; +@@ -914,7 +914,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. -@@ -937,7 +937,7 @@ const char kGlicDev[] = "glic-dev"; - const char kGlicHostLogging[] = "glic-host-logging"; +@@ -950,7 +950,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 optional + // 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/iridium/files/patch-chrome_common_chrome__switches.h b/www/iridium/files/patch-chrome_common_chrome__switches.h index d791bf13573e..8fc73c044857 100644 --- a/www/iridium/files/patch-chrome_common_chrome__switches.h +++ b/www/iridium/files/patch-chrome_common_chrome__switches.h @@ -1,20 +1,20 @@ ---- chrome/common/chrome_switches.h.orig 2025-09-11 13:19:19 UTC +--- chrome/common/chrome_switches.h.orig 2025-10-28 14:29:43 UTC +++ chrome/common/chrome_switches.h -@@ -275,7 +275,7 @@ extern const char kDebugPrint[]; +@@ -278,7 +278,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[]; -@@ -293,7 +293,7 @@ extern const char kGlicDev[]; - extern const char kGlicHostLogging[]; +@@ -298,7 +298,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/iridium/files/patch-chrome_common_pref__names.h b/www/iridium/files/patch-chrome_common_pref__names.h index bba110ac8d97..e6ebb047f770 100644 --- a/www/iridium/files/patch-chrome_common_pref__names.h +++ b/www/iridium/files/patch-chrome_common_pref__names.h @@ -1,92 +1,92 @@ ---- chrome/common/pref_names.h.orig 2025-09-11 13:19:19 UTC +--- chrome/common/pref_names.h.orig 2025-10-28 14:29:43 UTC +++ chrome/common/pref_names.h -@@ -1333,7 +1333,7 @@ inline constexpr char kGeminiSettings[] = "browser.gem +@@ -1351,7 +1351,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 -@@ -1503,7 +1503,7 @@ inline constexpr char kShowUpdatePromotionInfoBar[] = +@@ -1517,7 +1517,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"; -@@ -2156,7 +2156,7 @@ inline constexpr char kDownloadDefaultDirectory[] = +@@ -2168,7 +2168,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 -@@ -2659,7 +2659,7 @@ inline constexpr char kMediaStorageIdSalt[] = "media.s +@@ -2671,7 +2671,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[] = -@@ -2673,7 +2673,7 @@ inline constexpr char kNetworkServiceSandboxEnabled[] +@@ -2685,7 +2685,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"; -@@ -2765,7 +2765,7 @@ inline constexpr char kIsolatedWebAppInstallForceList[ +@@ -2777,7 +2777,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[] = -@@ -3288,7 +3288,7 @@ inline constexpr char kKioskApplicationLogCollectionEn +@@ -3275,7 +3275,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 -@@ -3806,7 +3806,7 @@ inline constexpr char kScreenCaptureWithoutGestureAllo +@@ -3793,7 +3793,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[] = -@@ -3997,7 +3997,7 @@ inline constexpr char kLensDesktopNTPSearchEnabled[] = +@@ -3984,7 +3984,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 -@@ -4094,7 +4094,7 @@ inline constexpr char kPrintingOAuth2AuthorizationServ +@@ -4081,7 +4081,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/iridium/files/patch-chrome_common_url__constants.h b/www/iridium/files/patch-chrome_common_url__constants.h index 9262bf5f9aa0..3c388fba632b 100644 --- a/www/iridium/files/patch-chrome_common_url__constants.h +++ b/www/iridium/files/patch-chrome_common_url__constants.h @@ -1,11 +1,11 @@ ---- chrome/common/url_constants.h.orig 2025-09-11 13:19:19 UTC +--- chrome/common/url_constants.h.orig 2025-10-28 14:29:43 UTC +++ chrome/common/url_constants.h -@@ -993,7 +993,7 @@ inline constexpr char kOutdatedPluginLearnMoreURL[] = +@@ -997,7 +997,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/iridium/files/patch-chrome_common_webui__url__constants.cc b/www/iridium/files/patch-chrome_common_webui__url__constants.cc index 1a61ab2a3d1e..e32b1dc35a55 100644 --- a/www/iridium/files/patch-chrome_common_webui__url__constants.cc +++ b/www/iridium/files/patch-chrome_common_webui__url__constants.cc @@ -1,23 +1,23 @@ ---- chrome/common/webui_url_constants.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/common/webui_url_constants.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/common/webui_url_constants.cc -@@ -194,17 +194,17 @@ base::span ChromeURLHosts() - kChromeUIAssistantOptInHost, +@@ -199,17 +199,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/iridium/files/patch-chrome_common_webui__url__constants.h b/www/iridium/files/patch-chrome_common_webui__url__constants.h index c3318cbce086..64a5692378cf 100644 --- a/www/iridium/files/patch-chrome_common_webui__url__constants.h +++ b/www/iridium/files/patch-chrome_common_webui__url__constants.h @@ -1,40 +1,40 @@ ---- chrome/common/webui_url_constants.h.orig 2025-09-11 13:19:19 UTC +--- chrome/common/webui_url_constants.h.orig 2025-10-28 14:29:43 UTC +++ chrome/common/webui_url_constants.h -@@ -557,12 +557,12 @@ inline constexpr char kChromeUIOsUrlAppURL[] = "chrome +@@ -554,12 +554,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"; -@@ -574,11 +574,11 @@ inline constexpr char kChromeUILinuxProxyConfigHost[] +@@ -571,11 +571,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"; -@@ -603,7 +603,7 @@ inline constexpr char kChromeUIHistorySyncOptinURL[] = +@@ -600,7 +600,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/iridium/files/patch-chrome_updater_configurator.cc b/www/iridium/files/patch-chrome_updater_configurator.cc index 646020db76c4..d407422a27bc 100644 --- a/www/iridium/files/patch-chrome_updater_configurator.cc +++ b/www/iridium/files/patch-chrome_updater_configurator.cc @@ -1,11 +1,11 @@ ---- chrome/updater/configurator.cc.orig 2025-09-11 13:19:19 UTC +--- chrome/updater/configurator.cc.orig 2025-10-28 14:29:43 UTC +++ chrome/updater/configurator.cc -@@ -105,7 +105,7 @@ Configurator::Configurator(scoped_refptr +@@ -91,7 +91,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/iridium/files/patch-chromecast_browser_cast__content__browser__client.cc b/www/iridium/files/patch-chromecast_browser_cast__content__browser__client.cc index da5a9e785b9f..f129e0ebb8dd 100644 --- a/www/iridium/files/patch-chromecast_browser_cast__content__browser__client.cc +++ b/www/iridium/files/patch-chromecast_browser_cast__content__browser__client.cc @@ -1,11 +1,11 @@ ---- chromecast/browser/cast_content_browser_client.cc.orig 2025-09-11 13:19:19 UTC +--- chromecast/browser/cast_content_browser_client.cc.orig 2025-10-28 14:29:43 UTC +++ chromecast/browser/cast_content_browser_client.cc -@@ -433,7 +433,7 @@ void CastContentBrowserClient::AppendExtraCommandLineS +@@ -432,7 +432,7 @@ void CastContentBrowserClient::AppendExtraCommandLineS switches::kAudioOutputChannels)); } } else if (process_type == switches::kGpuProcess) { -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Necessary for accelerated 2d canvas. By default on Linux, Chromium // assumes GLES2 contexts can be lost to a power-save mode, which breaks GPU // canvas apps. diff --git a/www/iridium/files/patch-components_BUILD.gn b/www/iridium/files/patch-components_BUILD.gn index e0be891e990e..891128b57a8e 100644 --- a/www/iridium/files/patch-components_BUILD.gn +++ b/www/iridium/files/patch-components_BUILD.gn @@ -1,48 +1,48 @@ ---- components/BUILD.gn.orig 2025-09-13 16:56:52 UTC +--- components/BUILD.gn.orig 2025-10-28 14:29:43 UTC +++ components/BUILD.gn @@ -216,7 +216,6 @@ test("components_unittests") { "//components/content_settings/core/browser:unit_tests", "//components/content_settings/core/common:unit_tests", "//components/country_codes:unit_tests", - "//components/crash/core/common:unit_tests", "//components/cross_device/logging:unit_tests", "//components/crx_file:unit_tests", "//components/data_sharing:unit_tests", -@@ -625,7 +624,7 @@ test("components_unittests") { +@@ -629,7 +628,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", -@@ -784,7 +783,7 @@ test("components_unittests") { +@@ -791,7 +790,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", -@@ -945,8 +944,7 @@ test("components_unittests") { +@@ -952,8 +951,7 @@ test("components_unittests") { # No components should depend on Chrome. # Since //chrome depends on //extensions, we also only assert_no_deps on # extensions targets. - assert_no_deps = [ "//chrome/*" ] - assert_no_deps += disallowed_extension_deps_ + assert_no_deps = disallowed_extension_deps_ if (is_ios) { assert_no_deps += ios_assert_no_deps -@@ -1263,8 +1261,7 @@ if (use_blink) { +@@ -1273,8 +1271,7 @@ if (use_blink) { # No components should depend on Chrome. # Since //chrome depends on //extensions, we also only assert_no_deps on # extensions targets. - assert_no_deps = [ "//chrome/*" ] - assert_no_deps += disallowed_extension_deps_ + assert_no_deps = disallowed_extension_deps_ if (is_fuchsia) { additional_manifest_fragments = [ diff --git a/www/iridium/files/patch-components_autofill_core_browser_data__manager_payments_payments__data__manager.cc b/www/iridium/files/patch-components_autofill_core_browser_data__manager_payments_payments__data__manager.cc index 4d5da67d48b5..ce949275b60c 100644 --- a/www/iridium/files/patch-components_autofill_core_browser_data__manager_payments_payments__data__manager.cc +++ b/www/iridium/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-09-11 13:19:19 UTC +--- components/autofill/core/browser/data_manager/payments/payments_data_manager.cc.orig 2025-10-28 14:29:43 UTC +++ components/autofill/core/browser/data_manager/payments/payments_data_manager.cc -@@ -471,7 +471,7 @@ void PaymentsDataManager::OnWebDataServiceRequestDone( +@@ -479,7 +479,7 @@ void PaymentsDataManager::OnWebDataServiceRequestDone( bool PaymentsDataManager::ShouldShowBnplSettings() const { #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ -- BUILDFLAG(IS_CHROMEOS) -+ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) +- 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 -@@ -1000,7 +1000,7 @@ void PaymentsDataManager::SetPrefService(PrefService* +@@ -1008,7 +1008,7 @@ void PaymentsDataManager::SetPrefService(PrefService* &PaymentsDataManager::OnAutofillPaymentsCardBenefitsPrefChange, base::Unretained(this))); #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ -- BUILDFLAG(IS_CHROMEOS) -+ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) +- BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) pref_registrar_.Add( prefs::kAutofillBnplEnabled, base::BindRepeating(&PaymentsDataManager::OnBnplEnabledPrefChange, -@@ -1074,7 +1074,7 @@ void PaymentsDataManager::SetAutofillHasSeenIban() { +@@ -1082,7 +1082,7 @@ void PaymentsDataManager::SetAutofillHasSeenIban() { } #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ -- BUILDFLAG(IS_CHROMEOS) -+ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) +- BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) bool PaymentsDataManager::IsAutofillHasSeenBnplPrefEnabled() const { return prefs::HasSeenBnpl(pref_service_); } -@@ -2084,7 +2084,7 @@ bool PaymentsDataManager::AreEwalletAccountsSupported( +@@ -2101,7 +2101,7 @@ bool PaymentsDataManager::AreEwalletAccountsSupported( bool PaymentsDataManager::AreBnplIssuersSupported() const { #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ -- BUILDFLAG(IS_CHROMEOS) -+ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) +- 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" && -@@ -2119,7 +2119,7 @@ void PaymentsDataManager::ClearAllCreditCardBenefits() +@@ -2136,7 +2136,7 @@ void PaymentsDataManager::ClearAllCreditCardBenefits() } #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ -- BUILDFLAG(IS_CHROMEOS) -+ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) +- BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) 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/iridium/files/patch-components_autofill_core_browser_data__manager_payments_payments__data__manager.h b/www/iridium/files/patch-components_autofill_core_browser_data__manager_payments_payments__data__manager.h index 9cbe051764e3..72e16f442fd5 100644 --- a/www/iridium/files/patch-components_autofill_core_browser_data__manager_payments_payments__data__manager.h +++ b/www/iridium/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-09-11 13:19:19 UTC +--- components/autofill/core/browser/data_manager/payments/payments_data_manager.h.orig 2025-10-28 14:29:43 UTC +++ components/autofill/core/browser/data_manager/payments/payments_data_manager.h -@@ -370,7 +370,7 @@ class PaymentsDataManager : public AutofillWebDataServ +@@ -371,7 +371,7 @@ class PaymentsDataManager : public AutofillWebDataServ void SetAutofillHasSeenIban(); #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ -- BUILDFLAG(IS_CHROMEOS) -+ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) +- 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; -@@ -699,7 +699,7 @@ class PaymentsDataManager : public AutofillWebDataServ +@@ -708,7 +708,7 @@ class PaymentsDataManager : public AutofillWebDataServ void ClearAllCreditCardBenefits(); #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ -- BUILDFLAG(IS_CHROMEOS) -+ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) +- 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/iridium/files/patch-components_autofill_core_browser_foundations_browser__autofill__manager.cc b/www/iridium/files/patch-components_autofill_core_browser_foundations_browser__autofill__manager.cc index 6bd37803302a..f12abf6d9c78 100644 --- a/www/iridium/files/patch-components_autofill_core_browser_foundations_browser__autofill__manager.cc +++ b/www/iridium/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-09-11 13:19:19 UTC +--- components/autofill/core/browser/foundations/browser_autofill_manager.cc.orig 2025-10-28 14:29:43 UTC +++ components/autofill/core/browser/foundations/browser_autofill_manager.cc -@@ -779,7 +779,7 @@ BrowserAutofillManager::GetAmountExtractionManager() { +@@ -835,7 +835,7 @@ BrowserAutofillManager::GetAmountExtractionManager() { payments::BnplManager* BrowserAutofillManager::GetPaymentsBnplManager() { #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ -- BUILDFLAG(IS_CHROMEOS) -+ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) +- BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) if (!bnpl_manager_) { bnpl_manager_ = std::make_unique(this); } diff --git a/www/iridium/files/patch-components_autofill_core_browser_integrators_optimization__guide_autofill__optimization__guide.cc b/www/iridium/files/patch-components_autofill_core_browser_integrators_optimization__guide_autofill__optimization__guide.cc deleted file mode 100644 index 5b609c0c0a04..000000000000 --- a/www/iridium/files/patch-components_autofill_core_browser_integrators_optimization__guide_autofill__optimization__guide.cc +++ /dev/null @@ -1,11 +0,0 @@ ---- components/autofill/core/browser/integrators/optimization_guide/autofill_optimization_guide.cc.orig 2025-09-11 13:19:19 UTC -+++ components/autofill/core/browser/integrators/optimization_guide/autofill_optimization_guide.cc -@@ -231,7 +231,7 @@ void AutofillOptimizationGuide::OnDidParseForm( - } - - #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ -- BUILDFLAG(IS_CHROMEOS) -+ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - auto bnpl_issuer_allowlist_can_be_loaded = - [&payments_data_manager](BnplIssuer::IssuerId issuer_id) { - return base::Contains(payments_data_manager.GetBnplIssuers(), issuer_id, diff --git a/www/iridium/files/patch-components_autofill_core_browser_integrators_optimization__guide_autofill__optimization__guide__decider.cc b/www/iridium/files/patch-components_autofill_core_browser_integrators_optimization__guide_autofill__optimization__guide__decider.cc new file mode 100644 index 000000000000..bc36fb9a053c --- /dev/null +++ b/www/iridium/files/patch-components_autofill_core_browser_integrators_optimization__guide_autofill__optimization__guide__decider.cc @@ -0,0 +1,11 @@ +--- components/autofill/core/browser/integrators/optimization_guide/autofill_optimization_guide_decider.cc.orig 2025-10-28 14:29:43 UTC ++++ components/autofill/core/browser/integrators/optimization_guide/autofill_optimization_guide_decider.cc +@@ -203,7 +203,7 @@ void AddOptimizationTypesForBnplIssuers( + base::flat_set& + optimization_types) { + #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) + auto bnpl_issuer_allowlist_can_be_loaded = + [&bnpl_issuers](BnplIssuer::IssuerId issuer_id) { + return base::Contains(bnpl_issuers, issuer_id, diff --git a/www/iridium/files/patch-components_autofill_core_browser_payments_amount__extraction__manager.cc b/www/iridium/files/patch-components_autofill_core_browser_payments_amount__extraction__manager.cc index bf2b1e0f9c9a..ec7e1485d54a 100644 --- a/www/iridium/files/patch-components_autofill_core_browser_payments_amount__extraction__manager.cc +++ b/www/iridium/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-09-11 13:19:19 UTC +--- components/autofill/core/browser/payments/amount_extraction_manager.cc.orig 2025-10-28 14:29:43 UTC +++ components/autofill/core/browser/payments/amount_extraction_manager.cc -@@ -178,7 +178,7 @@ void AmountExtractionManager::OnCheckoutAmountReceived +@@ -172,7 +172,7 @@ void AmountExtractionManager::OnCheckoutAmountReceived bnpl_manager->OnAmountExtractionReturned(parsed_extracted_amount); } if constexpr (BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || - BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_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 " -@@ -206,7 +206,7 @@ void AmountExtractionManager::OnTimeoutReached() { +@@ -203,7 +203,7 @@ void AmountExtractionManager::OnTimeoutReached() { + /*timeout_reached=*/true); } - // TODO(crbug.com/378517983): Add BNPL flow action logic here. if constexpr (BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || - BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID)) { + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD)) { if (base::FeatureList::IsEnabled( ::autofill::features::kAutofillEnableAmountExtractionTesting)) { VLOG(3) << "The amount extraction on domain " -@@ -225,7 +225,7 @@ AmountExtractionManager::CheckEligibilityForFeaturesRe +@@ -221,7 +221,7 @@ AmountExtractionManager::CheckEligibilityForFeaturesRe + // Check eligibility of BNPL feature. - // Currently, BNPL is only offered for desktop platforms. if constexpr (BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || -- BUILDFLAG(IS_CHROMEOS)) { -+ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD)) { +- BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID)) { ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD)) { if (BnplManager* bnpl_manager = autofill_manager_->GetPaymentsBnplManager(); bnpl_manager && bnpl_manager->IsEligibleForBnpl()) { eligible_features.insert(EligibleFeature::kBnpl); diff --git a/www/iridium/files/patch-components_autofill_core_browser_payments_bnpl__manager.cc b/www/iridium/files/patch-components_autofill_core_browser_payments_bnpl__manager.cc index f53663e953de..7b4cba7b2eef 100644 --- a/www/iridium/files/patch-components_autofill_core_browser_payments_bnpl__manager.cc +++ b/www/iridium/files/patch-components_autofill_core_browser_payments_bnpl__manager.cc @@ -1,11 +1,11 @@ ---- components/autofill/core/browser/payments/bnpl_manager.cc.orig 2025-09-11 13:19:19 UTC +--- components/autofill/core/browser/payments/bnpl_manager.cc.orig 2025-10-28 14:29:43 UTC +++ components/autofill/core/browser/payments/bnpl_manager.cc -@@ -497,7 +497,7 @@ void BnplManager::MaybeUpdateSuggestionsWithBnpl( +@@ -552,7 +552,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/iridium/files/patch-components_autofill_core_browser_webdata_payments_payments__sync__bridge__util.cc b/www/iridium/files/patch-components_autofill_core_browser_webdata_payments_payments__sync__bridge__util.cc index bae7c02b0077..d1fab6e148d8 100644 --- a/www/iridium/files/patch-components_autofill_core_browser_webdata_payments_payments__sync__bridge__util.cc +++ b/www/iridium/files/patch-components_autofill_core_browser_webdata_payments_payments__sync__bridge__util.cc @@ -1,11 +1,11 @@ ---- components/autofill/core/browser/webdata/payments/payments_sync_bridge_util.cc.orig 2025-09-11 13:19:19 UTC +--- components/autofill/core/browser/webdata/payments/payments_sync_bridge_util.cc.orig 2025-10-28 14:29:43 UTC +++ components/autofill/core/browser/webdata/payments/payments_sync_bridge_util.cc @@ -1262,7 +1262,7 @@ bool AreMaskedBankAccountSupported() { bool IsBnplIssuerSupported() { #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ -- BUILDFLAG(IS_CHROMEOS) -+ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) +- BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) return base::FeatureList::IsEnabled( features::kAutofillEnableBuyNowPayLaterSyncing); #else diff --git a/www/iridium/files/patch-components_autofill_core_common_autofill__features.cc b/www/iridium/files/patch-components_autofill_core_common_autofill__features.cc new file mode 100644 index 000000000000..0916987cfb14 --- /dev/null +++ b/www/iridium/files/patch-components_autofill_core_common_autofill__features.cc @@ -0,0 +1,11 @@ +--- components/autofill/core/common/autofill_features.cc.orig 2025-10-28 14:29:43 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); + } + diff --git a/www/iridium/files/patch-components_autofill_core_common_autofill__payments__features.cc b/www/iridium/files/patch-components_autofill_core_common_autofill__payments__features.cc index 80c36de24f8b..18bd650025f9 100644 --- a/www/iridium/files/patch-components_autofill_core_common_autofill__payments__features.cc +++ b/www/iridium/files/patch-components_autofill_core_common_autofill__payments__features.cc @@ -1,11 +1,38 @@ ---- components/autofill/core/common/autofill_payments_features.cc.orig 2025-09-11 13:19:19 UTC +--- components/autofill/core/common/autofill_payments_features.cc.orig 2025-10-28 14:29:43 UTC +++ components/autofill/core/common/autofill_payments_features.cc -@@ -345,7 +345,7 @@ BASE_FEATURE(kDisableAutofillStrikeSystem, +@@ -25,7 +25,7 @@ BASE_FEATURE(kAutofillEnableAllowlistForBmoCardCategor + BASE_FEATURE(kAutofillEnableAmountExtraction, + "AutofillEnableAmountExtraction", + #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); +@@ -51,7 +51,7 @@ BASE_FEATURE(kAutofillEnableAmountExtractionTesting, + BASE_FEATURE(kAutofillEnableBuyNowPayLater, + "AutofillEnableBuyNowPayLater", + #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); +@@ -74,7 +74,7 @@ BASE_FEATURE(kAutofillEnableBuyNowPayLaterForKlarna, + BASE_FEATURE(kAutofillEnableBuyNowPayLaterSyncing, + "AutofillEnableBuyNowPayLaterSyncing", + #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); +@@ -337,7 +337,7 @@ BASE_FEATURE(kDisableAutofillStrikeSystem, base::FEATURE_DISABLED_BY_DEFAULT); bool ShouldShowImprovedUserConsentForCreditCardSave() { -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // The new user consent UI is fully launched on MacOS, Windows and Linux. return true; #else diff --git a/www/iridium/files/patch-components_autofill_core_common_autofill__prefs.cc b/www/iridium/files/patch-components_autofill_core_common_autofill__prefs.cc index 9a0acc71cc69..753ba702baad 100644 --- a/www/iridium/files/patch-components_autofill_core_common_autofill__prefs.cc +++ b/www/iridium/files/patch-components_autofill_core_common_autofill__prefs.cc @@ -1,38 +1,38 @@ ---- components/autofill/core/common/autofill_prefs.cc.orig 2025-09-11 13:19:19 UTC +--- components/autofill/core/common/autofill_prefs.cc.orig 2025-10-28 14:29:43 UTC +++ components/autofill/core/common/autofill_prefs.cc -@@ -118,7 +118,7 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySync +@@ -124,7 +124,7 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySync #endif #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ -- BUILDFLAG(IS_CHROMEOS) -+ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) +- BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) registry->RegisterBooleanPref( kAutofillBnplEnabled, true, user_prefs::PrefRegistrySyncable::SYNCABLE_PREF); -@@ -360,7 +360,7 @@ void SetFacilitatedPaymentsA2ATriggeredOnce(PrefServic +@@ -366,7 +366,7 @@ void SetFacilitatedPaymentsA2ATriggeredOnce(PrefServic } #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ -- BUILDFLAG(IS_CHROMEOS) -+ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) +- BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) void SetAutofillBnplEnabled(PrefService* prefs, bool value) { prefs->SetBoolean(kAutofillBnplEnabled, value); } -@@ -369,7 +369,7 @@ void SetAutofillBnplEnabled(PrefService* prefs, bool v +@@ -375,7 +375,7 @@ void SetAutofillBnplEnabled(PrefService* prefs, bool v bool IsAutofillBnplEnabled(const PrefService* prefs) { #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ -- BUILDFLAG(IS_CHROMEOS) -+ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) +- BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) return prefs->GetBoolean(kAutofillBnplEnabled); #else return false; -@@ -378,7 +378,7 @@ bool IsAutofillBnplEnabled(const PrefService* prefs) { +@@ -384,7 +384,7 @@ bool IsAutofillBnplEnabled(const PrefService* prefs) { } #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ -- BUILDFLAG(IS_CHROMEOS) -+ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) +- 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/iridium/files/patch-components_autofill_core_common_autofill__prefs.h b/www/iridium/files/patch-components_autofill_core_common_autofill__prefs.h index 779ca0c75bf2..2adf6db72205 100644 --- a/www/iridium/files/patch-components_autofill_core_common_autofill__prefs.h +++ b/www/iridium/files/patch-components_autofill_core_common_autofill__prefs.h @@ -1,29 +1,29 @@ ---- components/autofill/core/common/autofill_prefs.h.orig 2025-09-11 13:19:19 UTC +--- components/autofill/core/common/autofill_prefs.h.orig 2025-10-28 14:29:43 UTC +++ components/autofill/core/common/autofill_prefs.h @@ -32,7 +32,7 @@ inline constexpr std::string_view kAutofillAblationSee inline constexpr char kAutofillAiOptInStatus[] = "autofill.autofill_ai.opt_in_status"; #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ -- BUILDFLAG(IS_CHROMEOS) -+ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) +- 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. -@@ -247,7 +247,7 @@ bool IsFacilitatedPaymentsA2AEnabled(const PrefService +@@ -255,7 +255,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_CHROMEOS) || BUILDFLAG(IS_BSD) +- 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) -@@ -255,7 +255,7 @@ void SetAutofillBnplEnabled(PrefService* prefs, bool v + // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) +@@ -263,7 +263,7 @@ void SetAutofillBnplEnabled(PrefService* prefs, bool v bool IsAutofillBnplEnabled(const PrefService* prefs); #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ -- BUILDFLAG(IS_CHROMEOS) -+ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) +- 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/iridium/files/patch-components_device__signals_core_common_linux_platform__utils__linux.cc b/www/iridium/files/patch-components_device__signals_core_common_linux_platform__utils__linux.cc index bd82efa6a6bc..c396daf9606b 100644 --- a/www/iridium/files/patch-components_device__signals_core_common_linux_platform__utils__linux.cc +++ b/www/iridium/files/patch-components_device__signals_core_common_linux_platform__utils__linux.cc @@ -1,78 +1,78 @@ ---- components/device_signals/core/common/linux/platform_utils_linux.cc.orig 2025-09-11 13:19:19 UTC +--- components/device_signals/core/common/linux/platform_utils_linux.cc.orig 2025-10-28 14:29:43 UTC +++ components/device_signals/core/common/linux/platform_utils_linux.cc @@ -4,12 +4,23 @@ #include "components/device_signals/core/common/platform_utils.h" +#include "build/build_config.h" + #if defined(USE_GIO) #include #endif // defined(USE_GIO) #include +#if !BUILDFLAG(IS_BSD) #include +#endif +#if BUILDFLAG(IS_BSD) +#include +#include +#include +#include +#endif + #include #include #include -@@ -111,6 +122,7 @@ SettingValue GetScreenlockSecured() { +@@ -105,6 +116,7 @@ SettingValue GetScreenlockSecured() { // Implements the logic from the native host installation script. First find the // root device identifier, then locate its parent and get its type. SettingValue GetDiskEncrypted() { +#if !BUILDFLAG(IS_BSD) struct stat info; // First figure out the device identifier. Fail fast if this fails. if (stat("/", &info) != 0) { -@@ -133,11 +145,35 @@ SettingValue GetDiskEncrypted() { +@@ -127,11 +139,35 @@ SettingValue GetDiskEncrypted() { } return SettingValue::UNKNOWN; } +#endif return SettingValue::DISABLED; } std::vector internal::GetMacAddressesImpl() { std::vector result; +#if BUILDFLAG(IS_BSD) + struct ifaddrs* ifa = nullptr; + + if (getifaddrs(&ifa) != 0) + return result; + + struct ifaddrs* interface = ifa; + for (; interface != nullptr; interface = interface->ifa_next) { + if (interface->ifa_addr == nullptr || + interface->ifa_addr->sa_family != AF_LINK) { + continue; + } + struct sockaddr_dl* sdl = + reinterpret_cast(interface->ifa_addr); + if (!sdl || sdl->sdl_alen != 6) + continue; + char* link_address = static_cast(LLADDR(sdl)); + result.push_back(base::StringPrintf( + "%02x:%02x:%02x:%02x:%02x:%02x", link_address[0] & 0xff, + link_address[1] & 0xff, link_address[2] & 0xff, link_address[3] & 0xff, + link_address[4] & 0xff, link_address[5] & 0xff)); + } +#else base::DirReaderPosix reader("/sys/class/net"); if (!reader.IsValid()) { return result; -@@ -162,6 +198,7 @@ std::vector internal::GetMacAddressesImpl +@@ -156,6 +192,7 @@ std::vector internal::GetMacAddressesImpl &address); result.push_back(address); } +#endif return result; } diff --git a/www/iridium/files/patch-components_device__signals_core_common_platform__utils.h b/www/iridium/files/patch-components_device__signals_core_common_platform__utils.h index 0504ad52ae3c..eb22f0f51fb6 100644 --- a/www/iridium/files/patch-components_device__signals_core_common_platform__utils.h +++ b/www/iridium/files/patch-components_device__signals_core_common_platform__utils.h @@ -1,11 +1,11 @@ ---- components/device_signals/core/common/platform_utils.h.orig 2025-09-11 13:19:19 UTC +--- components/device_signals/core/common/platform_utils.h.orig 2025-10-28 14:29:43 UTC +++ components/device_signals/core/common/platform_utils.h -@@ -57,7 +57,7 @@ SettingValue GetSecureBootEnabled(); +@@ -54,7 +54,7 @@ SettingValue GetSecureBootEnabled(); std::optional GetWindowsMachineDomain(); #endif // BUILDFLAG(IS_WIN) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Return the distribution VERSION_ID contained in // /etc/os-release, if it exists. std::optional GetDistributionVersion(); diff --git a/www/iridium/files/patch-components_error__page_common_localized__error.cc b/www/iridium/files/patch-components_error__page_common_localized__error.cc index 8519953ea2d4..d357b89a6153 100644 --- a/www/iridium/files/patch-components_error__page_common_localized__error.cc +++ b/www/iridium/files/patch-components_error__page_common_localized__error.cc @@ -1,11 +1,11 @@ ---- components/error_page/common/localized_error.cc.orig 2025-05-07 06:48:23 UTC +--- components/error_page/common/localized_error.cc.orig 2025-10-28 14:29:43 UTC +++ components/error_page/common/localized_error.cc -@@ -901,7 +901,7 @@ void AddSuggestionsDetails(int error_code, +@@ -902,7 +902,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/iridium/files/patch-components_eye__dropper_eye__dropper__view.cc b/www/iridium/files/patch-components_eye__dropper_eye__dropper__view.cc index f0543d05918e..e192ea546c1b 100644 --- a/www/iridium/files/patch-components_eye__dropper_eye__dropper__view.cc +++ b/www/iridium/files/patch-components_eye__dropper_eye__dropper__view.cc @@ -1,11 +1,11 @@ ---- components/eye_dropper/eye_dropper_view.cc.orig 2025-09-11 13:19:19 UTC +--- components/eye_dropper/eye_dropper_view.cc.orig 2025-10-28 14:29:43 UTC +++ components/eye_dropper/eye_dropper_view.cc -@@ -215,7 +215,7 @@ EyeDropperView::EyeDropperView(gfx::NativeView parent, +@@ -210,7 +210,7 @@ EyeDropperView::EyeDropperView(gfx::NativeView parent, // EyeDropper/WidgetDelegate. set_owned_by_client(OwnedByClientPassKey()); SetPreferredSize(GetSize()); -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Use TYPE_MENU for Linux to ensure that the eye dropper view is displayed // above the color picker. views::Widget::InitParams params( diff --git a/www/iridium/files/patch-components_feature__engagement_public_feature__configurations.cc b/www/iridium/files/patch-components_feature__engagement_public_feature__configurations.cc index 04879b93a773..e47948876a1b 100644 --- a/www/iridium/files/patch-components_feature__engagement_public_feature__configurations.cc +++ b/www/iridium/files/patch-components_feature__engagement_public_feature__configurations.cc @@ -1,30 +1,30 @@ ---- components/feature_engagement/public/feature_configurations.cc.orig 2025-09-11 13:19:19 UTC +--- components/feature_engagement/public/feature_configurations.cc.orig 2025-10-28 14:29:43 UTC +++ components/feature_engagement/public/feature_configurations.cc -@@ -100,7 +100,7 @@ std::optional CreateNewUserGestureInPro +@@ -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 -@@ -119,7 +119,7 @@ std::optional GetClientSideFeatureConfi +@@ -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; -@@ -1956,7 +1956,8 @@ std::optional GetClientSideFeatureConfi +@@ -1979,7 +1979,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/iridium/files/patch-components_feature__engagement_public_feature__constants.cc b/www/iridium/files/patch-components_feature__engagement_public_feature__constants.cc index 0fb266f3be81..d370b4b851e2 100644 --- a/www/iridium/files/patch-components_feature__engagement_public_feature__constants.cc +++ b/www/iridium/files/patch-components_feature__engagement_public_feature__constants.cc @@ -1,29 +1,29 @@ ---- components/feature_engagement/public/feature_constants.cc.orig 2025-09-11 13:19:19 UTC +--- components/feature_engagement/public/feature_constants.cc.orig 2025-10-28 14:29:43 UTC +++ components/feature_engagement/public/feature_constants.cc @@ -34,7 +34,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", -@@ -829,7 +829,7 @@ BASE_FEATURE(kDefaultBrowserTriggerCriteriaExperiment, +@@ -842,7 +842,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", -@@ -985,7 +985,7 @@ BASE_FEATURE(kIPHScalableIphGamingFeature, +@@ -1001,7 +1001,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/iridium/files/patch-components_feature__engagement_public_feature__constants.h b/www/iridium/files/patch-components_feature__engagement_public_feature__constants.h index 1834cb144b10..73014271c652 100644 --- a/www/iridium/files/patch-components_feature__engagement_public_feature__constants.h +++ b/www/iridium/files/patch-components_feature__engagement_public_feature__constants.h @@ -1,29 +1,29 @@ ---- components/feature_engagement/public/feature_constants.h.orig 2025-09-11 13:19:19 UTC +--- components/feature_engagement/public/feature_constants.h.orig 2025-10-28 14:29:43 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 -@@ -371,7 +371,7 @@ FEATURE_CONSTANTS_DECLARE_FEATURE(kDefaultBrowserTrigg +@@ -377,7 +377,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( -@@ -435,7 +435,7 @@ FEATURE_CONSTANTS_DECLARE_FEATURE(kIPHScalableIphHelpA +@@ -443,7 +443,7 @@ FEATURE_CONSTANTS_DECLARE_FEATURE(kIPHScalableIphHelpA FEATURE_CONSTANTS_DECLARE_FEATURE(kIPHScalableIphGamingFeature); #endif -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) FEATURE_CONSTANTS_DECLARE_FEATURE(kIPHDesktopPWAsLinkCapturingLaunch); FEATURE_CONSTANTS_DECLARE_FEATURE(kIPHDesktopPWAsLinkCapturingLaunchAppInTab); FEATURE_CONSTANTS_DECLARE_FEATURE(kIPHSupervisedUserProfileSigninFeature); diff --git a/www/iridium/files/patch-components_feature__engagement_public_feature__list.cc b/www/iridium/files/patch-components_feature__engagement_public_feature__list.cc index 238cc222f4df..4cdda82aa563 100644 --- a/www/iridium/files/patch-components_feature__engagement_public_feature__list.cc +++ b/www/iridium/files/patch-components_feature__engagement_public_feature__list.cc @@ -1,29 +1,29 @@ ---- components/feature_engagement/public/feature_list.cc.orig 2025-09-11 13:19:19 UTC +--- components/feature_engagement/public/feature_list.cc.orig 2025-10-28 14:29:43 UTC +++ components/feature_engagement/public/feature_list.cc -@@ -198,7 +198,7 @@ const base::Feature* const kAllFeatures[] = { - &kIPHiOSHomepageCustomizationNewBadge, +@@ -201,7 +201,7 @@ const base::Feature* const kAllFeatures[] = { + &kIPHiOSAIHubNewBadge, #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 -@@ -271,7 +271,7 @@ const base::Feature* const kAllFeatures[] = { +@@ -275,7 +275,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, -@@ -328,7 +328,7 @@ const base::Feature* const kAllFeatures[] = { +@@ -333,7 +333,7 @@ const base::Feature* const kAllFeatures[] = { &kIPHScalableIphGamingFeature, #endif // BUILDFLAG(IS_CHROMEOS) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) &kIPHDesktopPWAsLinkCapturingLaunch, &kIPHDesktopPWAsLinkCapturingLaunchAppInTab, &kIPHSupervisedUserProfileSigninFeature, diff --git a/www/iridium/files/patch-components_feature__engagement_public_feature__list.h b/www/iridium/files/patch-components_feature__engagement_public_feature__list.h index 21520ddd08eb..6d1c150d2cc9 100644 --- a/www/iridium/files/patch-components_feature__engagement_public_feature__list.h +++ b/www/iridium/files/patch-components_feature__engagement_public_feature__list.h @@ -1,58 +1,58 @@ ---- components/feature_engagement/public/feature_list.h.orig 2025-09-11 13:19:19 UTC +--- components/feature_engagement/public/feature_list.h.orig 2025-10-28 14:29:43 UTC +++ components/feature_engagement/public/feature_list.h -@@ -353,7 +353,7 @@ DEFINE_VARIATION_PARAM(kIPHiOSHomepageCustomizationNew +@@ -359,7 +359,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 -@@ -471,7 +471,8 @@ DEFINE_VARIATION_PARAM(kIPHTabGroupsSharedTabFeedbackF +@@ -479,7 +479,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"); -@@ -571,7 +572,7 @@ DEFINE_VARIATION_PARAM(kIPHScalableIphHelpAppBasedTenF +@@ -581,7 +582,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, -@@ -765,7 +766,7 @@ inline constexpr flags_ui::FeatureEntry::FeatureVariat +@@ -776,7 +777,7 @@ inline constexpr flags_ui::FeatureEntry::FeatureVariat VARIATION_ENTRY(kIPHiOSSafariImportFeature), VARIATION_ENTRY(kIPHIOSPageActionMenu), #elif BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) VARIATION_ENTRY(kIPHBatterySaverModeFeature), VARIATION_ENTRY(kIPHCompanionSidePanelFeature), VARIATION_ENTRY(kIPHCompanionSidePanelRegionSearchFeature), -@@ -825,7 +826,8 @@ inline constexpr flags_ui::FeatureEntry::FeatureVariat +@@ -837,7 +838,8 @@ inline constexpr flags_ui::FeatureEntry::FeatureVariat // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_FUCHSIA) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_FUCHSIA) || \ + BUILDFLAG(IS_BSD) VARIATION_ENTRY(kIPHAutofillAiOptInFeature), VARIATION_ENTRY(kIPHAutofillCreditCardBenefitFeature), VARIATION_ENTRY(kIPHAutofillCardInfoRetrievalSuggestionFeature), -@@ -879,7 +881,7 @@ inline constexpr flags_ui::FeatureEntry::FeatureVariat +@@ -892,7 +894,7 @@ inline constexpr flags_ui::FeatureEntry::FeatureVariat VARIATION_ENTRY(kIPHScalableIphGamingFeature), #endif // BUILDFLAG(IS_CHROMEOS) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) VARIATION_ENTRY(kIPHDesktopPWAsLinkCapturingLaunch), VARIATION_ENTRY(kIPHDesktopPWAsLinkCapturingLaunchAppInTab), VARIATION_ENTRY(kIPHSupervisedUserProfileSigninFeature), diff --git a/www/iridium/files/patch-components_feed_core_v2_proto__util.cc b/www/iridium/files/patch-components_feed_core_v2_proto__util.cc index 44663708b7ae..9a5484b48ee9 100644 --- a/www/iridium/files/patch-components_feed_core_v2_proto__util.cc +++ b/www/iridium/files/patch-components_feed_core_v2_proto__util.cc @@ -1,24 +1,24 @@ ---- components/feed/core/v2/proto_util.cc.orig 2025-09-11 13:19:19 UTC +--- components/feed/core/v2/proto_util.cc.orig 2025-10-28 14:29:43 UTC +++ components/feed/core/v2/proto_util.cc @@ -92,8 +92,8 @@ feedwire::Version GetPlatformVersionMessage() { int32_t major, minor, revision; base::SysInfo::OperatingSystemVersionNumbers(&major, &minor, &revision); - result.set_major(major); - result.set_minor(minor); + result.set_gmajor(major); + result.set_gminor(minor); result.set_revision(revision); #if BUILDFLAG(IS_ANDROID) - result.set_api_version(base::android::BuildInfo::GetInstance()->sdk_int()); + result.set_api_version(base::android::android_info::sdk_int()); @@ -108,8 +108,8 @@ feedwire::Version GetAppVersionMessage(const ChromeInf // Chrome's version is in the format: MAJOR,MINOR,BUILD,PATCH. const std::vector& numbers = chrome_info.version.components(); if (numbers.size() > 3) { - result.set_major(static_cast(numbers[0])); - result.set_minor(static_cast(numbers[1])); + result.set_gmajor(static_cast(numbers[0])); + result.set_gminor(static_cast(numbers[1])); result.set_build(static_cast(numbers[2])); result.set_revision(static_cast(numbers[3])); } diff --git a/www/iridium/files/patch-components_feed_core_v2_test_proto__printer.cc b/www/iridium/files/patch-components_feed_core_v2_test_proto__printer.cc index f5abdb3a86aa..b59e148e147e 100644 --- a/www/iridium/files/patch-components_feed_core_v2_test_proto__printer.cc +++ b/www/iridium/files/patch-components_feed_core_v2_test_proto__printer.cc @@ -1,13 +1,13 @@ ---- components/feed/core/v2/test/proto_printer.cc.orig 2025-05-07 06:48:23 UTC +--- components/feed/core/v2/test/proto_printer.cc.orig 2025-10-28 14:29:43 UTC +++ components/feed/core/v2/test/proto_printer.cc -@@ -158,8 +158,8 @@ class TextProtoPrinter { +@@ -159,8 +159,8 @@ class TextProtoPrinter { } TextProtoPrinter& operator<<(const feedwire::Version& v) { BeginMessage(); - PRINT_FIELD(major); - PRINT_FIELD(minor); + PRINT_FIELD(gmajor); + PRINT_FIELD(gminor); PRINT_FIELD(build); PRINT_FIELD(revision); PRINT_FIELD(architecture); diff --git a/www/iridium/files/patch-components_metrics_metrics__log.cc b/www/iridium/files/patch-components_metrics_metrics__log.cc index 5910ba2ed420..d621c1539fa8 100644 --- a/www/iridium/files/patch-components_metrics_metrics__log.cc +++ b/www/iridium/files/patch-components_metrics_metrics__log.cc @@ -1,38 +1,38 @@ ---- components/metrics/metrics_log.cc.orig 2025-09-11 13:19:19 UTC +--- components/metrics/metrics_log.cc.orig 2025-10-28 14:29:43 UTC +++ components/metrics/metrics_log.cc -@@ -58,7 +58,7 @@ +@@ -59,7 +59,7 @@ #include "base/win/current_module.h" #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "base/environment.h" #include "base/nix/xdg_util.h" #endif -@@ -154,7 +154,7 @@ void RecordCurrentTime( +@@ -155,7 +155,7 @@ void RecordCurrentTime( } } -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) metrics::SystemProfileProto::OS::XdgSessionType ToProtoSessionType( base::nix::SessionType session_type) { switch (session_type) { -@@ -439,7 +439,7 @@ void MetricsLog::RecordCoreSystemProfile( +@@ -447,7 +447,7 @@ void MetricsLog::RecordCoreSystemProfile( // OperatingSystemVersion refers to the ChromeOS release version. #if BUILDFLAG(IS_CHROMEOS) os->set_kernel_version(base::SysInfo::KernelVersion()); -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Linux operating system version is copied over into kernel version to be // consistent. os->set_kernel_version(base::SysInfo::OperatingSystemVersion()); -@@ -456,7 +456,7 @@ void MetricsLog::RecordCoreSystemProfile( +@@ -464,7 +464,7 @@ void MetricsLog::RecordCoreSystemProfile( os->set_build_number(base::SysInfo::GetIOSBuildNumber()); #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) std::unique_ptr env = base::Environment::Create(); os->set_xdg_session_type(ToProtoSessionType(base::nix::GetSessionType(*env))); os->set_xdg_current_desktop( diff --git a/www/iridium/files/patch-components_ntp__tiles_pref__names.h b/www/iridium/files/patch-components_ntp__tiles_pref__names.h new file mode 100644 index 000000000000..2dfccb9fa967 --- /dev/null +++ b/www/iridium/files/patch-components_ntp__tiles_pref__names.h @@ -0,0 +1,11 @@ +--- components/ntp_tiles/pref_names.h.orig 2025-10-28 14:29:43 UTC ++++ components/ntp_tiles/pref_names.h +@@ -48,7 +48,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/iridium/files/patch-components_optimization__guide_core_feature__registry_feature__registration.cc b/www/iridium/files/patch-components_optimization__guide_core_feature__registry_feature__registration.cc new file mode 100644 index 000000000000..88ce9c29c7fe --- /dev/null +++ b/www/iridium/files/patch-components_optimization__guide_core_feature__registry_feature__registration.cc @@ -0,0 +1,11 @@ +--- components/optimization_guide/core/feature_registry/feature_registration.cc.orig 2025-10-28 14:29:43 UTC ++++ components/optimization_guide/core/feature_registry/feature_registration.cc +@@ -75,7 +75,7 @@ BASE_FEATURE(kProductSpecificationsMqlsLogging, + BASE_FEATURE(kFormsClassificationsMqlsLogging, + "FormsClassificationsMqlsLogging", + 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/iridium/files/patch-components_optimization__guide_core_optimization__guide__features.cc b/www/iridium/files/patch-components_optimization__guide_core_optimization__guide__features.cc index c0dd62e288a8..f96ca59a7a9e 100644 --- a/www/iridium/files/patch-components_optimization__guide_core_optimization__guide__features.cc +++ b/www/iridium/files/patch-components_optimization__guide_core_optimization__guide__features.cc @@ -1,11 +1,11 @@ ---- components/optimization_guide/core/optimization_guide_features.cc.orig 2025-09-11 13:19:19 UTC +--- components/optimization_guide/core/optimization_guide_features.cc.orig 2025-10-28 14:29:43 UTC +++ components/optimization_guide/core/optimization_guide_features.cc -@@ -119,7 +119,7 @@ BASE_FEATURE(kOptimizationGuideModelExecution, +@@ -120,7 +120,7 @@ BASE_FEATURE(kOptimizationGuideModelExecution, BASE_FEATURE(kOptimizationGuideOnDeviceModel, "OptimizationGuideOnDeviceModel", #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/iridium/files/patch-components_os__crypt_sync_libsecret__util__linux.cc b/www/iridium/files/patch-components_os__crypt_sync_libsecret__util__linux.cc index 87ba7aec9b54..8e1f2be0c640 100644 --- a/www/iridium/files/patch-components_os__crypt_sync_libsecret__util__linux.cc +++ b/www/iridium/files/patch-components_os__crypt_sync_libsecret__util__linux.cc @@ -1,27 +1,27 @@ ---- components/os_crypt/sync/libsecret_util_linux.cc.orig 2025-05-07 06:48:23 UTC +--- components/os_crypt/sync/libsecret_util_linux.cc.orig 2025-10-28 14:29:43 UTC +++ components/os_crypt/sync/libsecret_util_linux.cc -@@ -185,16 +185,22 @@ bool LibsecretLoader::EnsureLibsecretLoaded() { +@@ -182,16 +182,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/iridium/files/patch-components_paint__preview_browser_paint__preview__client.cc b/www/iridium/files/patch-components_paint__preview_browser_paint__preview__client.cc index 017e24bd9013..1596c3fbb653 100644 --- a/www/iridium/files/patch-components_paint__preview_browser_paint__preview__client.cc +++ b/www/iridium/files/patch-components_paint__preview_browser_paint__preview__client.cc @@ -1,13 +1,13 @@ ---- components/paint_preview/browser/paint_preview_client.cc.orig 2025-05-07 06:48:23 UTC +--- components/paint_preview/browser/paint_preview_client.cc.orig 2025-10-28 14:29:43 UTC +++ components/paint_preview/browser/paint_preview_client.cc -@@ -326,8 +326,8 @@ void PaintPreviewClient::CapturePaintPreview( +@@ -478,8 +478,8 @@ void PaintPreviewClient::CapturePaintPreview( metadata->set_version(kPaintPreviewVersion); auto* chromeVersion = metadata->mutable_chrome_version(); const auto& current_chrome_version = version_info::GetVersion(); - chromeVersion->set_major(current_chrome_version.components()[0]); - chromeVersion->set_minor(current_chrome_version.components()[1]); + chromeVersion->set_gmajor(current_chrome_version.components()[0]); + chromeVersion->set_gminor(current_chrome_version.components()[1]); chromeVersion->set_build(current_chrome_version.components()[2]); chromeVersion->set_patch(current_chrome_version.components()[3]); - document_data.callback = std::move(callback); + document_data.callback = base::BindOnce( diff --git a/www/iridium/files/patch-components_paint__preview_browser_paint__preview__client__unittest.cc b/www/iridium/files/patch-components_paint__preview_browser_paint__preview__client__unittest.cc index 62b576b3e17a..790b8b8c81c1 100644 --- a/www/iridium/files/patch-components_paint__preview_browser_paint__preview__client__unittest.cc +++ b/www/iridium/files/patch-components_paint__preview_browser_paint__preview__client__unittest.cc @@ -1,13 +1,13 @@ ---- components/paint_preview/browser/paint_preview_client_unittest.cc.orig 2025-09-11 13:19:19 UTC +--- components/paint_preview/browser/paint_preview_client_unittest.cc.orig 2025-10-28 14:29:43 UTC +++ components/paint_preview/browser/paint_preview_client_unittest.cc -@@ -172,8 +172,8 @@ TEST_P(PaintPreviewClientRenderViewHostTest, CaptureMa +@@ -228,8 +228,8 @@ TEST_P(PaintPreviewClientRenderViewHostTest, CaptureMa metadata->set_version(kPaintPreviewVersion); auto* chromeVersion = metadata->mutable_chrome_version(); const auto& current_chrome_version = version_info::GetVersion(); - chromeVersion->set_major(current_chrome_version.components()[0]); - chromeVersion->set_minor(current_chrome_version.components()[1]); + chromeVersion->set_gmajor(current_chrome_version.components()[0]); + chromeVersion->set_gminor(current_chrome_version.components()[1]); chromeVersion->set_build(current_chrome_version.components()[2]); chromeVersion->set_patch(current_chrome_version.components()[3]); PaintPreviewFrameProto* main_frame = expected_proto.mutable_root_frame(); diff --git a/www/iridium/files/patch-components_paint__preview_player_player__compositor__delegate.cc b/www/iridium/files/patch-components_paint__preview_player_player__compositor__delegate.cc index 469a13980fcc..83996cb585db 100644 --- a/www/iridium/files/patch-components_paint__preview_player_player__compositor__delegate.cc +++ b/www/iridium/files/patch-components_paint__preview_player_player__compositor__delegate.cc @@ -1,13 +1,13 @@ ---- components/paint_preview/player/player_compositor_delegate.cc.orig 2025-05-07 06:48:23 UTC +--- components/paint_preview/player/player_compositor_delegate.cc.orig 2025-10-28 14:29:43 UTC +++ components/paint_preview/player/player_compositor_delegate.cc -@@ -433,8 +433,8 @@ void PlayerCompositorDelegate::ValidateProtoAndLoadAXT +@@ -435,8 +435,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/iridium/files/patch-components_password__manager_core_browser_features_password__features.cc b/www/iridium/files/patch-components_password__manager_core_browser_features_password__features.cc index 5ed437b855c3..c449beff5d83 100644 --- a/www/iridium/files/patch-components_password__manager_core_browser_features_password__features.cc +++ b/www/iridium/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-09-11 13:19:19 UTC +--- components/password_manager/core/browser/features/password_features.cc.orig 2025-10-28 14:29:43 UTC +++ components/password_manager/core/browser/features/password_features.cc -@@ -62,7 +62,7 @@ BASE_FEATURE(kClearUndecryptablePasswords, +@@ -70,7 +70,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 -@@ -131,7 +131,7 @@ BASE_FEATURE(kReuseDetectionBasedOnPasswordHashes, - "ReuseDetectionBasedOnPasswordHashes", - base::FEATURE_ENABLED_BY_DEFAULT); +@@ -139,7 +139,7 @@ BASE_FEATURE(kPasswordManagerLogToTerminal, + "PasswordManagerLogToTerminal", + 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, "RestartToGainAccessToKeychain", #if BUILDFLAG(IS_MAC) diff --git a/www/iridium/files/patch-components_password__manager_core_browser_features_password__features.h b/www/iridium/files/patch-components_password__manager_core_browser_features_password__features.h index 6a5e4a9469ef..c91bf4a3944b 100644 --- a/www/iridium/files/patch-components_password__manager_core_browser_features_password__features.h +++ b/www/iridium/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-09-11 13:19:19 UTC +--- components/password_manager/core/browser/features/password_features.h.orig 2025-10-28 14:29:43 UTC +++ components/password_manager/core/browser/features/password_features.h -@@ -131,7 +131,7 @@ BASE_DECLARE_FEATURE(kPasswordManagerLogToTerminal); - // Detects password reuse based on hashed password values. - BASE_DECLARE_FEATURE(kReuseDetectionBasedOnPasswordHashes); +@@ -138,7 +138,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/iridium/files/patch-components_password__manager_core_browser_password__autofill__manager.cc b/www/iridium/files/patch-components_password__manager_core_browser_password__autofill__manager.cc index 66b9cd15ce40..0aef82058f70 100644 --- a/www/iridium/files/patch-components_password__manager_core_browser_password__autofill__manager.cc +++ b/www/iridium/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-09-11 13:19:19 UTC +--- components/password_manager/core/browser/password_autofill_manager.cc.orig 2025-10-28 14:29:43 UTC +++ components/password_manager/core/browser/password_autofill_manager.cc -@@ -308,7 +308,7 @@ void PasswordAutofillManager::DidAcceptSuggestion( +@@ -314,7 +314,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, -@@ -538,7 +538,7 @@ void PasswordAutofillManager::DidNavigateMainFrame() { +@@ -544,7 +544,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/iridium/files/patch-components_password__manager_core_browser_password__autofill__manager.h b/www/iridium/files/patch-components_password__manager_core_browser_password__autofill__manager.h index 26decb6ba99d..656b73480b67 100644 --- a/www/iridium/files/patch-components_password__manager_core_browser_password__autofill__manager.h +++ b/www/iridium/files/patch-components_password__manager_core_browser_password__autofill__manager.h @@ -1,11 +1,11 @@ ---- components/password_manager/core/browser/password_autofill_manager.h.orig 2025-09-11 13:19:19 UTC +--- components/password_manager/core/browser/password_autofill_manager.h.orig 2025-10-28 14:29:43 UTC +++ components/password_manager/core/browser/password_autofill_manager.h -@@ -285,7 +285,7 @@ class PasswordAutofillManager : public autofill::Autof +@@ -287,7 +287,7 @@ class PasswordAutofillManager : public autofill::Autof // Stores the controller of warning popup UI on cross domain filling. #if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_CHROMEOS) || \ - BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID) + BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) std::unique_ptr cross_domain_confirmation_controller_; #endif diff --git a/www/iridium/files/patch-components_password__manager_core_browser_password__form__manager.cc b/www/iridium/files/patch-components_password__manager_core_browser_password__form__manager.cc index 88be79298371..b1ba65548ef4 100644 --- a/www/iridium/files/patch-components_password__manager_core_browser_password__form__manager.cc +++ b/www/iridium/files/patch-components_password__manager_core_browser_password__form__manager.cc @@ -1,29 +1,29 @@ ---- components/password_manager/core/browser/password_form_manager.cc.orig 2025-09-11 13:19:19 UTC +--- components/password_manager/core/browser/password_form_manager.cc.orig 2025-10-28 14:29:43 UTC +++ components/password_manager/core/browser/password_form_manager.cc -@@ -66,7 +66,7 @@ +@@ -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 -@@ -233,7 +233,7 @@ bool ShouldUploadCrowdsourcingVotes(const FormOrDigest +@@ -239,7 +239,7 @@ bool ShouldUploadCrowdsourcingVotes(const FormOrDigest return false; } -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) bool ShouldShowKeychainErrorBubble( std::optional backend_error) { if (!backend_error.has_value()) { -@@ -931,7 +931,7 @@ void PasswordFormManager::OnFetchCompleted() { +@@ -941,7 +941,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/iridium/files/patch-components_password__manager_core_browser_password__manager.cc b/www/iridium/files/patch-components_password__manager_core_browser_password__manager.cc index 2553c29b238c..0a1966dfea62 100644 --- a/www/iridium/files/patch-components_password__manager_core_browser_password__manager.cc +++ b/www/iridium/files/patch-components_password__manager_core_browser_password__manager.cc @@ -1,20 +1,20 @@ ---- components/password_manager/core/browser/password_manager.cc.orig 2025-09-11 13:19:19 UTC +--- components/password_manager/core/browser/password_manager.cc.orig 2025-10-28 14:29:43 UTC +++ components/password_manager/core/browser/password_manager.cc -@@ -586,7 +586,7 @@ void PasswordManager::RegisterProfilePrefs( - prefs::kAutofillableCredentialsAccountStoreLoginDatabase, false); +@@ -589,7 +589,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 -@@ -599,7 +599,7 @@ void PasswordManager::RegisterProfilePrefs( +@@ -602,7 +602,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/iridium/files/patch-components_password__manager_core_browser_password__manager__client.h b/www/iridium/files/patch-components_password__manager_core_browser_password__manager__client.h index efbaf1d83695..0ccfe8690323 100644 --- a/www/iridium/files/patch-components_password__manager_core_browser_password__manager__client.h +++ b/www/iridium/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-09-11 13:19:19 UTC +--- components/password_manager/core/browser/password_manager_client.h.orig 2025-10-28 14:29:43 UTC +++ components/password_manager/core/browser/password_manager_client.h -@@ -31,7 +31,7 @@ +@@ -30,7 +30,7 @@ #include "net/cert/cert_status_flags.h" #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "base/i18n/rtl.h" #include "components/password_manager/core/browser/password_cross_domain_confirmation_popup_controller.h" #include "ui/gfx/geometry/rect_f.h" -@@ -545,7 +545,7 @@ class PasswordManagerClient { +@@ -543,7 +543,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/iridium/files/patch-components_password__manager_core_browser_password__manual__fallback__flow.cc b/www/iridium/files/patch-components_password__manager_core_browser_password__manual__fallback__flow.cc index d66ecb30bdd3..2c5f7d005ad5 100644 --- a/www/iridium/files/patch-components_password__manager_core_browser_password__manual__fallback__flow.cc +++ b/www/iridium/files/patch-components_password__manager_core_browser_password__manual__fallback__flow.cc @@ -1,29 +1,29 @@ ---- components/password_manager/core/browser/password_manual_fallback_flow.cc.orig 2025-09-11 13:19:19 UTC +--- components/password_manager/core/browser/password_manual_fallback_flow.cc.orig 2025-10-28 14:29:43 UTC +++ components/password_manager/core/browser/password_manual_fallback_flow.cc @@ -46,7 +46,7 @@ std::u16string GetUsernameFromLabel(const std::u16stri } #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Returns the password form corresponding to the `payload` data. In most // cases there is only one such form stored, but having more than one or no // forms is also possible. If there is more than one form, showing any of them -@@ -300,7 +300,7 @@ void PasswordManualFallbackFlow::DidAcceptSuggestion( +@@ -304,7 +304,7 @@ void PasswordManualFallbackFlow::DidAcceptSuggestion( } case autofill::SuggestionType::kViewPasswordDetails: { #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) std::optional credentials = GetCorrespondingPasswordForm( suggestion.GetPayload(), -@@ -436,7 +436,7 @@ void PasswordManualFallbackFlow::EnsureCrossDomainPass +@@ -440,7 +440,7 @@ void PasswordManualFallbackFlow::EnsureCrossDomainPass const Suggestion::PasswordSuggestionDetails& payload, base::OnceClosure on_allowed) { #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) if (payload.is_cross_domain) { CHECK(payload.display_signon_realm); cross_domain_confirmation_popup_controller_ = diff --git a/www/iridium/files/patch-components_password__manager_core_browser_password__store_login__database__unittest.cc b/www/iridium/files/patch-components_password__manager_core_browser_password__store_login__database__unittest.cc index bb8764d3cf15..ba9def4391ef 100644 --- a/www/iridium/files/patch-components_password__manager_core_browser_password__store_login__database__unittest.cc +++ b/www/iridium/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-09-11 13:19:19 UTC +--- components/password_manager/core/browser/password_store/login_database_unittest.cc.orig 2025-10-28 14:29:43 UTC +++ components/password_manager/core/browser/password_store/login_database_unittest.cc -@@ -2305,7 +2305,7 @@ INSTANTIATE_TEST_SUITE_P(MigrationToVCurrent, +@@ -2306,7 +2306,7 @@ INSTANTIATE_TEST_SUITE_P(MigrationToVCurrent, testing::Bool())); #if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_IOS) || \ - BUILDFLAG(IS_WIN) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) class LoginDatabaseUndecryptableLoginsTest : public testing::Test { protected: LoginDatabaseUndecryptableLoginsTest() = default; diff --git a/www/iridium/files/patch-components_password__manager_core_browser_stub__password__manager__client.cc b/www/iridium/files/patch-components_password__manager_core_browser_stub__password__manager__client.cc index 9264bf357b95..79c8c19bc5e7 100644 --- a/www/iridium/files/patch-components_password__manager_core_browser_stub__password__manager__client.cc +++ b/www/iridium/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-06-19 07:37:57 UTC +--- components/password_manager/core/browser/stub_password_manager_client.cc.orig 2025-10-28 14:29:43 UTC +++ components/password_manager/core/browser/stub_password_manager_client.cc -@@ -206,7 +206,7 @@ version_info::Channel StubPasswordManagerClient::GetCh +@@ -211,7 +211,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/iridium/files/patch-components_password__manager_core_browser_stub__password__manager__client.h b/www/iridium/files/patch-components_password__manager_core_browser_stub__password__manager__client.h index 4d6cd994e691..eebabb11e7e9 100644 --- a/www/iridium/files/patch-components_password__manager_core_browser_stub__password__manager__client.h +++ b/www/iridium/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-06-19 07:37:57 UTC +--- components/password_manager/core/browser/stub_password_manager_client.h.orig 2025-10-28 14:29:43 UTC +++ components/password_manager/core/browser/stub_password_manager_client.h -@@ -77,7 +77,7 @@ class StubPasswordManagerClient : public PasswordManag +@@ -80,7 +80,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/iridium/files/patch-components_password__manager_core_common_password__manager__pref__names.h b/www/iridium/files/patch-components_password__manager_core_common_password__manager__pref__names.h index 90a3fe8dc9cf..e9753b709ac2 100644 --- a/www/iridium/files/patch-components_password__manager_core_common_password__manager__pref__names.h +++ b/www/iridium/files/patch-components_password__manager_core_common_password__manager__pref__names.h @@ -1,20 +1,20 @@ ---- components/password_manager/core/common/password_manager_pref_names.h.orig 2025-09-11 13:19:19 UTC +--- components/password_manager/core/common/password_manager_pref_names.h.orig 2025-10-28 14:29:43 UTC +++ components/password_manager/core/common/password_manager_pref_names.h @@ -59,7 +59,7 @@ inline constexpr char kCredentialProviderEnabledOnStar #endif #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_IOS) + BUILDFLAG(IS_IOS) || BUILDFLAG(IS_BSD) // Boolean pref controlled by the DeletingUndecryptablePasswordsEnabled policy. // If set to false it blocks deleting undecryptable passwords, otherwise the // deletion can happen. -@@ -285,7 +285,7 @@ inline constexpr char kAutofillableCredentialsAccountS +@@ -272,7 +272,7 @@ inline constexpr char kPasswordManagerPromoCardsList[] inline constexpr char kPasswordSharingEnabled[] = "password_manager.password_sharing_enabled"; -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Integer pref indicating how many times relaunch Chrome bubble was dismissed. inline constexpr char kRelaunchChromeBubbleDismissedCounter[] = "password_manager.relaunch_chrome_bubble_dismissed_counter"; diff --git a/www/iridium/files/patch-components_performance__manager_decorators_process__metrics__decorator.cc b/www/iridium/files/patch-components_performance__manager_decorators_process__metrics__decorator.cc index 9c36e173b12d..9cf7694134d8 100644 --- a/www/iridium/files/patch-components_performance__manager_decorators_process__metrics__decorator.cc +++ b/www/iridium/files/patch-components_performance__manager_decorators_process__metrics__decorator.cc @@ -1,11 +1,11 @@ ---- components/performance_manager/decorators/process_metrics_decorator.cc.orig 2025-05-07 06:48:23 UTC +--- components/performance_manager/decorators/process_metrics_decorator.cc.orig 2025-10-28 14:29:43 UTC +++ components/performance_manager/decorators/process_metrics_decorator.cc -@@ -264,7 +264,7 @@ void ProcessMetricsDecorator::DidGetMemoryUsage( - // RSS and PMF to each node proportionally to its V8 heap size. - uint64_t process_rss = process_dump_iter.os_dump().resident_set_kb; - process_node->set_resident_set_kb(process_rss); +@@ -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); -#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_kb( - process_dump_iter.os_dump().private_footprint_swap_kb); + process_node->set_private_swap( + base::KiB(process_dump_iter.os_dump().private_footprint_swap_kb)); #endif diff --git a/www/iridium/files/patch-components_policy_core_common_cloud_cloud__policy__client.cc b/www/iridium/files/patch-components_policy_core_common_cloud_cloud__policy__client.cc index 3173ed248876..73183420c223 100644 --- a/www/iridium/files/patch-components_policy_core_common_cloud_cloud__policy__client.cc +++ b/www/iridium/files/patch-components_policy_core_common_cloud_cloud__policy__client.cc @@ -1,11 +1,11 @@ ---- components/policy/core/common/cloud/cloud_policy_client.cc.orig 2025-09-11 13:19:19 UTC +--- components/policy/core/common/cloud/cloud_policy_client.cc.orig 2025-10-28 14:29:43 UTC +++ components/policy/core/common/cloud/cloud_policy_client.cc -@@ -756,7 +756,7 @@ void CloudPolicyClient::FetchPolicy(PolicyFetchReason +@@ -763,7 +763,7 @@ void CloudPolicyClient::FetchPolicy(PolicyFetchReason fetch_request->set_invalidation_payload(invalidation_payload_); } } -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Only set browser device identifier for CBCM Chrome cloud policy on // desktop. if (type_to_fetch.first == diff --git a/www/iridium/files/patch-components_regional__capabilities_regional__capabilities__switches.cc b/www/iridium/files/patch-components_regional__capabilities_regional__capabilities__switches.cc index a0aac68b74d8..291c2a568f80 100644 --- a/www/iridium/files/patch-components_regional__capabilities_regional__capabilities__switches.cc +++ b/www/iridium/files/patch-components_regional__capabilities_regional__capabilities__switches.cc @@ -1,11 +1,11 @@ ---- components/regional_capabilities/regional_capabilities_switches.cc.orig 2025-09-11 13:19:19 UTC +--- components/regional_capabilities/regional_capabilities_switches.cc.orig 2025-10-28 14:29:43 UTC +++ components/regional_capabilities/regional_capabilities_switches.cc -@@ -18,7 +18,7 @@ BASE_FEATURE(kMitigateLegacySearchEnginePromoOverlap, - base::FEATURE_DISABLED_BY_DEFAULT); +@@ -21,7 +21,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); diff --git a/www/iridium/files/patch-components_regional__capabilities_regional__capabilities__switches.h b/www/iridium/files/patch-components_regional__capabilities_regional__capabilities__switches.h index 07ccc2f03466..b4eec19ac8d1 100644 --- a/www/iridium/files/patch-components_regional__capabilities_regional__capabilities__switches.h +++ b/www/iridium/files/patch-components_regional__capabilities_regional__capabilities__switches.h @@ -1,11 +1,11 @@ ---- components/regional_capabilities/regional_capabilities_switches.h.orig 2025-09-11 13:19:19 UTC +--- components/regional_capabilities/regional_capabilities_switches.h.orig 2025-10-28 14:29:43 UTC +++ components/regional_capabilities/regional_capabilities_switches.h -@@ -33,7 +33,7 @@ inline constexpr char kEeaListCountryOverride[] = "EEA - BASE_DECLARE_FEATURE(kMitigateLegacySearchEnginePromoOverlap); +@@ -47,7 +47,7 @@ BASE_DECLARE_FEATURE(kMitigateLegacySearchEnginePromoO + BASE_DECLARE_FEATURE(kResolveRegionalCapabilitiesFromDevice); #endif -#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Use finch permanent country instead of finch latest country for fetching // country ID. BASE_DECLARE_FEATURE(kUseFinchPermanentCountryForFetchCountryId); diff --git a/www/iridium/files/patch-components_search__engines_template__url__service.cc b/www/iridium/files/patch-components_search__engines_template__url__service.cc index dc6170b11c4a..f23c97d37061 100644 --- a/www/iridium/files/patch-components_search__engines_template__url__service.cc +++ b/www/iridium/files/patch-components_search__engines_template__url__service.cc @@ -1,11 +1,11 @@ ---- components/search_engines/template_url_service.cc.orig 2025-09-11 13:19:19 UTC +--- components/search_engines/template_url_service.cc.orig 2025-10-28 14:29:43 UTC +++ components/search_engines/template_url_service.cc -@@ -3591,7 +3591,7 @@ bool TemplateURLService::MatchesDefaultSearchProvider( +@@ -3587,7 +3587,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/iridium/files/patch-components_signin_public_base_signin__switches.cc b/www/iridium/files/patch-components_signin_public_base_signin__switches.cc index 8131c83748f2..bc241f591e73 100644 --- a/www/iridium/files/patch-components_signin_public_base_signin__switches.cc +++ b/www/iridium/files/patch-components_signin_public_base_signin__switches.cc @@ -1,20 +1,20 @@ ---- components/signin/public/base/signin_switches.cc.orig 2025-09-11 13:19:19 UTC +--- components/signin/public/base/signin_switches.cc.orig 2025-10-28 14:29:43 UTC +++ components/signin/public/base/signin_switches.cc -@@ -73,7 +73,7 @@ BASE_FEATURE(kSmartEmailLineBreaking, +@@ -73,7 +73,7 @@ BASE_FEATURE(kSupportWebSigninAddSession, base::FEATURE_ENABLED_BY_DEFAULT); - #endif + #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 the History Sync Opt-in on Desktop. BASE_FEATURE(kEnableHistorySyncOptin, "EnableHistorySyncOptin", -@@ -292,7 +292,7 @@ BASE_FEATURE(kSyncEnableBookmarksInTransportMode, +@@ -293,7 +293,7 @@ BASE_FEATURE(kSyncEnableBookmarksInTransportMode, #endif // BUILDFLAG(IS_IOS) ); -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) BASE_FEATURE(kSignInPromoMaterialNextUI, "SignInPromoMaterialNextUI", base::FEATURE_DISABLED_BY_DEFAULT); diff --git a/www/iridium/files/patch-components_signin_public_base_signin__switches.h b/www/iridium/files/patch-components_signin_public_base_signin__switches.h index 51b8e2f569cf..f124c81a4bc3 100644 --- a/www/iridium/files/patch-components_signin_public_base_signin__switches.h +++ b/www/iridium/files/patch-components_signin_public_base_signin__switches.h @@ -1,20 +1,20 @@ ---- components/signin/public/base/signin_switches.h.orig 2025-09-11 13:19:19 UTC +--- components/signin/public/base/signin_switches.h.orig 2025-10-28 14:29:43 UTC +++ components/signin/public/base/signin_switches.h -@@ -61,7 +61,7 @@ COMPONENT_EXPORT(SIGNIN_SWITCHES) - BASE_DECLARE_FEATURE(kSmartEmailLineBreaking); - #endif +@@ -67,7 +67,7 @@ COMPONENT_EXPORT(SIGNIN_SWITCHES) + BASE_DECLARE_FEATURE(kSupportWebSigninAddSession); + #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) COMPONENT_EXPORT(SIGNIN_SWITCHES) BASE_DECLARE_FEATURE(kEnableHistorySyncOptin); COMPONENT_EXPORT(SIGNIN_SWITCHES) -@@ -222,7 +222,7 @@ BASE_DECLARE_FEATURE(kSyncEnableBookmarksInTransportMo +@@ -235,7 +235,7 @@ BASE_DECLARE_FEATURE(kSyncEnableBookmarksInTransportMo COMPONENT_EXPORT(SIGNIN_SWITCHES) bool IsExtensionsExplicitBrowserSigninEnabled(); -#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/iridium/files/patch-components_supervised__user_core_browser_supervised__user__preferences.cc b/www/iridium/files/patch-components_supervised__user_core_browser_supervised__user__preferences.cc index 8fb20d8826af..d494d06ce4de 100644 --- a/www/iridium/files/patch-components_supervised__user_core_browser_supervised__user__preferences.cc +++ b/www/iridium/files/patch-components_supervised__user_core_browser_supervised__user__preferences.cc @@ -1,11 +1,11 @@ ---- components/supervised_user/core/browser/supervised_user_preferences.cc.orig 2025-09-11 13:19:19 UTC +--- components/supervised_user/core/browser/supervised_user_preferences.cc.orig 2025-10-28 14:29:43 UTC +++ components/supervised_user/core/browser/supervised_user_preferences.cc -@@ -153,7 +153,7 @@ void RegisterProfilePrefs(PrefRegistrySimple* registry +@@ -149,7 +149,7 @@ void RegisterProfilePrefs(PrefRegistrySimple* registry registry->RegisterBooleanPref(prefs::kChildAccountStatusKnown, false); registry->RegisterStringPref(prefs::kFamilyLinkUserMemberRole, std::string()); #if BUILDFLAG(ENABLE_EXTENSIONS) && \ - (BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX)) + (BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) registry->RegisterIntegerPref( prefs::kLocallyParentApprovedExtensionsMigrationState, static_cast( diff --git a/www/iridium/files/patch-components_sync__preferences_common__syncable__prefs__database.cc b/www/iridium/files/patch-components_sync__preferences_common__syncable__prefs__database.cc index 4c5335ec7245..e17a7c1c70bd 100644 --- a/www/iridium/files/patch-components_sync__preferences_common__syncable__prefs__database.cc +++ b/www/iridium/files/patch-components_sync__preferences_common__syncable__prefs__database.cc @@ -1,11 +1,11 @@ ---- components/sync_preferences/common_syncable_prefs_database.cc.orig 2025-09-11 13:19:19 UTC +--- components/sync_preferences/common_syncable_prefs_database.cc.orig 2025-10-28 14:29:43 UTC +++ components/sync_preferences/common_syncable_prefs_database.cc -@@ -337,7 +337,7 @@ constexpr auto kCommonSyncablePrefsAllowlist = +@@ -349,7 +349,7 @@ constexpr auto kCommonSyncablePrefsAllowlist = syncer::PREFERENCES, PrefSensitivity::kNone, MergeBehavior::kNone}}, #endif // BUILDFLAG(IS_ANDROID) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ -- BUILDFLAG(IS_CHROMEOS) -+ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) +- 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/iridium/files/patch-components_sync_service_sync__prefs.cc b/www/iridium/files/patch-components_sync_service_sync__prefs.cc new file mode 100644 index 000000000000..9fc4f63c20e5 --- /dev/null +++ b/www/iridium/files/patch-components_sync_service_sync__prefs.cc @@ -0,0 +1,11 @@ +--- components/sync/service/sync_prefs.cc.orig 2025-10-28 14:29:43 UTC ++++ components/sync/service/sync_prefs.cc +@@ -840,7 +840,7 @@ bool SyncPrefs::MaybeMigratePrefsForSyncToSigninPart1( + update_selected_types_dict->EnsureDict( + signin::GaiaIdHash::FromGaiaId(gaia_id).ToBase64()); + +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + // Preserve the user's existing enabled state for Bookmarks, Reading List, + // and Preferences. Otherwise, use the default value, which will be true + // after `kReplaceSyncPromosWithSignInPromos`. diff --git a/www/iridium/files/patch-components_sync_service_sync__service__impl.cc b/www/iridium/files/patch-components_sync_service_sync__service__impl.cc new file mode 100644 index 000000000000..01f81d2da0e5 --- /dev/null +++ b/www/iridium/files/patch-components_sync_service_sync__service__impl.cc @@ -0,0 +1,11 @@ +--- components/sync/service/sync_service_impl.cc.orig 2025-10-28 14:29:43 UTC ++++ components/sync/service/sync_service_impl.cc +@@ -1328,7 +1328,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/iridium/files/patch-components_translate_core_common_translate__util.cc b/www/iridium/files/patch-components_translate_core_common_translate__util.cc index b9e5c65db162..f82aecc2206b 100644 --- a/www/iridium/files/patch-components_translate_core_common_translate__util.cc +++ b/www/iridium/files/patch-components_translate_core_common_translate__util.cc @@ -1,11 +1,11 @@ ---- components/translate/core/common/translate_util.cc.orig 2025-05-07 06:48:23 UTC +--- components/translate/core/common/translate_util.cc.orig 2025-10-28 14:29:43 UTC +++ components/translate/core/common/translate_util.cc -@@ -21,7 +21,7 @@ const char kSecurityOrigin[] = "trk:220:https://transl +@@ -20,7 +20,7 @@ const char kSecurityOrigin[] = "trk:220:https://transl BASE_FEATURE(kTFLiteLanguageDetectionEnabled, "TFLiteLanguageDetectionEnabled", #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_WIN) || \ - BUILDFLAG(IS_MAC) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_IOS) + BUILDFLAG(IS_MAC) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_IOS) || BUILDFLAG(IS_BSD) base::FEATURE_ENABLED_BY_DEFAULT #else base::FEATURE_DISABLED_BY_DEFAULT diff --git a/www/iridium/files/patch-components_url__formatter_spoof__checks_idn__spoof__checker.cc b/www/iridium/files/patch-components_url__formatter_spoof__checks_idn__spoof__checker.cc index 27af7d276aa2..d01ae012f1eb 100644 --- a/www/iridium/files/patch-components_url__formatter_spoof__checks_idn__spoof__checker.cc +++ b/www/iridium/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-05-07 06:48:23 UTC +--- components/url_formatter/spoof_checks/idn_spoof_checker.cc.orig 2025-10-28 14:29:43 UTC +++ components/url_formatter/spoof_checks/idn_spoof_checker.cc -@@ -298,7 +298,7 @@ IDNSpoofChecker::IDNSpoofChecker() { +@@ -299,7 +299,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/iridium/files/patch-components_variations_service_variations__service.cc b/www/iridium/files/patch-components_variations_service_variations__service.cc index ad21c66a40a9..6399a4970e18 100644 --- a/www/iridium/files/patch-components_variations_service_variations__service.cc +++ b/www/iridium/files/patch-components_variations_service_variations__service.cc @@ -1,11 +1,11 @@ ---- components/variations/service/variations_service.cc.orig 2025-09-11 13:19:19 UTC +--- components/variations/service/variations_service.cc.orig 2025-10-28 14:29:43 UTC +++ components/variations/service/variations_service.cc -@@ -99,7 +99,7 @@ std::string GetPlatformString() { +@@ -100,7 +100,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/iridium/files/patch-components_viz_service_frame__sinks_root__compositor__frame__sink__impl.cc b/www/iridium/files/patch-components_viz_service_frame__sinks_root__compositor__frame__sink__impl.cc index 99a46b67e835..8646ce726bcd 100644 --- a/www/iridium/files/patch-components_viz_service_frame__sinks_root__compositor__frame__sink__impl.cc +++ b/www/iridium/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-09-11 13:19:19 UTC +--- components/viz/service/frame_sinks/root_compositor_frame_sink_impl.cc.orig 2025-10-28 14:29:43 UTC +++ components/viz/service/frame_sinks/root_compositor_frame_sink_impl.cc @@ -142,7 +142,7 @@ RootCompositorFrameSinkImpl::Create( output_surface->SetNeedsSwapSizeNotifications( params->send_swap_size_notifications); -#if BUILDFLAG(IS_LINUX) && BUILDFLAG(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); -@@ -902,7 +902,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/iridium/files/patch-components_viz_service_frame__sinks_root__compositor__frame__sink__impl.h b/www/iridium/files/patch-components_viz_service_frame__sinks_root__compositor__frame__sink__impl.h index 15f09ad8a8b1..3504eed85412 100644 --- a/www/iridium/files/patch-components_viz_service_frame__sinks_root__compositor__frame__sink__impl.h +++ b/www/iridium/files/patch-components_viz_service_frame__sinks_root__compositor__frame__sink__impl.h @@ -1,11 +1,11 @@ ---- components/viz/service/frame_sinks/root_compositor_frame_sink_impl.h.orig 2025-09-11 13:19:19 UTC +--- components/viz/service/frame_sinks/root_compositor_frame_sink_impl.h.orig 2025-10-28 14:29:43 UTC +++ components/viz/service/frame_sinks/root_compositor_frame_sink_impl.h -@@ -223,7 +223,7 @@ class VIZ_SERVICE_EXPORT RootCompositorFrameSinkImpl +@@ -222,7 +222,7 @@ class VIZ_SERVICE_EXPORT RootCompositorFrameSinkImpl base::TimeDelta display_frame_interval_ = BeginFrameArgs::DefaultInterval(); base::TimeDelta preferred_frame_interval_; -#if BUILDFLAG(IS_LINUX) && BUILDFLAG(IS_OZONE_X11) +#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && BUILDFLAG(IS_OZONE_X11) gfx::Size last_swap_pixel_size_; #endif // BUILDFLAG(IS_LINUX) && BUILDFLAG(IS_OZONE_X11) diff --git a/www/iridium/files/patch-components_viz_service_gl_gpu__service__impl.cc b/www/iridium/files/patch-components_viz_service_gl_gpu__service__impl.cc index 7ea1b5467dca..cd4211c924f6 100644 --- a/www/iridium/files/patch-components_viz_service_gl_gpu__service__impl.cc +++ b/www/iridium/files/patch-components_viz_service_gl_gpu__service__impl.cc @@ -1,20 +1,20 @@ ---- components/viz/service/gl/gpu_service_impl.cc.orig 2025-09-11 13:19:19 UTC +--- components/viz/service/gl/gpu_service_impl.cc.orig 2025-10-28 14:29:43 UTC +++ components/viz/service/gl/gpu_service_impl.cc -@@ -501,7 +501,7 @@ void GpuServiceImpl::InitializeWithHostInternal( +@@ -502,7 +502,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 -@@ -1266,7 +1266,7 @@ bool GpuServiceImpl::OnBeginFrameDerivedImpl(const Beg +@@ -1269,7 +1269,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/iridium/files/patch-content_app_BUILD.gn b/www/iridium/files/patch-content_app_BUILD.gn index fba2fb036be1..830ef3ea0d99 100644 --- a/www/iridium/files/patch-content_app_BUILD.gn +++ b/www/iridium/files/patch-content_app_BUILD.gn @@ -1,15 +1,14 @@ ---- content/app/BUILD.gn.orig 2025-09-11 13:19:19 UTC +--- content/app/BUILD.gn.orig 2025-10-28 14:29:43 UTC +++ content/app/BUILD.gn -@@ -91,9 +91,9 @@ source_set("content_main_runner_app") { +@@ -91,7 +91,10 @@ source_set("content_main_runner_app") { "//third_party/tflite:buildflags", "//tools/v8_context_snapshot:buildflags", ] - if (build_tflite_with_xnnpack) { -- deps += [ "//third_party/cpuinfo" ] -- } -+# if (build_tflite_with_xnnpack) { -+# deps += [ "//third_party/cpuinfo" ] -+# } ++ if (is_bsd) { ++ deps += [ "//skia" ] ++ } ++ if (!is_bsd && build_tflite_with_xnnpack) { + deps += [ "//third_party/cpuinfo" ] + } } - - if (is_android && enable_javaless_renderers) { diff --git a/www/iridium/files/patch-content_app_content__main.cc b/www/iridium/files/patch-content_app_content__main.cc index 9ea0cdb7bfb3..a440bffb7ee8 100644 --- a/www/iridium/files/patch-content_app_content__main.cc +++ b/www/iridium/files/patch-content_app_content__main.cc @@ -1,20 +1,20 @@ ---- content/app/content_main.cc.orig 2025-09-11 13:19:19 UTC +--- content/app/content_main.cc.orig 2025-10-28 14:29:43 UTC +++ content/app/content_main.cc -@@ -225,7 +225,7 @@ NO_STACK_PROTECTOR int RunContentProcess( +@@ -217,7 +217,7 @@ NO_STACK_PROTECTOR int RunContentProcess( base::EnableTerminationOnOutOfMemory(); logging::RegisterAbslAbortHook(); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // The various desktop environments set this environment variable that // allows the dbus client library to connect directly to the bus. When this // variable is not set (test environments like xvfb-run), the dbus client -@@ -319,7 +319,7 @@ NO_STACK_PROTECTOR int RunContentProcess( +@@ -311,7 +311,7 @@ NO_STACK_PROTECTOR int RunContentProcess( #endif #endif -#if (BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX)) && !defined(COMPONENT_BUILD) +#if (BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX)) && !defined(COMPONENT_BUILD) && defined(notyet) base::subtle::EnableFDOwnershipEnforcement(true); #endif diff --git a/www/iridium/files/patch-content_app_content__main__runner__impl.cc b/www/iridium/files/patch-content_app_content__main__runner__impl.cc index f5a808657b76..064580224c24 100644 --- a/www/iridium/files/patch-content_app_content__main__runner__impl.cc +++ b/www/iridium/files/patch-content_app_content__main__runner__impl.cc @@ -1,149 +1,150 @@ ---- content/app/content_main_runner_impl.cc.orig 2025-09-11 13:19:19 UTC +--- content/app/content_main_runner_impl.cc.orig 2025-10-28 14:29:43 UTC +++ content/app/content_main_runner_impl.cc -@@ -150,18 +150,20 @@ +@@ -150,18 +150,21 @@ #include "content/browser/posix_file_descriptor_info_impl.h" #include "content/public/common/content_descriptors.h" -#if !BUILDFLAG(IS_MAC) +#if !BUILDFLAG(IS_MAC) && !BUILDFLAG(IS_BSD) #include "content/public/common/zygote/zygote_fork_delegate_linux.h" #endif #endif // BUILDFLAG(IS_POSIX) || BUILDFLAG(IS_FUCHSIA) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "base/files/file_path_watcher_inotify.h" #include "base/native_library.h" #include "base/rand_util.h" #include "content/public/common/zygote/sandbox_support_linux.h" +#if !BUILDFLAG(IS_BSD) #include "sandbox/policy/linux/sandbox_linux.h" +#endif ++#include "third_party/skia/experimental/rust_png/ffi/FFI.rs.h" #include "third_party/boringssl/src/include/openssl/crypto.h" #include "third_party/webrtc_overrides/init_webrtc.h" // nogncheck -@@ -185,6 +187,10 @@ +@@ -185,6 +188,10 @@ #include "media/base/media_switches.h" #endif +#if BUILDFLAG(IS_BSD) +#include "base/system/sys_info.h" +#endif + #if BUILDFLAG(IS_ANDROID) #include "base/system/sys_info.h" #include "content/browser/android/battery_metrics.h" -@@ -381,7 +387,7 @@ void InitializeZygoteSandboxForBrowserProcess( +@@ -381,7 +388,7 @@ void InitializeZygoteSandboxForBrowserProcess( } #endif // BUILDFLAG(USE_ZYGOTE) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #if BUILDFLAG(ENABLE_LIBRARY_CDMS) // Loads registered library CDMs but does not initialize them. This is needed by -@@ -400,7 +406,10 @@ void PreloadLibraryCdms() { +@@ -400,7 +407,10 @@ void PreloadLibraryCdms() { void PreSandboxInit() { // Ensure the /dev/urandom is opened. + // we use arc4random +#if !BUILDFLAG(IS_BSD) base::GetUrandomFD(); +#endif // May use sysinfo(), sched_getaffinity(), and open various /sys/ and /proc/ // files. -@@ -412,9 +421,16 @@ void PreSandboxInit() { +@@ -412,9 +422,16 @@ void PreSandboxInit() { // https://boringssl.googlesource.com/boringssl/+/HEAD/SANDBOXING.md CRYPTO_pre_sandbox_init(); +#if BUILDFLAG(IS_BSD) -+ // "cache" the amount of physical memory before pledge(2) -+ base::SysInfo::AmountOfPhysicalMemoryMB(); ++ // rust_png calls into sysctl so cache the cpu features before pledge(2) ++ rust_png::initialize_cpudetect(); +#endif + +#if !BUILDFLAG(IS_BSD) // Pre-read /proc/sys/fs/inotify/max_user_watches so it doesn't have to be // allowed by the sandbox. base::GetMaxNumberOfInotifyWatches(); +#endif #if BUILDFLAG(ENABLE_LIBRARY_CDMS) // Ensure access to the library CDMs before the sandbox is turned on. -@@ -634,7 +650,7 @@ NO_STACK_PROTECTOR int RunZygote(ContentMainDelegate* +@@ -634,7 +651,7 @@ NO_STACK_PROTECTOR int RunZygote(ContentMainDelegate* // Once Zygote forks and feature list initializes we can start a thread to // begin tracing immediately. -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) if (process_type == switches::kGpuProcess) { tracing::InitTracingPostFeatureList(/*enable_consumer=*/false, /*will_trace_thread_restart=*/true); -@@ -733,7 +749,7 @@ NO_STACK_PROTECTOR int RunOtherNamedProcessTypeMain( +@@ -733,7 +750,7 @@ NO_STACK_PROTECTOR int RunOtherNamedProcessTypeMain( base::HangWatcher::CreateHangWatcherInstance(); unregister_thread_closure = base::HangWatcher::RegisterThread( base::HangWatcher::ThreadType::kMainThread); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // On Linux/ChromeOS, the HangWatcher can't start until after the sandbox is // initialized, because the sandbox can't be started with multiple threads. // TODO(mpdenton): start the HangWatcher after the sandbox is initialized. -@@ -851,11 +867,10 @@ int ContentMainRunnerImpl::Initialize(ContentMainParam +@@ -851,11 +868,10 @@ int ContentMainRunnerImpl::Initialize(ContentMainParam base::GlobalDescriptors::kBaseDescriptor); #endif // !BUILDFLAG(IS_ANDROID) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_OPENBSD) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) g_fds->Set(kCrashDumpSignal, kCrashDumpSignal + base::GlobalDescriptors::kBaseDescriptor); -#endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || - // BUILDFLAG(IS_OPENBSD) +#endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) #endif // !BUILDFLAG(IS_WIN) -@@ -1007,7 +1022,7 @@ int ContentMainRunnerImpl::Initialize(ContentMainParam +@@ -1007,7 +1023,7 @@ int ContentMainRunnerImpl::Initialize(ContentMainParam // SeatbeltExecServer. CHECK(sandbox::Seatbelt::IsSandboxed()); } -#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // In sandboxed processes and zygotes, certain resource should be pre-warmed // as they cannot be initialized under a sandbox. In addition, loading these // resources in zygotes (including the unsandboxed zygote) allows them to be -@@ -1017,10 +1032,22 @@ int ContentMainRunnerImpl::Initialize(ContentMainParam +@@ -1017,10 +1033,22 @@ int ContentMainRunnerImpl::Initialize(ContentMainParam process_type == switches::kZygoteProcess) { PreSandboxInit(); } +#elif BUILDFLAG(IS_BSD) + PreSandboxInit(); #elif BUILDFLAG(IS_IOS) && !BUILDFLAG(IS_IOS_TVOS) ChildProcessEnterSandbox(); #endif +#if BUILDFLAG(IS_BSD) + if (process_type.empty()) { + sandbox::policy::SandboxLinux::Options sandbox_options; + sandbox::policy::SandboxLinux::GetInstance()->InitializeSandbox( + sandbox::policy::SandboxTypeFromCommandLine( + *base::CommandLine::ForCurrentProcess()), + sandbox::policy::SandboxLinux::PreSandboxHook(), sandbox_options); + } +#endif + delegate_->SandboxInitialized(process_type); #if BUILDFLAG(USE_ZYGOTE) -@@ -1122,6 +1149,11 @@ NO_STACK_PROTECTOR int ContentMainRunnerImpl::Run() { +@@ -1122,6 +1150,11 @@ NO_STACK_PROTECTOR int ContentMainRunnerImpl::Run() { content_main_params_.reset(); RegisterMainThreadFactories(); + +#if BUILDFLAG(IS_BSD) + if (!process_type.empty()) + PreSandboxInit(); +#endif if (process_type.empty()) return RunBrowser(std::move(main_params), start_minimal_browser); diff --git a/www/iridium/files/patch-content_browser_BUILD.gn b/www/iridium/files/patch-content_browser_BUILD.gn index ed6679540f73..b18d5ce3f295 100644 --- a/www/iridium/files/patch-content_browser_BUILD.gn +++ b/www/iridium/files/patch-content_browser_BUILD.gn @@ -1,57 +1,57 @@ ---- content/browser/BUILD.gn.orig 2025-09-13 16:56:52 UTC +--- content/browser/BUILD.gn.orig 2025-10-28 14:29:43 UTC +++ content/browser/BUILD.gn @@ -90,6 +90,7 @@ source_set("browser") { frameworks = [] ldflags = [] + # Iridium / node dep fixes deps = [ "//base", "//base:base_static", @@ -103,6 +104,7 @@ source_set("browser") { "//cc/animation", "//cc/mojo_embedder", "//cc/paint", + "//chrome/common:buildflags", "//components/attribution_reporting:data_host_mojom", "//components/attribution_reporting:mojom", "//components/back_forward_cache:enum", -@@ -132,6 +134,7 @@ source_set("browser") { +@@ -133,6 +135,7 @@ source_set("browser") { "//components/optimization_guide/core:features", "//components/optimization_guide/public/mojom", "//components/os_crypt/sync", + "//components/paint_preview/buildflags:buildflags", "//components/payments/content/icon", "//components/payments/mojom", "//components/performance_manager/scenario_api", -@@ -2599,6 +2602,14 @@ source_set("browser") { +@@ -2613,6 +2616,14 @@ source_set("browser") { ] } + if (is_bsd) { + sources += [ + "file_system_access/file_path_watcher/file_path_watcher_bsd.cc", + "file_system_access/file_path_watcher/file_path_watcher_kqueue.cc", + "file_system_access/file_path_watcher/file_path_watcher_kqueue.h", + ] + } + if (is_linux || is_chromeos) { sources -= [ "file_system_access/file_path_watcher/file_path_watcher_stub.cc" ] -@@ -2647,6 +2658,15 @@ source_set("browser") { +@@ -2661,6 +2672,15 @@ source_set("browser") { if (allow_oop_video_decoder) { sources += [ "media/oop_video_decoder_factory.cc" ] deps += [ "//media/mojo/mojom" ] + } + + if (is_bsd) { + sources -= [ + "file_system_access/file_path_watcher/file_path_watcher_inotify.cc", + "file_system_access/file_path_watcher/file_path_watcher_inotify.h", + "sandbox_ipc_linux.cc", + "sandbox_ipc_linux.h", + ] } if (is_chromeos) { diff --git a/www/iridium/files/patch-content_browser_browser__child__process__host__impl.cc b/www/iridium/files/patch-content_browser_browser__child__process__host__impl.cc index 3385ba9418fb..a72a9aa3e3dc 100644 --- a/www/iridium/files/patch-content_browser_browser__child__process__host__impl.cc +++ b/www/iridium/files/patch-content_browser_browser__child__process__host__impl.cc @@ -1,20 +1,20 @@ ---- content/browser/browser_child_process_host_impl.cc.orig 2025-09-11 13:19:19 UTC +--- content/browser/browser_child_process_host_impl.cc.orig 2025-10-28 14:29:43 UTC +++ content/browser/browser_child_process_host_impl.cc -@@ -297,6 +297,8 @@ void BrowserChildProcessHostImpl::LaunchWithoutExtraCo +@@ -296,6 +296,8 @@ void BrowserChildProcessHostImpl::LaunchWithoutExtraCo + switches::kIPCConnectionTimeout, switches::kLogBestEffortTasks, switches::kPerfettoDisableInterning, - switches::kTraceToConsole, + switches::kDisableUnveil, + switches::kTrk, }; cmd_line->CopySwitchesFrom(browser_command_line, kForwardSwitches); -@@ -650,7 +652,7 @@ void BrowserChildProcessHostImpl::OnProcessLaunched() +@@ -649,7 +651,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/iridium/files/patch-content_browser_browser__interface__binders.cc b/www/iridium/files/patch-content_browser_browser__interface__binders.cc deleted file mode 100644 index 8464d6383f8f..000000000000 --- a/www/iridium/files/patch-content_browser_browser__interface__binders.cc +++ /dev/null @@ -1,20 +0,0 @@ ---- content/browser/browser_interface_binders.cc.orig 2025-09-11 13:19:19 UTC -+++ content/browser/browser_interface_binders.cc -@@ -234,7 +234,7 @@ - #include "content/browser/xr/webxr_internals/webxr_internals_ui.h" - #endif - --#if BUILDFLAG(GOOGLE_CHROME_BRANDING) && (BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX)) -+#if BUILDFLAG(GOOGLE_CHROME_BRANDING) && (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" -@@ -271,7 +271,7 @@ shape_detection::mojom::ShapeDetectionService* GetShap - mojo::Remote> - remote; - if (!*remote) { --#if BUILDFLAG(GOOGLE_CHROME_BRANDING) && (BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX)) -+#if BUILDFLAG(GOOGLE_CHROME_BRANDING) && (BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) - ServiceProcessHost::Launch( - remote->BindNewPipeAndPassReceiver(), - ServiceProcessHost::Options() diff --git a/www/iridium/files/patch-content_browser_browser__main__loop.cc b/www/iridium/files/patch-content_browser_browser__main__loop.cc index d7f35cb15d38..fc703be8598c 100644 --- a/www/iridium/files/patch-content_browser_browser__main__loop.cc +++ b/www/iridium/files/patch-content_browser_browser__main__loop.cc @@ -1,37 +1,37 @@ ---- content/browser/browser_main_loop.cc.orig 2025-09-11 13:19:19 UTC +--- content/browser/browser_main_loop.cc.orig 2025-10-28 14:29:43 UTC +++ content/browser/browser_main_loop.cc -@@ -251,6 +251,12 @@ +@@ -252,6 +252,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 -@@ -551,6 +557,12 @@ int BrowserMainLoop::EarlyInitialization() { +@@ -552,6 +558,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 -@@ -583,7 +595,7 @@ int BrowserMainLoop::EarlyInitialization() { +@@ -584,7 +596,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/iridium/files/patch-content_browser_devtools_devtools__frontend__host__impl.cc b/www/iridium/files/patch-content_browser_devtools_devtools__frontend__host__impl.cc index 0c043aec0abe..d17b7590db67 100644 --- a/www/iridium/files/patch-content_browser_devtools_devtools__frontend__host__impl.cc +++ b/www/iridium/files/patch-content_browser_devtools_devtools__frontend__host__impl.cc @@ -1,38 +1,29 @@ ---- content/browser/devtools/devtools_frontend_host_impl.cc.orig 2025-09-11 13:19:19 UTC +--- content/browser/devtools/devtools_frontend_host_impl.cc.orig 2025-10-28 14:29:43 UTC +++ content/browser/devtools/devtools_frontend_host_impl.cc @@ -25,7 +25,7 @@ #include "third_party/blink/public/common/associated_interfaces/associated_interface_provider.h" #include "ui/base/webui/resource_path.h" -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "components/crash/content/browser/error_reporting/javascript_error_report.h" // nogncheck #include "components/crash/content/browser/error_reporting/js_error_report_processor.h" // nogncheck #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) @@ -37,7 +37,7 @@ const char kCompatibilityScriptSourceURL[] = "\n//# " "sourceURL=devtools://devtools/bundled/devtools_compatibility.js"; -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Remove the pieces of the URL we don't want to send back with the error // reports. In particular, do not send query or fragments as those can have // privacy-sensitive information in them. -@@ -107,7 +107,7 @@ DevToolsFrontendHostImpl::DevToolsFrontendHostImpl( - const HandleMessageCallback& handle_message_callback) - : web_contents_(WebContents::FromRenderFrameHost(frame_host)), - handle_message_callback_(handle_message_callback) { --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - Observe(web_contents_); - #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) - mojo::AssociatedRemote frontend; -@@ -132,7 +132,7 @@ void DevToolsFrontendHostImpl::DispatchEmbedderMessage +@@ -133,7 +133,7 @@ void DevToolsFrontendHostImpl::DispatchEmbedderMessage handle_message_callback_.Run(std::move(message)); } -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) void DevToolsFrontendHostImpl::OnDidAddMessageToConsole( RenderFrameHost* source_frame, blink::mojom::ConsoleMessageLevel log_level, diff --git a/www/iridium/files/patch-content_browser_devtools_devtools__frontend__host__impl.h b/www/iridium/files/patch-content_browser_devtools_devtools__frontend__host__impl.h index 58b8e32c2daa..45e36cd47100 100644 --- a/www/iridium/files/patch-content_browser_devtools_devtools__frontend__host__impl.h +++ b/www/iridium/files/patch-content_browser_devtools_devtools__frontend__host__impl.h @@ -1,11 +1,11 @@ ---- content/browser/devtools/devtools_frontend_host_impl.h.orig 2025-05-07 06:48:23 UTC +--- content/browser/devtools/devtools_frontend_host_impl.h.orig 2025-10-28 14:29:43 UTC +++ content/browser/devtools/devtools_frontend_host_impl.h -@@ -34,7 +34,7 @@ class DevToolsFrontendHostImpl : public DevToolsFronte +@@ -33,7 +33,7 @@ class DevToolsFrontendHostImpl : public DevToolsFronte void BadMessageReceived() override; -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) void OnDidAddMessageToConsole( RenderFrameHost* source_frame, blink::mojom::ConsoleMessageLevel log_level, diff --git a/www/iridium/files/patch-content_browser_gpu_gpu__process__host.cc b/www/iridium/files/patch-content_browser_gpu_gpu__process__host.cc index 7126ad5b02ca..00c96c803048 100644 --- a/www/iridium/files/patch-content_browser_gpu_gpu__process__host.cc +++ b/www/iridium/files/patch-content_browser_gpu_gpu__process__host.cc @@ -1,19 +1,19 @@ ---- content/browser/gpu/gpu_process_host.cc.orig 2025-06-19 07:37:57 UTC +--- content/browser/gpu/gpu_process_host.cc.orig 2025-10-28 14:29:43 UTC +++ content/browser/gpu/gpu_process_host.cc -@@ -275,6 +275,7 @@ static const char* const kSwitchNames[] = { +@@ -276,6 +276,7 @@ static const char* const kSwitchNames[] = { switches::kDisableSkiaGraphite, switches::kDisableSkiaGraphitePrecompilation, switches::kDisableLowEndDeviceMode, + switches::kDisableUnveil, switches::kProfilingAtStart, switches::kProfilingFile, switches::kProfilingFlush, -@@ -303,7 +304,7 @@ static const char* const kSwitchNames[] = { +@@ -301,7 +302,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/iridium/files/patch-content_browser_network__service__instance__impl.cc b/www/iridium/files/patch-content_browser_network__service__instance__impl.cc index 01e7f441cfbc..84ef3d271cca 100644 --- a/www/iridium/files/patch-content_browser_network__service__instance__impl.cc +++ b/www/iridium/files/patch-content_browser_network__service__instance__impl.cc @@ -1,29 +1,29 @@ ---- content/browser/network_service_instance_impl.cc.orig 2025-09-11 13:19:19 UTC +--- content/browser/network_service_instance_impl.cc.orig 2025-10-28 14:29:43 UTC +++ content/browser/network_service_instance_impl.cc -@@ -87,7 +87,7 @@ +@@ -88,7 +88,7 @@ #include "content/browser/network/network_service_process_tracker_win.h" #endif -#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "content/browser/system_dns_resolution/system_dns_resolver.h" #include "services/network/public/mojom/system_dns_resolution.mojom-forward.h" #endif -@@ -327,7 +327,7 @@ void CreateInProcessNetworkService( +@@ -332,7 +332,7 @@ void CreateInProcessNetworkService( std::move(receiver))); } -#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Runs a self-owned SystemDnsResolverMojoImpl. This is meant to run on a // high-priority thread pool. void RunSystemDnsResolverOnThreadPool( -@@ -394,7 +394,7 @@ network::mojom::NetworkServiceParamsPtr CreateNetworkS +@@ -399,7 +399,7 @@ network::mojom::NetworkServiceParamsPtr CreateNetworkS } #endif // BUILDFLAG(IS_POSIX) -#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (GetContentClient() ->browser() ->ShouldRunOutOfProcessSystemDnsResolution() && diff --git a/www/iridium/files/patch-content_browser_renderer__host_render__process__host__impl.cc b/www/iridium/files/patch-content_browser_renderer__host_render__process__host__impl.cc index 1b9b743943f4..a084f17c370f 100644 --- a/www/iridium/files/patch-content_browser_renderer__host_render__process__host__impl.cc +++ b/www/iridium/files/patch-content_browser_renderer__host_render__process__host__impl.cc @@ -1,56 +1,56 @@ ---- content/browser/renderer_host/render_process_host_impl.cc.orig 2025-09-11 13:19:19 UTC +--- content/browser/renderer_host/render_process_host_impl.cc.orig 2025-10-28 14:29:43 UTC +++ content/browser/renderer_host/render_process_host_impl.cc -@@ -224,7 +224,7 @@ +@@ -226,7 +226,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 -@@ -1114,7 +1114,7 @@ static constexpr size_t kUnknownPlatformProcessLimit = +@@ -1126,7 +1126,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; -@@ -1321,7 +1321,7 @@ RenderProcessHostImpl::IOThreadHostImpl::~IOThreadHost +@@ -1351,7 +1351,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) } -@@ -3416,7 +3416,7 @@ void RenderProcessHostImpl::AppendRendererCommandLine( +@@ -3459,7 +3459,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() && -@@ -3472,6 +3472,8 @@ void RenderProcessHostImpl::PropagateBrowserCommandLin +@@ -3515,6 +3515,8 @@ void RenderProcessHostImpl::PropagateBrowserCommandLin switches::kDisableSkiaRuntimeOpts, switches::kDisableSpeechAPI, switches::kDisableThreadedCompositing, + switches::kDisableUnveil, + switches::kTrk, switches::kDisableV8IdleTasks, switches::kDisableVideoCaptureUseGpuMemoryBuffer, switches::kDisableWebGLImageChromium, -@@ -5350,7 +5352,7 @@ uint64_t RenderProcessHostImpl::GetPrivateMemoryFootpr +@@ -5417,7 +5419,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/iridium/files/patch-content_browser_renderer__host_render__process__host__impl.h b/www/iridium/files/patch-content_browser_renderer__host_render__process__host__impl.h index 631ca3373efb..92b4316f3951 100644 --- a/www/iridium/files/patch-content_browser_renderer__host_render__process__host__impl.h +++ b/www/iridium/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-09-11 13:19:19 UTC +--- content/browser/renderer_host/render_process_host_impl.h.orig 2025-10-28 14:29:43 UTC +++ content/browser/renderer_host/render_process_host_impl.h @@ -101,7 +101,7 @@ #include "media/fuchsia_media_codec_provider_impl.h" #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "content/browser/child_thread_type_switcher_linux.h" #include "media/mojo/mojom/video_encode_accelerator.mojom.h" #endif -@@ -997,7 +997,7 @@ class CONTENT_EXPORT RenderProcessHostImpl +@@ -994,7 +994,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 }; -@@ -1240,7 +1240,7 @@ class CONTENT_EXPORT RenderProcessHostImpl +@@ -1237,7 +1237,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/iridium/files/patch-content_browser_renderer__host_render__view__host__impl.cc b/www/iridium/files/patch-content_browser_renderer__host_render__view__host__impl.cc index 7e7d1a911214..320e3da3c31b 100644 --- a/www/iridium/files/patch-content_browser_renderer__host_render__view__host__impl.cc +++ b/www/iridium/files/patch-content_browser_renderer__host_render__view__host__impl.cc @@ -1,11 +1,11 @@ ---- content/browser/renderer_host/render_view_host_impl.cc.orig 2025-09-11 13:19:19 UTC +--- content/browser/renderer_host/render_view_host_impl.cc.orig 2025-10-28 14:29:43 UTC +++ content/browser/renderer_host/render_view_host_impl.cc -@@ -275,7 +275,7 @@ void RenderViewHostImpl::GetPlatformSpecificPrefs( +@@ -277,7 +277,7 @@ void RenderViewHostImpl::GetPlatformSpecificPrefs( display::win::GetScreenWin()->GetSystemMetricsInDIP(SM_CYVSCROLL); prefs->arrow_bitmap_width_horizontal_scroll_bar_in_dips = display::win::GetScreenWin()->GetSystemMetricsInDIP(SM_CXHSCROLL); -#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) base::CommandLine* command_line = base::CommandLine::ForCurrentProcess(); if (command_line->HasSwitch(switches::kSystemFontFamily)) { prefs->system_font_family_name = diff --git a/www/iridium/files/patch-content_browser_renderer__host_render__widget__host__view__aura.cc b/www/iridium/files/patch-content_browser_renderer__host_render__widget__host__view__aura.cc index 19697918d7e5..6de09b798e2e 100644 --- a/www/iridium/files/patch-content_browser_renderer__host_render__widget__host__view__aura.cc +++ b/www/iridium/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-09-11 13:19:19 UTC +--- content/browser/renderer_host/render_widget_host_view_aura.cc.orig 2025-10-28 14:29:43 UTC +++ content/browser/renderer_host/render_widget_host_view_aura.cc @@ -122,7 +122,7 @@ #include "ui/gfx/gdi_util.h" #endif // BUILDFLAG(IS_WIN) -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "ui/accessibility/platform/browser_accessibility_auralinux.h" #include "ui/base/ime/linux/text_edit_command_auralinux.h" #include "ui/base/ime/text_input_flags.h" -@@ -479,7 +479,7 @@ gfx::NativeViewAccessible RenderWidgetHostViewAura::Ge +@@ -478,7 +478,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()) -@@ -1883,7 +1883,7 @@ bool RenderWidgetHostViewAura::ShouldDoLearning() { +@@ -1881,7 +1881,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) { -@@ -2866,7 +2866,7 @@ bool RenderWidgetHostViewAura::NeedsInputGrab() { +@@ -2864,7 +2864,7 @@ bool RenderWidgetHostViewAura::NeedsInputGrab() { } bool RenderWidgetHostViewAura::NeedsMouseCapture() { -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) return NeedsInputGrab(); #else return false; -@@ -3050,7 +3050,7 @@ void RenderWidgetHostViewAura::ForwardKeyboardEventWit +@@ -3048,7 +3048,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/iridium/files/patch-content_browser_service__host_utility__process__host.cc b/www/iridium/files/patch-content_browser_service__host_utility__process__host.cc index 4c9569b5fb24..a5ca672bb772 100644 --- a/www/iridium/files/patch-content_browser_service__host_utility__process__host.cc +++ b/www/iridium/files/patch-content_browser_service__host_utility__process__host.cc @@ -1,38 +1,38 @@ ---- content/browser/service_host/utility_process_host.cc.orig 2025-09-11 13:19:19 UTC +--- content/browser/service_host/utility_process_host.cc.orig 2025-10-28 14:29:43 UTC +++ content/browser/service_host/utility_process_host.cc @@ -68,7 +68,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 { 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; -@@ -494,7 +494,7 @@ bool UtilityProcessHost::StartProcess() { +@@ -495,7 +495,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) { -@@ -512,7 +512,7 @@ bool UtilityProcessHost::StartProcess() { +@@ -513,7 +513,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/iridium/files/patch-content_browser_shape__detection_shape__detection__service__host.cc b/www/iridium/files/patch-content_browser_shape__detection_shape__detection__service__host.cc new file mode 100644 index 000000000000..45e88fa66ba4 --- /dev/null +++ b/www/iridium/files/patch-content_browser_shape__detection_shape__detection__service__host.cc @@ -0,0 +1,20 @@ +--- content/browser/shape_detection/shape_detection_service_host.cc.orig 2025-10-28 14:29:43 UTC ++++ content/browser/shape_detection/shape_detection_service_host.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/iridium/files/patch-content_browser_theme__helper.cc b/www/iridium/files/patch-content_browser_theme__helper.cc new file mode 100644 index 000000000000..a1162ee17d6d --- /dev/null +++ b/www/iridium/files/patch-content_browser_theme__helper.cc @@ -0,0 +1,11 @@ +--- content/browser/theme_helper.cc.orig 2025-10-28 14:29:43 UTC ++++ content/browser/theme_helper.cc +@@ -27,7 +27,7 @@ mojom::UpdateSystemColorInfoParamsPtr MakeUpdateSystem + ui::NativeTheme* native_theme) { + mojom::UpdateSystemColorInfoParamsPtr params = + mojom::UpdateSystemColorInfoParams::New(); +-#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + params->accent_color = native_theme->user_color(); + #endif + diff --git a/www/iridium/files/patch-content_browser_zygote__host_zygote__host__impl__linux.cc b/www/iridium/files/patch-content_browser_zygote__host_zygote__host__impl__linux.cc index 5d4e9532f5f3..8ec19fc3b0f7 100644 --- a/www/iridium/files/patch-content_browser_zygote__host_zygote__host__impl__linux.cc +++ b/www/iridium/files/patch-content_browser_zygote__host_zygote__host__impl__linux.cc @@ -1,81 +1,81 @@ ---- content/browser/zygote_host/zygote_host_impl_linux.cc.orig 2025-05-07 06:48:23 UTC +--- content/browser/zygote_host/zygote_host_impl_linux.cc.orig 2025-10-28 14:29:43 UTC +++ content/browser/zygote_host/zygote_host_impl_linux.cc -@@ -23,8 +23,10 @@ +@@ -19,8 +19,10 @@ #include "build/build_config.h" #include "content/common/zygote/zygote_commands_linux.h" #include "content/common/zygote/zygote_communication_linux.h" +#if !BUILDFLAG(IS_BSD) #include "content/common/zygote/zygote_handle_impl_linux.h" #include "content/public/common/zygote/zygote_handle.h" +#endif #include "sandbox/linux/services/credentials.h" #include "sandbox/linux/services/namespace_sandbox.h" #include "sandbox/linux/suid/client/setuid_sandbox_host.h" -@@ -42,6 +44,7 @@ namespace content { +@@ -38,6 +40,7 @@ namespace content { namespace { +#if !BUILDFLAG(IS_BSD) // Receive a fixed message on fd and return the sender's PID. // Returns true if the message received matches the expected message. bool ReceiveFixedMessage(int fd, -@@ -64,6 +67,7 @@ bool ReceiveFixedMessage(int fd, +@@ -60,6 +63,7 @@ bool ReceiveFixedMessage(int fd, return false; return true; } +#endif } // namespace -@@ -73,9 +77,13 @@ ZygoteHost* ZygoteHost::GetInstance() { +@@ -69,9 +73,13 @@ ZygoteHost* ZygoteHost::GetInstance() { } ZygoteHostImpl::ZygoteHostImpl() +#if !BUILDFLAG(IS_BSD) : use_namespace_sandbox_(false), use_suid_sandbox_(false), use_suid_sandbox_for_adj_oom_score_(false), +#else + : +#endif sandbox_binary_(), zygote_pids_lock_(), zygote_pids_() {} -@@ -88,6 +96,7 @@ ZygoteHostImpl* ZygoteHostImpl::GetInstance() { +@@ -84,6 +92,7 @@ ZygoteHostImpl* ZygoteHostImpl::GetInstance() { } void ZygoteHostImpl::Init(const base::CommandLine& command_line) { +#if !BUILDFLAG(IS_BSD) if (command_line.HasSwitch(sandbox::policy::switches::kNoSandbox)) { return; } -@@ -142,6 +151,7 @@ void ZygoteHostImpl::Init(const base::CommandLine& com +@@ -138,6 +147,7 @@ void ZygoteHostImpl::Init(const base::CommandLine& com "you can try using --" << sandbox::policy::switches::kNoSandbox << "."; } +#endif } void ZygoteHostImpl::AddZygotePid(pid_t pid) { -@@ -166,6 +176,7 @@ pid_t ZygoteHostImpl::LaunchZygote( +@@ -162,6 +172,7 @@ pid_t ZygoteHostImpl::LaunchZygote( base::CommandLine* cmd_line, base::ScopedFD* control_fd, base::FileHandleMappingVector additional_remapped_fds) { +#if !BUILDFLAG(IS_BSD) int fds[2]; CHECK_EQ(0, socketpair(AF_UNIX, SOCK_SEQPACKET | SOCK_CLOEXEC, 0, fds)); CHECK(base::UnixDomainSocket::EnableReceiveProcessId(fds[0])); -@@ -234,9 +245,12 @@ pid_t ZygoteHostImpl::LaunchZygote( +@@ -230,9 +241,12 @@ pid_t ZygoteHostImpl::LaunchZygote( AddZygotePid(pid); return pid; +#else + return 0; +#endif } -#if !BUILDFLAG(IS_OPENBSD) +#if !BUILDFLAG(IS_BSD) void ZygoteHostImpl::AdjustRendererOOMScore(base::ProcessHandle pid, int score) { // 1) You can't change the oom_score_adj of a non-dumpable process diff --git a/www/iridium/files/patch-content_child_child__process.cc b/www/iridium/files/patch-content_child_child__process.cc index 196a5a7a8066..004b97b6b7b4 100644 --- a/www/iridium/files/patch-content_child_child__process.cc +++ b/www/iridium/files/patch-content_child_child__process.cc @@ -1,20 +1,20 @@ ---- content/child/child_process.cc.orig 2025-09-11 13:19:19 UTC +--- content/child/child_process.cc.orig 2025-10-28 14:29:43 UTC +++ content/child/child_process.cc -@@ -34,7 +34,7 @@ +@@ -35,7 +35,7 @@ #include "content/common/android/cpu_time_metrics.h" #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "content/child/sandboxed_process_thread_type_handler.h" #endif -@@ -192,7 +192,7 @@ void ChildProcess::set_main_thread(ChildThreadImpl* th +@@ -197,7 +197,7 @@ void ChildProcess::set_main_thread(ChildThreadImpl* th main_thread_.reset(thread); } -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) void ChildProcess::SetIOThreadType(base::ThreadType thread_type) { if (!io_thread_) { return; diff --git a/www/iridium/files/patch-content_gpu_gpu__main.cc b/www/iridium/files/patch-content_gpu_gpu__main.cc index bce7297245c9..677fad880a4e 100644 --- a/www/iridium/files/patch-content_gpu_gpu__main.cc +++ b/www/iridium/files/patch-content_gpu_gpu__main.cc @@ -1,73 +1,73 @@ ---- content/gpu/gpu_main.cc.orig 2025-09-11 13:19:19 UTC +--- content/gpu/gpu_main.cc.orig 2025-10-28 14:29:43 UTC +++ content/gpu/gpu_main.cc -@@ -107,10 +107,14 @@ +@@ -108,10 +108,14 @@ #include "sandbox/win/src/sandbox.h" #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "content/child/sandboxed_process_thread_type_handler.h" #include "content/common/gpu_pre_sandbox_hook_linux.h" +#if BUILDFLAG(IS_BSD) +#include "sandbox/policy/sandbox.h" +#else #include "sandbox/policy/linux/sandbox_linux.h" +#endif #include "sandbox/policy/sandbox_type.h" #endif -@@ -128,7 +132,7 @@ namespace content { +@@ -129,7 +133,7 @@ namespace content { namespace { -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) bool StartSandboxLinux(gpu::GpuWatchdogThread*, const gpu::GPUInfo*, const gpu::GpuPreferences&); -@@ -190,7 +194,7 @@ class ContentSandboxHelper : public gpu::GpuSandboxHel +@@ -191,7 +195,7 @@ class ContentSandboxHelper : public gpu::GpuSandboxHel const gpu::GPUInfo* gpu_info, const gpu::GpuPreferences& gpu_prefs) override { TRACE_EVENT("gpu,startup", "gpu_main::EnsureSandboxInitialized"); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) return StartSandboxLinux(watchdog_thread, gpu_info, gpu_prefs); #elif BUILDFLAG(IS_WIN) return StartSandboxWindows(sandbox_info_); -@@ -306,7 +310,7 @@ int GpuMain(MainFunctionParams parameters) { +@@ -307,7 +311,7 @@ int GpuMain(MainFunctionParams parameters) { std::make_unique( - gpu_preferences.message_pump_type); + gpu_preferences.message_pump_type, /*is_main_thread=*/true); } -#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #error "Unsupported Linux platform." #elif BUILDFLAG(IS_MAC) // Cross-process CoreAnimation requires a CFRunLoop to function at all, and -@@ -331,7 +335,8 @@ int GpuMain(MainFunctionParams parameters) { +@@ -332,7 +336,8 @@ int GpuMain(MainFunctionParams parameters) { base::PlatformThread::SetName("CrGpuMain"); mojo::InterfaceEndpointClient::SetThreadNameSuffixForMetrics("GpuMain"); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +// XXX BSD +#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)) && !BUILDFLAG(IS_BSD) // Thread type delegate of the process should be registered before // thread type change below for the main thread and for thread pool in // ChildProcess constructor. -@@ -479,7 +484,7 @@ int GpuMain(MainFunctionParams parameters) { +@@ -485,7 +490,7 @@ int GpuMain(MainFunctionParams parameters) { namespace { -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) bool StartSandboxLinux(gpu::GpuWatchdogThread* watchdog_thread, const gpu::GPUInfo* gpu_info, const gpu::GpuPreferences& gpu_prefs) { -@@ -527,7 +532,7 @@ bool StartSandboxLinux(gpu::GpuWatchdogThread* watchdo +@@ -533,7 +538,7 @@ bool StartSandboxLinux(gpu::GpuWatchdogThread* watchdo sandbox_options.accelerated_video_encode_enabled = !gpu_prefs.disable_accelerated_video_encode; -#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Video decoding of many video streams can use thousands of FDs as well as // Exo clients. // See https://crbug.com/1417237 diff --git a/www/iridium/files/patch-content_public_browser_content__browser__client.cc b/www/iridium/files/patch-content_public_browser_content__browser__client.cc index 9d567763294b..2712ebf78bb3 100644 --- a/www/iridium/files/patch-content_public_browser_content__browser__client.cc +++ b/www/iridium/files/patch-content_public_browser_content__browser__client.cc @@ -1,11 +1,11 @@ ---- content/public/browser/content_browser_client.cc.orig 2025-06-19 07:37:57 UTC +--- content/public/browser/content_browser_client.cc.orig 2025-10-28 14:29:43 UTC +++ content/public/browser/content_browser_client.cc -@@ -1394,7 +1394,7 @@ bool ContentBrowserClient::ShouldRunOutOfProcessSystem +@@ -1417,7 +1417,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/iridium/files/patch-content_public_common_content__features.cc b/www/iridium/files/patch-content_public_common_content__features.cc index 3e2c080be6e7..5a7143d94838 100644 --- a/www/iridium/files/patch-content_public_common_content__features.cc +++ b/www/iridium/files/patch-content_public_common_content__features.cc @@ -1,35 +1,36 @@ ---- content/public/common/content_features.cc.orig 2025-09-11 13:19:19 UTC +--- content/public/common/content_features.cc.orig 2025-10-28 14:29:43 UTC +++ content/public/common/content_features.cc -@@ -103,7 +103,7 @@ BASE_FEATURE(kAudioServiceLaunchOnStartup, +@@ -102,7 +102,7 @@ BASE_FEATURE(AudioServiceLaunchOnStartup, base::FEATUR + // Runs the audio service in a separate process. - BASE_FEATURE(kAudioServiceOutOfProcess, - "AudioServiceOutOfProcess", + BASE_FEATURE(AudioServiceOutOfProcess, -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) base::FEATURE_ENABLED_BY_DEFAULT #else base::FEATURE_DISABLED_BY_DEFAULT -@@ -1394,9 +1394,9 @@ BASE_FEATURE(kWebAssemblyTiering, - BASE_FEATURE(kWebAssemblyTrapHandler, - "WebAssemblyTrapHandler", +@@ -1164,9 +1164,10 @@ BASE_FEATURE(WebAssemblyTiering, base::FEATURE_ENABLED + // Enable WebAssembly trap handler. + BASE_FEATURE(WebAssemblyTrapHandler, #if ((BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_WIN) || \ - BUILDFLAG(IS_MAC)) && \ + BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD)) && \ defined(ARCH_CPU_X86_64)) || \ - ((BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC)) && \ -+ ((BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD)) && \ ++ ((BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || \ ++ BUILDFLAG(IS_BSD)) && \ defined(ARCH_CPU_ARM64)) base::FEATURE_ENABLED_BY_DEFAULT #else -@@ -1453,7 +1453,11 @@ BASE_FEATURE(kWebUIJSErrorReportingExtended, +@@ -1214,7 +1215,11 @@ BASE_FEATURE(WebUIJSErrorReportingExtended, base::FEAT // 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, + BASE_FEATURE(WebViewPrefetchHighestPrefetchPriority, diff --git a/www/iridium/files/patch-content_public_common_content__switches.cc b/www/iridium/files/patch-content_public_common_content__switches.cc index a511dc669fbf..f032f4b06dee 100644 --- a/www/iridium/files/patch-content_public_common_content__switches.cc +++ b/www/iridium/files/patch-content_public_common_content__switches.cc @@ -1,22 +1,22 @@ ---- content/public/common/content_switches.cc.orig 2025-09-11 13:19:19 UTC +--- content/public/common/content_switches.cc.orig 2025-10-28 14:29:43 UTC +++ content/public/common/content_switches.cc @@ -347,6 +347,10 @@ const char kEnableIsolatedWebAppsInRenderer[] = // builds. const char kEnableLogging[] = "enable-logging"; +const char kDisableUnveil[] = "disable-unveil"; + +const char kTrk[] = "trk"; + // 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. -@@ -946,7 +950,7 @@ const char kPreventResizingContentsForTesting[] = +@@ -940,7 +944,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/iridium/files/patch-content_public_common_content__switches.h b/www/iridium/files/patch-content_public_common_content__switches.h index 944d0cde85d8..f14d45d04074 100644 --- a/www/iridium/files/patch-content_public_common_content__switches.h +++ b/www/iridium/files/patch-content_public_common_content__switches.h @@ -1,20 +1,20 @@ ---- content/public/common/content_switches.h.orig 2025-09-11 13:19:19 UTC +--- content/public/common/content_switches.h.orig 2025-10-28 14:29:43 UTC +++ content/public/common/content_switches.h @@ -108,6 +108,8 @@ 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 kTrk[]; CONTENT_EXPORT extern const char kEnableNetworkInformationDownlinkMax[]; CONTENT_EXPORT extern const char kEnableCanvas2DLayers[]; CONTENT_EXPORT extern const char kEnablePluginPlaceholderTesting[]; -@@ -257,7 +259,7 @@ CONTENT_EXPORT extern const char kRendererWaitForJavaD +@@ -256,7 +258,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/iridium/files/patch-content_renderer_render__thread__impl.cc b/www/iridium/files/patch-content_renderer_render__thread__impl.cc index d2ab939b5848..0c87cd9db55c 100644 --- a/www/iridium/files/patch-content_renderer_render__thread__impl.cc +++ b/www/iridium/files/patch-content_renderer_render__thread__impl.cc @@ -1,38 +1,38 @@ ---- content/renderer/render_thread_impl.cc.orig 2025-09-11 13:19:19 UTC +--- content/renderer/render_thread_impl.cc.orig 2025-10-28 14:29:43 UTC +++ content/renderer/render_thread_impl.cc -@@ -203,6 +203,8 @@ +@@ -204,6 +204,8 @@ #if BUILDFLAG(IS_APPLE) #include +#elif BUILDFLAG(IS_BSD) +#include #else #include #endif -@@ -1026,7 +1028,7 @@ media::GpuVideoAcceleratorFactories* RenderThreadImpl: - kGpuStreamIdMedia, kGpuStreamPriorityMedia); +@@ -998,7 +1000,7 @@ media::GpuVideoAcceleratorFactories* RenderThreadImpl: + attributes, viz::command_buffer_metrics::ContextType::MEDIA); 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) && -@@ -1035,7 +1037,7 @@ media::GpuVideoAcceleratorFactories* RenderThreadImpl: +@@ -1007,7 +1009,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) && -@@ -1809,7 +1811,7 @@ RenderThreadImpl::CreateMediaMojoCodecFactory( +@@ -1772,7 +1774,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/iridium/files/patch-content_renderer_renderer__blink__platform__impl.cc b/www/iridium/files/patch-content_renderer_renderer__blink__platform__impl.cc index 48d1e8be0865..ba53f3b7d02e 100644 --- a/www/iridium/files/patch-content_renderer_renderer__blink__platform__impl.cc +++ b/www/iridium/files/patch-content_renderer_renderer__blink__platform__impl.cc @@ -1,45 +1,45 @@ ---- content/renderer/renderer_blink_platform_impl.cc.orig 2025-09-11 13:19:19 UTC +--- content/renderer/renderer_blink_platform_impl.cc.orig 2025-10-28 14:29:43 UTC +++ content/renderer/renderer_blink_platform_impl.cc @@ -124,7 +124,7 @@ #if BUILDFLAG(IS_MAC) #include "content/child/child_process_sandbox_support_impl_mac.h" -#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "content/child/child_process_sandbox_support_impl_linux.h" #include "content/child/sandboxed_process_thread_type_handler.h" #endif -@@ -193,13 +193,13 @@ RendererBlinkPlatformImpl::RendererBlinkPlatformImpl( +@@ -187,13 +187,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()); -@@ -224,7 +224,7 @@ RendererBlinkPlatformImpl::RendererBlinkPlatformImpl( +@@ -217,7 +217,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(); -@@ -297,7 +297,7 @@ RendererBlinkPlatformImpl::GetWebUIBundledCodeCacheRes +@@ -290,7 +290,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/iridium/files/patch-content_renderer_renderer__blink__platform__impl.h b/www/iridium/files/patch-content_renderer_renderer__blink__platform__impl.h index 3b71c6fceeee..0c05d1f4fdf8 100644 --- a/www/iridium/files/patch-content_renderer_renderer__blink__platform__impl.h +++ b/www/iridium/files/patch-content_renderer_renderer__blink__platform__impl.h @@ -1,11 +1,11 @@ ---- content/renderer/renderer_blink_platform_impl.h.orig 2025-09-11 13:19:19 UTC +--- content/renderer/renderer_blink_platform_impl.h.orig 2025-10-28 14:29:43 UTC +++ content/renderer/renderer_blink_platform_impl.h -@@ -273,7 +273,7 @@ class CONTENT_EXPORT RendererBlinkPlatformImpl : publi +@@ -278,7 +278,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/iridium/files/patch-content_shell_BUILD.gn b/www/iridium/files/patch-content_shell_BUILD.gn index f75dea71d4e2..3b6ef93701fd 100644 --- a/www/iridium/files/patch-content_shell_BUILD.gn +++ b/www/iridium/files/patch-content_shell_BUILD.gn @@ -1,11 +1,11 @@ ---- content/shell/BUILD.gn.orig 2025-09-11 13:19:19 UTC +--- content/shell/BUILD.gn.orig 2025-10-28 14:29:43 UTC +++ content/shell/BUILD.gn -@@ -1102,7 +1102,7 @@ group("content_shell_crash_test") { +@@ -1101,7 +1101,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/iridium/files/patch-content_shell_utility_shell__content__utility__client.cc b/www/iridium/files/patch-content_shell_utility_shell__content__utility__client.cc index ca511a01d5f9..8c238d6065b5 100644 --- a/www/iridium/files/patch-content_shell_utility_shell__content__utility__client.cc +++ b/www/iridium/files/patch-content_shell_utility_shell__content__utility__client.cc @@ -1,20 +1,20 @@ ---- content/shell/utility/shell_content_utility_client.cc.orig 2025-09-11 13:19:19 UTC +--- content/shell/utility/shell_content_utility_client.cc.orig 2025-10-28 14:29:43 UTC +++ content/shell/utility/shell_content_utility_client.cc -@@ -43,7 +43,7 @@ +@@ -39,7 +39,7 @@ #include "sandbox/policy/sandbox.h" #include "services/test/echo/echo_service.h" -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "content/test/sandbox_status_service.h" #endif -@@ -192,7 +192,7 @@ void ShellContentUtilityClient::ExposeInterfacesToBrow +@@ -189,7 +189,7 @@ void ShellContentUtilityClient::ExposeInterfacesToBrow binders->Add( &PowerMonitorTestImpl::MakeSelfOwnedReceiver, base::SingleThreadTaskRunner::GetCurrentDefault()); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) if (register_sandbox_status_helper_) { binders->Add( base::BindRepeating( diff --git a/www/iridium/files/patch-content_utility_on__device__model_on__device__model__sandbox__init.cc b/www/iridium/files/patch-content_utility_on__device__model_on__device__model__sandbox__init.cc index 26dda3b12ad1..43e16bc1f9ae 100644 --- a/www/iridium/files/patch-content_utility_on__device__model_on__device__model__sandbox__init.cc +++ b/www/iridium/files/patch-content_utility_on__device__model_on__device__model__sandbox__init.cc @@ -1,84 +1,93 @@ ---- content/utility/on_device_model/on_device_model_sandbox_init.cc.orig 2025-09-11 13:19:19 UTC +--- content/utility/on_device_model/on_device_model_sandbox_init.cc.orig 2025-10-28 14:29:43 UTC +++ content/utility/on_device_model/on_device_model_sandbox_init.cc @@ -17,16 +17,20 @@ #include "services/on_device_model/ml/gpu_blocklist.h" // nogncheck #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include #include "content/common/gpu_pre_sandbox_hook_linux.h" #include "gpu/config/gpu_info_collector.h" // nogncheck +#if BUILDFLAG(IS_BSD) +#include "sandbox/policy/sandbox.h" +#else #include "sandbox/policy/linux/sandbox_linux.h" #endif +#endif #if !BUILDFLAG(IS_FUCHSIA) && \ - !(BUILDFLAG(IS_LINUX) && BUILDFLAG(ENABLE_CAST_RECEIVER)) + !((BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && BUILDFLAG(ENABLE_CAST_RECEIVER)) #include "base/feature_list.h" #include "third_party/dawn/include/dawn/dawn_proc.h" // nogncheck #include "third_party/dawn/include/dawn/native/DawnNative.h" // nogncheck @@ -37,7 +41,7 @@ namespace on_device_model { namespace { -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) constexpr uint32_t kVendorIdAMD = 0x1002; constexpr uint32_t kVendorIdIntel = 0x8086; constexpr uint32_t kVendorIdNVIDIA = 0x10DE; @@ -66,13 +70,13 @@ void UpdateSandboxOptionsForGpu( #endif #if !BUILDFLAG(IS_FUCHSIA) && \ - !(BUILDFLAG(IS_LINUX) && BUILDFLAG(ENABLE_CAST_RECEIVER)) + !((BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && BUILDFLAG(ENABLE_CAST_RECEIVER)) // If this feature is enabled, a WebGPU device is created for each valid // adapter. This makes sure any relevant drivers or other libs are loaded before // enabling the sandbox. BASE_FEATURE(kOnDeviceModelWarmDrivers, "OnDeviceModelWarmDrivers", -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) base::FEATURE_ENABLED_BY_DEFAULT #else base::FEATURE_DISABLED_BY_DEFAULT -@@ -101,7 +105,7 @@ bool PreSandboxInit() { - #endif +@@ -82,7 +86,7 @@ BASE_FEATURE(kOnDeviceModelWarmDrivers, + bool ShouldWarmDrivers() { + #if BUILDFLAG(IS_FUCHSIA) || \ +- (BUILDFLAG(IS_LINUX) && BUILDFLAG(ENABLE_CAST_RECEIVER)) ++ ((BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && BUILDFLAG(ENABLE_CAST_RECEIVER)) + return false; + #else + bool is_gpu_not_blocklisted = true; +@@ -122,7 +126,7 @@ bool PreSandboxInit() { + // good measure we initialize a device instance for any adapter with an + // appropriate backend on top of any integrated or discrete GPU. #if !BUILDFLAG(IS_FUCHSIA) && \ - !(BUILDFLAG(IS_LINUX) && BUILDFLAG(ENABLE_CAST_RECEIVER)) + !((BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && BUILDFLAG(ENABLE_CAST_RECEIVER)) - if (base::FeatureList::IsEnabled(kOnDeviceModelWarmDrivers) - #if defined(ENABLE_ML_INTERNAL) - && !ml::IsGpuBlocked(ml::ChromeML::Get()->api(), /*log_histogram=*/false) -@@ -141,7 +145,7 @@ bool PreSandboxInit() { + dawnProcSetProcs(&dawn::native::GetProcs()); + auto instance = std::make_unique(); + const wgpu::RequestAdapterOptions adapter_options{ +@@ -154,7 +158,7 @@ bool PreSandboxInit() { return true; } -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) void AddSandboxLinuxOptions(sandbox::policy::SandboxLinux::Options& options) { // Make sure any necessary vendor-specific options are set. gpu::GPUInfo info; -@@ -153,6 +157,7 @@ void AddSandboxLinuxOptions(sandbox::policy::SandboxLi +@@ -166,6 +170,7 @@ void AddSandboxLinuxOptions(sandbox::policy::SandboxLi } bool PreSandboxHook(sandbox::policy::SandboxLinux::Options options) { +#if !BUILDFLAG(IS_BSD) std::vector file_permissions = content::FilePermissionsForGpu(options); file_permissions.push_back( -@@ -161,6 +166,7 @@ bool PreSandboxHook(sandbox::policy::SandboxLinux::Opt +@@ -174,6 +179,7 @@ bool PreSandboxHook(sandbox::policy::SandboxLinux::Opt sandbox::policy::SandboxLinux::GetInstance()->StartBrokerProcess( content::CommandSetForGPU(options), file_permissions, options); +#endif if (!content::LoadLibrariesForGpu(options)) { return false; diff --git a/www/iridium/files/patch-content_utility_services.cc b/www/iridium/files/patch-content_utility_services.cc index f4276f0d9407..6da5ff07ae0c 100644 --- a/www/iridium/files/patch-content_utility_services.cc +++ b/www/iridium/files/patch-content_utility_services.cc @@ -1,45 +1,46 @@ ---- content/utility/services.cc.orig 2025-09-11 13:19:19 UTC +--- content/utility/services.cc.orig 2025-10-28 14:29:43 UTC +++ content/utility/services.cc -@@ -74,13 +74,13 @@ +@@ -74,14 +74,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(GOOGLE_CHROME_BRANDING) && (BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX)) -+#if BUILDFLAG(GOOGLE_CHROME_BRANDING) && (BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) + #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(GOOGLE_CHROME_BRANDING) && BUILDFLAG(IS_CHROMEOS) -@@ -235,7 +235,7 @@ auto RunAudio(mojo::PendingReceiver receiver) { -@@ -432,7 +432,7 @@ void RegisterMainThreadServices(mojo::ServiceFactory& - services.Add(RunOnDeviceModel); +@@ -436,7 +436,7 @@ void RegisterMainThreadServices(mojo::ServiceFactory& } --#if BUILDFLAG(GOOGLE_CHROME_BRANDING) && (BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX)) -+#if BUILDFLAG(GOOGLE_CHROME_BRANDING) && (BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) + #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/iridium/files/patch-content_utility_utility__main.cc b/www/iridium/files/patch-content_utility_utility__main.cc index 93914073194a..4185a5f3a325 100644 --- a/www/iridium/files/patch-content_utility_utility__main.cc +++ b/www/iridium/files/patch-content_utility_utility__main.cc @@ -1,124 +1,124 @@ ---- content/utility/utility_main.cc.orig 2025-09-11 13:19:19 UTC +--- content/utility/utility_main.cc.orig 2025-10-28 14:29:43 UTC +++ content/utility/utility_main.cc @@ -39,17 +39,21 @@ #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 @@ #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 @@ 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 { 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( -@@ -284,7 +293,7 @@ int UtilityMain(MainFunctionParams parameters) { +@@ -285,7 +294,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 -@@ -299,7 +308,10 @@ int UtilityMain(MainFunctionParams parameters) { +@@ -300,7 +309,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 -@@ -331,7 +343,7 @@ int UtilityMain(MainFunctionParams parameters) { +@@ -332,7 +344,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); -@@ -347,7 +359,7 @@ int UtilityMain(MainFunctionParams parameters) { +@@ -348,7 +360,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 = -@@ -355,7 +367,7 @@ int UtilityMain(MainFunctionParams parameters) { +@@ -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); -@@ -390,6 +402,7 @@ int UtilityMain(MainFunctionParams parameters) { +@@ -391,6 +403,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 = -@@ -397,6 +410,11 @@ int UtilityMain(MainFunctionParams parameters) { +@@ -398,6 +411,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/iridium/files/patch-content_zygote_zygote__linux.cc b/www/iridium/files/patch-content_zygote_zygote__linux.cc index 3dc51f9df36d..bc8f2b8b002d 100644 --- a/www/iridium/files/patch-content_zygote_zygote__linux.cc +++ b/www/iridium/files/patch-content_zygote_zygote__linux.cc @@ -1,15 +1,15 @@ ---- content/zygote/zygote_linux.cc.orig 2025-05-07 06:48:23 UTC +--- content/zygote/zygote_linux.cc.orig 2025-10-28 14:29:43 UTC +++ content/zygote/zygote_linux.cc @@ -1,6 +1,7 @@ // Copyright 2012 The Chromium Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. +#if 0 #include "content/zygote/zygote_linux.h" -@@ -705,3 +706,4 @@ void Zygote::HandleReinitializeLoggingRequest(base::Pi +@@ -717,3 +718,4 @@ void Zygote::HandleReinitializeLoggingRequest(base::Pi } } // namespace content +#endif diff --git a/www/iridium/files/patch-extensions_browser_api_messaging_message__service.cc b/www/iridium/files/patch-extensions_browser_api_messaging_message__service.cc index 6418dd3c74b1..3edcd96c8c89 100644 --- a/www/iridium/files/patch-extensions_browser_api_messaging_message__service.cc +++ b/www/iridium/files/patch-extensions_browser_api_messaging_message__service.cc @@ -1,20 +1,20 @@ ---- extensions/browser/api/messaging/message_service.cc.orig 2025-09-11 13:19:19 UTC +--- extensions/browser/api/messaging/message_service.cc.orig 2025-10-28 14:29:43 UTC +++ extensions/browser/api/messaging/message_service.cc -@@ -82,7 +82,7 @@ namespace { +@@ -83,7 +83,7 @@ namespace { const char kReceivingEndDoesntExistError[] = "Could not establish connection. Receiving end does not exist."; #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) const char kMissingPermissionError[] = "Access to native messaging requires nativeMessaging permission."; const char kProhibitedByPoliciesError[] = -@@ -675,7 +675,7 @@ void MessageService::OpenChannelToNativeAppImpl( +@@ -676,7 +676,7 @@ void MessageService::OpenChannelToNativeAppImpl( return; #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) bool has_permission = extension->permissions_data()->HasAPIPermission( mojom::APIPermissionID::kNativeMessaging); if (!has_permission) { diff --git a/www/iridium/files/patch-extensions_common_api___permission__features.json b/www/iridium/files/patch-extensions_common_api___permission__features.json index 9ac55250f2a7..2d2d2a01a17b 100644 --- a/www/iridium/files/patch-extensions_common_api___permission__features.json +++ b/www/iridium/files/patch-extensions_common_api___permission__features.json @@ -1,187 +1,187 @@ ---- extensions/common/api/_permission_features.json.orig 2025-09-11 13:19:19 UTC +--- extensions/common/api/_permission_features.json.orig 2025-10-28 14:29:43 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"] }, - "diagnostics": [ - { -@@ -262,7 +262,7 @@ + "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 -@@ -284,12 +284,12 @@ +@@ -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 -@@ -326,13 +326,13 @@ +@@ -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 -@@ -441,7 +441,7 @@ +@@ -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 -@@ -486,7 +486,7 @@ +@@ -490,7 +490,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. -@@ -566,7 +566,7 @@ +@@ -570,7 +570,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. -@@ -578,13 +578,13 @@ +@@ -582,13 +582,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": [ { -@@ -672,13 +672,13 @@ +@@ -676,13 +676,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 } ], -@@ -687,13 +687,13 @@ +@@ -691,13 +691,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 } ], -@@ -721,7 +721,7 @@ +@@ -725,7 +725,7 @@ "channel": "stable", "extension_types": ["platform_app"], // "desktop_android" is not supported. - "platforms": ["chromeos", "linux", "mac", "win"] + "platforms": ["chromeos", "linux", "mac", "win", "openbsd", "freebsd"] }, { "channel": "dev", -@@ -807,7 +807,7 @@ +@@ -811,7 +811,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/iridium/files/patch-extensions_common_api_runtime.json b/www/iridium/files/patch-extensions_common_api_runtime.json index ebf0e687387d..8cebb1d85842 100644 --- a/www/iridium/files/patch-extensions_common_api_runtime.json +++ b/www/iridium/files/patch-extensions_common_api_runtime.json @@ -1,10 +1,12 @@ ---- extensions/common/api/runtime.json.orig 2025-05-07 06:48:23 UTC +--- extensions/common/api/runtime.json.orig 2025-10-28 14:29:43 UTC +++ extensions/common/api/runtime.json -@@ -86,6 +86,7 @@ +@@ -85,7 +85,8 @@ + {"name": "android", "description": "Specifies the Android operating system."}, {"name": "cros", "description": "Specifies the Chrome operating system."}, {"name": "linux", "description": "Specifies the Linux operating system."}, - {"name": "openbsd", "description": "Specifies the OpenBSD operating system."}, -+ {"name": "freebsd", "description": "Specifies the FreeBSD operating system."}, - {"name": "fuchsia", "description": "Specifies the Fuchsia operating system."} +- {"name": "openbsd", "description": "Specifies the OpenBSD operating system."} ++ {"name": "openbsd", "description": "Specifies the OpenBSD operating system."}, ++ {"name": "freebsd", "description": "Specifies the FreeBSD operating system."} ] }, + { diff --git a/www/iridium/files/patch-gpu_command__buffer_service_dawn__context__provider.cc b/www/iridium/files/patch-gpu_command__buffer_service_dawn__context__provider.cc index f144c619254a..1f1cf1accad3 100644 --- a/www/iridium/files/patch-gpu_command__buffer_service_dawn__context__provider.cc +++ b/www/iridium/files/patch-gpu_command__buffer_service_dawn__context__provider.cc @@ -1,11 +1,11 @@ ---- gpu/command_buffer/service/dawn_context_provider.cc.orig 2025-09-11 13:19:19 UTC +--- gpu/command_buffer/service/dawn_context_provider.cc.orig 2025-10-28 14:29:43 UTC +++ gpu/command_buffer/service/dawn_context_provider.cc -@@ -402,7 +402,7 @@ wgpu::BackendType DawnContextProvider::GetDefaultBacke +@@ -407,7 +407,7 @@ wgpu::BackendType DawnContextProvider::GetDefaultBacke return base::FeatureList::IsEnabled(features::kSkiaGraphiteDawnUseD3D12) ? wgpu::BackendType::D3D12 : wgpu::BackendType::D3D11; -#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) return wgpu::BackendType::Vulkan; #elif BUILDFLAG(IS_APPLE) return wgpu::BackendType::Metal; diff --git a/www/iridium/files/patch-gpu_command__buffer_service_gles2__cmd__decoder.cc b/www/iridium/files/patch-gpu_command__buffer_service_gles2__cmd__decoder.cc index a08c882bbaf4..871d3d87bee5 100644 --- a/www/iridium/files/patch-gpu_command__buffer_service_gles2__cmd__decoder.cc +++ b/www/iridium/files/patch-gpu_command__buffer_service_gles2__cmd__decoder.cc @@ -1,11 +1,11 @@ ---- gpu/command_buffer/service/gles2_cmd_decoder.cc.orig 2025-09-11 13:19:19 UTC +--- gpu/command_buffer/service/gles2_cmd_decoder.cc.orig 2025-10-28 14:29:43 UTC +++ gpu/command_buffer/service/gles2_cmd_decoder.cc -@@ -2851,7 +2851,7 @@ GLES2Decoder* GLES2Decoder::Create( +@@ -2852,7 +2852,7 @@ GLES2Decoder* GLES2Decoder::Create( } // Allow linux to run fuzzers. -#if BUILDFLAG(ENABLE_VALIDATING_COMMAND_DECODER) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(ENABLE_VALIDATING_COMMAND_DECODER) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) return new GLES2DecoderImpl(client, command_buffer_service, outputter, group); #else LOG(FATAL) << "Validating command decoder is not supported."; diff --git a/www/iridium/files/patch-gpu_command__buffer_service_shared__image_external__vk__image__backing.cc b/www/iridium/files/patch-gpu_command__buffer_service_shared__image_external__vk__image__backing.cc index d2f9803f1e5b..2da8ad0c845d 100644 --- a/www/iridium/files/patch-gpu_command__buffer_service_shared__image_external__vk__image__backing.cc +++ b/www/iridium/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-09-11 13:19:19 UTC +--- gpu/command_buffer/service/shared_image/external_vk_image_backing.cc.orig 2025-10-28 14:29:43 UTC +++ gpu/command_buffer/service/shared_image/external_vk_image_backing.cc -@@ -56,7 +56,7 @@ +@@ -58,7 +58,7 @@ #include "ui/gl/gl_version_info.h" #include "ui/gl/scoped_binders.h" -#if BUILDFLAG(IS_LINUX) && BUILDFLAG(USE_DAWN) +#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && BUILDFLAG(USE_DAWN) #include "gpu/command_buffer/service/shared_image/external_vk_image_dawn_representation.h" #if BUILDFLAG(DAWN_ENABLE_BACKEND_OPENGLES) #include "gpu/command_buffer/service/shared_image/dawn_gl_texture_representation.h" -@@ -696,7 +696,7 @@ std::unique_ptr ExternalVkIma +@@ -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/iridium/files/patch-gpu_command__buffer_service_shared__image_shared__image__factory.cc b/www/iridium/files/patch-gpu_command__buffer_service_shared__image_shared__image__factory.cc index 3415893a3964..c8064d7c6647 100644 --- a/www/iridium/files/patch-gpu_command__buffer_service_shared__image_shared__image__factory.cc +++ b/www/iridium/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-09-11 13:19:19 UTC +--- gpu/command_buffer/service/shared_image/shared_image_factory.cc.orig 2025-10-28 14:29:43 UTC +++ gpu/command_buffer/service/shared_image/shared_image_factory.cc @@ -50,7 +50,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 @@ -104,7 +104,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 @@ -125,7 +125,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; -@@ -297,7 +297,7 @@ SharedImageFactory::SharedImageFactory( +@@ -306,7 +306,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/iridium/files/patch-gpu_command__buffer_service_webgpu__decoder__impl.cc b/www/iridium/files/patch-gpu_command__buffer_service_webgpu__decoder__impl.cc index 3ada382d2658..167267f09d99 100644 --- a/www/iridium/files/patch-gpu_command__buffer_service_webgpu__decoder__impl.cc +++ b/www/iridium/files/patch-gpu_command__buffer_service_webgpu__decoder__impl.cc @@ -1,20 +1,20 @@ ---- gpu/command_buffer/service/webgpu_decoder_impl.cc.orig 2025-09-11 13:19:19 UTC +--- gpu/command_buffer/service/webgpu_decoder_impl.cc.orig 2025-10-28 14:29:43 UTC +++ gpu/command_buffer/service/webgpu_decoder_impl.cc -@@ -1741,7 +1741,7 @@ wgpu::Adapter WebGPUDecoderImpl::CreatePreferredAdapte +@@ -1747,7 +1747,7 @@ wgpu::Adapter WebGPUDecoderImpl::CreatePreferredAdapte backend_types = {wgpu::BackendType::D3D12}; #elif BUILDFLAG(IS_APPLE) backend_types = {wgpu::BackendType::Metal}; -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (shared_context_state_->GrContextIsVulkan() || shared_context_state_->IsGraphiteDawnVulkan()) { backend_types = {wgpu::BackendType::Vulkan}; -@@ -1986,7 +1986,7 @@ WebGPUDecoderImpl::AssociateMailboxDawn( +@@ -1992,7 +1992,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/iridium/files/patch-gpu_config_gpu__control__list.cc b/www/iridium/files/patch-gpu_config_gpu__control__list.cc index 4c34edd53839..09f99ddefbf7 100644 --- a/www/iridium/files/patch-gpu_config_gpu__control__list.cc +++ b/www/iridium/files/patch-gpu_config_gpu__control__list.cc @@ -1,11 +1,11 @@ ---- gpu/config/gpu_control_list.cc.orig 2025-09-11 13:19:19 UTC +--- gpu/config/gpu_control_list.cc.orig 2025-10-28 14:29:43 UTC +++ gpu/config/gpu_control_list.cc -@@ -843,7 +843,7 @@ GpuControlList::OsType GpuControlList::GetOsType() { +@@ -846,7 +846,7 @@ GpuControlList::OsType GpuControlList::GetOsType() { return kOsAndroid; #elif BUILDFLAG(IS_FUCHSIA) return kOsFuchsia; -#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_OPENBSD) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) return kOsLinux; #elif BUILDFLAG(IS_MAC) return kOsMacosx; diff --git a/www/iridium/files/patch-gpu_config_gpu__finch__features.cc b/www/iridium/files/patch-gpu_config_gpu__finch__features.cc index c1f5a9eb978e..55b041773c92 100644 --- a/www/iridium/files/patch-gpu_config_gpu__finch__features.cc +++ b/www/iridium/files/patch-gpu_config_gpu__finch__features.cc @@ -1,12 +1,12 @@ ---- gpu/config/gpu_finch_features.cc.orig 2025-09-11 13:19:19 UTC +--- gpu/config/gpu_finch_features.cc.orig 2025-10-28 14:29:43 UTC +++ gpu/config/gpu_finch_features.cc -@@ -156,7 +156,8 @@ BASE_FEATURE(kAllowHardwareBufferUsageFlagsFromVulkanF - BASE_FEATURE(kDefaultEnableGpuRasterization, - "DefaultEnableGpuRasterization", +@@ -125,7 +125,8 @@ BASE_FEATURE(AllowHardwareBufferUsageFlagsFromVulkanFo + // Android and Linux. + BASE_FEATURE(DefaultEnableGpuRasterization, #if BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_CHROMEOS) || \ - BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_LINUX) + BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_LINUX) || \ + BUILDFLAG(IS_BSD) base::FEATURE_ENABLED_BY_DEFAULT #else base::FEATURE_DISABLED_BY_DEFAULT diff --git a/www/iridium/files/patch-gpu_config_gpu__info__collector.cc b/www/iridium/files/patch-gpu_config_gpu__info__collector.cc index 1fdec90f2b95..1e0d6e58219a 100644 --- a/www/iridium/files/patch-gpu_config_gpu__info__collector.cc +++ b/www/iridium/files/patch-gpu_config_gpu__info__collector.cc @@ -1,11 +1,11 @@ ---- gpu/config/gpu_info_collector.cc.orig 2025-09-11 13:19:19 UTC +--- gpu/config/gpu_info_collector.cc.orig 2025-10-28 14:29:43 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", + static BASE_FEATURE(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/iridium/files/patch-gpu_vulkan_vulkan__util.cc b/www/iridium/files/patch-gpu_vulkan_vulkan__util.cc index fcce8d528eaa..e93fd8313c98 100644 --- a/www/iridium/files/patch-gpu_vulkan_vulkan__util.cc +++ b/www/iridium/files/patch-gpu_vulkan_vulkan__util.cc @@ -1,11 +1,11 @@ ---- gpu/vulkan/vulkan_util.cc.orig 2025-09-11 13:19:19 UTC +--- gpu/vulkan/vulkan_util.cc.orig 2025-10-28 14:29:43 UTC +++ gpu/vulkan/vulkan_util.cc -@@ -476,7 +476,7 @@ bool CheckVulkanCompatibilities( +@@ -481,7 +481,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/iridium/files/patch-headless_BUILD.gn b/www/iridium/files/patch-headless_BUILD.gn index 2cf8cf5d1d1c..b7a21f1d7480 100644 --- a/www/iridium/files/patch-headless_BUILD.gn +++ b/www/iridium/files/patch-headless_BUILD.gn @@ -1,11 +1,11 @@ ---- headless/BUILD.gn.orig 2025-09-11 13:19:19 UTC +--- headless/BUILD.gn.orig 2025-10-28 14:29:43 UTC +++ headless/BUILD.gn -@@ -478,7 +478,7 @@ component("headless_non_renderer") { +@@ -483,7 +483,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/iridium/files/patch-headless_lib_browser_headless__browser__main__parts__posix.cc b/www/iridium/files/patch-headless_lib_browser_headless__browser__main__parts__posix.cc index 02164792fa3c..f28ea628a446 100644 --- a/www/iridium/files/patch-headless_lib_browser_headless__browser__main__parts__posix.cc +++ b/www/iridium/files/patch-headless_lib_browser_headless__browser__main__parts__posix.cc @@ -1,39 +1,32 @@ ---- headless/lib/browser/headless_browser_main_parts_posix.cc.orig 2025-05-07 06:48:23 UTC +--- headless/lib/browser/headless_browser_main_parts_posix.cc.orig 2025-10-28 14:29:43 UTC +++ headless/lib/browser/headless_browser_main_parts_posix.cc -@@ -26,13 +26,13 @@ +@@ -26,7 +26,7 @@ #include "content/public/browser/browser_thread.h" #include "headless/lib/browser/headless_browser_impl.h" -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "base/command_line.h" #include "components/os_crypt/sync/key_storage_config_linux.h" #include "components/os_crypt/sync/os_crypt.h" - #include "headless/public/switches.h" - --#if BUILDFLAG(USE_DBUS) -+#if BUILDFLAG(USE_DBUS) && !BUILDFLAG(IS_BSD) - #include "device/bluetooth/dbus/bluez_dbus_manager.h" - #endif - -@@ -166,7 +166,7 @@ class BrowserShutdownHandler { +@@ -168,7 +168,7 @@ class BrowserShutdownHandler { } // namespace -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) constexpr char kProductName[] = "HeadlessChrome"; #endif -@@ -174,9 +174,9 @@ void HeadlessBrowserMainParts::PostCreateMainMessageLo +@@ -176,9 +176,9 @@ void HeadlessBrowserMainParts::PostCreateMainMessageLo BrowserShutdownHandler::Install(base::BindOnce( &HeadlessBrowserImpl::ShutdownWithExitCode, browser_->GetWeakPtr())); -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) -#if BUILDFLAG(USE_DBUS) +#if BUILDFLAG(USE_DBUS) && !BUILDFLAG(IS_BSD) - bluez::BluezDBusManager::Initialize(/*system_bus=*/nullptr); + bluez::BluezDBusManager::Initialize( + dbus_thread_linux::GetSharedSystemBus().get()); #endif - diff --git a/www/iridium/files/patch-headless_lib_browser_headless__web__contents__impl.cc b/www/iridium/files/patch-headless_lib_browser_headless__web__contents__impl.cc index 32178af77221..f2eac041f640 100644 --- a/www/iridium/files/patch-headless_lib_browser_headless__web__contents__impl.cc +++ b/www/iridium/files/patch-headless_lib_browser_headless__web__contents__impl.cc @@ -1,11 +1,11 @@ ---- headless/lib/browser/headless_web_contents_impl.cc.orig 2025-05-07 06:48:23 UTC +--- headless/lib/browser/headless_web_contents_impl.cc.orig 2025-10-28 14:29:43 UTC +++ headless/lib/browser/headless_web_contents_impl.cc -@@ -70,7 +70,7 @@ BASE_FEATURE(kPrerender2InHeadlessMode, +@@ -71,7 +71,7 @@ BASE_FEATURE(kPrerender2InHeadlessMode, 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/iridium/files/patch-ipc_ipc__message__utils.cc b/www/iridium/files/patch-ipc_ipc__message__utils.cc index f4f992fc97c0..863b2424cd0f 100644 --- a/www/iridium/files/patch-ipc_ipc__message__utils.cc +++ b/www/iridium/files/patch-ipc_ipc__message__utils.cc @@ -1,11 +1,11 @@ ---- ipc/ipc_message_utils.cc.orig 2025-05-07 06:48:23 UTC +--- ipc/ipc_message_utils.cc.orig 2025-10-28 14:29:43 UTC +++ ipc/ipc_message_utils.cc -@@ -399,7 +399,7 @@ void ParamTraits::Log(const param_type& +@@ -387,7 +387,7 @@ void ParamTraits::Log(const param_type& } #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)) void ParamTraits::Log(const param_type& p, std::string* l) { l->append(base::NumberToString(p)); diff --git a/www/iridium/files/patch-ipc_ipc__message__utils.h b/www/iridium/files/patch-ipc_ipc__message__utils.h index 6ce13511da78..305f8c67bd22 100644 --- a/www/iridium/files/patch-ipc_ipc__message__utils.h +++ b/www/iridium/files/patch-ipc_ipc__message__utils.h @@ -1,11 +1,11 @@ ---- ipc/ipc_message_utils.h.orig 2025-09-11 13:19:19 UTC +--- ipc/ipc_message_utils.h.orig 2025-10-28 14:29:43 UTC +++ ipc/ipc_message_utils.h -@@ -211,7 +211,7 @@ struct ParamTraits { +@@ -189,7 +189,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/iridium/files/patch-media_audio_BUILD.gn b/www/iridium/files/patch-media_audio_BUILD.gn index ba950660dc0b..08ca8176eb48 100644 --- a/www/iridium/files/patch-media_audio_BUILD.gn +++ b/www/iridium/files/patch-media_audio_BUILD.gn @@ -1,27 +1,27 @@ ---- media/audio/BUILD.gn.orig 2025-09-11 13:19:19 UTC +--- media/audio/BUILD.gn.orig 2025-10-28 14:29:43 UTC +++ media/audio/BUILD.gn -@@ -289,9 +289,23 @@ source_set("audio") { +@@ -291,9 +291,23 @@ source_set("audio") { deps += [ "//media/base/android:media_jni_headers" ] } - if (is_linux || is_chromeos) { + if ((is_linux || is_chromeos) && !is_bsd) { sources += [ "linux/audio_manager_linux.cc" ] } + + if (is_bsd) { + sources += [ "sndio/audio_manager_sndio.cc" ] + } + + if (use_sndio) { + libs += [ "sndio" ] + sources += [ + "sndio/sndio_input.cc", + "sndio/sndio_input.h", + "sndio/sndio_output.cc", + "sndio/sndio_output.h" + ] + } if (use_alsa) { libs += [ "asound" ] diff --git a/www/iridium/files/patch-media_base_media__switches.cc b/www/iridium/files/patch-media_base_media__switches.cc index 6a6eb620d3fa..e4a01ccfdeff 100644 --- a/www/iridium/files/patch-media_base_media__switches.cc +++ b/www/iridium/files/patch-media_base_media__switches.cc @@ -1,123 +1,122 @@ ---- media/base/media_switches.cc.orig 2025-09-11 13:19:19 UTC +--- media/base/media_switches.cc.orig 2025-10-28 14:29:43 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 -@@ -380,8 +380,8 @@ BASE_FEATURE(kUseSCContentSharingPicker, - "UseSCContentSharingPicker", - base::FEATURE_DISABLED_BY_DEFAULT); +@@ -358,14 +358,36 @@ BASE_FEATURE(MacCatapLoopbackAudioForScreenShare, + // is required to avoid recurring permission dialogs. + BASE_FEATURE(UseSCContentSharingPicker, base::FEATURE_DISABLED_BY_DEFAULT); #endif // BUILDFLAG(IS_MAC) - -#if BUILDFLAG(IS_LINUX) + +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Enables system audio mirroring using pulseaudio. - BASE_FEATURE(kPulseaudioLoopbackForCast, - "PulseaudioLoopbackForCast", -@@ -391,6 +391,28 @@ BASE_FEATURE(kPulseaudioLoopbackForCast, - BASE_FEATURE(kPulseaudioLoopbackForScreenShare, - "PulseaudioLoopbackForScreenShare", + BASE_FEATURE(PulseaudioLoopbackForCast, base::FEATURE_DISABLED_BY_DEFAULT); + + // Enables system audio sharing using pulseaudio. + BASE_FEATURE(PulseaudioLoopbackForScreenShare, base::FEATURE_DISABLED_BY_DEFAULT); + +BASE_FEATURE(kAudioBackend, + "AudioBackend", + base::FEATURE_ENABLED_BY_DEFAULT); + +constexpr base::FeatureParam::Option + kAudioBackendOptions[] = { + {AudioBackend::kAuto, + "auto"}, + {AudioBackend::kPulseAudio, "pulseaudio"}, + {AudioBackend::kSndio, "sndio"}, + {AudioBackend::kAlsa, "alsa"}}; + +const base::FeatureParam + kAudioBackendParam{ + &kAudioBackend, "audio-backend", +#if BUILDFLAG(IS_OPENBSD) + AudioBackend::kSndio, +#elif BUILDFLAG(IS_FREEBSD) + AudioBackend::kAuto, +#endif + &kAudioBackendOptions}; #endif // BUILDFLAG(IS_LINUX) // When enabled, MediaCapabilities will check with GPU Video Accelerator -@@ -705,7 +727,7 @@ BASE_FEATURE(kFileDialogsTuckPictureInPicture, +@@ -612,7 +634,7 @@ BASE_FEATURE(FileDialogsTuckPictureInPicture, + // Show toolbar button that opens dialog for controlling media sessions. - BASE_FEATURE(kGlobalMediaControls, - "GlobalMediaControls", + BASE_FEATURE(GlobalMediaControls, -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) base::FEATURE_ENABLED_BY_DEFAULT #else base::FEATURE_DISABLED_BY_DEFAULT -@@ -728,7 +750,7 @@ BASE_FEATURE(kGlobalMediaControlsUpdatedUI, +@@ -630,7 +652,7 @@ BASE_FEATURE(GlobalMediaControlsUpdatedUI, base::FEATU + #if !BUILDFLAG(IS_ANDROID) // If enabled, users can request Media Remoting without fullscreen-in-tab. - BASE_FEATURE(kMediaRemotingWithoutFullscreen, - "MediaRemotingWithoutFullscreen", + BASE_FEATURE(MediaRemotingWithoutFullscreen, -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) base::FEATURE_ENABLED_BY_DEFAULT #else base::FEATURE_DISABLED_BY_DEFAULT -@@ -740,7 +762,7 @@ BASE_FEATURE(kMediaRemotingWithoutFullscreen, - BASE_FEATURE(kGlobalMediaControlsPictureInPicture, - "GlobalMediaControlsPictureInPicture", +@@ -641,7 +663,7 @@ BASE_FEATURE(MediaRemotingWithoutFullscreen, + // Show picture-in-picture button in Global Media Controls. + BASE_FEATURE(GlobalMediaControlsPictureInPicture, #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) base::FEATURE_ENABLED_BY_DEFAULT #else base::FEATURE_DISABLED_BY_DEFAULT -@@ -775,7 +797,7 @@ BASE_FEATURE(kUnifiedAutoplay, - "UnifiedAutoplay", - base::FEATURE_ENABLED_BY_DEFAULT); +@@ -667,7 +689,7 @@ BASE_FEATURE(SuspendMutedAudio, base::FEATURE_ENABLED_ + // autoplay policy. + BASE_FEATURE(UnifiedAutoplay, base::FEATURE_ENABLED_BY_DEFAULT); -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Enable vaapi/v4l2 video decoding on linux. This is already enabled by default // on chromeos, but needs an experiment on linux. BASE_FEATURE(kAcceleratedVideoDecodeLinux, -@@ -848,7 +870,7 @@ BASE_FEATURE(kVSyncMjpegDecoding, - "VSyncMjpegDecoding", - base::FEATURE_DISABLED_BY_DEFAULT); +@@ -723,7 +745,7 @@ BASE_FEATURE(VaapiVp9SModeHWEncoding, base::FEATURE_EN + // Enables VSync aligned MJPEG decoding. + BASE_FEATURE(VSyncMjpegDecoding, base::FEATURE_DISABLED_BY_DEFAULT); #endif // defined(ARCH_CPU_X86_FAMILY) && BUILDFLAG(IS_CHROMEOS) -#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Enable H264 temporal layer encoding with V4L2 HW encoder on ChromeOS. - BASE_FEATURE(kV4L2H264TemporalLayerHWEncoding, - "V4L2H264TemporalLayerHWEncoding", -@@ -1444,7 +1466,7 @@ BASE_FEATURE(kUseOutOfProcessVideoDecoding, + BASE_FEATURE(V4L2H264TemporalLayerHWEncoding, + base::FEATURE_DISABLED_BY_DEFAULT); +@@ -1224,7 +1246,7 @@ BASE_FEATURE(UseOutOfProcessVideoDecoding, ); #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, -@@ -1526,7 +1548,7 @@ BASE_FEATURE(kRecordWebAudioEngagement, - "RecordWebAudioEngagement", - base::FEATURE_ENABLED_BY_DEFAULT); + BASE_FEATURE(UseOutOfProcessVideoEncoding, base::FEATURE_DISABLED_BY_DEFAULT); +@@ -1296,7 +1318,7 @@ BASE_FEATURE(RecordMediaEngagementScores, base::FEATUR + // Enables Media Engagement Index recording for Web Audio playbacks. + BASE_FEATURE(RecordWebAudioEngagement, base::FEATURE_ENABLED_BY_DEFAULT); -#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Reduces the number of buffers needed in the output video frame pool to // populate the Renderer pipeline for hardware accelerated VideoDecoder in // non-low latency scenarios. -@@ -1843,7 +1865,7 @@ bool IsSystemLoopbackCaptureSupported() { +@@ -1562,7 +1584,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/iridium/files/patch-media_base_media__switches.h b/www/iridium/files/patch-media_base_media__switches.h index 983fc1813849..d482e810b000 100644 --- a/www/iridium/files/patch-media_base_media__switches.h +++ b/www/iridium/files/patch-media_base_media__switches.h @@ -1,57 +1,57 @@ ---- media/base/media_switches.h.orig 2025-09-11 13:19:19 UTC +--- media/base/media_switches.h.orig 2025-10-28 14:29:43 UTC +++ media/base/media_switches.h -@@ -338,13 +338,25 @@ MEDIA_EXPORT BASE_DECLARE_FEATURE(kMediaRecorderHEVCSu +@@ -337,13 +337,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); -@@ -363,7 +375,7 @@ MEDIA_EXPORT BASE_DECLARE_FEATURE(kUnifiedAutoplay); +@@ -362,7 +374,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); -@@ -379,7 +391,7 @@ MEDIA_EXPORT BASE_DECLARE_FEATURE(kVaapiAV1TemporalLay +@@ -378,7 +390,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); -@@ -497,7 +509,7 @@ MEDIA_EXPORT BASE_DECLARE_FEATURE(kBackgroundListening +@@ -499,7 +511,7 @@ MEDIA_EXPORT BASE_DECLARE_FEATURE(kBackgroundListening MEDIA_EXPORT BASE_DECLARE_FEATURE(kUseOutOfProcessVideoDecoding); #endif // BUILDFLAG(ALLOW_OOP_VIDEO_DECODER) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) MEDIA_EXPORT BASE_DECLARE_FEATURE(kUseOutOfProcessVideoEncoding); #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) diff --git a/www/iridium/files/patch-media_base_video__frame.cc b/www/iridium/files/patch-media_base_video__frame.cc index f92055970689..eb7ad28935f0 100644 --- a/www/iridium/files/patch-media_base_video__frame.cc +++ b/www/iridium/files/patch-media_base_video__frame.cc @@ -1,47 +1,47 @@ ---- media/base/video_frame.cc.orig 2025-09-11 13:19:19 UTC +--- media/base/video_frame.cc.orig 2025-10-28 14:29:43 UTC +++ media/base/video_frame.cc @@ -87,7 +87,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 @@ -101,7 +101,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 && @@ -396,7 +396,7 @@ scoped_refptr VideoFrame::CreateFrameForMa 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(); -@@ -861,7 +861,7 @@ scoped_refptr VideoFrame::WrapExternalGpuM +@@ -860,7 +860,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, -@@ -1535,7 +1535,7 @@ scoped_refptr VideoFrame::shar +@@ -1547,7 +1547,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/iridium/files/patch-media_base_video__frame.h b/www/iridium/files/patch-media_base_video__frame.h index 312d5cbf551f..14d0a7512a3a 100644 --- a/www/iridium/files/patch-media_base_video__frame.h +++ b/www/iridium/files/patch-media_base_video__frame.h @@ -1,47 +1,47 @@ ---- media/base/video_frame.h.orig 2025-09-11 13:19:19 UTC +--- media/base/video_frame.h.orig 2025-10-28 14:29:43 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 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 -@@ -692,7 +692,7 @@ class MEDIA_EXPORT VideoFrame : public base::RefCounte +@@ -712,7 +712,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. -@@ -927,7 +927,7 @@ class MEDIA_EXPORT VideoFrame : public base::RefCounte +@@ -947,7 +947,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/iridium/files/patch-media_capture_video_linux_fake__v4l2__impl.cc b/www/iridium/files/patch-media_capture_video_linux_fake__v4l2__impl.cc index 9a12a92c1378..90b051f056ce 100644 --- a/www/iridium/files/patch-media_capture_video_linux_fake__v4l2__impl.cc +++ b/www/iridium/files/patch-media_capture_video_linux_fake__v4l2__impl.cc @@ -1,11 +1,11 @@ ---- media/capture/video/linux/fake_v4l2_impl.cc.orig 2025-09-11 13:19:19 UTC +--- media/capture/video/linux/fake_v4l2_impl.cc.orig 2025-10-28 14:29:43 UTC +++ media/capture/video/linux/fake_v4l2_impl.cc -@@ -570,7 +570,7 @@ int FakeV4L2Impl::close(int fd) { +@@ -571,7 +571,7 @@ int FakeV4L2Impl::close(int fd) { return kSuccessReturnValue; } -int FakeV4L2Impl::ioctl(int fd, int request, void* argp) { +int FakeV4L2Impl::ioctl(int fd, unsigned long request, void* argp) { base::AutoLock lock(lock_); auto device_iter = opened_devices_.find(fd); if (device_iter == opened_devices_.end()) diff --git a/www/iridium/files/patch-media_gpu_chromeos_platform__video__frame__utils.cc b/www/iridium/files/patch-media_gpu_chromeos_platform__video__frame__utils.cc index 3270cc8b8e19..3d144e4239cb 100644 --- a/www/iridium/files/patch-media_gpu_chromeos_platform__video__frame__utils.cc +++ b/www/iridium/files/patch-media_gpu_chromeos_platform__video__frame__utils.cc @@ -1,20 +1,20 @@ ---- media/gpu/chromeos/platform_video_frame_utils.cc.orig 2025-09-11 13:19:19 UTC +--- media/gpu/chromeos/platform_video_frame_utils.cc.orig 2025-10-28 14:29:43 UTC +++ media/gpu/chromeos/platform_video_frame_utils.cc @@ -71,7 +71,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 -@@ -192,7 +192,7 @@ class GbmDeviceWrapper { +@@ -176,7 +176,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/iridium/files/patch-media_gpu_test_raw__video.cc b/www/iridium/files/patch-media_gpu_test_raw__video.cc index 564e05b3b75c..e6c21bd0da00 100644 --- a/www/iridium/files/patch-media_gpu_test_raw__video.cc +++ b/www/iridium/files/patch-media_gpu_test_raw__video.cc @@ -1,11 +1,11 @@ ---- media/gpu/test/raw_video.cc.orig 2025-06-19 07:37:57 UTC +--- media/gpu/test/raw_video.cc.orig 2025-10-28 14:29:43 UTC +++ media/gpu/test/raw_video.cc -@@ -63,7 +63,7 @@ std::unique_ptr CreateMemoryMa +@@ -64,7 +64,7 @@ std::unique_ptr CreateMemoryMa base::File::FLAG_READ | base::File::FLAG_WRITE // On Windows FLAG_CREATE_ALWAYS will require FLAG_WRITE, and FLAG_APPEND // must not be specified. -#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) | base::File::FLAG_APPEND #endif // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) ), diff --git a/www/iridium/files/patch-media_gpu_vaapi_vaapi__wrapper.cc b/www/iridium/files/patch-media_gpu_vaapi_vaapi__wrapper.cc index b11e00e7fc29..adca30aba66a 100644 --- a/www/iridium/files/patch-media_gpu_vaapi_vaapi__wrapper.cc +++ b/www/iridium/files/patch-media_gpu_vaapi_vaapi__wrapper.cc @@ -1,11 +1,11 @@ ---- media/gpu/vaapi/vaapi_wrapper.cc.orig 2025-09-11 13:19:19 UTC +--- media/gpu/vaapi/vaapi_wrapper.cc.orig 2025-10-28 14:29:43 UTC +++ media/gpu/vaapi/vaapi_wrapper.cc -@@ -83,7 +83,7 @@ +@@ -85,7 +85,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/iridium/files/patch-media_mojo_mojom_video__frame__mojom__traits.cc b/www/iridium/files/patch-media_mojo_mojom_video__frame__mojom__traits.cc index 30992267d3a6..65f2d4c08904 100644 --- a/www/iridium/files/patch-media_mojo_mojom_video__frame__mojom__traits.cc +++ b/www/iridium/files/patch-media_mojo_mojom_video__frame__mojom__traits.cc @@ -1,38 +1,38 @@ ---- media/mojo/mojom/video_frame_mojom_traits.cc.orig 2025-09-11 13:19:19 UTC +--- media/mojo/mojom/video_frame_mojom_traits.cc.orig 2025-10-28 14:29:43 UTC +++ media/mojo/mojom/video_frame_mojom_traits.cc @@ -21,7 +21,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) -@@ -188,7 +188,7 @@ media::mojom::VideoFrameDataPtr MakeVideoFrameData( +@@ -182,7 +182,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. -@@ -219,7 +219,7 @@ media::mojom::VideoFrameDataPtr MakeVideoFrameData( +@@ -213,7 +213,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, -@@ -442,7 +442,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 -@@ -1052,7 +1052,7 @@ scoped_refptr GpuMemoryBufferVideoFramePoo +@@ -1080,7 +1080,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; -@@ -1220,7 +1220,7 @@ GpuMemoryBufferVideoFramePool::PoolImpl::GetOrCreateFr +@@ -1248,7 +1248,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/iridium/files/patch-media_video_renderable__gpu__memory__buffer__video__frame__pool.cc b/www/iridium/files/patch-media_video_renderable__gpu__memory__buffer__video__frame__pool.cc new file mode 100644 index 000000000000..119480503dbd --- /dev/null +++ b/www/iridium/files/patch-media_video_renderable__gpu__memory__buffer__video__frame__pool.cc @@ -0,0 +1,11 @@ +--- media/video/renderable_gpu_memory_buffer_video_frame_pool.cc.orig 2025-10-28 14:29:43 UTC ++++ media/video/renderable_gpu_memory_buffer_video_frame_pool.cc +@@ -196,7 +196,7 @@ bool FrameResources::Initialize(VideoPixelFormat forma + + #if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_CHROMEOS) + buffer_usage = gfx::BufferUsage::SCANOUT_VEA_CPU_READ; +-#elif BUILDFLAG(IS_LINUX) ++#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + // On Linux, GBM_BO_USE_LINEAR (implied by SCANOUT_CPU_READ_WRITE) can + // prevent GPU rendering on some drivers, notably NVIDIA's GBM driver, + // because it disables GBM_BO_USE_RENDERING. Use SCANOUT instead if diff --git a/www/iridium/files/patch-media_video_video__encode__accelerator__adapter.cc b/www/iridium/files/patch-media_video_video__encode__accelerator__adapter.cc index d60b29f71446..ecd15d3162a5 100644 --- a/www/iridium/files/patch-media_video_video__encode__accelerator__adapter.cc +++ b/www/iridium/files/patch-media_video_video__encode__accelerator__adapter.cc @@ -1,11 +1,11 @@ ---- media/video/video_encode_accelerator_adapter.cc.orig 2025-09-11 13:19:19 UTC +--- media/video/video_encode_accelerator_adapter.cc.orig 2025-10-28 14:29:43 UTC +++ media/video/video_encode_accelerator_adapter.cc -@@ -467,7 +467,7 @@ void VideoEncodeAcceleratorAdapter::InitializeOnAccele +@@ -468,7 +468,7 @@ void VideoEncodeAcceleratorAdapter::InitializeOnAccele auto format = PIXEL_FORMAT_I420; auto storage_type = VideoEncodeAccelerator::Config::StorageType::kShmem; -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Linux/ChromeOS require a special configuration to use dmabuf storage. // We need to keep sending frames with the same storage type. // Other platforms will happily mix GpuMemoryBuffer storage with shared-mem diff --git a/www/iridium/files/patch-media_video_video__encode__accelerator__adapter__test.cc b/www/iridium/files/patch-media_video_video__encode__accelerator__adapter__test.cc index 53ddc2ea9ce1..3471131656d0 100644 --- a/www/iridium/files/patch-media_video_video__encode__accelerator__adapter__test.cc +++ b/www/iridium/files/patch-media_video_video__encode__accelerator__adapter__test.cc @@ -1,38 +1,38 @@ ---- media/video/video_encode_accelerator_adapter_test.cc.orig 2025-05-07 06:48:23 UTC +--- media/video/video_encode_accelerator_adapter_test.cc.orig 2025-10-28 14:29:43 UTC +++ media/video/video_encode_accelerator_adapter_test.cc @@ -260,7 +260,7 @@ TEST_F(VideoEncodeAcceleratorAdapterTest, InitializeAf }); VideoPixelFormat expected_input_format = PIXEL_FORMAT_I420; -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) expected_input_format = PIXEL_FORMAT_NV12; #endif vea()->SetEncodingCallback(base::BindLambdaForTesting( @@ -369,7 +369,7 @@ TEST_F(VideoEncodeAcceleratorAdapterTest, FlushDuringI }); VideoPixelFormat expected_input_format = PIXEL_FORMAT_I420; -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) expected_input_format = PIXEL_FORMAT_NV12; #endif @@ -467,7 +467,7 @@ TEST_P(VideoEncodeAcceleratorAdapterTest, TwoFramesRes CreateGreenFrame(large_size, pixel_format, base::Milliseconds(2)); VideoPixelFormat expected_input_format = PIXEL_FORMAT_I420; -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) expected_input_format = PIXEL_FORMAT_NV12; #endif const gfx::ColorSpace expected_color_space = -@@ -674,7 +674,7 @@ TEST_F(VideoEncodeAcceleratorAdapterTest, +@@ -714,7 +714,7 @@ TEST_F(VideoEncodeAcceleratorAdapterTest, }); VideoPixelFormat expected_input_format = PIXEL_FORMAT_I420; -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) expected_input_format = PIXEL_FORMAT_NV12; #endif vea()->SetEncodingCallback(base::BindLambdaForTesting( diff --git a/www/iridium/files/patch-net_BUILD.gn b/www/iridium/files/patch-net_BUILD.gn index e080dbc957e0..d8d9879bf2b8 100644 --- a/www/iridium/files/patch-net_BUILD.gn +++ b/www/iridium/files/patch-net_BUILD.gn @@ -1,103 +1,103 @@ ---- net/BUILD.gn.orig 2025-09-13 16:56:52 UTC +--- net/BUILD.gn.orig 2025-10-28 14:29:43 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" ] } -@@ -1157,6 +1157,7 @@ component("net") { +@@ -1167,6 +1167,7 @@ component("net") { ":net_deps", "//components/miracle_parameter/common", "//components/network_time/time_tracker", + "//content/public/common:buildflags", "//net/http:transport_security_state_generated_files", "//third_party/simdutf", ] -@@ -1356,6 +1357,19 @@ component("net") { +@@ -1369,6 +1370,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", -@@ -1519,7 +1533,7 @@ component("net") { +@@ -1534,7 +1548,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", -@@ -2252,7 +2266,7 @@ static_library("test_support") { +@@ -2268,7 +2282,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", -@@ -3050,14 +3064,14 @@ target(_test_target_type, "net_unittests") { +@@ -3066,14 +3080,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", -@@ -3158,6 +3172,10 @@ target(_test_target_type, "net_unittests") { +@@ -3174,6 +3188,10 @@ target(_test_target_type, "net_unittests") { ] } + if (is_bsd) { + deps += [ "//sandbox/policy" ] + } + if (enable_websockets) { sources += [ "server/http_connection_unittest.cc", -@@ -3214,7 +3232,7 @@ target(_test_target_type, "net_unittests") { +@@ -3230,7 +3248,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" ] } -@@ -3344,7 +3362,7 @@ target(_test_target_type, "net_unittests") { +@@ -3360,7 +3378,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/iridium/files/patch-net_base_features.cc b/www/iridium/files/patch-net_base_features.cc index e5a3055fbc3c..1df204507da6 100644 --- a/www/iridium/files/patch-net_base_features.cc +++ b/www/iridium/files/patch-net_base_features.cc @@ -1,20 +1,20 @@ ---- net/base/features.cc.orig 2025-09-11 13:19:19 UTC +--- net/base/features.cc.orig 2025-10-28 14:29:43 UTC +++ net/base/features.cc -@@ -32,7 +32,7 @@ BASE_FEATURE(kCapReferrerToOriginOnCrossOrigin, - BASE_FEATURE(kAsyncDns, - "AsyncDns", +@@ -29,7 +29,7 @@ BASE_FEATURE(CapReferrerToOriginOnCrossOrigin, + + BASE_FEATURE(AsyncDns, #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 -@@ -711,7 +711,7 @@ BASE_FEATURE(kReportingApiEnableEnterpriseCookieIssues +@@ -594,7 +594,7 @@ BASE_FEATURE(ReportingApiEnableEnterpriseCookieIssues, + base::FEATURE_DISABLED_BY_DEFAULT); - BASE_FEATURE(kSimdutfBase64Support, - "SimdutfBase64Support", + BASE_FEATURE(SimdutfBase64Support, -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) base::FEATURE_ENABLED_BY_DEFAULT #else base::FEATURE_DISABLED_BY_DEFAULT diff --git a/www/iridium/files/patch-net_base_network__change__notifier__passive.cc b/www/iridium/files/patch-net_base_network__change__notifier__passive.cc index 3e45cb343b36..e221e2862d6a 100644 --- a/www/iridium/files/patch-net_base_network__change__notifier__passive.cc +++ b/www/iridium/files/patch-net_base_network__change__notifier__passive.cc @@ -1,11 +1,11 @@ ---- net/base/network_change_notifier_passive.cc.orig 2025-06-19 07:37:57 UTC +--- net/base/network_change_notifier_passive.cc.orig 2025-10-28 14:29:43 UTC +++ net/base/network_change_notifier_passive.cc -@@ -107,7 +107,7 @@ NetworkChangeNotifierPassive::GetAddressMapOwnerIntern +@@ -108,7 +108,7 @@ NetworkChangeNotifierPassive::GetAddressMapOwnerIntern NetworkChangeNotifier::NetworkChangeCalculatorParams NetworkChangeNotifierPassive::NetworkChangeCalculatorParamsPassive() { NetworkChangeCalculatorParams params; -#if BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Delay values arrived at by simple experimentation and adjusted so as to // produce a single signal when switching between network connections. params.ip_address_offline_delay_ = base::Milliseconds(4000); diff --git a/www/iridium/files/patch-net_base_sockaddr__util__posix.cc b/www/iridium/files/patch-net_base_sockaddr__util__posix.cc index 560f07170d21..741638b3d127 100644 --- a/www/iridium/files/patch-net_base_sockaddr__util__posix.cc +++ b/www/iridium/files/patch-net_base_sockaddr__util__posix.cc @@ -1,12 +1,12 @@ ---- net/base/sockaddr_util_posix.cc.orig 2025-09-11 13:19:19 UTC +--- net/base/sockaddr_util_posix.cc.orig 2025-10-28 14:29:43 UTC +++ net/base/sockaddr_util_posix.cc -@@ -60,7 +60,8 @@ bool FillUnixAddress(const std::string& socket_path, +@@ -51,7 +51,8 @@ bool FillUnixAddress(std::string_view socket_path, return true; } -#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + // XXX ? // Convert the path given into abstract socket name. It must start with - // the '\0' character, so we are adding it. |addr_len| must specify the - // length of the structure exactly, as potentially the socket name may + // the '\0' character, skip over it, as it should already be zero. `addr_len` + // must specify the length of the structure exactly, as potentially the socket diff --git a/www/iridium/files/patch-net_base_sockaddr__util__posix__unittest.cc b/www/iridium/files/patch-net_base_sockaddr__util__posix__unittest.cc index db843ae508fc..ed7195b2b5b6 100644 --- a/www/iridium/files/patch-net_base_sockaddr__util__posix__unittest.cc +++ b/www/iridium/files/patch-net_base_sockaddr__util__posix__unittest.cc @@ -1,12 +1,12 @@ ---- net/base/sockaddr_util_posix_unittest.cc.orig 2025-05-07 06:48:23 UTC +--- net/base/sockaddr_util_posix_unittest.cc.orig 2025-10-28 14:29:43 UTC +++ net/base/sockaddr_util_posix_unittest.cc -@@ -88,7 +88,8 @@ TEST(FillUnixAddressTest, AbstractLinuxAddress) { - size_t path_max = MaxPathLength(&storage); - std::string path(path_max, '0'); +@@ -77,7 +77,8 @@ TEST(FillUnixAddressTest, AbstractLinuxAddress) { + SockaddrStorage storage; + std::string path(kMaxUnixAddressPath, '0'); -#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + // XXX? EXPECT_TRUE(FillUnixAddress(path, /*use_abstract_namespace=*/true, &storage)); EXPECT_EQ(path.size() + 1U + offsetof(struct sockaddr_un, sun_path), diff --git a/www/iridium/files/patch-net_disk__cache_simple_simple__file__tracker.cc b/www/iridium/files/patch-net_disk__cache_simple_simple__file__tracker.cc index ab380b687d22..df7cd23e9d5d 100644 --- a/www/iridium/files/patch-net_disk__cache_simple_simple__file__tracker.cc +++ b/www/iridium/files/patch-net_disk__cache_simple_simple__file__tracker.cc @@ -1,20 +1,20 @@ ---- net/disk_cache/simple/simple_file_tracker.cc.orig 2025-09-11 13:19:19 UTC +--- net/disk_cache/simple/simple_file_tracker.cc.orig 2025-10-28 14:29:43 UTC +++ net/disk_cache/simple/simple_file_tracker.cc @@ -36,7 +36,17 @@ bool SimpleFileTracker::TrackedFiles::InLRUList() cons } SimpleFileTracker::SimpleFileTracker(int file_limit) +#if defined(OS_OPENBSD) +{ -+ // cap the file descriptor limit at 85% of the size of the ++ // cap the file descriptor limit at 75% of the size of the + // file descriptor table and also substract the amount of + // currently used file descriptors as this should give us + // enough reserve to avoid hitting the limit -+ file_limit_ = (getdtablesize() * 0.85) - getdtablecount(); ++ file_limit_ = (getdtablesize() * 0.75) - getdtablecount(); +} +#else : file_limit_(file_limit) {} +#endif SimpleFileTracker::~SimpleFileTracker() { DCHECK(lru_.empty()); diff --git a/www/iridium/files/patch-net_dns_BUILD.gn b/www/iridium/files/patch-net_dns_BUILD.gn index 9f0176446dd5..9b2644b95f9c 100644 --- a/www/iridium/files/patch-net_dns_BUILD.gn +++ b/www/iridium/files/patch-net_dns_BUILD.gn @@ -1,39 +1,39 @@ ---- net/dns/BUILD.gn.orig 2025-09-11 13:19:19 UTC +--- net/dns/BUILD.gn.orig 2025-10-28 14:29:43 UTC +++ net/dns/BUILD.gn @@ -140,7 +140,7 @@ source_set("dns") { "dns_config_service_android.cc", "dns_config_service_android.h", ] - } else if (is_linux) { + } else if (is_linux && !is_bsd) { sources += [ "dns_config_service_linux.cc", "dns_config_service_linux.h", @@ -174,6 +174,7 @@ source_set("dns") { } deps = [ "//net:net_deps" ] + deps += [ "//services/screen_ai/buildflags" ] public_deps = [ ":dns_client", @@ -181,6 +182,7 @@ source_set("dns") { ":host_resolver_manager", ":mdns_client", "//net:net_public_deps", + "//printing/buildflags", ] if (enable_mdns) { -@@ -454,9 +456,9 @@ source_set("tests") { +@@ -455,9 +457,9 @@ source_set("tests") { if (is_android) { sources += [ "dns_config_service_android_unittest.cc" ] - } else if (is_linux) { + } else if (is_linux && !is_bsd) { sources += [ "dns_config_service_linux_unittest.cc" ] - } else if (is_posix) { + } else if (is_posix && !is_bsd) { sources += [ "dns_config_service_posix_unittest.cc" ] } diff --git a/www/iridium/files/patch-net_socket_tcp__socket__posix.cc b/www/iridium/files/patch-net_socket_tcp__socket__posix.cc index 451bcadb5c02..e5ddd98226c0 100644 --- a/www/iridium/files/patch-net_socket_tcp__socket__posix.cc +++ b/www/iridium/files/patch-net_socket_tcp__socket__posix.cc @@ -1,20 +1,20 @@ ---- net/socket/tcp_socket_posix.cc.orig 2025-06-19 07:37:57 UTC +--- net/socket/tcp_socket_posix.cc.orig 2025-10-28 14:29:43 UTC +++ net/socket/tcp_socket_posix.cc -@@ -99,6 +99,17 @@ bool SetTCPKeepAlive(int fd, bool enable, int delay) { +@@ -98,6 +98,17 @@ bool SetTCPKeepAlive(int fd, bool enable, int delay) { PLOG(ERROR) << "Failed to set TCP_KEEPALIVE on fd: " << fd; return false; } +#elif BUILDFLAG(IS_FREEBSD) + // Set seconds until first TCP keep alive. + if (setsockopt(fd, IPPROTO_TCP, TCP_KEEPIDLE, &delay, sizeof(delay))) { + PLOG(ERROR) << "Failed to set TCP_KEEPIDLE on fd: " << fd; + return false; + } + // Set seconds between TCP keep alives. + if (setsockopt(fd, IPPROTO_TCP, TCP_KEEPINTVL, &delay, sizeof(delay))) { + PLOG(ERROR) << "Failed to set TCP_KEEPINTVL on fd: " << fd; + return false; + } #endif } diff --git a/www/iridium/files/patch-net_socket_udp__socket__posix.cc b/www/iridium/files/patch-net_socket_udp__socket__posix.cc index 70f83b967921..24480ea02e77 100644 --- a/www/iridium/files/patch-net_socket_udp__socket__posix.cc +++ b/www/iridium/files/patch-net_socket_udp__socket__posix.cc @@ -1,39 +1,39 @@ ---- net/socket/udp_socket_posix.cc.orig 2025-09-11 13:19:19 UTC +--- net/socket/udp_socket_posix.cc.orig 2025-10-28 14:29:43 UTC +++ net/socket/udp_socket_posix.cc -@@ -524,12 +524,17 @@ int UDPSocketPosix::SetRecvTos() { +@@ -532,12 +532,17 @@ int UDPSocketPosix::SetRecvTos() { #endif // BUILDFLAG(IS_APPLE) } +#ifdef IP_RECVTOS int rv = setsockopt(socket_, IPPROTO_IP, IP_RECVTOS, &ecn, sizeof(ecn)); +#else + int rv = -1; + errno = EOPNOTSUPP; +#endif return rv == 0 ? OK : MapSystemError(errno); } void UDPSocketPosix::SetMsgConfirm(bool confirm) { -#if !BUILDFLAG(IS_APPLE) +#if !BUILDFLAG(IS_APPLE) && !BUILDFLAG(IS_BSD) if (confirm) { sendto_flags_ |= MSG_CONFIRM; } else { -@@ -550,7 +555,7 @@ int UDPSocketPosix::SetBroadcast(bool broadcast) { +@@ -558,7 +563,7 @@ int UDPSocketPosix::SetBroadcast(bool broadcast) { DCHECK_CALLED_ON_VALID_THREAD(thread_checker_); int value = broadcast ? 1 : 0; int rv; -#if BUILDFLAG(IS_APPLE) +#if BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_BSD) // SO_REUSEPORT on OSX permits multiple processes to each receive // UDP multicast or broadcast datagrams destined for the bound // port. -@@ -894,7 +899,7 @@ int UDPSocketPosix::DoBind(const IPEndPoint& address) +@@ -916,7 +921,7 @@ int UDPSocketPosix::DoBind(const IPEndPoint& address) #if BUILDFLAG(IS_CHROMEOS) if (last_error == EINVAL) return ERR_ADDRESS_IN_USE; -#elif BUILDFLAG(IS_APPLE) +#elif BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_BSD) if (last_error == EADDRNOTAVAIL) return ERR_ADDRESS_IN_USE; #endif diff --git a/www/iridium/files/patch-net_socket_udp__socket__unittest.cc b/www/iridium/files/patch-net_socket_udp__socket__unittest.cc index 9ecc70e557cc..e5ccbca829a9 100644 --- a/www/iridium/files/patch-net_socket_udp__socket__unittest.cc +++ b/www/iridium/files/patch-net_socket_udp__socket__unittest.cc @@ -1,47 +1,47 @@ ---- net/socket/udp_socket_unittest.cc.orig 2025-09-11 13:19:19 UTC +--- net/socket/udp_socket_unittest.cc.orig 2025-10-28 14:29:43 UTC +++ net/socket/udp_socket_unittest.cc -@@ -397,7 +397,7 @@ TEST_F(UDPSocketTest, PartialRecv) { +@@ -396,7 +396,7 @@ TEST_F(UDPSocketTest, PartialRecv) { EXPECT_EQ(second_packet, received); } -#if BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_ANDROID) +#if BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) // - MacOS: requires root permissions on OSX 10.7+. // - Android: devices attached to testbots don't have default network, so // broadcasting to 255.255.255.255 returns error -109 (Address not reachable). -@@ -708,7 +708,7 @@ TEST_F(UDPSocketTest, ClientSetDoNotFragment) { +@@ -707,7 +707,7 @@ TEST_F(UDPSocketTest, ClientSetDoNotFragment) { EXPECT_THAT(rv, IsOk()); rv = client.SetDoNotFragment(); -#if BUILDFLAG(IS_IOS) || BUILDFLAG(IS_FUCHSIA) +#if BUILDFLAG(IS_IOS) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) // TODO(crbug.com/42050633): IP_MTU_DISCOVER is not implemented on Fuchsia. EXPECT_THAT(rv, IsError(ERR_NOT_IMPLEMENTED)); #else -@@ -730,7 +730,7 @@ TEST_F(UDPSocketTest, ServerSetDoNotFragment) { +@@ -729,7 +729,7 @@ TEST_F(UDPSocketTest, ServerSetDoNotFragment) { EXPECT_THAT(rv, IsOk()); rv = server.SetDoNotFragment(); -#if BUILDFLAG(IS_IOS) || BUILDFLAG(IS_FUCHSIA) +#if BUILDFLAG(IS_IOS) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) // TODO(crbug.com/42050633): IP_MTU_DISCOVER is not implemented on Fuchsia. EXPECT_THAT(rv, IsError(ERR_NOT_IMPLEMENTED)); #else -@@ -796,7 +796,7 @@ TEST_F(UDPSocketTest, JoinMulticastGroup) { +@@ -795,7 +795,7 @@ TEST_F(UDPSocketTest, JoinMulticastGroup) { // TODO(crbug.com/40620614): failing on device on iOS 12.2. // TODO(crbug.com/40189274): flaky on Mac 11. -#if BUILDFLAG(IS_IOS) || BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_IOS) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) #define MAYBE_SharedMulticastAddress DISABLED_SharedMulticastAddress #else #define MAYBE_SharedMulticastAddress SharedMulticastAddress -@@ -850,7 +850,7 @@ TEST_F(UDPSocketTest, MAYBE_SharedMulticastAddress) { +@@ -849,7 +849,7 @@ TEST_F(UDPSocketTest, MAYBE_SharedMulticastAddress) { NetLogSource()); ASSERT_THAT(client_socket.Connect(send_address), IsOk()); -#if !BUILDFLAG(IS_CHROMEOS) +#if !BUILDFLAG(IS_CHROMEOS) && !BUILDFLAG(IS_BSD) // Send a message via the multicast group. That message is expected be be // received by both receving sockets. // diff --git a/www/iridium/files/patch-net_tools_net__watcher_net__watcher.cc b/www/iridium/files/patch-net_tools_net__watcher_net__watcher.cc index e392002a3722..73ebe30022f3 100644 --- a/www/iridium/files/patch-net_tools_net__watcher_net__watcher.cc +++ b/www/iridium/files/patch-net_tools_net__watcher_net__watcher.cc @@ -1,38 +1,38 @@ ---- net/tools/net_watcher/net_watcher.cc.orig 2025-05-07 06:48:23 UTC +--- net/tools/net_watcher/net_watcher.cc.orig 2025-10-28 14:29:43 UTC +++ net/tools/net_watcher/net_watcher.cc @@ -31,7 +31,7 @@ #include "net/proxy_resolution/proxy_config_service.h" #include "net/proxy_resolution/proxy_config_with_annotation.h" -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "net/base/network_change_notifier_linux.h" #endif @@ -41,7 +41,7 @@ namespace { -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Flag to specifies which network interfaces to ignore. Interfaces should // follow as a comma seperated list. const char kIgnoreNetifFlag[] = "ignore-netif"; -@@ -143,7 +143,7 @@ class NetWatcher : +@@ -162,7 +162,7 @@ class NetWatcher : } // namespace int main(int argc, char* argv[]) { -#if BUILDFLAG(IS_APPLE) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) base::apple::ScopedNSAutoreleasePool pool; #endif base::AtExitManager exit_manager; -@@ -160,7 +160,7 @@ int main(int argc, char* argv[]) { +@@ -179,7 +179,7 @@ int main(int argc, char* argv[]) { NetWatcher net_watcher; -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) base::CommandLine* command_line = base::CommandLine::ForCurrentProcess(); std::string ignored_netifs_str = command_line->GetSwitchValueASCII(kIgnoreNetifFlag); diff --git a/www/iridium/files/patch-net_websockets_websocket__basic__stream__adapters__test.cc b/www/iridium/files/patch-net_websockets_websocket__basic__stream__adapters__test.cc index 954b057b4e46..2d4937097db9 100644 --- a/www/iridium/files/patch-net_websockets_websocket__basic__stream__adapters__test.cc +++ b/www/iridium/files/patch-net_websockets_websocket__basic__stream__adapters__test.cc @@ -1,15 +1,15 @@ ---- net/websockets/websocket_basic_stream_adapters_test.cc.orig 2025-05-07 06:48:23 UTC +--- net/websockets/websocket_basic_stream_adapters_test.cc.orig 2025-10-28 14:29:43 UTC +++ net/websockets/websocket_basic_stream_adapters_test.cc -@@ -1098,10 +1098,10 @@ TEST_F(WebSocketSpdyStreamAdapterTest, +@@ -1097,10 +1097,10 @@ TEST_F(WebSocketSpdyStreamAdapterTest, OnCloseOkShouldBeTranslatedToConnectionClose) { spdy::SpdySerializedFrame response_headers( spdy_util_.ConstructSpdyResponseHeaders(1, ResponseHeaders(), false)); - spdy::SpdySerializedFrame close( + spdy::SpdySerializedFrame test_close( spdy_util_.ConstructSpdyRstStream(1, spdy::ERROR_CODE_NO_ERROR)); MockRead reads[] = {CreateMockRead(response_headers, 1), - CreateMockRead(close, 2), MockRead(ASYNC, 0, 3)}; + CreateMockRead(test_close, 2), MockRead(ASYNC, 0, 3)}; spdy::SpdySerializedFrame request_headers(spdy_util_.ConstructSpdyHeaders( 1, RequestHeaders(), DEFAULT_PRIORITY, false)); MockWrite writes[] = {CreateMockWrite(request_headers, 0)}; diff --git a/www/iridium/files/patch-pdf_pdfium_pdfium__engine.cc b/www/iridium/files/patch-pdf_pdfium_pdfium__engine.cc index 33e5bafed442..7e840528443d 100644 --- a/www/iridium/files/patch-pdf_pdfium_pdfium__engine.cc +++ b/www/iridium/files/patch-pdf_pdfium_pdfium__engine.cc @@ -1,20 +1,20 @@ ---- pdf/pdfium/pdfium_engine.cc.orig 2025-09-11 13:19:19 UTC +--- pdf/pdfium/pdfium_engine.cc.orig 2025-10-28 14:29:43 UTC +++ pdf/pdfium/pdfium_engine.cc -@@ -113,7 +113,7 @@ +@@ -115,7 +115,7 @@ #include "ui/accessibility/ax_features.mojom-features.h" #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "pdf/pdfium/pdfium_font_linux.h" #endif -@@ -565,7 +565,7 @@ void InitializeSDK(bool enable_v8, +@@ -577,7 +577,7 @@ void InitializeSDK(bool enable_v8, FPDF_InitLibraryWithConfig(&config); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) g_font_mapping_mode = font_mapping_mode; InitializeLinuxFontMapper(); #endif diff --git a/www/iridium/files/patch-remoting_host_host__attributes.cc b/www/iridium/files/patch-remoting_host_host__attributes.cc index 674f01d6878a..732e08e0f836 100644 --- a/www/iridium/files/patch-remoting_host_host__attributes.cc +++ b/www/iridium/files/patch-remoting_host_host__attributes.cc @@ -1,11 +1,11 @@ ---- remoting/host/host_attributes.cc.orig 2025-05-07 06:48:23 UTC +--- remoting/host/host_attributes.cc.orig 2025-10-28 14:29:43 UTC +++ remoting/host/host_attributes.cc -@@ -103,7 +103,7 @@ std::string GetHostAttributes() { +@@ -102,7 +102,7 @@ std::string GetHostAttributes() { if (media::InitializeMediaFoundation()) { result.push_back("HWEncoder"); } -#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) result.push_back("HWEncoder"); #endif diff --git a/www/iridium/files/patch-remoting_host_me2me__desktop__environment.cc b/www/iridium/files/patch-remoting_host_me2me__desktop__environment.cc index 9081897217f9..6539dd3ec9e1 100644 --- a/www/iridium/files/patch-remoting_host_me2me__desktop__environment.cc +++ b/www/iridium/files/patch-remoting_host_me2me__desktop__environment.cc @@ -1,29 +1,29 @@ ---- remoting/host/me2me_desktop_environment.cc.orig 2025-09-11 13:19:19 UTC +--- remoting/host/me2me_desktop_environment.cc.orig 2025-10-28 14:29:43 UTC +++ remoting/host/me2me_desktop_environment.cc -@@ -113,7 +113,7 @@ std::string Me2MeDesktopEnvironment::GetCapabilities() +@@ -119,7 +119,7 @@ std::string Me2MeDesktopEnvironment::GetCapabilities() capabilities += protocol::kRemoteWebAuthnCapability; } -#if BUILDFLAG(IS_LINUX) && defined(REMOTING_USE_X11) +#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && defined(REMOTING_USE_X11) capabilities += " "; capabilities += protocol::kMultiStreamCapability; capabilities += " "; -@@ -158,7 +158,7 @@ Me2MeDesktopEnvironment::Me2MeDesktopEnvironment( +@@ -168,7 +168,7 @@ Me2MeDesktopEnvironment::Me2MeDesktopEnvironment( // properly under Xvfb. mutable_desktop_capture_options()->set_use_update_notifications(true); -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Setting this option to false means that the capture differ wrapper will not // be used when the X11 capturer is selected. This reduces the X11 capture // time by a few milliseconds per frame and is safe because we can rely on -@@ -185,7 +185,7 @@ bool Me2MeDesktopEnvironment::InitializeSecurity( +@@ -195,7 +195,7 @@ bool Me2MeDesktopEnvironment::InitializeSecurity( // Otherwise, if the session is shared with the local user start monitoring // the local input and create the in-session UI. -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) bool want_user_interface = false; #elif BUILDFLAG(IS_APPLE) // Don't try to display any UI on top of the system's login screen as this diff --git a/www/iridium/files/patch-remoting_host_remoting__me2me__host.cc b/www/iridium/files/patch-remoting_host_remoting__me2me__host.cc index 22df8e8badce..87600a3f43dd 100644 --- a/www/iridium/files/patch-remoting_host_remoting__me2me__host.cc +++ b/www/iridium/files/patch-remoting_host_remoting__me2me__host.cc @@ -1,146 +1,155 @@ ---- remoting/host/remoting_me2me_host.cc.orig 2025-09-11 13:19:19 UTC +--- remoting/host/remoting_me2me_host.cc.orig 2025-10-28 14:29:43 UTC +++ remoting/host/remoting_me2me_host.cc -@@ -139,7 +139,7 @@ +@@ -140,7 +140,7 @@ #include "remoting/host/mac/permission_utils.h" #endif // BUILDFLAG(IS_APPLE) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #if defined(REMOTING_USE_X11) #include -@@ -149,7 +149,7 @@ +@@ -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" -@@ -164,7 +164,7 @@ +@@ -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) -@@ -198,7 +198,7 @@ const char kApplicationName[] = "chromoting"; +@@ -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"; -@@ -446,7 +446,7 @@ class HostProcess : public ConfigWatcher::Delegate, +@@ -448,7 +448,7 @@ class HostProcess : public ConfigWatcher::Delegate, std::unique_ptr agent_process_broker_client_; #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Watch for certificate changes and kill the host when changes occur std::unique_ptr cert_watcher_; #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -@@ -508,7 +508,7 @@ class HostProcess : public ConfigWatcher::Delegate, +@@ -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_; -@@ -835,7 +835,7 @@ void HostProcess::StartOnNetworkThread() { +@@ -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) } -@@ -912,7 +912,7 @@ void HostProcess::CreateAuthenticatorFactory() { +@@ -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, -@@ -1050,7 +1050,7 @@ void HostProcess::StartOnUiThread() { +@@ -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 = -@@ -1129,7 +1129,7 @@ void HostProcess::ShutdownOnUiThread() { +@@ -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. -@@ -1137,7 +1137,7 @@ void HostProcess::ShutdownOnUiThread() { +@@ -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(); })); -@@ -1908,7 +1908,7 @@ void HostProcess::StartHost() { +@@ -1835,7 +1835,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() { 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_ = -@@ -1944,7 +1944,7 @@ void HostProcess::StartHost() { +@@ -1960,7 +1960,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(); -@@ -2089,7 +2089,7 @@ int HostProcessMain() { +@@ -2105,7 +2105,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 ...) -@@ -2134,7 +2134,7 @@ int HostProcessMain() { +@@ -2150,7 +2150,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. -@@ -2154,7 +2154,7 @@ int HostProcessMain() { +@@ -2170,7 +2170,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/iridium/files/patch-sandbox_linux_services_init__process__reaper.cc b/www/iridium/files/patch-sandbox_linux_services_init__process__reaper.cc index b0d259ce7b76..2a03dd236635 100644 --- a/www/iridium/files/patch-sandbox_linux_services_init__process__reaper.cc +++ b/www/iridium/files/patch-sandbox_linux_services_init__process__reaper.cc @@ -1,15 +1,15 @@ ---- sandbox/linux/services/init_process_reaper.cc.orig 2025-09-11 13:19:19 UTC +--- sandbox/linux/services/init_process_reaper.cc.orig 2025-10-28 14:29:43 UTC +++ sandbox/linux/services/init_process_reaper.cc @@ -2,6 +2,7 @@ // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. +#if 0 #include "sandbox/linux/services/init_process_reaper.h" #include -@@ -101,3 +102,4 @@ bool CreateInitProcessReaper(base::OnceClosure post_fo +@@ -100,3 +101,4 @@ bool CreateInitProcessReaper(base::OnceClosure post_fo } } // namespace sandbox. +#endif diff --git a/www/iridium/files/patch-sandbox_policy_BUILD.gn b/www/iridium/files/patch-sandbox_policy_BUILD.gn index df25c54767ff..b46964ba87b5 100644 --- a/www/iridium/files/patch-sandbox_policy_BUILD.gn +++ b/www/iridium/files/patch-sandbox_policy_BUILD.gn @@ -1,39 +1,38 @@ ---- sandbox/policy/BUILD.gn.orig 2025-09-11 13:19:19 UTC +--- sandbox/policy/BUILD.gn.orig 2025-10-28 14:29:43 UTC +++ sandbox/policy/BUILD.gn @@ -45,7 +45,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", -@@ -113,6 +113,27 @@ component("policy") { +@@ -113,6 +113,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", + ] -+ deps += [ -+ "//sandbox:sandbox_buildflags", -+ "//ui/gfx/x", -+ ] + 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/iridium/files/patch-sandbox_policy_openbsd_sandbox__openbsd.cc b/www/iridium/files/patch-sandbox_policy_openbsd_sandbox__openbsd.cc index 708747c5ef82..3f173cd1ea68 100644 --- a/www/iridium/files/patch-sandbox_policy_openbsd_sandbox__openbsd.cc +++ b/www/iridium/files/patch-sandbox_policy_openbsd_sandbox__openbsd.cc @@ -1,396 +1,399 @@ ---- sandbox/policy/openbsd/sandbox_openbsd.cc.orig 2025-09-11 13:19:19 UTC +--- sandbox/policy/openbsd/sandbox_openbsd.cc.orig 2025-10-28 14:29:43 UTC +++ sandbox/policy/openbsd/sandbox_openbsd.cc -@@ -0,0 +1,393 @@ +@@ -0,0 +1,396 @@ +// Copyright (c) 2012 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include "sandbox/policy/openbsd/sandbox_openbsd.h" + +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include + +#include "base/command_line.h" +#include "base/debug/stack_trace.h" +#include "base/feature_list.h" +#include "base/files/file_path.h" +#include "base/files/file_util.h" +#include "base/files/scoped_file.h" +#include "base/logging.h" +#include "base/memory/singleton.h" +#include "base/path_service.h" +#include "base/posix/eintr_wrapper.h" +#include "base/strings/string_number_conversions.h" +#include "base/system/sys_info.h" +#include "base/threading/thread.h" +#include "base/time/time.h" +#include "build/build_config.h" +#include "crypto/crypto_buildflags.h" +#include "sandbox/constants.h" +#include "sandbox/linux/services/credentials.h" +#include "sandbox/linux/services/namespace_sandbox.h" +#include "sandbox/linux/services/proc_util.h" +#include "sandbox/linux/services/resource_limits.h" +#include "sandbox/linux/services/thread_helpers.h" +#include "sandbox/linux/syscall_broker/broker_command.h" +#include "sandbox/linux/syscall_broker/broker_process.h" +#include "sandbox/policy/sandbox.h" +#include "sandbox/policy/sandbox_type.h" +#include "sandbox/policy/mojom/sandbox.mojom.h" +#include "sandbox/policy/switches.h" +#include "sandbox/sandbox_buildflags.h" + +#if BUILDFLAG(USING_SANITIZER) +#include +#endif + +#if BUILDFLAG(USE_NSS_CERTS) +#include "crypto/nss_util.h" +#endif + +#include "third_party/boringssl/src/include/openssl/crypto.h" ++#include "third_party/skia/experimental/rust_png/ffi/FFI.rs.h" + +#include +#include "ui/gfx/linux/fontconfig_util.h" + +#define MAXTOKENS 3 + +#define _UNVEIL_MAIN "/etc/iridium/unveil.main"; +#define _UNVEIL_GPU "/etc/iridium/unveil.gpu"; +#define _UNVEIL_UTILITY_NETWORK "/etc/iridium/unveil.utility_network"; +#define _UNVEIL_UTILITY_AUDIO "/etc/iridium/unveil.utility_audio"; +#define _UNVEIL_UTILITY_VIDEO "/etc/iridium/unveil.utility_video"; + +namespace sandbox { +namespace policy { + +SandboxLinux::SandboxLinux() + : unveil_initialized_(false), + sandbox_status_flags_(kInvalid), + pre_initialized_(false), + initialize_sandbox_ran_(false), + broker_process_(nullptr) { +} + +SandboxLinux::~SandboxLinux() { + if (pre_initialized_) { + CHECK(initialize_sandbox_ran_); + } +} + +SandboxLinux* SandboxLinux::GetInstance() { + SandboxLinux* instance = base::Singleton::get(); + CHECK(instance); + return instance; +} + +void SandboxLinux::StopThread(base::Thread* thread) { + DCHECK(thread); + thread->Stop(); +} + +void SandboxLinux::PreinitializeSandbox(sandbox::mojom::Sandbox sandbox_type) { + CHECK(!pre_initialized_); +#if BUILDFLAG(USING_SANITIZER) + // Sanitizers need to open some resources before the sandbox is enabled. + // This should not fork, not launch threads, not open a directory. + __sanitizer_sandbox_on_notify(sanitizer_args()); + sanitizer_args_.reset(); +#endif + base::CommandLine* command_line = base::CommandLine::ForCurrentProcess(); + const std::string process_type = + command_line->GetSwitchValueASCII(switches::kProcessType); + + base::SysInfo::AmountOfPhysicalMemory(); + base::SysInfo::NumberOfProcessors(); + base::SysInfo::CPUModelName(); + + switch (sandbox_type) { + case sandbox::mojom::Sandbox::kNoSandbox: + { +#if BUILDFLAG(USE_NSS_CERTS) + // The main process has to initialize the ~/.pki dir which won't work + // after unveil(2). + crypto::EnsureNSSInit(); +#endif + CRYPTO_pre_sandbox_init(); + ++ rust_png::initialize_cpudetect(); ++ + base::FilePath cache_directory, local_directory; + + base::PathService::Get(base::DIR_CACHE, &cache_directory); + base::PathService::Get(base::DIR_HOME, &local_directory); + + cache_directory = cache_directory.AppendASCII("iridium"); + local_directory = local_directory.AppendASCII(".local").AppendASCII("share").AppendASCII("applications"); + + if (!base::CreateDirectory(cache_directory)) { + LOG(ERROR) << "Failed to create " << cache_directory.value() << " directory."; + } + + if (!base::CreateDirectory(local_directory)) { + LOG(ERROR) << "Failed to create " << local_directory.value() << " directory."; + } + + break; + } + case sandbox::mojom::Sandbox::kRenderer: + { + FcConfig* config = gfx::GetGlobalFontConfig(); + DCHECK(config); + break; + } + default: + break; + } + + pre_initialized_ = true; +} + +bool SandboxLinux::SetPledge(const char *pstring, const char *ppath) { + FILE *fp; + char *s = NULL; + size_t len = 0; + ssize_t read; + + if (pstring != NULL) { + if (pledge(pstring, NULL) == -1) + goto err; + VLOG(5) << "pledge " << pstring; + } else if (ppath != NULL) { + fp = fopen(ppath, "r"); + if (fp != NULL) { + while ((read = getline(&s, &len, fp)) != -1 ) { + if (s[strlen(s)-1] == '\n') + s[strlen(s)-1] = '\0'; + if (pledge(s, NULL) == -1) + goto err; + VLOG(5) << "pledge " << s; + } + fclose(fp); + } else { + LOG(ERROR) << "fopen(" << ppath << ") failed, errno: " << errno; + return false; + } + } + return true; +err: + LOG(ERROR) << "pledge() failed, errno: " << errno; + return false; +} + +bool SandboxLinux::SetUnveil(const std::string process_type, sandbox::mojom::Sandbox sandbox_type) { + FILE *fp; + char *s = NULL, *cp = NULL, *home = NULL, **ap, *tokens[MAXTOKENS]; + char *xdg_var = NULL; + char path[PATH_MAX]; + const char *ufile; + size_t len = 0, lineno = 0; + + switch (sandbox_type) { + case sandbox::mojom::Sandbox::kNoSandbox: + ufile = _UNVEIL_MAIN; + break; + case sandbox::mojom::Sandbox::kGpu: + case sandbox::mojom::Sandbox::kOnDeviceModelExecution: + ufile = _UNVEIL_GPU; + break; + case sandbox::mojom::Sandbox::kNetwork: + ufile = _UNVEIL_UTILITY_NETWORK; + break; + case sandbox::mojom::Sandbox::kAudio: + ufile = _UNVEIL_UTILITY_AUDIO; + break; + case sandbox::mojom::Sandbox::kVideoCapture: + ufile = _UNVEIL_UTILITY_VIDEO; + break; + default: + unveil("/dev/null", "r"); + goto done; + } + + fp = fopen(ufile, "r"); + if (fp != NULL) { + while (!feof(fp)) { + if ((s = fparseln(fp, &len, &lineno, NULL, + FPARSELN_UNESCCOMM | FPARSELN_UNESCCONT)) == NULL) { + if (ferror(fp)) { + LOG(ERROR) << "ferror(), errno: " << errno; + _exit(1); + } else { + continue; + } + } + cp = s; + cp += strspn(cp, " \t\n"); /* eat whitespace */ + if (cp[0] == '\0') + continue; + + for (ap = tokens; ap < &tokens[MAXTOKENS - 1] && + (*ap = strsep(&cp, " \t")) != NULL;) { + if (**ap != '\0') + ap++; + } + *ap = NULL; + + if (tokens[1] == NULL) { + LOG(ERROR) << ufile << ": line " << lineno << ": must supply value to " << s; + _exit(1); + } + + if (tokens[0][0] == '~') { + if ((home = getenv("HOME")) == NULL || *home == '\0') { + LOG(ERROR) << "failed to get home"; + _exit(1); + } + memmove(tokens[0], tokens[0] + 1, strlen(tokens[0])); + strncpy(path, home, sizeof(path) - 1); + path[sizeof(path) - 1] = '\0'; + strncat(path, tokens[0], sizeof(path) - 1 - strlen(path)); + } else if (strncmp(tokens[0], "XDG_", 4) == 0) { + if ((xdg_var = getenv(tokens[0])) == NULL || *xdg_var == '\0') { + LOG(ERROR) << "failed to get " << tokens[0]; + continue; + } + strncpy(path, xdg_var, sizeof(path) - 1); + path[sizeof(path) - 1] = '\0'; + } else { + strncpy(path, tokens[0], sizeof(path) - 1); + path[sizeof(path) - 1] = '\0'; + } + + if (unveil(path, tokens[1]) == -1) { + LOG(ERROR) << "failed unveiling " << path << " with permissions " << tokens[1]; + _exit(1); + } else { + VLOG(5) << "unveiling " << path << " with permissions " << tokens[1]; + } + } + fclose(fp); + } else { + LOG(ERROR) << "failed to open " << ufile << " errno: " << errno; + _exit(1); + } + +done: + unveil_initialized_ = true; + + return true; +} + +bool SandboxLinux::unveil_initialized() const { + return unveil_initialized_; +} + +bool SandboxLinux::InitializeSandbox(sandbox::mojom::Sandbox sandbox_type, + SandboxLinux::PreSandboxHook hook, + const Options& options) { + DCHECK(!initialize_sandbox_ran_); + initialize_sandbox_ran_ = true; + + base::CommandLine* command_line = base::CommandLine::ForCurrentProcess(); + const std::string process_type = + command_line->GetSwitchValueASCII(switches::kProcessType); + + if (command_line->HasSwitch(switches::kNoSandbox)) + return true; + + VLOG(1) << "SandboxLinux::InitializeSandbox: process_type=" + << process_type << " sandbox_type=" << sandbox_type; + + // Only one thread is running, pre-initialize if not already done. + if (!pre_initialized_) + PreinitializeSandbox(sandbox_type); + + // Attempt to limit the future size of the address space of the process. + int error = 0; + const bool limited_as = LimitAddressSpace(&error); + if (error) { + // Restore errno. Internally to |LimitAddressSpace|, the errno due to + // setrlimit may be lost. + errno = error; + PCHECK(limited_as); + } + + if (hook) + CHECK(std::move(hook).Run(options)); + + if (!command_line->HasSwitch(switches::kDisableUnveil)) + SetUnveil(process_type, sandbox_type); + + switch(sandbox_type) { + case sandbox::mojom::Sandbox::kNoSandbox: + SetPledge(NULL, "/etc/iridium/pledge.main"); + break; + case sandbox::mojom::Sandbox::kRenderer: + // prot_exec needed by v8 + // flock needed by sqlite3 locking + SetPledge("stdio rpath flock prot_exec recvfd sendfd ps", NULL); + break; + case sandbox::mojom::Sandbox::kGpu: + case sandbox::mojom::Sandbox::kOnDeviceModelExecution: + SetPledge("stdio drm inet rpath flock cpath wpath prot_exec recvfd sendfd tmppath unix", NULL); + break; + case sandbox::mojom::Sandbox::kAudio: + SetPledge(NULL, "/etc/iridium/pledge.utility_audio"); + break; + case sandbox::mojom::Sandbox::kNetwork: + SetPledge(NULL, "/etc/iridium/pledge.utility_network"); + break; + case sandbox::mojom::Sandbox::kVideoCapture: + SetPledge(NULL, "/etc/iridium/pledge.utility_video"); + break; + case sandbox::mojom::Sandbox::kUtility: + case sandbox::mojom::Sandbox::kService: + SetPledge("stdio rpath cpath wpath fattr flock sendfd recvfd prot_exec", NULL); + break; + default: + LOG(ERROR) << "non-pledge()'d process: " << sandbox_type; + break; + } + + return true; +} + +bool SandboxLinux::LimitAddressSpace(int* error) { +#if !defined(ADDRESS_SANITIZER) && !defined(MEMORY_SANITIZER) && \ + !defined(THREAD_SANITIZER) && !defined(LEAK_SANITIZER) + base::CommandLine* command_line = base::CommandLine::ForCurrentProcess(); + if (SandboxTypeFromCommandLine(*command_line) == sandbox::mojom::Sandbox::kNoSandbox) { + return false; + } + + // Unfortunately, it does not appear possible to set RLIMIT_AS such that it + // will both (a) be high enough to support V8's and WebAssembly's address + // space requirements while also (b) being low enough to mitigate exploits + // using integer overflows that require large allocations, heap spray, or + // other memory-hungry attack modes. + + *error = sandbox::ResourceLimits::Lower( + RLIMIT_DATA, static_cast(sandbox::kDataSizeLimit)); + + // Cache the resource limit before turning on the sandbox. + base::SysInfo::AmountOfVirtualMemory(); + base::SysInfo::MaxSharedMemorySize(); + + return *error == 0; +#else + base::SysInfo::AmountOfVirtualMemory(); + return false; +#endif // !defined(ADDRESS_SANITIZER) && !defined(MEMORY_SANITIZER) && + // !defined(THREAD_SANITIZER) && !defined(LEAK_SANITIZER) +} + +} // namespace policy +} // namespace sandbox diff --git a/www/iridium/files/patch-services_device_serial_serial__io__handler__posix.cc b/www/iridium/files/patch-services_device_serial_serial__io__handler__posix.cc index 5cd7a318c985..919b12442640 100644 --- a/www/iridium/files/patch-services_device_serial_serial__io__handler__posix.cc +++ b/www/iridium/files/patch-services_device_serial_serial__io__handler__posix.cc @@ -1,11 +1,11 @@ ---- services/device/serial/serial_io_handler_posix.cc.orig 2025-09-11 13:19:19 UTC +--- services/device/serial/serial_io_handler_posix.cc.orig 2025-10-28 14:29:43 UTC +++ services/device/serial/serial_io_handler_posix.cc -@@ -74,7 +74,7 @@ bool BitrateToSpeedConstant(int bitrate, speed_t* spee +@@ -70,7 +70,7 @@ bool BitrateToSpeedConstant(int bitrate, speed_t* spee BITRATE_TO_SPEED_CASE(9600) BITRATE_TO_SPEED_CASE(19200) BITRATE_TO_SPEED_CASE(38400) -#if !BUILDFLAG(IS_MAC) +#if !BUILDFLAG(IS_MAC) && !BUILDFLAG(IS_BSD) BITRATE_TO_SPEED_CASE(57600) BITRATE_TO_SPEED_CASE(115200) BITRATE_TO_SPEED_CASE(230400) diff --git a/www/iridium/files/patch-services_device_usb_usb__device__handle__usbfs.cc b/www/iridium/files/patch-services_device_usb_usb__device__handle__usbfs.cc index d8ce875d409a..1695911f76b3 100644 --- a/www/iridium/files/patch-services_device_usb_usb__device__handle__usbfs.cc +++ b/www/iridium/files/patch-services_device_usb_usb__device__handle__usbfs.cc @@ -1,47 +1,47 @@ ---- services/device/usb/usb_device_handle_usbfs.cc.orig 2025-09-11 13:19:19 UTC +--- services/device/usb/usb_device_handle_usbfs.cc.orig 2025-10-28 14:29:43 UTC +++ services/device/usb/usb_device_handle_usbfs.cc -@@ -38,7 +38,7 @@ +@@ -34,7 +34,7 @@ #include "chromeos/dbus/permission_broker/permission_broker_client.h" #endif -#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "base/metrics/histogram_macros.h" #include "services/device/public/cpp/device_features.h" #include "services/device/usb/usb_interface_detach_allowlist.h" -@@ -55,7 +55,7 @@ using mojom::UsbTransferType; +@@ -51,7 +51,7 @@ using mojom::UsbTransferType; namespace { -#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Outcome of detaching a kernel driver before ClaimInterface(). // These values are persisted to logs. Entries should not be renumbered and // numeric values should never be reused. -@@ -297,7 +297,7 @@ bool UsbDeviceHandleUsbfs::BlockingTaskRunnerHelper::R +@@ -293,7 +293,7 @@ bool UsbDeviceHandleUsbfs::BlockingTaskRunnerHelper::R return true; } -#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) bool UsbDeviceHandleUsbfs::BlockingTaskRunnerHelper::DetachInterface( int interface_number, const CombinedInterfaceInfo& interface_info) { -@@ -633,7 +633,7 @@ void UsbDeviceHandleUsbfs::ClaimInterface(int interfac +@@ -630,7 +630,7 @@ void UsbDeviceHandleUsbfs::ClaimInterface(int interfac return; } #endif -#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (base::FeatureList::IsEnabled(features::kAutomaticUsbDetach)) { const mojom::UsbConfigurationInfo* config = device_->GetActiveConfiguration(); -@@ -979,7 +979,7 @@ void UsbDeviceHandleUsbfs::ReleaseInterfaceComplete(in +@@ -976,7 +976,7 @@ void UsbDeviceHandleUsbfs::ReleaseInterfaceComplete(in return; } #endif -#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (base::FeatureList::IsEnabled(features::kAutomaticUsbDetach)) { helper_.AsyncCall(&BlockingTaskRunnerHelper::ReattachInterface) .WithArgs(interface_number) diff --git a/www/iridium/files/patch-services_network_BUILD.gn b/www/iridium/files/patch-services_network_BUILD.gn index 03de5161c3b4..ad0f7d4c93ac 100644 --- a/www/iridium/files/patch-services_network_BUILD.gn +++ b/www/iridium/files/patch-services_network_BUILD.gn @@ -1,10 +1,10 @@ ---- services/network/BUILD.gn.orig 2025-09-11 13:19:19 UTC +--- services/network/BUILD.gn.orig 2025-10-28 14:29:43 UTC +++ services/network/BUILD.gn -@@ -421,7 +421,6 @@ if (is_linux || is_chromeos) { +@@ -426,7 +426,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/iridium/files/patch-services_network_network__context.cc b/www/iridium/files/patch-services_network_network__context.cc index 77f67ac99f8c..917e0b86ef54 100644 --- a/www/iridium/files/patch-services_network_network__context.cc +++ b/www/iridium/files/patch-services_network_network__context.cc @@ -1,20 +1,20 @@ ---- services/network/network_context.cc.orig 2025-09-11 13:19:19 UTC +--- services/network/network_context.cc.orig 2025-10-28 14:29:43 UTC +++ services/network/network_context.cc -@@ -629,7 +629,7 @@ NetworkContext::NetworkContextHttpAuthPreferences:: +@@ -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_) { -@@ -2598,7 +2598,7 @@ void NetworkContext::OnHttpAuthDynamicParamsChanged( +@@ -2600,7 +2600,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/iridium/files/patch-services_network_network__context.h b/www/iridium/files/patch-services_network_network__context.h index ed9b7e74e744..6e6e2c23973b 100644 --- a/www/iridium/files/patch-services_network_network__context.h +++ b/www/iridium/files/patch-services_network_network__context.h @@ -1,11 +1,11 @@ ---- services/network/network_context.h.orig 2025-09-11 13:19:19 UTC +--- services/network/network_context.h.orig 2025-10-28 14:29:43 UTC +++ services/network/network_context.h -@@ -738,7 +738,7 @@ class COMPONENT_EXPORT(NETWORK_SERVICE) NetworkContext +@@ -749,7 +749,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/iridium/files/patch-services_network_network__service.cc b/www/iridium/files/patch-services_network_network__service.cc index feb64e67ffe3..a185eb2c1d96 100644 --- a/www/iridium/files/patch-services_network_network__service.cc +++ b/www/iridium/files/patch-services_network_network__service.cc @@ -1,34 +1,34 @@ ---- services/network/network_service.cc.orig 2025-09-11 13:19:19 UTC +--- services/network/network_service.cc.orig 2025-10-28 14:29:43 UTC +++ services/network/network_service.cc -@@ -107,11 +107,11 @@ +@@ -108,11 +108,11 @@ #include "third_party/boringssl/src/include/openssl/cpu.h" #endif -#if BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CASTOS) +#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && !BUILDFLAG(IS_CASTOS) #include "components/os_crypt/sync/key_storage_config_linux.h" #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "services/network/network_change_notifier_passive_factory.h" #endif -@@ -1035,7 +1035,7 @@ void NetworkService::SetExplicitlyAllowedPorts( +@@ -1041,7 +1041,7 @@ void NetworkService::SetExplicitlyAllowedPorts( net::SetExplicitlyAllowedPorts(ports); } -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) void NetworkService::SetGssapiLibraryLoadObserver( mojo::PendingRemote gssapi_library_load_observer) { -@@ -1174,7 +1174,7 @@ NetworkService::CreateHttpAuthHandlerFactory(NetworkCo +@@ -1180,7 +1180,7 @@ NetworkService::CreateHttpAuthHandlerFactory(NetworkCo ); } -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) void NetworkService::OnBeforeGssapiLibraryLoad() { if (gssapi_library_load_observer_.is_bound()) { gssapi_library_load_observer_->OnBeforeGssapiLibraryLoad(); diff --git a/www/iridium/files/patch-services_network_network__service.h b/www/iridium/files/patch-services_network_network__service.h index 92e9bdeb0eb2..bb0097c72792 100644 --- a/www/iridium/files/patch-services_network_network__service.h +++ b/www/iridium/files/patch-services_network_network__service.h @@ -1,29 +1,29 @@ ---- services/network/network_service.h.orig 2025-09-11 13:19:19 UTC +--- services/network/network_service.h.orig 2025-10-28 14:29:43 UTC +++ services/network/network_service.h @@ -243,7 +243,7 @@ class COMPONENT_EXPORT(NETWORK_SERVICE) NetworkService const std::vector& settings) override; void SetExplicitlyAllowedPorts(const std::vector& ports) override; -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) void SetGssapiLibraryLoadObserver( mojo::PendingRemote gssapi_library_load_observer) override; @@ -292,7 +292,7 @@ class COMPONENT_EXPORT(NETWORK_SERVICE) NetworkService std::unique_ptr CreateHttpAuthHandlerFactory( NetworkContext* network_context); -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // This is called just before a GSSAPI library may be loaded. void OnBeforeGssapiLibraryLoad(); #endif // BUILDFLAG(IS_LINUX) -@@ -550,7 +550,7 @@ class COMPONENT_EXPORT(NETWORK_SERVICE) NetworkService +@@ -542,7 +542,7 @@ class COMPONENT_EXPORT(NETWORK_SERVICE) NetworkService // leaking stale listeners between tests. std::unique_ptr mock_network_change_notifier_; -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) mojo::Remote gssapi_library_load_observer_; #endif // BUILDFLAG(IS_LINUX) diff --git a/www/iridium/files/patch-services_network_public_cpp_features.cc b/www/iridium/files/patch-services_network_public_cpp_features.cc index 8a3e3ef69609..55290db68a9a 100644 --- a/www/iridium/files/patch-services_network_public_cpp_features.cc +++ b/www/iridium/files/patch-services_network_public_cpp_features.cc @@ -1,20 +1,20 @@ ---- services/network/public/cpp/features.cc.orig 2025-09-11 13:19:19 UTC +--- services/network/public/cpp/features.cc.orig 2025-10-28 14:29:43 UTC +++ services/network/public/cpp/features.cc @@ -109,7 +109,7 @@ BASE_FEATURE(kSplitAuthCacheByNetworkIsolationKey, BASE_FEATURE(kDnsOverHttpsUpgrade, "DnsOverHttpsUpgrade", #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 -@@ -378,7 +378,7 @@ BASE_FEATURE(kAvoidResourceRequestCopies, +@@ -393,7 +393,7 @@ BASE_FEATURE(kAvoidResourceRequestCopies, BASE_FEATURE(kDocumentIsolationPolicy, "DocumentIsolationPolicy", #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/iridium/files/patch-services_on__device__model_ml_BUILD.gn b/www/iridium/files/patch-services_on__device__model_ml_BUILD.gn new file mode 100644 index 000000000000..db0b61212713 --- /dev/null +++ b/www/iridium/files/patch-services_on__device__model_ml_BUILD.gn @@ -0,0 +1,11 @@ +--- services/on_device_model/ml/BUILD.gn.orig 2025-10-28 14:29:43 UTC ++++ services/on_device_model/ml/BUILD.gn +@@ -82,7 +82,7 @@ if (use_blink || (is_ios && build_with_internal_optimi + if (!is_fuchsia) { + deps += [ "//services/on_device_model/safety:bert_safety_model" ] + } +- if (is_win || is_mac || is_linux) { ++ if (!is_bsd && (is_win || is_mac || is_linux)) { + deps += [ "//third_party/xnnpack" ] + } + public_deps = [ diff --git a/www/iridium/files/patch-services_shape__detection_shape__detection__service.cc b/www/iridium/files/patch-services_shape__detection_shape__detection__service.cc index 5d36b595c087..924c9abb0059 100644 --- a/www/iridium/files/patch-services_shape__detection_shape__detection__service.cc +++ b/www/iridium/files/patch-services_shape__detection_shape__detection__service.cc @@ -1,20 +1,20 @@ ---- services/shape_detection/shape_detection_service.cc.orig 2025-09-11 13:19:19 UTC +--- services/shape_detection/shape_detection_service.cc.orig 2025-10-28 14:29:43 UTC +++ services/shape_detection/shape_detection_service.cc @@ -22,7 +22,7 @@ #elif BUILDFLAG(IS_ANDROID) // No C++ code, barcode detection comes from Java. #elif BUILDFLAG(GOOGLE_CHROME_BRANDING) && \ -- (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)) -+ (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD)) +- (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_WIN)) ++ (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD)) #include "services/shape_detection/barcode_detection_provider_chrome.h" #else #include "services/shape_detection/barcode_detection_provider_impl.h" @@ -56,7 +56,7 @@ void ShapeDetectionService::BindBarcodeDetectionProvid #elif BUILDFLAG(IS_MAC) BarcodeDetectionProviderMac::Create(std::move(receiver)); #elif BUILDFLAG(GOOGLE_CHROME_BRANDING) && \ -- (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)) -+ (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD)) +- (BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX)) ++ (BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) BarcodeDetectionProviderChrome::Create(std::move(receiver)); #else BarcodeDetectionProviderImpl::Create(std::move(receiver)); diff --git a/www/iridium/files/patch-services_tracing_public_cpp_perfetto_track__name__recorder.cc b/www/iridium/files/patch-services_tracing_public_cpp_perfetto_track__name__recorder.cc index c758e0228338..bb00b0452cf7 100644 --- a/www/iridium/files/patch-services_tracing_public_cpp_perfetto_track__name__recorder.cc +++ b/www/iridium/files/patch-services_tracing_public_cpp_perfetto_track__name__recorder.cc @@ -1,11 +1,11 @@ ---- services/tracing/public/cpp/perfetto/track_name_recorder.cc.orig 2025-09-11 13:19:19 UTC +--- services/tracing/public/cpp/perfetto/track_name_recorder.cc.orig 2025-10-28 14:29:43 UTC +++ services/tracing/public/cpp/perfetto/track_name_recorder.cc -@@ -51,7 +51,7 @@ void FillThreadTrack(const perfetto::ThreadTrack& trac - if (thread_type != ChromeThreadDescriptor::THREAD_UNSPECIFIED) { - desc.mutable_chrome_thread()->set_thread_type(thread_type); +@@ -53,7 +53,7 @@ void FillThreadTrack(const perfetto::ThreadTrack& trac + desc.mutable_chrome_thread()->set_thread_type( + static_cast(thread_type)); } -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_AIX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_AIX) || BUILDFLAG(IS_BSD) if (base::GetCurrentProcId() != base::trace_event::TraceLog::GetInstance()->process_id()) { desc.mutable_chrome_thread()->set_is_sandboxed_tid(true); diff --git a/www/iridium/files/patch-services_tracing_public_cpp_stack__sampling_tracing__sampler__profiler.cc b/www/iridium/files/patch-services_tracing_public_cpp_stack__sampling_tracing__sampler__profiler.cc index e721e87695aa..01f75d2ac217 100644 --- a/www/iridium/files/patch-services_tracing_public_cpp_stack__sampling_tracing__sampler__profiler.cc +++ b/www/iridium/files/patch-services_tracing_public_cpp_stack__sampling_tracing__sampler__profiler.cc @@ -1,38 +1,38 @@ ---- services/tracing/public/cpp/stack_sampling/tracing_sampler_profiler.cc.orig 2025-09-11 13:19:19 UTC +--- services/tracing/public/cpp/stack_sampling/tracing_sampler_profiler.cc.orig 2025-10-28 14:29:43 UTC +++ services/tracing/public/cpp/stack_sampling/tracing_sampler_profiler.cc @@ -39,7 +39,7 @@ #include "third_party/perfetto/protos/perfetto/trace/track_event/process_descriptor.pbzero.h" #include "third_party/perfetto/protos/perfetto/trace/track_event/thread_descriptor.pbzero.h" -#if BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_APPLE) +#if BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_APPLE) && !BUILDFLAG(IS_BSD) #include "base/profiler/thread_delegate_posix.h" #define INITIALIZE_THREAD_DELEGATE_POSIX 1 #else // BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_APPLE) @@ -261,7 +261,7 @@ struct FrameDetails { ANDROID_ARM64_UNWINDING_SUPPORTED || ANDROID_CFI_UNWINDING_SUPPORTED || \ (BUILDFLAG(IS_CHROMEOS) && \ (defined(ARCH_CPU_X86_64) || defined(ARCH_CPU_ARM64))) || \ - BUILDFLAG(IS_LINUX) + BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Returns whether stack sampling is supported on the current platform. bool IsStackSamplingSupported() { return base::StackSamplingProfiler::IsSupportedForCurrentPlatform(); -@@ -379,7 +379,7 @@ void TracingSamplerProfiler::TracingProfileBuilder::Wr +@@ -381,7 +381,7 @@ void TracingSamplerProfiler::TracingProfileBuilder::Wr thread_descriptor->set_reference_timestamp_us( last_timestamp_.since_origin().InMicroseconds()); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_AIX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_AIX) || BUILDFLAG(IS_BSD) if (base::GetCurrentProcId() != base::trace_event::TraceLog::GetInstance()->process_id()) { auto* chrome_thread = track_descriptor->set_chrome_thread(); -@@ -651,7 +651,7 @@ bool TracingSamplerProfiler::IsStackUnwindingSupported +@@ -653,7 +653,7 @@ bool TracingSamplerProfiler::IsStackUnwindingSupported ANDROID_ARM64_UNWINDING_SUPPORTED || ANDROID_CFI_UNWINDING_SUPPORTED || \ (BUILDFLAG(IS_CHROMEOS) && \ (defined(ARCH_CPU_X86_64) || defined(ARCH_CPU_ARM64))) || \ - BUILDFLAG(IS_LINUX) + BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) return IsStackSamplingSupported(); #else return false; diff --git a/www/iridium/files/patch-services_viz_public_mojom_BUILD.gn b/www/iridium/files/patch-services_viz_public_mojom_BUILD.gn index f8c26ff1c480..ac6e14864d45 100644 --- a/www/iridium/files/patch-services_viz_public_mojom_BUILD.gn +++ b/www/iridium/files/patch-services_viz_public_mojom_BUILD.gn @@ -1,11 +1,11 @@ ---- services/viz/public/mojom/BUILD.gn.orig 2025-09-11 13:19:19 UTC +--- services/viz/public/mojom/BUILD.gn.orig 2025-10-28 14:29:43 UTC +++ services/viz/public/mojom/BUILD.gn -@@ -51,7 +51,7 @@ mojom("mojom") { +@@ -53,7 +53,7 @@ mojom("mojom") { # Used in thread.mojom enabled_features = [] - if (is_fuchsia || is_apple) { + if (is_fuchsia || is_apple || is_bsd) { enabled_features += [ "thread_id_is_64_bit" ] } else { enabled_features += [ "thread_id_is_32_bit" ] diff --git a/www/iridium/files/patch-third__party_abseil-cpp_absl_base_config.h b/www/iridium/files/patch-third__party_abseil-cpp_absl_base_config.h index 2e7fa5255a98..1b7ab21297c3 100644 --- a/www/iridium/files/patch-third__party_abseil-cpp_absl_base_config.h +++ b/www/iridium/files/patch-third__party_abseil-cpp_absl_base_config.h @@ -1,21 +1,21 @@ ---- third_party/abseil-cpp/absl/base/config.h.orig 2025-05-07 06:48:23 UTC +--- third_party/abseil-cpp/absl/base/config.h.orig 2025-10-28 14:29:43 UTC +++ third_party/abseil-cpp/absl/base/config.h -@@ -409,7 +409,7 @@ static_assert(ABSL_INTERNAL_INLINE_NAMESPACE_STR[0] != +@@ -413,7 +413,7 @@ static_assert(ABSL_INTERNAL_INLINE_NAMESPACE_STR[0] != #ifdef ABSL_HAVE_SCHED_YIELD #error ABSL_HAVE_SCHED_YIELD cannot be directly set #elif defined(__linux__) || defined(__ros__) || defined(__native_client__) || \ - defined(__VXWORKS__) + defined(__VXWORKS__) || defined(__OpenBSD__) || defined(__FreeBSD__) #define ABSL_HAVE_SCHED_YIELD 1 #endif -@@ -424,7 +424,8 @@ static_assert(ABSL_INTERNAL_INLINE_NAMESPACE_STR[0] != +@@ -428,7 +428,8 @@ static_assert(ABSL_INTERNAL_INLINE_NAMESPACE_STR[0] != // platforms. #ifdef ABSL_HAVE_SEMAPHORE_H #error ABSL_HAVE_SEMAPHORE_H cannot be directly set -#elif defined(__linux__) || defined(__ros__) || defined(__VXWORKS__) +#elif defined(__linux__) || defined(__ros__) || defined(__VXWORKS__) || \ + defined(__OpenBSD__) || defined(__FreeBSD__) #define ABSL_HAVE_SEMAPHORE_H 1 #endif diff --git a/www/iridium/files/patch-third__party_angle_src_common_system__utils__linux.cpp b/www/iridium/files/patch-third__party_angle_src_common_system__utils__linux.cpp index a033df72c8db..88b13a82ee96 100644 --- a/www/iridium/files/patch-third__party_angle_src_common_system__utils__linux.cpp +++ b/www/iridium/files/patch-third__party_angle_src_common_system__utils__linux.cpp @@ -1,37 +1,37 @@ ---- third_party/angle/src/common/system_utils_linux.cpp.orig 2025-05-07 06:48:23 UTC +--- third_party/angle/src/common/system_utils_linux.cpp.orig 2025-10-28 14:29:43 UTC +++ third_party/angle/src/common/system_utils_linux.cpp -@@ -15,10 +15,15 @@ +@@ -19,10 +19,15 @@ #include #include +#if ANGLE_PLATFORM_OPENBSD +#include +#endif + #include namespace angle { +#if ANGLE_PLATFORM_LINUX std::string GetExecutablePath() { // We cannot use lstat to get the size of /proc/self/exe as it always returns 0 -@@ -34,6 +39,7 @@ std::string GetExecutablePath() +@@ -38,6 +43,7 @@ std::string GetExecutablePath() path[result] = '\0'; return path; } +#endif std::string GetExecutableDirectory() { -@@ -59,6 +65,10 @@ void SetCurrentThreadName(const char *name) +@@ -63,6 +69,10 @@ void SetCurrentThreadName(const char *name) // There's a 15-character (16 including '\0') limit. If the name is too big (and ERANGE is // returned), name will be ignored. ASSERT(strlen(name) < 16); +#if ANGLE_PLATFORM_OPENBSD + pthread_set_name_np(pthread_self(), name); +#else pthread_setname_np(pthread_self(), name); +#endif } } // namespace angle diff --git a/www/iridium/files/patch-third__party_angle_src_libANGLE_Display.cpp b/www/iridium/files/patch-third__party_angle_src_libANGLE_Display.cpp index 13cd7ed09b63..d3bb1cdddd63 100644 --- a/www/iridium/files/patch-third__party_angle_src_libANGLE_Display.cpp +++ b/www/iridium/files/patch-third__party_angle_src_libANGLE_Display.cpp @@ -1,56 +1,56 @@ ---- third_party/angle/src/libANGLE/Display.cpp.orig 2025-09-11 13:19:19 UTC +--- third_party/angle/src/libANGLE/Display.cpp.orig 2025-10-28 14:29:43 UTC +++ third_party/angle/src/libANGLE/Display.cpp -@@ -58,7 +58,7 @@ +@@ -62,7 +62,7 @@ # include "libANGLE/renderer/gl/wgl/DisplayWGL.h" # elif ANGLE_ENABLE_CGL # include "libANGLE/renderer/gl/cgl/DisplayCGL.h" -# elif defined(ANGLE_PLATFORM_LINUX) +# elif defined(ANGLE_PLATFORM_LINUX) || defined(ANGLE_PLATFORM_BSD) # include "libANGLE/renderer/gl/egl/DisplayEGL.h" # if defined(ANGLE_USE_X11) # include "libANGLE/renderer/gl/glx/DisplayGLX_api.h" -@@ -422,7 +422,7 @@ rx::DisplayImpl *CreateDisplayFromAttribs(EGLAttrib di +@@ -426,7 +426,7 @@ rx::DisplayImpl *CreateDisplayFromAttribs(EGLAttrib di impl = new rx::DisplayCGL(state); break; -# elif defined(ANGLE_PLATFORM_LINUX) +# elif defined(ANGLE_PLATFORM_LINUX) || defined(ANGLE_PLATFORM_BSD) # if defined(ANGLE_USE_GBM) || defined(ANGLE_USE_WAYLAND) if (platformType == 0) { -@@ -473,7 +473,7 @@ rx::DisplayImpl *CreateDisplayFromAttribs(EGLAttrib di +@@ -477,7 +477,7 @@ rx::DisplayImpl *CreateDisplayFromAttribs(EGLAttrib di #if defined(ANGLE_ENABLE_OPENGL) # if defined(ANGLE_PLATFORM_WINDOWS) impl = new rx::DisplayWGL(state); -# elif defined(ANGLE_PLATFORM_LINUX) +# elif defined(ANGLE_PLATFORM_LINUX) || defined(ANGLE_PLATFORM_BSD) # if defined(ANGLE_USE_GBM) || defined(ANGLE_USE_WAYLAND) if (platformType == 0) { -@@ -529,7 +529,7 @@ rx::DisplayImpl *CreateDisplayFromAttribs(EGLAttrib di +@@ -533,7 +533,7 @@ rx::DisplayImpl *CreateDisplayFromAttribs(EGLAttrib di impl = rx::CreateVulkanWin32Display(state); } break; -# elif defined(ANGLE_PLATFORM_LINUX) +# elif defined(ANGLE_PLATFORM_LINUX) || defined(ANGLE_PLATFORM_BSD) # if defined(ANGLE_USE_GBM) if (platformType == EGL_PLATFORM_GBM_KHR && rx::IsVulkanGbmDisplayAvailable()) { -@@ -2146,7 +2146,7 @@ static ClientExtensions GenerateClientExtensions() +@@ -2150,7 +2150,7 @@ static ClientExtensions GenerateClientExtensions() extensions.platformWaylandEXT = true; #endif -#if defined(ANGLE_PLATFORM_LINUX) && (defined(ANGLE_ENABLE_OPENGL) || defined(ANGLE_ENABLE_VULKAN)) +#if (defined(ANGLE_PLATFORM_LINUX) || defined(ANGLE_PLATFORM_BSD)) && (defined(ANGLE_ENABLE_OPENGL) || defined(ANGLE_ENABLE_VULKAN)) extensions.platformSurfacelessMESA = true; #endif -@@ -2193,7 +2193,7 @@ static ClientExtensions GenerateClientExtensions() +@@ -2197,7 +2197,7 @@ static ClientExtensions GenerateClientExtensions() extensions.x11Visual = true; #endif -#if defined(ANGLE_PLATFORM_LINUX) +#if defined(ANGLE_PLATFORM_LINUX) || defined(ANGLE_PLATFORM_BSD) extensions.platformANGLEDeviceTypeEGLANGLE = true; #endif diff --git a/www/iridium/files/patch-third__party_blink_common_features.cc b/www/iridium/files/patch-third__party_blink_common_features.cc index 412c23aa9711..2c51cab3b31a 100644 --- a/www/iridium/files/patch-third__party_blink_common_features.cc +++ b/www/iridium/files/patch-third__party_blink_common_features.cc @@ -1,11 +1,11 @@ ---- third_party/blink/common/features.cc.orig 2025-09-11 13:19:19 UTC +--- third_party/blink/common/features.cc.orig 2025-10-28 14:29:43 UTC +++ third_party/blink/common/features.cc -@@ -683,7 +683,7 @@ BASE_FEATURE(kDevToolsImprovedNetworkError, +@@ -572,7 +572,7 @@ BASE_FEATURE_PARAM(base::TimeDelta, + BASE_FEATURE(DevToolsImprovedNetworkError, base::FEATURE_DISABLED_BY_DEFAULT); - BASE_FEATURE(kDirectCompositorThreadIpc, - "DirectCompositorThreadIpc", + BASE_FEATURE(DirectCompositorThreadIpc, -#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 diff --git a/www/iridium/files/patch-third__party_blink_renderer_controller_blink__initializer.cc b/www/iridium/files/patch-third__party_blink_renderer_controller_blink__initializer.cc index 634e3f03d8f4..e012f0574ed6 100644 --- a/www/iridium/files/patch-third__party_blink_renderer_controller_blink__initializer.cc +++ b/www/iridium/files/patch-third__party_blink_renderer_controller_blink__initializer.cc @@ -1,35 +1,35 @@ ---- third_party/blink/renderer/controller/blink_initializer.cc.orig 2025-06-19 07:37:57 UTC +--- third_party/blink/renderer/controller/blink_initializer.cc.orig 2025-10-28 14:29:43 UTC +++ third_party/blink/renderer/controller/blink_initializer.cc @@ -82,12 +82,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 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)), -@@ -303,7 +303,7 @@ void BlinkInitializer::RegisterMemoryWatchers(Platform +@@ -304,7 +304,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/iridium/files/patch-third__party_blink_renderer_core_dom_tree__scope.h b/www/iridium/files/patch-third__party_blink_renderer_core_dom_tree__scope.h new file mode 100644 index 000000000000..279a67b90260 --- /dev/null +++ b/www/iridium/files/patch-third__party_blink_renderer_core_dom_tree__scope.h @@ -0,0 +1,10 @@ +--- third_party/blink/renderer/core/dom/tree_scope.h.orig 2025-10-28 14:29:43 UTC ++++ third_party/blink/renderer/core/dom/tree_scope.h +@@ -29,6 +29,7 @@ + + #include "third_party/blink/renderer/bindings/core/v8/v8_observable_array_css_style_sheet.h" + #include "third_party/blink/renderer/core/core_export.h" ++#include "third_party/blink/renderer/core/css/css_style_sheet.h" + #include "third_party/blink/renderer/core/dom/tree_ordered_map.h" + #include "third_party/blink/renderer/core/html/forms/radio_button_group_scope.h" + #include "third_party/blink/renderer/core/layout/hit_test_request.h" diff --git a/www/iridium/files/patch-third__party_blink_renderer_core_editing_editing__behavior.cc b/www/iridium/files/patch-third__party_blink_renderer_core_editing_editing__behavior.cc index d4e28bf34ece..1b2828538829 100644 --- a/www/iridium/files/patch-third__party_blink_renderer_core_editing_editing__behavior.cc +++ b/www/iridium/files/patch-third__party_blink_renderer_core_editing_editing__behavior.cc @@ -1,11 +1,20 @@ ---- third_party/blink/renderer/core/editing/editing_behavior.cc.orig 2025-05-07 06:48:23 UTC +--- third_party/blink/renderer/core/editing/editing_behavior.cc.orig 2025-10-28 14:29:43 UTC +++ third_party/blink/renderer/core/editing/editing_behavior.cc -@@ -304,7 +304,7 @@ bool EditingBehavior::ShouldInsertCharacter(const Keyb +@@ -138,7 +138,7 @@ const KeyboardCodeKeyDownEntry kKeyboardCodeKeyDownEnt + {VKEY_DELETE, 0, "DeleteForward"}, + {VKEY_BACK, OPTION_OR_CTRL_KEY, "DeleteWordBackward"}, + {VKEY_DELETE, OPTION_OR_CTRL_KEY, "DeleteWordForward"}, +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + {VKEY_BACK, kCtrlKey | kShiftKey, "DeleteToBeginningOfLine"}, + #endif + #if BUILDFLAG(IS_MAC) +@@ -307,7 +307,7 @@ bool EditingBehavior::ShouldInsertCharacter(const Keyb // unexpected behaviour if (ch < ' ') return false; -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // According to XKB map no keyboard combinations with ctrl key are mapped to // printable characters, however we need the filter as the DomKey/text could // contain printable characters. diff --git a/www/iridium/files/patch-third__party_blink_renderer_core_exported_web__view__impl.cc b/www/iridium/files/patch-third__party_blink_renderer_core_exported_web__view__impl.cc index 478eecb99120..4713865f3bc1 100644 --- a/www/iridium/files/patch-third__party_blink_renderer_core_exported_web__view__impl.cc +++ b/www/iridium/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-09-11 13:19:19 UTC +--- third_party/blink/renderer/core/exported/web_view_impl.cc.orig 2025-10-28 14:29:43 UTC +++ third_party/blink/renderer/core/exported/web_view_impl.cc @@ -421,7 +421,7 @@ void RecordPrerenderActivationSignalDelay(const String #if !BUILDFLAG(IS_MAC) && !BUILDFLAG(IS_WIN) SkFontHinting RendererPreferencesToSkiaHinting( const blink::RendererPreferences& prefs) { -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (!prefs.should_antialias_text) { // When anti-aliasing is off, GTK maps all non-zero hinting settings to // 'Normal' hinting so we do the same. Otherwise, folks who have 'Slight' -@@ -3441,7 +3441,7 @@ void WebViewImpl::UpdateFontRenderingFromRendererPrefs +@@ -3456,7 +3456,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/iridium/files/patch-third__party_blink_renderer_core_frame_web__frame__test.cc b/www/iridium/files/patch-third__party_blink_renderer_core_frame_web__frame__test.cc index 9cfa2a3e530f..fa0eb48d72ad 100644 --- a/www/iridium/files/patch-third__party_blink_renderer_core_frame_web__frame__test.cc +++ b/www/iridium/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-09-11 13:19:19 UTC +--- third_party/blink/renderer/core/frame/web_frame_test.cc.orig 2025-10-28 14:29:43 UTC +++ third_party/blink/renderer/core/frame/web_frame_test.cc -@@ -6473,7 +6473,7 @@ TEST_F(WebFrameTest, DISABLED_PositionForPointTest) { +@@ -6469,7 +6469,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 \ -@@ -6882,7 +6882,7 @@ TEST_F(CompositedSelectionBoundsTest, LargeSelectionSc +@@ -6878,7 +6878,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/iridium/files/patch-third__party_blink_renderer_core_page_context__menu__controller.cc b/www/iridium/files/patch-third__party_blink_renderer_core_page_context__menu__controller.cc index b80aef0743f2..6cbe02657a22 100644 --- a/www/iridium/files/patch-third__party_blink_renderer_core_page_context__menu__controller.cc +++ b/www/iridium/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-09-11 13:19:19 UTC +--- third_party/blink/renderer/core/page/context_menu_controller.cc.orig 2025-10-28 14:29:43 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/iridium/files/patch-third__party_blink_renderer_core_paint_paint__layer.cc b/www/iridium/files/patch-third__party_blink_renderer_core_paint_paint__layer.cc index 2415d3ca52e8..4e93f3ad343b 100644 --- a/www/iridium/files/patch-third__party_blink_renderer_core_paint_paint__layer.cc +++ b/www/iridium/files/patch-third__party_blink_renderer_core_paint_paint__layer.cc @@ -1,11 +1,11 @@ ---- third_party/blink/renderer/core/paint/paint_layer.cc.orig 2025-09-11 13:19:19 UTC +--- third_party/blink/renderer/core/paint/paint_layer.cc.orig 2025-10-28 14:29:43 UTC +++ third_party/blink/renderer/core/paint/paint_layer.cc -@@ -125,7 +125,7 @@ namespace blink { +@@ -123,7 +123,7 @@ namespace blink { namespace { -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) struct SameSizeAsPaintLayer : GarbageCollected, DisplayItemClient { // The bit fields may fit into the machine word of DisplayItemClient which // has only 8-bit data. diff --git a/www/iridium/files/patch-third__party_blink_renderer_core_xml_xslt__processor.h b/www/iridium/files/patch-third__party_blink_renderer_core_xml_xslt__processor.h index 20638df2efd3..29dfc89c236c 100644 --- a/www/iridium/files/patch-third__party_blink_renderer_core_xml_xslt__processor.h +++ b/www/iridium/files/patch-third__party_blink_renderer_core_xml_xslt__processor.h @@ -1,14 +1,14 @@ ---- third_party/blink/renderer/core/xml/xslt_processor.h.orig 2025-05-07 06:48:23 UTC +--- third_party/blink/renderer/core/xml/xslt_processor.h.orig 2025-10-28 14:29:43 UTC +++ third_party/blink/renderer/core/xml/xslt_processor.h -@@ -77,7 +77,11 @@ class XSLTProcessor final : public ScriptWrappable { +@@ -79,7 +79,11 @@ class XSLTProcessor final : public ScriptWrappable { void reset(); +#if (LIBXML_VERSION >= 21200) static void ParseErrorFunc(void* user_data, const xmlError*); +#else + static void ParseErrorFunc(void* user_data, xmlError*); +#endif static void GenericErrorFunc(void* user_data, const char* msg, ...); // Only for libXSLT callbacks diff --git a/www/iridium/files/patch-third__party_blink_renderer_modules_peerconnection_webrtc__audio__renderer__test.cc b/www/iridium/files/patch-third__party_blink_renderer_modules_peerconnection_webrtc__audio__renderer__test.cc index 7d5227cd70b9..0c3d065f4efe 100644 --- a/www/iridium/files/patch-third__party_blink_renderer_modules_peerconnection_webrtc__audio__renderer__test.cc +++ b/www/iridium/files/patch-third__party_blink_renderer_modules_peerconnection_webrtc__audio__renderer__test.cc @@ -1,11 +1,11 @@ ---- third_party/blink/renderer/modules/peerconnection/webrtc_audio_renderer_test.cc.orig 2025-09-11 13:19:19 UTC +--- third_party/blink/renderer/modules/peerconnection/webrtc_audio_renderer_test.cc.orig 2025-10-28 14:29:43 UTC +++ third_party/blink/renderer/modules/peerconnection/webrtc_audio_renderer_test.cc -@@ -384,7 +384,7 @@ TEST_F(WebRtcAudioRendererTest, DISABLED_VerifySinkPar +@@ -385,7 +385,7 @@ TEST_F(WebRtcAudioRendererTest, DISABLED_VerifySinkPar SetupRenderer(kDefaultOutputDeviceId); renderer_proxy_->Start(); #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_APPLE) || \ - BUILDFLAG(IS_FUCHSIA) + BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) static const int kExpectedBufferSize = kHardwareSampleRate / 100; #elif BUILDFLAG(IS_ANDROID) static const int kExpectedBufferSize = 2 * kHardwareSampleRate / 100; diff --git a/www/iridium/files/patch-third__party_blink_renderer_modules_webgl_webgl__rendering__context__base.cc b/www/iridium/files/patch-third__party_blink_renderer_modules_webgl_webgl__rendering__context__base.cc index e4da5f588c6c..59ac87c4fddc 100644 --- a/www/iridium/files/patch-third__party_blink_renderer_modules_webgl_webgl__rendering__context__base.cc +++ b/www/iridium/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-09-11 13:19:19 UTC +--- third_party/blink/renderer/modules/webgl/webgl_rendering_context_base.cc.orig 2025-10-28 14:29:43 UTC +++ third_party/blink/renderer/modules/webgl/webgl_rendering_context_base.cc -@@ -6581,7 +6581,7 @@ void WebGLRenderingContextBase::TexImageHelperMediaVid +@@ -6589,7 +6589,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