diff --git a/devel/electron43/Makefile b/devel/electron43/Makefile index 69b74079d82d..813b1f4ef3ce 100644 --- a/devel/electron43/Makefile +++ b/devel/electron43/Makefile @@ -1,491 +1,490 @@ PORTNAME= electron DISTVERSIONPREFIX= v DISTVERSION= ${ELECTRON_VER} -PORTREVISION= 1 PULSEMV= 16 PULSEV= ${PULSEMV}.1 CATEGORIES= devel MASTER_SITES= https://commondatastorage.googleapis.com/chromium-browser-official/:chromium \ https://freedesktop.org/software/pulseaudio/releases/:pulseaudio PKGNAMESUFFIX= ${ELECTRON_VER_MAJOR} DISTFILES= chromium-${CHROMIUM_VER}-lite${EXTRACT_SUFX}:chromium \ pulseaudio-${PULSEV}.tar.gz:pulseaudio DIST_SUBDIR= ${PORTNAME} MAINTAINER= tagattie@FreeBSD.org COMMENT= Build cross-platform desktop apps with JavaScript, HTML, and CSS WWW= https://electronjs.org/ LICENSE= BSD3CLAUSE LGPL21 MPL11 MIT LICENSE_COMB= multi LICENSE_FILE= ${WRKSRC}/electron/LICENSE BROKEN_i386= fetch fails: node process stalls during fetch phase and eats up all CPUs ONLY_FOR_ARCHS= aarch64 amd64 i386 FETCH_DEPENDS= git:devel/git \ npm${NODEJS_SUFFIX}>0:www/npm${NODEJS_SUFFIX} PATCH_DEPENDS= git:devel/git \ jq:textproc/jq BUILD_DEPENDS= esbuild:devel/esbuild \ gperf:devel/gperf \ bindgen:devel/rust-bindgen-cli \ yasm:devel/yasm \ ${LOCALBASE}/libdata/pkgconfig/dri.pc:graphics/mesa-libs \ ${LOCALBASE}/include/linux/videodev2.h:multimedia/v4l_compat \ node${NODEJS_VERSION}>0:www/node${NODEJS_VERSION} \ npm${NODEJS_SUFFIX}>0:www/npm${NODEJS_SUFFIX} LIB_DEPENDS= libatk-bridge-2.0.so:accessibility/at-spi2-core \ libatspi.so:accessibility/at-spi2-core \ libFLAC.so:audio/flac \ libopus.so:audio/opus \ libdbus-1.so:devel/dbus \ libepoll-shim.so:devel/libepoll-shim \ libevent.so:devel/libevent \ libffi.so:devel/libffi \ libnotify.so:devel/libnotify \ libpci.so:devel/libpci \ libnspr4.so:devel/nspr \ libre2.so:devel/re2 \ libdrm.so:graphics/libdrm \ libpng.so:graphics/png \ libwayland-client.so:graphics/wayland \ libwebp.so:graphics/webp \ libdav1d.so:multimedia/dav1d \ libva.so:multimedia/libva \ libopenh264.so:multimedia/openh264 \ libfreetype.so:print/freetype2 \ libharfbuzz.so:print/harfbuzz \ libsecret-1.so:security/libsecret \ libnss3.so:security/nss \ libexpat.so:textproc/expat2 \ libxkbcommon.so:x11/libxkbcommon \ libxshmfence.so:x11/libxshmfence \ libfontconfig.so:x11-fonts/fontconfig RUN_DEPENDS= xdg-open:devel/xdg-utils TEST_DEPENDS= git:devel/git \ ${PYTHON_PKGNAMEPREFIX}python-dbusmock>0:devel/py-python-dbusmock@${PY_FLAVOR} \ sentry-cli:devel/sentry-cli USES= bison cargo compiler:c++17-lang cpe display:test gettext-tools \ gl gmake gnome iconv:wchar_t jpeg localbase:ldflags ninja \ nodejs:24,build npm:yarn4 pkgconfig python:build,test qt:5 \ shebangfix tar:xz xorg CPE_VENDOR= electronjs USE_GITHUB= nodefault GH_TUPLE= electron:electron:${DISTVERSIONFULL}:electron \ nodejs:node:v${NODE_VER}:node \ nodejs:nan:${NAN_VER}:nan \ Squirrel:Squirrel.Mac:${SQUIRREL_MAC_VER}:squirrel_mac \ ReactiveCocoa:ReactiveObjC:${REACTIVEOBJC_VER}:reactiveobjc \ Mantle:Mantle:${MANTLE_VER}:mantle \ EngFlow:reclient-configs:${ENGFLOW_RECLIENT_CONFIGS_VER}:reclient_configs \ rollup:rollup:v${ROLLUP_VER}:rollup \ evanw:esbuild:v${ESBUILD_VER}:esbuild USE_GL= gbm gl glesv2 USE_GNOME= atk cairo gdkpixbuf gtk30 libxml2 libxslt pango USE_XORG= x11 xcb xcomposite xcursor xdamage xext xfixes xi xrandr \ xrender xscrnsaver xtst USE_QT= buildtools:build core:build widgets:build NPM_EXTRACT_WRKSRC= ${WRKDIR}/${PORTNAME}-${ELECTRON_VER} SHEBANG_FILES= chrome/tools/build/linux/chrome-wrapper buildtools/linux64/clang-format # rollup CARGO_CARGOTOML= ${WRKSRC}/rollup/rust/Cargo.toml CARGO_CARGOLOCK= ${WRKSRC}/rollup/rust/Cargo.lock CARGO_BUILD= no CARGO_INSTALL= no CARGO_TEST= no CARGO_TARGET_DIR= ${WRKSRC}/rollup/rust/target MAKE_ARGS= -C out/${BUILDTYPE} MAKE_ENV+= C_INCLUDE_PATH=${LOCALBASE}/include \ CPLUS_INCLUDE_PATH=${LOCALBASE}/include ALL_TARGET= electron electron:node_headers POST_BUILD_TARGETS= licenses version POST_BUILD_DIST_TARGETS=electron_dist_zip electron_chromedriver_zip \ electron_mksnapshot_zip DATADIR= ${PREFIX}/share/${PORTNAME}${PKGNAMESUFFIX} BINARY_ALIAS= python3=${PYTHON_CMD} BUNDLE_LIBS= yes TARGET_ORDER_OVERRIDE= 750:cargo-extract WRKSRC= ${WRKDIR}/src GN_ARGS+= clang_use_chrome_plugins=false \ enable_backup_ref_ptr_support=false \ enable_hangout_services_extension=true \ enable_remoting=false \ fatal_linker_warnings=false \ icu_use_data_file=false \ is_clang=true \ moc_qt5_path="${QT_TOOLDIR}/moc" \ optimize_webui=true \ toolkit_views=true \ treat_warnings_as_errors=false \ use_allocator_shim=false \ use_aura=true \ use_custom_libcxx=true \ use_custom_libunwind=true \ use_lld=true \ use_partition_alloc=true \ use_partition_alloc_as_malloc=false \ use_qt5=true \ use_sysroot=false \ use_system_freetype=false \ use_system_harfbuzz=true \ use_system_libffi=true \ use_system_libjpeg=true \ use_udev=false \ chrome_pgo_phase=0 \ extra_cflags="${CFLAGS}" \ extra_cxxflags="${CXXFLAGS} -I${LOCALBASE}/include/libepoll-shim ${PINCLUDES}" \ extra_ldflags="${LDFLAGS}" \ ffmpeg_branding="${FFMPEG_BRAND}" \ override_electron_version="${ELECTRON_VER}" \ v8_builtins_profiling_log_file="" # TODO: investigate building with these options: # use_system_minigbm GN_BOOTSTRAP_FLAGS= --no-clean --no-rebuild --skip-generate-buildfiles PLIST_SUB= ELECTRON_VER=${ELECTRON_VER} \ ELECTRON_VER_MAJOR=${ELECTRON_VER_MAJOR} OPTIONS_DEFINE= CODECS CUPS DEBUG DIST DRIVER KERBEROS LTO PIPEWIRE OPTIONS_DEFAULT= CODECS CUPS DRIVER KERBEROS PIPEWIRE ALSA PULSEAUDIO SNDIO OPTIONS_EXCLUDE_aarch64=LTO OPTIONS_GROUP= AUDIO OPTIONS_GROUP_AUDIO= ALSA PULSEAUDIO SNDIO OPTIONS_RADIO= KERBEROS OPTIONS_RADIO_KERBEROS= HEIMDAL HEIMDAL_BASE MIT OPTIONS_SUB= yes CODECS_DESC= Compile and enable patented codecs like H.264 DIST_DESC= Build distribution zip files DRIVER_DESC= Install chromedriver HEIMDAL_BASE_DESC= Heimdal Kerberos (base) HEIMDAL_DESC= Heimdal Kerberos (security/heimdal) MIT_DESC= MIT Kerberos (security/krb5) PIPEWIRE_DESC= Screen capture via PipeWire ALSA_LIB_DEPENDS= libasound.so:audio/alsa-lib ALSA_RUN_DEPENDS= ${LOCALBASE}/lib/alsa-lib/libasound_module_pcm_oss.so:audio/alsa-plugins \ alsa-lib>=1.1.1_1:audio/alsa-lib ALSA_VARS= GN_ARGS+=use_alsa=true ALSA_VARS_OFF= GN_ARGS+=use_alsa=false CODECS_VARS= GN_ARGS+=proprietary_codecs=true \ FFMPEG_BRAND="Chrome" CODECS_VARS_OFF= GN_ARGS+=proprietary_codecs=false \ FFMPEG_BRAND="Chromium" CUPS_LIB_DEPENDS= libcups.so:print/cups CUPS_VARS= GN_ARGS+=use_cups=true CUPS_VARS_OFF= GN_ARGS+=use_cups=false DEBUG_MAKE_ENV= ELECTRON_OUT_DIR=Debug DEBUG_MAKE_ENV_OFF= ELECTRON_OUT_DIR=Release DEBUG_VARS= BUILDTYPE=Debug \ GN_FILE=testing.gn \ GN_ARGS+=is_debug=true \ GN_ARGS+=is_component_build=false \ GN_ARGS+=symbol_level=1 \ GN_BOOTSTRAP_FLAGS+=--debug \ WANTSPACE="21 GB" DEBUG_VARS_OFF= BUILDTYPE=Release \ GN_FILE=release.gn \ GN_ARGS+=blink_symbol_level=0 \ GN_ARGS+=is_debug=false \ GN_ARGS+=is_official_build=true \ GN_ARGS+=symbol_level=0 \ WANTSPACE="14 GB" DIST_IMPLIES= DRIVER DRIVER_MAKE_ARGS= chromedriver HEIMDAL_USES= gssapi:heimdal HEIMDAL_BASE_USES= gssapi:base KERBEROS_VARS= GN_ARGS+=use_kerberos=true KERBEROS_VARS_OFF= GN_ARGS+=use_kerberos=false LTO_VARS= GN_ARGS+=use_thin_lto=true \ GN_ARGS+=thin_lto_enable_optimizations=true \ WANTSPACE="14 GB" LTO_VARS_OFF= GN_ARGS+=use_thin_lto=false MIT_USES= gssapi:mit PIPEWIRE_LIB_DEPENDS= libpipewire-0.3.so:multimedia/pipewire PIPEWIRE_VARS= GN_ARGS+=rtc_use_pipewire=true \ GN_ARGS+=rtc_link_pipewire=true PIPEWIRE_VARS_OFF= GN_ARGS+=rtc_use_pipewire=false \ GN_ARGS+=rtc_link_pipewire=false PULSEAUDIO_VARS= GN_ARGS+=use_pulseaudio=true \ PINCLUDES="-I${WRKDIR}/pulseaudio-${PULSEV}/src -DPA_MAJOR=${PULSEMV}" PULSEAUDIO_VARS_OFF= GN_ARGS+=use_pulseaudio=false SNDIO_LIB_DEPENDS= libsndio.so:audio/sndio SNDIO_VARS= GN_ARGS+=use_sndio=true SNDIO_VARS_OFF= GN_ARGS+=use_sndio=false # See ${WRKSRC}/electron/DEPS for CHROMIUM_VER -CHROMIUM_VER= 150.0.7871.114 +CHROMIUM_VER= 150.0.7871.129 # See ${WRKSRC}/electron/DEPS for NODE_VER NODE_VER= 24.18.0 # See ${WRKSRC}/electron/DEPS for NAN_VER NAN_VER= 675cefebca42410733da8a454c8d9391fcebfbc2 # See ${WRKSRC}/electron/DEPS for SQUIRREL_MAC_VER SQUIRREL_MAC_VER= 0e5d146ba13101a1302d59ea6e6e0b3cace4ae38 # See ${WRKSRC}/electron/DEPS for REACTIVEOBJC_VER REACTIVEOBJC_VER= 74ab5baccc6f7202c8ac69a8d1e152c29dc1ea76 # See ${WRKSRC}/electron/DEPS for MANTLE_VER MANTLE_VER= 2a8e2123a3931038179ee06105c9e6ec336b12ea # See ${WRKSRC}/electron/DEPS for ENGFLOW_RECLIENT_CONFIGS_VER ENGFLOW_RECLIENT_CONFIGS_VER= 955335c30a752e9ef7bff375baab5e0819b6c00d # See ${WRKSRC}/third_party/devtools-frontend/src/node_modules/rollup/package.json ROLLUP_VER= 4.60.4 # Keep in sync with devel/esbuild ESBUILD_VER= 0.28.1 .include "Makefile.version" .include .if ${PORT_OPTIONS:MHEIMDAL_BASE} && !exists(/usr/lib/libkrb5.so) IGNORE= you have selected HEIMDAL_BASE but do not have Heimdal installed in base .endif LLVM_DEFAULT= 22 BUILD_DEPENDS+= clang${LLVM_DEFAULT}:devel/llvm${LLVM_DEFAULT} BINARY_ALIAS+= cpp=${LOCALBASE}/bin/clang-cpp${LLVM_DEFAULT} \ cc=${LOCALBASE}/bin/clang${LLVM_DEFAULT} \ c++=${LOCALBASE}/bin/clang++${LLVM_DEFAULT} \ ar=${LOCALBASE}/bin/llvm-ar${LLVM_DEFAULT} \ nm=${LOCALBASE}/bin/llvm-nm${LLVM_DEFAULT} \ ld=${LOCALBASE}/bin/ld.lld${LLVM_DEFAULT} CFLAGS+= -Wno-error=implicit-function-declaration .if ${ARCH} == "aarch64" PLIST_SUB+= AARCH64="" \ AMD64="@comment " \ I386="@comment " \ NOT_AARCH64="@comment " FFMPEG_TARGET= arm64 .elif ${ARCH} == "amd64" BUILD_DEPENDS+= nasm:devel/nasm PLIST_SUB+= AARCH64="@comment " \ AMD64="" \ I386="@comment " \ NOT_AARCH64="" FFMPEG_TARGET= x64 .elif ${ARCH} == "i386" BUILD_DEPENDS+= nasm:devel/nasm PLIST_SUB+= AARCH64="@comment " \ AMD64="@comment " \ I386="" \ NOT_AARCH64="" FFMPEG_TARGET= ia32 .endif FFMPEG_BDIR= ${WRKSRC}/third_party/ffmpeg/build.${FFMPEG_TARGET}.freebsd/${FFMPEG_BRAND} FFMPEG_CDIR= ${WRKSRC}/third_party/ffmpeg/chromium/config/${FFMPEG_BRAND}/freebsd/${FFMPEG_TARGET} # Allow relocations against read-only segments (override lld default) LDFLAGS_i386= -Wl,-znotext # TODO: -isystem, would be just as ugly as this approach, but more reliably # build would fail without C_INCLUDE_PATH/CPLUS_INCLUDE_PATH env var set. MAKE_ENV+= C_INCLUDE_PATH=${LOCALBASE}/include \ CPLUS_INCLUDE_PATH=${LOCALBASE}/include # rust MAKE_ENV+= RUSTC_BOOTSTRAP=1 GN_ARGS+= enable_rust=true \ rust_sysroot_absolute="${LOCALBASE}" TEST_ENV+= ${MAKE_ENV} \ ELECTRON_OUT_DIR=${BUILDTYPE} \ LOCAL_GIT_DIRECTORY=${LOCALBASE} \ DISABLE_CRASH_REPORTER_TESTS=1 \ SENTRYCLI_SKIP_DOWNLOAD=1 pre-everything:: @${ECHO_MSG} @${ECHO_MSG} "To build electron, you should have around 2GB of memory" @${ECHO_MSG} "and around ${WANTSPACE} of free disk space." @${ECHO_MSG} post-extract: # Move extracted sources to appropriate locations ${MV} ${WRKDIR}/chromium-${CHROMIUM_VER} \ ${WRKSRC} ${MV} ${WRKDIR}/${PORTNAME}-${ELECTRON_VER} \ ${WRKSRC}/electron ${MV} ${WRKDIR}/${GH_PROJECT_nan}-${NAN_VER} \ ${WRKSRC}/third_party/nan ${MV} ${WRKDIR}/${GH_PROJECT_node}-${NODE_VER} \ ${WRKSRC}/third_party/electron_node ${MV} ${WRKDIR}/${GH_PROJECT_squirrel_mac}-${SQUIRREL_MAC_VER} \ ${WRKSRC}/third_party/squirrel.mac @${MKDIR} ${WRKSRC}/third_party/squirrel.mac/vendor ${MV} ${WRKDIR}/${GH_PROJECT_reactiveobjc}-${REACTIVEOBJC_VER} \ ${WRKSRC}/third_party/squirrel.mac/vendor/ReactiveObjC ${MV} ${WRKDIR}/${GH_PROJECT_mantle}-${MANTLE_VER} \ ${WRKSRC}/third_party/squirrel.mac/vendor/Mantle ${MV} ${WRKDIR}/${GH_PROJECT_reclient_configs}-${ENGFLOW_RECLIENT_CONFIGS_VER} \ ${WRKSRC}/third_party/engflow-reclient-configs ${MV} ${WRKDIR}/${GH_PROJECT_rollup}-${ROLLUP_VER} \ ${WRKSRC}/rollup ${MV} ${WRKDIR}/${GH_PROJECT_esbuild}-${ESBUILD_VER} \ ${WRKSRC}/esbuild pre-patch: ${SH} ${FILESDIR}/apply-electron-patches.sh ${WRKSRC} # ${FIND} ${WRKSRC} -type f -name '*.orig' -print -delete # ${FIND} ${WRKSRC} -type f -name '*~' -print -delete pre-configure: # We used to remove bundled libraries to be sure that chromium uses # system libraries and not shipped ones. # cd ${WRKSRC} && ${PYTHON_CMD} \ #./build/linux/unbundle/remove_bundled_libraries.py [list of preserved] cd ${WRKSRC} && \ ${SETENV} ${CONFIGURE_ENV} ${PYTHON_CMD} \ ./build/linux/unbundle/replace_gn_files.py --system-libraries \ dav1d flac fontconfig harfbuzz libdrm libpng \ libusb libwebp libxml libxslt openh264 opus || ${FALSE} # Chromium uses an unreleased version of FFmpeg, so configure it cd ${WRKSRC}/media/ffmpeg && \ ${PYTHON_CMD} scripts/build_ffmpeg.py freebsd ${FFMPEG_TARGET} \ --config-only --branding=${FFMPEG_BRAND} cd ${FFMPEG_BDIR} && ${GMAKE} ffversion.h @${MKDIR} ${FFMPEG_CDIR} .for _e in config.h config.asm config_components.asm config_components.h libavcodec libavformat libavutil -${CP} -pR ${FFMPEG_BDIR}/${_e} ${FFMPEG_CDIR} .endfor touch ${WRKDIR}/pulseaudio-${PULSEV}/src/pulse/version.h @${REINPLACE_CMD} -e 's|$${LOCALBASE}|${LOCALBASE}|; s|$${MODCLANG_VERSION}|${LLVM_DEFAULT}|' \ ${WRKSRC}/build/config/rust.gni \ ${WRKSRC}/build/linux/strip_binary.gni \ ${WRKSRC}/build/rust/rust_bindgen.gni \ ${WRKSRC}/build/rust/rust_bindgen_generator.gni do-configure: cd ${WRKSRC}/esbuild && \ ${LOCALBASE}/bin/node scripts/esbuild.js \ ${LOCALBASE}/bin/esbuild --neutral && \ ${RM} -r ${WRKSRC}/third_party/devtools-frontend/src/node_modules/esbuild && \ ${LN} -sf ${WRKSRC}/esbuild/npm/esbuild \ ${WRKSRC}/third_party/devtools-frontend/src/node_modules/esbuild \ # GN generator bootstrapping and generating ninja files cd ${WRKSRC} && \ ${SETENV} ${CONFIGURE_ENV} CC=${CC} CXX=${CXX} LD=${CXX} \ READELF=${READELF} AR=${AR} NM=${NM} ${PYTHON_CMD} \ ./tools/gn/bootstrap/bootstrap.py ${GN_BOOTSTRAP_FLAGS} cd ${WRKSRC} && \ ${SETENV} ${CONFIGURE_ENV} ./out/${BUILDTYPE}/gn gen out/${BUILDTYPE} \ --args='import("//electron/build/args/${GN_FILE}") ${GN_ARGS}' # Make GN available to python scripts called during build ${LN} -sf ${WRKSRC}/out/${BUILDTYPE}/gn ${WRKDIR}/.bin # Setup nodejs dependency @${MKDIR} ${WRKSRC}/third_party/node/freebsd/node-freebsd/bin ${LN} -sf ${LOCALBASE}/bin/node \ ${WRKSRC}/third_party/node/freebsd/node-freebsd/bin/node # Setup rustc dependency @${MKDIR} ${WRKSRC}/third_party/rust-toolchain/bin ${LN} -sf ${LOCALBASE}/bin/rustc \ ${WRKSRC}/third_party/rust-toolchain/bin/rustc # Setup esbuild dependency ${LN} -sf ${LOCALBASE}/bin/esbuild \ ${WRKSRC}/third_party/devtools-frontend/src/third_party/esbuild/esbuild # Setup gperf dependency ${LN} -sf ${LOCALBASE}/bin/gperf \ ${WRKSRC}/third_party/gperf/cipd/bin/gperf # Setup buildtools/freebsd @${MKDIR} ${WRKSRC}/buildtools/freebsd ${LN} -sf ${WRKSRC}/buildtools/linux64/clang-format \ ${WRKSRC}/buildtools/freebsd ${LN} -sf ${WRKSRC}/out/${BUILDTYPE}/gn ${WRKSRC}/buildtools/freebsd ${LN} -sf /usr/bin/strip ${WRKSRC}/buildtools/freebsd/strip pre-build: @${CARGO_CARGO_RUN} build \ --manifest-path ${CARGO_CARGOTOML} \ --verbose \ --verbose \ ${CARGO_BUILD_ARGS} (cd ${WRKSRC}/third_party/devtools-frontend/src/node_modules/@rollup && \ ${MKDIR} rollup-freebsd && \ ${CP} ${CARGO_TARGET_DIR}/*/libbindings_napi.so \ rollup-freebsd/rollup.freebsd.node && \ ${ECHO_CMD} '{ "main": "./rollup.freebsd.node" }' \ > rollup-freebsd/package.json) post-build: cd ${WRKSRC} && \ ${SETENV} ${MAKE_ENV} ${MAKE_CMD} ${MAKE_ARGS} ${POST_BUILD_TARGETS} post-build-DIST-on: cd ${WRKSRC} && \ ${SETENV} ${MAKE_ENV} ${MAKE_CMD} ${MAKE_ARGS} ${POST_BUILD_DIST_TARGETS} cd ${WRKSRC}/out/${BUILDTYPE} && \ ${CP} chromedriver.zip chromedriver-v${ELECTRON_VER}-freebsd-${ARCH:S/amd64/x64/:S/i386/ia32/}.zip && \ ${CP} dist.zip electron-v${ELECTRON_VER}-freebsd-${ARCH:S/amd64/x64/:S/i386/ia32/}.zip && \ ${CP} mksnapshot.zip mksnapshot-v${ELECTRON_VER}-freebsd-${ARCH:S/amd64/x64/:S/i386/ia32/}.zip && \ ${SHA256} -r *-v${ELECTRON_VER}-freebsd-*.zip | ${SED} -e 's/ / */' > SHASUMS256.txt do-install: @${MKDIR} ${STAGEDIR}${DATADIR} .for f in electron mksnapshot v8_context_snapshot_generator ${INSTALL_PROGRAM} ${WRKSRC}/out/${BUILDTYPE}/${f} ${STAGEDIR}${DATADIR} .endfor .for f in libEGL.so libGLESv2.so libffmpeg.so libvk_swiftshader.so ${INSTALL_LIB} ${WRKSRC}/out/${BUILDTYPE}/${f} ${STAGEDIR}${DATADIR} .endfor ${INSTALL_LIB} ${WRKSRC}/out/${BUILDTYPE}/libvulkan.so.1 \ ${STAGEDIR}${DATADIR}/libvulkan.so .for f in LICENSE LICENSES.chromium.html snapshot_blob.bin v8_context_snapshot.bin version vk_swiftshader_icd.json ${INSTALL_DATA} ${WRKSRC}/out/${BUILDTYPE}/${f} ${STAGEDIR}${DATADIR} .endfor .for f in chrome_100_percent.pak chrome_200_percent.pak resources.pak ${INSTALL_DATA} ${WRKSRC}/out/${BUILDTYPE}/${f} ${STAGEDIR}${DATADIR} .endfor @${MKDIR} ${STAGEDIR}${DATADIR}/locales ${INSTALL_DATA} ${WRKSRC}/out/${BUILDTYPE}/locales/*.pak \ ${STAGEDIR}${DATADIR}/locales @${MKDIR} ${STAGEDIR}${DATADIR}/resources .for f in default_app.asar ${INSTALL_DATA} ${WRKSRC}/out/${BUILDTYPE}/resources/${f} \ ${STAGEDIR}${DATADIR}/resources .endfor cd ${WRKSRC}/out/${BUILDTYPE}/gen && \ ${COPYTREE_SHARE} node_headers ${STAGEDIR}${DATADIR} cd ${WRKSRC}/out/${BUILDTYPE} && \ ${COPYTREE_SHARE} gen/electron/buildflags ${STAGEDIR}${DATADIR} cd ${WRKSRC}/out/${BUILDTYPE} && \ ${COPYTREE_SHARE} gen/v8/embedded.S ${STAGEDIR}${DATADIR} ${RLN} ${STAGEDIR}${DATADIR}/electron \ ${STAGEDIR}${PREFIX}/bin/electron${PKGNAMESUFFIX} # clean up garbages installed into STAGEDIR during build phase @${RM} -r ${STAGEDIR}${WRKDIR} @${FIND} ${STAGEDIR} -type d -empty -delete post-install-DIST-on: @${MKDIR} ${STAGEDIR}${DATADIR}/releases ${INSTALL_DATA} ${WRKSRC}/out/${BUILDTYPE}/SHASUMS256.txt \ ${STAGEDIR}${DATADIR}/releases ${INSTALL_DATA} ${WRKSRC}/out/${BUILDTYPE}/*-v${ELECTRON_VER}-freebsd-*.zip \ ${STAGEDIR}${DATADIR}/releases post-install-DRIVER-on: ${INSTALL_PROGRAM} ${WRKSRC}/out/${BUILDTYPE}/chromedriver.unstripped \ ${STAGEDIR}${DATADIR}/chromedriver pre-test: ${CP} ${LOCALBASE}/bin/sentry-cli \ ${WRKSRC}/electron/node_modules/@sentry/cli do-test: cd ${WRKSRC}/electron && \ ${SETENV} ${TEST_ENV} yarn run test -- --ci .include diff --git a/devel/electron43/Makefile.version b/devel/electron43/Makefile.version index c5b021e0a303..98d69f36ed2b 100644 --- a/devel/electron43/Makefile.version +++ b/devel/electron43/Makefile.version @@ -1,2 +1,2 @@ -ELECTRON_VER= 43.1.1 +ELECTRON_VER= 43.2.0 ELECTRON_VER_MAJOR= ${ELECTRON_VER:C/\..*//} diff --git a/devel/electron43/distinfo b/devel/electron43/distinfo index 20893e788f6f..da8fe800fd86 100644 --- a/devel/electron43/distinfo +++ b/devel/electron43/distinfo @@ -1,435 +1,435 @@ -TIMESTAMP = 1784191017 -SHA256 (electron/chromium-150.0.7871.114-lite.tar.xz) = 2f1ef6e396ee3c5f7b3876f902541e3344760a17f820691867f4bc3025dea17b -SIZE (electron/chromium-150.0.7871.114-lite.tar.xz) = 1670314688 +TIMESTAMP = 1784805086 +SHA256 (electron/chromium-150.0.7871.129-lite.tar.xz) = 851ced572bf2dc41c1afaad4a64975f6b6aa2d9d6a7fafc4cb2484ca09067aaa +SIZE (electron/chromium-150.0.7871.129-lite.tar.xz) = 1670301388 SHA256 (electron/pulseaudio-16.1.tar.gz) = 027266c62f2a84422ac45fa721a649508f0f1628fb1fd9242315ac54ce2d7c92 SIZE (electron/pulseaudio-16.1.tar.gz) = 2763111 SHA256 (electron/rust/crates/ahash-0.8.12.crate) = 5a15f179cd60c4584b8a8c596927aadc462e27f2ca70c04e0071964a73ba7a75 SIZE (electron/rust/crates/ahash-0.8.12.crate) = 43413 SHA256 (electron/rust/crates/aho-corasick-1.1.4.crate) = ddd31a130427c27518df266943a5308ed92d4b226cc639f5a8f1002816174301 SIZE (electron/rust/crates/aho-corasick-1.1.4.crate) = 184015 SHA256 (electron/rust/crates/allocator-api2-0.2.21.crate) = 683d7910e743518b0e34f1186f92494becacb047c7b6bf616c96772180fef923 SIZE (electron/rust/crates/allocator-api2-0.2.21.crate) = 63622 SHA256 (electron/rust/crates/anyhow-1.0.102.crate) = 7f202df86484c868dbad7eaa557ef785d5c66295e41b460ef922eca0723b842c SIZE (electron/rust/crates/anyhow-1.0.102.crate) = 48658 SHA256 (electron/rust/crates/ar_archive_writer-0.5.1.crate) = 7eb93bbb63b9c227414f6eb3a0adfddca591a8ce1e9b60661bb08969b87e340b SIZE (electron/rust/crates/ar_archive_writer-0.5.1.crate) = 85345 SHA256 (electron/rust/crates/arrayvec-0.7.6.crate) = 7c02d123df017efcdfbd739ef81735b36c5ba83ec3c59c80a9d7ecc718f92e50 SIZE (electron/rust/crates/arrayvec-0.7.6.crate) = 31237 SHA256 (electron/rust/crates/ascii-1.1.0.crate) = d92bec98840b8f03a5ff5413de5293bfcd8bf96467cf5452609f939ec6f5de16 SIZE (electron/rust/crates/ascii-1.1.0.crate) = 36075 SHA256 (electron/rust/crates/ast_node-5.0.0.crate) = 2eb025ef00a6da925cf40870b9c8d008526b6004ece399cb0974209720f0b194 SIZE (electron/rust/crates/ast_node-5.0.0.crate) = 12169 SHA256 (electron/rust/crates/autocfg-1.5.0.crate) = c08606f8c3cbf4ce6ec8e28fb0014a2c086708fe954eaa885384a6165172e7e8 SIZE (electron/rust/crates/autocfg-1.5.0.crate) = 18729 SHA256 (electron/rust/crates/base-encode-0.3.1.crate) = a17bd29f7c70f32e9387f4d4acfa5ea7b7749ef784fb78cf382df97069337b8c SIZE (electron/rust/crates/base-encode-0.3.1.crate) = 3630 SHA256 (electron/rust/crates/base64-0.22.1.crate) = 72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6 SIZE (electron/rust/crates/base64-0.22.1.crate) = 81597 SHA256 (electron/rust/crates/base64-simd-0.8.0.crate) = 339abbe78e73178762e23bea9dfd08e697eb3f3301cd4be981c0f78ba5859195 SIZE (electron/rust/crates/base64-simd-0.8.0.crate) = 12531 SHA256 (electron/rust/crates/better_scoped_tls-1.0.1.crate) = 7cd228125315b132eed175bf47619ac79b945b26e56b848ba203ae4ea8603609 SIZE (electron/rust/crates/better_scoped_tls-1.0.1.crate) = 2140 SHA256 (electron/rust/crates/bitflags-2.11.1.crate) = c4512299f36f043ab09a583e57bceb5a5aab7a73db1805848e8fef3c9e8c78b3 SIZE (electron/rust/crates/bitflags-2.11.1.crate) = 49082 SHA256 (electron/rust/crates/bitvec-1.0.1.crate) = 1bc2832c24239b0141d5674bb9174f9d68a8b5b3f2753311927c172ca46f7e9c SIZE (electron/rust/crates/bitvec-1.0.1.crate) = 224375 SHA256 (electron/rust/crates/bstr-1.12.1.crate) = 63044e1ae8e69f3b5a92c736ca6269b8d12fa7efe39bf34ddb06d102cf0e2cab SIZE (electron/rust/crates/bstr-1.12.1.crate) = 354916 SHA256 (electron/rust/crates/bumpalo-3.20.2.crate) = 5d20789868f4b01b2f2caec9f5c4e0213b41e3e5702a50157d699ae31ced2fcb SIZE (electron/rust/crates/bumpalo-3.20.2.crate) = 97696 SHA256 (electron/rust/crates/bytes-1.11.1.crate) = 1e748733b7cbc798e1434b6ac524f0c1ff2ab456fe201501e6497c8417a4fc33 SIZE (electron/rust/crates/bytes-1.11.1.crate) = 78584 SHA256 (electron/rust/crates/bytes-str-0.2.7.crate) = 7c60b5ce37e0b883c37eb89f79a1e26fbe9c1081945d024eee93e8d91a7e18b3 SIZE (electron/rust/crates/bytes-str-0.2.7.crate) = 10230 SHA256 (electron/rust/crates/castaway-0.2.4.crate) = dec551ab6e7578819132c713a93c022a05d60159dc86e7a7050223577484c55a SIZE (electron/rust/crates/castaway-0.2.4.crate) = 12546 SHA256 (electron/rust/crates/cc-1.2.61.crate) = d16d90359e986641506914ba71350897565610e87ce0ad9e6f28569db3dd5c6d SIZE (electron/rust/crates/cc-1.2.61.crate) = 97163 SHA256 (electron/rust/crates/cfg-if-1.0.4.crate) = 9330f8b2ff13f34540b44e946ef35111825727b38d33286ef986142615121801 SIZE (electron/rust/crates/cfg-if-1.0.4.crate) = 9360 SHA256 (electron/rust/crates/cmake-0.1.58.crate) = c0f78a02292a74a88ac736019ab962ece0bc380e3f977bf72e376c5d78ff0678 SIZE (electron/rust/crates/cmake-0.1.58.crate) = 20474 SHA256 (electron/rust/crates/compact_str-0.7.1.crate) = f86b9c4c00838774a6d902ef931eff7470720c51d90c2e32cfe15dc304737b3f SIZE (electron/rust/crates/compact_str-0.7.1.crate) = 57246 SHA256 (electron/rust/crates/console_error_panic_hook-0.1.7.crate) = a06aeb73f470f66dcdbf7223caeebb85984942f22f1adb2a088cf9668146bbbc SIZE (electron/rust/crates/console_error_panic_hook-0.1.7.crate) = 507196 SHA256 (electron/rust/crates/convert_case-0.11.0.crate) = affbf0190ed2caf063e3def54ff444b449371d55c58e513a95ab98eca50adb49 SIZE (electron/rust/crates/convert_case-0.11.0.crate) = 31545 SHA256 (electron/rust/crates/ctor-0.11.1.crate) = 400a21f1014a968ec518c7ccdf9b4a4ed0cac8c56ccb6d604f8b91f00110501e SIZE (electron/rust/crates/ctor-0.11.1.crate) = 32910 SHA256 (electron/rust/crates/dashmap-5.5.3.crate) = 978747c1d849a7d2ee5e8adc0159961c48fb7e5db2f06af6723b80123bb53856 SIZE (electron/rust/crates/dashmap-5.5.3.crate) = 24061 SHA256 (electron/rust/crates/data-encoding-2.11.0.crate) = a4ae5f15dda3c708c0ade84bfee31ccab44a3da4f88015ed22f63732abe300c8 SIZE (electron/rust/crates/data-encoding-2.11.0.crate) = 22677 SHA256 (electron/rust/crates/debugid-0.8.0.crate) = bef552e6f588e446098f6ba40d89ac146c8c7b64aade83c051ee00bb5d2bc18d SIZE (electron/rust/crates/debugid-0.8.0.crate) = 12757 SHA256 (electron/rust/crates/displaydoc-0.2.5.crate) = 97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0 SIZE (electron/rust/crates/displaydoc-0.2.5.crate) = 24219 SHA256 (electron/rust/crates/dragonbox_ecma-0.1.12.crate) = fd8e701084c37e7ef62d3f9e453b618130cbc0ef3573847785952a3ac3f746bf SIZE (electron/rust/crates/dragonbox_ecma-0.1.12.crate) = 46796 SHA256 (electron/rust/crates/either-1.15.0.crate) = 48c757948c5ede0e46177b7add2e67155f70e33c07fea8284df6576da70b3719 SIZE (electron/rust/crates/either-1.15.0.crate) = 20114 SHA256 (electron/rust/crates/equivalent-1.0.2.crate) = 877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f SIZE (electron/rust/crates/equivalent-1.0.2.crate) = 7419 SHA256 (electron/rust/crates/find-msvc-tools-0.1.9.crate) = 5baebc0774151f905a1a2cc41989300b1e6fbb29aff0ceffa1064fdd3088d582 SIZE (electron/rust/crates/find-msvc-tools-0.1.9.crate) = 31493 SHA256 (electron/rust/crates/fixedbitset-0.5.7.crate) = 1d674e81391d1e1ab681a28d99df07927c6d4aa5b027d7da16ba32d1d21ecd99 SIZE (electron/rust/crates/fixedbitset-0.5.7.crate) = 26537 SHA256 (electron/rust/crates/foldhash-0.2.0.crate) = 77ce24cb58228fbb8aa041425bb1050850ac19177686ea6e0f41a70416f56fdb SIZE (electron/rust/crates/foldhash-0.2.0.crate) = 23329 SHA256 (electron/rust/crates/form_urlencoded-1.2.2.crate) = cb4cb245038516f5f85277875cdaa4f7d2c9a0fa0468de06ed190163b1581fcf SIZE (electron/rust/crates/form_urlencoded-1.2.2.crate) = 9347 SHA256 (electron/rust/crates/from_variant-3.0.0.crate) = e5ff35a391aef949120a0340d690269b3d9f63460a6106e99bd07b961f345ea9 SIZE (electron/rust/crates/from_variant-3.0.0.crate) = 2391 SHA256 (electron/rust/crates/funty-2.0.0.crate) = e6d5a32815ae3f33302d95fdcb2ce17862f8c65363dcfd29360480ba1001fc9c SIZE (electron/rust/crates/funty-2.0.0.crate) = 13160 SHA256 (electron/rust/crates/futures-0.3.32.crate) = 8b147ee9d1f6d097cef9ce628cd2ee62288d963e16fb287bd9286455b241382d SIZE (electron/rust/crates/futures-0.3.32.crate) = 61234 SHA256 (electron/rust/crates/futures-channel-0.3.32.crate) = 07bbe89c50d7a535e539b8c17bc0b49bdb77747034daa8087407d655f3f7cc1d SIZE (electron/rust/crates/futures-channel-0.3.32.crate) = 33213 SHA256 (electron/rust/crates/futures-core-0.3.32.crate) = 7e3450815272ef58cec6d564423f6e755e25379b217b0bc688e295ba24df6b1d SIZE (electron/rust/crates/futures-core-0.3.32.crate) = 14684 SHA256 (electron/rust/crates/futures-executor-0.3.32.crate) = baf29c38818342a3b26b5b923639e7b1f4a61fc5e76102d4b1981c6dc7a7579d SIZE (electron/rust/crates/futures-executor-0.3.32.crate) = 18581 SHA256 (electron/rust/crates/futures-io-0.3.32.crate) = cecba35d7ad927e23624b22ad55235f2239cfa44fd10428eecbeba6d6a717718 SIZE (electron/rust/crates/futures-io-0.3.32.crate) = 9191 SHA256 (electron/rust/crates/futures-macro-0.3.32.crate) = e835b70203e41293343137df5c0664546da5745f82ec9b84d40be8336958447b SIZE (electron/rust/crates/futures-macro-0.3.32.crate) = 11929 SHA256 (electron/rust/crates/futures-sink-0.3.32.crate) = c39754e157331b013978ec91992bde1ac089843443c49cbc7f46150b0fad0893 SIZE (electron/rust/crates/futures-sink-0.3.32.crate) = 8106 SHA256 (electron/rust/crates/futures-task-0.3.32.crate) = 037711b3d59c33004d3856fbdc83b99d4ff37a24768fa1be9ce3538a1cde4393 SIZE (electron/rust/crates/futures-task-0.3.32.crate) = 11377 SHA256 (electron/rust/crates/futures-util-0.3.32.crate) = 389ca41296e6190b48053de0321d02a77f32f8a5d2461dd38762c0593805c6d6 SIZE (electron/rust/crates/futures-util-0.3.32.crate) = 168797 SHA256 (electron/rust/crates/globset-0.4.18.crate) = 52dfc19153a48bde0cbd630453615c8151bce3a5adfac7a0aebfbf0a1e1f57e3 SIZE (electron/rust/crates/globset-0.4.18.crate) = 28970 SHA256 (electron/rust/crates/hashbrown-0.14.5.crate) = e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1 SIZE (electron/rust/crates/hashbrown-0.14.5.crate) = 141498 SHA256 (electron/rust/crates/hashbrown-0.16.1.crate) = 841d1cc9bed7f9236f321df977030373f4a4163ae1a7dbfe1a51a2c1a51d9100 SIZE (electron/rust/crates/hashbrown-0.16.1.crate) = 147785 SHA256 (electron/rust/crates/hashbrown-0.17.0.crate) = 4f467dd6dccf739c208452f8014c75c18bb8301b050ad1cfb27153803edb0f51 SIZE (electron/rust/crates/hashbrown-0.17.0.crate) = 154597 SHA256 (electron/rust/crates/heck-0.5.0.crate) = 2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea SIZE (electron/rust/crates/heck-0.5.0.crate) = 11517 SHA256 (electron/rust/crates/hermit-abi-0.5.2.crate) = fc0fef456e4baa96da950455cd02c081ca953b141298e41db3fc7e36b1da849c SIZE (electron/rust/crates/hermit-abi-0.5.2.crate) = 17435 SHA256 (electron/rust/crates/hstr-3.0.4.crate) = faa57007c3c9dab34df2fa4c1fb52fe9c34ec5a27ed9d8edea53254b50cd7887 SIZE (electron/rust/crates/hstr-3.0.4.crate) = 41168 SHA256 (electron/rust/crates/icu_collections-2.2.0.crate) = 2984d1cd16c883d7935b9e07e44071dca8d917fd52ecc02c04d5fa0b5a3f191c SIZE (electron/rust/crates/icu_collections-2.2.0.crate) = 88011 SHA256 (electron/rust/crates/icu_locale_core-2.2.0.crate) = 92219b62b3e2b4d88ac5119f8904c10f8f61bf7e95b640d25ba3075e6cac2c29 SIZE (electron/rust/crates/icu_locale_core-2.2.0.crate) = 78639 SHA256 (electron/rust/crates/icu_normalizer-2.2.0.crate) = c56e5ee99d6e3d33bd91c5d85458b6005a22140021cc324cea84dd0e72cff3b4 SIZE (electron/rust/crates/icu_normalizer-2.2.0.crate) = 78154 SHA256 (electron/rust/crates/icu_normalizer_data-2.2.0.crate) = da3be0ae77ea334f4da67c12f149704f19f81d1adf7c51cf482943e84a2bad38 SIZE (electron/rust/crates/icu_normalizer_data-2.2.0.crate) = 67134 SHA256 (electron/rust/crates/icu_properties-2.2.0.crate) = bee3b67d0ea5c2cca5003417989af8996f8604e34fb9ddf96208a033901e70de SIZE (electron/rust/crates/icu_properties-2.2.0.crate) = 63950 SHA256 (electron/rust/crates/icu_properties_data-2.2.0.crate) = 8e2bbb201e0c04f7b4b3e14382af113e17ba4f63e2c9d2ee626b720cbce54a14 SIZE (electron/rust/crates/icu_properties_data-2.2.0.crate) = 168901 SHA256 (electron/rust/crates/icu_provider-2.2.0.crate) = 139c4cf31c8b5f33d7e199446eff9c1e02decfc2f0eec2c8d71f65befa45b421 SIZE (electron/rust/crates/icu_provider-2.2.0.crate) = 51620 SHA256 (electron/rust/crates/idna-1.1.0.crate) = 3b0875f23caa03898994f6ddc501886a45c7d3d62d04d2d90788d47be1b1e4de SIZE (electron/rust/crates/idna-1.1.0.crate) = 148747 SHA256 (electron/rust/crates/idna_adapter-1.2.2.crate) = cb68373c0d6620ef8105e855e7745e18b0d00d3bdb07fb532e434244cdb9a714 SIZE (electron/rust/crates/idna_adapter-1.2.2.crate) = 10444 SHA256 (electron/rust/crates/if_chain-1.0.3.crate) = cd62e6b5e86ea8eeeb8db1de02880a6abc01a397b2ebb64b5d74ac255318f5cb SIZE (electron/rust/crates/if_chain-1.0.3.crate) = 8384 SHA256 (electron/rust/crates/indexmap-2.14.0.crate) = d466e9454f08e4a911e14806c24e16fba1b4c121d1ea474396f396069cf949d9 SIZE (electron/rust/crates/indexmap-2.14.0.crate) = 104085 SHA256 (electron/rust/crates/is-macro-0.3.7.crate) = 1d57a3e447e24c22647738e4607f1df1e0ec6f72e16182c4cd199f647cdfb0e4 SIZE (electron/rust/crates/is-macro-0.3.7.crate) = 9060 SHA256 (electron/rust/crates/itoa-1.0.18.crate) = 8f42a60cbdf9a97f5d2305f08a87dc4e09308d1276d28c869c684d7777685682 SIZE (electron/rust/crates/itoa-1.0.18.crate) = 15935 SHA256 (electron/rust/crates/js-sys-0.3.98.crate) = 67df7112613f8bfd9150013a0314e196f4800d3201ae742489d999db2f979f08 SIZE (electron/rust/crates/js-sys-0.3.98.crate) = 108519 SHA256 (electron/rust/crates/libc-0.2.186.crate) = 68ab91017fe16c622486840e4c83c9a37afeff978bd239b5293d61ece587de66 SIZE (electron/rust/crates/libc-0.2.186.crate) = 821883 SHA256 (electron/rust/crates/libloading-0.9.0.crate) = 754ca22de805bb5744484a5b151a9e1a8e837d5dc232c2d7d8c2e3492edc8b60 SIZE (electron/rust/crates/libloading-0.9.0.crate) = 33816 SHA256 (electron/rust/crates/libmimalloc-sys2-0.1.54.crate) = e8cac9b2d60928163027249a1ebd0ec8e6c58b66dca93cccf58ee618e66fc062 SIZE (electron/rust/crates/libmimalloc-sys2-0.1.54.crate) = 1642853 SHA256 (electron/rust/crates/litemap-0.8.2.crate) = 92daf443525c4cce67b150400bc2316076100ce0b3686209eb8cf3c31612e6f0 SIZE (electron/rust/crates/litemap-0.8.2.crate) = 34572 SHA256 (electron/rust/crates/lock_api-0.4.14.crate) = 224399e74b87b5f3557511d98dff8b14089b3dadafcab6bb93eab67d3aace965 SIZE (electron/rust/crates/lock_api-0.4.14.crate) = 29249 SHA256 (electron/rust/crates/memchr-2.8.0.crate) = f8ca58f447f06ed17d5fc4043ce1b10dd205e060fb3ce5b979b8ed8e59ff3f79 SIZE (electron/rust/crates/memchr-2.8.0.crate) = 97780 SHA256 (electron/rust/crates/mimalloc-safe-0.1.58.crate) = a8bf95a709c09e85ae74e77b2413cbb11a1b8f2f3d11e23b3751382467c9c15c SIZE (electron/rust/crates/mimalloc-safe-0.1.58.crate) = 7282 SHA256 (electron/rust/crates/napi-3.8.6.crate) = 8e55037284865448ecf329baa86a4d05401f647ebde99f5747b640d32c2c5226 SIZE (electron/rust/crates/napi-3.8.6.crate) = 129092 SHA256 (electron/rust/crates/napi-build-2.3.1.crate) = d376940fd5b723c6893cd1ee3f33abbfd86acb1cd1ec079f3ab04a2a3bc4d3b1 SIZE (electron/rust/crates/napi-build-2.3.1.crate) = 3233 SHA256 (electron/rust/crates/napi-derive-3.5.5.crate) = a4ba740fe4c9524d86fd90798fd8ccdb23402b3eef7e7c30897a8a369b529fcf SIZE (electron/rust/crates/napi-derive-3.5.5.crate) = 22629 SHA256 (electron/rust/crates/napi-derive-backend-5.0.4.crate) = 0d5af30503edf933ce7377cf6d4c877a62b0f1107ea05585f1b5e430e88d5baf SIZE (electron/rust/crates/napi-derive-backend-5.0.4.crate) = 35478 SHA256 (electron/rust/crates/napi-sys-3.2.1.crate) = 8eb602b84d7c1edae45e50bbf1374696548f36ae179dfa667f577e384bb90c2b SIZE (electron/rust/crates/napi-sys-3.2.1.crate) = 7465 SHA256 (electron/rust/crates/new_debug_unreachable-1.0.6.crate) = 650eef8c711430f1a879fdd01d4745a7deea475becfb90269c06775983bbf086 SIZE (electron/rust/crates/new_debug_unreachable-1.0.6.crate) = 2582 SHA256 (electron/rust/crates/nohash-hasher-0.2.0.crate) = 2bf50223579dc7cdcfb3bfcacf7069ff68243f8c363f62ffa99cf000a6b9c451 SIZE (electron/rust/crates/nohash-hasher-0.2.0.crate) = 8051 SHA256 (electron/rust/crates/num-bigint-0.4.6.crate) = a5e44f723f1133c9deac646763579fdb3ac745e418f2a7af9cd0c431da1f20b9 SIZE (electron/rust/crates/num-bigint-0.4.6.crate) = 102801 SHA256 (electron/rust/crates/num-integer-0.1.46.crate) = 7969661fd2958a5cb096e56c8e1ad0444ac2bbcd0061bd28660485a44879858f SIZE (electron/rust/crates/num-integer-0.1.46.crate) = 22331 SHA256 (electron/rust/crates/num-traits-0.2.19.crate) = 071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841 SIZE (electron/rust/crates/num-traits-0.2.19.crate) = 51631 SHA256 (electron/rust/crates/num_cpus-1.17.0.crate) = 91df4bbde75afed763b708b7eee1e8e7651e02d97f6d5dd763e89367e957b23b SIZE (electron/rust/crates/num_cpus-1.17.0.crate) = 15874 SHA256 (electron/rust/crates/object-0.37.3.crate) = ff76201f031d8863c38aa7f905eca4f53abbfa15f609db4277d44cd8938f33fe SIZE (electron/rust/crates/object-0.37.3.crate) = 344032 SHA256 (electron/rust/crates/once_cell-1.21.4.crate) = 9f7c3e4beb33f85d45ae3e3a1792185706c8e16d043238c593331cc7cd313b50 SIZE (electron/rust/crates/once_cell-1.21.4.crate) = 35010 SHA256 (electron/rust/crates/outref-0.5.2.crate) = 1a80800c0488c3a21695ea981a54918fbb37abf04f4d0720c453632255e2ff0e SIZE (electron/rust/crates/outref-0.5.2.crate) = 5621 SHA256 (electron/rust/crates/par-core-2.0.0.crate) = e96cbd21255b7fb29a5d51ef38a779b517a91abd59e2756c039583f43ef4c90f SIZE (electron/rust/crates/par-core-2.0.0.crate) = 2443 SHA256 (electron/rust/crates/par-iter-2.0.0.crate) = 3eae0176a010bb94b9a67f0eb9da0fd31410817d58850649c54f485124c9a71a SIZE (electron/rust/crates/par-iter-2.0.0.crate) = 152109 SHA256 (electron/rust/crates/parking_lot-0.12.5.crate) = 93857453250e3077bd71ff98b6a65ea6621a19bb0f559a85248955ac12c45a1a SIZE (electron/rust/crates/parking_lot-0.12.5.crate) = 46735 SHA256 (electron/rust/crates/parking_lot_core-0.9.12.crate) = 2621685985a2ebf1c516881c026032ac7deafcda1a2c9b7850dc81e3dfcb64c1 SIZE (electron/rust/crates/parking_lot_core-0.9.12.crate) = 34110 SHA256 (electron/rust/crates/pathdiff-0.2.3.crate) = df94ce210e5bc13cb6651479fa48d14f601d9858cfe0467f43ae157023b938d3 SIZE (electron/rust/crates/pathdiff-0.2.3.crate) = 7495 SHA256 (electron/rust/crates/percent-encoding-2.3.2.crate) = 9b4f627cb1b25917193a259e49bdad08f671f8d9708acfd5fe0a8c1455d87220 SIZE (electron/rust/crates/percent-encoding-2.3.2.crate) = 11583 SHA256 (electron/rust/crates/petgraph-0.7.1.crate) = 3672b37090dbd86368a4145bc067582552b29c27377cad4e0a306c97f9bd7772 SIZE (electron/rust/crates/petgraph-0.7.1.crate) = 736025 SHA256 (electron/rust/crates/phf-0.11.3.crate) = 1fd6780a80ae0c52cc120a26a1a42c1ae51b247a253e4e06113d23d2c2edd078 SIZE (electron/rust/crates/phf-0.11.3.crate) = 23231 SHA256 (electron/rust/crates/phf_generator-0.11.3.crate) = 3c80231409c20246a13fddb31776fb942c38553c51e871f8cbd687a4cfb5843d SIZE (electron/rust/crates/phf_generator-0.11.3.crate) = 15431 SHA256 (electron/rust/crates/phf_macros-0.11.3.crate) = f84ac04429c13a7ff43785d75ad27569f2951ce0ffd30a3321230db2fc727216 SIZE (electron/rust/crates/phf_macros-0.11.3.crate) = 18436 SHA256 (electron/rust/crates/phf_shared-0.11.3.crate) = 67eabc2ef2a60eb7faa00097bd1ffdb5bd28e62bf39990626a582201b7a754e5 SIZE (electron/rust/crates/phf_shared-0.11.3.crate) = 15199 SHA256 (electron/rust/crates/pin-project-lite-0.2.17.crate) = a89322df9ebe1c1578d689c92318e070967d1042b512afbe49518723f4e6d5cd SIZE (electron/rust/crates/pin-project-lite-0.2.17.crate) = 31034 SHA256 (electron/rust/crates/potential_utf-0.1.5.crate) = 0103b1cef7ec0cf76490e969665504990193874ea05c85ff9bab8b911d0a0564 SIZE (electron/rust/crates/potential_utf-0.1.5.crate) = 10189 SHA256 (electron/rust/crates/proc-macro2-1.0.106.crate) = 8fd00f0bb2e90d81d1044c2b32617f68fcb9fa3bb7640c23e9c748e53fb30934 SIZE (electron/rust/crates/proc-macro2-1.0.106.crate) = 59765 SHA256 (electron/rust/crates/psm-0.1.31.crate) = 645dbe486e346d9b5de3ef16ede18c26e6c70ad97418f4874b8b1889d6e761ea SIZE (electron/rust/crates/psm-0.1.31.crate) = 25059 SHA256 (electron/rust/crates/quote-1.0.45.crate) = 41f2619966050689382d2b44f664f4bc593e129785a36d6ee376ddf37259b924 SIZE (electron/rust/crates/quote-1.0.45.crate) = 31564 SHA256 (electron/rust/crates/radium-0.7.0.crate) = dc33ff2d4973d518d823d61aa239014831e521c75da58e3df4840d3f47749d09 SIZE (electron/rust/crates/radium-0.7.0.crate) = 10906 SHA256 (electron/rust/crates/radix_fmt-1.0.0.crate) = ce082a9940a7ace2ad4a8b7d0b1eac6aa378895f18be598230c5f2284ac05426 SIZE (electron/rust/crates/radix_fmt-1.0.0.crate) = 8743 SHA256 (electron/rust/crates/rand-0.8.6.crate) = 5ca0ecfa931c29007047d1bc58e623ab12e5590e8c7cc53200d5202b69266d8a SIZE (electron/rust/crates/rand-0.8.6.crate) = 83339 SHA256 (electron/rust/crates/rand_core-0.6.4.crate) = ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c SIZE (electron/rust/crates/rand_core-0.6.4.crate) = 22666 SHA256 (electron/rust/crates/redox_syscall-0.5.18.crate) = ed2bf2547551a7053d6fdfafda3f938979645c44812fbfcda098faae3f1a362d SIZE (electron/rust/crates/redox_syscall-0.5.18.crate) = 30747 SHA256 (electron/rust/crates/regex-1.12.3.crate) = e10754a14b9137dd7b1e3e5b0493cc9171fdd105e0ab477f51b72e7f3ac0e276 SIZE (electron/rust/crates/regex-1.12.3.crate) = 153392 SHA256 (electron/rust/crates/regex-automata-0.4.14.crate) = 6e1dd4122fc1595e8162618945476892eefca7b88c52820e74af6262213cae8f SIZE (electron/rust/crates/regex-automata-0.4.14.crate) = 618012 SHA256 (electron/rust/crates/regex-syntax-0.8.10.crate) = dc897dd8d9e8bd1ed8cdad82b5966c3e0ecae09fb1907d58efaa013543185d0a SIZE (electron/rust/crates/regex-syntax-0.8.10.crate) = 358781 SHA256 (electron/rust/crates/regress-0.10.5.crate) = 2057b2325e68a893284d1538021ab90279adac1139957ca2a74426c6f118fb48 SIZE (electron/rust/crates/regress-0.10.5.crate) = 346868 SHA256 (electron/rust/crates/rustc-hash-2.1.2.crate) = 94300abf3f1ae2e2b8ffb7b58043de3d399c73fa6f4b73826402a5c457614dbe SIZE (electron/rust/crates/rustc-hash-2.1.2.crate) = 14754 SHA256 (electron/rust/crates/rustversion-1.0.22.crate) = b39cdef0fa800fc44525c84ccb54a029961a8215f9619753635a9c0d2538d46d SIZE (electron/rust/crates/rustversion-1.0.22.crate) = 21096 SHA256 (electron/rust/crates/ryu-1.0.23.crate) = 9774ba4a74de5f7b1c1451ed6cd5285a32eddb5cccb8cc655a4e50009e06477f SIZE (electron/rust/crates/ryu-1.0.23.crate) = 52823 SHA256 (electron/rust/crates/ryu-js-1.0.2.crate) = dd29631678d6fb0903b69223673e122c32e9ae559d0960a38d574695ebc0ea15 SIZE (electron/rust/crates/ryu-js-1.0.2.crate) = 75035 SHA256 (electron/rust/crates/scoped-tls-1.0.1.crate) = e1cf6437eb19a8f4a6cc0f7dca544973b0b78843adbfeb3683d1a94a0024a294 SIZE (electron/rust/crates/scoped-tls-1.0.1.crate) = 8202 SHA256 (electron/rust/crates/scopeguard-1.2.0.crate) = 94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49 SIZE (electron/rust/crates/scopeguard-1.2.0.crate) = 11619 SHA256 (electron/rust/crates/semver-1.0.28.crate) = 8a7852d02fc848982e0c167ef163aaff9cd91dc640ba85e263cb1ce46fae51cd SIZE (electron/rust/crates/semver-1.0.28.crate) = 33064 SHA256 (electron/rust/crates/seq-macro-0.3.6.crate) = 1bc711410fbe7399f390ca1c3b60ad0f53f80e95c5eb935e52268a0e2cd49acc SIZE (electron/rust/crates/seq-macro-0.3.6.crate) = 16031 SHA256 (electron/rust/crates/serde-1.0.228.crate) = 9a8e94ea7f378bd32cbbd37198a4a91436180c5bb472411e48b5ec2e2124ae9e SIZE (electron/rust/crates/serde-1.0.228.crate) = 83652 SHA256 (electron/rust/crates/serde_core-1.0.228.crate) = 41d385c7d4ca58e59fc732af25c3983b67ac852c1a25000afe1175de458b67ad SIZE (electron/rust/crates/serde_core-1.0.228.crate) = 63111 SHA256 (electron/rust/crates/serde_derive-1.0.228.crate) = d540f220d3187173da220f885ab66608367b6574e925011a9353e4badda91d79 SIZE (electron/rust/crates/serde_derive-1.0.228.crate) = 59605 SHA256 (electron/rust/crates/serde_json-1.0.149.crate) = 83fc039473c5595ace860d8c4fafa220ff474b3fc6bfdb4293327f1a37e94d86 SIZE (electron/rust/crates/serde_json-1.0.149.crate) = 155994 SHA256 (electron/rust/crates/shlex-1.3.0.crate) = 0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64 SIZE (electron/rust/crates/shlex-1.3.0.crate) = 18713 SHA256 (electron/rust/crates/siphasher-0.3.11.crate) = 38b58827f4464d87d377d175e90bf58eb00fd8716ff0a62f80356b5e61555d0d SIZE (electron/rust/crates/siphasher-0.3.11.crate) = 10442 SHA256 (electron/rust/crates/siphasher-1.0.3.crate) = 8ee5873ec9cce0195efcb7a4e9507a04cd49aec9c83d0389df45b1ef7ba2e649 SIZE (electron/rust/crates/siphasher-1.0.3.crate) = 11643 SHA256 (electron/rust/crates/slab-0.4.12.crate) = 0c790de23124f9ab44544d7ac05d60440adc586479ce501c1d6d7da3cd8c9cf5 SIZE (electron/rust/crates/slab-0.4.12.crate) = 19080 SHA256 (electron/rust/crates/smallvec-1.15.1.crate) = 67b1b7a3b5fe4f1376887184045fcf45c69e92af734b7aaddc05fb777b6fbd03 SIZE (electron/rust/crates/smallvec-1.15.1.crate) = 38116 SHA256 (electron/rust/crates/smartstring-1.0.1.crate) = 3fb72c633efbaa2dd666986505016c32c3044395ceaf881518399d2f4127ee29 SIZE (electron/rust/crates/smartstring-1.0.1.crate) = 29555 SHA256 (electron/rust/crates/stable_deref_trait-1.2.1.crate) = 6ce2be8dc25455e1f91df71bfa12ad37d7af1092ae736f3a6cd0e37bc7810596 SIZE (electron/rust/crates/stable_deref_trait-1.2.1.crate) = 8186 SHA256 (electron/rust/crates/stacker-0.1.23.crate) = 08d74a23609d509411d10e2176dc2a4346e3b4aea2e7b1869f19fdedbc71c013 SIZE (electron/rust/crates/stacker-0.1.23.crate) = 17813 SHA256 (electron/rust/crates/static_assertions-1.1.0.crate) = a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f SIZE (electron/rust/crates/static_assertions-1.1.0.crate) = 18480 SHA256 (electron/rust/crates/string_enum-1.0.2.crate) = ae36a4951ca7bd1cfd991c241584a9824a70f6aff1e7d4f693fb3f2465e4030e SIZE (electron/rust/crates/string_enum-1.0.2.crate) = 4523 SHA256 (electron/rust/crates/swc_allocator-4.0.1.crate) = 9d7eefd2c8b228a8c73056482b2ae4b3a1071fbe07638e3b55ceca8570cc48bb SIZE (electron/rust/crates/swc_allocator-4.0.1.crate) = 10424 SHA256 (electron/rust/crates/swc_atoms-9.0.0.crate) = d4ccbe2ecad10ad7432100f878a107b1d972a8aee83ca53184d00c23a078bb8a SIZE (electron/rust/crates/swc_atoms-9.0.0.crate) = 8934 SHA256 (electron/rust/crates/swc_common-21.0.1.crate) = 078f2144aa2c33ff8485773f1b81b9985fa2d00f4ad60879158ad6897db2de88 SIZE (electron/rust/crates/swc_common-21.0.1.crate) = 100154 SHA256 (electron/rust/crates/swc_compiler_base-55.0.0.crate) = d25b6d506f20c3a750336756602b92467b3d93347104920c20e9d0c64184b286 SIZE (electron/rust/crates/swc_compiler_base-55.0.0.crate) = 23316 SHA256 (electron/rust/crates/swc_config-4.0.1.crate) = a737811bc412f055818d80ae999db259678e1e2dacd91639d28a61750a251373 SIZE (electron/rust/crates/swc_config-4.0.1.crate) = 12778 SHA256 (electron/rust/crates/swc_config_macro-1.0.1.crate) = 7b416e8ce6de17dc5ea496e10c7012b35bbc0e3fef38d2e065eed936490db0b3 SIZE (electron/rust/crates/swc_config_macro-1.0.1.crate) = 2221 SHA256 (electron/rust/crates/swc_ecma_ast-23.0.0.crate) = 39f4173ab7e676eed4938d5ad8bbdf14418f87c9a8d36e6cdda82ac9645912b0 SIZE (electron/rust/crates/swc_ecma_ast-23.0.0.crate) = 50591 SHA256 (electron/rust/crates/swc_ecma_codegen-26.0.1.crate) = fafbcdd29cc03b0c04860bb0143e781e13a4e2dac03eb8747df520f602e0aa94 SIZE (electron/rust/crates/swc_ecma_codegen-26.0.1.crate) = 63550 SHA256 (electron/rust/crates/swc_ecma_codegen_macros-2.0.2.crate) = e276dc62c0a2625a560397827989c82a93fd545fcf6f7faec0935a82cc4ddbb8 SIZE (electron/rust/crates/swc_ecma_codegen_macros-2.0.2.crate) = 2549 SHA256 (electron/rust/crates/swc_ecma_hooks-0.7.0.crate) = ee7662517362f6726b0e107a3caec2b4cc7d629f9bf702958948e9350722e52f SIZE (electron/rust/crates/swc_ecma_hooks-0.7.0.crate) = 88056 SHA256 (electron/rust/crates/swc_ecma_minifier-52.0.4.crate) = 4011c4a9b320a73ac8ff27beb209a39700873b7f7492cfd8184eaf7bd71f8271 SIZE (electron/rust/crates/swc_ecma_minifier-52.0.4.crate) = 279744 SHA256 (electron/rust/crates/swc_ecma_parser-39.0.2.crate) = 8b13829b24cbdb2d7a08282bd968af8a258fd762c918df9a7b82291d44068bbc SIZE (electron/rust/crates/swc_ecma_parser-39.0.2.crate) = 181929 SHA256 (electron/rust/crates/swc_ecma_transforms_base-42.0.0.crate) = 45e58612045e827e7d3ae9f1dc6ae3590ba9abc6a3d93ff2adf27350ab409822 SIZE (electron/rust/crates/swc_ecma_transforms_base-42.0.0.crate) = 93990 SHA256 (electron/rust/crates/swc_ecma_transforms_optimization-44.0.0.crate) = 2098c7da8c4f235342ec1f7a0eb61264214d4d1b3185a0d43b2833543745b3ca SIZE (electron/rust/crates/swc_ecma_transforms_optimization-44.0.0.crate) = 80660 SHA256 (electron/rust/crates/swc_ecma_utils-29.1.0.crate) = 8e64243f2c9e9c9e631a18b42ad51f62137cf4f57b21fb93b1d58836322c2c81 SIZE (electron/rust/crates/swc_ecma_utils-29.1.0.crate) = 44910 SHA256 (electron/rust/crates/swc_ecma_visit-23.0.0.crate) = ad65d392ed427dc9e94f16a3d802b02e27722c21227639c8d5f45f19757b447b SIZE (electron/rust/crates/swc_ecma_visit-23.0.0.crate) = 330047 SHA256 (electron/rust/crates/swc_eq_ignore_macros-1.0.1.crate) = c16ce73424a6316e95e09065ba6a207eba7765496fed113702278b7711d4b632 SIZE (electron/rust/crates/swc_eq_ignore_macros-1.0.1.crate) = 3313 SHA256 (electron/rust/crates/swc_macros_common-1.0.1.crate) = aae1efbaa74943dc5ad2a2fb16cbd78b77d7e4d63188f3c5b4df2b4dcd2faaae SIZE (electron/rust/crates/swc_macros_common-1.0.1.crate) = 7108 SHA256 (electron/rust/crates/swc_sourcemap-10.0.2.crate) = 0c421e5e39e43a4b1b70c07922d7bffd5c22e8eff1340c0b15d0bfd0328822ee SIZE (electron/rust/crates/swc_sourcemap-10.0.2.crate) = 113214 SHA256 (electron/rust/crates/swc_timer-1.0.0.crate) = 4db06b46cc832f7cf83c2ce21905fc465d01443a2bdccf63644383e1f5847532 SIZE (electron/rust/crates/swc_timer-1.0.0.crate) = 1685 SHA256 (electron/rust/crates/swc_visit-2.0.1.crate) = 62fb71484b486c185e34d2172f0eabe7f4722742aad700f426a494bb2de232a2 SIZE (electron/rust/crates/swc_visit-2.0.1.crate) = 5576 SHA256 (electron/rust/crates/syn-2.0.117.crate) = e665b8803e7b1d2a727f4023456bbbbe74da67099c585258af0ad9c5013b9b99 SIZE (electron/rust/crates/syn-2.0.117.crate) = 306011 SHA256 (electron/rust/crates/synstructure-0.13.2.crate) = 728a70f3dbaf5bab7f0c4b1ac8d7ae5ea60a4b5549c8a5914361c99147a709d2 SIZE (electron/rust/crates/synstructure-0.13.2.crate) = 18950 SHA256 (electron/rust/crates/tap-1.0.1.crate) = 55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369 SIZE (electron/rust/crates/tap-1.0.1.crate) = 11316 SHA256 (electron/rust/crates/tinystr-0.8.3.crate) = c8323304221c2a851516f22236c5722a72eaa19749016521d6dff0824447d96d SIZE (electron/rust/crates/tinystr-0.8.3.crate) = 24710 SHA256 (electron/rust/crates/tracing-0.1.44.crate) = 63e71662fa4b2a2c3a26f570f037eb95bb1f85397f3cd8076caed2f026a6d100 SIZE (electron/rust/crates/tracing-0.1.44.crate) = 463135 SHA256 (electron/rust/crates/tracing-attributes-0.1.31.crate) = 7490cfa5ec963746568740651ac6781f701c9c5ea257c58e057f3ba8cf69e8da SIZE (electron/rust/crates/tracing-attributes-0.1.31.crate) = 39733 SHA256 (electron/rust/crates/tracing-core-0.1.36.crate) = db97caf9d906fbde555dd62fa95ddba9eecfd14cb388e4f491a66d74cd5fb79a SIZE (electron/rust/crates/tracing-core-0.1.36.crate) = 63967 SHA256 (electron/rust/crates/triomphe-0.1.15.crate) = dd69c5aa8f924c7519d6372789a74eac5b94fb0f8fcf0d4a97eb0bfc3e785f39 SIZE (electron/rust/crates/triomphe-0.1.15.crate) = 34711 SHA256 (electron/rust/crates/unicode-id-start-1.4.0.crate) = 81b79ad29b5e19de4260020f8919b443b2ef0277d242ce532ec7b7a2cc8b6007 SIZE (electron/rust/crates/unicode-id-start-1.4.0.crate) = 48270 SHA256 (electron/rust/crates/unicode-ident-1.0.24.crate) = e6e4313cd5fcd3dad5cafa179702e2b244f760991f45397d14d4ebf38247da75 SIZE (electron/rust/crates/unicode-ident-1.0.24.crate) = 49298 SHA256 (electron/rust/crates/unicode-segmentation-1.13.2.crate) = 9629274872b2bfaf8d66f5f15725007f635594914870f65218920345aa11aa8c SIZE (electron/rust/crates/unicode-segmentation-1.13.2.crate) = 111829 SHA256 (electron/rust/crates/unicode-width-0.2.2.crate) = b4ac048d71ede7ee76d585517add45da530660ef4390e49b098733c6e897f254 SIZE (electron/rust/crates/unicode-width-0.2.2.crate) = 282768 SHA256 (electron/rust/crates/url-2.5.8.crate) = ff67a8a4397373c3ef660812acab3268222035010ab8680ec4215f38ba3d0eed SIZE (electron/rust/crates/url-2.5.8.crate) = 86512 SHA256 (electron/rust/crates/utf8_iter-1.0.4.crate) = b6c140620e7ffbb22c2dee59cafe6084a59b5ffc27a8859a5f0d494b5d52b6be SIZE (electron/rust/crates/utf8_iter-1.0.4.crate) = 10437 SHA256 (electron/rust/crates/uuid-1.23.1.crate) = ddd74a9687298c6858e9b88ec8935ec45d22e8fd5e6394fa1bd4e99a87789c76 SIZE (electron/rust/crates/uuid-1.23.1.crate) = 62932 SHA256 (electron/rust/crates/version_check-0.9.5.crate) = 0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a SIZE (electron/rust/crates/version_check-0.9.5.crate) = 15554 SHA256 (electron/rust/crates/vsimd-0.8.0.crate) = 5c3082ca00d5a5ef149bb8b555a72ae84c9c59f7250f013ac822ac2e49b19c64 SIZE (electron/rust/crates/vsimd-0.8.0.crate) = 21377 SHA256 (electron/rust/crates/wasm-bindgen-0.2.121.crate) = 49ace1d07c165b0864824eee619580c4689389afa9dc9ed3a4c75040d82e6790 SIZE (electron/rust/crates/wasm-bindgen-0.2.121.crate) = 65838 SHA256 (electron/rust/crates/wasm-bindgen-macro-0.2.121.crate) = 8e68e6f4afd367a562002c05637acb8578ff2dea1943df76afb9e83d177c8578 SIZE (electron/rust/crates/wasm-bindgen-macro-0.2.121.crate) = 9294 SHA256 (electron/rust/crates/wasm-bindgen-macro-support-0.2.121.crate) = d95a9ec35c64b2a7cb35d3fead40c4238d0940c86d107136999567a4703259f2 SIZE (electron/rust/crates/wasm-bindgen-macro-support-0.2.121.crate) = 79901 SHA256 (electron/rust/crates/wasm-bindgen-shared-0.2.121.crate) = c4e0100b01e9f0d03189a92b96772a1fb998639d981193d7dbab487302513441 SIZE (electron/rust/crates/wasm-bindgen-shared-0.2.121.crate) = 11270 SHA256 (electron/rust/crates/windows-link-0.2.1.crate) = f0805222e57f7521d6a62e36fa9163bc891acd422f971defe97d64e70d0a4fe5 SIZE (electron/rust/crates/windows-link-0.2.1.crate) = 6133 SHA256 (electron/rust/crates/windows-sys-0.59.0.crate) = 1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b SIZE (electron/rust/crates/windows-sys-0.59.0.crate) = 2387323 SHA256 (electron/rust/crates/windows-targets-0.52.6.crate) = 9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973 SIZE (electron/rust/crates/windows-targets-0.52.6.crate) = 6403 SHA256 (electron/rust/crates/windows_aarch64_gnullvm-0.52.6.crate) = 32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3 SIZE (electron/rust/crates/windows_aarch64_gnullvm-0.52.6.crate) = 435718 SHA256 (electron/rust/crates/windows_aarch64_msvc-0.52.6.crate) = 09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469 SIZE (electron/rust/crates/windows_aarch64_msvc-0.52.6.crate) = 832615 SHA256 (electron/rust/crates/windows_i686_gnu-0.52.6.crate) = 8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b SIZE (electron/rust/crates/windows_i686_gnu-0.52.6.crate) = 880402 SHA256 (electron/rust/crates/windows_i686_gnullvm-0.52.6.crate) = 0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66 SIZE (electron/rust/crates/windows_i686_gnullvm-0.52.6.crate) = 475940 SHA256 (electron/rust/crates/windows_i686_msvc-0.52.6.crate) = 240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66 SIZE (electron/rust/crates/windows_i686_msvc-0.52.6.crate) = 901163 SHA256 (electron/rust/crates/windows_x86_64_gnu-0.52.6.crate) = 147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78 SIZE (electron/rust/crates/windows_x86_64_gnu-0.52.6.crate) = 836363 SHA256 (electron/rust/crates/windows_x86_64_gnullvm-0.52.6.crate) = 24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d SIZE (electron/rust/crates/windows_x86_64_gnullvm-0.52.6.crate) = 435707 SHA256 (electron/rust/crates/windows_x86_64_msvc-0.52.6.crate) = 589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec SIZE (electron/rust/crates/windows_x86_64_msvc-0.52.6.crate) = 832564 SHA256 (electron/rust/crates/writeable-0.6.3.crate) = 1ffae5123b2d3fc086436f8834ae3ab053a283cfac8fe0a0b8eaae044768a4c4 SIZE (electron/rust/crates/writeable-0.6.3.crate) = 26685 SHA256 (electron/rust/crates/wyz-0.5.1.crate) = 05f360fc0b24296329c78fda852a1e9ae82de9cf7b27dae4b7f62f118f77b9ed SIZE (electron/rust/crates/wyz-0.5.1.crate) = 18790 SHA256 (electron/rust/crates/xxhash-rust-0.8.15.crate) = fdd20c5420375476fbd4394763288da7eb0cc0b8c11deed431a91562af7335d3 SIZE (electron/rust/crates/xxhash-rust-0.8.15.crate) = 21515 SHA256 (electron/rust/crates/yoke-0.8.2.crate) = abe8c5fda708d9ca3df187cae8bfb9ceda00dd96231bed36e445a1a48e66f9ca SIZE (electron/rust/crates/yoke-0.8.2.crate) = 32790 SHA256 (electron/rust/crates/yoke-derive-0.8.2.crate) = de844c262c8848816172cef550288e7dc6c7b7814b4ee56b3e1553f275f1858e SIZE (electron/rust/crates/yoke-derive-0.8.2.crate) = 15077 SHA256 (electron/rust/crates/zerocopy-0.8.48.crate) = eed437bf9d6692032087e337407a86f04cd8d6a16a37199ed57949d415bd68e9 SIZE (electron/rust/crates/zerocopy-0.8.48.crate) = 287554 SHA256 (electron/rust/crates/zerocopy-derive-0.8.48.crate) = 70e3cd084b1788766f53af483dd21f93881ff30d7320490ec3ef7526d203bad4 SIZE (electron/rust/crates/zerocopy-derive-0.8.48.crate) = 97646 SHA256 (electron/rust/crates/zerofrom-0.1.7.crate) = 69faa1f2a1ea75661980b013019ed6687ed0e83d069bc1114e2cc74c6c04c4df SIZE (electron/rust/crates/zerofrom-0.1.7.crate) = 6140 SHA256 (electron/rust/crates/zerofrom-derive-0.1.7.crate) = 11532158c46691caf0f2593ea8358fed6bbf68a0315e80aae9bd41fbade684a1 SIZE (electron/rust/crates/zerofrom-derive-0.1.7.crate) = 8853 SHA256 (electron/rust/crates/zerotrie-0.2.4.crate) = 0f9152d31db0792fa83f70fb2f83148effb5c1f5b8c7686c3459e361d9bc20bf SIZE (electron/rust/crates/zerotrie-0.2.4.crate) = 83690 SHA256 (electron/rust/crates/zerovec-0.11.6.crate) = 90f911cbc359ab6af17377d242225f4d75119aec87ea711a880987b18cd7b239 SIZE (electron/rust/crates/zerovec-0.11.6.crate) = 128583 SHA256 (electron/rust/crates/zerovec-derive-0.11.3.crate) = 625dc425cab0dca6dc3c3319506e6593dcb08a9f387ea3b284dbd52a92c40555 SIZE (electron/rust/crates/zerovec-derive-0.11.3.crate) = 22115 SHA256 (electron/rust/crates/zmij-1.0.21.crate) = b8848ee67ecc8aedbaf3e4122217aff892639231befc6a1b58d29fff4c2cabaa SIZE (electron/rust/crates/zmij-1.0.21.crate) = 26665 SHA256 (electron/yarn-4.12.0.tgz) = bd58d06826ce9542c4cd904fe10bab7bc718ea2cc39a45d9fbd15f2edb45761c SIZE (electron/yarn-4.12.0.tgz) = 1056794 -SHA256 (electron/electron43-43.1.1-node-modules.tar.xz) = f57cf602ff06507d38ed76d09e2ee24c350472f99e451bbfb4bc2b5d2c69c8c0 -SIZE (electron/electron43-43.1.1-node-modules.tar.xz) = 71098213 -SHA256 (electron/electron-electron-v43.1.1_GH0.tar.gz) = 9fa9a84bc0ee0aab5ec7f46de991dc55904e634fb566a75bb3f93599c861c46a -SIZE (electron/electron-electron-v43.1.1_GH0.tar.gz) = 18951406 +SHA256 (electron/electron43-43.2.0-node-modules.tar.xz) = f57cf602ff06507d38ed76d09e2ee24c350472f99e451bbfb4bc2b5d2c69c8c0 +SIZE (electron/electron43-43.2.0-node-modules.tar.xz) = 71098213 +SHA256 (electron/electron-electron-v43.2.0_GH0.tar.gz) = eba2128a73febacedf89fabc9dc7ceb9f12bfd4d5a4470acb8ddc247b0da90f5 +SIZE (electron/electron-electron-v43.2.0_GH0.tar.gz) = 18973278 SHA256 (electron/nodejs-node-v24.18.0_GH0.tar.gz) = e07dd419efe30a89b90d872a956d074f4197fd103781bc06e0fce99d0130ad01 SIZE (electron/nodejs-node-v24.18.0_GH0.tar.gz) = 127522062 SHA256 (electron/nodejs-nan-675cefebca42410733da8a454c8d9391fcebfbc2_GH0.tar.gz) = 3983c68f19ed75dd37dc228eab385093ae2533132730f253f0c3d19ff10788e3 SIZE (electron/nodejs-nan-675cefebca42410733da8a454c8d9391fcebfbc2_GH0.tar.gz) = 111323 SHA256 (electron/Squirrel-Squirrel.Mac-0e5d146ba13101a1302d59ea6e6e0b3cace4ae38_GH0.tar.gz) = f4ebb40a8d85dbb7ef02aa0571b2f8e22182c6d73b6992484a53c90047779d01 SIZE (electron/Squirrel-Squirrel.Mac-0e5d146ba13101a1302d59ea6e6e0b3cace4ae38_GH0.tar.gz) = 2112918 SHA256 (electron/ReactiveCocoa-ReactiveObjC-74ab5baccc6f7202c8ac69a8d1e152c29dc1ea76_GH0.tar.gz) = 88e65f116c7a06fccedb43970fba63080a57a4e5dc29147d2cdfe1ee58dd0546 SIZE (electron/ReactiveCocoa-ReactiveObjC-74ab5baccc6f7202c8ac69a8d1e152c29dc1ea76_GH0.tar.gz) = 1136238 SHA256 (electron/Mantle-Mantle-2a8e2123a3931038179ee06105c9e6ec336b12ea_GH0.tar.gz) = 9a6d683612d72c3d15e26a46451866ac01989665c0e2b74c61d28a78b6820f19 SIZE (electron/Mantle-Mantle-2a8e2123a3931038179ee06105c9e6ec336b12ea_GH0.tar.gz) = 81605 SHA256 (electron/EngFlow-reclient-configs-955335c30a752e9ef7bff375baab5e0819b6c00d_GH0.tar.gz) = c148f76220fc41a89ffeaf370c2cc175577be184688b12aa6fec5f8ac6c714c4 SIZE (electron/EngFlow-reclient-configs-955335c30a752e9ef7bff375baab5e0819b6c00d_GH0.tar.gz) = 13014 SHA256 (electron/rollup-rollup-v4.60.4_GH0.tar.gz) = c129324ecef83a1c4d829c8b876751c72a6fa2dfe707f32f0b55c311cf29ee91 SIZE (electron/rollup-rollup-v4.60.4_GH0.tar.gz) = 2249970 SHA256 (electron/evanw-esbuild-v0.28.1_GH0.tar.gz) = 65c756fa87d43178ac4a5242454c2bd0fde325f8ecf77997f8fa4b88f94d5cd2 SIZE (electron/evanw-esbuild-v0.28.1_GH0.tar.gz) = 1997481 diff --git a/devel/electron43/files/patch-BUILD.gn b/devel/electron43/files/patch-BUILD.gn index b2cc043290ee..6397132947a2 100644 --- a/devel/electron43/files/patch-BUILD.gn +++ b/devel/electron43/files/patch-BUILD.gn @@ -1,98 +1,98 @@ ---- BUILD.gn.orig 2026-06-23 23:37:18 UTC +--- BUILD.gn.orig 2026-07-15 16:29:49 UTC +++ BUILD.gn -@@ -68,7 +68,7 @@ declare_args() { +@@ -69,7 +69,7 @@ declare_args() { root_extra_deps = [] } -if (is_official_build) { +if (is_official_build && !is_bsd) { # An official (maximally optimized!) component (optimized for build times) # build doesn't make sense and usually doesn't work. assert(!is_component_build) -@@ -101,7 +101,6 @@ group("gn_all") { +@@ -102,7 +102,6 @@ group("gn_all") { "//codelabs", "//components:components_unittests", "//components/gwp_asan:gwp_asan_unittests", - "//infra/orchestrator:orchestrator_all", "//net:net_unittests", "//sandbox:sandbox_unittests", "//services:services_unittests", -@@ -429,7 +428,7 @@ group("gn_all") { +@@ -434,7 +433,7 @@ group("gn_all") { } } - if (is_linux || is_chromeos || is_android) { + if ((is_linux && !is_bsd) || is_chromeos || is_android) { deps += [ "//third_party/breakpad:breakpad_unittests", "//third_party/breakpad:core-2-minidump", -@@ -592,6 +591,15 @@ group("gn_all") { +@@ -597,6 +596,15 @@ group("gn_all") { } } + if (is_bsd) { + deps -= [ + "//third_party/breakpad:dump_syms($host_system_allocator_toolchain)", + "//third_party/breakpad:microdump_stackwalk($host_system_allocator_toolchain)", + "//third_party/breakpad:minidump_dump($host_system_allocator_toolchain)", + "//third_party/breakpad:minidump_stackwalk($host_system_allocator_toolchain)", + ] + } + if (is_mac) { deps += [ "//third_party/breakpad:dump_syms($host_system_allocator_toolchain)", -@@ -640,7 +648,7 @@ group("gn_all") { +@@ -645,7 +653,7 @@ group("gn_all") { } } - if (!is_fuchsia) { + if (!is_fuchsia && !is_bsd) { # The official builders use this binary from the default toolchain's # output directory after building in order to upload the symbols of that # binary. They build the binary like `ninja symupload` which requires the -@@ -675,7 +683,7 @@ group("gn_all") { +@@ -680,7 +688,7 @@ group("gn_all") { ] } - if (is_mac || is_win || is_android || is_linux || is_chromeos) { + if (!is_bsd && (is_mac || is_win || is_android || is_linux || is_chromeos)) { deps += [ "//third_party/crashpad/crashpad:crashpad_tests", "//third_party/crashpad/crashpad/handler:crashpad_handler", -@@ -1080,7 +1088,7 @@ if (use_blink && !is_cronet_build) { +@@ -1085,7 +1093,7 @@ if (use_blink && !is_cronet_build) { "//third_party/blink/public:all_blink", ] - if (!is_chromeos && !is_ios && !is_fuchsia && !is_android && !is_castos) { + if (!is_chromeos && !is_ios && !is_fuchsia && !is_android && !is_castos && !is_bsd) { deps += [ ":chrome_wpt_tests", ":headless_shell_wpt", -@@ -1232,7 +1240,7 @@ if (use_blink && !is_cronet_build) { +@@ -1237,7 +1245,7 @@ if (use_blink && !is_cronet_build) { data_deps += [ "//content/web_test:web_test_common_mojom_js_data_deps" ] } - if (!is_win && !is_android) { + if (!is_win && !is_android && !is_bsd) { # Using the default toolchain for this tool, as it's run during tests not # during the build. This places a symlink in the root_build_dir for scrips # to use. -@@ -1246,7 +1254,7 @@ if (use_blink && !is_cronet_build) { +@@ -1251,7 +1259,7 @@ if (use_blink && !is_cronet_build) { data_deps += [ "//third_party/breakpad:dump_syms" ] } - if (is_linux || is_chromeos) { + if ((is_linux && !is_bsd) || is_chromeos) { # Using the default toolchain for this tool, as it's run during tests not # during the build. This places a symlink in the root_build_dir for scrips # to use. -@@ -1526,7 +1534,7 @@ group("chromium_builder_perf") { +@@ -1531,7 +1539,7 @@ group("chromium_builder_perf") { data_deps += [ "//chrome/test:performance_browser_tests" ] } - if (!is_win) { + if (!is_win && !is_bsd) { data_deps += [ "//third_party/breakpad:minidump_stackwalk($host_system_allocator_toolchain)" ] } } diff --git a/devel/electron43/files/patch-chrome_browser_about__flags.cc b/devel/electron43/files/patch-chrome_browser_about__flags.cc index 38296ea4b36b..9dcfc9101b0b 100644 --- a/devel/electron43/files/patch-chrome_browser_about__flags.cc +++ b/devel/electron43/files/patch-chrome_browser_about__flags.cc @@ -1,509 +1,509 @@ ---- chrome/browser/about_flags.cc.orig 2026-07-07 17:43:50 UTC +--- chrome/browser/about_flags.cc.orig 2026-07-15 16:29:49 UTC +++ chrome/browser/about_flags.cc @@ -345,13 +345,13 @@ #include "components/stylus_handwriting/win/features.h" #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "base/allocator/buildflags.h" #include "ui/ozone/public/ozone_switches.h" #endif #if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_WIN) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) #include "chrome/browser/enterprise/data_protection/data_protection_features.h" #include "chrome/browser/enterprise/profile_management/profile_management_features.h" #include "chrome/browser/enterprise/webstore/features.h" @@ -359,7 +359,7 @@ // BUILDFLAG(IS_WIN) #if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_WIN) || BUILDFLAG(IS_ANDROID) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) #include "chrome/browser/ui/webui/new_tab_page/composebox/variations/composebox_fieldtrial.h" // nogncheck #include "chrome/browser/glic/suggestions/contextual_cueing_features.h" // nogncheck #endif // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || @@ -369,7 +369,7 @@ #include "components/enterprise/platform_auth/platform_auth_features.h" #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) #include "components/enterprise/browser/reporting/reporting_features.h" #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) @@ -923,6 +923,23 @@ const FeatureEntry::FeatureVariation "identity request to Android OS", kWebIdentityDigitalIdentityCredentialHighRiskDialogParam, nullptr}}; +#if BUILDFLAG(IS_BSD) +const FeatureEntry::FeatureParam kAudioBackendPulseAudio[] = { + { "audio-backend", "pulseaudio" }}; +const FeatureEntry::FeatureParam kAudioBackendSndio[] = { + { "audio-backend", "sndio" }}; +const FeatureEntry::FeatureParam kAudioBackendAlsa[] = { + { "audio-backend", "alsa" }}; +const FeatureEntry::FeatureVariation + kAudioBackendVariations[] = { + {"using PulseAudio by default if available", + kAudioBackendPulseAudio, nullptr}, + {"using sndio by default if available", + kAudioBackendSndio, nullptr}, + {"using ALSA by default if available", + kAudioBackendAlsa, nullptr}}; +#endif + const FeatureEntry::FeatureParam kMBIModeLegacy[] = {{"mode", "legacy"}}; const FeatureEntry::FeatureParam kMBIModeEnabledPerRenderProcessHost[] = { {"mode", "per_render_process_host"}}; @@ -1352,7 +1369,7 @@ const FeatureEntry::FeatureVariation nullptr}}; #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_WIN) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) // A limited number of combinations of the rich autocompletion params. const FeatureEntry::FeatureParam kOmniboxRichAutocompletionAggressive1[] = { @@ -1581,7 +1598,7 @@ const FeatureEntry::FeatureVariation // BUILDFLAG(IS_WIN) #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_WIN) || BUILDFLAG(IS_ANDROID) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) const FeatureEntry::FeatureParam kComposeboxNextThreadsRail[] = { {"EnableThreadsRail", "true"}, @@ -3316,7 +3333,7 @@ const FeatureEntry::FeatureVariation kAndroidThemeReso #endif // BUILDFLAG(IS_ANDROID) #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) const flags_ui::FeatureEntry::FeatureParam kPwaNavigationCapturingDefaultOn[] = {{"link_capturing_state", "on_by_default"}}; const flags_ui::FeatureEntry::FeatureParam kPwaNavigationCapturingDefaultOff[] = @@ -3342,7 +3359,7 @@ const flags_ui::FeatureEntry::FeatureVariation #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || // BUILDFLAG(IS_CHROMEOS) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) const char kReplaceSyncPromosWithSignInPromosDesktopFeatures[] = "ReplaceSyncPromosWithSignInPromos," "IPH_SignInBenefits," @@ -3532,7 +3549,7 @@ const FeatureEntry::FeatureVariation kSensitiveContent #endif // BUILDFLAG(IS_ANDROID) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) const FeatureEntry::FeatureParam kContextualCueingEnabledNoEngagementCap[] = { {"BackoffTime", "0h"}, {"BackoffMultiplierBase", "0.0"}, @@ -4183,7 +4200,7 @@ const FeatureEntry::FeatureVariation }; #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) const FeatureEntry::FeatureParam kNtpCustomizeChromeAutoOpenOnEveryNTP[] = { {"max_customize_chrome_auto_shown_count", "5"}, {"max_customize_chrome_auto_shown_session_count", "5"}}; @@ -4271,7 +4288,7 @@ const FeatureEntry::FeatureVariation kRefreshTokenBind #endif // BUILDFLAG(ENABLE_DICE_SUPPORT) #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) const FeatureEntry::FeatureParam kProjectsPanelWithoutThreadsVariation[] = { {"include_threads_in_projects_panel", "false"}}; const FeatureEntry::FeatureParam kProjectsPanelWithThreadsVariation[] = { @@ -5486,7 +5503,7 @@ const FeatureEntry kFeatureEntries[] = { flag_descriptions::kEnableProcessIsolationUiDescription, kOsWin, FEATURE_VALUE_TYPE(features::kProcessIsolationSettings)}, #endif // BUILDFLAG(IS_WIN) -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) {"enable-iwa-key-distribution-component", flag_descriptions::kEnableIwaKeyDistributionComponentName, flag_descriptions::kEnableIwaKeyDistributionComponentDescription, @@ -5692,7 +5709,7 @@ const FeatureEntry kFeatureEntries[] = { FEATURE_VALUE_TYPE(media::kUseSCContentSharingPicker)}, #endif // BUILDFLAG(IS_MAC) -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) {"pulseaudio-loopback-for-cast", flag_descriptions::kPulseaudioLoopbackForCastName, flag_descriptions::kPulseaudioLoopbackForCastDescription, kOsLinux, @@ -5707,6 +5724,16 @@ const FeatureEntry kFeatureEntries[] = { flag_descriptions::kWaylandSessionManagementName, flag_descriptions::kWaylandSessionManagementDescription, kOsLinux, FEATURE_VALUE_TYPE(features::kWaylandSessionManagement)}, + +#if BUILDFLAG(IS_BSD) + {"audio-backend", + flag_descriptions::kAudioBackendName, + flag_descriptions::kAudioBackendDescription, kOsLinux, + FEATURE_WITH_PARAMS_VALUE_TYPE( + media::kAudioBackend, + kAudioBackendVariations, + "AudioBackend")}, +#endif #endif // BUILDFLAG(IS_LINUX) #if BUILDFLAG(ENABLE_VR) @@ -6143,7 +6170,7 @@ const FeatureEntry kFeatureEntries[] = { flag_descriptions::kFillOnAccountSelectDescription, kOsAll, FEATURE_VALUE_TYPE(password_manager::features::kFillOnAccountSelect)}, -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) {"first-run-desktop-choice-screen-refresh", flag_descriptions::kFirstRunDesktopChoiceScreenRefreshName, flag_descriptions::kFirstRunDesktopChoiceScreenRefreshDescription, @@ -6453,7 +6480,7 @@ const FeatureEntry kFeatureEntries[] = { "MlUrlScoring")}, #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_WIN) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) {"contextual-search-box-uses-contextual-search-provider", flag_descriptions::kContextualSearchBoxUsesContextualSearchProviderName, flag_descriptions:: @@ -6888,7 +6915,7 @@ const FeatureEntry kFeatureEntries[] = { kVoiceSearchCoherenceComposeboxVariations, "VoiceSearchCoherenceComposeboxVariations")}, #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_WIN) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) {"history-embeddings", flag_descriptions::kHistoryEmbeddingsName, flag_descriptions::kHistoryEmbeddingsDescription, kOsDesktop, FEATURE_VALUE_TYPE(history_embeddings::kHistoryEmbeddings)}, @@ -7135,7 +7162,7 @@ const FeatureEntry kFeatureEntries[] = { FEATURE_VALUE_TYPE(omnibox::kContextMenuAnimationLimiting)}, #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) {"ntp-customize-chrome-auto-open", flag_descriptions::kNtpCustomizeChromeAutoOpenName, flag_descriptions::kNtpCustomizeChromeAutoOpenDescription, kOsDesktop, -@@ -7376,7 +7403,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -7380,7 +7407,7 @@ const FeatureEntry kFeatureEntries[] = { #endif // BUILDFLAG(IS_ANDROID) #if BUILDFLAG(ENABLE_PRINTING) -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) {"cups-ipp-printing-backend", flag_descriptions::kCupsIppPrintingBackendName, flag_descriptions::kCupsIppPrintingBackendDescription, kOsDesktop, -@@ -7588,7 +7615,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -7592,7 +7619,7 @@ const FeatureEntry kFeatureEntries[] = { FEATURE_VALUE_TYPE(media::kHeadlessCaptionEarlyStart)}, #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) {"enable-input-protection", flag_descriptions::kEnableInputProtectionName, flag_descriptions::kEnableInputProtectionDescription, kOsDesktop, FEATURE_VALUE_TYPE(views::features::kEnableInputProtection)}, -@@ -8163,7 +8190,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -8167,7 +8194,7 @@ const FeatureEntry kFeatureEntries[] = { FEATURE_VALUE_TYPE(ash::features::kGesturePropertiesDBusService)}, #endif // BUILDFLAG(IS_CHROMEOS) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) {"enable-network-service-sandbox", flag_descriptions::kEnableNetworkServiceSandboxName, flag_descriptions::kEnableNetworkServiceSandboxDescription, -@@ -8609,7 +8636,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -8613,7 +8640,7 @@ const FeatureEntry kFeatureEntries[] = { flag_descriptions::kGlobalVaapiLockDescription, kOsCrOS | kOsLinux, FEATURE_VALUE_TYPE(media::kGlobalVaapiLock)}, -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) { "ui-debug-tools", flag_descriptions::kUIDebugToolsName, -@@ -9056,7 +9083,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -9060,7 +9087,7 @@ const FeatureEntry kFeatureEntries[] = { #endif #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) {"auto-picture-in-picture-for-video-playback", flag_descriptions::kAutoPictureInPictureForVideoPlaybackName, flag_descriptions::kAutoPictureInPictureForVideoPlaybackDescription, -@@ -9269,7 +9296,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -9273,7 +9300,7 @@ const FeatureEntry kFeatureEntries[] = { content_settings::features::kApproximateGeolocationPermission, kApproximateGeolocationPermissionVariations, "ApproximateGeolocationPermission")}, -#elif BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#elif BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) {"approximate-geolocation-permission", flag_descriptions::kApproximateGeolocationPermissionName, flag_descriptions::kApproximateGeolocationPermissionDescription, -@@ -9769,7 +9796,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -9773,7 +9800,7 @@ const FeatureEntry kFeatureEntries[] = { flag_descriptions::kRcapsDynamicProfileCountryDescription, kOsAll, FEATURE_VALUE_TYPE(switches::kDynamicProfileCountry)}, -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) {"enable-generic-oidc-auth-profile-management", flag_descriptions::kEnableGenericOidcAuthProfileManagementName, flag_descriptions::kEnableGenericOidcAuthProfileManagementDescription, -@@ -9779,7 +9806,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -9783,7 +9810,7 @@ const FeatureEntry kFeatureEntries[] = { #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) {"enable-user-navigation-capturing-pwa", flag_descriptions::kPwaNavigationCapturingName, flag_descriptions::kPwaNavigationCapturingDescription, -@@ -10137,7 +10164,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -10141,7 +10168,7 @@ const FeatureEntry kFeatureEntries[] = { flag_descriptions::kResponsiveIframesDescription, kOsAll, FEATURE_VALUE_TYPE(blink::features::kResponsiveIframes)}, -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) {"replace-sync-promos-with-sign-in-promos-desktop", flag_descriptions::kReplaceSyncPromosWithSignInPromosName, flag_descriptions::kReplaceSyncPromosWithSignInPromosDescription, -@@ -10521,7 +10548,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -10525,7 +10552,7 @@ const FeatureEntry kFeatureEntries[] = { segmentation_platform::features::kSegmentationSurveyPage)}, #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) {"autofill-enable-buy-now-pay-later", flag_descriptions::kAutofillEnableBuyNowPayLaterName, flag_descriptions::kAutofillEnableBuyNowPayLaterDescription, -@@ -10980,7 +11007,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -10984,7 +11011,7 @@ const FeatureEntry kFeatureEntries[] = { FEATURE_VALUE_TYPE(ui::kUseNewEtc1Encoder)}, #endif // !BUILDFLAG(IS_ANDROID) -#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) {"automatic-usb-detach", flag_descriptions::kAutomaticUsbDetachName, flag_descriptions::kAutomaticUsbDetachDescription, kOsAndroid | kOsLinux, FEATURE_VALUE_TYPE(features::kAutomaticUsbDetach)}, -@@ -11003,7 +11030,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -11007,7 +11034,7 @@ const FeatureEntry kFeatureEntries[] = { #endif // !BUILDFLAG(IS_ANDROID) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) {"autofill-enable-amount-extraction", flag_descriptions::kAutofillEnableAmountExtractionName, flag_descriptions::kAutofillEnableAmountExtractionDescription, -@@ -11119,7 +11146,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -11123,7 +11150,7 @@ const FeatureEntry kFeatureEntries[] = { FEATURE_VALUE_TYPE( feature_engagement::kIPHAutofillCreditCardBenefitFeature)}, -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) {"chrome-web-store-navigation-throttle", flag_descriptions::kChromeWebStoreNavigationThrottleName, flag_descriptions::kChromeWebStoreNavigationThrottleDescription, -@@ -11159,7 +11186,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -11163,7 +11190,7 @@ const FeatureEntry kFeatureEntries[] = { supervised_user::kSupervisedUserUseUrlFilteringService)}, #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) {"autofill-enable-amount-extraction-testing", flag_descriptions::kAutofillEnableAmountExtractionTestingName, flag_descriptions::kAutofillEnableAmountExtractionTestingDescription, -@@ -11169,7 +11196,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -11173,7 +11200,7 @@ const FeatureEntry kFeatureEntries[] = { #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) {"root-scrollbar-follows-browser-theme", flag_descriptions::kRootScrollbarFollowsTheme, flag_descriptions::kRootScrollbarFollowsThemeDescription, -@@ -11357,7 +11384,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -11361,7 +11388,7 @@ const FeatureEntry kFeatureEntries[] = { #endif // BUILDFLAG(IS_ANDROID) #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) {"tab-group-home", tabs::flag_descriptions::kTabGroupHomeName, tabs::flag_descriptions::kTabGroupHomeDescription, kOsDesktop, FEATURE_VALUE_TYPE(tabs::kTabGroupHome)}, -@@ -11397,7 +11424,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -11401,7 +11428,7 @@ const FeatureEntry kFeatureEntries[] = { #endif // BUILDFLAG(IS_ANDROID) #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) {"enable-site-search-allow-user-override-policy", flag_descriptions::kEnableSiteSearchAllowUserOverridePolicyName, flag_descriptions::kEnableSiteSearchAllowUserOverridePolicyDescription, -@@ -11481,7 +11508,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -11485,7 +11512,7 @@ const FeatureEntry kFeatureEntries[] = { #endif // BUILDFLAG(IS_ANDROID) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) {"autofill-enable-buy-now-pay-later-for-klarna", flag_descriptions::kAutofillEnableBuyNowPayLaterForKlarnaName, flag_descriptions::kAutofillEnableBuyNowPayLaterForKlarnaDescription, -@@ -11530,7 +11557,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -11534,7 +11561,7 @@ const FeatureEntry kFeatureEntries[] = { #endif #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) {"autofill-enable-buy-now-pay-later-for-externally-linked", flag_descriptions::kAutofillEnableBuyNowPayLaterForExternallyLinkedName, flag_descriptions:: -@@ -11904,7 +11931,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -11908,7 +11935,7 @@ const FeatureEntry kFeatureEntries[] = { #endif #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_WIN) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) {"contextual-suggestion-ui-improvements", flag_descriptions::kContextualSuggestionsUiImprovementsName, flag_descriptions::kContextualSuggestionsUiImprovementsDescription, -@@ -12035,7 +12062,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -12039,7 +12066,7 @@ const FeatureEntry kFeatureEntries[] = { FEATURE_VALUE_TYPE(features::kCryptographyComplianceCnsa)}, #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) {"lens-reinvocation-affordance", flag_descriptions::kLensSearchReinvocationAffordanceName, flag_descriptions::kLensSearchReinvocationAffordanceDescription, -@@ -12079,7 +12106,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -12083,7 +12110,7 @@ const FeatureEntry kFeatureEntries[] = { STRING_VALUE_TYPE(variations::switches::kVariationsSeedCorpus, "")}, #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) {"passkey-unlock-error-ui", flag_descriptions::kPasskeyUnlockErrorUiName, flag_descriptions::kPasskeyUnlockErrorUiDescription, kOsDesktop, FEATURE_VALUE_TYPE(device::kPasskeyUnlockErrorUi)}, -@@ -12113,7 +12140,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -12117,7 +12144,7 @@ const FeatureEntry kFeatureEntries[] = { flag_descriptions::kHandleMdmErrorsForDasherAccountsDescription, kOsAll, FEATURE_VALUE_TYPE(switches::kHandleMdmErrorsForDasherAccounts)}, -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) {"disable-u18-feedback-desktop", flag_descriptions::kDisableU18FeedbackDesktopName, flag_descriptions::kDisableU18FeedbackDesktopDescription, -@@ -12121,7 +12148,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -12125,7 +12152,7 @@ const FeatureEntry kFeatureEntries[] = { FEATURE_VALUE_TYPE(switches::kDisableU18FeedbackDesktop)}, #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) {"profile-creation-decline-signin-cta-experiment", flag_descriptions::kProfileCreationDeclineSigninCTAExperimentName, flag_descriptions::kProfileCreationDeclineSigninCTAExperimentDescription, -@@ -12142,7 +12169,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -12146,7 +12173,7 @@ const FeatureEntry kFeatureEntries[] = { enterprise_signals::features::kProfileSignalsReportingEnabled)}, #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) {"projects-panel", flag_descriptions::kProjectsPanelName, flag_descriptions::kProjectsPanelDescription, kOsDesktop, FEATURE_WITH_PARAMS_VALUE_TYPE(tab_groups::kProjectsPanel, -@@ -12176,7 +12203,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -12180,7 +12207,7 @@ const FeatureEntry kFeatureEntries[] = { #endif #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) {"lens-overlay-optimization-filter", flag_descriptions::kLensOverlayOptimizationFilterName, flag_descriptions::kLensOverlayOptimizationFilterDescription, kOsDesktop, -@@ -12203,7 +12230,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -12207,7 +12234,7 @@ const FeatureEntry kFeatureEntries[] = { MULTI_VALUE_TYPE(kConnectionAllowlistsChoices)}, #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) {"read-anything-with-readability-enabled", flag_descriptions::kReadAnythingWithReadabilityName, flag_descriptions::kReadAnythingWithReadabilityDescription, kOsDesktop, -@@ -12211,7 +12238,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -12215,7 +12242,7 @@ const FeatureEntry kFeatureEntries[] = { #endif #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) {"read-anything-omnibox-chip", flag_descriptions::kReadAnythingOmniboxChipName, flag_descriptions::kReadAnythingOmniboxChipDescription, kOsDesktop, -@@ -12233,7 +12260,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -12237,7 +12264,7 @@ const FeatureEntry kFeatureEntries[] = { autofill::features::kAutofillDisableBnplCountryCheckForTesting)}, #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) {"read-anything-immersive-reading-mode", flag_descriptions::kReadAnythingImmersiveReadingModeName, flag_descriptions::kReadAnythingImmersiveReadingModeDescription, -@@ -12246,7 +12273,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -12250,7 +12277,7 @@ const FeatureEntry kFeatureEntries[] = { #endif #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) {"lens-overlay-non-blocking-privacy-notice", flag_descriptions::kLensOverlayNonBlockingPrivacyNoticeName, flag_descriptions::kLensOverlayNonBlockingPrivacyNoticeDescription, -@@ -12319,7 +12346,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -12323,7 +12350,7 @@ const FeatureEntry kFeatureEntries[] = { #endif // BUILDFLAG(IS_ANDROID) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) {"enable-your-saved-info-settings-page", flag_descriptions::kYourSavedInfoSettingsPageName, flag_descriptions::kYourSavedInfoSettingsPageDescription, kOsDesktop, -@@ -12497,7 +12524,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -12501,7 +12528,7 @@ const FeatureEntry kFeatureEntries[] = { FEATURE_VALUE_TYPE(autofill::features::kAutofillAiWithDataSchema)}, #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) {"read-anything-line-focus", flag_descriptions::kReadAnythingLineFocusName, flag_descriptions::kReadAnythingLineFocusDescription, kOsDesktop, FEATURE_VALUE_TYPE(features::kReadAnythingLineFocus)}, -@@ -12521,7 +12548,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -12525,7 +12552,7 @@ const FeatureEntry kFeatureEntries[] = { FEATURE_VALUE_TYPE(payments::android::kDeduplicateNativePaymentApps)}, #endif -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) {"password-upload-ui-update", flag_descriptions::kPasswordUploadUiUpdateName, flag_descriptions::kPasswordUploadUiUpdateDescription, -@@ -12570,7 +12597,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -12574,7 +12601,7 @@ const FeatureEntry kFeatureEntries[] = { FEATURE_VALUE_TYPE(chrome::android::kAndroidXrImmersivePlayer)}, #endif -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) {"saas-usage-reporting", flag_descriptions::kSaasUsageReportingName, flag_descriptions::kSaasUsageReportingDescription, kOsLinux | kOsMac | kOsWin, -@@ -13001,7 +13028,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -13005,7 +13032,7 @@ const FeatureEntry kFeatureEntries[] = { FEATURE_VALUE_TYPE(blink::features::kUserMediaElement)}, #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) {"read-anything-readability-select-text", flag_descriptions::kReadAnythingReadabilitySelectTextName, flag_descriptions::kReadAnythingReadabilitySelectTextDescription, diff --git a/devel/electron43/files/patch-chrome_browser_flag__descriptions.h b/devel/electron43/files/patch-chrome_browser_flag__descriptions.h index 3b7e33a1ac62..65300f4fe1e0 100644 --- a/devel/electron43/files/patch-chrome_browser_flag__descriptions.h +++ b/devel/electron43/files/patch-chrome_browser_flag__descriptions.h @@ -1,21 +1,21 @@ ---- chrome/browser/flag_descriptions.h.orig 2026-07-07 17:43:50 UTC +--- chrome/browser/flag_descriptions.h.orig 2026-07-15 16:29:49 UTC +++ chrome/browser/flag_descriptions.h -@@ -8519,6 +8519,18 @@ inline constexpr char kEnableDlpFileSystemApiDescripti +@@ -8523,6 +8523,18 @@ inline constexpr char kEnableDlpFileSystemApiDescripti "Enable DLP upload scan support for FileSystem API-backed cloud storage on " "ChromeOS."; +#if BUILDFLAG(IS_BSD) +inline constexpr char kAudioBackendName[] = + "Audio Backend"; +inline constexpr char kAudioBackendDescription[] = +#if BUILDFLAG(IS_OPENBSD) + "Select the desired audio backend to use. The default is sndio."; +#elif BUILDFLAG(IS_FREEBSD) + "Select the desired audio backend to use. The default will automatically " + "enumerate through the supported backends."; +#endif +#endif + // ============================================================================ // Don't just add flags to the end, put them in the alphabetical order. // ============================================================================ diff --git a/devel/electron43/files/patch-content_browser_BUILD.gn b/devel/electron43/files/patch-content_browser_BUILD.gn index 916ce1c9ccf0..07ac3130c31a 100644 --- a/devel/electron43/files/patch-content_browser_BUILD.gn +++ b/devel/electron43/files/patch-content_browser_BUILD.gn @@ -1,33 +1,33 @@ ---- content/browser/BUILD.gn.orig 2026-07-07 05:57:55 UTC +--- content/browser/BUILD.gn.orig 2026-07-23 11:13:25 UTC +++ content/browser/BUILD.gn -@@ -2675,6 +2675,14 @@ source_set("browser") { +@@ -2677,6 +2677,14 @@ source_set("browser") { ] } + if (is_bsd) { + sources += [ + "file_system_access/file_path_watcher/file_path_watcher_bsd.cc", + "file_system_access/file_path_watcher/file_path_watcher_kqueue.cc", + "file_system_access/file_path_watcher/file_path_watcher_kqueue.h", + ] + } + if (is_linux || is_chromeos) { sources -= [ "file_system_access/file_path_watcher/file_path_watcher_stub.cc" ] -@@ -2724,6 +2732,15 @@ source_set("browser") { +@@ -2726,6 +2734,15 @@ source_set("browser") { if (allow_oop_video_decoder) { sources += [ "media/oop_video_decoder_factory.cc" ] deps += [ "//media/mojo/mojom" ] + } + + if (is_bsd) { + sources -= [ + "file_system_access/file_path_watcher/file_path_watcher_inotify.cc", + "file_system_access/file_path_watcher/file_path_watcher_inotify.h", + "sandbox_ipc_linux.cc", + "sandbox_ipc_linux.h", + ] } if (is_p2p_enabled) { diff --git a/devel/electron43/files/patch-content_browser_browser__main__loop.cc b/devel/electron43/files/patch-content_browser_browser__main__loop.cc index c52b412ee167..921a5b1d0591 100644 --- a/devel/electron43/files/patch-content_browser_browser__main__loop.cc +++ b/devel/electron43/files/patch-content_browser_browser__main__loop.cc @@ -1,37 +1,37 @@ ---- content/browser/browser_main_loop.cc.orig 2026-04-28 21:06:17 UTC +--- content/browser/browser_main_loop.cc.orig 2026-07-15 16:29:49 UTC +++ content/browser/browser_main_loop.cc -@@ -250,6 +250,12 @@ +@@ -252,6 +252,12 @@ #include "mojo/public/cpp/bindings/lib/test_random_mojo_delays.h" #endif +#if BUILDFLAG(IS_BSD) +#include "content/browser/sandbox_host_linux.h" +#include "content/public/common/zygote/sandbox_support_linux.h" +#include "sandbox/policy/sandbox.h" +#endif + // One of the linux specific headers defines this as a macro. #ifdef DestroyAll #undef DestroyAll -@@ -536,6 +542,12 @@ int BrowserMainLoop::EarlyInitialization() { +@@ -538,6 +544,12 @@ int BrowserMainLoop::EarlyInitialization() { // by now since a thread to start the ServiceManager has been created // before the browser main loop starts. DCHECK(SandboxHostLinux::GetInstance()->IsInitialized()); +#elif BUILDFLAG(IS_BSD) + base::FileHandleMappingVector additional_remapped_fds; + base::LaunchOptions options; + SandboxHostLinux::GetInstance()->Init(); + const int sfd = SandboxHostLinux::GetInstance()->GetChildSocket(); + options.fds_to_remap.push_back(std::make_pair(sfd, GetSandboxFD())); #endif // GLib's spawning of new processes is buggy, so it's important that at this -@@ -567,7 +579,7 @@ int BrowserMainLoop::EarlyInitialization() { +@@ -569,7 +581,7 @@ int BrowserMainLoop::EarlyInitialization() { base::PlatformThread::SetCurrentThreadType(base::ThreadType::kPresentation); #if BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ - BUILDFLAG(IS_ANDROID) + BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) // We use quite a few file descriptors for our IPC as well as disk the disk // cache, and the default limit on Apple is low (256), so bump it up. diff --git a/devel/electron43/files/patch-electron_script_spec-runner.js b/devel/electron43/files/patch-electron_script_spec-runner.js index 3b47fd30d444..07151b7d7ce7 100644 --- a/devel/electron43/files/patch-electron_script_spec-runner.js +++ b/devel/electron43/files/patch-electron_script_spec-runner.js @@ -1,20 +1,20 @@ ---- electron/script/spec-runner.js.orig 2026-06-29 20:35:15 UTC +--- electron/script/spec-runner.js.orig 2026-07-21 15:33:01 UTC +++ electron/script/spec-runner.js -@@ -356,7 +356,7 @@ async function runTestUsingElectron(specDir, testName, +@@ -543,7 +543,7 @@ async function runTestUsingElectron(specDir, testName, ); } const runnerArgs = [`electron/${specDir}`, ...argsToPass, ...additionalArgs]; - if (process.platform === 'linux') { + if (process.platform === 'linux' || process.platform === 'freebsd') { runnerArgs.unshift(path.resolve(__dirname, 'dbus_mock.py'), exe); exe = 'python3'; } -@@ -427,7 +427,7 @@ async function installSpecModules(dir) { +@@ -614,7 +614,7 @@ async function installSpecModules(dir) { process.exit(1); } - if (process.platform === 'linux') { + if (process.platform === 'linux' || process.platform === 'freebsd') { const { status: rebuildStatus } = childProcess.spawnSync('npm', ['rebuild', 'abstract-socket'], { env, cwd: dir, diff --git a/devel/electron43/files/patch-electron_shell_browser_api_electron__api__app.cc b/devel/electron43/files/patch-electron_shell_browser_api_electron__api__app.cc index 07f44d338475..1db605fdd14c 100644 --- a/devel/electron43/files/patch-electron_shell_browser_api_electron__api__app.cc +++ b/devel/electron43/files/patch-electron_shell_browser_api_electron__api__app.cc @@ -1,65 +1,65 @@ ---- electron/shell/browser/api/electron_api_app.cc.orig 2026-06-29 20:35:15 UTC +--- electron/shell/browser/api/electron_api_app.cc.orig 2026-07-21 15:33:01 UTC +++ electron/shell/browser/api/electron_api_app.cc -@@ -108,7 +108,7 @@ +@@ -109,7 +109,7 @@ #include "ui/base/resource/resource_bundle.h" #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "base/nix/scoped_xdg_activation_token_injector.h" #include "base/nix/xdg_util.h" #endif -@@ -436,7 +436,7 @@ bool NotificationCallbackWrapper( +@@ -437,7 +437,7 @@ bool NotificationCallbackWrapper( base::CommandLine cmd, const base::FilePath& cwd, const std::vector additional_data) { -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Set the global activation token sent as a command line switch by another // electron app instance. This also removes the switch after use to prevent // any side effects of leaving it in the command line after this point. -@@ -621,7 +621,7 @@ void App::OnFinishLaunching(base::DictValue launch_inf +@@ -622,7 +622,7 @@ void App::OnFinishLaunching(base::DictValue launch_inf } void App::OnFinishLaunching(base::DictValue launch_info) { -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Set the application name for audio streams shown in external // applications. Only affects pulseaudio currently. media::AudioManager::SetGlobalAppName(Browser::Get()->GetName()); -@@ -970,7 +970,7 @@ void App::SetDesktopName(const std::string& desktop_na +@@ -971,7 +971,7 @@ void App::SetDesktopName(const std::string& desktop_na } void App::SetDesktopName(const std::string& desktop_name) { -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) auto env = base::Environment::Create(); env->SetVar("CHROME_DESKTOP", desktop_name); #endif -@@ -1072,7 +1072,7 @@ bool App::RequestSingleInstanceLock(gin::Arguments* ar +@@ -1073,7 +1073,7 @@ bool App::RequestSingleInstanceLock(gin::Arguments* ar base::BindRepeating(NotificationCallbackWrapper, cb)); #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Read the xdg-activation token and set it in the command line for the // duration of the notification in order to ensure this is propagated to an // already running electron app instance if it exists. -@@ -1459,7 +1459,7 @@ std::vector App::GetAppMetrics +@@ -1468,7 +1468,7 @@ std::vector App::GetAppMetrics pid_dict.Set("name", process_metric.second->name); } -#if !BUILDFLAG(IS_LINUX) +#if !BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_BSD) auto memory_info = process_metric.second->GetMemoryInfo(); auto memory_dict = gin_helper::Dictionary::CreateEmpty(isolate); -@@ -1966,7 +1966,7 @@ gin::ObjectTemplateBuilder App::GetObjectTemplateBuild +@@ -1975,7 +1975,7 @@ gin::ObjectTemplateBuilder App::GetObjectTemplateBuild .SetMethod("getJumpListSettings", &App::GetJumpListSettings) .SetMethod("setJumpList", &App::SetJumpList) #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) .SetMethod("isUnityRunning", base::BindRepeating(&Browser::IsUnityRunning, browser)) #endif diff --git a/devel/electron43/files/patch-electron_shell_browser_api_electron__api__desktop__capturer.cc b/devel/electron43/files/patch-electron_shell_browser_api_electron__api__desktop__capturer.cc index 57e1d4336ea0..ca26a9c70beb 100644 --- a/devel/electron43/files/patch-electron_shell_browser_api_electron__api__desktop__capturer.cc +++ b/devel/electron43/files/patch-electron_shell_browser_api_electron__api__desktop__capturer.cc @@ -1,11 +1,11 @@ ---- electron/shell/browser/api/electron_api_desktop_capturer.cc.orig 2026-05-08 13:54:01 UTC +--- electron/shell/browser/api/electron_api_desktop_capturer.cc.orig 2026-07-21 15:33:01 UTC +++ electron/shell/browser/api/electron_api_desktop_capturer.cc -@@ -51,7 +51,7 @@ namespace { +@@ -55,7 +55,7 @@ namespace { #endif namespace { -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Private function in ui/base/x/x11_display_util.cc base::flat_map GetMonitors( std::pair version, diff --git a/devel/electron43/files/patch-electron_shell_browser_feature__list.cc b/devel/electron43/files/patch-electron_shell_browser_feature__list.cc index 1dbb653c7522..3ac900fadc06 100644 --- a/devel/electron43/files/patch-electron_shell_browser_feature__list.cc +++ b/devel/electron43/files/patch-electron_shell_browser_feature__list.cc @@ -1,11 +1,20 @@ ---- electron/shell/browser/feature_list.cc.orig 2026-01-15 18:39:20 UTC +--- electron/shell/browser/feature_list.cc.orig 2026-07-21 15:33:01 UTC +++ electron/shell/browser/feature_list.cc @@ -30,7 +30,7 @@ #include "pdf/pdf_features.h" #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "printing/printing_features.h" + #include "ui/base/ui_base_features.h" + #endif +@@ -84,7 +84,7 @@ void InitializeFeatureList() { + std::string(",") + chrome_pdf::features::kPdfUseShowSaveFilePicker.name; #endif +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + // Without this, globalShortcut is a silent no-op on GNOME Wayland (the + // ozone factory returns no listener there). Chromium keeps it off due to + // https://gitlab.gnome.org/GNOME/xdg-desktop-portal-gnome/-/issues/185, diff --git a/devel/electron43/files/patch-electron_spec_api-web-contents-spec.ts b/devel/electron43/files/patch-electron_spec_api-web-contents-spec.ts index 7fea6c40603f..d400b97fe0e1 100644 --- a/devel/electron43/files/patch-electron_spec_api-web-contents-spec.ts +++ b/devel/electron43/files/patch-electron_spec_api-web-contents-spec.ts @@ -1,20 +1,20 @@ ---- electron/spec/api-web-contents-spec.ts.orig 2026-06-29 20:35:15 UTC +--- electron/spec/api-web-contents-spec.ts.orig 2026-07-21 15:33:01 UTC +++ electron/spec/api-web-contents-spec.ts -@@ -1384,7 +1384,7 @@ describe('webContents module', () => { +@@ -1448,7 +1448,7 @@ describe('webContents module', () => { // back to OpenFolder() which does a blocking DirectoryExists() on the UI // thread (pre-existing behavior). Workspace-gating is covered by the test // above. - ifit(process.platform !== 'linux')( + ifit(process.platform !== 'linux' && process.platform !== 'freebsd')( 'reveals paths under a registered workspace folder without executing them', async () => { const w = new BrowserWindow({ show: false }); -@@ -3411,7 +3411,7 @@ describe('webContents module', () => { +@@ -3490,7 +3490,7 @@ describe('webContents module', () => { }); // TODO(codebytere): OOPIF printing is disabled on Linux at the moment due to crashes. - ifit(process.platform !== 'linux')('can print cross-origin iframes', async () => { + ifit(process.platform !== 'linux' && process.platform !== 'freebsd')('can print cross-origin iframes', async () => { server = http.createServer((_, res) => { res.writeHead(200); res.end(` diff --git a/devel/electron43/files/patch-electron_spec_visibility-state-spec.ts b/devel/electron43/files/patch-electron_spec_visibility-state-spec.ts index 2f620c0d89c0..70ef61e1f349 100644 --- a/devel/electron43/files/patch-electron_spec_visibility-state-spec.ts +++ b/devel/electron43/files/patch-electron_spec_visibility-state-spec.ts @@ -1,11 +1,11 @@ ---- electron/spec/visibility-state-spec.ts.orig 2026-05-07 20:19:20 UTC +--- electron/spec/visibility-state-spec.ts.orig 2026-07-21 15:33:01 UTC +++ electron/spec/visibility-state-spec.ts -@@ -18,7 +18,7 @@ import { closeAllWindows } from './lib/window-helpers' +@@ -19,7 +19,7 @@ import { closeAllWindows } from './lib/window-helpers' // visibilityState specs pass on linux with a real window manager but on CI // the environment does not let these specs pass -ifdescribe(process.platform !== 'linux')('document.visibilityState', () => { +ifdescribe(process.platform !== 'linux' && process.platform !== 'freebsd')('document.visibilityState', () => { let w: BaseWindow & { webContents: WebContents }; before(() => { diff --git a/devel/electron43/files/patch-third__party_blink_renderer_platform_runtime__enabled__features.json5 b/devel/electron43/files/patch-third__party_blink_renderer_platform_runtime__enabled__features.json5 index 8295c362d2ea..913d541dca8c 100644 --- a/devel/electron43/files/patch-third__party_blink_renderer_platform_runtime__enabled__features.json5 +++ b/devel/electron43/files/patch-third__party_blink_renderer_platform_runtime__enabled__features.json5 @@ -1,128 +1,128 @@ ---- third_party/blink/renderer/platform/runtime_enabled_features.json5.orig 2026-07-16 08:41:22 UTC +--- third_party/blink/renderer/platform/runtime_enabled_features.json5.orig 2026-07-23 11:13:25 UTC +++ third_party/blink/renderer/platform/runtime_enabled_features.json5 @@ -435,7 +435,7 @@ name: "AIPromptAPILegacyParams", public: true, origin_trial_feature_name: "AIPromptAPIParams", - origin_trial_os: ["win", "mac", "linux", "chromeos"], + origin_trial_os: ["win", "mac", "linux", "chromeos", "openbsd", "freebsd"], origin_trial_allows_third_party: true, implied_by: ["AIPromptAPIParams"], }, @@ -461,7 +461,7 @@ "default": "", }, origin_trial_feature_name: "AIPromptAPIParams", - origin_trial_os: ["win", "mac", "linux", "chromeos"], + origin_trial_os: ["win", "mac", "linux", "chromeos", "openbsd", "freebsd"], origin_trial_allows_third_party: true, }, { @@ -493,7 +493,7 @@ "default": "", }, origin_trial_feature_name: "AIProofreaderAPI", - origin_trial_os: ["win", "mac", "linux", "chromeos"], + origin_trial_os: ["win", "mac", "linux", "chromeos", "openbsd", "freebsd"], origin_trial_allows_third_party: true, base_feature_status: "enabled", copied_from_base_feature_if: "overridden", @@ -508,7 +508,7 @@ "default": "", }, origin_trial_feature_name: "AIRewriterAPI", - origin_trial_os: ["win", "mac", "linux", "chromeos"], + origin_trial_os: ["win", "mac", "linux", "chromeos", "openbsd", "freebsd"], origin_trial_allows_third_party: true, base_feature_status: "enabled", copied_from_base_feature_if: "overridden", @@ -544,7 +544,7 @@ "default": "", }, origin_trial_feature_name: "AIWriterAPI", - origin_trial_os: ["win", "mac", "linux", "chromeos"], + origin_trial_os: ["win", "mac", "linux", "chromeos", "openbsd", "freebsd"], origin_trial_allows_third_party: true, base_feature_status: "enabled", copied_from_base_feature_if: "overridden", @@ -690,7 +690,7 @@ name: "AppTitle", status: "experimental", origin_trial_feature_name: "AppTitle", - origin_trial_os: ["win", "mac", "linux", "chromeos"], + origin_trial_os: ["win", "mac", "linux", "chromeos", "openbsd", "freebsd"], base_feature: "WebAppEnableAppTitle", }, { @@ -1458,7 +1458,7 @@ name: "CSPHashesV1", base_feature: "none", origin_trial_feature_name: "CSPExtendedScriptSrcHashes", - origin_trial_os: ["win", "linux", "mac", "android", "chromeos"], + origin_trial_os: ["win", "linux", "mac", "android", "chromeos", "openbsd", "freebsd"], status: "experimental", public: true, }, @@ -2368,7 +2368,7 @@ name: "DocumentIsolationPolicy", status: "experimental", origin_trial_feature_name: "DocumentIsolationPolicy", - origin_trial_os: ["win", "mac", "linux", "chromeos"], + origin_trial_os: ["win", "mac", "linux", "chromeos", "openbsd", "freebsd"], base_feature: "none", }, { @@ -2715,7 +2715,7 @@ base_feature: "none", public: true, origin_trial_feature_name: "FedCmMultipleIdentityProviders", - origin_trial_os: ["win", "mac", "linux", "chromeos"], + origin_trial_os: ["win", "mac", "linux", "chromeos", "openbsd", "freebsd"], origin_trial_allows_third_party: true, }, { @@ -3549,7 +3549,7 @@ name: "InstallElement", status: {"Android": "", "default": "test"}, origin_trial_feature_name: "InstallElement", - origin_trial_os: ["win", "mac", "linux", "chromeos"], + origin_trial_os: ["win", "mac", "linux", "chromeos", "openbsd", "freebsd"], public: true, base_feature_status: "enabled", copied_from_base_feature_if: "overridden", -@@ -6294,7 +6294,7 @@ +@@ -6295,7 +6295,7 @@ name: "UnrestrictedSharedArrayBuffer", base_feature: "none", origin_trial_feature_name: "UnrestrictedSharedArrayBuffer", - origin_trial_os: ["win", "mac", "linux", "fuchsia", "chromeos"], + origin_trial_os: ["win", "mac", "linux", "fuchsia", "chromeos", "openbsd", "freebsd"], }, // Enables using policy-controlled feature "usb-unrestricted" to allow // isolated context to access protected USB interface classes and to -@@ -6392,7 +6392,7 @@ +@@ -6393,7 +6393,7 @@ status: "experimental", origin_trial_feature_name: "UserMediaElement", public: true, - origin_trial_os: ["win", "mac", "linux", "fuchsia", "chromeos", "android"], + origin_trial_os: ["win", "mac", "linux", "fuchsia", "chromeos", "android", "openbsd", "freebsd"], base_feature_status: "enabled", copied_from_base_feature_if: "overridden", }, -@@ -6507,7 +6507,7 @@ +@@ -6508,7 +6508,7 @@ name: "WebAppInstallation", status: {"Android": "", "default": "test"}, origin_trial_feature_name: "WebAppInstallation", - origin_trial_os: ["win", "mac", "linux", "chromeos"], + origin_trial_os: ["win", "mac", "linux", "chromeos", "openbsd", "freebsd"], public: true, base_feature_status: "enabled", copied_from_base_feature_if: "overridden", -@@ -6521,7 +6521,7 @@ +@@ -6522,7 +6522,7 @@ { name: "WebAppScopeExtensions", origin_trial_feature_name: "WebAppScopeExtensions", - origin_trial_os: ["win", "mac", "linux", "chromeos"], + origin_trial_os: ["win", "mac", "linux", "chromeos", "openbsd", "freebsd"], status: "experimental", base_feature: "none", }, diff --git a/devel/electron43/files/patch-ui_ozone_platform_wayland_host_wayland__frame__manager.cc b/devel/electron43/files/patch-ui_ozone_platform_wayland_host_wayland__frame__manager.cc index be77d51498ab..8c44dfc4c6e2 100644 --- a/devel/electron43/files/patch-ui_ozone_platform_wayland_host_wayland__frame__manager.cc +++ b/devel/electron43/files/patch-ui_ozone_platform_wayland_host_wayland__frame__manager.cc @@ -1,65 +1,65 @@ ---- ui/ozone/platform/wayland/host/wayland_frame_manager.cc.orig 2026-06-23 23:37:18 UTC +--- ui/ozone/platform/wayland/host/wayland_frame_manager.cc.orig 2026-07-15 16:29:49 UTC +++ ui/ozone/platform/wayland/host/wayland_frame_manager.cc @@ -5,7 +5,9 @@ #include "ui/ozone/platform/wayland/host/wayland_frame_manager.h" #include +#if !BUILDFLAG(IS_BSD) #include +#endif #include #include -@@ -464,8 +466,10 @@ std::optional WaylandFrameManager::ApplySurfaceC +@@ -468,8 +470,10 @@ std::optional WaylandFrameManager::ApplySurfaceC surface->UpdateBufferDamageRegion( gfx::ToEnclosingRectIgnoringError(surface_damage)); +#if !BUILDFLAG(IS_BSD) if (!config.access_fence_handle.is_null()) surface->set_acquire_fence(std::move(config.access_fence_handle)); +#endif bool needs_commit = false; -@@ -497,6 +501,9 @@ std::optional WaylandFrameManager::ApplySurfaceC +@@ -501,6 +505,9 @@ std::optional WaylandFrameManager::ApplySurfaceC case WaylandBufferHandle::SyncMethod::kNone: break; case WaylandBufferHandle::SyncMethod::kSyncobj: +#if BUILDFLAG(IS_BSD) + LOG(WARNING) << "WaylandBufferHandle::SyncMethod::kSyncobj is not supported!"; +#endif surface->RequestExplicitRelease( base::BindOnce(&WaylandFrameManager::OnExplicitBufferRelease, weak_factory_.GetWeakPtr(), surface)); -@@ -504,6 +511,9 @@ std::optional WaylandFrameManager::ApplySurfaceC +@@ -508,6 +515,9 @@ std::optional WaylandFrameManager::ApplySurfaceC case WaylandBufferHandle::SyncMethod::kDMAFence: [[fallthrough]]; case WaylandBufferHandle::SyncMethod::kImplicit: +#if BUILDFLAG(IS_BSD) + LOG(WARNING) << "WaylandBufferHandle::SyncMethod::kSyncobj is not supported!"; +#endif buffer_handle->set_buffer_released_callback( base::BindOnce(&WaylandFrameManager::OnWlBufferRelease, weak_factory_.GetWeakPtr(), surface), -@@ -762,8 +772,10 @@ void WaylandFrameManager::OnExplicitBufferRelease(Wayl +@@ -766,8 +776,10 @@ void WaylandFrameManager::OnExplicitBufferRelease(Wayl if (fence.is_valid()) { if (frame->merged_release_fence_fd.is_valid()) { +#if !BUILDFLAG(IS_BSD) frame->merged_release_fence_fd.reset(sync_merge( "", frame->merged_release_fence_fd.get(), fence.get())); +#endif } else { frame->merged_release_fence_fd = std::move(fence); } -@@ -801,8 +813,10 @@ void WaylandFrameManager::OnWlBufferRelease(WaylandSur +@@ -805,8 +817,10 @@ void WaylandFrameManager::OnWlBufferRelease(WaylandSur if (fence.is_valid()) { if (frame->merged_release_fence_fd.is_valid()) { +#if !BUILDFLAG(IS_BSD) frame->merged_release_fence_fd.reset(sync_merge( "", frame->merged_release_fence_fd.get(), fence.get())); +#endif } else { frame->merged_release_fence_fd = std::move(fence); }