pkgsrc-WIP-changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

qt6-qtwebengine: more patches from www/chromium



Module Name:	pkgsrc-wip
Committed By:	Mark Davies <mark%ecs.vuw.ac.nz@localhost>
Pushed By:	markd
Date:		Sun Oct 26 18:57:51 2025 +1300
Changeset:	1457ab80ccdd46abe4ca786fdb8bc035160941c5

Modified Files:
	qt6-qtwebengine/TODO
	qt6-qtwebengine/distinfo
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_browser_ui_webui_about_about__ui.cc
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_content_browser_renderer__host_render__process__host__impl.h
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_net_dns_BUILD.gn
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_ui_base_ui__base__features.cc
Added Files:
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_base_allocator_partition__allocator_src_partition__alloc_page__allocator__internals__posix.cc
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_base_memory_protected__memory.h
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_base_memory_protected__memory__posix.cc
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_browser_accessibility_page__colors.cc
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_browser_extensions_api_messaging_launch__context__posix.cc
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_browser_net_profile__network__context__service.cc
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_browser_ui_webui_about_about__ui.h
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_browser_ui_webui_app__home_app__home__page__handler.cc
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_browser_ui_webui_app__home_app__home__page__handler.h
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_browser_ui_webui_certificate__manager_certificate__manager__handler.cc
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_browser_ui_webui_certificate__manager_client__cert__sources.cc
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_browser_ui_webui_certificate__manager_client__cert__sources.h
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_browser_ui_webui_chrome__web__ui__configs.cc
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_browser_ui_webui_internals_user__education_user__education__internals__page__handler__impl.cc
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_browser_ui_webui_interstitials_interstitial__ui.cc
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_browser_ui_webui_management_management__ui__constants.cc
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_browser_ui_webui_management_management__ui__constants.h
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_browser_ui_webui_searchbox_searchbox__handler.cc
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_browser_ui_webui_signin_profile__picker__handler.cc
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_common_media_cdm__registration.h
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_autofill_core_browser_autofill__optimization__guide.cc
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_autofill_core_browser_payments__data__manager.cc
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_autofill_core_common_autofill__payments__features.h
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_autofill_core_common_autofill__prefs.cc
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_autofill_core_common_autofill__prefs.h
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_enterprise_watermarking_watermark.cc
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_named__system__lock_lock.h
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_os__crypt_async_browser_secret__portal__key__provider.cc
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_os__crypt_async_common_encryptor.cc
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_password__manager_core_browser_password__manager__client.h
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_password__manager_core_browser_password__manager__switches.cc
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_password__manager_core_browser_password__manager__switches.h
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_password__manager_core_browser_password__manual__fallback__flow.cc
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_password__manager_core_browser_password__manual__fallback__flow.h
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_password__manager_core_browser_password__store__factory__util.cc
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_password__manager_core_browser_password__store_login__database.cc
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_password__manager_core_browser_stub__password__manager__client.cc
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_password__manager_core_browser_stub__password__manager__client.h
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_policy_core_common_cloud_cloud__policy__refresh__scheduler.cc
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_soda_soda__util.cc
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_startup__metric__utils_common_startup__metric__utils.cc
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_supervised__user_core_browser_supervised__user__metrics__service.cc
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_supervised__user_core_browser_supervised__user__preferences.cc
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_supervised__user_core_common_pref__names.h
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_visited__url__ranking_public_url__visit__util.cc
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_content_browser_renderer__host_render__process__host__impl__receiver__bindings.cc
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_content_public_browser_service__process__host.cc
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_content_shell_renderer_shell__content__renderer__client.cc
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_gpu_command__buffer_service_shared__context__state.cc
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_gpu_command__buffer_service_shared__context__state.h
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_media_ffmpeg_scripts_build__ffmpeg.py
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_media_ffmpeg_scripts_robo__lib_config.py
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_net_dns_dns__config__service__posix.cc
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_printing_backend_print__backend__cups.cc
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_services_device_geolocation_location__provider__manager.cc
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_services_screen__ai_public_cpp_utilities.cc
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_services_screen__ai_sandbox_screen__ai__sandbox__hook__linux.cc
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_services_screen__ai_sandbox_screen__ai__sandbox__hook__linux.h
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_graphics_gpu_image__layer__bridge.cc
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_third__party_skia_src_ports_SkMemory__malloc.cpp
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_third__party_vulkan-validation-layers_src_layers_external_vma_vk__mem__alloc.h
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_third__party_vulkan-validation-layers_src_layers_vulkan_generated_vk__function__pointers.cpp
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_third__party_webrtc_modules_video__coding_codecs_av1_libaom__av1__encoder.cc
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_ui_base_ui__base__features.h
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_ui_ozone_platform_wayland_host_wayland__connection.cc
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_ui_ozone_platform_wayland_host_wayland__input__method__context.cc
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_ui_ozone_platform_wayland_host_wayland__popup.cc
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_ui_ozone_platform_wayland_host_wayland__screen.cc
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_ui_ozone_platform_wayland_host_wayland__screen.h
Removed Files:
	qt6-qtwebengine/patches/patch-src_3rdparty_chromium_services_screen__ai_sandbox_screen_ai__sandbox__hook__linux.h

Log Message:
qt6-qtwebengine: more patches from www/chromium

To see a diff of this commit:
https://wip.pkgsrc.org/cgi-bin/gitweb.cgi?p=pkgsrc-wip.git;a=commitdiff;h=1457ab80ccdd46abe4ca786fdb8bc035160941c5

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

diffstat:
 qt6-qtwebengine/TODO                               |  1 -
 qt6-qtwebengine/distinfo                           | 78 ++++++++++++++++++--
 ...ion__alloc_page__allocator__internals__posix.cc | 17 +++++
 ...dparty_chromium_base_memory_protected__memory.h | 50 +++++++++++++
 ...hromium_base_memory_protected__memory__posix.cc | 26 +++++++
 ...um_chrome_browser_accessibility_page__colors.cc | 26 +++++++
 ...ensions_api_messaging_launch__context__posix.cc | 17 +++++
 ...owser_net_profile__network__context__service.cc | 35 +++++++++
 ...mium_chrome_browser_ui_webui_about_about__ui.cc | 15 +++-
 ...omium_chrome_browser_ui_webui_about_about__ui.h | 17 +++++
 ..._ui_webui_app__home_app__home__page__handler.cc | 17 +++++
 ...r_ui_webui_app__home_app__home__page__handler.h | 17 +++++
 ...icate__manager_certificate__manager__handler.cc | 17 +++++
 ...i_certificate__manager_client__cert__sources.cc | 35 +++++++++
 ...ui_certificate__manager_client__cert__sources.h | 17 +++++
 ...me_browser_ui_webui_chrome__web__ui__configs.cc | 35 +++++++++
 ...r__education__internals__page__handler__impl.cc | 35 +++++++++
 ...wser_ui_webui_interstitials_interstitial__ui.cc | 35 +++++++++
 ...i_webui_management_management__ui__constants.cc | 23 ++++++
 ...ui_webui_management_management__ui__constants.h | 25 +++++++
 ...rowser_ui_webui_searchbox_searchbox__handler.cc | 35 +++++++++
 ...ser_ui_webui_signin_profile__picker__handler.cc | 26 +++++++
 ...hromium_chrome_common_media_cdm__registration.h | 17 +++++
 ...l_core_browser_autofill__optimization__guide.cc | 17 +++++
 ...utofill_core_browser_payments__data__manager.cc | 17 +++++
 ...fill_core_common_autofill__payments__features.h | 17 +++++
 ...ponents_autofill_core_common_autofill__prefs.cc | 17 +++++
 ...mponents_autofill_core_common_autofill__prefs.h | 17 +++++
 ...components_enterprise_watermarking_watermark.cc | 26 +++++++
 ..._chromium_components_named__system__lock_lock.h | 17 +++++
 ..._async_browser_secret__portal__key__provider.cc | 18 +++++
 ..._components_os__crypt_async_common_encryptor.cc | 17 +++++
 ...anager_core_browser_password__manager__client.h | 26 +++++++
 ...ger_core_browser_password__manager__switches.cc | 17 +++++
 ...ager_core_browser_password__manager__switches.h | 17 +++++
 ...ore_browser_password__manual__fallback__flow.cc | 35 +++++++++
 ...core_browser_password__manual__fallback__flow.h | 26 +++++++
 ..._core_browser_password__store__factory__util.cc | 17 +++++
 ...core_browser_password__store_login__database.cc | 26 +++++++
 ...core_browser_stub__password__manager__client.cc | 17 +++++
 ..._core_browser_stub__password__manager__client.h | 17 +++++
 ...mmon_cloud_cloud__policy__refresh__scheduler.cc | 26 +++++++
 ...3rdparty_chromium_components_soda_soda__util.cc | 35 +++++++++
 ..._metric__utils_common_startup__metric__utils.cc | 17 +++++
 ...e_browser_supervised__user__metrics__service.cc | 17 +++++
 ...r_core_browser_supervised__user__preferences.cc | 17 +++++
 ...ents_supervised__user_core_common_pref__names.h | 17 +++++
 ...isited__url__ranking_public_url__visit__util.cc | 17 +++++
 ...er_renderer__host_render__process__host__impl.h | 24 ++++++-
 ...der__process__host__impl__receiver__bindings.cc | 26 +++++++
 ...ontent_public_browser_service__process__host.cc | 17 +++++
 ...ll_renderer_shell__content__renderer__client.cc | 17 +++++
 ...mmand__buffer_service_shared__context__state.cc | 35 +++++++++
 ...ommand__buffer_service_shared__context__state.h | 26 +++++++
 ..._chromium_media_ffmpeg_scripts_build__ffmpeg.py | 82 ++++++++++++++++++++++
 ...romium_media_ffmpeg_scripts_robo__lib_config.py | 64 +++++++++++++++++
 .../patch-src_3rdparty_chromium_net_dns_BUILD.gn   | 14 +++-
 ...chromium_net_dns_dns__config__service__posix.cc | 32 +++++++++
 ...romium_printing_backend_print__backend__cups.cc | 35 +++++++++
 ...vice_geolocation_location__provider__manager.cc | 17 +++++
 ...ium_services_screen__ai_public_cpp_utilities.cc | 35 +++++++++
 ..._ai_sandbox_screen__ai__sandbox__hook__linux.cc | 24 +++++++
 ...__ai_sandbox_screen__ai__sandbox__hook__linux.h | 22 ++++++
 ...n__ai_sandbox_screen_ai__sandbox__hook__linux.h | 22 ------
 ...r_platform_graphics_gpu_image__layer__bridge.cc | 17 +++++
 ...hird__party_skia_src_ports_SkMemory__malloc.cpp | 27 +++++++
 ...layers_src_layers_external_vma_vk__mem__alloc.h | 17 +++++
 ...ers_vulkan_generated_vk__function__pointers.cpp | 17 +++++
 ...ideo__coding_codecs_av1_libaom__av1__encoder.cc | 29 ++++++++
 ...3rdparty_chromium_ui_base_ui__base__features.cc | 15 +++-
 ..._3rdparty_chromium_ui_base_ui__base__features.h | 17 +++++
 ...ne_platform_wayland_host_wayland__connection.cc | 17 +++++
 ...wayland_host_wayland__input__method__context.cc | 17 +++++
 ...i_ozone_platform_wayland_host_wayland__popup.cc | 17 +++++
 ..._ozone_platform_wayland_host_wayland__screen.cc | 35 +++++++++
 ...i_ozone_platform_wayland_host_wayland__screen.h | 44 ++++++++++++
 76 files changed, 1846 insertions(+), 38 deletions(-)

diffs:
diff --git a/qt6-qtwebengine/TODO b/qt6-qtwebengine/TODO
index 145b4e156f..0e20ef2825 100644
--- a/qt6-qtwebengine/TODO
+++ b/qt6-qtwebengine/TODO
@@ -1,3 +1,2 @@
-fixup system re2
 find why std::isnan required
 check other system library use
diff --git a/qt6-qtwebengine/distinfo b/qt6-qtwebengine/distinfo
index 6210879c0c..4d71e8582d 100644
--- a/qt6-qtwebengine/distinfo
+++ b/qt6-qtwebengine/distinfo
@@ -18,6 +18,7 @@ SHA1 (patch-src_3rdparty_chromium_base_allocator_partition__allocator_src_partit
 SHA1 (patch-src_3rdparty_chromium_base_allocator_partition__allocator_src_partition__alloc_address__space__randomization.h) = 14e58a90e47e659f860eee5c356bd045bec9563f
 SHA1 (patch-src_3rdparty_chromium_base_allocator_partition__allocator_src_partition__alloc_page__allocator.h) = 304ef2f02a8cf7cb57ded4166368eb202dedf608
 SHA1 (patch-src_3rdparty_chromium_base_allocator_partition__allocator_src_partition__alloc_page__allocator__constants.h) = 556741bce33ec052b3e29e957df94873fbf6394c
+SHA1 (patch-src_3rdparty_chromium_base_allocator_partition__allocator_src_partition__alloc_page__allocator__internals__posix.cc) = cd09a41b13cdc5f988b3bbc8b8a547f5fb6a8473
 SHA1 (patch-src_3rdparty_chromium_base_allocator_partition__allocator_src_partition__alloc_page__allocator__internals__posix.h) = e84c60a5469a90ddcea6db207ddc15352b332f35
 SHA1 (patch-src_3rdparty_chromium_base_allocator_partition__allocator_src_partition__alloc_partition__alloc__base_debug_proc__maps__linux.cc) = a2e2c097e2faa9f1ac1a46b08d22b31688f3af9e
 SHA1 (patch-src_3rdparty_chromium_base_allocator_partition__allocator_src_partition__alloc_partition__alloc__base_debug_stack__trace__posix.cc) = 0b06e50188e014bb9ab0066cd83b9d710f7bfb03
@@ -63,6 +64,8 @@ SHA1 (patch-src_3rdparty_chromium_base_memory_discardable__memory__internal.h) =
 SHA1 (patch-src_3rdparty_chromium_base_memory_madv__free__discardable__memory__posix.cc) = 804e85fc709c6dd5f438a1699ab458de438cb21c
 SHA1 (patch-src_3rdparty_chromium_base_memory_platform__shared__memory__region.h) = a2124fcbcaf6580e55765f37eb3e9087257ac7e7
 SHA1 (patch-src_3rdparty_chromium_base_memory_platform__shared__memory__region__posix.cc) = a5560afdc084ccdf2add8c2228cec8e20ac6ec09
+SHA1 (patch-src_3rdparty_chromium_base_memory_protected__memory.h) = 4563f23456536a6e7b1cc336fb1d9d1e5b065927
+SHA1 (patch-src_3rdparty_chromium_base_memory_protected__memory__posix.cc) = 0fae343876bef1f8ec92e04c76269133fa670f93
 SHA1 (patch-src_3rdparty_chromium_base_message__loop_message__pump__epoll.cc) = bdc0eab2d5137b54bbd0ceb4a6a8af26f90a61d1
 SHA1 (patch-src_3rdparty_chromium_base_message__loop_message__pump__epoll.h) = 34ca569db5240645d23852a26589534b85885b78
 SHA1 (patch-src_3rdparty_chromium_base_message__loop_message__pump__glib.cc) = 463d0d926709e791d562145219e5bc44c2a4529a
@@ -157,6 +160,7 @@ SHA1 (patch-src_3rdparty_chromium_build_toolchain_openbsd_BUILD.gn) = 6f4d626358
 SHA1 (patch-src_3rdparty_chromium_build_toolchain_toolchain.gni) = 5ded892761fd7e3ce42fa0fa3e924563ca690674
 SHA1 (patch-src_3rdparty_chromium_cc_base_features.cc) = 2ac20522b75bdec3ba935e0aa588ad379042a284
 SHA1 (patch-src_3rdparty_chromium_chrome_browser_BUILD.gn) = 003f56b68cae781d80bb73db6342e5ab75308449
+SHA1 (patch-src_3rdparty_chromium_chrome_browser_accessibility_page__colors.cc) = 10aa4a69e3f1ed2730cbdc2538f41b9f6eb5cb49
 SHA1 (patch-src_3rdparty_chromium_chrome_browser_custom__handlers_chrome__protocol__handler__registry__delegate.cc) = 128d6390eab78c1ca71e5f942736ddd381bae791
 SHA1 (patch-src_3rdparty_chromium_chrome_browser_extensions_BUILD.gn) = c313fcf73dffa53fa896edff4af35b879b83bf92
 SHA1 (patch-src_3rdparty_chromium_chrome_browser_extensions_api_api__browser__context__keyed__service__factories.cc) = c8f69b85bfeb7b95253a2afec7403f84970d23b1
@@ -167,6 +171,7 @@ SHA1 (patch-src_3rdparty_chromium_chrome_browser_extensions_api_enterprise__repo
 SHA1 (patch-src_3rdparty_chromium_chrome_browser_extensions_api_enterprise__reporting__private_enterprise__reporting__private__api.h) = 1e3ba7ba152138323a5e1925e5f1e0e7d8d50ac9
 SHA1 (patch-src_3rdparty_chromium_chrome_browser_extensions_api_image__writer__private_removable__storage__provider.cc) = 498ba50c5324aa930837cfe5a8e887418a6d0482
 SHA1 (patch-src_3rdparty_chromium_chrome_browser_extensions_api_management_chrome__management__api__delegate.cc) = ecef35a2fe4d6094befa9f74a428a7ef578a64a9
+SHA1 (patch-src_3rdparty_chromium_chrome_browser_extensions_api_messaging_launch__context__posix.cc) = c794f38b472eb34e2860696f0eee2f50efbb6002
 SHA1 (patch-src_3rdparty_chromium_chrome_browser_extensions_api_passwords__private_passwords__private__delegate__impl.cc) = 8c02cc981dc48d73b9605c7a3702d58ff71f6f32
 SHA1 (patch-src_3rdparty_chromium_chrome_browser_extensions_api_runtime_chrome__runtime__api__delegate.cc) = e97619e70deacf59d85eeb1f6af8d988d54b8be4
 SHA1 (patch-src_3rdparty_chromium_chrome_browser_extensions_api_settings__private_prefs__util.cc) = 64791b78cf87c58360def57b33791c5da44cc17a
@@ -182,6 +187,7 @@ SHA1 (patch-src_3rdparty_chromium_chrome_browser_media_webrtc_desktop__media__pi
 SHA1 (patch-src_3rdparty_chromium_chrome_browser_media_webrtc_webrtc__log__uploader.cc) = 0489bee75f2e5d08660bf04060f2298be6981049
 SHA1 (patch-src_3rdparty_chromium_chrome_browser_media_webrtc_webrtc__logging__controller.cc) = 6f82e61b1745e1569662018ef6e98a92a09542f8
 SHA1 (patch-src_3rdparty_chromium_chrome_browser_media_webrtc_webrtc__logging__controller.h) = 819d6f3ce0a9e0a0692bd0a6d40873d927d98898
+SHA1 (patch-src_3rdparty_chromium_chrome_browser_net_profile__network__context__service.cc) = eb3855b152153111639cbbb5d392c4221da259ee
 SHA1 (patch-src_3rdparty_chromium_chrome_browser_net_system__network__context__manager.cc) = 248a4160217188412d959d8940a16681a753c963
 SHA1 (patch-src_3rdparty_chromium_chrome_browser_net_system__network__context__manager.h) = 65b9c9e7f41ab3f83cdc06d78e54d6d9ab3548df
 SHA1 (patch-src_3rdparty_chromium_chrome_browser_prefs_browser__prefs.cc) = 6655e26fc9b12a1c8cc63d52ad72ad95d4176edf
@@ -190,16 +196,29 @@ SHA1 (patch-src_3rdparty_chromium_chrome_browser_printing_print__backend__servic
 SHA1 (patch-src_3rdparty_chromium_chrome_browser_printing_printer__query.cc) = bba9283339589c9a823e7dbdac161f5c3f07a285
 SHA1 (patch-src_3rdparty_chromium_chrome_browser_resources_signin_signin__shared.css) = 9aab292b6b5162fd99e99245ee2f68c48d5eed33
 SHA1 (patch-src_3rdparty_chromium_chrome_browser_signin_signin__util.cc) = f1f9605c4e877f0f3eaebf6419ed12cf7ee82444
-SHA1 (patch-src_3rdparty_chromium_chrome_browser_ui_webui_about_about__ui.cc) = 0e22630c2adf2e064b73ea48eb8223df1e5aa813
+SHA1 (patch-src_3rdparty_chromium_chrome_browser_ui_webui_about_about__ui.cc) = a0b508aa2667f6ba35fac92a1d5e8e422f4d5235
+SHA1 (patch-src_3rdparty_chromium_chrome_browser_ui_webui_about_about__ui.h) = e575bbdbd141bc525a7c874f4fb43e23650db2de
+SHA1 (patch-src_3rdparty_chromium_chrome_browser_ui_webui_app__home_app__home__page__handler.cc) = 1efa2d649816fad1f826ea9ecb95a643f18e5309
+SHA1 (patch-src_3rdparty_chromium_chrome_browser_ui_webui_app__home_app__home__page__handler.h) = aa60ffac1f1aca65e446a28af68a0f48f24afdd4
+SHA1 (patch-src_3rdparty_chromium_chrome_browser_ui_webui_certificate__manager_certificate__manager__handler.cc) = 7e3a0f965b013cf2d14404ef84848cffe764e880
+SHA1 (patch-src_3rdparty_chromium_chrome_browser_ui_webui_certificate__manager_client__cert__sources.cc) = 0cbd1b301cff80e2d3d0982ac2b25a4b44fd0207
+SHA1 (patch-src_3rdparty_chromium_chrome_browser_ui_webui_certificate__manager_client__cert__sources.h) = 8d419f2867204d19f474dbe70a69bc56b1d80def
+SHA1 (patch-src_3rdparty_chromium_chrome_browser_ui_webui_chrome__web__ui__configs.cc) = 770880b9e60ca9130c68592c8eccbe4385ab7ef5
 SHA1 (patch-src_3rdparty_chromium_chrome_browser_ui_webui_chrome__web__ui__controller__factory.cc) = 499be82bb0fad36edc0114cbaace0487a10c2950
 SHA1 (patch-src_3rdparty_chromium_chrome_browser_ui_webui_connectors__internals_device__trust__utils.cc) = 12bbb54cd385a66c2ab6f40aeeec58469652dd72
+SHA1 (patch-src_3rdparty_chromium_chrome_browser_ui_webui_internals_user__education_user__education__internals__page__handler__impl.cc) = fe2e2ce5e12da53b6c3c8dc90444b7565e10b798
+SHA1 (patch-src_3rdparty_chromium_chrome_browser_ui_webui_interstitials_interstitial__ui.cc) = 36eb8960b9a5e9d0c04b20c6579024953381c1dd
 SHA1 (patch-src_3rdparty_chromium_chrome_browser_ui_webui_management_management__ui.cc) = 30226e54911550997d63cbbdf4e644fb91eb9592
+SHA1 (patch-src_3rdparty_chromium_chrome_browser_ui_webui_management_management__ui__constants.cc) = ca15c0a19ed9bf7a9634847482d24da6c1bd6b49
+SHA1 (patch-src_3rdparty_chromium_chrome_browser_ui_webui_management_management__ui__constants.h) = 5cbc39072c73c3bb6de4bcfe629953db73974c37
 SHA1 (patch-src_3rdparty_chromium_chrome_browser_ui_webui_management_management__ui__handler.cc) = 6f91e37263caf24f3ee187f57a1fec45ff95aed1
 SHA1 (patch-src_3rdparty_chromium_chrome_browser_ui_webui_management_management__ui__handler.h) = 4a0e1d9f401ff17915bed67075507144b6001af4
 SHA1 (patch-src_3rdparty_chromium_chrome_browser_ui_webui_password__manager_promo__cards__handler.cc) = 6014b6f4c163c4363fa158cf28be9d3c90b83709
 SHA1 (patch-src_3rdparty_chromium_chrome_browser_ui_webui_password__manager_promo__cards_relaunch__chrome__promo.cc) = f2fd0b6e1839d5c987bc508539f25511df18cafc
+SHA1 (patch-src_3rdparty_chromium_chrome_browser_ui_webui_searchbox_searchbox__handler.cc) = 8353968a68c33357ab24f3ab5cc4ad87e4b6d314
 SHA1 (patch-src_3rdparty_chromium_chrome_browser_ui_webui_settings_appearance__handler.cc) = 2a7b9786c797e7e2900e84e7f6f147b5a8949ae9
 SHA1 (patch-src_3rdparty_chromium_chrome_browser_ui_webui_settings_settings__localized__strings__provider.cc) = 0cd8a6158d9e8e443d77c1729a0c1907ed1cc0bc
+SHA1 (patch-src_3rdparty_chromium_chrome_browser_ui_webui_signin_profile__picker__handler.cc) = f046c1a5bcc7274361a15e0c1774f852d166686f
 SHA1 (patch-src_3rdparty_chromium_chrome_common_channel__info.h) = e618323fc6c4ab09467c0cf079fc12d18b90df43
 SHA1 (patch-src_3rdparty_chromium_chrome_common_channel__info__posix.cc) = b9f3cd6d580c6d089978f1ac1660ad5876b3945f
 SHA1 (patch-src_3rdparty_chromium_chrome_common_chrome__features.cc) = 5b56f7c8c47822611ff2239c9290faa3390d82c2
@@ -212,6 +231,7 @@ SHA1 (patch-src_3rdparty_chromium_chrome_common_chrome__switches.h) = 81c06b1728
 SHA1 (patch-src_3rdparty_chromium_chrome_common_extensions_permissions_chrome__permission__message__rules.cc) = 60c80e2c29108d87b5d52e6013064add66f930a2
 SHA1 (patch-src_3rdparty_chromium_chrome_common_media_cdm__host__file__path.cc) = a81bdce23f14c0073bf44e8fcf54fbcbbc17296d
 SHA1 (patch-src_3rdparty_chromium_chrome_common_media_cdm__registration.cc) = 9c5be2750b269e39a6459ae2d7109577c2ce0c59
+SHA1 (patch-src_3rdparty_chromium_chrome_common_media_cdm__registration.h) = e5d524cd7a7979cb0581dd3fe42ef0c529721780
 SHA1 (patch-src_3rdparty_chromium_chrome_common_media_component__widevine__cdm__hint__file__linux.h) = 295602189ab9c902db753fc4a5d5e722cb02294e
 SHA1 (patch-src_3rdparty_chromium_chrome_common_pref__names.h) = 19d33dfe830adbc41ec977e60ed9260abc624dfa
 SHA1 (patch-src_3rdparty_chromium_chrome_common_url__constants.h) = 98eb4635cfe28e6ac7e81c848d00798e90f84d14
@@ -221,7 +241,12 @@ SHA1 (patch-src_3rdparty_chromium_chrome_test_chromedriver_chrome__launcher.cc)
 SHA1 (patch-src_3rdparty_chromium_chrome_test_chromedriver_chrome_chrome__finder.cc) = 3512b432bb1fff98e55aca04bdf81b9777c0ecde
 SHA1 (patch-src_3rdparty_chromium_chrome_test_chromedriver_key__converter__unittest.cc) = b5175d35769a253f1fff6d1ca4884b47980faa50
 SHA1 (patch-src_3rdparty_chromium_chrome_test_chromedriver_keycode__text__conversion__unittest.cc) = fc382cf7b33b24c963b2acb2d131420ec445920b
+SHA1 (patch-src_3rdparty_chromium_components_autofill_core_browser_autofill__optimization__guide.cc) = 71ae66194db04007c266dec78dfabe844dec60ba
+SHA1 (patch-src_3rdparty_chromium_components_autofill_core_browser_payments__data__manager.cc) = 5e4c2f98bd6ab4385c342c0b70b27251cb865dd3
 SHA1 (patch-src_3rdparty_chromium_components_autofill_core_common_autofill__payments__features.cc) = e5c7220ea277f4c24b2d2fbff486d883c458b709
+SHA1 (patch-src_3rdparty_chromium_components_autofill_core_common_autofill__payments__features.h) = 58c34357362e2638a0debd607b53851294c98b53
+SHA1 (patch-src_3rdparty_chromium_components_autofill_core_common_autofill__prefs.cc) = 4995d9f9503c0f538899ace73ef766bcbb025730
+SHA1 (patch-src_3rdparty_chromium_components_autofill_core_common_autofill__prefs.h) = 54eb5a7222a6e5d065fc01e20cb08cd4afacb4f0
 SHA1 (patch-src_3rdparty_chromium_components_commerce_core_commerce__feature__list.cc) = e60a6f39b5c65f0449fb181a56c6ee3176f49fbf
 SHA1 (patch-src_3rdparty_chromium_components_constrained__window_constrained__window__views.cc) = b0084df24933dc24669eaff43534caa72328e902
 SHA1 (patch-src_3rdparty_chromium_components_content__settings_core_browser_website__settings__registry.cc) = 0926b1a99aba0635a728e1a507e7d72d1e15c318
@@ -244,6 +269,7 @@ SHA1 (patch-src_3rdparty_chromium_components_device__signals_core_system__signal
 SHA1 (patch-src_3rdparty_chromium_components_discardable__memory_service_discardable__shared__memory__manager.cc) = 0a33f14a2324cd93393366a1c1c6277037b0135a
 SHA1 (patch-src_3rdparty_chromium_components_embedder__support_user__agent__utils.cc) = cab34391eed0485bc3f72ec07132de255f7f9bfe
 SHA1 (patch-src_3rdparty_chromium_components_embedder__support_user__agent__utils__unittest.cc) = 51b83c67fcfe3426737203dbc7d1691470f6de0c
+SHA1 (patch-src_3rdparty_chromium_components_enterprise_watermarking_watermark.cc) = 3118acf39899150c758f786a007b050d1f5d3f16
 SHA1 (patch-src_3rdparty_chromium_components_eye__dropper_eye__dropper__view.cc) = 12676a07323f802acb0293b095c62bb0f02f7012
 SHA1 (patch-src_3rdparty_chromium_components_feature__engagement_public_event__constants.cc) = ffee96e45a277ff8e163d42df8516c144197157d
 SHA1 (patch-src_3rdparty_chromium_components_feature__engagement_public_event__constants.h) = 2cb996e599e7188c8ccd2938bfdd269ba9ace66a
@@ -271,8 +297,11 @@ SHA1 (patch-src_3rdparty_chromium_components_metrics_metrics__log.cc) = be1763dd
 SHA1 (patch-src_3rdparty_chromium_components_metrics_motherboard.cc) = 70e02be0c5ac7987eced6c05c88d43ce678b935c
 SHA1 (patch-src_3rdparty_chromium_components_named__mojo__ipc__server_connection__info.h) = 4841499806155d40ef4dea01572105be6db1ed64
 SHA1 (patch-src_3rdparty_chromium_components_named__mojo__ipc__server_named__mojo__ipc__server__client__util.cc) = 416cde55ef508f7f994a9844c5f2110f2f30ec8b
+SHA1 (patch-src_3rdparty_chromium_components_named__system__lock_lock.h) = fcb622160341c8d522184959944592afcbeb4e84
 SHA1 (patch-src_3rdparty_chromium_components_neterror_resources_neterror.js) = fd262ef85ad1724c1f13d4d03d0862a9d8ec4364
 SHA1 (patch-src_3rdparty_chromium_components_optimization__guide_core_optimization__guide__util.cc) = d5eb48a1c4dfe5d84834096e7828efd73115f672
+SHA1 (patch-src_3rdparty_chromium_components_os__crypt_async_browser_secret__portal__key__provider.cc) = f4317c34b2dec35a2b2b9b7109f052dc5d5b324b
+SHA1 (patch-src_3rdparty_chromium_components_os__crypt_async_common_encryptor.cc) = 46d363d37191cbf7dacebdbe73c97f3a027b2780
 SHA1 (patch-src_3rdparty_chromium_components_os__crypt_sync_libsecret__util__linux.cc) = 65a6edf9fe47dafc5eeaaf5bfdc4a0a087f5c6e0
 SHA1 (patch-src_3rdparty_chromium_components_os__crypt_sync_os__crypt.h) = 1751874df5687251abafefc2397e8b1cc34f1775
 SHA1 (patch-src_3rdparty_chromium_components_paint__preview_browser_paint__preview__client.cc) = bb17b370ef0ecf04a395793cc36959d6b9a54f47
@@ -283,13 +312,23 @@ SHA1 (patch-src_3rdparty_chromium_components_password__manager_core_browser_feat
 SHA1 (patch-src_3rdparty_chromium_components_password__manager_core_browser_features_password__features.h) = d3aff12c4d3fb1ec18d56ddcbf5ad63c88728a08
 SHA1 (patch-src_3rdparty_chromium_components_password__manager_core_browser_password__form__manager.cc) = 33f419a7df9a411fdca6184b478becc44a065102
 SHA1 (patch-src_3rdparty_chromium_components_password__manager_core_browser_password__manager.cc) = 8562113008a407082b065f4fe1da457c031d655b
+SHA1 (patch-src_3rdparty_chromium_components_password__manager_core_browser_password__manager__client.h) = 0fb7357fb9f717d2d95564539458d6708879ba20
+SHA1 (patch-src_3rdparty_chromium_components_password__manager_core_browser_password__manager__switches.cc) = 1c3080f84ff5af18482c7834c2e0e8d8b8d1d42a
+SHA1 (patch-src_3rdparty_chromium_components_password__manager_core_browser_password__manager__switches.h) = 60813cf0181eb0072625926297f9bb795a1fc664
+SHA1 (patch-src_3rdparty_chromium_components_password__manager_core_browser_password__manual__fallback__flow.cc) = db08c9151601798cef466ee150556f831816f5db
+SHA1 (patch-src_3rdparty_chromium_components_password__manager_core_browser_password__manual__fallback__flow.h) = 8930e56d5466f351f03767ef3b7956c1e68df608
+SHA1 (patch-src_3rdparty_chromium_components_password__manager_core_browser_password__store__factory__util.cc) = 6bac3749125901b5ce30dcb0848d177d2d209502
+SHA1 (patch-src_3rdparty_chromium_components_password__manager_core_browser_password__store_login__database.cc) = e513d284f2418c2250906e487e5db90de492199c
 SHA1 (patch-src_3rdparty_chromium_components_password__manager_core_browser_password__store_login__database__async__helper.cc) = 996310a07659217dd477c096e92f87368f1bd1eb
 SHA1 (patch-src_3rdparty_chromium_components_password__manager_core_browser_password__store_login__database__unittest.cc) = 72c669b6422491c62257c3a5ec28725ceac5d0f1
+SHA1 (patch-src_3rdparty_chromium_components_password__manager_core_browser_stub__password__manager__client.cc) = 047a7ca19a062b42ac46b6a33ec24878a339b340
+SHA1 (patch-src_3rdparty_chromium_components_password__manager_core_browser_stub__password__manager__client.h) = e3102e6d70c31c45aa013dd75317d4219f71f0c9
 SHA1 (patch-src_3rdparty_chromium_components_password__manager_core_common_password__manager__pref__names.h) = da8021d0a7caa77b840e1aeae05f9540f052a7f4
 SHA1 (patch-src_3rdparty_chromium_components_performance__manager_public_features.h) = d1f428da1f124785a7a9be421af7ee7728a03f9d
 SHA1 (patch-src_3rdparty_chromium_components_permissions_prediction__service_prediction__common.cc) = cb425243112893fac3c23641a879749b0d07ab51
 SHA1 (patch-src_3rdparty_chromium_components_policy_core_browser_policy__pref__mapping__test.cc) = 7dca8a434ca95d04a8ca14656fad1c6741def2eb
 SHA1 (patch-src_3rdparty_chromium_components_policy_core_common_cloud_cloud__policy__client.cc) = 02bd52462e539096b8d904a85af4a932275b25aa
+SHA1 (patch-src_3rdparty_chromium_components_policy_core_common_cloud_cloud__policy__refresh__scheduler.cc) = 9bdb6e11a4e56b1226afc87cf0bf98d2ca9c38a3
 SHA1 (patch-src_3rdparty_chromium_components_policy_core_common_cloud_cloud__policy__util.cc) = 54221115c575e0bce93dc834e439e6a710e526cc
 SHA1 (patch-src_3rdparty_chromium_components_policy_core_common_policy__loader__common.cc) = da89450545e98b76f9bf808634d0cf7aa5f68186
 SHA1 (patch-src_3rdparty_chromium_components_policy_core_common_policy__paths.cc) = ba1205cab4364d2af33fbf6a91717a9536de6654
@@ -307,12 +346,17 @@ SHA1 (patch-src_3rdparty_chromium_components_search__engines_template__url__serv
 SHA1 (patch-src_3rdparty_chromium_components_security__interstitials_content_utils.cc) = f922567407809c224434f2e75ad4a7885dd63255
 SHA1 (patch-src_3rdparty_chromium_components_segmentation__platform_embedder_default__model_cross__device__user__segment.cc) = 63d0533184aae55308979817ae2306145cd6b145
 SHA1 (patch-src_3rdparty_chromium_components_services_paint__preview__compositor_paint__preview__compositor__collection__impl.cc) = de0919ae028241f22ff4c75e421b9419a282d590
+SHA1 (patch-src_3rdparty_chromium_components_soda_soda__util.cc) = 7fd35726c0e5c42c6e23f95aa2f8b58bde786d8c
+SHA1 (patch-src_3rdparty_chromium_components_startup__metric__utils_common_startup__metric__utils.cc) = 2bb5edf7b7242976e66724216371ad5924112ca4
 SHA1 (patch-src_3rdparty_chromium_components_storage__monitor_BUILD.gn) = ac3a1410b94258d2b63f1ba5b5646c3133537102
 SHA1 (patch-src_3rdparty_chromium_components_storage__monitor_removable__device__constants.cc) = c790e6148175426f9062115c8658281c8adbfc35
 SHA1 (patch-src_3rdparty_chromium_components_storage__monitor_removable__device__constants.h) = 9cfc097c70aba3468d80ebe20765c33e54947064
+SHA1 (patch-src_3rdparty_chromium_components_supervised__user_core_browser_supervised__user__metrics__service.cc) = c3fcb78103ee9da289b39cbe8adf8c14098aa238
+SHA1 (patch-src_3rdparty_chromium_components_supervised__user_core_browser_supervised__user__preferences.cc) = 1a5c5713c19f8d8094365c04b3753a804fe630c7
 SHA1 (patch-src_3rdparty_chromium_components_supervised__user_core_browser_supervised__user__service.cc) = 3ae7e248dea1f5a04906bcf19e09a726cdfd9ae8
 SHA1 (patch-src_3rdparty_chromium_components_supervised__user_core_common_features.cc) = 8962a0dfe16264439786da2d04baff6efc798008
 SHA1 (patch-src_3rdparty_chromium_components_supervised__user_core_common_features.h) = 251c2a2c49c7febf4be56767e7b616e5e8a90886
+SHA1 (patch-src_3rdparty_chromium_components_supervised__user_core_common_pref__names.h) = 82255be388a6a9e54dc4efa827b8435c3d3d92eb
 SHA1 (patch-src_3rdparty_chromium_components_sync__device__info_local__device__info__util.cc) = 054b0d50aca537efee9ac5eb349b4598a2457b4f
 SHA1 (patch-src_3rdparty_chromium_components_sync__device__info_local__device__info__util__linux.cc) = 9547bee293ce5cc6c94dc0405d4c11fadd70d0ca
 SHA1 (patch-src_3rdparty_chromium_components_system__cpu_cpu__probe.cc) = a8f8a2952552a314ad62f0059b1ca5d5d2a98b9d
@@ -321,6 +365,7 @@ SHA1 (patch-src_3rdparty_chromium_components_update__client_update__query__param
 SHA1 (patch-src_3rdparty_chromium_components_url__formatter_spoof__checks_idn__spoof__checker.cc) = 2933b6a01e4df61eeb932f018d95487260233ac5
 SHA1 (patch-src_3rdparty_chromium_components_user__education_views_help__bubble__view.cc) = 12b6e27c67eac3832580a50d501a09e2356c32e5
 SHA1 (patch-src_3rdparty_chromium_components_variations_service_variations__service.cc) = 5e08d3501cef557f801d4e77ac5efcdbf17c117d
+SHA1 (patch-src_3rdparty_chromium_components_visited__url__ranking_public_url__visit__util.cc) = 0e9627294eb7ad9f8afa02b17a80736adf5bf7c5
 SHA1 (patch-src_3rdparty_chromium_components_viz_host_host__display__client.cc) = 9879ee2d8d7063e186eaccfa982f937f81710246
 SHA1 (patch-src_3rdparty_chromium_components_viz_host_host__display__client.h) = c3ba7e67efe01e64a3ce74a31475aa1c84efdb8a
 SHA1 (patch-src_3rdparty_chromium_components_viz_service_display__embedder_skia__output__surface__impl.cc) = 3251201b4035b2a5963053b56c56b6e064345d95
@@ -364,7 +409,8 @@ SHA1 (patch-src_3rdparty_chromium_content_browser_ppapi__plugin__process__host__
 SHA1 (patch-src_3rdparty_chromium_content_browser_renderer__host_delegated__frame__host.cc) = 8241670824fa60679501cfda687734c3d4c93e3b
 SHA1 (patch-src_3rdparty_chromium_content_browser_renderer__host_media_service__video__capture__device__launcher.cc) = 7ca20dbe929afea5eccab39ebf514b850d1b5ea5
 SHA1 (patch-src_3rdparty_chromium_content_browser_renderer__host_pepper_pepper__file__io__host.cc) = 669c3446d412f7167816057126124555df7d34ff
-SHA1 (patch-src_3rdparty_chromium_content_browser_renderer__host_render__process__host__impl.h) = 00a3749d5841e761a1c1b0d344b02ecabf42af09
+SHA1 (patch-src_3rdparty_chromium_content_browser_renderer__host_render__process__host__impl.h) = 250d413db18cc4f55a0de1eb1925d85a8b17096d
+SHA1 (patch-src_3rdparty_chromium_content_browser_renderer__host_render__process__host__impl__receiver__bindings.cc) = 6c3b6a53663a7a02979332507b304b1c56ebb9f0
 SHA1 (patch-src_3rdparty_chromium_content_browser_renderer__host_render__view__host__impl.cc) = 93a6125a264b75837e1b5f79816732c686affbdd
 SHA1 (patch-src_3rdparty_chromium_content_browser_renderer__host_render__widget__host__view__aura.cc) = c7656da80a7d5d7b9b67bd67d7466b0b0babd5bc
 SHA1 (patch-src_3rdparty_chromium_content_browser_renderer__host_render__widget__host__view__aura.h) = ce49c23e89edf76eb080c53bb16a038e3fc30ad8
@@ -401,6 +447,7 @@ SHA1 (patch-src_3rdparty_chromium_content_ppapi__plugin_ppapi__blink__platform__
 SHA1 (patch-src_3rdparty_chromium_content_ppapi__plugin_ppapi__blink__platform__impl.h) = 5dfbad5b849a1598657f64db0d52acebe5c0bb6c
 SHA1 (patch-src_3rdparty_chromium_content_ppapi__plugin_ppapi__plugin__main.cc) = 24732b8429b4b5d3963d585ef6422d81a2fa692d
 SHA1 (patch-src_3rdparty_chromium_content_public_browser_content__browser__client.cc) = 4148c0640d882a67ed4cd8bbf5744be4d19dfff6
+SHA1 (patch-src_3rdparty_chromium_content_public_browser_service__process__host.cc) = 167ab36aa747f32795b5b75b0c81932cbbcba760
 SHA1 (patch-src_3rdparty_chromium_content_public_browser_zygote__host_zygote__host__linux.h) = 8763092681b697a55ce3f927c0f8b356e58bcb0c
 SHA1 (patch-src_3rdparty_chromium_content_public_common_content__features.cc) = b5f3d2c54ffd52b2e3b725818e12ce57637f2012
 SHA1 (patch-src_3rdparty_chromium_content_public_common_content__switches.cc) = d426b5c67cbc72a5023c9df603fc71501e20e18c
@@ -412,6 +459,7 @@ SHA1 (patch-src_3rdparty_chromium_content_renderer_renderer__blink__platform__im
 SHA1 (patch-src_3rdparty_chromium_content_renderer_renderer__main__platform__delegate__linux.cc) = a2689c86bbe296c98e65f1f71fb5250bdb9549c3
 SHA1 (patch-src_3rdparty_chromium_content_shell_BUILD.gn) = 0f4a9059699a73df180d558f05d0c32b8c3c74c4
 SHA1 (patch-src_3rdparty_chromium_content_shell_app_shell__main__delegate.cc) = c1177a45a477c8bf98104e0d4356b8000d56c19f
+SHA1 (patch-src_3rdparty_chromium_content_shell_renderer_shell__content__renderer__client.cc) = 7667c66c5037a6b63741baaef6d4028274ad9910
 SHA1 (patch-src_3rdparty_chromium_content_shell_utility_shell__content__utility__client.cc) = 682574b8a753fbae2ac7a244fa353d74e8eb59de
 SHA1 (patch-src_3rdparty_chromium_content_test_BUILD.gn) = 5c1624182302a3e4db373e790ff6d43258141e49
 SHA1 (patch-src_3rdparty_chromium_content_utility_services.cc) = d3392db7a25e5574e9a4deaf551c4a3a9ab31eee
@@ -447,6 +495,8 @@ SHA1 (patch-src_3rdparty_chromium_extensions_shell_browser_shell__extensions__ap
 SHA1 (patch-src_3rdparty_chromium_google__apis_gcm_engine_heartbeat__manager.cc) = 6c177386426d1cd94c04a2c2397730b34cc57c16
 SHA1 (patch-src_3rdparty_chromium_gpu_command__buffer_service_dawn__context__provider.cc) = 445ec193be368a2edd621d17201b4f3ca64ef3e0
 SHA1 (patch-src_3rdparty_chromium_gpu_command__buffer_service_gles2__cmd__decoder.cc) = 06fe499899b4f4db8aa1dc5d30d920248f53befc
+SHA1 (patch-src_3rdparty_chromium_gpu_command__buffer_service_shared__context__state.cc) = b345b914c1b73ad0472061889a05305480cb9356
+SHA1 (patch-src_3rdparty_chromium_gpu_command__buffer_service_shared__context__state.h) = e119d738fe7b0ef01f65b8959c704fb6c360870c
 SHA1 (patch-src_3rdparty_chromium_gpu_command__buffer_service_shared__image_angle__vulkan__image__backing__factory.cc) = 9ea71ec243dfc6d0860921f9e6dd72f0d0a67811
 SHA1 (patch-src_3rdparty_chromium_gpu_command__buffer_service_shared__image_external__vk__image__backing.cc) = e7781198f8ac1e69f44af2c5ed9487fe3549234e
 SHA1 (patch-src_3rdparty_chromium_gpu_command__buffer_service_shared__image_external__vk__image__backing__factory.cc) = b0c15252ec58e985c81033c3a1e1a963fc85632e
@@ -520,6 +570,8 @@ SHA1 (patch-src_3rdparty_chromium_media_capture_video_video__capture__buffer__tr
 SHA1 (patch-src_3rdparty_chromium_media_capture_video_video__capture__device__client.cc) = 7b694d0cd6735c3bcc290a4611d599167d850ca3
 SHA1 (patch-src_3rdparty_chromium_media_cdm_cdm__paths__unittest.cc) = c62a3291be727e3902bc2b1972f8c47ce4dc7a76
 SHA1 (patch-src_3rdparty_chromium_media_cdm_library__cdm_cdm__paths.gni) = 0f6016d55ae95f5e7de7c491e799892c4a2d7489
+SHA1 (patch-src_3rdparty_chromium_media_ffmpeg_scripts_build__ffmpeg.py) = 98d8e696030ddf75fe48c7b2077a4024806c5b1c
+SHA1 (patch-src_3rdparty_chromium_media_ffmpeg_scripts_robo__lib_config.py) = e71969b4f70d3d77e280a68895f8620a1e5036b3
 SHA1 (patch-src_3rdparty_chromium_media_gpu_buffer__validation.cc) = a4fb9f336d468a6f69a17107335641251bad629c
 SHA1 (patch-src_3rdparty_chromium_media_gpu_chromeos_gl__image__processor__backend.cc) = 2bc47424f58d4fbed812f7166e4135377593f680
 SHA1 (patch-src_3rdparty_chromium_media_gpu_chromeos_libyuv__image__processor__backend.cc) = c4a847bd316e48ef3f1d8c4cf6d287d2224730b8
@@ -564,9 +616,10 @@ SHA1 (patch-src_3rdparty_chromium_net_base_sockaddr__util__posix.cc) = dc8b7bc5b
 SHA1 (patch-src_3rdparty_chromium_net_base_sockaddr__util__posix__unittest.cc) = 6ed12eeae0eb2ac09cf02832eb51912fa929e1c3
 SHA1 (patch-src_3rdparty_chromium_net_cert_cert__verify__proc.h) = 763fc0a35781d54abf8183b9b948d6d84d33342f
 SHA1 (patch-src_3rdparty_chromium_net_disk__cache_simple_simple__file__tracker.cc) = eafd2af927551bd6b666698b3b1dddf1a53c42ee
-SHA1 (patch-src_3rdparty_chromium_net_dns_BUILD.gn) = 5635d20190a27513fe3d0a8fd9c0f2837364105d
+SHA1 (patch-src_3rdparty_chromium_net_dns_BUILD.gn) = b6e05d20701c6a0c00f4c496c98c6d58fa47b571
 SHA1 (patch-src_3rdparty_chromium_net_dns_address__info.cc) = 0d4085e902b10bca089c7cf2babc44dbd64e5929
 SHA1 (patch-src_3rdparty_chromium_net_dns_address__sorter__posix.cc) = 9e78593b28a951f93d114f83949bb5cacf58715c
+SHA1 (patch-src_3rdparty_chromium_net_dns_dns__config__service__posix.cc) = 6195c75c0d30d1871d315b0072f00724d15c90cf
 SHA1 (patch-src_3rdparty_chromium_net_dns_dns__reloader.cc) = d75060d7ecc651cf5d8e0f89d98d21b23ba4c7dd
 SHA1 (patch-src_3rdparty_chromium_net_dns_dns__util.cc) = 24fc4d22a96c0ec9469e0c954454de78caccaace
 SHA1 (patch-src_3rdparty_chromium_net_dns_host__resolver__proc.cc) = 564c5c8fa7eafa946505ba2dfccbb0d910ab7fd9
@@ -597,6 +650,7 @@ SHA1 (patch-src_3rdparty_chromium_net_url__request_url__request__context.h) = c7
 SHA1 (patch-src_3rdparty_chromium_net_url__request_url__request__context__builder.cc) = b810f374b31d2e7dc5790a11ac1ab947ad3f1dea
 SHA1 (patch-src_3rdparty_chromium_pdf_pdfium_pdfium__engine.cc) = d543568c13dbdc29433c4f17c0fdea6b89eec07e
 SHA1 (patch-src_3rdparty_chromium_printing_backend_cups__ipp__helper.cc) = 8cc3bf17a5410ea3880fba772fdaa3d83d1fe0ff
+SHA1 (patch-src_3rdparty_chromium_printing_backend_print__backend__cups.cc) = ad32b8a41560ae5749b0264a3b83388e7af0b42e
 SHA1 (patch-src_3rdparty_chromium_printing_mojom_printing__context__mojom__traits.cc) = 3f7f76e3cac9d7b80f4d6ebc8da1465f4194af03
 SHA1 (patch-src_3rdparty_chromium_printing_mojom_printing__context__mojom__traits.h) = 663f3e388acf9fe096dba19b57fd51db02205ec9
 SHA1 (patch-src_3rdparty_chromium_printing_print__settings.cc) = 6a9759160b4ff301dbd26d1da13ff2cc6e9d8170
@@ -630,6 +684,7 @@ SHA1 (patch-src_3rdparty_chromium_sandbox_policy_switches.h) = e420a1d68732f6e5b
 SHA1 (patch-src_3rdparty_chromium_services_audio_audio__sandbox__hook__linux.cc) = 5620309d185248a6ab726a61beb093264bdaf7f2
 SHA1 (patch-src_3rdparty_chromium_services_audio_audio__sandbox__hook__linux.h) = d56e4bdacbff751ffbe89b324aa7894477d2c033
 SHA1 (patch-src_3rdparty_chromium_services_device_BUILD.gn) = 53bf5fee9e0c13b1a077928e4625f0f704730a32
+SHA1 (patch-src_3rdparty_chromium_services_device_geolocation_location__provider__manager.cc) = 011581c59fe3d6ae1a276cace6b5ffb1d4139b05
 SHA1 (patch-src_3rdparty_chromium_services_device_hid_BUILD.gn) = 78f83257574d071d7589b23f88ea12a2d466c32a
 SHA1 (patch-src_3rdparty_chromium_services_device_hid_hid__connection__fido.cc) = 3b31fe0dcd23802531d0b478d1a69b14fc6a618a
 SHA1 (patch-src_3rdparty_chromium_services_device_hid_hid__connection__fido.h) = cc206325efc2949cf18c080f4c1386137450a22d
@@ -669,7 +724,9 @@ SHA1 (patch-src_3rdparty_chromium_services_resource__coordinator_memory__instrum
 SHA1 (patch-src_3rdparty_chromium_services_resource__coordinator_public_cpp_memory__instrumentation_BUILD.gn) = c482b05e67200bfad04b963c49f2531223bc69e8
 SHA1 (patch-src_3rdparty_chromium_services_resource__coordinator_public_cpp_memory__instrumentation_os__metrics.h) = 21e1288281c64aa373d2a74c3e49d865a7c48f27
 SHA1 (patch-src_3rdparty_chromium_services_resource__coordinator_public_cpp_memory__instrumentation_os__metrics__bsd.cc) = 5da17e38bce6654dd0ea582ff656da03b0455bef
-SHA1 (patch-src_3rdparty_chromium_services_screen__ai_sandbox_screen_ai__sandbox__hook__linux.h) = 1d3233682e2e7755ee0d2527e4344a7c92fb64f3
+SHA1 (patch-src_3rdparty_chromium_services_screen__ai_public_cpp_utilities.cc) = 9ded594b90c46c8b393703fc637d2c362f44cb9b
+SHA1 (patch-src_3rdparty_chromium_services_screen__ai_sandbox_screen__ai__sandbox__hook__linux.cc) = 3b59e8248e4656ae04129068106801f4d61f33a1
+SHA1 (patch-src_3rdparty_chromium_services_screen__ai_sandbox_screen__ai__sandbox__hook__linux.h) = 1d3233682e2e7755ee0d2527e4344a7c92fb64f3
 SHA1 (patch-src_3rdparty_chromium_services_service__manager_BUILD.gn) = e2bae929f864212043e79c67dc29633d067d9199
 SHA1 (patch-src_3rdparty_chromium_services_service__manager_public_cpp_service__executable_BUILD.gn) = be1f5d26b35f26de3e59e28a12d7ec4c4ddef945
 SHA1 (patch-src_3rdparty_chromium_services_tracing_public_cpp_stack__sampling_tracing__sampler__profiler.cc) = 228f67b9bf1f58544d2d99c63a50a938a54bf1e3
@@ -740,6 +797,7 @@ SHA1 (patch-src_3rdparty_chromium_third__party_blink_renderer_platform_fonts_fon
 SHA1 (patch-src_3rdparty_chromium_third__party_blink_renderer_platform_fonts_skia_font__cache__skia.cc) = 8fe09027e048660a5bdd90a5b79be3f8ae6ced24
 SHA1 (patch-src_3rdparty_chromium_third__party_blink_renderer_platform_graphics_begin__frame__provider.cc) = 7590c583f0d24e22810619cc1c34f5e2b7190619
 SHA1 (patch-src_3rdparty_chromium_third__party_blink_renderer_platform_graphics_color.cc) = 114db343a2f260db6c39c8a00fd13f708b915b11
+SHA1 (patch-src_3rdparty_chromium_third__party_blink_renderer_platform_graphics_gpu_image__layer__bridge.cc) = af26c76901f4170e71630a9742314c92ad704b3d
 SHA1 (patch-src_3rdparty_chromium_third__party_blink_renderer_platform_graphics_video__frame__submitter.cc) = 8f83b157aafe59d8f5b29ffb34ba8e8c502394ba
 SHA1 (patch-src_3rdparty_chromium_third__party_blink_renderer_platform_instrumentation_partition__alloc__memory__dump__provider.cc) = acc575358d959c5149c968eafa2ddfb61d121cf6
 SHA1 (patch-src_3rdparty_chromium_third__party_blink_renderer_platform_peerconnection_rtc__video__encoder__factory.cc) = f6f31aa03ad53edb67ac68dcfd5ffb86613b8254
@@ -825,6 +883,7 @@ SHA1 (patch-src_3rdparty_chromium_third__party_perfetto_src_tracing_ipc_memfd.cc
 SHA1 (patch-src_3rdparty_chromium_third__party_perfetto_src_tracing_platform__posix.cc) = 6ff0b8d739a348a121341a3a7b40cdc8e8d3e183
 SHA1 (patch-src_3rdparty_chromium_third__party_perfetto_src_tracing_track.cc) = 823035d49f1e03cc2a3318fc30341357ee6b5a20
 SHA1 (patch-src_3rdparty_chromium_third__party_skia_src_gpu_ganesh_GrAutoLocaleSetter.h) = 68f39b077cfd899ee0a1490e8b43b6bb6836555b
+SHA1 (patch-src_3rdparty_chromium_third__party_skia_src_ports_SkMemory__malloc.cpp) = bd9f8d8cba98b02cef5b043aee46cbf8c308db2c
 SHA1 (patch-src_3rdparty_chromium_third__party_skia_src_ports_SkOSFile__posix.cpp) = 74dfdd87fa7db18dc392924f1c73b1abb779d851
 SHA1 (patch-src_3rdparty_chromium_third__party_speech-dispatcher_libspeechd__version.h) = fc37204dbc47f25d4ef1dff098e11735d7b22a45
 SHA1 (patch-src_3rdparty_chromium_third__party_speech-dispatcher_speechd__types.h) = 68c895161dd035f9e05857fffce705782a5e5e45
@@ -840,12 +899,15 @@ SHA1 (patch-src_3rdparty_chromium_third__party_test__fonts_fontconfig_BUILD.gn)
 SHA1 (patch-src_3rdparty_chromium_third__party_test__fonts_fontconfig_fontconfig__util__linux.cc) = 8f48901f46d9bb6ab59bd6f04516ee70031aad0e
 SHA1 (patch-src_3rdparty_chromium_third__party_test__fonts_fontconfig_generate__fontconfig__caches.cc) = 5f41bd37e10c8d3df3c0bc69b47ee898cdf47615
 SHA1 (patch-src_3rdparty_chromium_third__party_tflite_features.gni) = 8f6b6f940cc3be3377c8b4b02b2c831f6007f51d
+SHA1 (patch-src_3rdparty_chromium_third__party_vulkan-validation-layers_src_layers_external_vma_vk__mem__alloc.h) = 581b7abee1f72daa69d2a0c3467fa2ccc28e0af8
+SHA1 (patch-src_3rdparty_chromium_third__party_vulkan-validation-layers_src_layers_vulkan_generated_vk__function__pointers.cpp) = 4d7382dcf7f342174de5d295d7dd66f602f39672
 SHA1 (patch-src_3rdparty_chromium_third__party_vulkan__memory__allocator_include_vk__mem__alloc.h) = 2634e989d6ba486c83d993958ff8e8d887479f07
 SHA1 (patch-src_3rdparty_chromium_third__party_wayland_BUILD.gn) = 013cce985da43faccfc33d7ca542866b52a973a2
 SHA1 (patch-src_3rdparty_chromium_third__party_webrtc_BUILD.gn) = 3fa27897054e21f75ac31b7e2637953b2dcd696a
 SHA1 (patch-src_3rdparty_chromium_third__party_webrtc_modules_audio__device_BUILD.gn) = 3036097971f762745969808e3bf89c8778bb0257
 SHA1 (patch-src_3rdparty_chromium_third__party_webrtc_modules_desktop__capture_linux_wayland_egl__dmabuf.cc) = 51d1cadd64c06cd1c4e94f4b27fdc8aa9e2428b7
 SHA1 (patch-src_3rdparty_chromium_third__party_webrtc_modules_desktop__capture_linux_x11_x__server__pixel__buffer.cc) = 894e88dfdad080cbded546cd4defa31ad99eec9a
+SHA1 (patch-src_3rdparty_chromium_third__party_webrtc_modules_video__coding_codecs_av1_libaom__av1__encoder.cc) = 8dc4543a332ec18a931b3426b43ad770e2629bf4
 SHA1 (patch-src_3rdparty_chromium_third__party_webrtc_rtc__base_byte__order.h) = fede3ffdd92c47c7c2e61a67b6396662b82f398e
 SHA1 (patch-src_3rdparty_chromium_third__party_webrtc_rtc__base_ip__address.cc) = 2dee8c95b65d443bba8462c441ff784150f59e5a
 SHA1 (patch-src_3rdparty_chromium_third__party_webrtc_rtc__base_net__test__helpers.cc) = 1c3baafcd76d083bf53c348794b79249f7d0795b
@@ -886,7 +948,8 @@ SHA1 (patch-src_3rdparty_chromium_ui_base_ime_init_input__method__initializer.cc
 SHA1 (patch-src_3rdparty_chromium_ui_base_ime_linux_linux__input__method__context__factory.cc) = 3dc0a2ae872de9b42d086b4fd44db7f2c88349fd
 SHA1 (patch-src_3rdparty_chromium_ui_base_ime_text__input__client.h) = a6e6148eeccb4650be74eb7a0bb1b477ccc2ffbe
 SHA1 (patch-src_3rdparty_chromium_ui_base_resource_resource__bundle.cc) = 2788d493cc9a465c7a8baa3b2c7e6922d3c42479
-SHA1 (patch-src_3rdparty_chromium_ui_base_ui__base__features.cc) = d667aea51c949f2597131302a59ec4793b3543cf
+SHA1 (patch-src_3rdparty_chromium_ui_base_ui__base__features.cc) = 91530ae92fb831716c137e5e262c64059c6dbb77
+SHA1 (patch-src_3rdparty_chromium_ui_base_ui__base__features.h) = 159770a1b200ef00920ba41133ef6a5ab3f52bb5
 SHA1 (patch-src_3rdparty_chromium_ui_base_ui__base__switches.cc) = 4128027e417fbafee68bf553a927742249a26bff
 SHA1 (patch-src_3rdparty_chromium_ui_base_ui__base__switches.h) = 782dee8d41847fe7fd45fe364530291b993f7ddb
 SHA1 (patch-src_3rdparty_chromium_ui_base_webui_web__ui__util.cc) = b79a2ee8a4786aa98b70846e0516a11e65357d16
@@ -956,6 +1019,11 @@ SHA1 (patch-src_3rdparty_chromium_ui_ozone_platform_wayland_common_wayland__util
 SHA1 (patch-src_3rdparty_chromium_ui_ozone_platform_wayland_emulate_wayland__input__emulate.cc) = ebbb1c652006ce3f5c1c138b2dfaaa2f1a07e66d
 SHA1 (patch-src_3rdparty_chromium_ui_ozone_platform_wayland_emulate_wayland__input__emulate.h) = f1d418d901e25e8a38d58b489db49bbe7b037343
 SHA1 (patch-src_3rdparty_chromium_ui_ozone_platform_wayland_gpu_vulkan__implementation__wayland.cc) = 13f1b5a4661179500e4058696dc99425533daaa6
+SHA1 (patch-src_3rdparty_chromium_ui_ozone_platform_wayland_host_wayland__connection.cc) = c432c03e9d1e48531c00eddaf97dfecd1ea645d8
+SHA1 (patch-src_3rdparty_chromium_ui_ozone_platform_wayland_host_wayland__input__method__context.cc) = 1fe180e91884fc192a9a5ae831435e9141a495c2
+SHA1 (patch-src_3rdparty_chromium_ui_ozone_platform_wayland_host_wayland__popup.cc) = 93a136006522aabd76417893c34c8249abb22e3d
+SHA1 (patch-src_3rdparty_chromium_ui_ozone_platform_wayland_host_wayland__screen.cc) = 97365cb8a501cd749733fc737dc7be8218c85f4d
+SHA1 (patch-src_3rdparty_chromium_ui_ozone_platform_wayland_host_wayland__screen.h) = 4a6023cca6dc29252b740302ad1e8c6f7f20eba6
 SHA1 (patch-src_3rdparty_chromium_ui_ozone_platform_wayland_host_wayland__toplevel__window.cc) = ab2affb4ac88b21ddc883e55c0d5c8ded3d0a251
 SHA1 (patch-src_3rdparty_chromium_ui_ozone_platform_wayland_host_wayland__toplevel__window.h) = 9a494376a485b6904e9462b89113e89546db301a
 SHA1 (patch-src_3rdparty_chromium_ui_ozone_platform_wayland_host_wayland__window.cc) = 0d6a3f4919d2259f716ced2eafa99c1b96ffee0b
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_base_allocator_partition__allocator_src_partition__alloc_page__allocator__internals__posix.cc b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_base_allocator_partition__allocator_src_partition__alloc_page__allocator__internals__posix.cc
new file mode 100644
index 0000000000..24a2410984
--- /dev/null
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_base_allocator_partition__allocator_src_partition__alloc_page__allocator__internals__posix.cc
@@ -0,0 +1,17 @@
+$NetBSD$
+
+* Part of patchset to build chromium on NetBSD
+* Based on OpenBSD's chromium patches, and
+  pkgsrc's qt5-qtwebengine patches
+
+--- src/3rdparty/chromium/base/allocator/partition_allocator/src/partition_alloc/page_allocator_internals_posix.cc.orig	2025-09-25 11:10:42.000000000 +0000
++++ src/3rdparty/chromium/base/allocator/partition_allocator/src/partition_alloc/page_allocator_internals_posix.cc
+@@ -9,7 +9,7 @@
+ #include "partition_alloc/page_allocator.h"
+ 
+ #if PA_BUILDFLAG(HAS_MEMORY_TAGGING) || \
+-    (defined(__ARM_FEATURE_BTI_DEFAULT) && (__ARM_FEATURE_BTI_DEFAULT == 1))
++    (defined(__ARM_FEATURE_BTI_DEFAULT) && (__ARM_FEATURE_BTI_DEFAULT == 1) && !PA_BUILDFLAG(IS_BSD))
+ struct __ifunc_arg_t;
+ 
+ #include "partition_alloc/aarch64_support.h"
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_base_memory_protected__memory.h b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_base_memory_protected__memory.h
new file mode 100644
index 0000000000..44157edff9
--- /dev/null
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_base_memory_protected__memory.h
@@ -0,0 +1,50 @@
+$NetBSD$
+
+* Part of patchset to build chromium on NetBSD
+* Based on OpenBSD's chromium patches, and
+  pkgsrc's qt5-qtwebengine patches
+
+--- src/3rdparty/chromium/base/memory/protected_memory.h.orig	2025-09-25 11:10:42.000000000 +0000
++++ src/3rdparty/chromium/base/memory/protected_memory.h
+@@ -119,12 +119,12 @@ __declspec(selectany) char __stop_protec
+ 
+ #define DECLARE_PROTECTED_DATA constinit
+ #define DEFINE_PROTECTED_DATA constinit __declspec(allocate("prot$mem"))
+-#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID)
++#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD)
+ // This value is used to align the writers variable. That variable needs to be
+ // aligned to ensure that the protected memory section starts on a page
+ // boundary.
+ #if (PA_BUILDFLAG(IS_ANDROID) && PA_BUILDFLAG(PA_ARCH_CPU_64_BITS)) || \
+-    (PA_BUILDFLAG(IS_LINUX) && PA_BUILDFLAG(PA_ARCH_CPU_ARM64))
++    ((PA_BUILDFLAG(IS_LINUX) || PA_BUILDFLAG(IS_BSD)) && PA_BUILDFLAG(PA_ARCH_CPU_ARM64))
+ // arm64 supports 4kb, 16kb, and 64kb pages. Set to the largest of 64kb as that
+ // will guarantee the section is page aligned regardless of the choice.
+ inline constexpr int kProtectedMemoryAlignment = 65536;
+@@ -339,7 +339,7 @@ class BASE_EXPORT AutoWritableMemoryBase
+     // where an attacker could overwrite it with a large value and invoke code
+     // that constructs and destructs an AutoWritableMemory. After such a call
+     // protected memory would still be set writable because writers > 0.
+-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID)
++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD)
+     // On Linux, the protected memory section is not automatically page aligned.
+     // This means that attempts to reset the protected memory region to readonly
+     // will set some of the preceding section that is on the same page readonly
+@@ -353,7 +353,7 @@ class BASE_EXPORT AutoWritableMemoryBase
+ #endif
+     static inline size_t writers GUARDED_BY(writers_lock()) = 0;
+ 
+-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID)
++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD)
+     // On Linux, there is no guarantee the section following the protected
+     // memory section is page aligned. This can result in attempts to change
+     // the access permissions of the end of the protected memory section
+@@ -411,7 +411,7 @@ class BASE_EXPORT AutoWritableMemoryInit
+     // the variable to something large before the section was read-only.
+     WriterData::writers = 0;
+     CHECK(SetProtectedSectionReadOnly());
+-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID)
++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD)
+     // Set the protected_memory_section_buffer to true to ensure the buffer
+     // section is created. If a variable is declared but not used the memory
+     // section won't be created.
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_base_memory_protected__memory__posix.cc b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_base_memory_protected__memory__posix.cc
new file mode 100644
index 0000000000..846fcc49b1
--- /dev/null
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_base_memory_protected__memory__posix.cc
@@ -0,0 +1,26 @@
+$NetBSD$
+
+* Part of patchset to build chromium on NetBSD
+* Based on OpenBSD's chromium patches, and
+  pkgsrc's qt5-qtwebengine patches
+
+--- src/3rdparty/chromium/base/memory/protected_memory_posix.cc.orig	2025-09-25 11:10:42.000000000 +0000
++++ src/3rdparty/chromium/base/memory/protected_memory_posix.cc
+@@ -6,7 +6,7 @@
+ 
+ #include <sys/mman.h>
+ 
+-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID)
++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD)
+ #include <sys/resource.h>
+ #endif  // BUILDFLAG(IS_LINUX)
+ 
+@@ -34,7 +34,7 @@ bool SetMemory(void* start, void* end, i
+ }  // namespace
+ 
+ namespace internal {
+-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID)
++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD)
+ void CheckMemoryReadOnly(const void* ptr) {
+   const uintptr_t page_start =
+       bits::AlignDown(reinterpret_cast<uintptr_t>(ptr), GetPageSize());
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_browser_accessibility_page__colors.cc b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_browser_accessibility_page__colors.cc
new file mode 100644
index 0000000000..06c8503dab
--- /dev/null
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_browser_accessibility_page__colors.cc
@@ -0,0 +1,26 @@
+$NetBSD$
+
+* Part of patchset to build chromium on NetBSD
+* Based on OpenBSD's chromium patches, and
+  pkgsrc's qt5-qtwebengine patches
+
+--- src/3rdparty/chromium/chrome/browser/accessibility/page_colors.cc.orig	2025-09-25 11:10:42.000000000 +0000
++++ src/3rdparty/chromium/chrome/browser/accessibility/page_colors.cc
+@@ -12,7 +12,7 @@
+ #include "components/sync_preferences/pref_service_syncable.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() {
+ 
+ void PageColors::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/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_browser_extensions_api_messaging_launch__context__posix.cc b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_browser_extensions_api_messaging_launch__context__posix.cc
new file mode 100644
index 0000000000..062afc91b9
--- /dev/null
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_browser_extensions_api_messaging_launch__context__posix.cc
@@ -0,0 +1,17 @@
+$NetBSD$
+
+* Part of patchset to build chromium on NetBSD
+* Based on OpenBSD's chromium patches, and
+  pkgsrc's qt5-qtwebengine patches
+
+--- src/3rdparty/chromium/chrome/browser/extensions/api/messaging/launch_context_posix.cc.orig	2025-09-25 11:10:42.000000000 +0000
++++ src/3rdparty/chromium/chrome/browser/extensions/api/messaging/launch_context_posix.cc
+@@ -86,7 +86,7 @@ std::optional<LaunchContext::ProcessStat
+ 
+ // TODO(crbug.com/40118868): Revisit the macro expression once build flag switch
+ // of lacros-chrome is complete.
+-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS)
++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_BSD)
+   // Don't use no_new_privs mode, e.g. in case the host needs to use sudo.
+   options.allow_new_privs = true;
+ #endif
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_browser_net_profile__network__context__service.cc b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_browser_net_profile__network__context__service.cc
new file mode 100644
index 0000000000..e690f4e0fc
--- /dev/null
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_browser_net_profile__network__context__service.cc
@@ -0,0 +1,35 @@
+$NetBSD$
+
+* Part of patchset to build chromium on NetBSD
+* Based on OpenBSD's chromium patches, and
+  pkgsrc's qt5-qtwebengine patches
+
+--- src/3rdparty/chromium/chrome/browser/net/profile_network_context_service.cc.orig	2025-09-25 11:10:42.000000000 +0000
++++ src/3rdparty/chromium/chrome/browser/net/profile_network_context_service.cc
+@@ -140,7 +140,7 @@
+ #include "chromeos/startup/browser_params_proxy.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 "components/enterprise/client_certificates/core/certificate_provisioning_service.h"
+ #include "components/enterprise/client_certificates/core/client_certificates_service.h"
+@@ -260,7 +260,7 @@ void UpdateCookieSettings(Profile* profi
+       });
+ }
+ 
+-#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<net::ClientCertStore> GetWrappedCertStore(
+     Profile* profile,
+     std::unique_ptr<net::ClientCertStore> platform_store) {
+@@ -986,7 +986,7 @@ ProfileNetworkContextService::CreateClie
+   store = std::make_unique<ClientCertStoreLacros>(
+       std::move(certificate_provider), cert_db_initializer, std::move(store));
+ #endif  // BUILDFLAG(IS_CHROMEOS_LACROS)
+-#if BUILDFLAG(IS_LINUX)
++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)
+   return GetWrappedCertStore(profile_, std::move(store));
+ #else
+   return store;
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_browser_ui_webui_about_about__ui.cc b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_browser_ui_webui_about_about__ui.cc
index b155b15b8c..3c91dd79e9 100644
--- a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_browser_ui_webui_about_about__ui.cc
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_browser_ui_webui_about_about__ui.cc
@@ -4,9 +4,9 @@ $NetBSD$
 * Based on OpenBSD's chromium patches, and
   pkgsrc's qt5-qtwebengine patches
 
---- src/3rdparty/chromium/chrome/browser/ui/webui/about/about_ui.cc.orig	2024-11-21 04:36:37.000000000 +0000
+--- src/3rdparty/chromium/chrome/browser/ui/webui/about/about_ui.cc.orig	2025-09-25 11:10:42.000000000 +0000
 +++ src/3rdparty/chromium/chrome/browser/ui/webui/about/about_ui.cc
-@@ -592,7 +592,7 @@ std::string ChromeURLs(content::BrowserC
+@@ -596,7 +596,7 @@ std::string ChromeURLs(content::BrowserC
    return html;
  }
  
@@ -15,7 +15,16 @@ $NetBSD$
  std::string AboutLinuxProxyConfig() {
    std::string data;
    AppendHeader(&data,
-@@ -646,7 +646,7 @@ void AboutUIHTMLSource::StartDataRequest
+@@ -629,7 +629,7 @@ TermsUIConfig::TermsUIConfig()
+     : AboutUIConfigBase(chrome::kChromeUITermsHost) {}
+ #endif
+ 
+-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_OPENBSD)
++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD)
+ LinuxProxyConfigUI::LinuxProxyConfigUI()
+     : AboutUIConfigBase(chrome::kChromeUILinuxProxyConfigHost) {}
+ #endif
+@@ -681,7 +681,7 @@ void AboutUIHTMLSource::StartDataRequest
        response =
            ui::ResourceBundle::GetSharedInstance().LoadDataResourceString(idr);
      }
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_browser_ui_webui_about_about__ui.h b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_browser_ui_webui_about_about__ui.h
new file mode 100644
index 0000000000..5d9db7fbb5
--- /dev/null
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_browser_ui_webui_about_about__ui.h
@@ -0,0 +1,17 @@
+$NetBSD$
+
+* Part of patchset to build chromium on NetBSD
+* Based on OpenBSD's chromium patches, and
+  pkgsrc's qt5-qtwebengine patches
+
+--- src/3rdparty/chromium/chrome/browser/ui/webui/about/about_ui.h.orig	2025-09-25 11:10:42.000000000 +0000
++++ src/3rdparty/chromium/chrome/browser/ui/webui/about/about_ui.h
+@@ -50,7 +50,7 @@ class TermsUIConfig : public AboutUIConf
+ };
+ #endif
+ 
+-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_OPENBSD)
++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD)
+ // chrome://linux-proxy-config
+ class LinuxProxyConfigUI : public AboutUIConfigBase {
+  public:
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_browser_ui_webui_app__home_app__home__page__handler.cc b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_browser_ui_webui_app__home_app__home__page__handler.cc
new file mode 100644
index 0000000000..69de9db0c0
--- /dev/null
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_browser_ui_webui_app__home_app__home__page__handler.cc
@@ -0,0 +1,17 @@
+$NetBSD$
+
+* Part of patchset to build chromium on NetBSD
+* Based on OpenBSD's chromium patches, and
+  pkgsrc's qt5-qtwebengine patches
+
+--- src/3rdparty/chromium/chrome/browser/ui/webui/app_home/app_home_page_handler.cc.orig	2025-09-25 11:10:42.000000000 +0000
++++ src/3rdparty/chromium/chrome/browser/ui/webui/app_home/app_home_page_handler.cc
+@@ -62,7 +62,7 @@
+ #include "ui/base/window_open_disposition_utils.h"
+ #include "url/gurl.h"
+ 
+-static_assert(BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX));
++static_assert(BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD));
+ 
+ using content::WebUI;
+ using extensions::Extension;
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_browser_ui_webui_app__home_app__home__page__handler.h b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_browser_ui_webui_app__home_app__home__page__handler.h
new file mode 100644
index 0000000000..64bc7e475f
--- /dev/null
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_browser_ui_webui_app__home_app__home__page__handler.h
@@ -0,0 +1,17 @@
+$NetBSD$
+
+* Part of patchset to build chromium on NetBSD
+* Based on OpenBSD's chromium patches, and
+  pkgsrc's qt5-qtwebengine patches
+
+--- src/3rdparty/chromium/chrome/browser/ui/webui/app_home/app_home_page_handler.h.orig	2025-09-25 11:10:42.000000000 +0000
++++ src/3rdparty/chromium/chrome/browser/ui/webui/app_home/app_home_page_handler.h
+@@ -24,7 +24,7 @@
+ #include "mojo/public/cpp/bindings/receiver.h"
+ #include "mojo/public/cpp/bindings/remote.h"
+ 
+-static_assert(BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX));
++static_assert(BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD));
+ 
+ class ExtensionEnableFlow;
+ 
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_browser_ui_webui_certificate__manager_certificate__manager__handler.cc b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_browser_ui_webui_certificate__manager_certificate__manager__handler.cc
new file mode 100644
index 0000000000..58affe7df0
--- /dev/null
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_browser_ui_webui_certificate__manager_certificate__manager__handler.cc
@@ -0,0 +1,17 @@
+$NetBSD$
+
+* Part of patchset to build chromium on NetBSD
+* Based on OpenBSD's chromium patches, and
+  pkgsrc's qt5-qtwebengine patches
+
+--- src/3rdparty/chromium/chrome/browser/ui/webui/certificate_manager/certificate_manager_handler.cc.orig	2025-09-25 11:10:42.000000000 +0000
++++ src/3rdparty/chromium/chrome/browser/ui/webui/certificate_manager/certificate_manager_handler.cc
+@@ -154,7 +154,7 @@ CertificateManagerPageHandler::GetCertSo
+             "distrusted_certs",
+             cert_verifier::mojom::CertificateTrust::kDistrusted);
+         break;
+-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX)
++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)
+       case certificate_manager_v2::mojom::CertificateSource::
+           kProvisionedClientCert:
+         source_ptr = CreateProvisionedClientCertSource(profile_);
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_browser_ui_webui_certificate__manager_client__cert__sources.cc b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_browser_ui_webui_certificate__manager_client__cert__sources.cc
new file mode 100644
index 0000000000..5239c0a5ac
--- /dev/null
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_browser_ui_webui_certificate__manager_client__cert__sources.cc
@@ -0,0 +1,35 @@
+$NetBSD$
+
+* Part of patchset to build chromium on NetBSD
+* Based on OpenBSD's chromium patches, and
+  pkgsrc's qt5-qtwebengine patches
+
+--- src/3rdparty/chromium/chrome/browser/ui/webui/certificate_manager/client_cert_sources.cc.orig	2025-09-25 11:10:42.000000000 +0000
++++ src/3rdparty/chromium/chrome/browser/ui/webui/certificate_manager/client_cert_sources.cc
+@@ -43,7 +43,7 @@
+ #include "net/ssl/client_cert_store_mac.h"
+ #endif  // BUILDFLAG(IS_MAC)
+ 
+-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX)
++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)
+ #include "chrome/browser/enterprise/client_certificates/certificate_provisioning_service_factory.h"
+ #include "components/enterprise/client_certificates/core/certificate_provisioning_service.h"
+ #include "components/enterprise/client_certificates/core/client_certificates_service.h"
+@@ -191,7 +191,7 @@ std::unique_ptr<ClientCertStoreLoader> C
+ #endif
+ }
+ 
+-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX)
++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)
+ // ClientCertStore implementation that always returns an empty list. The
+ // CertificateProvisioningService implementation expects to wrap a platform
+ // cert store, but here we only want to get results from the provisioning
+@@ -673,7 +673,7 @@ CreatePlatformClientCertSource(
+ #endif
+ }
+ 
+-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX)
++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)
+ std::unique_ptr<CertificateManagerPageHandler::CertSource>
+ CreateProvisionedClientCertSource(Profile* profile) {
+   return std::make_unique<ClientCertSource>(
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_browser_ui_webui_certificate__manager_client__cert__sources.h b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_browser_ui_webui_certificate__manager_client__cert__sources.h
new file mode 100644
index 0000000000..a9cbb00114
--- /dev/null
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_browser_ui_webui_certificate__manager_client__cert__sources.h
@@ -0,0 +1,17 @@
+$NetBSD$
+
+* Part of patchset to build chromium on NetBSD
+* Based on OpenBSD's chromium patches, and
+  pkgsrc's qt5-qtwebengine patches
+
+--- src/3rdparty/chromium/chrome/browser/ui/webui/certificate_manager/client_cert_sources.h.orig	2025-09-25 11:10:42.000000000 +0000
++++ src/3rdparty/chromium/chrome/browser/ui/webui/certificate_manager/client_cert_sources.h
+@@ -18,7 +18,7 @@ CreatePlatformClientCertSource(
+         remote_client,
+     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)
+ std::unique_ptr<CertificateManagerPageHandler::CertSource>
+ CreateProvisionedClientCertSource(Profile* profile);
+ #endif
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_browser_ui_webui_chrome__web__ui__configs.cc b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_browser_ui_webui_chrome__web__ui__configs.cc
new file mode 100644
index 0000000000..d931782dae
--- /dev/null
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_browser_ui_webui_chrome__web__ui__configs.cc
@@ -0,0 +1,35 @@
+$NetBSD$
+
+* Part of patchset to build chromium on NetBSD
+* Based on OpenBSD's chromium patches, and
+  pkgsrc's qt5-qtwebengine patches
+
+--- src/3rdparty/chromium/chrome/browser/ui/webui/chrome_web_ui_configs.cc.orig	2025-09-25 11:10:42.000000000 +0000
++++ src/3rdparty/chromium/chrome/browser/ui/webui/chrome_web_ui_configs.cc
+@@ -77,7 +77,7 @@
+ #include "chrome/browser/ui/webui/certificate_manager/certificate_manager_ui.h"
+ #endif  // BUILDFLAG(CHROME_ROOT_STORE_CERT_MANAGEMENT_UI)
+ 
+-#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
+ 
+@@ -148,7 +148,7 @@ void RegisterChromeWebUIConfigs() {
+   map.AddWebUIConfig(std::make_unique<WebuiGalleryUIConfig>());
+ #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<LinuxProxyConfigUI>());
+ #endif  // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) ||
+         // BUILDFLAG(IS_OPENBSD)
+@@ -165,7 +165,7 @@ void RegisterChromeWebUIConfigs() {
+   map.AddWebUIConfig(std::make_unique<CertificateManagerUIConfig>());
+ #endif  // BUILDFLAG(CHROME_ROOT_STORE_CERT_MANAGEMENT_UI)
+ 
+-#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<WhatsNewUIConfig>());
+ #endif  // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX)
+ 
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_browser_ui_webui_internals_user__education_user__education__internals__page__handler__impl.cc b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_browser_ui_webui_internals_user__education_user__education__internals__page__handler__impl.cc
new file mode 100644
index 0000000000..c4699614e5
--- /dev/null
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_browser_ui_webui_internals_user__education_user__education__internals__page__handler__impl.cc
@@ -0,0 +1,35 @@
+$NetBSD$
+
+* Part of patchset to build chromium on NetBSD
+* Based on OpenBSD's chromium patches, and
+  pkgsrc's qt5-qtwebengine patches
+
+--- src/3rdparty/chromium/chrome/browser/ui/webui/internals/user_education/user_education_internals_page_handler_impl.cc.orig	2025-09-25 11:10:42.000000000 +0000
++++ src/3rdparty/chromium/chrome/browser/ui/webui/internals/user_education/user_education_internals_page_handler_impl.cc
+@@ -41,7 +41,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"
+@@ -81,7 +81,7 @@ user_education::NewBadgeRegistry* GetNew
+ }
+ 
+ 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;
+@@ -765,7 +765,7 @@ void UserEducationInternalsPageHandlerIm
+ }
+ 
+ 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/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_browser_ui_webui_interstitials_interstitial__ui.cc b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_browser_ui_webui_interstitials_interstitial__ui.cc
new file mode 100644
index 0000000000..8f13df5654
--- /dev/null
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_browser_ui_webui_interstitials_interstitial__ui.cc
@@ -0,0 +1,35 @@
+$NetBSD$
+
+* Part of patchset to build chromium on NetBSD
+* Based on OpenBSD's chromium patches, and
+  pkgsrc's qt5-qtwebengine patches
+
+--- src/3rdparty/chromium/chrome/browser/ui/webui/interstitials/interstitial_ui.cc.orig	2025-09-25 11:10:42.000000000 +0000
++++ src/3rdparty/chromium/chrome/browser/ui/webui/interstitials/interstitial_ui.cc
+@@ -71,7 +71,7 @@
+ #include "components/security_interstitials/content/captive_portal_blocking_page.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/supervised_user/supervised_user_verification_controller_client.h"
+ #include "chrome/browser/supervised_user/supervised_user_verification_page.h"
+ #endif
+@@ -378,7 +378,7 @@ std::unique_ptr<EnterpriseWarnPage> Crea
+                                                        kRequestUrl));
+ }
+ 
+-#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<SupervisedUserVerificationPage>
+ CreateSupervisedUserVerificationPage(content::WebContents* web_contents,
+                                      bool is_main_frame) {
+@@ -594,7 +594,7 @@ void InterstitialHTMLSource::StartDataRe
+     interstitial_delegate = CreateInsecureFormPage(web_contents);
+   } else if (path_without_query == "/https_only") {
+     interstitial_delegate = CreateHttpsOnlyModePage(web_contents);
+-#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 (path_without_query == "/supervised-user-verify") {
+     interstitial_delegate = CreateSupervisedUserVerificationPage(
+         web_contents, /*is_main_frame=*/true);
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_browser_ui_webui_management_management__ui__constants.cc b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_browser_ui_webui_management_management__ui__constants.cc
new file mode 100644
index 0000000000..66065db159
--- /dev/null
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_browser_ui_webui_management_management__ui__constants.cc
@@ -0,0 +1,23 @@
+$NetBSD$
+
+* Part of patchset to build chromium on NetBSD
+* Based on OpenBSD's chromium patches, and
+  pkgsrc's qt5-qtwebengine patches
+
+--- src/3rdparty/chromium/chrome/browser/ui/webui/management/management_ui_constants.cc.orig	2025-09-25 11:10:42.000000000 +0000
++++ src/3rdparty/chromium/chrome/browser/ui/webui/management/management_ui_constants.cc
+@@ -88,12 +88,12 @@ const char kProfileReportingBrowser[] = 
+ const char kProfileReportingExtension[] = "profileReportingExtension";
+ const char kProfileReportingPolicy[] = "profileReportingPolicy";
+ 
+-#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX)
++#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)
+ const char kManagementScreenCaptureEvent[] = "managementScreenCaptureEvent";
+ const char kManagementScreenCaptureData[] = "managementScreenCaptureData";
+ #endif  // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX)
+ 
+-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX)
++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)
+ const char kManagementDeviceSignalsDisclosure[] =
+     "managementDeviceSignalsDisclosure";
+ #endif  // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX)
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_browser_ui_webui_management_management__ui__constants.h b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_browser_ui_webui_management_management__ui__constants.h
new file mode 100644
index 0000000000..b8f46c968f
--- /dev/null
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_browser_ui_webui_management_management__ui__constants.h
@@ -0,0 +1,25 @@
+$NetBSD$
+
+* Part of patchset to build chromium on NetBSD
+* Based on OpenBSD's chromium patches, and
+  pkgsrc's qt5-qtwebengine patches
+
+--- src/3rdparty/chromium/chrome/browser/ui/webui/management/management_ui_constants.h.orig	2025-09-25 11:10:42.000000000 +0000
++++ src/3rdparty/chromium/chrome/browser/ui/webui/management/management_ui_constants.h
+@@ -8,14 +8,14 @@
+ #include "build/build_config.h"
+ #include "build/chromeos_buildflags.h"
+ 
+-#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX)
++#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)
+ // Constants defining the IDs for the localized strings sent to the page as
+ // load time data.
+ extern const char kManagementScreenCaptureEvent[];
+ extern const char kManagementScreenCaptureData[];
+ #endif  // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX)
+ 
+-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX)
++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)
+ extern const char kManagementDeviceSignalsDisclosure[];
+ #endif  // #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX)
+ 
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_browser_ui_webui_searchbox_searchbox__handler.cc b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_browser_ui_webui_searchbox_searchbox__handler.cc
new file mode 100644
index 0000000000..45cef2bf11
--- /dev/null
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_browser_ui_webui_searchbox_searchbox__handler.cc
@@ -0,0 +1,35 @@
+$NetBSD$
+
+* Part of patchset to build chromium on NetBSD
+* Based on OpenBSD's chromium patches, and
+  pkgsrc's qt5-qtwebengine patches
+
+--- src/3rdparty/chromium/chrome/browser/ui/webui/searchbox/searchbox_handler.cc.orig	2025-09-25 11:10:42.000000000 +0000
++++ src/3rdparty/chromium/chrome/browser/ui/webui/searchbox/searchbox_handler.cc
+@@ -108,7 +108,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
+@@ -168,7 +168,7 @@ static void DefineChromeRefreshRealboxIc
+ #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
+@@ -645,7 +645,7 @@ std::string SearchboxHandler::ActionVect
+       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/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_browser_ui_webui_signin_profile__picker__handler.cc b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_browser_ui_webui_signin_profile__picker__handler.cc
new file mode 100644
index 0000000000..3cbacb4d24
--- /dev/null
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_browser_ui_webui_signin_profile__picker__handler.cc
@@ -0,0 +1,26 @@
+$NetBSD$
+
+* Part of patchset to build chromium on NetBSD
+* Based on OpenBSD's chromium patches, and
+  pkgsrc's qt5-qtwebengine patches
+
+--- src/3rdparty/chromium/chrome/browser/ui/webui/signin/profile_picker_handler.cc.orig	2025-09-25 11:10:42.000000000 +0000
++++ src/3rdparty/chromium/chrome/browser/ui/webui/signin/profile_picker_handler.cc
+@@ -209,7 +209,7 @@ base::Value::Dict CreateProfileEntry(con
+ 
+   if (AccountInfo::IsManaged(entry->GetHostedDomain())) {
+     profile_entry.Set("avatarBadge", "cr:domain");
+-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN)
++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD)
+   } else if (base::FeatureList::IsEnabled(
+                  supervised_user::kShowKiteForSupervisedUsers) &&
+              entry->IsSupervised()) {
+@@ -1222,7 +1222,7 @@ void ProfilePickerHandler::BeginFirstWeb
+ }
+ 
+ void ProfilePickerHandler::MaybeUpdateGuestMode() {
+-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN)
++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD)
+   if (!base::FeatureList::IsEnabled(
+           supervised_user::kHideGuestModeForSupervisedUsers)) {
+     return;
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_common_media_cdm__registration.h b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_common_media_cdm__registration.h
new file mode 100644
index 0000000000..173f89c505
--- /dev/null
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_chrome_common_media_cdm__registration.h
@@ -0,0 +1,17 @@
+$NetBSD$
+
+* Part of patchset to build chromium on NetBSD
+* Based on OpenBSD's chromium patches, and
+  pkgsrc's qt5-qtwebengine patches
+
+--- src/3rdparty/chromium/chrome/common/media/cdm_registration.h.orig	2025-09-25 11:10:42.000000000 +0000
++++ src/3rdparty/chromium/chrome/common/media/cdm_registration.h
+@@ -16,7 +16,7 @@
+ void RegisterCdmInfo(std::vector<content::CdmInfo>* cdms);
+ 
+ #if BUILDFLAG(ENABLE_WIDEVINE) && \
+-    (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_ASH))
++    (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_ASH) || BUILDFLAG(IS_BSD))
+ // Returns the software secure Widevine CDM, if one exists.
+ std::vector<content::CdmInfo> GetSoftwareSecureWidevine();
+ #endif
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_autofill_core_browser_autofill__optimization__guide.cc b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_autofill_core_browser_autofill__optimization__guide.cc
new file mode 100644
index 0000000000..5acc255783
--- /dev/null
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_autofill_core_browser_autofill__optimization__guide.cc
@@ -0,0 +1,17 @@
+$NetBSD$
+
+* Part of patchset to build chromium on NetBSD
+* Based on OpenBSD's chromium patches, and
+  pkgsrc's qt5-qtwebengine patches
+
+--- src/3rdparty/chromium/components/autofill/core/browser/autofill_optimization_guide.cc.orig	2025-09-25 11:10:42.000000000 +0000
++++ src/3rdparty/chromium/components/autofill/core/browser/autofill_optimization_guide.cc
+@@ -186,7 +186,7 @@ void AutofillOptimizationGuide::OnDidPar
+     }
+ 
+ #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \
+-    BUILDFLAG(IS_CHROMEOS)
++    BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD)
+     if (has_credit_card_field &&
+         !personal_data_manager->payments_data_manager()
+              .GetServerCreditCards()
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_autofill_core_browser_payments__data__manager.cc b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_autofill_core_browser_payments__data__manager.cc
new file mode 100644
index 0000000000..0c39b629a6
--- /dev/null
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_autofill_core_browser_payments__data__manager.cc
@@ -0,0 +1,17 @@
+$NetBSD$
+
+* Part of patchset to build chromium on NetBSD
+* Based on OpenBSD's chromium patches, and
+  pkgsrc's qt5-qtwebengine patches
+
+--- src/3rdparty/chromium/components/autofill/core/browser/payments_data_manager.cc.orig	2025-09-25 11:10:42.000000000 +0000
++++ src/3rdparty/chromium/components/autofill/core/browser/payments_data_manager.cc
+@@ -1054,7 +1054,7 @@ bool PaymentsDataManager::ShouldShowCard
+ // The feature is only for Linux, Windows, Mac, and Fuchsia.
+ // TODO(crbug.com/40118868): Revisit the macro expression once build flag switch
+ // of lacros-chrome is complete.
+-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) || \
++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_BSD) || \
+     BUILDFLAG(IS_WIN) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_FUCHSIA)
+   // This option should only be shown for users that have not enabled the Sync
+   // Feature and that have server credit cards available.
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_autofill_core_common_autofill__payments__features.h b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_autofill_core_common_autofill__payments__features.h
new file mode 100644
index 0000000000..f5769dfcef
--- /dev/null
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_autofill_core_common_autofill__payments__features.h
@@ -0,0 +1,17 @@
+$NetBSD$
+
+* Part of patchset to build chromium on NetBSD
+* Based on OpenBSD's chromium patches, and
+  pkgsrc's qt5-qtwebengine patches
+
+--- src/3rdparty/chromium/components/autofill/core/common/autofill_payments_features.h.orig	2025-09-25 11:10:42.000000000 +0000
++++ src/3rdparty/chromium/components/autofill/core/common/autofill_payments_features.h
+@@ -14,7 +14,7 @@ namespace autofill::features {
+ 
+ // All features in alphabetical order.
+ #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \
+-    BUILDFLAG(IS_CHROMEOS)
++    BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD)
+ COMPONENT_EXPORT(AUTOFILL)
+ BASE_DECLARE_FEATURE(kAutofillEnableAmountExtractionDesktop);
+ #endif
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_autofill_core_common_autofill__prefs.cc b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_autofill_core_common_autofill__prefs.cc
new file mode 100644
index 0000000000..1e0691b1d2
--- /dev/null
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_autofill_core_common_autofill__prefs.cc
@@ -0,0 +1,17 @@
+$NetBSD$
+
+* Part of patchset to build chromium on NetBSD
+* Based on OpenBSD's chromium patches, and
+  pkgsrc's qt5-qtwebengine patches
+
+--- src/3rdparty/chromium/components/autofill/core/common/autofill_prefs.cc.orig	2025-09-25 11:10:42.000000000 +0000
++++ src/3rdparty/chromium/components/autofill/core/common/autofill_prefs.cc
+@@ -118,7 +118,7 @@ void RegisterProfilePrefs(user_prefs::Pr
+ #endif
+ 
+ #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \
+-    BUILDFLAG(IS_CHROMEOS)
++    BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD)
+   registry->RegisterBooleanPref(prefs::kAutofillPredictionImprovementsEnabled,
+                                 false);
+ #endif  // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ||
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_autofill_core_common_autofill__prefs.h b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_autofill_core_common_autofill__prefs.h
new file mode 100644
index 0000000000..73079a68e2
--- /dev/null
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_autofill_core_common_autofill__prefs.h
@@ -0,0 +1,17 @@
+$NetBSD$
+
+* Part of patchset to build chromium on NetBSD
+* Based on OpenBSD's chromium patches, and
+  pkgsrc's qt5-qtwebengine patches
+
+--- src/3rdparty/chromium/components/autofill/core/common/autofill_prefs.h.orig	2025-09-25 11:10:42.000000000 +0000
++++ src/3rdparty/chromium/components/autofill/core/common/autofill_prefs.h
+@@ -73,7 +73,7 @@ inline constexpr char kAutofillPaymentCv
+ inline constexpr char kAutofillPaymentCardBenefits[] =
+     "autofill.payment_card_benefits";
+ #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \
+-    BUILDFLAG(IS_CHROMEOS)
++    BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD)
+ // Boolean that controls improved autofill filling predictions. When enabled,
+ // the autofill functionality is enhanced with adopting user data to
+ // the form being filled in, which is triggered by the user via an extra
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_enterprise_watermarking_watermark.cc b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_enterprise_watermarking_watermark.cc
new file mode 100644
index 0000000000..9fa156a1e3
--- /dev/null
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_enterprise_watermarking_watermark.cc
@@ -0,0 +1,26 @@
+$NetBSD$
+
+* Part of patchset to build chromium on NetBSD
+* Based on OpenBSD's chromium patches, and
+  pkgsrc's qt5-qtwebengine patches
+
+--- src/3rdparty/chromium/components/enterprise/watermarking/watermark.cc.orig	2025-09-25 11:10:42.000000000 +0000
++++ src/3rdparty/chromium/components/enterprise/watermarking/watermark.cc
+@@ -34,7 +34,7 @@ gfx::Font WatermarkFont() {
+       "Segoe UI",
+ #elif BUILDFLAG(IS_MAC)
+       "SF Pro Text",
+-#elif BUILDFLAG(IS_LINUX)
++#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)
+       "Ubuntu",
+ #elif BUILDFLAG(IS_CHROMEOS)
+       "Google Sans",
+@@ -45,7 +45,7 @@ gfx::Font WatermarkFont() {
+ }
+ 
+ gfx::Font::Weight WatermarkFontWeight() {
+-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX)
++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)
+   return gfx::Font::Weight::SEMIBOLD;
+ #else
+   return gfx::Font::Weight::MEDIUM;
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_named__system__lock_lock.h b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_named__system__lock_lock.h
new file mode 100644
index 0000000000..144defd9ac
--- /dev/null
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_named__system__lock_lock.h
@@ -0,0 +1,17 @@
+$NetBSD$
+
+* Part of patchset to build chromium on NetBSD
+* Based on OpenBSD's chromium patches, and
+  pkgsrc's qt5-qtwebengine patches
+
+--- src/3rdparty/chromium/components/named_system_lock/lock.h.orig	2025-09-25 11:10:42.000000000 +0000
++++ src/3rdparty/chromium/components/named_system_lock/lock.h
+@@ -38,7 +38,7 @@ class ScopedLock {
+   // may acquire that lock. The lock name has different meanings per platform:
+   // Linux: A shared memory object name starting with `/`. E.g. `/MyApp.lock`.
+   // Mac: A bootstrap service name (see `man bootstrap_check_in`).
+-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC)
++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD)
+   static std::unique_ptr<ScopedLock> Create(const std::string& name,
+                                             base::TimeDelta timeout);
+ #elif BUILDFLAG(IS_WIN)
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_os__crypt_async_browser_secret__portal__key__provider.cc b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_os__crypt_async_browser_secret__portal__key__provider.cc
new file mode 100644
index 0000000000..99bb83d1fd
--- /dev/null
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_os__crypt_async_browser_secret__portal__key__provider.cc
@@ -0,0 +1,18 @@
+$NetBSD$
+
+* Part of patchset to build chromium on NetBSD
+* Based on OpenBSD's chromium patches, and
+  pkgsrc's qt5-qtwebengine patches
+
+--- src/3rdparty/chromium/components/os_crypt/async/browser/secret_portal_key_provider.cc.orig	2025-09-25 11:10:42.000000000 +0000
++++ src/3rdparty/chromium/components/os_crypt/async/browser/secret_portal_key_provider.cc
+@@ -5,7 +5,9 @@
+ #include "components/os_crypt/async/browser/secret_portal_key_provider.h"
+ 
+ #include <fcntl.h>
++#if BUILDFLAG(IS_LINUX)
+ #include <linux/limits.h>
++#endif
+ 
+ #include <array>
+ #include <utility>
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_os__crypt_async_common_encryptor.cc b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_os__crypt_async_common_encryptor.cc
new file mode 100644
index 0000000000..8c2246262d
--- /dev/null
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_os__crypt_async_common_encryptor.cc
@@ -0,0 +1,17 @@
+$NetBSD$
+
+* Part of patchset to build chromium on NetBSD
+* Based on OpenBSD's chromium patches, and
+  pkgsrc's qt5-qtwebengine patches
+
+--- src/3rdparty/chromium/components/os_crypt/async/common/encryptor.cc.orig	2025-09-25 11:10:42.000000000 +0000
++++ src/3rdparty/chromium/components/os_crypt/async/common/encryptor.cc
+@@ -277,7 +277,7 @@ std::optional<std::string> Encryptor::De
+     // or not encryption worked or not, and certainly not advisable to recommend
+     // a re-encryption of this potentially invalid data.
+     // TODO(crbug.com/365712505): Remove this fallback.
+-#if BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_APPLE) &&         \
++#if BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_APPLE) && !BUILDFLAG(IS_BSD) && \
+         !(BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CASTOS)) || \
+     BUILDFLAG(IS_FUCHSIA)
+     if (plaintext == string_data) {
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_password__manager_core_browser_password__manager__client.h b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_password__manager_core_browser_password__manager__client.h
new file mode 100644
index 0000000000..70ec67a065
--- /dev/null
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_password__manager_core_browser_password__manager__client.h
@@ -0,0 +1,26 @@
+$NetBSD$
+
+* Part of patchset to build chromium on NetBSD
+* Based on OpenBSD's chromium patches, and
+  pkgsrc's qt5-qtwebengine patches
+
+--- src/3rdparty/chromium/components/password_manager/core/browser/password_manager_client.h.orig	2025-09-25 11:10:42.000000000 +0000
++++ src/3rdparty/chromium/components/password_manager/core/browser/password_manager_client.h
+@@ -30,7 +30,7 @@
+ #include "net/cert/cert_status_flags.h"
+ 
+ #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \
+-    BUILDFLAG(IS_CHROMEOS)
++    BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD)
+ #include "base/i18n/rtl.h"
+ #include "components/password_manager/core/browser/password_cross_domain_confirmation_popup_controller.h"
+ #include "ui/gfx/geometry/rect_f.h"
+@@ -545,7 +545,7 @@ class PasswordManagerClient {
+       CredentialsCallback callback);
+ 
+ #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(
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_password__manager_core_browser_password__manager__switches.cc b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_password__manager_core_browser_password__manager__switches.cc
new file mode 100644
index 0000000000..4a7eb4b3ec
--- /dev/null
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_password__manager_core_browser_password__manager__switches.cc
@@ -0,0 +1,17 @@
+$NetBSD$
+
+* Part of patchset to build chromium on NetBSD
+* Based on OpenBSD's chromium patches, and
+  pkgsrc's qt5-qtwebengine patches
+
+--- src/3rdparty/chromium/components/password_manager/core/browser/password_manager_switches.cc.orig	2025-09-25 11:10:42.000000000 +0000
++++ src/3rdparty/chromium/components/password_manager/core/browser/password_manager_switches.cc
+@@ -6,7 +6,7 @@
+ 
+ namespace password_manager {
+ 
+-#if BUILDFLAG(IS_LINUX)
++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)
+ // Specifies which encryption storage backend to use. Possible values are
+ // kwallet, kwallet5, kwallet6, gnome-libsecret, basic.
+ // Any other value will lead to Chrome detecting the best backend automatically.
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_password__manager_core_browser_password__manager__switches.h b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_password__manager_core_browser_password__manager__switches.h
new file mode 100644
index 0000000000..95c86c95e0
--- /dev/null
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_password__manager_core_browser_password__manager__switches.h
@@ -0,0 +1,17 @@
+$NetBSD$
+
+* Part of patchset to build chromium on NetBSD
+* Based on OpenBSD's chromium patches, and
+  pkgsrc's qt5-qtwebengine patches
+
+--- src/3rdparty/chromium/components/password_manager/core/browser/password_manager_switches.h.orig	2025-09-25 11:10:42.000000000 +0000
++++ src/3rdparty/chromium/components/password_manager/core/browser/password_manager_switches.h
+@@ -10,7 +10,7 @@
+ 
+ namespace password_manager {
+ 
+-#if BUILDFLAG(IS_LINUX)
++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)
+ extern const char kPasswordStore[];
+ extern const char kEnableEncryptionSelection[];
+ #endif  // BUILDFLAG(IS_LINUX)
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_password__manager_core_browser_password__manual__fallback__flow.cc b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_password__manager_core_browser_password__manual__fallback__flow.cc
new file mode 100644
index 0000000000..6d2aeb363d
--- /dev/null
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_password__manager_core_browser_password__manual__fallback__flow.cc
@@ -0,0 +1,35 @@
+$NetBSD$
+
+* Part of patchset to build chromium on NetBSD
+* Based on OpenBSD's chromium patches, and
+  pkgsrc's qt5-qtwebengine patches
+
+--- src/3rdparty/chromium/components/password_manager/core/browser/password_manual_fallback_flow.cc.orig	2025-09-25 11:10:42.000000000 +0000
++++ src/3rdparty/chromium/components/password_manager/core/browser/password_manual_fallback_flow.cc
+@@ -43,7 +43,7 @@ std::u16string GetUsernameFromLabel(cons
+ }
+ 
+ #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
+@@ -281,7 +281,7 @@ void PasswordManualFallbackFlow::DidAcce
+     }
+     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<password_manager::PasswordForm> credentials =
+           GetCorrespondingPasswordForm(
+               suggestion.GetPayload<Suggestion::PasswordSuggestionDetails>(),
+@@ -413,7 +413,7 @@ void PasswordManualFallbackFlow::EnsureC
+     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) {
+     cross_domain_confirmation_popup_controller_ =
+         password_client_->ShowCrossDomainConfirmationPopup(
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_password__manager_core_browser_password__manual__fallback__flow.h b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_password__manager_core_browser_password__manual__fallback__flow.h
new file mode 100644
index 0000000000..8ed8453852
--- /dev/null
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_password__manager_core_browser_password__manual__fallback__flow.h
@@ -0,0 +1,26 @@
+$NetBSD$
+
+* Part of patchset to build chromium on NetBSD
+* Based on OpenBSD's chromium patches, and
+  pkgsrc's qt5-qtwebengine patches
+
+--- src/3rdparty/chromium/components/password_manager/core/browser/password_manual_fallback_flow.h.orig	2025-09-25 11:10:42.000000000 +0000
++++ src/3rdparty/chromium/components/password_manager/core/browser/password_manual_fallback_flow.h
+@@ -17,7 +17,7 @@
+ #include "components/password_manager/core/browser/ui/saved_passwords_presenter.h"
+ 
+ #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \
+-    BUILDFLAG(IS_CHROMEOS)
++    BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD)
+ #include "components/password_manager/core/browser/password_cross_domain_confirmation_popup_controller.h"
+ #endif  // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) ||
+         // BUILDFLAG(IS_CHROMEOS)
+@@ -178,7 +178,7 @@ class PasswordManualFallbackFlow : publi
+   std::unique_ptr<device_reauth::DeviceAuthenticator> authenticator_;
+ 
+ #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \
+-    BUILDFLAG(IS_CHROMEOS)
++    BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD)
+   std::unique_ptr<PasswordCrossDomainConfirmationPopupController>
+       cross_domain_confirmation_popup_controller_;
+ #endif  // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) ||
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_password__manager_core_browser_password__store__factory__util.cc b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_password__manager_core_browser_password__store__factory__util.cc
new file mode 100644
index 0000000000..f8056c02a1
--- /dev/null
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_password__manager_core_browser_password__store__factory__util.cc
@@ -0,0 +1,17 @@
+$NetBSD$
+
+* Part of patchset to build chromium on NetBSD
+* Based on OpenBSD's chromium patches, and
+  pkgsrc's qt5-qtwebengine patches
+
+--- src/3rdparty/chromium/components/password_manager/core/browser/password_store_factory_util.cc.orig	2025-09-25 11:10:42.000000000 +0000
++++ src/3rdparty/chromium/components/password_manager/core/browser/password_store_factory_util.cc
+@@ -29,7 +29,7 @@ namespace {
+ LoginDatabase::DeletingUndecryptablePasswordsEnabled GetPolicyFromPrefs(
+     PrefService* prefs) {
+ #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \
+-    BUILDFLAG(IS_IOS)
++    BUILDFLAG(IS_IOS) || BUILDFLAG(IS_BSD)
+   return LoginDatabase::DeletingUndecryptablePasswordsEnabled(
+       prefs->GetBoolean(prefs::kDeletingUndecryptablePasswordsEnabled));
+ #else
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_password__manager_core_browser_password__store_login__database.cc b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_password__manager_core_browser_password__store_login__database.cc
new file mode 100644
index 0000000000..58d77ff68f
--- /dev/null
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_password__manager_core_browser_password__store_login__database.cc
@@ -0,0 +1,26 @@
+$NetBSD$
+
+* Part of patchset to build chromium on NetBSD
+* Based on OpenBSD's chromium patches, and
+  pkgsrc's qt5-qtwebengine patches
+
+--- src/3rdparty/chromium/components/password_manager/core/browser/password_store/login_database.cc.orig	2025-09-25 11:10:42.000000000 +0000
++++ src/3rdparty/chromium/components/password_manager/core/browser/password_store/login_database.cc
+@@ -1030,7 +1030,7 @@ bool ShouldDeleteUndecryptablePasswords(
+     bool is_user_data_dir_policy_set,
+     bool is_enabled_by_policy,
+     IsAccountStore is_account_store) {
+-#if BUILDFLAG(IS_LINUX)
++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)
+   std::string user_data_dir_string;
+   std::unique_ptr<base::Environment> environment(base::Environment::Create());
+   // On Linux user data directory ca be specified using an env variable. If it
+@@ -1049,7 +1049,7 @@ bool ShouldDeleteUndecryptablePasswords(
+     return false;
+   }
+ 
+-#if BUILDFLAG(IS_LINUX)
++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)
+   if (command_line->HasSwitch(password_manager::kPasswordStore)) {
+     RecordShouldDeleteUndecryptablePasswordsMetric(
+         ShouldDeleteUndecryptablePasswordsResult::
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_password__manager_core_browser_stub__password__manager__client.cc b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_password__manager_core_browser_stub__password__manager__client.cc
new file mode 100644
index 0000000000..d0dcfe5ec0
--- /dev/null
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_password__manager_core_browser_stub__password__manager__client.cc
@@ -0,0 +1,17 @@
+$NetBSD$
+
+* Part of patchset to build chromium on NetBSD
+* Based on OpenBSD's chromium patches, and
+  pkgsrc's qt5-qtwebengine patches
+
+--- src/3rdparty/chromium/components/password_manager/core/browser/stub_password_manager_client.cc.orig	2025-09-25 11:10:42.000000000 +0000
++++ src/3rdparty/chromium/components/password_manager/core/browser/stub_password_manager_client.cc
+@@ -187,7 +187,7 @@ version_info::Channel StubPasswordManage
+ }
+ 
+ #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) {}
+ 
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_password__manager_core_browser_stub__password__manager__client.h b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_password__manager_core_browser_stub__password__manager__client.h
new file mode 100644
index 0000000000..835c511c10
--- /dev/null
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_password__manager_core_browser_stub__password__manager__client.h
@@ -0,0 +1,17 @@
+$NetBSD$
+
+* Part of patchset to build chromium on NetBSD
+* Based on OpenBSD's chromium patches, and
+  pkgsrc's qt5-qtwebengine patches
+
+--- src/3rdparty/chromium/components/password_manager/core/browser/stub_password_manager_client.h.orig	2025-09-25 11:10:42.000000000 +0000
++++ src/3rdparty/chromium/components/password_manager/core/browser/stub_password_manager_client.h
+@@ -75,7 +75,7 @@ class StubPasswordManagerClient : public
+   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;
+   std::unique_ptr<
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_policy_core_common_cloud_cloud__policy__refresh__scheduler.cc b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_policy_core_common_cloud_cloud__policy__refresh__scheduler.cc
new file mode 100644
index 0000000000..5450bd5b7d
--- /dev/null
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_policy_core_common_cloud_cloud__policy__refresh__scheduler.cc
@@ -0,0 +1,26 @@
+$NetBSD$
+
+* Part of patchset to build chromium on NetBSD
+* Based on OpenBSD's chromium patches, and
+  pkgsrc's qt5-qtwebengine patches
+
+--- src/3rdparty/chromium/components/policy/core/common/cloud/cloud_policy_refresh_scheduler.cc.orig	2025-09-25 11:10:42.000000000 +0000
++++ src/3rdparty/chromium/components/policy/core/common/cloud/cloud_policy_refresh_scheduler.cc
+@@ -25,7 +25,7 @@ namespace policy {
+ 
+ namespace {
+ 
+-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX)
++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)
+ BASE_FEATURE(kRetryWithKeyReset,
+              "RetryWithKeyReset",
+              base::FEATURE_ENABLED_BY_DEFAULT);
+@@ -220,7 +220,7 @@ void CloudPolicyRefreshScheduler::OnStor
+   // continue using the stale information. Thus, no specific response to a store
+   // error is required. NB: Changes to is_managed fire OnStoreLoaded().
+ 
+-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX)
++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)
+   // Client is registered means we have successfully get policy key once. However,
+   // a following policy fetch request is failed because we can't verified
+   // signature. Delete the policy key so that we can get it again with next
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_soda_soda__util.cc b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_soda_soda__util.cc
new file mode 100644
index 0000000000..99663655f3
--- /dev/null
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_soda_soda__util.cc
@@ -0,0 +1,35 @@
+$NetBSD$
+
+* Part of patchset to build chromium on NetBSD
+* Based on OpenBSD's chromium patches, and
+  pkgsrc's qt5-qtwebengine patches
+
+--- src/3rdparty/chromium/components/soda/soda_util.cc.orig	2025-09-25 11:10:42.000000000 +0000
++++ src/3rdparty/chromium/components/soda/soda_util.cc
+@@ -27,7 +27,7 @@
+ #include "base/win/windows_version.h"
+ #endif
+ 
+-#if BUILDFLAG(IS_LINUX) && defined(ARCH_CPU_X86_FAMILY)
++#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && defined(ARCH_CPU_X86_FAMILY)
+ #include "base/cpu.h"
+ #endif
+ 
+@@ -52,7 +52,7 @@ bool IsSupportedChromeOS() {
+ }
+ #endif  // BUILDFLAG(IS_CHROMEOS)
+ 
+-#if BUILDFLAG(IS_LINUX)
++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)
+ bool IsSupportedLinux() {
+ #if defined(ARCH_CPU_X86_FAMILY)
+   // Check if the CPU has the required instruction set to run the Speech
+@@ -83,7 +83,7 @@ bool IsSupportedWin() {
+ bool IsOnDeviceSpeechRecognitionSupported() {
+ #if BUILDFLAG(IS_CHROMEOS)
+   return IsSupportedChromeOS();
+-#elif BUILDFLAG(IS_LINUX)
++#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)
+   return IsSupportedLinux();
+ #elif BUILDFLAG(IS_WIN)
+   return IsSupportedWin();
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_startup__metric__utils_common_startup__metric__utils.cc b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_startup__metric__utils_common_startup__metric__utils.cc
new file mode 100644
index 0000000000..dead0af57f
--- /dev/null
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_startup__metric__utils_common_startup__metric__utils.cc
@@ -0,0 +1,17 @@
+$NetBSD$
+
+* Part of patchset to build chromium on NetBSD
+* Based on OpenBSD's chromium patches, and
+  pkgsrc's qt5-qtwebengine patches
+
+--- src/3rdparty/chromium/components/startup_metric_utils/common/startup_metric_utils.cc.orig	2025-09-25 11:10:42.000000000 +0000
++++ src/3rdparty/chromium/components/startup_metric_utils/common/startup_metric_utils.cc
+@@ -94,7 +94,7 @@ base::TimeTicks CommonStartupMetricRecor
+   // Enabling this logic on OS X causes a significant performance regression.
+   // TODO(crbug.com/40464036): Remove IS_APPLE ifdef once utility processes
+   // set their desired main thread priority.
+-#if !BUILDFLAG(IS_APPLE)
++#if !BUILDFLAG(IS_APPLE) && !BUILDFLAG(IS_BSD)
+   static bool statics_initialized = false;
+   if (!statics_initialized) {
+     statics_initialized = true;
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_supervised__user_core_browser_supervised__user__metrics__service.cc b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_supervised__user_core_browser_supervised__user__metrics__service.cc
new file mode 100644
index 0000000000..4d54e2e83a
--- /dev/null
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_supervised__user_core_browser_supervised__user__metrics__service.cc
@@ -0,0 +1,17 @@
+$NetBSD$
+
+* Part of patchset to build chromium on NetBSD
+* Based on OpenBSD's chromium patches, and
+  pkgsrc's qt5-qtwebengine patches
+
+--- src/3rdparty/chromium/components/supervised_user/core/browser/supervised_user_metrics_service.cc.orig	2025-09-25 11:10:42.000000000 +0000
++++ src/3rdparty/chromium/components/supervised_user/core/browser/supervised_user_metrics_service.cc
+@@ -47,7 +47,7 @@ SupervisedUserMetricsService::Supervised
+       extensions_metrics_delegate_(std::move(extensions_metrics_delegate)) {
+   DCHECK(pref_service_);
+   DCHECK(url_filter_);
+-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX)
++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)
+   CHECK(extensions_metrics_delegate_)
+       << "Extensions metrics delegate must exist on Win/Linux/Mac";
+ #endif  // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX)
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_supervised__user_core_browser_supervised__user__preferences.cc b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_supervised__user_core_browser_supervised__user__preferences.cc
new file mode 100644
index 0000000000..200a47aeb6
--- /dev/null
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_supervised__user_core_browser_supervised__user__preferences.cc
@@ -0,0 +1,17 @@
+$NetBSD$
+
+* Part of patchset to build chromium on NetBSD
+* Based on OpenBSD's chromium patches, and
+  pkgsrc's qt5-qtwebengine patches
+
+--- src/3rdparty/chromium/components/supervised_user/core/browser/supervised_user_preferences.cc.orig	2025-09-25 11:10:42.000000000 +0000
++++ src/3rdparty/chromium/components/supervised_user/core/browser/supervised_user_preferences.cc
+@@ -147,7 +147,7 @@ void RegisterProfilePrefs(PrefRegistrySi
+   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<int>(
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_supervised__user_core_common_pref__names.h b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_supervised__user_core_common_pref__names.h
new file mode 100644
index 0000000000..c87ff820e1
--- /dev/null
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_supervised__user_core_common_pref__names.h
@@ -0,0 +1,17 @@
+$NetBSD$
+
+* Part of patchset to build chromium on NetBSD
+* Based on OpenBSD's chromium patches, and
+  pkgsrc's qt5-qtwebengine patches
+
+--- src/3rdparty/chromium/components/supervised_user/core/common/pref_names.h.orig	2025-09-25 11:10:42.000000000 +0000
++++ src/3rdparty/chromium/components/supervised_user/core/common/pref_names.h
+@@ -137,7 +137,7 @@ inline constexpr char kFirstTimeIntersti
+     "profile.managed.banner_state";
+ 
+ #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)
+ // An integer pref that stores the current state of the local extension
+ // parent approval migration when the feature
+ // `kEnableSupervisedUserSkipParentApprovalToInstallExtensions` becomes enabled.
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_visited__url__ranking_public_url__visit__util.cc b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_visited__url__ranking_public_url__visit__util.cc
new file mode 100644
index 0000000000..dd8c8e6754
--- /dev/null
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_components_visited__url__ranking_public_url__visit__util.cc
@@ -0,0 +1,17 @@
+$NetBSD$
+
+* Part of patchset to build chromium on NetBSD
+* Based on OpenBSD's chromium patches, and
+  pkgsrc's qt5-qtwebengine patches
+
+--- src/3rdparty/chromium/components/visited_url_ranking/public/url_visit_util.cc.orig	2025-09-25 11:10:42.000000000 +0000
++++ src/3rdparty/chromium/components/visited_url_ranking/public/url_visit_util.cc
+@@ -66,7 +66,7 @@ PlatformType GetPlatformInput() {
+   return PlatformType::kWindows;
+ #elif BUILDFLAG(IS_MAC)
+   return PlatformType::kMac;
+-#elif BUILDFLAG(IS_LINUX)
++#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)
+   return PlatformType::kLinux;
+ #elif BUILDFLAG(IS_IOS)
+   return PlatformType::kIos;
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_content_browser_renderer__host_render__process__host__impl.h b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_content_browser_renderer__host_render__process__host__impl.h
index 9bc2238949..c78f3d807c 100644
--- a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_content_browser_renderer__host_render__process__host__impl.h
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_content_browser_renderer__host_render__process__host__impl.h
@@ -4,9 +4,18 @@ $NetBSD$
 * Based on OpenBSD's chromium patches, and
   pkgsrc's qt5-qtwebengine patches
 
---- src/3rdparty/chromium/content/browser/renderer_host/render_process_host_impl.h.orig	2024-11-21 04:36:37.000000000 +0000
+--- src/3rdparty/chromium/content/browser/renderer_host/render_process_host_impl.h.orig	2025-09-25 11:10:42.000000000 +0000
 +++ src/3rdparty/chromium/content/browser/renderer_host/render_process_host_impl.h
-@@ -548,7 +548,7 @@ class CONTENT_EXPORT RenderProcessHostIm
+@@ -102,7 +102,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
+@@ -617,7 +617,7 @@ class CONTENT_EXPORT RenderProcessHostIm
    // Sets this RenderProcessHost to be guest only. For Testing only.
    void SetForGuestsOnlyForTesting();
  
@@ -15,7 +24,16 @@ $NetBSD$
    // Launch the zygote early in the browser startup.
    static void EarlyZygoteLaunch();
  #endif  // BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_MAC)
-@@ -1092,7 +1092,7 @@ class CONTENT_EXPORT RenderProcessHostIm
+@@ -982,7 +982,7 @@ class CONTENT_EXPORT RenderProcessHostIm
+     std::unique_ptr<service_manager::BinderRegistry> binders_;
+     mojo::Receiver<mojom::ChildProcessHost> receiver_{this};
+ 
+-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)
++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD)
+     mojo::Remote<media::mojom::VideoEncodeAcceleratorProviderFactory>
+         video_encode_accelerator_factory_remote_;
+     ChildThreadTypeSwitcher child_thread_type_switcher_;
+@@ -1230,7 +1230,7 @@ class CONTENT_EXPORT RenderProcessHostIm
    // if the request isn't handled on the IO thread.
    void OnBindHostReceiver(mojo::GenericPendingReceiver receiver);
  
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_content_browser_renderer__host_render__process__host__impl__receiver__bindings.cc b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_content_browser_renderer__host_render__process__host__impl__receiver__bindings.cc
new file mode 100644
index 0000000000..d756410755
--- /dev/null
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_content_browser_renderer__host_render__process__host__impl__receiver__bindings.cc
@@ -0,0 +1,26 @@
+$NetBSD$
+
+* Part of patchset to build chromium on NetBSD
+* Based on OpenBSD's chromium patches, and
+  pkgsrc's qt5-qtwebengine patches
+
+--- src/3rdparty/chromium/content/browser/renderer_host/render_process_host_impl_receiver_bindings.cc.orig	2025-09-25 11:10:42.000000000 +0000
++++ src/3rdparty/chromium/content/browser/renderer_host/render_process_host_impl_receiver_bindings.cc
+@@ -54,7 +54,7 @@
+ #include "third_party/blink/public/mojom/webdatabase/web_database.mojom.h"
+ #endif
+ 
+-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)
++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD)
+ #include "components/services/font/public/mojom/font_service.mojom.h"  // nogncheck
+ #include "content/browser/font_service.h"  // nogncheck
+ #include "content/browser/media/video_encode_accelerator_provider_launcher.h"
+@@ -348,7 +348,7 @@ void RenderProcessHostImpl::IOThreadHost
+   }
+ #endif
+ 
+-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)
++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD)
+   if (auto font_receiver = receiver.As<font_service::mojom::FontService>()) {
+     ConnectToFontService(std::move(font_receiver));
+     return;
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_content_public_browser_service__process__host.cc b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_content_public_browser_service__process__host.cc
new file mode 100644
index 0000000000..02ee7b749b
--- /dev/null
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_content_public_browser_service__process__host.cc
@@ -0,0 +1,17 @@
+$NetBSD$
+
+* Part of patchset to build chromium on NetBSD
+* Based on OpenBSD's chromium patches, and
+  pkgsrc's qt5-qtwebengine patches
+
+--- src/3rdparty/chromium/content/public/browser/service_process_host.cc.orig	2025-09-25 11:10:42.000000000 +0000
++++ src/3rdparty/chromium/content/public/browser/service_process_host.cc
+@@ -70,7 +70,7 @@ ServiceProcessHost::Options::WithPreload
+ 
+ ServiceProcessHost::Options& ServiceProcessHost::Options::WithGpuClient(
+     base::PassKey<ServiceProcessHostGpuClient> passkey) {
+-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_CHROMEOS_ASH)
++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_CHROMEOS_ASH) || BUILDFLAG(IS_BSD)
+   allow_gpu_client = true;
+ #endif
+   return *this;
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_content_shell_renderer_shell__content__renderer__client.cc b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_content_shell_renderer_shell__content__renderer__client.cc
new file mode 100644
index 0000000000..3da6b4eb91
--- /dev/null
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_content_shell_renderer_shell__content__renderer__client.cc
@@ -0,0 +1,17 @@
+$NetBSD$
+
+* Part of patchset to build chromium on NetBSD
+* Based on OpenBSD's chromium patches, and
+  pkgsrc's qt5-qtwebengine patches
+
+--- src/3rdparty/chromium/content/shell/renderer/shell_content_renderer_client.cc.orig	2025-09-25 11:10:42.000000000 +0000
++++ src/3rdparty/chromium/content/shell/renderer/shell_content_renderer_client.cc
+@@ -54,7 +54,7 @@
+ #include "media/base/media_switches.h"
+ #endif
+ 
+-#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)) && \
++#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD)) && \
+     (defined(ARCH_CPU_X86_64) || defined(ARCH_CPU_ARM64))
+ #define ENABLE_WEB_ASSEMBLY_TRAP_HANDLER_LINUX
+ #include "base/debug/stack_trace.h"
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_gpu_command__buffer_service_shared__context__state.cc b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_gpu_command__buffer_service_shared__context__state.cc
new file mode 100644
index 0000000000..57f7629a34
--- /dev/null
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_gpu_command__buffer_service_shared__context__state.cc
@@ -0,0 +1,35 @@
+$NetBSD$
+
+* Part of patchset to build chromium on NetBSD
+* Based on OpenBSD's chromium patches, and
+  pkgsrc's qt5-qtwebengine patches
+
+--- src/3rdparty/chromium/gpu/command_buffer/service/shared_context_state.cc.orig	2025-09-25 11:10:42.000000000 +0000
++++ src/3rdparty/chromium/gpu/command_buffer/service/shared_context_state.cc
+@@ -56,7 +56,7 @@
+ #include "gpu/vulkan/vulkan_implementation.h"
+ #include "gpu/vulkan/vulkan_util.h"
+ 
+-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_WIN)
++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD)
+ #include "gpu/command_buffer/service/external_semaphore_pool.h"
+ #endif
+ 
+@@ -287,7 +287,7 @@ SharedContextState::SharedContextState(
+   if (gr_context_type_ == GrContextType::kVulkan) {
+     if (vk_context_provider_) {
+ #if BUILDFLAG(ENABLE_VULKAN) && \
+-    (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_WIN))
++    (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD))
+       external_semaphore_pool_ = std::make_unique<ExternalSemaphorePool>(this);
+ #endif
+       use_virtualized_gl_contexts_ = false;
+@@ -320,7 +320,7 @@ SharedContextState::~SharedContextState(
+   transfer_cache_.reset();
+ 
+ #if BUILDFLAG(ENABLE_VULKAN) && \
+-    (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_WIN))
++    (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD))
+   external_semaphore_pool_.reset();
+ #endif
+ 
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_gpu_command__buffer_service_shared__context__state.h b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_gpu_command__buffer_service_shared__context__state.h
new file mode 100644
index 0000000000..677b9eb4a6
--- /dev/null
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_gpu_command__buffer_service_shared__context__state.h
@@ -0,0 +1,26 @@
+$NetBSD$
+
+* Part of patchset to build chromium on NetBSD
+* Based on OpenBSD's chromium patches, and
+  pkgsrc's qt5-qtwebengine patches
+
+--- src/3rdparty/chromium/gpu/command_buffer/service/shared_context_state.h.orig	2025-09-25 11:10:42.000000000 +0000
++++ src/3rdparty/chromium/gpu/command_buffer/service/shared_context_state.h
+@@ -222,7 +222,7 @@ class GPU_GLES2_EXPORT SharedContextStat
+     return &memory_type_tracker_;
+   }
+ #if BUILDFLAG(ENABLE_VULKAN) && \
+-    (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_WIN))
++    (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD))
+   ExternalSemaphorePool* external_semaphore_pool() {
+     return external_semaphore_pool_.get();
+   }
+@@ -429,7 +429,7 @@ class GPU_GLES2_EXPORT SharedContextStat
+   bool disable_check_reset_status_throttling_for_test_ = false;
+ 
+ #if BUILDFLAG(ENABLE_VULKAN) && \
+-    (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_WIN))
++    (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD))
+   std::unique_ptr<ExternalSemaphorePool> external_semaphore_pool_;
+ #endif
+ 
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_media_ffmpeg_scripts_build__ffmpeg.py b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_media_ffmpeg_scripts_build__ffmpeg.py
new file mode 100644
index 0000000000..360251ef88
--- /dev/null
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_media_ffmpeg_scripts_build__ffmpeg.py
@@ -0,0 +1,82 @@
+$NetBSD$
+
+* Part of patchset to build chromium on NetBSD
+* Based on OpenBSD's chromium patches, and
+  pkgsrc's qt5-qtwebengine patches
+
+--- src/3rdparty/chromium/media/ffmpeg/scripts/build_ffmpeg.py.orig	2025-09-25 11:10:42.000000000 +0000
++++ src/3rdparty/chromium/media/ffmpeg/scripts/build_ffmpeg.py
+@@ -33,7 +33,7 @@ NDK_ROOT_DIR = os.path.abspath(
+ SUCCESS_TOKEN = 'THIS_BUILD_WORKED'
+ 
+ sys.path.append(os.path.join(CHROMIUM_ROOT_DIR, 'build'))
+-import gn_helpers
++#import gn_helpers
+ 
+ BRANDINGS = [
+     'Chrome',
+@@ -43,6 +43,9 @@ BRANDINGS = [
+ ARCH_MAP = {
+     'android': ['ia32', 'x64', 'arm-neon', 'arm64'],
+     'linux': ['ia32', 'x64', 'noasm-x64', 'arm', 'arm-neon', 'arm64'],
++    'openbsd': ['x64', 'arm64', 'ia32'],
++    'freebsd': ['x64', 'arm64', 'ia32'],
++    'netbsd': ['x64', 'arm64', 'ia32'],
+     'mac': ['x64', 'arm64'],
+     'win': ['ia32', 'x64', 'arm64'],
+ }
+@@ -122,7 +125,7 @@ def PrintAndCheckCall(argv, *args, **kwa
+ 
+ 
+ def GetDsoName(target_os, dso_name, dso_version):
+-    if target_os in ('linux', 'linux-noasm', 'android'):
++    if target_os in ('linux', 'linux-noasm', 'android', 'openbsd', 'freebsd', 'netbsd'):
+         return 'lib%s.so.%s' % (dso_name, dso_version)
+     elif target_os == 'mac':
+         return 'lib%s.%s.dylib' % (dso_name, dso_version)
+@@ -475,7 +478,7 @@ def BuildFFmpeg(target_os, target_arch, 
+     # removing <sys/sysctl.h> soon, so this is needed to silence a deprecation
+     # #warning which will be converted to an error via -Werror.
+     # There is also no prctl.h
+-    if target_os in ['linux', 'linux-noasm']:
++    if target_os in ['linux', 'linux-noasm', 'openbsd', 'freebsd', 'netbsd']:
+         pre_make_rewrites += [
+             (r'(#define HAVE_SYSCTL [01])',
+              r'#define HAVE_SYSCTL 0 /* \1 -- forced to 0 for Fuchsia */'),
+@@ -598,7 +601,7 @@ def main(argv):
+     configure_args = args[2:]
+ 
+     if target_os not in ('android', 'linux', 'linux-noasm', 'mac', 'win',
+-                         'all'):
++                         'all', 'openbsd', 'freebsd', 'netbsd'):
+         parser.print_help()
+         return 1
+ 
+@@ -712,7 +715,7 @@ def ConfigureAndBuild(target_arch, targe
+             '--optflags="-O2"',
+         ])
+ 
+-    if target_os in ('linux', 'linux-noasm', 'android'):
++    if target_os in ('linux', 'linux-noasm', 'android', 'openbsd', 'freebsd', 'netbsd'):
+         if target_arch == 'x64':
+             if target_os == 'android':
+                 configure_flags['Common'].extend([
+@@ -827,9 +830,6 @@ def ConfigureAndBuild(target_arch, targe
+ 
+                 configure_flags['Common'].extend([
+                     '--target-os=linux',
+-                    '--sysroot=' +
+-                    os.path.join(CHROMIUM_ROOT_DIR,
+-                                 'build/linux/debian_bullseye_arm64-sysroot'),
+                     # See crbug.com/1467681. These could be removed eventually
+                     '--disable-dotprod',
+                     '--disable-i8mm',
+@@ -921,7 +921,7 @@ def ConfigureAndBuild(target_arch, targe
+         # typically be the system one, so explicitly configure use of Clang's
+         # ld.lld, to ensure that things like cross-compilation and LTO work.
+         # This does not work for ia32 and is always used on mac.
+-        if target_arch != 'ia32' and target_os != 'mac':
++        if target_arch != 'ia32' and target_os != 'mac' and target_os != 'netbsd':
+             configure_flags['Common'].append('--extra-ldflags=-fuse-ld=lld')
+ 
+     # Should be run on Mac, unless we're cross-compiling on Linux.
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_media_ffmpeg_scripts_robo__lib_config.py b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_media_ffmpeg_scripts_robo__lib_config.py
new file mode 100644
index 0000000000..09214f9ade
--- /dev/null
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_media_ffmpeg_scripts_robo__lib_config.py
@@ -0,0 +1,64 @@
+$NetBSD$
+
+* Part of patchset to build chromium on NetBSD
+* Based on OpenBSD's chromium patches, and
+  pkgsrc's qt5-qtwebengine patches
+
+--- src/3rdparty/chromium/media/ffmpeg/scripts/robo_lib/config.py.orig	2025-09-25 11:10:42.000000000 +0000
++++ src/3rdparty/chromium/media/ffmpeg/scripts/robo_lib/config.py
+@@ -55,19 +55,13 @@ class RoboConfiguration:
+         self._llvm_path = os.path.join(self.chrome_src(), "third_party",
+                                        "llvm-build", "Release+Asserts", "bin")
+ 
+-        self.EnsurePathContainsLLVM()
+-        self.EnsureNoMakeInfo()
+         self.EnsureFFmpegHome()
+         self.EnsureGNConfig()
+-        self.ComputeBranchName()
+ 
+         if not quiet:
+             shell.log(f"Using chrome src: {self.chrome_src()}")
+             shell.log(f"Using script dir: {self._script_directory}")
+             shell.log(f"Using ffmpeg home: {self.ffmpeg_home()}")
+-            shell.log(f"On branch: {self.branch_name()}")
+-            if self.sushi_branch_name():
+-                shell.log(f"On sushi branch: {self.sushi_branch_name()}")
+ 
+         # Filename that we'll ask generate_gn.py to write git commands to.
+         # TODO: Should this use script_directory, or stay with ffmpeg?  As long as
+@@ -186,9 +180,9 @@ class RoboConfiguration:
+ 
+         if re.match(r"i.86", platform.machine()):
+             self._host_architecture = "ia32"
+-        elif platform.machine() == "x86_64" or platform.machine() == "AMD64":
++        elif platform.machine() == "x86_64" or platform.machine() == "AMD64" or platform.machine() == "amd64":
+             self._host_architecture = "x64"
+-        elif platform.machine() == "aarch64":
++        elif platform.machine() == "aarch64" or platform.machine() == "arm64":
+             self._host_architecture = "arm64"
+         elif platform.machine() == "mips32":
+             self._host_architecture = "mipsel"
+@@ -223,6 +217,12 @@ class RoboConfiguration:
+         elif platform.system() == "Windows" or "CYGWIN_NT" in platform.system(
+         ):
+             self._host_operating_system = "win"
++        elif platform.system() == "OpenBSD":
++            self._host_operating_system = "openbsd"
++        elif platform.system() == "FreeBSD":
++            self._host_operating_system = "freebsd"
++        elif platform.system() == "NetBSD":
++            self._host_operating_system = "netbsd"
+         else:
+             raise ValueError(f"Unsupported platform: {platform.system()}")
+ 
+@@ -231,8 +231,8 @@ class RoboConfiguration:
+         wd = os.getcwd()
+         # Walk up the tree until we find src/AUTHORS
+         while wd != "/":
+-            if os.path.isfile(os.path.join(wd, "src", "AUTHORS")):
+-                self._chrome_src = os.path.join(wd, "src")
++            if os.path.isfile(os.path.join(wd, "third_party", "DEPS")):
++                self._chrome_src = wd
+                 return
+             wd = os.path.dirname(wd)
+         raise Exception("could not find src/AUTHORS in any parent of the wd")
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_net_dns_BUILD.gn b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_net_dns_BUILD.gn
index f9756d3060..df3d4426a5 100644
--- a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_net_dns_BUILD.gn
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_net_dns_BUILD.gn
@@ -4,7 +4,7 @@ $NetBSD$
 * Based on OpenBSD's chromium patches, and
   pkgsrc's qt5-qtwebengine patches
 
---- src/3rdparty/chromium/net/dns/BUILD.gn.orig	2024-12-17 17:58:49.000000000 +0000
+--- src/3rdparty/chromium/net/dns/BUILD.gn.orig	2025-09-25 11:10:42.000000000 +0000
 +++ src/3rdparty/chromium/net/dns/BUILD.gn
 @@ -138,7 +138,7 @@ source_set("dns") {
        "dns_config_service_android.cc",
@@ -15,6 +15,18 @@ $NetBSD$
      sources += [
        "dns_config_service_linux.cc",
        "dns_config_service_linux.h",
+@@ -171,7 +171,10 @@ source_set("dns") {
+     ]
+   }
+ 
+-  deps = [ "//net:net_deps" ]
++  deps = [
++    "//net:net_deps",
++    "///services/screen_ai/buildflags",
++  ]
+ 
+   public_deps = [
+     ":dns_client",
 @@ -179,6 +182,7 @@ source_set("dns") {
      ":host_resolver_manager",
      ":mdns_client",
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_net_dns_dns__config__service__posix.cc b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_net_dns_dns__config__service__posix.cc
new file mode 100644
index 0000000000..500a003aac
--- /dev/null
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_net_dns_dns__config__service__posix.cc
@@ -0,0 +1,32 @@
+$NetBSD$
+
+* Part of patchset to build chromium on NetBSD
+* Based on OpenBSD's chromium patches, and
+  pkgsrc's qt5-qtwebengine patches
+
+--- src/3rdparty/chromium/net/dns/dns_config_service_posix.cc.orig	2025-09-25 11:10:42.000000000 +0000
++++ src/3rdparty/chromium/net/dns/dns_config_service_posix.cc
+@@ -39,6 +39,11 @@
+ #include "net/dns/dns_config_watcher_mac.h"
+ #endif
+ 
++#if BUILDFLAG(IS_BSD)
++#include "base/command_line.h"
++#include "sandbox/policy/switches.h"
++#endif
++
+ namespace net {
+ 
+ namespace internal {
+@@ -136,6 +141,11 @@ class DnsConfigServicePosix::Watcher : p
+   bool Watch() override {
+     CheckOnCorrectSequence();
+ 
++// pledge + unveil
++    base::CommandLine* command_line = base::CommandLine::ForCurrentProcess();
++    if (!command_line->HasSwitch(sandbox::policy::switches::kNoSandbox))
++      return false;
++
+     bool success = true;
+     if (!config_watcher_.Watch(base::BindRepeating(&Watcher::OnConfigChanged,
+                                                    base::Unretained(this)))) {
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_printing_backend_print__backend__cups.cc b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_printing_backend_print__backend__cups.cc
new file mode 100644
index 0000000000..2d5153bebe
--- /dev/null
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_printing_backend_print__backend__cups.cc
@@ -0,0 +1,35 @@
+$NetBSD$
+
+* Part of patchset to build chromium on NetBSD
+* Based on OpenBSD's chromium patches, and
+  pkgsrc's qt5-qtwebengine patches
+
+--- src/3rdparty/chromium/printing/backend/print_backend_cups.cc.orig	2025-09-25 11:10:42.000000000 +0000
++++ src/3rdparty/chromium/printing/backend/print_backend_cups.cc
+@@ -33,7 +33,7 @@
+ #include "printing/mojom/print.mojom.h"
+ #include "url/gurl.h"
+ 
+-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC)
++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD)
+ #include "base/feature_list.h"
+ #include "printing/backend/cups_connection.h"
+ #include "printing/backend/print_backend_cups_ipp.h"
+@@ -63,7 +63,7 @@ int CaptureCupsDestCallback(void* data, 
+   return 1;  // Keep going.
+ }
+ 
+-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC)
++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD)
+ // This may be removed when Amazon Linux 2 reaches EOL (30 Jun 2025).
+ bool AreNewerCupsFunctionsAvailable() {
+   return cupsFindDestDefault && cupsFindDestSupported && ippValidateAttributes;
+@@ -291,7 +291,7 @@ bool PrintBackendCUPS::IsValidPrinter(co
+ #if !BUILDFLAG(IS_CHROMEOS)
+ scoped_refptr<PrintBackend> PrintBackend::CreateInstanceImpl(
+     const std::string& locale) {
+-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC)
++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD)
+   if (AreNewerCupsFunctionsAvailable() &&
+       base::FeatureList::IsEnabled(features::kCupsIppPrintingBackend)) {
+     return base::MakeRefCounted<PrintBackendCupsIpp>(CupsConnection::Create());
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_services_device_geolocation_location__provider__manager.cc b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_services_device_geolocation_location__provider__manager.cc
new file mode 100644
index 0000000000..1526afb059
--- /dev/null
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_services_device_geolocation_location__provider__manager.cc
@@ -0,0 +1,17 @@
+$NetBSD$
+
+* Part of patchset to build chromium on NetBSD
+* Based on OpenBSD's chromium patches, and
+  pkgsrc's qt5-qtwebengine patches
+
+--- src/3rdparty/chromium/services/device/geolocation/location_provider_manager.cc.orig	2025-09-25 11:10:42.000000000 +0000
++++ src/3rdparty/chromium/services/device/geolocation/location_provider_manager.cc
+@@ -47,7 +47,7 @@ LocationProviderManager::LocationProvide
+ #if BUILDFLAG(IS_ANDROID)
+   // On Android, default to using the platform location provider.
+   provider_manager_mode_ = LPMM::kPlatformOnly;
+-#elif BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX)
++#elif BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)
+   // On Ash / Lacros / Linux, default to using the network location provider.
+   provider_manager_mode_ = LPMM::kNetworkOnly;
+ #else
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_services_screen__ai_public_cpp_utilities.cc b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_services_screen__ai_public_cpp_utilities.cc
new file mode 100644
index 0000000000..f568b8e93c
--- /dev/null
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_services_screen__ai_public_cpp_utilities.cc
@@ -0,0 +1,35 @@
+$NetBSD$
+
+* Part of patchset to build chromium on NetBSD
+* Based on OpenBSD's chromium patches, and
+  pkgsrc's qt5-qtwebengine patches
+
+--- src/3rdparty/chromium/services/screen_ai/public/cpp/utilities.cc.orig	2025-09-25 11:10:42.000000000 +0000
++++ src/3rdparty/chromium/services/screen_ai/public/cpp/utilities.cc
+@@ -18,7 +18,7 @@ namespace screen_ai {
+ 
+ namespace {
+ 
+-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)
++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD)
+ constexpr char kBinaryPathSwitch[] = "screen-ai-binary";
+ #endif
+ 
+@@ -39,7 +39,7 @@ constexpr char kScreenAIDlcRootPath[] =
+ #endif
+ 
+ #if BUILDFLAG(ENABLE_SCREEN_AI_BROWSERTESTS)
+-#if BUILDFLAG(IS_LINUX)
++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)
+ constexpr base::FilePath::CharType kScreenAIResourcePathForTests[] =
+     FILE_PATH_LITERAL("third_party/screen-ai/linux/resources");
+ #elif BUILDFLAG(IS_MAC)
+@@ -128,7 +128,7 @@ base::FilePath GetComponentBinaryPathFor
+ 
+ const char* GetBinaryPathSwitch() {
+   // This is only used on Linux and ChromeOS.
+-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)
++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD)
+   return kBinaryPathSwitch;
+ #else
+   return nullptr;
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_services_screen__ai_sandbox_screen__ai__sandbox__hook__linux.cc b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_services_screen__ai_sandbox_screen__ai__sandbox__hook__linux.cc
new file mode 100644
index 0000000000..adaff9a287
--- /dev/null
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_services_screen__ai_sandbox_screen__ai__sandbox__hook__linux.cc
@@ -0,0 +1,24 @@
+$NetBSD$
+
+* Part of patchset to build chromium on NetBSD
+* Based on OpenBSD's chromium patches, and
+  pkgsrc's qt5-qtwebengine patches
+
+--- src/3rdparty/chromium/services/screen_ai/sandbox/screen_ai_sandbox_hook_linux.cc.orig	2025-09-25 11:10:42.000000000 +0000
++++ src/3rdparty/chromium/services/screen_ai/sandbox/screen_ai_sandbox_hook_linux.cc
+@@ -53,6 +53,7 @@ bool ScreenAIPreSandboxHook(base::FilePa
+     }
+   }
+ 
++#if !BUILDFLAG(IS_BSD)
+   auto* instance = sandbox::policy::SandboxLinux::GetInstance();
+ 
+   std::vector<BrokerFilePermission> permissions{
+@@ -75,6 +76,7 @@ bool ScreenAIPreSandboxHook(base::FilePa
+                             sandbox::syscall_broker::COMMAND_OPEN}),
+       permissions, options);
+   instance->EngageNamespaceSandboxIfPossible();
++#endif
+ 
+   return true;
+ }
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_services_screen__ai_sandbox_screen__ai__sandbox__hook__linux.h b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_services_screen__ai_sandbox_screen__ai__sandbox__hook__linux.h
new file mode 100644
index 0000000000..aed2101b8e
--- /dev/null
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_services_screen__ai_sandbox_screen__ai__sandbox__hook__linux.h
@@ -0,0 +1,22 @@
+$NetBSD$
+
+* Part of patchset to build chromium on NetBSD
+* Based on OpenBSD's chromium patches, and
+  pkgsrc's qt5-qtwebengine patches
+
+--- src/3rdparty/chromium/services/screen_ai/sandbox/screen_ai_sandbox_hook_linux.h.orig	2025-09-25 11:10:42.000000000 +0000
++++ src/3rdparty/chromium/services/screen_ai/sandbox/screen_ai_sandbox_hook_linux.h
+@@ -6,7 +6,13 @@
+ #define SERVICES_SCREEN_AI_SANDBOX_SCREEN_AI_SANDBOX_HOOK_LINUX_H_
+ 
+ #include "base/files/file_path.h"
++#include "build/build_config.h"
++
++#if BUILDFLAG(IS_BSD)
++#include "sandbox/policy/sandbox.h"
++#else
+ #include "sandbox/policy/linux/sandbox_linux.h"
++#endif
+ 
+ namespace screen_ai {
+ 
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_services_screen__ai_sandbox_screen_ai__sandbox__hook__linux.h b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_services_screen__ai_sandbox_screen_ai__sandbox__hook__linux.h
deleted file mode 100644
index aed2101b8e..0000000000
--- a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_services_screen__ai_sandbox_screen_ai__sandbox__hook__linux.h
+++ /dev/null
@@ -1,22 +0,0 @@
-$NetBSD$
-
-* Part of patchset to build chromium on NetBSD
-* Based on OpenBSD's chromium patches, and
-  pkgsrc's qt5-qtwebengine patches
-
---- src/3rdparty/chromium/services/screen_ai/sandbox/screen_ai_sandbox_hook_linux.h.orig	2025-09-25 11:10:42.000000000 +0000
-+++ src/3rdparty/chromium/services/screen_ai/sandbox/screen_ai_sandbox_hook_linux.h
-@@ -6,7 +6,13 @@
- #define SERVICES_SCREEN_AI_SANDBOX_SCREEN_AI_SANDBOX_HOOK_LINUX_H_
- 
- #include "base/files/file_path.h"
-+#include "build/build_config.h"
-+
-+#if BUILDFLAG(IS_BSD)
-+#include "sandbox/policy/sandbox.h"
-+#else
- #include "sandbox/policy/linux/sandbox_linux.h"
-+#endif
- 
- namespace screen_ai {
- 
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_graphics_gpu_image__layer__bridge.cc b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_graphics_gpu_image__layer__bridge.cc
new file mode 100644
index 0000000000..58ea16bb20
--- /dev/null
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_third__party_blink_renderer_platform_graphics_gpu_image__layer__bridge.cc
@@ -0,0 +1,17 @@
+$NetBSD$
+
+* Part of patchset to build chromium on NetBSD
+* Based on OpenBSD's chromium patches, and
+  pkgsrc's qt5-qtwebengine patches
+
+--- src/3rdparty/chromium/third_party/blink/renderer/platform/graphics/gpu/image_layer_bridge.cc.orig	2025-09-25 11:10:42.000000000 +0000
++++ src/3rdparty/chromium/third_party/blink/renderer/platform/graphics/gpu/image_layer_bridge.cc
+@@ -49,7 +49,7 @@ scoped_refptr<StaticBitmapImage> MakeAcc
+   const auto paint_image = source->PaintImageForCurrentFrame();
+   const auto image_info = paint_image.GetSkImageInfo().makeWH(
+       source->Size().width(), source->Size().height());
+-#if BUILDFLAG(IS_LINUX)
++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)
+   // TODO(b/330865436): On Linux, CanvasResourceProvider doesn't always check
+   // for SCANOUT support correctly on X11 and it's never supported in
+   // practice. Therefore, don't include it until this flow is reworked.
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_third__party_skia_src_ports_SkMemory__malloc.cpp b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_third__party_skia_src_ports_SkMemory__malloc.cpp
new file mode 100644
index 0000000000..2763570ec8
--- /dev/null
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_third__party_skia_src_ports_SkMemory__malloc.cpp
@@ -0,0 +1,27 @@
+$NetBSD$
+
+* Part of patchset to build chromium on NetBSD
+* Based on OpenBSD's chromium patches, and
+  pkgsrc's qt5-qtwebengine patches
+
+--- src/3rdparty/chromium/third_party/skia/src/ports/SkMemory_malloc.cpp.orig	2025-09-25 11:10:42.000000000 +0000
++++ src/3rdparty/chromium/third_party/skia/src/ports/SkMemory_malloc.cpp
+@@ -15,7 +15,8 @@
+ 
+ #if defined(SK_BUILD_FOR_MAC) || defined(SK_BUILD_FOR_IOS)
+ #include <malloc/malloc.h>
+-#elif defined(SK_BUILD_FOR_ANDROID) || defined(SK_BUILD_FOR_UNIX)
++#elif defined(SK_BUILD_FOR_ANDROID) || defined(SK_BUILD_FOR_UNIX) && !defined(__OpenBSD__) && \
++    !defined(__NetBSD__)
+ #include <malloc.h>
+ #elif defined(SK_BUILD_FOR_WIN)
+ #include <malloc.h>
+@@ -126,7 +127,7 @@ size_t sk_malloc_size(void* addr, size_t
+     #elif defined(SK_BUILD_FOR_ANDROID) && __ANDROID_API__ >= 17
+         completeSize = malloc_usable_size(addr);
+         SkASSERT(completeSize >= size);
+-    #elif defined(SK_BUILD_FOR_UNIX)
++    #elif defined(SK_BUILD_FOR_UNIX) && !defined(__OpenBSD__) && !defined(__NetBSD__)
+         completeSize = malloc_usable_size(addr);
+         SkASSERT(completeSize >= size);
+     #elif defined(SK_BUILD_FOR_WIN)
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_third__party_vulkan-validation-layers_src_layers_external_vma_vk__mem__alloc.h b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_third__party_vulkan-validation-layers_src_layers_external_vma_vk__mem__alloc.h
new file mode 100644
index 0000000000..d1ad91652e
--- /dev/null
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_third__party_vulkan-validation-layers_src_layers_external_vma_vk__mem__alloc.h
@@ -0,0 +1,17 @@
+$NetBSD$
+
+* Part of patchset to build chromium on NetBSD
+* Based on OpenBSD's chromium patches, and
+  pkgsrc's qt5-qtwebengine patches
+
+--- src/3rdparty/chromium/third_party/vulkan-validation-layers/src/layers/external/vma/vk_mem_alloc.h.orig	2025-09-25 11:10:42.000000000 +0000
++++ src/3rdparty/chromium/third_party/vulkan-validation-layers/src/layers/external/vma/vk_mem_alloc.h
+@@ -2740,7 +2740,7 @@ static void* vma_aligned_alloc(size_t al
+ 
+     return memalign(alignment, size);
+ }
+-#elif defined(__APPLE__) || defined(__ANDROID__) || (defined(__linux__) && defined(__GLIBCXX__) && !defined(_GLIBCXX_HAVE_ALIGNED_ALLOC))
++#elif defined(__APPLE__) || defined(__ANDROID__) || (defined(__linux__) && defined(__GLIBCXX__) && !defined(_GLIBCXX_HAVE_ALIGNED_ALLOC)) || defined(__OpenBSD__) || defined(__FreeBSD__) || defined(__NetBSD__)
+ #include <cstdlib>
+ 
+ #if defined(__APPLE__)
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_third__party_vulkan-validation-layers_src_layers_vulkan_generated_vk__function__pointers.cpp b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_third__party_vulkan-validation-layers_src_layers_vulkan_generated_vk__function__pointers.cpp
new file mode 100644
index 0000000000..183429cf49
--- /dev/null
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_third__party_vulkan-validation-layers_src_layers_vulkan_generated_vk__function__pointers.cpp
@@ -0,0 +1,17 @@
+$NetBSD$
+
+* Part of patchset to build chromium on NetBSD
+* Based on OpenBSD's chromium patches, and
+  pkgsrc's qt5-qtwebengine patches
+
+--- src/3rdparty/chromium/third_party/vulkan-validation-layers/src/layers/vulkan/generated/vk_function_pointers.cpp.orig	2025-09-25 11:10:42.000000000 +0000
++++ src/3rdparty/chromium/third_party/vulkan-validation-layers/src/layers/vulkan/generated/vk_function_pointers.cpp
+@@ -53,7 +53,7 @@ static void *get_proc_address(dl_handle 
+     assert(name);
+     return (void *)GetProcAddress(library, name);
+ }
+-#elif defined(__linux__) || defined(__APPLE__) || defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__QNX__) || defined(__GNU__)
++#elif defined(__linux__) || defined(__APPLE__) || defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__QNX__) || defined(__GNU__) || defined(__NetBSD__)
+ 
+ #include <dlfcn.h>
+ 
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_third__party_webrtc_modules_video__coding_codecs_av1_libaom__av1__encoder.cc b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_third__party_webrtc_modules_video__coding_codecs_av1_libaom__av1__encoder.cc
new file mode 100644
index 0000000000..d80f7826a6
--- /dev/null
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_third__party_webrtc_modules_video__coding_codecs_av1_libaom__av1__encoder.cc
@@ -0,0 +1,29 @@
+$NetBSD$
+
+* Part of patchset to build chromium on NetBSD
+* Based on OpenBSD's chromium patches, and
+  pkgsrc's qt5-qtwebengine patches
+
+--- src/3rdparty/chromium/third_party/webrtc/modules/video_coding/codecs/av1/libaom_av1_encoder.cc.orig	2025-09-25 11:10:42.000000000 +0000
++++ src/3rdparty/chromium/third_party/webrtc/modules/video_coding/codecs/av1/libaom_av1_encoder.cc
+@@ -299,7 +299,9 @@ int LibaomAv1Encoder::InitEncode(const V
+     SET_ENCODER_PARAM_OR_RETURN_ERROR(AV1E_SET_ENABLE_PALETTE, 0);
+   }
+ 
++#ifdef notyet
+   SET_ENCODER_PARAM_OR_RETURN_ERROR(AV1E_SET_AUTO_TILES, 1);
++#endif
+   SET_ENCODER_PARAM_OR_RETURN_ERROR(AV1E_SET_ROW_MT, 1);
+   SET_ENCODER_PARAM_OR_RETURN_ERROR(AV1E_SET_ENABLE_OBMC, 0);
+   SET_ENCODER_PARAM_OR_RETURN_ERROR(AV1E_SET_NOISE_SENSITIVITY, 0);
+@@ -332,8 +334,10 @@ int LibaomAv1Encoder::InitEncode(const V
+   SET_ENCODER_PARAM_OR_RETURN_ERROR(AV1E_SET_MAX_REFERENCE_FRAMES, 3);
+ 
+   if (adaptive_max_consec_drops_) {
++#ifdef notyet
+     SET_ENCODER_PARAM_OR_RETURN_ERROR(AV1E_SET_MAX_CONSEC_FRAME_DROP_MS_CBR,
+                                       250);
++#endif
+   }
+ 
+   return WEBRTC_VIDEO_CODEC_OK;
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_ui_base_ui__base__features.cc b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_ui_base_ui__base__features.cc
index 0afe948884..59c2d99024 100644
--- a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_ui_base_ui__base__features.cc
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_ui_base_ui__base__features.cc
@@ -4,9 +4,18 @@ $NetBSD$
 * Based on OpenBSD's chromium patches, and
   pkgsrc's qt5-qtwebengine patches
 
---- src/3rdparty/chromium/ui/base/ui_base_features.cc.orig	2024-11-21 04:36:37.000000000 +0000
+--- src/3rdparty/chromium/ui/base/ui_base_features.cc.orig	2025-09-25 11:10:42.000000000 +0000
 +++ src/3rdparty/chromium/ui/base/ui_base_features.cc
-@@ -217,7 +217,7 @@ BASE_FEATURE(kUiCompositorScrollWithLaye
+@@ -165,7 +165,7 @@ BASE_FEATURE(kWaylandTextInputV3,
+              base::FEATURE_DISABLED_BY_DEFAULT);
+ #endif  // BUILDFLAG(IS_OZONE)
+ 
+-#if BUILDFLAG(IS_LINUX)
++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)
+ // If this feature is enabled, users not specify --ozone-platform-hint switch
+ // will get --ozone-platform-hint=auto treatment. https://crbug.com/40250220.
+ COMPONENT_EXPORT(UI_BASE_FEATURES)
+@@ -278,7 +278,7 @@ BASE_FEATURE(kUiCompositorScrollWithLaye
  
  // Enables the use of a touch fling curve that is based on the behavior of
  // native apps on Windows.
@@ -15,7 +24,7 @@ $NetBSD$
      (BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CHROMEOS_ASH) && \
       !BUILDFLAG(IS_CHROMEOS_LACROS))
  BASE_FEATURE(kExperimentalFlingAnimation,
-@@ -321,7 +321,7 @@ bool IsForcedColorsEnabled() {
+@@ -389,7 +389,7 @@ bool IsForcedColorsEnabled() {
  // and Linux. This feature will be released for other platforms in later
  // milestones.
  #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_ui_base_ui__base__features.h b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_ui_base_ui__base__features.h
new file mode 100644
index 0000000000..20a75e8265
--- /dev/null
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_ui_base_ui__base__features.h
@@ -0,0 +1,17 @@
+$NetBSD$
+
+* Part of patchset to build chromium on NetBSD
+* Based on OpenBSD's chromium patches, and
+  pkgsrc's qt5-qtwebengine patches
+
+--- src/3rdparty/chromium/ui/base/ui_base_features.h.orig	2025-09-25 11:10:42.000000000 +0000
++++ src/3rdparty/chromium/ui/base/ui_base_features.h
+@@ -146,7 +146,7 @@ COMPONENT_EXPORT(UI_BASE_FEATURES)
+ BASE_DECLARE_FEATURE(kWaylandTextInputV3);
+ #endif  // BUILDFLAG(IS_OZONE)
+ 
+-#if BUILDFLAG(IS_LINUX)
++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)
+ COMPONENT_EXPORT(UI_BASE_FEATURES)
+ BASE_DECLARE_FEATURE(kOverrideDefaultOzonePlatformHintToAuto);
+ #endif  // BUILDFLAG(IS_LINUX)
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_ui_ozone_platform_wayland_host_wayland__connection.cc b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_ui_ozone_platform_wayland_host_wayland__connection.cc
new file mode 100644
index 0000000000..7f056c6100
--- /dev/null
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_ui_ozone_platform_wayland_host_wayland__connection.cc
@@ -0,0 +1,17 @@
+$NetBSD$
+
+* Part of patchset to build chromium on NetBSD
+* Based on OpenBSD's chromium patches, and
+  pkgsrc's qt5-qtwebengine patches
+
+--- src/3rdparty/chromium/ui/ozone/platform/wayland/host/wayland_connection.cc.orig	2025-09-25 11:10:42.000000000 +0000
++++ src/3rdparty/chromium/ui/ozone/platform/wayland/host/wayland_connection.cc
+@@ -541,7 +541,7 @@ bool WaylandConnection::ShouldUseOverlay
+   // isn't present on any non-exo Wayland compositors.
+   bool should_use_overlay_delegation =
+       IsWaylandOverlayDelegationEnabled() && !fractional_scale_manager_v1();
+-#if BUILDFLAG(IS_LINUX)
++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)
+   // Overlay delegation also requires a single-pixel-buffer protocol, which
+   // allows creation of non-backed solid color buffers. Even though only video
+   // overlays can be supported on Linux, these color buffers are still needed
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_ui_ozone_platform_wayland_host_wayland__input__method__context.cc b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_ui_ozone_platform_wayland_host_wayland__input__method__context.cc
new file mode 100644
index 0000000000..dc376f078e
--- /dev/null
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_ui_ozone_platform_wayland_host_wayland__input__method__context.cc
@@ -0,0 +1,17 @@
+$NetBSD$
+
+* Part of patchset to build chromium on NetBSD
+* Based on OpenBSD's chromium patches, and
+  pkgsrc's qt5-qtwebengine patches
+
+--- src/3rdparty/chromium/ui/ozone/platform/wayland/host/wayland_input_method_context.cc.orig	2025-09-25 11:10:42.000000000 +0000
++++ src/3rdparty/chromium/ui/ozone/platform/wayland/host/wayland_input_method_context.cc
+@@ -60,7 +60,7 @@ namespace {
+ // Only enable the preedit string for sequence mode (i.e. when using dead keys
+ // or the Compose key) on Linux ozone/wayland (see b/220370007).
+ constexpr CharacterComposer::PreeditStringMode kPreeditStringMode =
+-#if BUILDFLAG(IS_LINUX)
++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)
+     CharacterComposer::PreeditStringMode::kAlwaysEnabled;
+ #else
+     CharacterComposer::PreeditStringMode::kHexModeOnly;
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_ui_ozone_platform_wayland_host_wayland__popup.cc b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_ui_ozone_platform_wayland_host_wayland__popup.cc
new file mode 100644
index 0000000000..05585a9928
--- /dev/null
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_ui_ozone_platform_wayland_host_wayland__popup.cc
@@ -0,0 +1,17 @@
+$NetBSD$
+
+* Part of patchset to build chromium on NetBSD
+* Based on OpenBSD's chromium patches, and
+  pkgsrc's qt5-qtwebengine patches
+
+--- src/3rdparty/chromium/ui/ozone/platform/wayland/host/wayland_popup.cc.orig	2025-09-25 11:10:42.000000000 +0000
++++ src/3rdparty/chromium/ui/ozone/platform/wayland/host/wayland_popup.cc
+@@ -34,7 +34,7 @@ WaylandPopup::WaylandPopup(PlatformWindo
+                            WaylandWindow* parent)
+     : WaylandWindow(delegate, connection) {
+   set_parent_window(parent);
+-#if BUILDFLAG(IS_LINUX)
++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)
+   // TODO(crbug.com/330384470): Whether the popup appear depends on whether
+   // anchor point is outside of the parent xdg_surface. On Mutter the popup will
+   // not show when outside.
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_ui_ozone_platform_wayland_host_wayland__screen.cc b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_ui_ozone_platform_wayland_host_wayland__screen.cc
new file mode 100644
index 0000000000..4e15f190b1
--- /dev/null
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_ui_ozone_platform_wayland_host_wayland__screen.cc
@@ -0,0 +1,35 @@
+$NetBSD$
+
+* Part of patchset to build chromium on NetBSD
+* Based on OpenBSD's chromium patches, and
+  pkgsrc's qt5-qtwebengine patches
+
+--- src/3rdparty/chromium/ui/ozone/platform/wayland/host/wayland_screen.cc.orig	2025-09-25 11:10:42.000000000 +0000
++++ src/3rdparty/chromium/ui/ozone/platform/wayland/host/wayland_screen.cc
+@@ -46,7 +46,7 @@
+ #include "ui/ozone/platform/wayland/host/org_gnome_mutter_idle_monitor.h"
+ #endif
+ 
+-#if BUILDFLAG(IS_LINUX)
++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)
+ #include "ui/linux/linux_ui.h"
+ #endif
+ 
+@@ -133,7 +133,7 @@ WaylandScreen::WaylandScreen(WaylandConn
+   tablet_state_ = connection_->GetTabletState();
+ #endif
+ 
+-#if BUILDFLAG(IS_LINUX)
++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)
+   if (auto* linux_ui = ui::LinuxUi::instance()) {
+     OnDeviceScaleFactorChanged();
+     display_scale_factor_observer_.Observe(linux_ui);
+@@ -606,7 +606,7 @@ bool WaylandScreen::VerifyOutputStateCon
+   return true;
+ }
+ 
+-#if BUILDFLAG(IS_LINUX)
++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)
+ void WaylandScreen::OnDeviceScaleFactorChanged() {
+   if (const auto* linux_ui = ui::LinuxUi::instance()) {
+     const float new_font_scale = linux_ui->display_config().font_scale;
diff --git a/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_ui_ozone_platform_wayland_host_wayland__screen.h b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_ui_ozone_platform_wayland_host_wayland__screen.h
new file mode 100644
index 0000000000..5b05b50910
--- /dev/null
+++ b/qt6-qtwebengine/patches/patch-src_3rdparty_chromium_ui_ozone_platform_wayland_host_wayland__screen.h
@@ -0,0 +1,44 @@
+$NetBSD$
+
+* Part of patchset to build chromium on NetBSD
+* Based on OpenBSD's chromium patches, and
+  pkgsrc's qt5-qtwebengine patches
+
+--- src/3rdparty/chromium/ui/ozone/platform/wayland/host/wayland_screen.h.orig	2025-09-25 11:10:42.000000000 +0000
++++ src/3rdparty/chromium/ui/ozone/platform/wayland/host/wayland_screen.h
+@@ -24,7 +24,7 @@
+ #include "ui/ozone/platform/wayland/host/wayland_output.h"
+ #include "ui/ozone/public/platform_screen.h"
+ 
+-#if BUILDFLAG(IS_LINUX)
++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)
+ #include "base/scoped_observation.h"
+ #include "ui/linux/device_scale_factor_observer.h"
+ #include "ui/linux/linux_ui.h"
+@@ -44,7 +44,7 @@ class OrgGnomeMutterIdleMonitor;
+ 
+ // A PlatformScreen implementation for Wayland.
+ class WaylandScreen : public PlatformScreen
+-#if BUILDFLAG(IS_LINUX)
++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)
+     ,
+                       public DeviceScaleFactorObserver
+ #endif
+@@ -96,7 +96,7 @@ class WaylandScreen : public PlatformScr
+   display::TabletState GetTabletState() const override;
+ #endif
+ 
+-#if BUILDFLAG(IS_LINUX)
++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)
+   // DeviceScaleFactorObserver:
+   void OnDeviceScaleFactorChanged() override;
+ #endif
+@@ -158,7 +158,7 @@ class WaylandScreen : public PlatformScr
+   display::TabletState tablet_state_;
+ #endif
+ 
+-#if BUILDFLAG(IS_LINUX)
++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)
+   float font_scale_ = 1.0f;
+ 
+   base::ScopedObservation<ui::LinuxUi, DeviceScaleFactorObserver>


Home | Main Index | Thread Index | Old Index