diff options
author | V3n3RiX <venerix@koprulu.sector> | 2024-06-27 07:59:40 +0100 |
---|---|---|
committer | V3n3RiX <venerix@koprulu.sector> | 2024-06-27 07:59:40 +0100 |
commit | d2ed973482fdd800013658e83a61709b29e0a80f (patch) | |
tree | 57ea7666a57b5a05a4c8866e4915e90b4a6e7c94 /www-client | |
parent | 9f6a82a85d400d6ae7de04c43cee88dbc6bc4da0 (diff) |
gentoo auto-resync : 27:06:2024 - 07:59:39
Diffstat (limited to 'www-client')
19 files changed, 3455 insertions, 14 deletions
diff --git a/www-client/Manifest.gz b/www-client/Manifest.gz Binary files differindex d92575996c7f..d0e5d70feb23 100644 --- a/www-client/Manifest.gz +++ b/www-client/Manifest.gz diff --git a/www-client/chromium/Manifest b/www-client/chromium/Manifest index bec92e76a800..168091d45140 100644 --- a/www-client/chromium/Manifest +++ b/www-client/chromium/Manifest @@ -12,12 +12,15 @@ AUX chromium.default 148 BLAKE2B 5ee5b582c59a6e4bef87bbb0e232e2470ad412b1fbbb3b9 DIST chromium-126-clang.tar.xz 50615992 BLAKE2B 293709399ddf343ba195cec452974178228ebb72921931ad58136351956b881f8dc0bc8ca740252bcd4971701c9ee8ccc0a33648aee25a5b1cece56e0af6b83f SHA512 7bb2938b1df452585d0ee93da3bcf9c3e64e88e39059a713fe21758df670190b12ca002ef2764dc99efdb4284b4c4b7cde861e2e495d99956c21120a51b8c3dc DIST chromium-126-rust.tar.xz 150643432 BLAKE2B d9c827008a2fae07977628beccdf3cf4e5d9bf3c9728e4b2839c8bc86ee2f87844921064e30c067a1b620a3d53cbf54a74053172b1436239332fc668f772924d SHA512 431c0305a81e59da231d56f1b119226b661d7f5a93d0da92afbfc384b0e5be28f282c2911137983298a5369c93b60184d41875ec63b47048a782ee2b1301fc77 DIST chromium-126.0.6478.114.tar.xz 4167281776 BLAKE2B 4ca720b0280dc6f0aafb5da5d31f97d8d55faec9ac187fc7f3e16e447d147a6912b2b8f26247503390755146e42b32458e4c71a80e6a132cc456f414454ecf53 SHA512 49ca506eb7ac52cdfb5b491bff10deec46d62686feeb3392803eecd61a570ce6c9e6c97d61c79907aaaee39b6d32a4da399c92b8078dbdf2df097f37c757d286 +DIST chromium-126.0.6478.126.tar.xz 4166142564 BLAKE2B 4c709c3a02a01f6bef46309b4a2f3d8cd688007e6b69152a5119a098c98aa272e10ea1ebf418c75387d08e1b9dde75ad53eabc12cf860b288e732c9b974e6066 SHA512 4a86edb82ec530299f8298b7604a18efb5ccf6a6cde37950d7821a73b005b9e83805a0b7f36f2fa5b4f71e237bf70ec628c1864e4f81caa4333a5dc904fb3aab DIST chromium-126.0.6478.57.tar.xz 4162722444 BLAKE2B cc41d74916a81a1162aad8ae785e08423ca1c4a49b7b8cdfe0873efab3b67e90da4e240c8c564c77cb67466af6d7c6a61ca3acfa8aae227838060565c0fbb3a5 SHA512 e350cf34ddc7c010e6f2d87c3f8dbaa17f5dd448b10f07b6dd319e494f7d70c6caf3ef7e676de33ee1e05d602edfbae9bcf3807887ae74c32bc49a6db7aa79a7 DIST chromium-patches-126.tar.bz2 4538 BLAKE2B c1f224015618ec908ef09d0c04a2243923371e2caeccd60d93747599fd1434b284291a5b4326008db21749cf78827d5a4b50d22fc805dcd3c1fd86303dc82729 SHA512 6692075adac0379b5f27d1023de1a051cf7f7f7138efd32dfc3af0d501b714142a16daf18022bb46d92218587f364f4dafe9f4aea24f6826e88b0e7cc2be7d0b DIST chromium-ppc64le-gentoo-patches-1.tar.xz 5636 BLAKE2B 1d898939df023c59285b27bee552470483ea06375d1ee8d6947b89c5927c23cc7bfec6b49f3b376ece931d11a56f8e2a45791e0f92ad61974fc8c34c1082d89c SHA512 8a71cb007e47cda8e5fe5d185729389e65c48bd322c8ee8b3986bee8571427b959628f2666bda646a3f89ae64197c0957d3626845ff03461dbd5dee4c964d07c DIST chromium-profiler-0.2.tar 259952640 BLAKE2B 5e82389fce00b267280d633b26551231c558b80f0c92cd7d60271095a3503365ab673e7a46dc5f74f8a82db1f21262cb24dcc0531d954bab5fb3b175dab3394d SHA512 9fa89a5ab728419683e7495ae676567480987d68a2d589f2aa97bfcbcf123f3c8f97f8bca5f65e5e3f6e41475535add473ded83b9c7a33bb4746a9d05b298a6c DIST chromium_124.0.6367.207-1raptor0~deb12u1.debian.tar.xz 587248 BLAKE2B 4c5a12b3e70be85b31d60d35d160281cbf8b93422169243f743fff25805bc7006ffeed5f95b415fb49e9cf4c3bf2c0a2d5ed10642d8f772df24cab1fe738125a SHA512 025ac185f27c66438a5eaf482120fded42d37403706fd012fbde1b6acf5c2e360bb2fb7723183d4883f66f36afe10167a2d919cde11735186a1a87b28ffaf9c6 +DIST chromium_126.0.6478.114-1raptor0~deb12u1.debian.tar.xz 613488 BLAKE2B ecdf33e0ced01d540b7f1e599df6655055afd8f72b22a92c600205d1b02176be76140a5bfa550e62e4a0e4f03c68992eb480d9ba4a256b3f8b48b525a8ce7400 SHA512 53ea7f89dac5c42ca991f40f2a5515393cb74334a27df72b944552d5a557f6c53b0dac9c89cfb99918fd502396bc80a677a87533f48552af9f7fd440b7b8b2cc DIST chromium_126.0.6478.56-1raptor0~deb12u2.debian.tar.xz 613448 BLAKE2B 35af65461a5132ac7a28e004f3b8a5e1afc10924726154dd47a23371ebe5508765e0bfd3c1b1d56ff5671039b522536fa21ec22dcb9f14426929a5905976e8a0 SHA512 870b864620e48e6aefa2b36026553b06dde0afc8e8de6cbaf0e4db2333d02164a95fa5f243066e026aa3dff4b3a7366853f49c02f607dec36cec77e4b4683736 EBUILD chromium-126.0.6478.114.ebuild 48105 BLAKE2B cdda84bcb09d113845dd934e3dd50b3896458c6cbc626883a34314458d56466674a2f4c909f16509d266743ca32e9290859e1691e02d3a4d4c75caf1c30022bb SHA512 73670ee1eff48818d8df3b0c225062be8e046806285482c56d72b0f74326aa99152fe2c7bbc3aaf25851a5ea0538c3e36745b345d8be15ba5c3014af04a03ca5 +EBUILD chromium-126.0.6478.126.ebuild 48106 BLAKE2B 73e77d9a79b2e3302f1a3cc90617aca29908bc710c62a257f64a71cb14da2b711e795f5a5582cdde32fabdb3ee97ecf110e47cd60e2ea568a02feefb7a81fb97 SHA512 d7d0d77a9c0775ba5ad67a1a4dfa8d1ff599c9347bd997c32a37f4d276a9676428cdf2b1265588a4603cc9cac1685fb001bea84e58825d1da9e4f84f8a9723df EBUILD chromium-126.0.6478.57.ebuild 48097 BLAKE2B 36a39aa09ed0fd6c60a5f361c671466a4e69b4bfc212b7e456bcedacc718c9441195b59e8dd26cd0e9e2cc8f5dcd16ff54eadca06f46b53204eb5deaf79667cd SHA512 b83cb6452b2b40e66de1182952ebc0a859de749a75a296b51998144d57b2b48f6082e29ab29ce138554e467e2e838f4955042a11de5ff03d04a2b6300484e7d3 MISC metadata.xml 2249 BLAKE2B 42e914e06d12ce6ebff4251fa81c28970676bb6cad7e9b1591dbbf79e45a8805fad6ee3bfb7c1b81f47e91e101091fbfcd565a0cc47f8280b9f169559ca61f2c SHA512 a30553dc4878fdb70546a1dbcb8c38ac42b0bddd500e1d09ba5a8414f681b3304e9a6a02e734c1e7eb58e782f30f6390be97b4a22996788e7639e8a9feb01ee9 diff --git a/www-client/chromium/chromium-126.0.6478.126.ebuild b/www-client/chromium/chromium-126.0.6478.126.ebuild new file mode 100644 index 000000000000..4d4905180fe6 --- /dev/null +++ b/www-client/chromium/chromium-126.0.6478.126.ebuild @@ -0,0 +1,1452 @@ +# Copyright 2009-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{11..13} ) +PYTHON_REQ_USE="xml(+)" + +# PACKAGING NOTES + +# Google roll their bundled Clang every two weeks, and the bundled Rust +# is rolled regularly and depends on that. While we do our best to build +# with system Clang, we will eventually hit the point where we need to use +# the bundled Clang due to the use of prerelease features. We've been lucky +# enough so far that this hasn't been an issue. + +# We try and avoid forcing the use of the custom/bundled libcxx, but sometimes +# it is unavoidable. Remember to force the use of Clang when this is forced. + +# GCC is _not_ supported upstream, though patches are welcome. We do our +# best to enable builds with GCC but reserve the right to force Clang +# builds if we can't keep up with upstream's changes. Please comment +# when forcing Clang builds so we can track the need for it. + +# GN is bundled with Chromium, but we always use the system version. Remember to +# check for upstream changes to GN and update ebuild (and version below) as required. + +# For binhost users, if USE=bindist is set, we configure Chromium in a way that it is able +# to use proprietary codecs, and so that ffmpeg is an external component (libffmpeg.so), +# then we remove ffmpeg from the image to ensure that the built package is distributable +# (i.e. we don't owe royalties). A suitable libffmpeg.so is symlinked in its place; +# as a result of this, ffmpeg[chromium] or ffmpeg-chromium must be installed on the system. + +# For non-binhost builds, we build the bundled ffmpeg and enable proprietary codecs because there's +# no reason not to. Todo: Re-enable USE=system-ffmpeg. + +# These variables let us easily bound supported major dependency versions in one place. +GCC_MIN_VER=12 +GN_MIN_VER=0.2165 +# Since Google use prerelease llvm we can let any adventurous users try to build with prerelease +# ebuilds; try to keep this up to date with the latest version in the tree. +LLVM_MAX_SLOT=19 +LLVM_MIN_SLOT=17 +RUST_MIN_VER=1.72.0 +# chromium-tools/get-chromium-toolchain-strings.sh +GOOGLE_CLANG_VER=llvmorg-19-init-9433-g76ea5feb-1 +GOOGLE_RUST_VER=31e6e8c6c5b6ce62656c922c7384d3376018c980-2 + +# https://bugs.chromium.org/p/v8/issues/detail?id=14449 - V8 used in 120 can't build with GCC +# Resolved upstream, requires testing and some backporting I'm sure +: ${CHROMIUM_FORCE_CLANG=yes} +# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101227 - Chromium 120: +# webrtc - no matching member function for call to 'emplace' +: ${CHROMIUM_FORCE_LIBCXX=yes} +# 121's 'gcc_link_wrapper.py' currently fails if not using lld due to the addition of rust +: ${CHROMIUM_FORCE_LLD=yes} + +: ${CHROMIUM_FORCE_GOOGLE_TOOLCHAIN=no} + +VIRTUALX_REQUIRED="pgo" + +CHROMIUM_LANGS="af am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he + hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr + sv sw ta te th tr uk ur vi zh-CN zh-TW" + +inherit check-reqs chromium-2 desktop flag-o-matic llvm ninja-utils pax-utils +inherit python-any-r1 qmake-utils readme.gentoo-r1 systemd toolchain-funcs virtualx xdg-utils + +DESCRIPTION="Open-source version of Google Chrome web browser" +HOMEPAGE="https://www.chromium.org/" +PATCHSET_PPC64="126.0.6478.114-1raptor0~deb12u1" +PATCH_V="${PV%%\.*}" +SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz + system-toolchain? ( + https://gitlab.com/Matt.Jolly/chromium-patches/-/archive/${PATCH_V}/chromium-patches-${PATCH_V}.tar.bz2 + ) + !system-toolchain? ( + https://commondatastorage.googleapis.com/chromium-browser-clang/Linux_x64/clang-${GOOGLE_CLANG_VER}.tar.xz + -> chromium-${PV%%\.*}-clang.tar.xz + https://commondatastorage.googleapis.com/chromium-browser-clang/Linux_x64/rust-toolchain-${GOOGLE_RUST_VER}-${GOOGLE_CLANG_VER%??}.tar.xz + -> chromium-${PV%%\.*}-rust.tar.xz + ) + ppc64? ( + https://quickbuild.io/~raptor-engineering-public/+archive/ubuntu/chromium/+files/chromium_${PATCHSET_PPC64}.debian.tar.xz + https://deps.gentoo.zip/chromium-ppc64le-gentoo-patches-1.tar.xz + ) + pgo? ( https://github.com/elkablo/chromium-profiler/releases/download/v0.2/chromium-profiler-0.2.tar )" + +LICENSE="BSD" +SLOT="0/stable" +KEYWORDS="~amd64 ~arm64 ~ppc64" +IUSE_SYSTEM_LIBS="+system-harfbuzz +system-icu +system-png +system-zstd" +IUSE="+X ${IUSE_SYSTEM_LIBS} bindist cups debug ffmpeg-chromium gtk4 +hangouts headless kerberos libcxx +lto +official pax-kernel pgo +proprietary-codecs pulseaudio" +IUSE+=" qt5 qt6 +screencast selinux +system-toolchain +vaapi +wayland +widevine" +RESTRICT="!bindist? ( bindist )" + +REQUIRED_USE=" + !headless? ( || ( X wayland ) ) + pgo? ( X !wayland ) + qt6? ( qt5 ) + screencast? ( wayland ) + !system-toolchain? ( libcxx ) + ffmpeg-chromium? ( bindist proprietary-codecs ) +" + +COMMON_X_DEPEND=" + x11-libs/libXcomposite:= + x11-libs/libXcursor:= + x11-libs/libXdamage:= + x11-libs/libXfixes:= + >=x11-libs/libXi-1.6.0:= + x11-libs/libXrandr:= + x11-libs/libXrender:= + x11-libs/libXtst:= + x11-libs/libxshmfence:= +" + +COMMON_SNAPSHOT_DEPEND=" + system-icu? ( >=dev-libs/icu-71.1:= ) + >=dev-libs/libxml2-2.12.4:=[icu] + dev-libs/nspr:= + >=dev-libs/nss-3.26:= + dev-libs/libxslt:= + media-libs/fontconfig:= + >=media-libs/freetype-2.11.0-r1:= + system-harfbuzz? ( >=media-libs/harfbuzz-3:0=[icu(-)] ) + media-libs/libjpeg-turbo:= + system-png? ( media-libs/libpng:=[-apng(-)] ) + system-zstd? ( >=app-arch/zstd-1.5.5:= ) + >=media-libs/libwebp-0.4.0:= + media-libs/mesa:=[gbm(+)] + >=media-libs/openh264-1.6.0:= + sys-libs/zlib:= + x11-libs/libdrm:= + !headless? ( + dev-libs/glib:2 + >=media-libs/alsa-lib-1.0.19:= + pulseaudio? ( media-libs/libpulse:= ) + sys-apps/pciutils:= + kerberos? ( virtual/krb5 ) + vaapi? ( >=media-libs/libva-2.7:=[X?,wayland?] ) + X? ( + x11-libs/libX11:= + x11-libs/libXext:= + x11-libs/libxcb:= + ) + x11-libs/libxkbcommon:= + wayland? ( + dev-libs/libffi:= + dev-libs/wayland:= + screencast? ( media-video/pipewire:= ) + ) + ) +" + +COMMON_DEPEND=" + ${COMMON_SNAPSHOT_DEPEND} + app-arch/bzip2:= + dev-libs/expat:= + net-misc/curl[ssl] + sys-apps/dbus:= + media-libs/flac:= + sys-libs/zlib:=[minizip] + !headless? ( + X? ( ${COMMON_X_DEPEND} ) + >=app-accessibility/at-spi2-core-2.46.0:2 + media-libs/mesa:=[X?,wayland?] + cups? ( >=net-print/cups-1.3.11:= ) + virtual/udev + x11-libs/cairo:= + x11-libs/gdk-pixbuf:2 + x11-libs/pango:= + qt5? ( + dev-qt/qtcore:5 + dev-qt/qtwidgets:5 + ) + qt6? ( dev-qt/qtbase:6[gui,widgets] ) + ) +" +RDEPEND="${COMMON_DEPEND} + !headless? ( + || ( + x11-libs/gtk+:3[X?,wayland?] + gui-libs/gtk:4[X?,wayland?] + ) + qt5? ( dev-qt/qtgui:5[X?,wayland?] ) + qt6? ( dev-qt/qtbase:6[X?,wayland?] ) + ) + virtual/ttf-fonts + selinux? ( sec-policy/selinux-chromium ) + bindist? ( + !ffmpeg-chromium? ( >=media-video/ffmpeg-6.1-r1:0/58.60.60[chromium] ) + ffmpeg-chromium? ( media-video/ffmpeg-chromium:${PV%%\.*} ) + ) +" +DEPEND="${COMMON_DEPEND} + !headless? ( + gtk4? ( gui-libs/gtk:4[X?,wayland?] ) + !gtk4? ( x11-libs/gtk+:3[X?,wayland?] ) + ) +" + +depend_clang_llvm_version() { + echo "sys-devel/clang:$1" + echo "sys-devel/llvm:$1" + echo "=sys-devel/lld-$1*" +} + +# When passed multiple arguments we assume that +# we want a range of versions, inclusive. +depend_clang_llvm_versions() { + local _v + if [[ $# -eq 1 ]]; then + depend_clang_llvm_version "$1" + elif [[ $# -eq 2 ]]; then + if [[ $1 -eq $2 ]]; then + depend_clang_llvm_version "$1" + fi + echo "|| (" + for ((i=$1; i<=$2; i++)); do + echo "(" + depend_clang_llvm_version "${i}" + echo ")" + done + echo ")" + else + die "depend_clang_llvm_versions() requires 1 or 2 arguments" + fi +} + +BDEPEND=" + ${COMMON_SNAPSHOT_DEPEND} + ${PYTHON_DEPS} + $(python_gen_any_dep ' + dev-python/setuptools[${PYTHON_USEDEP}] + ') + >=app-arch/gzip-1.7 + !headless? ( + qt5? ( dev-qt/qtcore:5 ) + qt6? ( dev-qt/qtbase:6 ) + ) + system-toolchain? ( + libcxx? ( >=sys-devel/clang-${LLVM_MIN_SLOT} ) + lto? ( $(depend_clang_llvm_versions ${LLVM_MIN_SLOT} ${LLVM_MAX_SLOT}) ) + pgo? ( + >=dev-python/selenium-3.141.0 + >=dev-util/web_page_replay_go-20220314 + $(depend_clang_llvm_versions ${LLVM_MIN_SLOT} ${LLVM_MAX_SLOT}) + ) + >=virtual/rust-${RUST_MIN_VER}[profiler(-)] + ) + >=dev-build/gn-${GN_MIN_VER} + dev-build/ninja + dev-lang/perl + >=dev-util/gperf-3.0.3 + dev-vcs/git + >=net-libs/nodejs-7.6.0[inspector] + >=sys-devel/bison-2.4.3 + sys-devel/flex + virtual/pkgconfig +" + +if [[ ${CHROMIUM_FORCE_CLANG} == yes ]]; then + BDEPEND+="system-toolchain? ( >=sys-devel/clang-${LLVM_MIN_SLOT} ) " +fi + +if [[ ${CHROMIUM_FORCE_LLD} == yes ]]; then + BDEPEND+="system-toolchain? ( >=sys-devel/lld-${LLVM_MIN_SLOT} ) " +else + # #918897: Hack for arm64 + BDEPEND+=" arm64? ( >=sys-devel/lld-${LLVM_MIN_SLOT} )" +fi + +if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then + EBUILD_DEATH_HOOKS+=" chromium_pkg_die"; +fi + +DISABLE_AUTOFORMATTING="yes" +DOC_CONTENTS=" +Some web pages may require additional fonts to display properly. +Try installing some of the following packages if some characters +are not displayed properly: +- media-fonts/arphicfonts +- media-fonts/droid +- media-fonts/ipamonafont +- media-fonts/noto +- media-fonts/ja-ipafonts +- media-fonts/takao-fonts +- media-fonts/wqy-microhei +- media-fonts/wqy-zenhei + +To fix broken icons on the Downloads page, you should install an icon +theme that covers the appropriate MIME types, and configure this as your +GTK+ icon theme. + +For native file dialogs in KDE, install kde-apps/kdialog. + +To make password storage work with your desktop environment you may +have install one of the supported credentials management applications: +- app-crypt/libsecret (GNOME) +- kde-frameworks/kwallet (KDE) +If you have one of above packages installed, but don't want to use +them in Chromium, then add --password-store=basic to CHROMIUM_FLAGS +in /etc/chromium/default. +" + +python_check_deps() { + python_has_version "dev-python/setuptools[${PYTHON_USEDEP}]" +} + +needs_clang() { + [[ ${CHROMIUM_FORCE_CLANG} == yes ]] || use libcxx || use lto || use pgo +} + +needs_lld() { + # #641556: Force lld for lto and pgo builds, otherwise disable + # #918897: Temporary hack w/ use arm64 + [[ ${CHROMIUM_FORCE_LLD} == yes ]] || use lto || use pgo || use arm64 +} + +llvm_check_deps() { + if ! has_version -b "sys-devel/clang:${LLVM_SLOT}" ; then + einfo "sys-devel/clang:${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2 + return 1 + fi + + if ( use lto || use pgo ) && ! has_version -b "=sys-devel/lld-${LLVM_SLOT}*" ; then + einfo "=sys-devel/lld-${LLVM_SLOT}* is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2 + return 1 + fi + + einfo "Using LLVM slot ${LLVM_SLOT} to build" >&2 +} + +pre_build_checks() { + # Check build requirements: bugs #471810, #541816, #914220 + # We're going to start doing maths here on the size of an unpacked source tarball, + # this should make updates easier as chromium continues to balloon in size. + local BASE_DISK=22 + local EXTRA_DISK=1 + local CHECKREQS_MEMORY="4G" + tc-is-cross-compiler && EXTRA_DISK=2 + if use lto || use pgo; then + CHECKREQS_MEMORY="9G" + tc-is-cross-compiler && EXTRA_DISK=4 + use pgo && EXTRA_DISK=8 + fi + if is-flagq '-g?(gdb)?([1-9])'; then + if use custom-cflags; then + EXTRA_DISK=13 + fi + CHECKREQS_MEMORY="16G" + fi + CHECKREQS_DISK_BUILD="$((BASE_DISK + EXTRA_DISK))G" + check-reqs_${EBUILD_PHASE_FUNC} +} + +pkg_pretend() { + if [[ ${MERGE_TYPE} != binary ]]; then + # The pre_build_checks are all about compilation resources, no need to run it for a binpkg + pre_build_checks + fi + + if use headless; then + local headless_unused_flags=("cups" "kerberos" "pulseaudio" "qt5" "qt6" "vaapi" "wayland") + for myiuse in ${headless_unused_flags[@]}; do + use ${myiuse} && ewarn "Ignoring USE=${myiuse}, USE=headless is set." + done + fi + + if ! use bindist && use ffmpeg-chromium; then + ewarn "Ignoring USE=ffmpeg-chromium, USE=bindist is not set." + fi +} + +pkg_setup() { + if [[ ${MERGE_TYPE} != binary ]]; then + # The pre_build_checks are all about compilation resources, no need to run it for a binpkg + pre_build_checks + + if use system-toolchain; then + local -x CPP="$(tc-getCXX) -E" + if tc-is-gcc && ! ver_test "$(gcc-version)" -ge ${GCC_MIN_VER}; then + die "At least gcc ${GCC_MIN_VER} is required" + fi + if use pgo && tc-is-cross-compiler; then + die "The pgo USE flag cannot be used when cross-compiling" + fi + if needs_clang && ! tc-is-clang; then + if tc-is-cross-compiler; then + CPP="${CBUILD}-clang++ -E" + else + CPP="${CHOST}-clang++ -E" + fi + fi + if needs_clang || tc-is-clang; then + if ver_test "$(clang-major-version)" -lt ${LLVM_MIN_SLOT}; then + die "At least Clang ${LLVM_MIN_SLOT} is required" + fi + # Ideally we never see this, but it should help prevent bugs like 927154 + if ver_test "$(clang-major-version)" -gt ${LLVM_MAX_SLOT}; then + die "Clang $(clang-major-version) is too new; ${LLVM_MAX_SLOT} is the highest supported version" + fi + fi + fi + # Users should never hit this, it's purely a development convenience + if ver_test $(gn --version || die) -lt ${GN_MIN_VER}; then + die "dev-build/gn >= ${GN_MIN_VER} is required to build this Chromium" + fi + fi + + chromium_suid_sandbox_check_kernel_config +} + +src_prepare() { + # Calling this here supports resumption via FEATURES=keepwork + python_setup + + # disable global media controls, crashes with libstdc++ + sed -i -e \ + "/\"GlobalMediaControlsCastStartStop\"/,+4{s/ENABLED/DISABLED/;}" \ + "chrome/browser/media/router/media_router_feature.cc" || die + + local PATCHES=( + "${FILESDIR}/chromium-109-system-zlib.patch" + "${FILESDIR}/chromium-111-InkDropHost-crash.patch" + "${FILESDIR}/chromium-125-system-zstd.patch" + "${FILESDIR}/chromium-126-oauth2-client-switches.patch" + "${FILESDIR}/chromium-cross-compile.patch" + ) + + if use system-toolchain; then + # The patchset is really only required if we're using the system-toolchain + PATCHES+=( "${WORKDIR}/chromium-patches-${PATCH_V}" ) + # We can't use the bundled compiler builtins + sed -i -e \ + "/if (is_clang && toolchain_has_rust) {/,+2d" \ + build/config/compiler/BUILD.gn || die "Failed to disable bundled compiler builtins" + else + mkdir -p third_party/llvm-build/Release+Asserts || die "Failed to bundle llvm" + ln -s "${WORKDIR}"/bin third_party/llvm-build/Release+Asserts/bin || die "Failed to symlink llvm bin" + ln -s "${WORKDIR}"/lib third_party/llvm-build/Release+Asserts/lib || die "Failed to symlink llvm lib" + echo "${GOOGLE_CLANG_VER}" > third_party/llvm-build/Release+Asserts/cr_build_revision || \ + die "Failed to set clang version" + ln -s "${WORKDIR}"/rust-toolchain third_party/rust-toolchain || die "Failed to bundle rust" + cp "${WORKDIR}"/rust-toolchain/VERSION \ + "${WORKDIR}"/rust-toolchain/INSTALLED_VERSION || die "Failed to set rust version" + fi + + if use ppc64 ; then + local p + for p in $(grep -v "^#" "${WORKDIR}"/debian/patches/series | grep "^ppc64le" || die); do + if [[ ! $p =~ "fix-breakpad-compile.patch" ]]; then + eapply "${WORKDIR}/debian/patches/${p}" + fi + done + PATCHES+=( "${WORKDIR}/ppc64le" ) + PATCHES+=( "${WORKDIR}/debian/patches/fixes/rust-clanglib.patch" ) + fi + + default + + mkdir -p third_party/node/linux/node-linux-x64/bin || die + ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die + + # adjust python interpreter version + sed -i -e "s|\(^script_executable = \).*|\1\"${EPYTHON}\"|g" .gn || die + + local keeplibs=( + base/third_party/cityhash + base/third_party/double_conversion + base/third_party/icu + base/third_party/nspr + base/third_party/superfasthash + base/third_party/symbolize + base/third_party/valgrind + base/third_party/xdg_user_dirs + buildtools/third_party/libc++ + buildtools/third_party/libc++abi + chrome/third_party/mozilla_security_manager + courgette/third_party + net/third_party/mozilla_security_manager + net/third_party/nss + net/third_party/quic + net/third_party/uri_template + third_party/abseil-cpp + third_party/angle + third_party/angle/src/common/third_party/xxhash + third_party/angle/src/third_party/ceval + third_party/angle/src/third_party/libXNVCtrl + third_party/angle/src/third_party/volk + third_party/anonymous_tokens + third_party/apple_apsl + third_party/axe-core + third_party/blink + third_party/bidimapper + third_party/boringssl + third_party/boringssl/src/third_party/fiat + third_party/breakpad + third_party/breakpad/breakpad/src/third_party/curl + third_party/brotli + third_party/catapult + third_party/catapult/common/py_vulcanize/third_party/rcssmin + third_party/catapult/common/py_vulcanize/third_party/rjsmin + third_party/catapult/third_party/beautifulsoup4-4.9.3 + third_party/catapult/third_party/html5lib-1.1 + third_party/catapult/third_party/polymer + third_party/catapult/third_party/six + third_party/catapult/tracing/third_party/d3 + third_party/catapult/tracing/third_party/gl-matrix + third_party/catapult/tracing/third_party/jpeg-js + third_party/catapult/tracing/third_party/jszip + third_party/catapult/tracing/third_party/mannwhitneyu + third_party/catapult/tracing/third_party/oboe + third_party/catapult/tracing/third_party/pako + third_party/ced + third_party/cld_3 + third_party/closure_compiler + third_party/content_analysis_sdk + third_party/cpuinfo + third_party/crashpad + third_party/crashpad/crashpad/third_party/lss + third_party/crashpad/crashpad/third_party/zlib + third_party/crc32c + third_party/cros_system_api + third_party/d3 + third_party/dav1d + third_party/dawn + third_party/dawn/third_party/gn/webgpu-cts + third_party/dawn/third_party/khronos + third_party/depot_tools + third_party/devscripts + third_party/devtools-frontend + third_party/devtools-frontend/src/front_end/third_party/acorn + third_party/devtools-frontend/src/front_end/third_party/additional_readme_paths.json + third_party/devtools-frontend/src/front_end/third_party/axe-core + third_party/devtools-frontend/src/front_end/third_party/chromium + third_party/devtools-frontend/src/front_end/third_party/codemirror + third_party/devtools-frontend/src/front_end/third_party/csp_evaluator + third_party/devtools-frontend/src/front_end/third_party/diff + third_party/devtools-frontend/src/front_end/third_party/i18n + third_party/devtools-frontend/src/front_end/third_party/intl-messageformat + third_party/devtools-frontend/src/front_end/third_party/lighthouse + third_party/devtools-frontend/src/front_end/third_party/lit + third_party/devtools-frontend/src/front_end/third_party/lodash-isequal + third_party/devtools-frontend/src/front_end/third_party/marked + third_party/devtools-frontend/src/front_end/third_party/puppeteer + third_party/devtools-frontend/src/front_end/third_party/puppeteer/package/lib/esm/third_party/mitt + third_party/devtools-frontend/src/front_end/third_party/puppeteer/package/lib/esm/third_party/rxjs + third_party/devtools-frontend/src/front_end/third_party/vscode.web-custom-data + third_party/devtools-frontend/src/front_end/third_party/wasmparser + third_party/devtools-frontend/src/third_party + third_party/distributed_point_functions + third_party/dom_distiller_js + third_party/eigen3 + third_party/emoji-segmenter + third_party/farmhash + third_party/fdlibm + third_party/ffmpeg + third_party/fft2d + third_party/flatbuffers + third_party/fp16 + third_party/freetype + third_party/fusejs + third_party/fxdiv + third_party/highway + third_party/liburlpattern + third_party/libzip + third_party/lit + third_party/gemmlowp + third_party/google_input_tools + third_party/google_input_tools/third_party/closure_library + third_party/google_input_tools/third_party/closure_library/third_party/closure + third_party/googletest + third_party/hunspell + third_party/iccjpeg + third_party/inspector_protocol + third_party/ipcz + third_party/jinja2 + third_party/jsoncpp + third_party/jstemplate + third_party/khronos + third_party/lens_server_proto + third_party/leveldatabase + third_party/libaddressinput + third_party/libaom + third_party/libaom/source/libaom/third_party/fastfeat + third_party/libaom/source/libaom/third_party/SVT-AV1 + third_party/libaom/source/libaom/third_party/vector + third_party/libaom/source/libaom/third_party/x86inc + third_party/libavif + third_party/libevent + third_party/libgav1 + third_party/libjingle + third_party/libphonenumber + third_party/libsecret + third_party/libsrtp + third_party/libsync + third_party/libudev + third_party/libva_protected_content + third_party/libvpx + third_party/libvpx/source/libvpx/third_party/x86inc + third_party/libwebm + third_party/libx11 + third_party/libxcb-keysyms + third_party/libxml/chromium + third_party/libyuv + third_party/lottie + third_party/lss + third_party/lzma_sdk + third_party/mako + third_party/maldoca + third_party/maldoca/src/third_party/tensorflow_protos + third_party/maldoca/src/third_party/zlibwrapper + third_party/markupsafe + third_party/material_color_utilities + third_party/mesa + third_party/metrics_proto + third_party/minigbm + third_party/modp_b64 + third_party/nasm + third_party/nearby + third_party/neon_2_sse + third_party/node + third_party/omnibox_proto + third_party/one_euro_filter + third_party/openscreen + third_party/openscreen/src/third_party/ + third_party/openscreen/src/third_party/tinycbor/src/src + third_party/opus + third_party/ots + third_party/pdfium + third_party/pdfium/third_party/agg23 + third_party/pdfium/third_party/bigint + third_party/pdfium/third_party/freetype + third_party/pdfium/third_party/lcms + third_party/pdfium/third_party/libopenjpeg + third_party/pdfium/third_party/libtiff + third_party/perfetto + third_party/perfetto/protos/third_party/chromium + third_party/pffft + third_party/ply + third_party/polymer + third_party/private-join-and-compute + third_party/private_membership + third_party/protobuf + third_party/pthreadpool + third_party/puffin + third_party/pyjson5 + third_party/pyyaml + third_party/qcms + third_party/re2 + third_party/rnnoise + third_party/rust + third_party/s2cellid + third_party/securemessage + third_party/selenium-atoms + third_party/sentencepiece + third_party/sentencepiece/src/third_party/darts_clone + third_party/shell-encryption + third_party/simplejson + third_party/skia + third_party/skia/include/third_party/vulkan + third_party/skia/third_party/vulkan + third_party/smhasher + third_party/snappy + third_party/sqlite + third_party/swiftshader + third_party/swiftshader/third_party/astc-encoder + third_party/swiftshader/third_party/llvm-subzero + third_party/swiftshader/third_party/marl + third_party/swiftshader/third_party/subzero + third_party/swiftshader/third_party/SPIRV-Headers/include/spirv + third_party/swiftshader/third_party/SPIRV-Tools + third_party/tensorflow_models + third_party/tensorflow-text + third_party/tflite + third_party/tflite/src/third_party/eigen3 + third_party/tflite/src/third_party/fft2d + third_party/tflite/src/third_party/xla/third_party/tsl + third_party/tflite/src/third_party/xla/xla/tsl/util + third_party/ruy + third_party/six + third_party/ukey2 + third_party/unrar + third_party/utf + third_party/vulkan + third_party/wayland + third_party/webdriver + third_party/webgpu-cts + third_party/webrtc + third_party/webrtc/common_audio/third_party/ooura + third_party/webrtc/common_audio/third_party/spl_sqrt_floor + third_party/webrtc/modules/third_party/fft + third_party/webrtc/modules/third_party/g711 + third_party/webrtc/modules/third_party/g722 + third_party/webrtc/rtc_base/third_party/base64 + third_party/webrtc/rtc_base/third_party/sigslot + third_party/widevine + third_party/woff2 + third_party/wuffs + third_party/x11proto + third_party/xcbproto + third_party/xnnpack + third_party/zxcvbn-cpp + third_party/zlib/google + url/third_party/mozilla + v8/src/third_party/siphash + v8/src/third_party/valgrind + v8/src/third_party/utf8-decoder + v8/third_party/glibc + v8/third_party/inspector_protocol + v8/third_party/v8 + + # gyp -> gn leftovers + third_party/speech-dispatcher + third_party/usb_ids + third_party/xdg-utils + ) + + # USE=system-* + if ! use system-harfbuzz; then + keeplibs+=( third_party/harfbuzz-ng ) + fi + + if ! use system-icu; then + keeplibs+=( third_party/icu ) + fi + + if ! use system-png; then + keeplibs+=( third_party/libpng ) + fi + + if ! use system-zstd; then + keeplibs+=( third_party/zstd ) + fi + + if use libcxx || [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then + keeplibs+=( third_party/libc++ ) + fi + + if ! use system-toolchain || [[ ${CHROMIUM_FORCE_GOOGLE_TOOLCHAIN} == yes ]]; then + keeplibs+=( third_party/llvm ) + fi + + # Arch-specific + if use arm64 || use ppc64 ; then + keeplibs+=( third_party/swiftshader/third_party/llvm-10.0 ) + fi + # we need to generate ppc64 stuff because upstream does not ship it yet + # it has to be done before unbundling. + if use ppc64; then + pushd third_party/libvpx >/dev/null || die + mkdir -p source/config/linux/ppc64 || die + # requires git and clang, bug #832803 + # Revert https://chromium.googlesource.com/chromium/src/+/b463d0f40b08b4e896e7f458d89ae58ce2a27165%5E%21/third_party/libvpx/generate_gni.sh + # and https://chromium.googlesource.com/chromium/src/+/71ebcbce867dd31da5f8b405a28fcb0de0657d91%5E%21/third_party/libvpx/generate_gni.sh + # since we're not in a git repo + sed -i -e "s|^update_readme||g; s|clang-format|${EPREFIX}/bin/true|g; /^git -C/d; /git cl/d; /cd \$BASE_DIR\/\$LIBVPX_SRC_DIR/ign format --in-place \$BASE_DIR\/BUILD.gn\ngn format --in-place \$BASE_DIR\/libvpx_srcs.gni" \ + generate_gni.sh || die + ./generate_gni.sh || die + popd >/dev/null || die + + pushd third_party/ffmpeg >/dev/null || die + cp libavcodec/ppc/h264dsp.c libavcodec/ppc/h264dsp_ppc.c || die + cp libavcodec/ppc/h264qpel.c libavcodec/ppc/h264qpel_ppc.c || die + popd >/dev/null || die + fi + + einfo "Unbundling third-party libraries ..." + # Remove most bundled libraries. Some are still needed. + build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die + + # bundled eu-strip is for amd64 only and we don't want to pre-stripped binaries + mkdir -p buildtools/third_party/eu-strip/bin || die + ln -s "${EPREFIX}"/bin/true buildtools/third_party/eu-strip/bin/eu-strip || die +} + +chromium_rust_version_check() { + [[ ${MERGE_TYPE} == binary ]] && return + local rustc_version=( $(eselect --brief rust show 2>/dev/null) ) + rustc_version=${rustc_version[0]#rust-bin-} + rustc_version=${rustc_version#rust-} + + [[ -z "${rustc_version}" ]] && die "Failed to determine rust version, check 'eselect rust' output" + + echo $rustc_version +} + +chromium_configure() { + # Calling this here supports resumption via FEATURES=keepwork + python_setup + + local myconf_gn="" + + if use system-toolchain && [[ ${CHROMIUM_FORCE_GOOGLE_TOOLCHAIN} == no ]]; then + # Make sure the build system will use the right tools, bug #340795. + tc-export AR CC CXX NM + + if needs_clang && ! tc-is-clang; then + # Force clang since gcc is either broken or build is using libcxx. + if tc-is-cross-compiler; then + CC="${CBUILD}-clang -target ${CHOST} --sysroot ${ESYSROOT}" + CXX="${CBUILD}-clang++ -target ${CHOST} --sysroot ${ESYSROOT}" + BUILD_CC=${CBUILD}-clang + BUILD_CXX=${CBUILD}-clang++ + else + CC=${CHOST}-clang + CXX=${CHOST}-clang++ + fi + strip-unsupported-flags + fi + + if tc-is-clang; then + myconf_gn+=" is_clang=true clang_use_chrome_plugins=false" + # Workaround for build failure with clang-18 and -march=native without + # avx512. Does not affect e.g. -march=skylake, only native (bug #931623). + use amd64 && is-flagq -march=native && + [[ $(clang-major-version) -eq 18 ]] && [[ $(clang-minor-version) -lt 6 ]] && + tc-cpp-is-true "!defined(__AVX512F__)" ${CXXFLAGS} && + append-flags -mevex512 + else + myconf_gn+=" is_clang=false" + fi + + if needs_lld ; then + # https://bugs.gentoo.org/918897#c32 + append-ldflags -Wl,--undefined-version + myconf_gn+=" use_lld=true" + else + # This doesn't prevent lld from being used, but rather prevents gn from forcing it + myconf_gn+=" use_lld=false" + fi + + if use lto; then + AR=llvm-ar + NM=llvm-nm + if tc-is-cross-compiler; then + BUILD_AR=llvm-ar + BUILD_NM=llvm-nm + fi + fi + + myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\"" + + if tc-is-cross-compiler; then + tc-export BUILD_{AR,CC,CXX,NM} + myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\"" + myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\"" + myconf_gn+=" pkg_config=\"$(tc-getPKG_CONFIG)\"" + myconf_gn+=" host_pkg_config=\"$(tc-getBUILD_PKG_CONFIG)\"" + + # setup cups-config, build system only uses --libs option + if use cups; then + mkdir "${T}/cups-config" || die + cp "${ESYSROOT}/usr/bin/${CHOST}-cups-config" "${T}/cups-config/cups-config" || die + export PATH="${PATH}:${T}/cups-config" + fi + + # Don't inherit PKG_CONFIG_PATH from environment + local -x PKG_CONFIG_PATH= + else + myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\"" + fi + + local rustc_ver + rustc_ver=$(chromium_rust_version_check) + if ver_test "${rustc_ver}" -lt "${RUST_MIN_VER}"; then + eerror "Rust >=${RUST_MIN_VER} is required" + eerror "Please run 'eselect rust' and select the correct rust version" + die "Selected rust version is too old" + else + einfo "Using rust ${rustc_ver} to build" + fi + if [[ "$(eselect --brief rust show 2>/dev/null)" == *"bin"* ]]; then + myconf_gn+=" rust_sysroot_absolute=\"${EPREFIX}/opt/rust-bin-${rustc_ver}/\"" + else + myconf_gn+=" rust_sysroot_absolute=\"${EPREFIX}/usr/lib/rust/${rustc_ver}/\"" + fi + myconf_gn+=" rustc_version=\"${rustc_ver}\"" + fi + + # GN needs explicit config for Debug/Release as opposed to inferring it from build directory. + myconf_gn+=" is_debug=false" + + # enable DCHECK with USE=debug only, increases chrome binary size by 30%, bug #811138. + # DCHECK is fatal by default, make it configurable at runtime, #bug 807881. + myconf_gn+=" dcheck_always_on=$(usex debug true false)" + myconf_gn+=" dcheck_is_configurable=$(usex debug true false)" + + # Component build isn't generally intended for use by end users. It's mostly useful + # for development and debugging. + myconf_gn+=" is_component_build=false" + + # Disable nacl, we can't build without pnacl (http://crbug.com/269560). + myconf_gn+=" enable_nacl=false" + + # Use system-provided libraries. + # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733). + # TODO: use_system_hunspell (upstream changes needed). + # TODO: use_system_protobuf (bug #525560). + # TODO: use_system_sqlite (http://crbug.com/22208). + + # libevent: https://bugs.gentoo.org/593458 + local gn_system_libraries=( + flac + fontconfig + freetype + # Need harfbuzz_from_pkgconfig target + #harfbuzz-ng + libdrm + libjpeg + libwebp + libxml + libxslt + openh264 + zlib + ) + if use system-icu; then + gn_system_libraries+=( icu ) + fi + if use system-png; then + gn_system_libraries+=( libpng ) + fi + if use system-zstd; then + gn_system_libraries+=( zstd ) + fi + + build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die + + # See dependency logic in third_party/BUILD.gn + myconf_gn+=" use_system_harfbuzz=$(usex system-harfbuzz true false)" + + # Optional dependencies. + myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)" + myconf_gn+=" enable_widevine=$(usex widevine true false)" + + if use headless; then + myconf_gn+=" use_cups=false" + myconf_gn+=" use_kerberos=false" + myconf_gn+=" use_pulseaudio=false" + myconf_gn+=" use_vaapi=false" + myconf_gn+=" rtc_use_pipewire=false" + else + myconf_gn+=" use_cups=$(usex cups true false)" + myconf_gn+=" use_kerberos=$(usex kerberos true false)" + myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)" + myconf_gn+=" use_vaapi=$(usex vaapi true false)" + myconf_gn+=" rtc_use_pipewire=$(usex screencast true false)" + myconf_gn+=" gtk_version=$(usex gtk4 4 3)" + fi + + # Allows distributions to link pulseaudio directly (DT_NEEDED) instead of + # using dlopen. This helps with automated detection of ABI mismatches and + # prevents silent errors. + if use pulseaudio; then + myconf_gn+=" link_pulseaudio=true" + fi + + # Non-developer builds of Chromium (for example, non-Chrome browsers, or + # Chromium builds provided by Linux distros) should disable the testing config + myconf_gn+=" disable_fieldtrial_testing_config=true" + + if use system-toolchain; then + myconf_gn+=" use_gold=false" + fi + + # The sysroot is the oldest debian image that chromium supports, we don't need it + myconf_gn+=" use_sysroot=false" + + # This determines whether or not GN uses the bundled libcxx + # default: true + if use libcxx || [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then + myconf_gn+=" use_custom_libcxx=true" + else + myconf_gn+=" use_custom_libcxx=false" + fi + + # Disable pseudolocales, only used for testing + myconf_gn+=" enable_pseudolocales=false" + + # Disable code formating of generated files + myconf_gn+=" blink_enable_generated_code_formatting=false" + + if use bindist ; then + # proprietary_codecs just forces Chromium to say that it can use h264/aac, + # the work is still done by ffmpeg. If this is set to no Chromium + # won't be able to load the codec even if the library can handle it + myconf_gn+=" proprietary_codecs=true" + myconf_gn+=" ffmpeg_branding=\"Chrome\"" + # build ffmpeg as an external component (libffmpeg.so) that we can remove / substitute + myconf_gn+=" is_component_ffmpeg=true" + else + ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)" + myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)" + myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\"" + fi + + # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys . + # Note: these are for Gentoo use ONLY. For your own distribution, + # please get your own set of keys. Feel free to contact chromium@gentoo.org + # for more info. The OAuth2 credentials, however, have been left out. + # Those OAuth2 credentials have been broken for quite some time anyway. + # Instead we apply a patch to use the --oauth2-client-id= and + # --oauth2-client-secret= switches for setting GOOGLE_DEFAULT_CLIENT_ID and + # GOOGLE_DEFAULT_CLIENT_SECRET at runtime. This allows signing into + # Chromium without baked-in values. + local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc" + myconf_gn+=" google_api_key=\"${google_api_key}\"" + local myarch="$(tc-arch)" + + # Avoid CFLAGS problems, bug #352457, bug #390147. + if ! use custom-cflags; then + replace-flags "-Os" "-O2" + strip-flags + + # Debug info section overflows without component build + # Prevent linker from running out of address space, bug #471810 . + filter-flags "-g*" + + # Prevent libvpx/xnnpack build failures. Bug 530248, 544702, 546984, 853646. + if [[ ${myarch} == amd64 ]]; then + filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2 -mno-fma -mno-fma4 -mno-xop -mno-sse4a + fi + + if tc-is-gcc; then + # https://bugs.gentoo.org/904455 + local -x CPP="$(tc-getCXX) -E" + # https://bugs.gentoo.org/912381 + filter-lto + fi + fi + + if [[ $myarch = amd64 ]] ; then + myconf_gn+=" target_cpu=\"x64\"" + ffmpeg_target_arch=x64 + elif [[ $myarch = arm64 ]] ; then + myconf_gn+=" target_cpu=\"arm64\"" + ffmpeg_target_arch=arm64 + elif [[ $myarch = ppc64 ]] ; then + myconf_gn+=" target_cpu=\"ppc64\"" + ffmpeg_target_arch=ppc64 + else + die "Failed to determine target arch, got '$myarch'." + fi + + # Make sure that -Werror doesn't get added to CFLAGS by the build system. + # Depending on GCC version the warnings are different and we don't want + # the build to fail because of that. + myconf_gn+=" treat_warnings_as_errors=false" + + # Disable fatal linker warnings, bug 506268. + myconf_gn+=" fatal_linker_warnings=false" + + # Disable external code space for V8 for ppc64. It is disabled for ppc64 + # by default, but cross-compiling on amd64 enables it again. + if tc-is-cross-compiler; then + if ! use amd64 && ! use arm64; then + myconf_gn+=" v8_enable_external_code_space=false" + fi + fi + + # Only enabled for clang, but gcc has endian macros too + myconf_gn+=" v8_use_libm_trig_functions=true" + + # Bug 491582. + export TMPDIR="${WORKDIR}/temp" + mkdir -p -m 755 "${TMPDIR}" || die + + # https://bugs.gentoo.org/654216 + addpredict /dev/dri/ #nowarn + + # Disable unknown warning message from clang. + if tc-is-clang; then + append-flags -Wno-unknown-warning-option + if tc-is-cross-compiler; then + export BUILD_CXXFLAGS+=" -Wno-unknown-warning-option" + export BUILD_CFLAGS+=" -Wno-unknown-warning-option" + fi + fi + + # Explicitly disable ICU data file support for system-icu/headless builds. + if use system-icu || use headless; then + myconf_gn+=" icu_use_data_file=false" + fi + + # Don't need nocompile checks and GN crashes with our config + myconf_gn+=" enable_nocompile_tests=false" + + # Enable ozone wayland and/or headless support + myconf_gn+=" use_ozone=true ozone_auto_platforms=false" + myconf_gn+=" ozone_platform_headless=true" + if use headless; then + myconf_gn+=" ozone_platform=\"headless\"" + myconf_gn+=" use_xkbcommon=false use_gtk=false use_qt=false" + myconf_gn+=" use_glib=false use_gio=false" + myconf_gn+=" use_pangocairo=false use_alsa=false" + myconf_gn+=" use_libpci=false use_udev=false" + myconf_gn+=" enable_print_preview=false" + myconf_gn+=" enable_remoting=false" + else + myconf_gn+=" use_system_libdrm=true" + myconf_gn+=" use_system_minigbm=true" + myconf_gn+=" use_xkbcommon=true" + if use qt5 || use qt6; then + local cbuild_libdir=$(get_libdir) + if tc-is-cross-compiler; then + # Hack to workaround get_libdir not being able to handle CBUILD, bug #794181 + local cbuild_libdir=$($(tc-getBUILD_PKG_CONFIG) --keep-system-libs --libs-only-L libxslt) + cbuild_libdir=${cbuild_libdir:2} + cbuild_libdir=${cbuild_libdir/% } + fi + if use qt5; then + if tc-is-cross-compiler; then + myconf_gn+=" moc_qt5_path=\"${EPREFIX}/${cbuild_libdir}/qt5/bin\"" + else + myconf_gn+=" moc_qt5_path=\"$(qt5_get_bindir)\"" + fi + fi + if use qt6; then + myconf_gn+=" moc_qt6_path=\"${EPREFIX}/usr/${cbuild_libdir}/qt6/libexec\"" + fi + + myconf_gn+=" use_qt=true" + myconf_gn+=" use_qt6=$(usex qt6 true false)" + else + myconf_gn+=" use_qt=false" + fi + myconf_gn+=" ozone_platform_x11=$(usex X true false)" + myconf_gn+=" ozone_platform_wayland=$(usex wayland true false)" + myconf_gn+=" ozone_platform=$(usex wayland \"wayland\" \"x11\")" + use wayland && myconf_gn+=" use_system_libffi=true" + fi + + # Results in undefined references in chrome linking, may require CFI to work + if use arm64; then + myconf_gn+=" arm_control_flow_integrity=\"none\"" + fi + + # Enable official builds + myconf_gn+=" is_official_build=$(usex official true false)" + myconf_gn+=" use_thin_lto=$(usex lto true false)" + myconf_gn+=" thin_lto_enable_optimizations=$(usex lto true false)" + if use official; then + # Allow building against system libraries in official builds + sed -i 's/OFFICIAL_BUILD/GOOGLE_CHROME_BUILD/' \ + tools/generate_shim_headers/generate_shim_headers.py || die + # Disable CFI: unsupported for GCC, requires clang+lto+lld + myconf_gn+=" is_cfi=false" + # Don't add symbols to build + myconf_gn+=" symbol_level=0" + fi + + if use pgo; then + myconf_gn+=" chrome_pgo_phase=${1}" + if [[ "$1" == "2" ]]; then + myconf_gn+=" pgo_data_path=\"${2}\"" + fi + else + # Disable PGO + myconf_gn+=" chrome_pgo_phase=0" + fi + + # user CXXFLAGS might overwrite -march=armv8-a+crc+crypto, bug #851639 + if use arm64 && tc-is-gcc; then + sed -i '/^#if HAVE_ARM64_CRC32C/a #pragma GCC target ("+crc+crypto")' \ + third_party/crc32c/src/src/crc32c_arm64.cc || die + fi + + # skipping typecheck is only supported on amd64, bug #876157 + if ! use amd64; then + myconf_gn+=" devtools_skip_typecheck=false" + fi + + einfo "Configuring Chromium ..." + set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release + echo "$@" + "$@" || die +} + +src_configure() { + chromium_configure $(usex pgo 1 0) +} + +chromium_compile() { + # Final link uses lots of file descriptors. + ulimit -n 2048 + + # Calling this here supports resumption via FEATURES=keepwork + python_setup + + # Don't inherit PYTHONPATH from environment, bug #789021, #812689 + local -x PYTHONPATH= + + # Build mksnapshot and pax-mark it. + if use pax-kernel; then + local x + for x in mksnapshot v8_context_snapshot_generator; do + if tc-is-cross-compiler; then + eninja -C out/Release "host/${x}" + pax-mark m "out/Release/host/${x}" + else + eninja -C out/Release "${x}" + pax-mark m "out/Release/${x}" + fi + done + fi + + # Even though ninja autodetects number of CPUs, we respect + # user's options, for debugging with -j 1 or any other reason. + eninja -C out/Release chrome chromedriver chrome_sandbox + + pax-mark m out/Release/chrome + + if ! use system-toolchain; then + QA_FLAGS_IGNORED=" + usr/lib64/chromium-browser/chrome + usr/lib64/chromium-browser/chrome-sandbox + usr/lib64/chromium-browser/chromedriver + usr/lib64/chromium-browser/chrome_crashpad_handler + usr/lib64/chromium-browser/libEGL.so + usr/lib64/chromium-browser/libGLESv2.so + usr/lib64/chromium-browser/libVkICD_mock_icd.so + usr/lib64/chromium-browser/libVkLayer_khronos_validation.so + usr/lib64/chromium-browser/libqt5_shim.so + usr/lib64/chromium-browser/libvk_swiftshader.so + usr/lib64/chromium-browser/libvulkan.so.1 + " + fi +} + +# This function is called from virtx, and must always return so that Xvfb +# session isn't left running. If we return 1, virtx will call die(). +chromium_profile() { + einfo "Profiling for PGO" + + pushd "${WORKDIR}/chromium-profiler-"* >/dev/null || return 1 + + # Remove old profdata in case profiling was interrupted. + rm -rf "${1}" || return 1 + + if ! "${EPYTHON}" ./chromium_profiler.py \ + --chrome-executable "${S}/out/Release/chrome" \ + --chromedriver-executable "${S}/out/Release/chromedriver.unstripped" \ + --add-arg no-sandbox --add-arg disable-dev-shm-usage \ + --profile-output "${1}"; then + eerror "Profiling failed" + return 1 + fi + + popd >/dev/null || return 1 +} + +src_compile() { + if use pgo; then + local profdata + + profdata="${WORKDIR}/chromium.profdata" + + if [[ ! -e "${WORKDIR}/.pgo-profiled" ]]; then + chromium_compile + virtx chromium_profile "$profdata" + + touch "${WORKDIR}/.pgo-profiled" || die + fi + + if [[ ! -e "${WORKDIR}/.pgo-phase-2-configured" ]]; then + # Remove phase 1 output + rm -r out/Release || die + + chromium_configure 2 "$profdata" + + touch "${WORKDIR}/.pgo-phase-2-configured" || die + fi + + if [[ ! -e "${WORKDIR}/.pgo-phase-2-compiled" ]]; then + chromium_compile + touch "${WORKDIR}/.pgo-phase-2-compiled" || die + fi + else + chromium_compile + fi + + mv out/Release/chromedriver{.unstripped,} || die + + rm -f out/Release/locales/*.pak.info || die + + # Build manpage; bug #684550 + sed -e 's|@@PACKAGE@@|chromium-browser|g; + s|@@MENUNAME@@|Chromium|g;' \ + chrome/app/resources/manpage.1.in > \ + out/Release/chromium-browser.1 || die + + # Build desktop file; bug #706786 + sed -e 's|@@MENUNAME@@|Chromium|g; + s|@@USR_BIN_SYMLINK_NAME@@|chromium-browser|g; + s|@@PACKAGE@@|chromium-browser|g; + s|\(^Exec=\)/usr/bin/|\1|g;' \ + chrome/installer/linux/common/desktop.template > \ + out/Release/chromium-browser-chromium.desktop || die + + # Build vk_swiftshader_icd.json; bug #827861 + sed -e 's|${ICD_LIBRARY_PATH}|./libvk_swiftshader.so|g' \ + third_party/swiftshader/src/Vulkan/vk_swiftshader_icd.json.tmpl > \ + out/Release/vk_swiftshader_icd.json || die +} + +src_install() { + local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser" + exeinto "${CHROMIUM_HOME}" + doexe out/Release/chrome + + newexe out/Release/chrome_sandbox chrome-sandbox + fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox" + + doexe out/Release/chromedriver + doexe out/Release/chrome_crashpad_handler + + ozone_auto_session () { + use X && use wayland && ! use headless && echo true || echo false + } + local sedargs=( -e + "s:/usr/lib/:/usr/$(get_libdir)/:g; + s:@@OZONE_AUTO_SESSION@@:$(ozone_auto_session):g" + ) + sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r7.sh" > chromium-launcher.sh || die + doexe chromium-launcher.sh + + # It is important that we name the target "chromium-browser", + # xdg-utils expect it; bug #355517. + dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser + # keep the old symlink around for consistency + dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium + + dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver + + # Allow users to override command-line options, bug #357629. + insinto /etc/chromium + newins "${FILESDIR}/chromium.default" "default" + + pushd out/Release/locales > /dev/null || die + chromium_remove_language_paks + popd + + insinto "${CHROMIUM_HOME}" + doins out/Release/*.bin + doins out/Release/*.pak + + if use bindist; then + # We built libffmpeg as a component library, but we can't distribute it + # with proprietary codec support. Remove it and make a symlink to the requested + # system library. + rm -f out/Release/libffmpeg.so \ + || die "Failed to remove bundled libffmpeg.so (with proprietary codecs)" + # symlink the libffmpeg.so from either ffmpeg-chromium or ffmpeg[chromium]. + einfo "Creating symlink to libffmpeg.so from $(usex ffmpeg-chromium ffmpeg-chromium ffmpeg[chromium])..." + dosym ../chromium/libffmpeg.so$(usex ffmpeg-chromium .${PV%%\.*} "") \ + /usr/$(get_libdir)/chromium-browser/libffmpeg.so + fi + + ( + shopt -s nullglob + local files=(out/Release/*.so out/Release/*.so.[0-9]) + [[ ${#files[@]} -gt 0 ]] && doins "${files[@]}" + ) + + # Install bundled xdg-utils, avoids installing X11 libraries with USE="-X wayland" + doins out/Release/xdg-{settings,mime} + + if ! use system-icu && ! use headless; then + doins out/Release/icudtl.dat + fi + + doins -r out/Release/locales + doins -r out/Release/MEIPreload + + # Install vk_swiftshader_icd.json; bug #827861 + doins out/Release/vk_swiftshader_icd.json + + if [[ -d out/Release/swiftshader ]]; then + insinto "${CHROMIUM_HOME}/swiftshader" + doins out/Release/swiftshader/*.so + fi + + # Install icons + local branding size + for size in 16 24 32 48 64 128 256 ; do + case ${size} in + 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;; + *) branding="chrome/app/theme/chromium" ;; + esac + newicon -s ${size} "${branding}/product_logo_${size}.png" \ + chromium-browser.png + done + + # Install desktop entry + domenu out/Release/chromium-browser-chromium.desktop + + # Install GNOME default application entry (bug #303100). + insinto /usr/share/gnome-control-center/default-apps + newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml + + # Install manpage; bug #684550 + doman out/Release/chromium-browser.1 + dosym chromium-browser.1 /usr/share/man/man1/chromium.1 + + readme.gentoo_create_doc +} + +pkg_postrm() { + xdg_icon_cache_update + xdg_desktop_database_update +} + +pkg_postinst() { + xdg_icon_cache_update + xdg_desktop_database_update + readme.gentoo_print_elog + + if ! use headless; then + if use vaapi; then + elog "VA-API is disabled by default at runtime. You have to enable it" + elog "by adding --enable-features=VaapiVideoDecoder to CHROMIUM_FLAGS" + elog "in /etc/chromium/default." + fi + if use screencast; then + elog "Screencast is disabled by default at runtime. Either enable it" + elog "by navigating to chrome://flags/#enable-webrtc-pipewire-capturer" + elog "inside Chromium or add --enable-features=WebRTCPipeWireCapturer" + elog "to CHROMIUM_FLAGS in /etc/chromium/default." + fi + if use gtk4; then + elog "Chromium prefers GTK3 over GTK4 at runtime. To override this" + elog "behavior you need to pass --gtk-version=4, e.g. by adding it" + elog "to CHROMIUM_FLAGS in /etc/chromium/default." + fi + if use qt5 && use qt6; then + elog "Chromium automatically selects Qt5 or Qt6 based on your desktop" + elog "environment. To override you need to pass --qt-version=5 or" + elog "--qt-version=6, e.g. by adding it to CHROMIUM_FLAGS in" + elog "/etc/chromium/default." + fi + fi + + if systemd_is_booted && ! [[ -f "/etc/machine-id" ]]; then + ewarn "The lack of an '/etc/machine-id' file on this system booted with systemd" + ewarn "indicates that the Gentoo handbook was not followed to completion." + ewarn "" + ewarn "Chromium is known to behave unpredictably with this system configuration;" + ewarn "please complete the configuration of this system before logging any bugs." + fi +} diff --git a/www-client/firefox-bin/Manifest b/www-client/firefox-bin/Manifest index 0c9ed6fa067c..7610f047e783 100644 --- a/www-client/firefox-bin/Manifest +++ b/www-client/firefox-bin/Manifest @@ -196,10 +196,109 @@ DIST firefox-127.0.1-vi.xpi 650521 BLAKE2B 379020a893c74c423422de15d73b67234a9ba DIST firefox-127.0.1-xh.xpi 415013 BLAKE2B b91113b53ae38fa5a85ce322f1afaa6188f41a582208453ab41814a4e98cf947602304691e1e30cbd66d44bf09defa5f8c8b16b6e9f79c32528b74a1c224422c SHA512 7383a1c85ee100522bc5705b97d911e08d547ecdadf5607f685a3c6ee7212b83f933f75b38cf746bd641cf5fec29283bebef7ea251a7ebf7d49bdd7bb52d95ea DIST firefox-127.0.1-zh-CN.xpi 650827 BLAKE2B c19b8ce5a69d58a4da1dd002cc841f2bf6823cec3dcf4ad3eee04c6f5547f95d6491c579565ca59e82c850a0cc6df60a7b18996af80538750f3f2fb25baec3ea SHA512 769a3eef576f9d78461c8bf900ca974dcf3d5043a6769297a0c3d2309d38e62214428f24eaecc2f2213dc08c7c50a1ee70de7ffef4b8997f51ed9080c76fe7f2 DIST firefox-127.0.1-zh-TW.xpi 653082 BLAKE2B e031aaf61fff9b0adc7749c78333d464a076b59ac5afdf8a9289d62c82aaff2d7ee4c4a6b6c828e0db0a6e23be98ad32e81defd57cb879be9d16022060fb9147 SHA512 0a1358e57daaad039f164ff9f00376c8023287bfb8dc8abbd4b908a47fba619028ecfb39e2864be22d34141a3d4aea1e21249706180a6a3a582104105a2f7ac4 +DIST firefox-127.0.2-ach.xpi 461920 BLAKE2B 8978e6f06bf46bb473a5989cfeb9089863e9c92c3b93a0883ed2d0c577d24c717a49f5d35c1dd848c66076be3f0361ac917364716ea900156869ce3e21b92825 SHA512 f08f93f0b9c9704a77a00f1b9a83b867f82b144adb39d64ec0d4a3a5f78cf55b67b7eb3ce19c34eaf09357f8bdd7845a610937f70a2f856081ad468c446910c7 +DIST firefox-127.0.2-af.xpi 415365 BLAKE2B 383de6f37f70b7dd8791df80de220ad2b8db64f5c76bec9b5e8cf7064139acd08d4ae7000a28dfe14f648c8e8c20dd1bb8ac1c254ea9cfcf84c9850278aa6238 SHA512 84eb2d15fc2b1de6cff3dd7498277863734e60e29e013e72207b32fc230e80d9b417d2a0e0f5a1e5f2a43c2a98b90a47535bfc0f25a1e7966634c258927611d9 +DIST firefox-127.0.2-an.xpi 503728 BLAKE2B af62fb2c3862a9348d5ada2f21072d24b0800337a462c94d080a8ce112a01f28eaff40cd12a2b683ca44ffb4ed1de8b6bc9d0967774baf8b9bcc899b420e8134 SHA512 291e2c34b964f0d8986d2c568eac364e4d2a8e1218e2db71019ccf281b2f03474ebd90e3702fc7212be2fb435126eb635eec4b8871cb9f772f95e7c6c46df2b1 +DIST firefox-127.0.2-ar.xpi 607962 BLAKE2B 2777e90135a5b542688887b434838a5f9f123e626becaec6f274aeca78ff071c85501663115f99eab24e3ddfff04ba05d3332e6632600b97ec4366793cc290b7 SHA512 8dbcbed17479ad293d3e5c4d7f91e02fc95f121dc2be0b4e5f1532a270c3a45522774f85ea31454ca3e5fdb8456b230e0fa314a186134355503954ecfed0a1db +DIST firefox-127.0.2-ast.xpi 494030 BLAKE2B 907feaecdfca0d282314669243bf12562ea45469b1fc9fee715461d3f698f0cb394dd9d8c35a90e5e3ed4d20a3629e74e14a05027c72205e3ec47d5f6b67178f SHA512 ad22d806c4584cc8769c21a04fff2457c7d2443d1a8fc7339876c1e10ec8e548d1dd898c017b2eff4759243930d6b1c6f1268166a6802e1faf6b6f67fe654db1 +DIST firefox-127.0.2-az.xpi 488590 BLAKE2B e2f329f8c5f15efc4b1cdeeb2fd99710707c97b77c00172b5fc985f80fe65ddaea26ac92dfae264ba50e9b22c3ef87c294c7c76ed2b44e98f75db03174ad3872 SHA512 b6c82f95b8fdb9b7e393fedebc04528c36b19fcb74452a12812a408d6c9f4ef53facc71d3fd9c55aae960f98b3c831be4b52b7c6d9679f6bd0a61501e00889ab +DIST firefox-127.0.2-be.xpi 708721 BLAKE2B 9131e7cdbe4f9d087da31b4513cab3aaaff521983cdd89fd22704dd4006d6b3f2615cc9a70f594b432f7102ecc84420ab944b9f61b28af52769ab6a8ceed91d2 SHA512 b2521ae6f1c354b88c7ddde11e6f45927c40c374713f07466e649833045b5231b24861000eee27176c1dc043d2209f274a8cd788094acfbdafcbad96a9806f01 +DIST firefox-127.0.2-bg.xpi 601649 BLAKE2B e1f797b9a6b2d8b694384216b06b980fed8bbd379c5e13a4a29162ae1f517f5ac18227c705d32baddd883cd3246e8aa182d51599d924e4d48fa40d777dfc21d3 SHA512 f77319e46f237f208c566c186c0b8d4a70dea15c0c487ab77c41bb22e2459e59a8b1528bc93be36fc93c80781015626bd9a56a2d3964c38d08569612cf480469 +DIST firefox-127.0.2-bn.xpi 579342 BLAKE2B ae74def080fc4879d840cd7526bc199e66e27666bd7a1ba6a3b6d8dec2b151a52b10df5853812af8af7bed90a04b215f4dce3fe42d5103e47bcdfa3f5c05d605 SHA512 cb3b2110e3ac9f072d78aa72a4f2a987d1ee744a45b1fb1844ad50439667d97b78adb3c383a5e80b6dd1ed63abea51d429c08ce6144901228f062d33b3ecd0ec +DIST firefox-127.0.2-br.xpi 585933 BLAKE2B be13e03b5ea66573f97b015acdbfc08e05c304338256ed9b6aceb540a76e5d257f6e9ac8108fb2449498298ed680bbe46d8225f6928e4830486ffbefd2e9daf3 SHA512 657254a8e018082bd18ea9afdf761f11ac4dcb4d6dbc84f92bbf00045f814d139f4884386546fb78ded8c971719775e2cb0030435bec6ea2c14520013dabf4e2 +DIST firefox-127.0.2-bs.xpi 499342 BLAKE2B 1d3bacbb74164370b0a9c4ad9b952942fcddc3a4bea7c18414d0e31e8afd0c7d0f0f316d3d35bd3cf535cd5db1b335d336bcf27ddd18a4111386c6751b52f812 SHA512 40a0d7502e1b61959d9145e9533098e6a2395938fb55679f7e67fe6d376f2e962be6c6fc0630a40a3cdaec7bc5a50e8193df885bf40e4ab68e488e19d30a4f85 +DIST firefox-127.0.2-ca-valencia.xpi 544016 BLAKE2B 313eef4d5fb691323a099405567eb1d0da4336c573f8f2fcaab33fc82161b30bc7c18e2ac8de89253ee47cc9589a67f889c5dda0dddca6b1be9113aad5fbf234 SHA512 5bf2930525505fa3906897bf8072ed2a13bbdc6de2df82350918d3bc94175113fdf2c1ee4da975d26cfaeffc3eb9c464cc1aafdb20eb0b29ffe022209427bac5 +DIST firefox-127.0.2-ca.xpi 582808 BLAKE2B ecfb3ef2af0ee94ca901730b9e9750515c66c0890ea28b1b0ae46e4e385e948590825ddb9607d9748a9f7f6c695f0887f4786ff3dcaa99c2be14d5a5b2d3d117 SHA512 6a29cd06569120205a13a389a4087520f803df5e459c293c4b7b61d6cdc19735491fc13382333ff96904e54da1a0b3d5b06c59792d53b877fb909e55d730486a +DIST firefox-127.0.2-cak.xpi 590482 BLAKE2B 9f2dd6c56f78f7f64834c9fd12f14493ba1a30f0c1a283d286b4c0f0881b321029c54487cc7b644a2b9c7b547db65e76104b47404c0f50e4eab2d3bf936ef024 SHA512 510c272b05dfc16659fb27186aa1f64ae1e70a39dca93aa32d1dd79d8896c29c93322de9bdf388c8a0974632329e0798daea9b4a8d63e185d85f8a8377bb373e +DIST firefox-127.0.2-cs.xpi 653270 BLAKE2B b98bfa2e3fbf724ced45b357c7c3ae6a5b074488b1b2426df327267232eb30b3866f836a433f00ef92c6943f5ceb2ded4ef5e0d86785ee88859cf88b47cc7c0d SHA512 3057bf1be5369af6f1572e14c8a07efb7250bb2f9e9a5f5d3e72eac6ca4764970ab47530e76399e39222fa8cff4c06df216f00acd338fc254473580cc42b9ed0 +DIST firefox-127.0.2-cy.xpi 618428 BLAKE2B c0be3dfcafd923a39cd0bd2c54e2c413509a0f1b7ca17cecd6e5c968930e5516f41bdb1b247002abbd7ac84f6855983eab2fbc3e9ebf03fd95d2aea2dc44c398 SHA512 0b217fb7c14a43830b7b48418a759185ec568100c600519a796a336059eb76239e4b58243903bd180a21327f177085900c007da8e31922bc279dcef90be2755c +DIST firefox-127.0.2-da.xpi 606847 BLAKE2B aae984f6cce0f493a54ca2fb9f89ea916d25468d91aadae207f38a1771901dc6bad2d1761051a145ae0c197f049d10d662d0f78e64ab0ad7b7745fd41b312f53 SHA512 aa511bfc36695ce3a2a82ad759eb31b1396dc455703e605ca95ee96d72e19f768eff254645362da9c776d609b4d108d24f0ce8759c27d625a3f65eb2f249847e +DIST firefox-127.0.2-de.xpi 628178 BLAKE2B 3a5ecbb47276320290acc9643c2396d3409c803dd7e35d767f3b43d9782d688e872981a66f8608b531e694b5779264472fee5d1b0ce7705cd590aee524cb4263 SHA512 d5346f45b6cd2f6f934d07e8445ea7ff1bc97540da57490a132d4125532b388ae911731f3a723d596f519d0325dc2ccbd287d529ce4f1e22a9e40b14b5a9045d +DIST firefox-127.0.2-dsb.xpi 644572 BLAKE2B 72ce2b28b566e68ae48e9d2ae6db439583e3eb9bc7f08adf1e53fe53f943e49c18b53898dd649f7ddf0c1bd76cd1da00880f62cbbe7a9d897087d75cca16de48 SHA512 24b48a4e2cf9034249c5ad5b81ed25f727fe64ce8382be42d0ec418547672c7fb3d69aad0047e3085032086084921c2a51fbc29469cae0b75d3fa1b39807858b +DIST firefox-127.0.2-el.xpi 726241 BLAKE2B 59b90ec280c4094451e4390ec990c3c5b87b22eb93217252962765220cf78539ace962abe8d4e5c581b146ec04cb5617499afe55657d951334103607d57d15a8 SHA512 bd29df99eeb56ed84d76183a09f48191b283d9d9ed3f3c0c6f33b5cdd6d6bff42a6e5e93644e91ff59ca3132155f3163b49a95c36b94eb7445f4133c6624fd7f +DIST firefox-127.0.2-en-CA.xpi 579152 BLAKE2B 3b125758423e52dcc5ddab42c402eb311209845cee2c1e155c546b4cf8ac3e3e635fb01456ba67b52ba89d18443c833a42c5b072c24216ffeb7c51893b078396 SHA512 25d89707c67a70a807ff05c6665f03aae6effe58c9fb7a43cd427c70ee46ae7c8feda51319958cc91778ddb74031d6d471892f8b49f8a03ffd63ef30b8739c1e +DIST firefox-127.0.2-en-GB.xpi 579706 BLAKE2B bf4151dc3504096dd96013119905cba19b8d1417da25a2f4c5dbf7e14e9ed2c20a3b4442d6eea29ee37a6a648d3aadf58f6164978921b84be1763c5dc2f99c86 SHA512 247a412c5ed93799f6a453ff8cb6a2e7629781238ffbceabb5a10c5de01cd0409cd37371b4e4511df38612397688fdeb1d4e3791d138115d733f7a14b34e2a95 +DIST firefox-127.0.2-eo.xpi 608810 BLAKE2B c85e1b71424db3764eac98af32cf943b1daeb3d64d5348cf5842862d81bdccc5afaa7f477a1ac4827087872762d3eb4969c427b3a2b5893210f9aa158c33b409 SHA512 06f3c6aff4316c7bb4ee1e2e7814267a86b5392cf2c78a39f5f4a104d48bc7bd85365ac6a1d1804b8c171548d71f8e4c571e85ca4d7fea81302160f159b0f31e +DIST firefox-127.0.2-es-AR.xpi 622106 BLAKE2B 828e573af5e7499850fb5bc3d6a5c9b09ee4a31147a6a4dfc17665784a4f32d6a39eb94246b09c28160d927a939047807c3faa3a2b853da092de32feeea1d146 SHA512 6a8efb62c2364e344ca51dab0a3f1fb373b990e308ecd6887ed2fe3fc2f826949d676ac55068fbcd3460ee163dc9a41f7ab52d7063e27ce5624424238bf13d8a +DIST firefox-127.0.2-es-CL.xpi 621302 BLAKE2B ed638109216a61bdbb0f1a91ffdea17321936bef0fd2c57fd8bb29e56b6103be24ced5d62c41ea114b37e962c5df496aecfb9a06227a2e3662e6fcf2793f3915 SHA512 217183e515a9fd83535795731a9f7124a3716e5f68c028ae2137057bdff261d1e7744acfe64212ff003fa7782108c261aa3dc7dcf2184f3c77462fd65a374e05 +DIST firefox-127.0.2-es-ES.xpi 616136 BLAKE2B 2c25d895c6752f5a196bc80eef656f691fdcef3d5991dd3940eb4457e36f4010d7a78f6293904b8c8bd7d2d41ad993425847cfc791b0f45688616d1a3b003d34 SHA512 1780160b8378a87790a7d06eaeb099ade3b18e80469386a886d119a811f1216dd6db0d10dc162f4eef209cc2e45d260ec83b7a61ff67312df9c2a97ad73f98c2 +DIST firefox-127.0.2-es-MX.xpi 589239 BLAKE2B 74ea13596d227087bd314822f4353e17ca47067bfdb9dfe31adceff013eb10947f9c51f21ae9ba65773af8f64c20211d753c7cd09af72645ad5ced25d7eec77e SHA512 c684248938f8e48f13943564bd98766043d2ab14777617128b62cf6983d616bcf75f4448bc9609c9b253172f0753d3904611bd5f79f89e63f43f8d5915e8affc +DIST firefox-127.0.2-et.xpi 537278 BLAKE2B 9720007a3b7a1899eaa9ca12f72bbcc362600d23115c971c5d791878cceb3c23bdf9954fd127ca9bbeff5f55be71ab03d7ffdbd3ca26407773355874799b7da2 SHA512 6d3a8d15024a6c18bc0e8feca09280bc6c44d88b47aaf9c09fbf48776e9656357308a9e0c45ab42f5a387c69fa52db46e8b51143556ca7f6cf433b81df06a6b4 +DIST firefox-127.0.2-eu.xpi 593779 BLAKE2B 276eb7fd5ba095fc2ed9c1c89e91d92d9d78160d00bf79ff157bd53d5cb1b68290424b2959b69ef40d072fc33345a928dd66231dc2a8d922b4f65c773c0d5286 SHA512 05f754d2a01bd7c597d805cae6775ca05640bab6478c3c8c0a807aa08f41a63e86e0d5f85d7b020d805955cbdc8e0deccebc7f95b46f75dc31521da416d7cb3d +DIST firefox-127.0.2-fa.xpi 587838 BLAKE2B 03c99132883000ed03489cd26d5a220bc5c3bb30323dc7c956a1c8ffd55e6a63a20c3a18413b151158a559c208751ed4afc352b5fd130ddbf4e7af83e2a2e933 SHA512 369cdea6c059bda8304fe4075ace929c5023359df27c5f5ec9b930aed2b57590b59309b993259c77b9a66f02d683cde1f1f8c6a930f129889df1239a3ca30bd3 +DIST firefox-127.0.2-ff.xpi 473942 BLAKE2B 020c910141a001fff646585b848ce7a0e62ae50ee5b790f25a3c35e24e302c3ee074ecd52ac987a3b91804d672a46b17fbbd503cf864faeada80d0773cda1eeb SHA512 c4c577ee23c99f26cd0c37553013f3cfc657e5c90b594f60ec6db66f5560069dfab175bea6b65ff8bba0e9a16697cdb7e30f773343612554b868bddb607d689e +DIST firefox-127.0.2-fi.xpi 601836 BLAKE2B d7d757970504b3ae569f661d58c929c8128d8dd2786c0448dd88c65f97277f02cafde9d4fc8037241640a88899cd9f8c9aece17134f20d48ea6749e79ec12d2a SHA512 5fc511b7495fd7d92597ff3fdaa8b01d76e2325112d3b48d01ae38d624e0017dffd9e7316b21dd0bae6ecc95505993dd44c1f682bfd3b0086924695337da2f13 +DIST firefox-127.0.2-fr.xpi 635004 BLAKE2B 04d7c575d53527b098a1c1387b9331182d197cf4ffe157183e074e2129dd5709b490c056af819d596ab203072a048bbc8c6cec79a7b014f3d80c79428f6e3106 SHA512 7d456172b78fe2ab7708eaab0d1f197e95ef30b04265813557c12b138c284be76a6e78f11901024a7c0412831bde2f4fa9df66a44d0774c2d47bc97d47970a27 +DIST firefox-127.0.2-fy-NL.xpi 617744 BLAKE2B a2c9177611b12d11cbe87bb2cc3099be5a0b339938048d9058047085e64c6b426cfb668d2f9bc51aba951d1f6d1f09aa572b082e87d8d403d9ee31bbcc0ad4d2 SHA512 ffb266eac4df02de1269307e42042db41f950ac5757ef4a4b79f05069efb84bcfc00f6b7605abbbdccfe39ef4962316494aa630d37098db6e237a4136884a598 +DIST firefox-127.0.2-ga-IE.xpi 468832 BLAKE2B 7696d21ac2419875770f0050ba22cdb77303a5062f4dc71a82ec6dbfd50cc9ee25eaa06ebc6dc5785953e42f120fbb316df81b6b596ed3c72dbb69b450bc4177 SHA512 8d19d9494feb2acb3c310adb1860b9988ff91a1cf691f4491394e9472535787045b6b0dcffe97f00aa56371a7f15b4baa357b11e63bd26a0b773b340f68f4ead +DIST firefox-127.0.2-gd.xpi 594383 BLAKE2B bf678fe36233ac642d21a381b2dd819bf3e9a22bbcdf17b7404221657e9ff0a81a07d9d7f3fa134265ff471667f1428819756c13646f1c9be8c29e5d216fc722 SHA512 23cfa8484e7e97f4e88acb29c75cea3cef8cc96687b21d7ffb6b818222a12249fd3faf41c7ec7349f2e22860c062dff7eebffde40711d2e241ac36721daee6ba +DIST firefox-127.0.2-gl.xpi 601871 BLAKE2B 165fd9574a2404154032709d56ce98dc636fea53233fdee6446f1ecc3be90f2da8d3bb958aa6bc552e44e838c4aebe3da2853b824ddc12f1d85847351a9d4454 SHA512 66a0845743bdc272827e0b8ccd2b47d8bc15cfe69a6f13a41027d80589e1833cca0a7aba81e4c4b1395804b3fb9a5c70859de0ce0c721397750e39b69223474a +DIST firefox-127.0.2-gn.xpi 633216 BLAKE2B c720023594d1642a96cddc60c645cc9da55543269db9cb8a885585fb62dd4d88f9f56cacdde8a10bd08f370bd691ce3d2528df6a9f9987a8cd6ad06c943d4499 SHA512 68ac786265b14eff979bdeaa3cd54cbaf523d22013ce5d8e6e025dc84aa6bcc8f80d3f5437e63078569f950276d388a438e18d7c69cdd97a993af1b172624538 +DIST firefox-127.0.2-gu-IN.xpi 525159 BLAKE2B f5d800531dcd64701015bf2ad782c882bfc19f190292e453f650358a9d54eb1656ae1a85c4e26c7bcb9703890938dbd2da7a7d96f4af280aa6788ff76c55c0f3 SHA512 960762d09c38620010f179401de7aa648efaa7dab84ed6aab572c3c42f3fec40c456bd9bb1bf14545f34ad5b8cd018b00401096613d4610877ac4b9a2447efa3 +DIST firefox-127.0.2-he.xpi 626712 BLAKE2B afffff975a94d3cbd24bf8c548d2fbb3c72ffcae74eea9705b07512a9a6a751d372c031f7f7d395bf4c937f5a2d180afb942141e528ce74fcacdec0065c3a1c6 SHA512 92af5bf179af0aaa5a8fdd58a96e73ad815d9f7ec7442d09a15d918f3ed193d44a66ee2614d44fe09c332c09d70b647e555434633c9e5d33b0e6d30a7a08cfc8 +DIST firefox-127.0.2-hi-IN.xpi 563353 BLAKE2B 9ff065cbd37bbcad8394beb5b424c1389000da238f8483fc78970b32b6a3d766070fd2aa70e181079461b8871afd0e0fafd1283939a118d4c894deca44d12323 SHA512 0678fab31a20c98d64158a0501824c7371bc22279cbe4b195a376bb045712451eafbbf8bc123fcd117917d36dc4958bf6656b26ba4785e05b7bc940a169a860f +DIST firefox-127.0.2-hr.xpi 554576 BLAKE2B fb13353b6b0deee986fbc5629252b56e7e6b2aea0fd3d2eb45f10488973a164df989c60ce1651626b5e0ae827b7b724be16c3ddc043413d7307a70d403c90175 SHA512 58fad028af2d8b9c17c2aed96703a07fff45e797d7e1a7cfd10ded7b61eaa0c04b36fdab44e154e7920c7e30e79bec96a1702512f033b557f64cc34f43824281 +DIST firefox-127.0.2-hsb.xpi 640687 BLAKE2B 4a4fec20af37db4bf1d1e945088619c11ae98bac270d659bd96d39000a14ef1ee843a45f55786d86dd41d768984de4f173f3a3e4eb0c648aa18203117d94fbec SHA512 10ac939b71b611d6ff052df9288b7e0348d741cb528d06c927523f46413499aef43726f8327bfbbde423ce33309d31a34dbc5c05d3d835e385b461cd5df7007b +DIST firefox-127.0.2-hu.xpi 644724 BLAKE2B bcd603197ee1966a9ce15d39d7e9cbcc7885a7c90e000482d969e88773cea66d80cccf49f35bcee4ccf215f160562b0afd4bd04fe48260f6cb9f059405a171f5 SHA512 baff1ec2c87952299cd8d7780c19ff738ba730cd33e623c8c479dc07bcc2fe5e853e18f3c1ca697e743dddf4ab5e21d14a1cdaf7c5c5d91319b80b2f8cb3ed2e +DIST firefox-127.0.2-hy-AM.xpi 648986 BLAKE2B 83014678273ef12ab46165594c525277187776562d71c0e04e32776649e4b30d0b2dd8f01e940de2fd6be256137ba982c6a2ea8c4368b45f4d0c5ea75775e0dd SHA512 2f25a4a190eca19c750e2fb2632bc227e3511b46e8338fd692e54104e866b8d0e97c57d814116a3220469f9f9a510e51f1a3357a4dd0a84798129be8b51863f9 +DIST firefox-127.0.2-ia.xpi 605289 BLAKE2B 543e1ef07007cda243c6c7921f657e407082ebd4e85f55944b64c221ccd65c85e80ce2c017a076d4e569cb5700d14b254289853df474561e7e446ee7d8c85968 SHA512 1886ebe21c2c3b3a0edaa12aea403eaa6a85fa25f6561f06d8b6aa250a8e010c4bfcc743d5fe304fffd63916dc8855a5ec85fed61c2b0c663f8020fd9626bb0d +DIST firefox-127.0.2-id.xpi 572107 BLAKE2B be501c12b2410cd01e4c7c036aecab49a013dde75c0329dbd546f79e4f7acf2ddc37cf662fa374346bbf925777e968c76d0007d014b95dc922589c07bfcd9bcc SHA512 640b4cc656d7e816bc995418bdbd4680aac11192af29f923c669fbe6d8ee852ea8eefdd255251d83a02c873e5bf50766d0b94ce4f674d1f1b5cd14eb559b2f64 +DIST firefox-127.0.2-is.xpi 611945 BLAKE2B 589f70e6ad040719b901c9a6c74acd675438c6e2d1d43cff4761c9eecabd471cd7a3c93565b2afa635f76e84a2da87e06dc639a983ad2f7dc240bccc4f94d51d SHA512 1c8e31729d54e5a06e244dadcfaa686396776b90797d1f311c98ed779a8a730ab2b5f9ed3c41e89bc4a385e32d3af38df8e54feef1ba0feba6a8de304661330c +DIST firefox-127.0.2-it.xpi 561886 BLAKE2B ff4d47130ee0480b736e929ac3d8dbf3888fe8b084c6fdb977584fd873fb00064458c72cbc6e2014080ed2f92aee91524449dfdbab0023ecc9d2d2eb71d4957d SHA512 412d49cc1cd92a3c50c9e1e517afbf70afa1d1457b41d2065fc0dee19e48c4bdaa4d68b462fff0c09cd102b5548aa815dfc3eb96a44ac6ce7fe4c92a63e19831 +DIST firefox-127.0.2-ja.xpi 673185 BLAKE2B 616faee17face89955ebcbca3fd0c38074eb9c8cb8ae5ac6f0ec298b55a71a781740537d31a55b09f2d3176d886f9dc94b516a277f7d3dad601d279b7b44581c SHA512 e4a1dce545675f2ff979d9ce04675229307ddf06302f4686e31dbf9b9e952a6e6681b9b73835a3e86d21ad0957eeb0a57af41a0f00fbf067a5e311f0aaa533d4 +DIST firefox-127.0.2-ka.xpi 658460 BLAKE2B 1e1cbf2ffd7edb05636b0894840b7729bc5ed07c54aa97730ccf30abb07391d90dc61f03aba68ab1b3cd2258d25195e10a15016ccde628fd207df3a2c8a43328 SHA512 282d5bc341eaca423c0d6f4f503d4e82aa7346d4db54ab64d63efec3985e52b6b3ec2b648265ae6861b96e505aa22b27bc8eab81d036e6f3f1831a30d720e84f +DIST firefox-127.0.2-kab.xpi 602171 BLAKE2B d598af0433beef72504c005532b43511831b62437e62af54fb37af665e79f6aeefeac943a774bc3482ac058441ad25834531a43091a70e66387dbc90f0caa089 SHA512 93aab5f309d1ea6527029dcc414b2c335261605801cdbf6060699abe7fc11a533c67e391b64477b744c87815a4d9e8217dcf78950c707b12c05bb5f9353e27ee +DIST firefox-127.0.2-kk.xpi 701249 BLAKE2B c012acbee6861d3f439912f4b7c1aeea5db6e1c667b716233b8b2941749679e88ec27587ba06810e5c242cf44e1dc71b0cbef73b791b7f1b6f270f0d13829d27 SHA512 933239b89d0008d7e9152be4167d44d3486a99bb1369932cf0c2cb627328fc0f810d5f153373fec7f783668cb93feb2735840962502a291cde0c76d067dc1c72 +DIST firefox-127.0.2-km.xpi 523616 BLAKE2B adc95ed4f61ac2a24e23d5a77050385640ae1ffb6d0ad8719de85aaf6c667d35cfba28ada2a688827ee9973520a01dc23182330a5a0ee505a414745915e21111 SHA512 5f6165b1059a226fc240afee289113f627b2e0d447d80e2c1231236365fa643a37744436b373fb2e62c27f3aac1427e1061901e02223bfdd505e9a93ec038a63 +DIST firefox-127.0.2-kn.xpi 489100 BLAKE2B 252088f2756606cb8eec9b5702b250f490f97367a5b26d7a3c35adcb95977d12494a7518e8a494d7d123fae55c6ff5ab50f79b8102daf734e6463817eaf6fb23 SHA512 333266766c09e952cd7b5a7761a824956da983bbf55cead5f14583f49d4099255101b4b20a0573eacbf97ff075124ed6e15394b8508d7a2c494829c95452d375 +DIST firefox-127.0.2-ko.xpi 655332 BLAKE2B b174ef3b71ccd98705f0099a9d8a9daf2df4d315a9a8400452f6f255e4ae6fa9dba0edb46fcbb129bcb3bd11ec2ae3b4cd415ba3210de1ba62e666e3520499e3 SHA512 0b1c672782c15a3b44e764b5954abd83ffd6c778d3c7105de326861feb14ca65446c16411c9fe13c25d34a4613ce35013c1346dfae14ef18f9b70dd27f7b5003 +DIST firefox-127.0.2-lij.xpi 481948 BLAKE2B 9d2d797dda09480e0bf45d9129f15fdd94c81395597bfdb37c524ea24ef476ed51fb7d298fbef8cd5a2bff8b0a38d052cdeb33c3dab696a3b35e5983d9bdfb99 SHA512 6853cd544af90e32fa06613f59a27b580caa48646a69a274fe53697fb807c3b1d576b84e20585bc1349c8c0d03e9c9f86136e8ad7f7ee255d5b5307e23dc8296 +DIST firefox-127.0.2-lt.xpi 570444 BLAKE2B 6524068e5e2c936a6d82fb55c3387665cc842847b01448bdac5e634a48074fb7d63de55534dcef765c0819b9bac33f2ac527160194716bb6c6fe9846147f3609 SHA512 c714f1d403de3243b7c126c1944178d8244c4ebacff9f65833c6da7e4f426fe9f6fe167027eb54436616801b44b6bcfffb813a9e6fe02b122330938572692f90 +DIST firefox-127.0.2-lv.xpi 571665 BLAKE2B 7e447f4538e60fa05dc4c4d19ac40367f5f34a0b9d90901b07b450a94f0257492b00715200e3b6b85cc7972e4b007fc3d8331f8d3f652ed445954cbe40b335cc SHA512 61289ce06d7b40f3cc64c05c98aa1a3cf79f21f42c08f3dda07716b1448e8a8a0c005f59cfa808bc8c7f362c1399fea50e6130fb028627a3210463bf8b72cc18 +DIST firefox-127.0.2-mk.xpi 491109 BLAKE2B bc1c1db4419ad47e9ac9730b439424688c883e475f927c5671268cb81de37a8a3bf2771dfa80dfa67c6f109faa5ed2974cf410ebfb0f59d586052cc27f319401 SHA512 8fcae32a324e336d9966b63b29455a7d44bee75b2147433d7a63c4ca4a12a7546d1b40ad433114ec95bb006c4f0aef51305fee2a133e24875d78e07da2c6d798 +DIST firefox-127.0.2-mr.xpi 529928 BLAKE2B 5b22c69c09b104fb06864d1ec3698db42a6ec4514f125928d538189a4609f2c9453625ea0300a32d4cbf95205e50a39a544f72f4164d7f4a154f7e867f4d1169 SHA512 8c46bf44f606968f14d0fd62542d2115aad9c8221a7179c56a39fb716416094adf14f8e714c9a765058057cd25b9d8e5150ca4f91d04ba29a6e98285c62a1b77 +DIST firefox-127.0.2-ms.xpi 447570 BLAKE2B eb532ec99408b57058afa89095b9b83a5b8276fb2717794326d4e6a199ed656ae6f6a0244e30e4a29e6b4133cae40e609c9badd1bde18483e21f1f0a55bc5d7e SHA512 f4ee3966274156890c6c87d316f8eef628a78cf3fa4f37f12a74ccfa84e8ab5390c6da758df45ef90e985a069f139256eaf557b050e93e832b398ed38228596f +DIST firefox-127.0.2-my.xpi 516482 BLAKE2B 79892f75c81b973593e2fa5126fa861702d8612623b331c1c05856c86c8b5041ccb9587a1a7f6f6acc3d26269d5f39f8617f4b3a28e0a44662da543210b75084 SHA512 324244e8208859813d64ee578075a48cc4c9823154501ef1a3589f0c166be757dd470c563aa1ae7d8b46769a6d62c634c7b377859404d7c3e8b40a1cde596216 +DIST firefox-127.0.2-nb-NO.xpi 602855 BLAKE2B b385c75dd70ad2de9bca8cd9ca7f7a12e2519c5a3a8f52436cc4c74abb69176b9f1d353e951416bd72f6bb1bde9891cebb928dbd60b84db48d06c3a497f8b1dc SHA512 818598d7378d97f9cbff4b885660e950024c215bc9f6a669c5c8e7893fb3393e1bf6cb41d8e3feac142251d66796dd3174a4dfe968c7f80358c6cec63f231651 +DIST firefox-127.0.2-ne-NP.xpi 508759 BLAKE2B 8ebb4db29607220a96f7e81d539510830cf317936aae99c289ea35bdb77ef2aa493ab364c8ced059f5598186e68d6d6f069e41456c5131d06d0857c7d64df006 SHA512 5cf6ea3dbb0d82365beab3dfa6718014162b2901eb1ba8183106a99703004d0448b69fb49f6b140c8747b5ae00ff55b5b40fb15dbb60a89332f093d39c955898 +DIST firefox-127.0.2-nl.xpi 611454 BLAKE2B c9a18433a9f584b202cc5d3f1ac31ab77123b8682477f9874bee120ef5d5b34835fece3bab2eb9440860dfba1a925dc05dd295af1f14c851dbf54b0d0c075a88 SHA512 149f5c2d52fa2722b6f0d8f39796bc376d8ac0d65c07c61be43bdabfe135dc3056072bc3ffed433eae48ea9cc81ab8ea88759f8d2c4984a0ba337279d384b5e4 +DIST firefox-127.0.2-nn-NO.xpi 603355 BLAKE2B 67ac7a6dcaba44ec0190b7c8608b6edbae49fb9f6c61bda8dd9d1d55dc27e2e3cdbe57de79137bedc70dfe1f310dd192668be6166adb242e01ec8a72ce6ad623 SHA512 c22d95313aa51f705ad32255af4a43aefe645c6fd972b5d2e2f73e3369b1379c3ddb961823333323862b3eb8c5f2f12ebb16d9fdd82f39f8a992f955601f7b42 +DIST firefox-127.0.2-oc.xpi 608807 BLAKE2B 9df8419070a18ffe73e76b467e0b82fef9480e3d43fc5592376a96cf1a7c46a24fc7c59f0a7d99a1f291bb98548e3a55891daf32994e52f9f60fc407cfd1f62b SHA512 ee2cc4489784c7b26493a476730bc596b44cb6ec8703fa4e8c8066ed67e271ad23e720517b2577cced60e53031bb8db6fe2cc056f28f3956811216be0656df8a +DIST firefox-127.0.2-pa-IN.xpi 687023 BLAKE2B 773a89ac237620167b1475c980669f050d8bf1b70c7bddb6bd2198c1266d14fa8e4b966e19a66e6201c0f52f6e6767432279395a5baf72d4ad7a8ce9c69398ac SHA512 f21c8ab2a7bb86a3ae57a2552bfc16ea3842d6ac4b4773161c15f15512a2ef2dcc57a54544b36bd1ac1ecb550f86cf7ec092beae1b3fa261d541cbc9f2112a52 +DIST firefox-127.0.2-pl.xpi 631922 BLAKE2B 1f490bf716751765f37e947065c79e40bded9ba716bd0189bb59c25f36a0be83b6d9879a2ca1dbd873d9438eb0cb4189cd15f72d19a6d7afe2158c92f0fe5746 SHA512 c25788444c441b0ad0ba573a194fabe8922cc611586ee19a9c7854307fb609552152e05cb624c1d17cf9bcec1662ed9a463b102ecd4aa9265840a48f56f858f9 +DIST firefox-127.0.2-pt-BR.xpi 616113 BLAKE2B df9bfd077412f11ecc945ce17155f01a812ca3f4b5915231625fc8c2a85e6a2a73439c32dfdf5137fec208fc44608b3a4528dc2a38e59250c5834542df943b01 SHA512 d80533c25e2f6fb8e4ce428332ffabc24db70cba180fa8f99948f94c5fa018b51466049f27ef4b45c68d50b4e2fbc2a510c651433b84d24c0af5de2d7e2922bb +DIST firefox-127.0.2-pt-PT.xpi 622365 BLAKE2B 3a58c60a55ecb97079443c8b8f11c74e11b316e4cadd202b49c4a67d8c1ecca543295638e292bb843b9d53a8ae0f11746a507ccc13bc29e23a655b72962ca8b3 SHA512 6b3f52b3f597256263d6a31a9db4fe504405df80c77e33d4203438b31c1e4b5f0ea6b55bcfd088608b65efdf333d255dd51a6c62f6a6920542009d48d49a9277 +DIST firefox-127.0.2-rm.xpi 612109 BLAKE2B 037339854f561f18dad9b3f71ff29c93c62389a09bde63d038dc5432806d6793f89836a0b7a2b539fc1abc3e5da938841f4f56271c146507eeaaf1213076b6bf SHA512 b5e5ef4614f3c85eca0d95fc076ed6371ded5ee48186c58b209ae3d0386e4ec540c6fbbd479f7a4ac939e5687f51246d2d98c63ded1c791e3d429456e6743cef +DIST firefox-127.0.2-ro.xpi 547541 BLAKE2B 05bc2ce40ad88755d62e001e5fbfc2ecc3f8de44d4c9a66b05d2aa1f5f9bf9fa47942a070234a4bc17be222e50d9ac57a876b3c935edaf868116738cb2ce513c SHA512 69a69804d9e9555971e997c9c1a9979343b9e6d92d250f6056fb1a43cf9f319675bd8f9534f2b195d2b17aa896ec2f48bd0f4fece1cf9a953b80b89a242ea494 +DIST firefox-127.0.2-ru.xpi 713587 BLAKE2B d7e43eb431e9ccd825c369a5ae03da01d8cd3e75a75ec3976b6c077b8017f1399bd8f6898fff6dcd763b471b85d1e045734d2c87be3f5479ef71be25b2a820fd SHA512 9bc67383511f4e3772a8d0387bc6356c1bc6279378cf92459b3fed84027c063180f27565fd207ca87aba43b23d89b88985566041d54fa87b796dd72ff5f8c3b8 +DIST firefox-127.0.2-sco.xpi 509002 BLAKE2B 51c464944fb8b7bf1253d5283ac373b66a225936cc10d041f1a1afa7aa2945ad355ac76f4c7e0d486af5376f5a6168ab4fd7127adba7650d8beb48a64e2c290b SHA512 7f3f1f329b03011fd5e92ca83819878e52bcaa558d27fa8245fd97ba6a74263472dbc9e9e3b27a3d21243df7e97fa393cdabe5c3b7ec797dfea2365ef72caa1e +DIST firefox-127.0.2-si.xpi 603740 BLAKE2B f4e030dfa2a86adcbbcb5a012fd3b94ef771dd4ef04c84d7d92e9d0076444db69d82362836438179161cc76f30ea1fe28ff208d9eba9601ec36f0cc2e294da8d SHA512 052ed58c249b438855f0eec798bcd7168e2a4cea40f4cafc20c71d1420416dd4bffaeefab07e1468d2db138c0c8995512baa392f58fe650ff0292d2ddba4d205 +DIST firefox-127.0.2-sk.xpi 646183 BLAKE2B 066ee127bde4f408f04ece718dfdaa9e9787a9d531f172edbc645423375e122e86667c149225ef865463ed6506f861347229781d66a746706914f9400543a29d SHA512 c010b5ec4d21f751acc65fd11909a2d11204558c2ff3c599678dde58cf64525776905d1cd0ead10103e1a4ddaf8bf1e74a2bd187be79e661efdcfb8e76c78cb5 +DIST firefox-127.0.2-sl.xpi 612536 BLAKE2B 154f285a2c34c47ad645562c0739d7167d09dae0cc3310dea11c66531d01cd760328d487fc4e287660f6b8abd83ec5280eb496cef2d5ca55ed9a4a730f61a8c6 SHA512 74a722e53c9d79b7d6ac71bea7d20b178e8ae0444f4c237f9038ba984c9f1f83b4f1b413469f43f56b2dce04b5dd96c07717cb13f1cea15ae61548e9d14c1c81 +DIST firefox-127.0.2-son.xpi 414287 BLAKE2B ef3c9c5cbb49b995d4031173daa9b2671d31f8c1607454d728fbc9a48337584b507d39a5c3f763d471d0069d7d03c04a20156f849976dd1e3f1bc1ec060a48fb SHA512 a127c147748f1829537707bafd0803ba0be05500eac44a310a035c3600e59b354249f82d03e1414f72c943b682deddbaccf38741791809c6e6fcb6a2535a1e88 +DIST firefox-127.0.2-sq.xpi 632514 BLAKE2B 57ed4165eb1c50706d4daa426b9561bf55114323c57f252a5cb10f24d12cae7929a663431ec815ab70bec7271e2c99ce42b1d33503d00f4335ad829bdf072a10 SHA512 b26dbcb8ffb1f7b346f5afe1b2a96bef700b0274c9423fccce3a6f9a72870740b422e60ca153a42fdd5dd550ea21348be457bafe11e16702e9013c71ad76b12c +DIST firefox-127.0.2-sr.xpi 637089 BLAKE2B 0906ed4130759f223f0c9197ccefee7ee1a18e97adb2e3f95a37dd68e324f965571b2d465a6540241f094f713775528316cc9e20e92a16c6c0b3b93b58046163 SHA512 7f2ba2683e858264729389e1f87db5cc2facd712155cfba0b742e71977e40bd92aec35e85ba97cc089da1533d2a95aec727eee059db2b4e23cc7dc2085ca0ea9 +DIST firefox-127.0.2-sv-SE.xpi 613192 BLAKE2B 62fe88ce76e60a37d5d17d41aae8115fbd58f5e19f12a391dd12504d78b748d5f656eb72f2457ed0d2b4c5a423710333230a5cac7b811efc3b9bbf9425fc0e23 SHA512 0a3fc99b45702c4ecc38657c557681edaa5941d43cd2946310ebdc997306ba5d0566742c7bbdda44f1d52e9ea2b2d7d378a2e2ceb26cf5927d4f36b8cb5afeea +DIST firefox-127.0.2-ta.xpi 505373 BLAKE2B 6e14af1ef396c63bc689033c1b89dd00019338c6b065f6e858a337ba0e38f5d08802fd8c85d1abc8da5ad95d970a9ff96f05076b029f482e246ab48ffbdf00ea SHA512 6f6096e2a0ca3e82649c97240052235d480456f32d38a810b0d5d7ac8fe4f5cd2406e44b4d92797154940213200024a1f6eb971b7dce12617f180f16998ecac6 +DIST firefox-127.0.2-te.xpi 558857 BLAKE2B 8492c705d927f9bfa27a41097f46b8f2bbe6532940360ce4e878fa117643bc6d5e82616fbd401a083810ab99325f821fdc670185181f2a88f9b03dd425d0ef08 SHA512 d5269e7b39125d492e13f4588037e970a39838d527483fa3e043f8087772cebbbd788f5242ea66db6825995c028bf1db2abe4abc28cabf42362cba5fe813ae41 +DIST firefox-127.0.2-th.xpi 689043 BLAKE2B d6175e8a39280a990dd5e2f598ccf7c920b9abf770ba68c7f87cd1c129b0e426d91155f7939c87716bd1921a58f3f411d0ed051e210cca19be9c275945fbf61c SHA512 1535857c7c226c8fcbe4b0d168953ee79868ddc590b0e52b70806e69aa0e9e9dca975062cea8f7028d49c1d6168ba0e4e0e4312e008c7813ffa3055ede341a06 +DIST firefox-127.0.2-tl.xpi 532003 BLAKE2B 9cc051e3025efe3b0a21bfa77cf9897ec5348a88be2481ad275c0ee1ee9756ff2d42bbd73aa5050ab0c5b540ccbb1f9242e1d38168098be8d139bf03475209dd SHA512 43611d4e87c7b5e5a5d4fe7ed505b08e5f768e340a01f0aa83e923f07d2bac9e8563981d8e5c28a3d52187a74f517a3d49c29aea57c6c9981f9943e54c940b0a +DIST firefox-127.0.2-tr.xpi 626623 BLAKE2B d52a002ea0eb3dcd6097470ea7aef86c75cbaa7a98c0ff123ced4aa9dcbd7cbe6173f83350d48311d3f3f25eb921f64362fa2a9cb178010ee7d92e162bd1ba0a SHA512 96fd86f48fda7cdd5f6f438ae5541d4a500169ff9957a47102ceb751fc2d89ad885c9fd0648a3e0fc9c46cfe1763763822e11ee4932726f3c2ef0690fed1be7f +DIST firefox-127.0.2-trs.xpi 501856 BLAKE2B 558bab47c71966a918c263834477838901ffd7650ad4af63731b44631f26b8f84cb5f26c16ffdb040657dfc39a7704453d66d93532a8ce546556379c30df8849 SHA512 5ad75696118ff20e7089ed1ba109c04307898533e3105529535e7243a53642b4b5ae9407b0ca0ddb2e64d5b9be871a20d740a7be58012ec0f6693194c5d95c8d +DIST firefox-127.0.2-uk.xpi 705155 BLAKE2B 11287c54554accce94129cbbf30f987ec3f3dfa3430eea7efeb36b79a92d849aa548bb97cb2db80b9ac91c76761a0c1b906dff856b69be514d408ba81391565c SHA512 0f5c9a05e82a765e7f36fdc3d99dc2c37593efce24ecfa2e5f31c69500b4c8fdb80629bd1f3b504437ca961a49a111a5dc404a8ef076420dc92036b9dbd47c17 +DIST firefox-127.0.2-ur.xpi 558321 BLAKE2B 0993ac2acdba4798d3f32ab68b52a57151d3ae34db7e77ae792ed4adb3717b5d816116b3718348434a4023b862a5fa31cf351902cb7537e0e00183f6fa848e86 SHA512 2c131c6220f62655c33f7b6831c4dea66ba1dae0a4602761ae2ff5284559093aeaadcc40030d996c995ac8150735fa8166bf39c238d98b675fb3560766d266a0 +DIST firefox-127.0.2-uz.xpi 476583 BLAKE2B ec8571499e1813b37030cff7b4b06ce4cc2180f65a3dd6fb6b1936b85eff56dc5a9396cdff034fcd96dc351763ef02ce2b3e03a1a7711606281c3fdcb6e7b4c5 SHA512 de62f38157aa6ecdd75659f2fc660c3466980ca633fb45705b92830cc4951a5d24e68dd50e06b15a99610dc0d00e05dc0b59fd44befdb0a636107b93f5de68b0 +DIST firefox-127.0.2-vi.xpi 650522 BLAKE2B b203152c7803a4d87465a3bad14a4a7a2b6e6c5745fae6e514fcc7467223a165bda3f5f0568600fce1ea38c650bbf9191b77aa8831a997127d945f50a169897c SHA512 45fcf4ca1e02495f6fec520d0dc095fce55e208e9805c641b80e600092a7b117be965e73990042ac7a8fffc421c43309f0d8875389d6a281321f0aece608f53a +DIST firefox-127.0.2-xh.xpi 415023 BLAKE2B 09ad510ea9a674f6f0aad08fcdd50dbe5196ec119d7a51fc8fcc02cd2358ce1df12dd46b4b23dc3a927a99a3727ee9159c44815e4ce074ba83a82bf2a0421b41 SHA512 a226b56517a49d29d74da8dba3d8e7edef132b970bc7f41f489973b26ba63961e2defc5e6d765b1f69dca05e07729ac49e953aeb195a5887fbd32fcf1d053b73 +DIST firefox-127.0.2-zh-CN.xpi 650833 BLAKE2B 28df31392be1acb5a73af40b1dd8744056cd9f5a179a5f95c31a16ec9f0c2a97deb52a927b1322ee1118691cfec05e35105953938a0c1ae527994805f4401f24 SHA512 61bc371d4d0e343f19a48a2ed473575176bdbd2b084ee464253e2958eb08673af9fefe3709dbad127254e8991a813d63de6156f60b773a0f6546a82728401595 +DIST firefox-127.0.2-zh-TW.xpi 653089 BLAKE2B f7d6c661cc6f7bdc068cb9b00991f164e3b6b123cef5af553c6749de3ce3eb6609a71115627532093f7450b08f6df5b5726903e70f61279b6292004918f9e5cf SHA512 3a8a3c3979db17b3a56fdb2049fb1a437b8c881dc6587affac0a24f936ab53845672da3cdb452e4831acd2ec080f08dd4fdb6f40bb8edbffbb2d2ff688eee96b DIST firefox-bin_i686-115.12.0.tar.bz2 84276723 BLAKE2B acf07a4d6d6fc258d343932a1a4751aebc071c2d74e1db197d7678ded8806565a80c9a7df3d5c0d125445db8f1044d8d5c0e3c4b5cee2b3e4ccf1236a5c54d80 SHA512 9198bb399c16de5f50c363ad52d09ce378faef4d93662b1cd3307d2e43b1714277aef3a89c5ce7264982048dc2e5aba0033bbe5d85b21fceb309960c5ab94ba9 DIST firefox-bin_i686-127.0.1.tar.bz2 89184908 BLAKE2B ef03efa9b10eb38b82731f4a05d209587abd5fc6a50fe4797c1c1a8d3b7b154d2cd18d31ea5a4d3ea454821b6ffa375db90c1bf4ce41ec1acf04bb407e2796d3 SHA512 4167eccf804cbf9a95bde647c8e5adc4e6deae95467f14489d3330259868bf6b6af5ba6c24d9b2f4831fd5dd4065e93711fd2527e52e5298fee1a0376581b6d9 +DIST firefox-bin_i686-127.0.2.tar.bz2 89237658 BLAKE2B 7a39a4c57701171153da3283ece3ed40b50f1a6fa56ef4e687add895fa048769a658f5dd0bfe08251d9499b1fcf77488d882d2f451dbcbfdefcc7d39964ade88 SHA512 cbfa58a33986143ce473681241af3c55c646f259b830755961e68d2257b83d53a9a1c6747cbcbba123782085aec800090681daaca6bb886b1e3087a7cf8377a9 DIST firefox-bin_x86_64-115.12.0.tar.bz2 80371587 BLAKE2B b856f11b53084a53f35eddf25626fca45b5ce5636ebfc8fbf91289bc790402b8276333dc6778057900f7e38603330c358ce3df597b1af6f26229bdef0ced37be SHA512 cc76734016ca82fe0b20375bc9a82ced38f0498aeeaeb5a35202595260eb6bc6f7dfbc08bd4dbb985c68c61d1a4ce3aeeeaf58d6b6cd796b9e2f3db7b5691ca1 DIST firefox-bin_x86_64-127.0.1.tar.bz2 87375090 BLAKE2B e427d52a71733c9ec816e4e984035931b5176cf2042fc3dcf5e2dffab2639e1c6484181bd0cbbd4310701603b574262abd66b2ca9ac9cee09ef101ab5222ebf7 SHA512 8f802b9171008ef15eab0c334f884deb3552727be97f15d4ec52cd3e0281a2fc006f169157dcc7e6b28c513dfdd0d5c8fe58e10bf6523ebcd8d22fe867e2a67e +DIST firefox-bin_x86_64-127.0.2.tar.bz2 87388109 BLAKE2B 3364abe5c9ac191e18a0cdbd5283593220a0576fd8f9abb9908af0962bf904b5ae06327e6947357a00022de4044eabfe1a56b969c0d71b01290480032b1e3b52 SHA512 cfbb5c628ba676a37592125f3f94b80b42b75a6adf4b4c905b01598466c218a1d9c04b894ad1aa0452bea5d1a8ebc62151545c1048d79eba67d9df26414958da EBUILD firefox-bin-115.12.0.ebuild 10934 BLAKE2B ba31c56b7abf9e2089563a33054a5ca6caf1e9cc92a7837600f0af25f8768a773ae2e2cbd2049964847ec2d5c93cedfeeed7e3a8f93704d9e8f8c8360ca581d1 SHA512 41e2a60e4a0bf1bef6f591bd0ff34a9ccadf7c85c94a23d0605230dd2ed35d01b54ea25534fde940766c7f52be5444d493bc7280dfdaaf2a7bc7f3d214d554c4 EBUILD firefox-bin-127.0.1.ebuild 10770 BLAKE2B c1cfb3d7e0810c354897e6c89612c3ba36d710f894211e89bccb91beb929c322a98e073be4c3d897da5d257214eee05bf3b5b1a7f3837440522fc21db5f94fce SHA512 abfa565783903bd65a3399098a6d5082e1d9a5535008ecc00f2f4656a1eda01430e98922d98b242cd42357458341a22056dd5e7b00fcc8e0afc3bc2958aa0dd2 +EBUILD firefox-bin-127.0.2.ebuild 10770 BLAKE2B c1cfb3d7e0810c354897e6c89612c3ba36d710f894211e89bccb91beb929c322a98e073be4c3d897da5d257214eee05bf3b5b1a7f3837440522fc21db5f94fce SHA512 abfa565783903bd65a3399098a6d5082e1d9a5535008ecc00f2f4656a1eda01430e98922d98b242cd42357458341a22056dd5e7b00fcc8e0afc3bc2958aa0dd2 MISC metadata.xml 520 BLAKE2B 4b540dd2d9ac3840061de8a73117f2859db156944826d22c1f74cbc0c35f6d305aa10ff45708eab016df725cfc741c99dec46f0078a29162982431892e86e477 SHA512 0c7183e35a4b0ca2ddd092786ebdeb5b41a431adf918f0c2e541a5ef1c235066586a46a50fa29c25e5a522930824f8662fa2fa7eed8c3895f74d85bef93cecb4 diff --git a/www-client/firefox-bin/firefox-bin-127.0.2.ebuild b/www-client/firefox-bin/firefox-bin-127.0.2.ebuild new file mode 100644 index 000000000000..91c94d7a296d --- /dev/null +++ b/www-client/firefox-bin/firefox-bin-127.0.2.ebuild @@ -0,0 +1,366 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +MOZ_ESR= + +MOZ_PV=${PV} +MOZ_PV_SUFFIX= +if [[ ${PV} =~ (_(alpha|beta|rc).*)$ ]] ; then + MOZ_PV_SUFFIX=${BASH_REMATCH[1]} + + # Convert the ebuild version to the upstream Mozilla version + MOZ_PV="${MOZ_PV/_alpha/a}" # Handle alpha for SRC_URI + MOZ_PV="${MOZ_PV/_beta/b}" # Handle beta for SRC_URI + MOZ_PV="${MOZ_PV%%_rc*}" # Handle rc for SRC_URI +fi + +if [[ -n ${MOZ_ESR} ]] ; then + # ESR releases have slightly different version numbers + MOZ_PV="${MOZ_PV}esr" +fi + +MOZ_PN="${PN%-bin}" +MOZ_P="${MOZ_PN}-${MOZ_PV}" +MOZ_PV_DISTFILES="${MOZ_PV}${MOZ_PV_SUFFIX}" +MOZ_P_DISTFILES="${MOZ_PN}-${MOZ_PV_DISTFILES}" + +inherit desktop linux-info optfeature pax-utils xdg + +MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/releases/${MOZ_PV}" + +SRC_URI="amd64? ( ${MOZ_SRC_BASE_URI}/linux-x86_64/en-US/${MOZ_P}.tar.bz2 -> ${PN}_x86_64-${PV}.tar.bz2 ) + x86? ( ${MOZ_SRC_BASE_URI}/linux-i686/en-US/${MOZ_P}.tar.bz2 -> ${PN}_i686-${PV}.tar.bz2 )" + +DESCRIPTION="Firefox Web Browser" +HOMEPAGE="https://www.mozilla.com/firefox" + +KEYWORDS="-* amd64 x86" +SLOT="rapid" +LICENSE="MPL-2.0 GPL-2 LGPL-2.1" +IUSE="+alsa +ffmpeg +gmp-autoupdate +pulseaudio selinux wayland" + +RESTRICT="strip" + +BDEPEND="app-arch/unzip" +RDEPEND="${DEPEND} + !www-client/firefox-bin:0 + !www-client/firefox-bin:esr + >=app-accessibility/at-spi2-core-2.46.0:2 + >=dev-libs/glib-2.26:2 + media-libs/alsa-lib + media-libs/fontconfig + >=media-libs/freetype-2.4.10 + sys-apps/dbus + virtual/freedesktop-icon-theme + >=x11-libs/cairo-1.10[X] + x11-libs/gdk-pixbuf:2 + >=x11-libs/gtk+-3.11:3[X,wayland?] + x11-libs/libX11 + x11-libs/libXcomposite + x11-libs/libXcursor + x11-libs/libXdamage + x11-libs/libXext + x11-libs/libXfixes + x11-libs/libXi + x11-libs/libXrandr + x11-libs/libXrender + x11-libs/libxcb + >=x11-libs/pango-1.22.0 + alsa? ( + !pulseaudio? ( media-sound/apulse ) + ) + ffmpeg? ( media-video/ffmpeg ) + pulseaudio? ( media-libs/libpulse ) + selinux? ( sec-policy/selinux-mozilla ) +" + +QA_PREBUILT="opt/${MOZ_PN}/*" + +# Allow MOZ_GMP_PLUGIN_LIST to be set in an eclass or +# overridden in the enviromnent (advanced hackers only) +if [[ -z "${MOZ_GMP_PLUGIN_LIST+set}" ]] ; then + MOZ_GMP_PLUGIN_LIST=( gmp-gmpopenh264 gmp-widevinecdm ) +fi + +MOZ_LANGS=( + ach af an ar ast az be bg bn br bs ca-valencia ca cak cs cy + da de dsb el en-CA en-GB en-US eo es-AR es-CL es-ES es-MX et eu + fa ff fi fr fy-NL ga-IE gd gl gn gu-IN he hi-IN hr hsb hu hy-AM + ia id is it ja ka kab kk km kn ko lij lt lv mk mr ms my + nb-NO ne-NP nl nn-NO oc pa-IN pl pt-BR pt-PT rm ro ru sco + si sk sl son sq sr sv-SE ta te th tl tr trs uk ur uz vi + xh zh-CN zh-TW +) + +mozilla_set_globals() { + # https://bugs.gentoo.org/587334 + local MOZ_TOO_REGIONALIZED_FOR_L10N=( + fy-NL ga-IE gu-IN hi-IN hy-AM nb-NO ne-NP nn-NO pa-IN sv-SE + ) + + local lang xflag + for lang in "${MOZ_LANGS[@]}" ; do + # en and en_US are handled internally + if [[ ${lang} == en ]] || [[ ${lang} == en-US ]] ; then + continue + fi + + # strip region subtag if $lang is in the list + if has ${lang} "${MOZ_TOO_REGIONALIZED_FOR_L10N[@]}" ; then + xflag=${lang%%-*} + else + xflag=${lang} + fi + + SRC_URI+=" l10n_${xflag/[_@]/-}? (" + SRC_URI+=" ${MOZ_SRC_BASE_URI}/linux-x86_64/xpi/${lang}.xpi -> ${MOZ_P_DISTFILES}-${lang}.xpi" + SRC_URI+=" )" + IUSE+=" l10n_${xflag/[_@]/-}" + done +} +mozilla_set_globals + +moz_install_xpi() { + debug-print-function ${FUNCNAME} "$@" + + if [[ ${#} -lt 2 ]] ; then + die "${FUNCNAME} requires at least two arguments" + fi + + local DESTDIR=${1} + shift + + insinto "${DESTDIR}" + + local emid xpi_file xpi_tmp_dir + for xpi_file in "${@}" ; do + emid= + xpi_tmp_dir=$(mktemp -d --tmpdir="${T}") + + # Unpack XPI + unzip -qq "${xpi_file}" -d "${xpi_tmp_dir}" || die + + # Determine extension ID + if [[ -f "${xpi_tmp_dir}/install.rdf" ]] ; then + emid=$(sed -n -e '/install-manifest/,$ { /em:id/!d; s/.*[\">]\([^\"<>]*\)[\"<].*/\1/; p; q }' "${xpi_tmp_dir}/install.rdf") + [[ -z "${emid}" ]] && die "failed to determine extension id from install.rdf" + elif [[ -f "${xpi_tmp_dir}/manifest.json" ]] ; then + emid=$(sed -n -e 's/.*"id": "\([^"]*\)".*/\1/p' "${xpi_tmp_dir}/manifest.json") + [[ -z "${emid}" ]] && die "failed to determine extension id from manifest.json" + else + die "failed to determine extension id" + fi + + einfo "Installing ${emid}.xpi into ${ED}${DESTDIR} ..." + newins "${xpi_file}" "${emid}.xpi" + done +} + +pkg_setup() { + CONFIG_CHECK="~SECCOMP" + WARNING_SECCOMP="CONFIG_SECCOMP not set! This system will be unable to play DRM-protected content." + + linux-info_pkg_setup +} + +src_unpack() { + local _lp_dir="${WORKDIR}/language_packs" + local _src_file + + mkdir "${S}" || die + + if [[ ! -d "${_lp_dir}" ]] ; then + mkdir "${_lp_dir}" || die + fi + + for _src_file in ${A} ; do + if [[ ${_src_file} == *.xpi ]]; then + cp "${DISTDIR}/${_src_file}" "${_lp_dir}" || die "Failed to copy '${_src_file}' to '${_lp_dir}'!" + else + MY_SRC_FILE=${_src_file} + fi + done +} + +src_install() { + # Set MOZILLA_FIVE_HOME + local MOZILLA_FIVE_HOME="/opt/${MOZ_PN}" + + dodir /opt + pushd "${ED}"/opt &>/dev/null || die + unpack "${MY_SRC_FILE}" + popd &>/dev/null || die + + pax-mark m \ + "${ED}${MOZILLA_FIVE_HOME}"/${MOZ_PN} \ + "${ED}${MOZILLA_FIVE_HOME}"/${MOZ_PN}-bin \ + "${ED}${MOZILLA_FIVE_HOME}"/plugin-container + + # Install policy (currently only used to disable application updates) + insinto "${MOZILLA_FIVE_HOME}/distribution" + newins "${FILESDIR}"/disable-auto-update.policy.json policies.json + + # Install system-wide preferences + local PREFS_DIR="${MOZILLA_FIVE_HOME}/browser/defaults/preferences" + insinto "${PREFS_DIR}" + newins "${FILESDIR}"/gentoo-default-prefs.js all-gentoo.js + + local GENTOO_PREFS="${ED}${PREFS_DIR}/all-gentoo.js" + + if ! use gmp-autoupdate ; then + local plugin + for plugin in "${MOZ_GMP_PLUGIN_LIST[@]}" ; do + einfo "Disabling auto-update for ${plugin} plugin ..." + cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to disable autoupdate for ${plugin} media plugin" + pref("media.${plugin}.autoupdate", false); + EOF + done + fi + + # Install language packs + local langpacks=( $(find "${WORKDIR}/language_packs" -type f -name '*.xpi') ) + if [[ -n "${langpacks}" ]] ; then + moz_install_xpi "${MOZILLA_FIVE_HOME}/distribution/extensions" "${langpacks[@]}" + fi + + # Install icons + local icon_srcdir="${ED}/${MOZILLA_FIVE_HOME}/browser/chrome/icons/default" + local icon_symbolic_file="${FILESDIR}/firefox-symbolic.svg" + + insinto /usr/share/icons/hicolor/symbolic/apps + newins "${icon_symbolic_file}" ${PN}-symbolic.svg + + local icon size + for icon in "${icon_srcdir}"/default*.png ; do + size=${icon%.png} + size=${size##*/default} + + if [[ ${size} -eq 48 ]] ; then + newicon "${icon}" ${PN}.png + fi + + newicon -s ${size} "${icon}" ${PN}.png + done + + # Install menu + local app_name="Mozilla ${MOZ_PN^} (bin)" + local desktop_file="${FILESDIR}/${PN}-r3.desktop" + local desktop_filename="${PN}.desktop" + local exec_command="${PN}" + local icon="${PN}" + local use_wayland="false" + + if use wayland ; then + use_wayland="true" + fi + + cp "${desktop_file}" "${WORKDIR}/${PN}.desktop-template" || die + + # Add apulse support through our wrapper shell launcher, patchelf-method broken since 119.0. + # See bgo#916230 + local apulselib= + if use alsa && ! use pulseaudio ; then + apulselib="${EPREFIX}/usr/$(get_libdir)/apulse" + fi + + sed -i \ + -e "s:@NAME@:${app_name}:" \ + -e "s:@EXEC@:${exec_command}:" \ + -e "s:@ICON@:${icon}:" \ + "${WORKDIR}/${PN}.desktop-template" \ + || die + + newmenu "${WORKDIR}/${PN}.desktop-template" "${desktop_filename}" + + rm "${WORKDIR}/${PN}.desktop-template" || die + + # Install wrapper script + [[ -f "${ED}/usr/bin/${PN}" ]] && rm "${ED}/usr/bin/${PN}" + newbin "${FILESDIR}/${PN}-r1.sh" ${PN} + + # Update wrapper + sed -i \ + -e "s:@PREFIX@:${EPREFIX}/usr:" \ + -e "s:@MOZ_FIVE_HOME@:${EPREFIX}${MOZILLA_FIVE_HOME}:" \ + -e "s:@APULSELIB_DIR@:${apulselib}:" \ + -e "s:@DEFAULT_WAYLAND@:${use_wayland}:" \ + "${ED}/usr/bin/${PN}" \ + || die +} + +pkg_postinst() { + xdg_pkg_postinst + + if ! use gmp-autoupdate ; then + elog "USE='-gmp-autoupdate' has disabled the following plugins from updating or" + elog "installing into new profiles:" + local plugin + for plugin in "${MOZ_GMP_PLUGIN_LIST[@]}" ; do + elog "\t ${plugin}" + done + elog + fi + + use ffmpeg || ewarn "USE=-ffmpeg : HTML5 video will not render without media-video/ffmpeg installed" + + local show_doh_information show_normandy_information show_shortcut_information + + if [[ -z "${REPLACING_VERSIONS}" ]] ; then + # New install; Tell user that DoH is disabled by default + show_doh_information=yes + show_normandy_information=yes + show_shortcut_information=no + else + local replacing_version + for replacing_version in ${REPLACING_VERSIONS} ; do + if ver_test "${replacing_version}" -lt 91.0 ; then + # Tell user that we no longer install a shortcut + # per supported display protocol + show_shortcut_information=yes + fi + done + fi + + if [[ -n "${show_doh_information}" ]] ; then + elog + elog "Note regarding Trusted Recursive Resolver aka DNS-over-HTTPS (DoH):" + elog "Due to privacy concerns (encrypting DNS might be a good thing, sending all" + elog "DNS traffic to Cloudflare by default is not a good idea and applications" + elog "should respect OS configured settings), \"network.trr.mode\" was set to 5" + elog "(\"Off by choice\") by default." + elog "You can enable DNS-over-HTTPS in ${PN^}'s preferences." + fi + + # bug 713782 + if [[ -n "${show_normandy_information}" ]] ; then + elog + elog "Upstream operates a service named Normandy which allows Mozilla to" + elog "push changes for default settings or even install new add-ons remotely." + elog "While this can be useful to address problems like 'Armagadd-on 2.0' or" + elog "revert previous decisions to disable TLS 1.0/1.1, privacy and security" + elog "concerns prevail, which is why we have switched off the use of this" + elog "service by default." + elog + elog "To re-enable this service set" + elog + elog " app.normandy.enabled=true" + elog + elog "in about:config." + fi + + if [[ -n "${show_shortcut_information}" ]] ; then + elog + elog "Since firefox-91.0 we no longer install multiple shortcuts for" + elog "each supported display protocol. Instead we will only install" + elog "one generic Mozilla Firefox shortcut." + elog "If you still want to be able to select between running Mozilla Firefox" + elog "on X11 or Wayland, you have to re-create these shortcuts on your own." + fi + + optfeature_header "Optional programs for extra features:" + optfeature "speech syntesis (text-to-speech) support" app-accessibility/speech-dispatcher + optfeature "fallback mouse cursor theme e.g. on WMs" gnome-base/gsettings-desktop-schemas + optfeature "desktop notifications" x11-libs/libnotify +} diff --git a/www-client/firefox/Manifest b/www-client/firefox/Manifest index 105d3643f7e3..7d8b58cc4bfd 100644 --- a/www-client/firefox/Manifest +++ b/www-client/firefox/Manifest @@ -510,10 +510,111 @@ DIST firefox-127.0.1-xh.xpi 415013 BLAKE2B b91113b53ae38fa5a85ce322f1afaa6188f41 DIST firefox-127.0.1-zh-CN.xpi 650827 BLAKE2B c19b8ce5a69d58a4da1dd002cc841f2bf6823cec3dcf4ad3eee04c6f5547f95d6491c579565ca59e82c850a0cc6df60a7b18996af80538750f3f2fb25baec3ea SHA512 769a3eef576f9d78461c8bf900ca974dcf3d5043a6769297a0c3d2309d38e62214428f24eaecc2f2213dc08c7c50a1ee70de7ffef4b8997f51ed9080c76fe7f2 DIST firefox-127.0.1-zh-TW.xpi 653082 BLAKE2B e031aaf61fff9b0adc7749c78333d464a076b59ac5afdf8a9289d62c82aaff2d7ee4c4a6b6c828e0db0a6e23be98ad32e81defd57cb879be9d16022060fb9147 SHA512 0a1358e57daaad039f164ff9f00376c8023287bfb8dc8abbd4b908a47fba619028ecfb39e2864be22d34141a3d4aea1e21249706180a6a3a582104105a2f7ac4 DIST firefox-127.0.1.source.tar.xz 568595988 BLAKE2B 1399d5e7a364aba0a2c998fb12a5b52807426d265a8dc39fea910483319b3530f257e48aeac0daab930d79cedb40a1ca6a1211a7ae7e78a3d9bfe90dfdf01144 SHA512 13df770a89b703033601cab56892a2fc62427521936b366893008e68cd1f48d7b18917a3cede23764d024208819037ad0d28c2d4b73b99fdc204cbd53bb1297e +DIST firefox-127.0.2-ach.xpi 461920 BLAKE2B 8978e6f06bf46bb473a5989cfeb9089863e9c92c3b93a0883ed2d0c577d24c717a49f5d35c1dd848c66076be3f0361ac917364716ea900156869ce3e21b92825 SHA512 f08f93f0b9c9704a77a00f1b9a83b867f82b144adb39d64ec0d4a3a5f78cf55b67b7eb3ce19c34eaf09357f8bdd7845a610937f70a2f856081ad468c446910c7 +DIST firefox-127.0.2-af.xpi 415365 BLAKE2B 383de6f37f70b7dd8791df80de220ad2b8db64f5c76bec9b5e8cf7064139acd08d4ae7000a28dfe14f648c8e8c20dd1bb8ac1c254ea9cfcf84c9850278aa6238 SHA512 84eb2d15fc2b1de6cff3dd7498277863734e60e29e013e72207b32fc230e80d9b417d2a0e0f5a1e5f2a43c2a98b90a47535bfc0f25a1e7966634c258927611d9 +DIST firefox-127.0.2-an.xpi 503728 BLAKE2B af62fb2c3862a9348d5ada2f21072d24b0800337a462c94d080a8ce112a01f28eaff40cd12a2b683ca44ffb4ed1de8b6bc9d0967774baf8b9bcc899b420e8134 SHA512 291e2c34b964f0d8986d2c568eac364e4d2a8e1218e2db71019ccf281b2f03474ebd90e3702fc7212be2fb435126eb635eec4b8871cb9f772f95e7c6c46df2b1 +DIST firefox-127.0.2-ar.xpi 607962 BLAKE2B 2777e90135a5b542688887b434838a5f9f123e626becaec6f274aeca78ff071c85501663115f99eab24e3ddfff04ba05d3332e6632600b97ec4366793cc290b7 SHA512 8dbcbed17479ad293d3e5c4d7f91e02fc95f121dc2be0b4e5f1532a270c3a45522774f85ea31454ca3e5fdb8456b230e0fa314a186134355503954ecfed0a1db +DIST firefox-127.0.2-ast.xpi 494030 BLAKE2B 907feaecdfca0d282314669243bf12562ea45469b1fc9fee715461d3f698f0cb394dd9d8c35a90e5e3ed4d20a3629e74e14a05027c72205e3ec47d5f6b67178f SHA512 ad22d806c4584cc8769c21a04fff2457c7d2443d1a8fc7339876c1e10ec8e548d1dd898c017b2eff4759243930d6b1c6f1268166a6802e1faf6b6f67fe654db1 +DIST firefox-127.0.2-az.xpi 488590 BLAKE2B e2f329f8c5f15efc4b1cdeeb2fd99710707c97b77c00172b5fc985f80fe65ddaea26ac92dfae264ba50e9b22c3ef87c294c7c76ed2b44e98f75db03174ad3872 SHA512 b6c82f95b8fdb9b7e393fedebc04528c36b19fcb74452a12812a408d6c9f4ef53facc71d3fd9c55aae960f98b3c831be4b52b7c6d9679f6bd0a61501e00889ab +DIST firefox-127.0.2-be.xpi 708721 BLAKE2B 9131e7cdbe4f9d087da31b4513cab3aaaff521983cdd89fd22704dd4006d6b3f2615cc9a70f594b432f7102ecc84420ab944b9f61b28af52769ab6a8ceed91d2 SHA512 b2521ae6f1c354b88c7ddde11e6f45927c40c374713f07466e649833045b5231b24861000eee27176c1dc043d2209f274a8cd788094acfbdafcbad96a9806f01 +DIST firefox-127.0.2-bg.xpi 601649 BLAKE2B e1f797b9a6b2d8b694384216b06b980fed8bbd379c5e13a4a29162ae1f517f5ac18227c705d32baddd883cd3246e8aa182d51599d924e4d48fa40d777dfc21d3 SHA512 f77319e46f237f208c566c186c0b8d4a70dea15c0c487ab77c41bb22e2459e59a8b1528bc93be36fc93c80781015626bd9a56a2d3964c38d08569612cf480469 +DIST firefox-127.0.2-bn.xpi 579342 BLAKE2B ae74def080fc4879d840cd7526bc199e66e27666bd7a1ba6a3b6d8dec2b151a52b10df5853812af8af7bed90a04b215f4dce3fe42d5103e47bcdfa3f5c05d605 SHA512 cb3b2110e3ac9f072d78aa72a4f2a987d1ee744a45b1fb1844ad50439667d97b78adb3c383a5e80b6dd1ed63abea51d429c08ce6144901228f062d33b3ecd0ec +DIST firefox-127.0.2-br.xpi 585933 BLAKE2B be13e03b5ea66573f97b015acdbfc08e05c304338256ed9b6aceb540a76e5d257f6e9ac8108fb2449498298ed680bbe46d8225f6928e4830486ffbefd2e9daf3 SHA512 657254a8e018082bd18ea9afdf761f11ac4dcb4d6dbc84f92bbf00045f814d139f4884386546fb78ded8c971719775e2cb0030435bec6ea2c14520013dabf4e2 +DIST firefox-127.0.2-bs.xpi 499342 BLAKE2B 1d3bacbb74164370b0a9c4ad9b952942fcddc3a4bea7c18414d0e31e8afd0c7d0f0f316d3d35bd3cf535cd5db1b335d336bcf27ddd18a4111386c6751b52f812 SHA512 40a0d7502e1b61959d9145e9533098e6a2395938fb55679f7e67fe6d376f2e962be6c6fc0630a40a3cdaec7bc5a50e8193df885bf40e4ab68e488e19d30a4f85 +DIST firefox-127.0.2-ca-valencia.xpi 544016 BLAKE2B 313eef4d5fb691323a099405567eb1d0da4336c573f8f2fcaab33fc82161b30bc7c18e2ac8de89253ee47cc9589a67f889c5dda0dddca6b1be9113aad5fbf234 SHA512 5bf2930525505fa3906897bf8072ed2a13bbdc6de2df82350918d3bc94175113fdf2c1ee4da975d26cfaeffc3eb9c464cc1aafdb20eb0b29ffe022209427bac5 +DIST firefox-127.0.2-ca.xpi 582808 BLAKE2B ecfb3ef2af0ee94ca901730b9e9750515c66c0890ea28b1b0ae46e4e385e948590825ddb9607d9748a9f7f6c695f0887f4786ff3dcaa99c2be14d5a5b2d3d117 SHA512 6a29cd06569120205a13a389a4087520f803df5e459c293c4b7b61d6cdc19735491fc13382333ff96904e54da1a0b3d5b06c59792d53b877fb909e55d730486a +DIST firefox-127.0.2-cak.xpi 590482 BLAKE2B 9f2dd6c56f78f7f64834c9fd12f14493ba1a30f0c1a283d286b4c0f0881b321029c54487cc7b644a2b9c7b547db65e76104b47404c0f50e4eab2d3bf936ef024 SHA512 510c272b05dfc16659fb27186aa1f64ae1e70a39dca93aa32d1dd79d8896c29c93322de9bdf388c8a0974632329e0798daea9b4a8d63e185d85f8a8377bb373e +DIST firefox-127.0.2-cs.xpi 653270 BLAKE2B b98bfa2e3fbf724ced45b357c7c3ae6a5b074488b1b2426df327267232eb30b3866f836a433f00ef92c6943f5ceb2ded4ef5e0d86785ee88859cf88b47cc7c0d SHA512 3057bf1be5369af6f1572e14c8a07efb7250bb2f9e9a5f5d3e72eac6ca4764970ab47530e76399e39222fa8cff4c06df216f00acd338fc254473580cc42b9ed0 +DIST firefox-127.0.2-cy.xpi 618428 BLAKE2B c0be3dfcafd923a39cd0bd2c54e2c413509a0f1b7ca17cecd6e5c968930e5516f41bdb1b247002abbd7ac84f6855983eab2fbc3e9ebf03fd95d2aea2dc44c398 SHA512 0b217fb7c14a43830b7b48418a759185ec568100c600519a796a336059eb76239e4b58243903bd180a21327f177085900c007da8e31922bc279dcef90be2755c +DIST firefox-127.0.2-da.xpi 606847 BLAKE2B aae984f6cce0f493a54ca2fb9f89ea916d25468d91aadae207f38a1771901dc6bad2d1761051a145ae0c197f049d10d662d0f78e64ab0ad7b7745fd41b312f53 SHA512 aa511bfc36695ce3a2a82ad759eb31b1396dc455703e605ca95ee96d72e19f768eff254645362da9c776d609b4d108d24f0ce8759c27d625a3f65eb2f249847e +DIST firefox-127.0.2-de.xpi 628178 BLAKE2B 3a5ecbb47276320290acc9643c2396d3409c803dd7e35d767f3b43d9782d688e872981a66f8608b531e694b5779264472fee5d1b0ce7705cd590aee524cb4263 SHA512 d5346f45b6cd2f6f934d07e8445ea7ff1bc97540da57490a132d4125532b388ae911731f3a723d596f519d0325dc2ccbd287d529ce4f1e22a9e40b14b5a9045d +DIST firefox-127.0.2-dsb.xpi 644572 BLAKE2B 72ce2b28b566e68ae48e9d2ae6db439583e3eb9bc7f08adf1e53fe53f943e49c18b53898dd649f7ddf0c1bd76cd1da00880f62cbbe7a9d897087d75cca16de48 SHA512 24b48a4e2cf9034249c5ad5b81ed25f727fe64ce8382be42d0ec418547672c7fb3d69aad0047e3085032086084921c2a51fbc29469cae0b75d3fa1b39807858b +DIST firefox-127.0.2-el.xpi 726241 BLAKE2B 59b90ec280c4094451e4390ec990c3c5b87b22eb93217252962765220cf78539ace962abe8d4e5c581b146ec04cb5617499afe55657d951334103607d57d15a8 SHA512 bd29df99eeb56ed84d76183a09f48191b283d9d9ed3f3c0c6f33b5cdd6d6bff42a6e5e93644e91ff59ca3132155f3163b49a95c36b94eb7445f4133c6624fd7f +DIST firefox-127.0.2-en-CA.xpi 579152 BLAKE2B 3b125758423e52dcc5ddab42c402eb311209845cee2c1e155c546b4cf8ac3e3e635fb01456ba67b52ba89d18443c833a42c5b072c24216ffeb7c51893b078396 SHA512 25d89707c67a70a807ff05c6665f03aae6effe58c9fb7a43cd427c70ee46ae7c8feda51319958cc91778ddb74031d6d471892f8b49f8a03ffd63ef30b8739c1e +DIST firefox-127.0.2-en-GB.xpi 579706 BLAKE2B bf4151dc3504096dd96013119905cba19b8d1417da25a2f4c5dbf7e14e9ed2c20a3b4442d6eea29ee37a6a648d3aadf58f6164978921b84be1763c5dc2f99c86 SHA512 247a412c5ed93799f6a453ff8cb6a2e7629781238ffbceabb5a10c5de01cd0409cd37371b4e4511df38612397688fdeb1d4e3791d138115d733f7a14b34e2a95 +DIST firefox-127.0.2-eo.xpi 608810 BLAKE2B c85e1b71424db3764eac98af32cf943b1daeb3d64d5348cf5842862d81bdccc5afaa7f477a1ac4827087872762d3eb4969c427b3a2b5893210f9aa158c33b409 SHA512 06f3c6aff4316c7bb4ee1e2e7814267a86b5392cf2c78a39f5f4a104d48bc7bd85365ac6a1d1804b8c171548d71f8e4c571e85ca4d7fea81302160f159b0f31e +DIST firefox-127.0.2-es-AR.xpi 622106 BLAKE2B 828e573af5e7499850fb5bc3d6a5c9b09ee4a31147a6a4dfc17665784a4f32d6a39eb94246b09c28160d927a939047807c3faa3a2b853da092de32feeea1d146 SHA512 6a8efb62c2364e344ca51dab0a3f1fb373b990e308ecd6887ed2fe3fc2f826949d676ac55068fbcd3460ee163dc9a41f7ab52d7063e27ce5624424238bf13d8a +DIST firefox-127.0.2-es-CL.xpi 621302 BLAKE2B ed638109216a61bdbb0f1a91ffdea17321936bef0fd2c57fd8bb29e56b6103be24ced5d62c41ea114b37e962c5df496aecfb9a06227a2e3662e6fcf2793f3915 SHA512 217183e515a9fd83535795731a9f7124a3716e5f68c028ae2137057bdff261d1e7744acfe64212ff003fa7782108c261aa3dc7dcf2184f3c77462fd65a374e05 +DIST firefox-127.0.2-es-ES.xpi 616136 BLAKE2B 2c25d895c6752f5a196bc80eef656f691fdcef3d5991dd3940eb4457e36f4010d7a78f6293904b8c8bd7d2d41ad993425847cfc791b0f45688616d1a3b003d34 SHA512 1780160b8378a87790a7d06eaeb099ade3b18e80469386a886d119a811f1216dd6db0d10dc162f4eef209cc2e45d260ec83b7a61ff67312df9c2a97ad73f98c2 +DIST firefox-127.0.2-es-MX.xpi 589239 BLAKE2B 74ea13596d227087bd314822f4353e17ca47067bfdb9dfe31adceff013eb10947f9c51f21ae9ba65773af8f64c20211d753c7cd09af72645ad5ced25d7eec77e SHA512 c684248938f8e48f13943564bd98766043d2ab14777617128b62cf6983d616bcf75f4448bc9609c9b253172f0753d3904611bd5f79f89e63f43f8d5915e8affc +DIST firefox-127.0.2-et.xpi 537278 BLAKE2B 9720007a3b7a1899eaa9ca12f72bbcc362600d23115c971c5d791878cceb3c23bdf9954fd127ca9bbeff5f55be71ab03d7ffdbd3ca26407773355874799b7da2 SHA512 6d3a8d15024a6c18bc0e8feca09280bc6c44d88b47aaf9c09fbf48776e9656357308a9e0c45ab42f5a387c69fa52db46e8b51143556ca7f6cf433b81df06a6b4 +DIST firefox-127.0.2-eu.xpi 593779 BLAKE2B 276eb7fd5ba095fc2ed9c1c89e91d92d9d78160d00bf79ff157bd53d5cb1b68290424b2959b69ef40d072fc33345a928dd66231dc2a8d922b4f65c773c0d5286 SHA512 05f754d2a01bd7c597d805cae6775ca05640bab6478c3c8c0a807aa08f41a63e86e0d5f85d7b020d805955cbdc8e0deccebc7f95b46f75dc31521da416d7cb3d +DIST firefox-127.0.2-fa.xpi 587838 BLAKE2B 03c99132883000ed03489cd26d5a220bc5c3bb30323dc7c956a1c8ffd55e6a63a20c3a18413b151158a559c208751ed4afc352b5fd130ddbf4e7af83e2a2e933 SHA512 369cdea6c059bda8304fe4075ace929c5023359df27c5f5ec9b930aed2b57590b59309b993259c77b9a66f02d683cde1f1f8c6a930f129889df1239a3ca30bd3 +DIST firefox-127.0.2-ff.xpi 473942 BLAKE2B 020c910141a001fff646585b848ce7a0e62ae50ee5b790f25a3c35e24e302c3ee074ecd52ac987a3b91804d672a46b17fbbd503cf864faeada80d0773cda1eeb SHA512 c4c577ee23c99f26cd0c37553013f3cfc657e5c90b594f60ec6db66f5560069dfab175bea6b65ff8bba0e9a16697cdb7e30f773343612554b868bddb607d689e +DIST firefox-127.0.2-fi.xpi 601836 BLAKE2B d7d757970504b3ae569f661d58c929c8128d8dd2786c0448dd88c65f97277f02cafde9d4fc8037241640a88899cd9f8c9aece17134f20d48ea6749e79ec12d2a SHA512 5fc511b7495fd7d92597ff3fdaa8b01d76e2325112d3b48d01ae38d624e0017dffd9e7316b21dd0bae6ecc95505993dd44c1f682bfd3b0086924695337da2f13 +DIST firefox-127.0.2-fr.xpi 635004 BLAKE2B 04d7c575d53527b098a1c1387b9331182d197cf4ffe157183e074e2129dd5709b490c056af819d596ab203072a048bbc8c6cec79a7b014f3d80c79428f6e3106 SHA512 7d456172b78fe2ab7708eaab0d1f197e95ef30b04265813557c12b138c284be76a6e78f11901024a7c0412831bde2f4fa9df66a44d0774c2d47bc97d47970a27 +DIST firefox-127.0.2-fur.xpi 627829 BLAKE2B be8d2157906aa341e712d2f741c8688f7d4a2a2ff40d8f46cf77c6afa13589b53f41a50618babb46e08a756952a6c6162ffd40e552b985fd9fa4184dd0b4ed41 SHA512 6f0216f8c6c0db651794515541340b45ef51d185d279910eb22d5941730dad462581cd36b849b87e878b67ffd16dd432289efc64d40423bfd684474a1f2fc3cc +DIST firefox-127.0.2-fy-NL.xpi 617744 BLAKE2B a2c9177611b12d11cbe87bb2cc3099be5a0b339938048d9058047085e64c6b426cfb668d2f9bc51aba951d1f6d1f09aa572b082e87d8d403d9ee31bbcc0ad4d2 SHA512 ffb266eac4df02de1269307e42042db41f950ac5757ef4a4b79f05069efb84bcfc00f6b7605abbbdccfe39ef4962316494aa630d37098db6e237a4136884a598 +DIST firefox-127.0.2-ga-IE.xpi 468832 BLAKE2B 7696d21ac2419875770f0050ba22cdb77303a5062f4dc71a82ec6dbfd50cc9ee25eaa06ebc6dc5785953e42f120fbb316df81b6b596ed3c72dbb69b450bc4177 SHA512 8d19d9494feb2acb3c310adb1860b9988ff91a1cf691f4491394e9472535787045b6b0dcffe97f00aa56371a7f15b4baa357b11e63bd26a0b773b340f68f4ead +DIST firefox-127.0.2-gd.xpi 594383 BLAKE2B bf678fe36233ac642d21a381b2dd819bf3e9a22bbcdf17b7404221657e9ff0a81a07d9d7f3fa134265ff471667f1428819756c13646f1c9be8c29e5d216fc722 SHA512 23cfa8484e7e97f4e88acb29c75cea3cef8cc96687b21d7ffb6b818222a12249fd3faf41c7ec7349f2e22860c062dff7eebffde40711d2e241ac36721daee6ba +DIST firefox-127.0.2-gl.xpi 601871 BLAKE2B 165fd9574a2404154032709d56ce98dc636fea53233fdee6446f1ecc3be90f2da8d3bb958aa6bc552e44e838c4aebe3da2853b824ddc12f1d85847351a9d4454 SHA512 66a0845743bdc272827e0b8ccd2b47d8bc15cfe69a6f13a41027d80589e1833cca0a7aba81e4c4b1395804b3fb9a5c70859de0ce0c721397750e39b69223474a +DIST firefox-127.0.2-gn.xpi 633216 BLAKE2B c720023594d1642a96cddc60c645cc9da55543269db9cb8a885585fb62dd4d88f9f56cacdde8a10bd08f370bd691ce3d2528df6a9f9987a8cd6ad06c943d4499 SHA512 68ac786265b14eff979bdeaa3cd54cbaf523d22013ce5d8e6e025dc84aa6bcc8f80d3f5437e63078569f950276d388a438e18d7c69cdd97a993af1b172624538 +DIST firefox-127.0.2-gu-IN.xpi 525159 BLAKE2B f5d800531dcd64701015bf2ad782c882bfc19f190292e453f650358a9d54eb1656ae1a85c4e26c7bcb9703890938dbd2da7a7d96f4af280aa6788ff76c55c0f3 SHA512 960762d09c38620010f179401de7aa648efaa7dab84ed6aab572c3c42f3fec40c456bd9bb1bf14545f34ad5b8cd018b00401096613d4610877ac4b9a2447efa3 +DIST firefox-127.0.2-he.xpi 626712 BLAKE2B afffff975a94d3cbd24bf8c548d2fbb3c72ffcae74eea9705b07512a9a6a751d372c031f7f7d395bf4c937f5a2d180afb942141e528ce74fcacdec0065c3a1c6 SHA512 92af5bf179af0aaa5a8fdd58a96e73ad815d9f7ec7442d09a15d918f3ed193d44a66ee2614d44fe09c332c09d70b647e555434633c9e5d33b0e6d30a7a08cfc8 +DIST firefox-127.0.2-hi-IN.xpi 563353 BLAKE2B 9ff065cbd37bbcad8394beb5b424c1389000da238f8483fc78970b32b6a3d766070fd2aa70e181079461b8871afd0e0fafd1283939a118d4c894deca44d12323 SHA512 0678fab31a20c98d64158a0501824c7371bc22279cbe4b195a376bb045712451eafbbf8bc123fcd117917d36dc4958bf6656b26ba4785e05b7bc940a169a860f +DIST firefox-127.0.2-hr.xpi 554576 BLAKE2B fb13353b6b0deee986fbc5629252b56e7e6b2aea0fd3d2eb45f10488973a164df989c60ce1651626b5e0ae827b7b724be16c3ddc043413d7307a70d403c90175 SHA512 58fad028af2d8b9c17c2aed96703a07fff45e797d7e1a7cfd10ded7b61eaa0c04b36fdab44e154e7920c7e30e79bec96a1702512f033b557f64cc34f43824281 +DIST firefox-127.0.2-hsb.xpi 640687 BLAKE2B 4a4fec20af37db4bf1d1e945088619c11ae98bac270d659bd96d39000a14ef1ee843a45f55786d86dd41d768984de4f173f3a3e4eb0c648aa18203117d94fbec SHA512 10ac939b71b611d6ff052df9288b7e0348d741cb528d06c927523f46413499aef43726f8327bfbbde423ce33309d31a34dbc5c05d3d835e385b461cd5df7007b +DIST firefox-127.0.2-hu.xpi 644724 BLAKE2B bcd603197ee1966a9ce15d39d7e9cbcc7885a7c90e000482d969e88773cea66d80cccf49f35bcee4ccf215f160562b0afd4bd04fe48260f6cb9f059405a171f5 SHA512 baff1ec2c87952299cd8d7780c19ff738ba730cd33e623c8c479dc07bcc2fe5e853e18f3c1ca697e743dddf4ab5e21d14a1cdaf7c5c5d91319b80b2f8cb3ed2e +DIST firefox-127.0.2-hy-AM.xpi 648986 BLAKE2B 83014678273ef12ab46165594c525277187776562d71c0e04e32776649e4b30d0b2dd8f01e940de2fd6be256137ba982c6a2ea8c4368b45f4d0c5ea75775e0dd SHA512 2f25a4a190eca19c750e2fb2632bc227e3511b46e8338fd692e54104e866b8d0e97c57d814116a3220469f9f9a510e51f1a3357a4dd0a84798129be8b51863f9 +DIST firefox-127.0.2-ia.xpi 605289 BLAKE2B 543e1ef07007cda243c6c7921f657e407082ebd4e85f55944b64c221ccd65c85e80ce2c017a076d4e569cb5700d14b254289853df474561e7e446ee7d8c85968 SHA512 1886ebe21c2c3b3a0edaa12aea403eaa6a85fa25f6561f06d8b6aa250a8e010c4bfcc743d5fe304fffd63916dc8855a5ec85fed61c2b0c663f8020fd9626bb0d +DIST firefox-127.0.2-id.xpi 572107 BLAKE2B be501c12b2410cd01e4c7c036aecab49a013dde75c0329dbd546f79e4f7acf2ddc37cf662fa374346bbf925777e968c76d0007d014b95dc922589c07bfcd9bcc SHA512 640b4cc656d7e816bc995418bdbd4680aac11192af29f923c669fbe6d8ee852ea8eefdd255251d83a02c873e5bf50766d0b94ce4f674d1f1b5cd14eb559b2f64 +DIST firefox-127.0.2-is.xpi 611945 BLAKE2B 589f70e6ad040719b901c9a6c74acd675438c6e2d1d43cff4761c9eecabd471cd7a3c93565b2afa635f76e84a2da87e06dc639a983ad2f7dc240bccc4f94d51d SHA512 1c8e31729d54e5a06e244dadcfaa686396776b90797d1f311c98ed779a8a730ab2b5f9ed3c41e89bc4a385e32d3af38df8e54feef1ba0feba6a8de304661330c +DIST firefox-127.0.2-it.xpi 561886 BLAKE2B ff4d47130ee0480b736e929ac3d8dbf3888fe8b084c6fdb977584fd873fb00064458c72cbc6e2014080ed2f92aee91524449dfdbab0023ecc9d2d2eb71d4957d SHA512 412d49cc1cd92a3c50c9e1e517afbf70afa1d1457b41d2065fc0dee19e48c4bdaa4d68b462fff0c09cd102b5548aa815dfc3eb96a44ac6ce7fe4c92a63e19831 +DIST firefox-127.0.2-ja.xpi 673185 BLAKE2B 616faee17face89955ebcbca3fd0c38074eb9c8cb8ae5ac6f0ec298b55a71a781740537d31a55b09f2d3176d886f9dc94b516a277f7d3dad601d279b7b44581c SHA512 e4a1dce545675f2ff979d9ce04675229307ddf06302f4686e31dbf9b9e952a6e6681b9b73835a3e86d21ad0957eeb0a57af41a0f00fbf067a5e311f0aaa533d4 +DIST firefox-127.0.2-ka.xpi 658460 BLAKE2B 1e1cbf2ffd7edb05636b0894840b7729bc5ed07c54aa97730ccf30abb07391d90dc61f03aba68ab1b3cd2258d25195e10a15016ccde628fd207df3a2c8a43328 SHA512 282d5bc341eaca423c0d6f4f503d4e82aa7346d4db54ab64d63efec3985e52b6b3ec2b648265ae6861b96e505aa22b27bc8eab81d036e6f3f1831a30d720e84f +DIST firefox-127.0.2-kab.xpi 602171 BLAKE2B d598af0433beef72504c005532b43511831b62437e62af54fb37af665e79f6aeefeac943a774bc3482ac058441ad25834531a43091a70e66387dbc90f0caa089 SHA512 93aab5f309d1ea6527029dcc414b2c335261605801cdbf6060699abe7fc11a533c67e391b64477b744c87815a4d9e8217dcf78950c707b12c05bb5f9353e27ee +DIST firefox-127.0.2-kk.xpi 701249 BLAKE2B c012acbee6861d3f439912f4b7c1aeea5db6e1c667b716233b8b2941749679e88ec27587ba06810e5c242cf44e1dc71b0cbef73b791b7f1b6f270f0d13829d27 SHA512 933239b89d0008d7e9152be4167d44d3486a99bb1369932cf0c2cb627328fc0f810d5f153373fec7f783668cb93feb2735840962502a291cde0c76d067dc1c72 +DIST firefox-127.0.2-km.xpi 523616 BLAKE2B adc95ed4f61ac2a24e23d5a77050385640ae1ffb6d0ad8719de85aaf6c667d35cfba28ada2a688827ee9973520a01dc23182330a5a0ee505a414745915e21111 SHA512 5f6165b1059a226fc240afee289113f627b2e0d447d80e2c1231236365fa643a37744436b373fb2e62c27f3aac1427e1061901e02223bfdd505e9a93ec038a63 +DIST firefox-127.0.2-kn.xpi 489100 BLAKE2B 252088f2756606cb8eec9b5702b250f490f97367a5b26d7a3c35adcb95977d12494a7518e8a494d7d123fae55c6ff5ab50f79b8102daf734e6463817eaf6fb23 SHA512 333266766c09e952cd7b5a7761a824956da983bbf55cead5f14583f49d4099255101b4b20a0573eacbf97ff075124ed6e15394b8508d7a2c494829c95452d375 +DIST firefox-127.0.2-ko.xpi 655332 BLAKE2B b174ef3b71ccd98705f0099a9d8a9daf2df4d315a9a8400452f6f255e4ae6fa9dba0edb46fcbb129bcb3bd11ec2ae3b4cd415ba3210de1ba62e666e3520499e3 SHA512 0b1c672782c15a3b44e764b5954abd83ffd6c778d3c7105de326861feb14ca65446c16411c9fe13c25d34a4613ce35013c1346dfae14ef18f9b70dd27f7b5003 +DIST firefox-127.0.2-lij.xpi 481948 BLAKE2B 9d2d797dda09480e0bf45d9129f15fdd94c81395597bfdb37c524ea24ef476ed51fb7d298fbef8cd5a2bff8b0a38d052cdeb33c3dab696a3b35e5983d9bdfb99 SHA512 6853cd544af90e32fa06613f59a27b580caa48646a69a274fe53697fb807c3b1d576b84e20585bc1349c8c0d03e9c9f86136e8ad7f7ee255d5b5307e23dc8296 +DIST firefox-127.0.2-lt.xpi 570444 BLAKE2B 6524068e5e2c936a6d82fb55c3387665cc842847b01448bdac5e634a48074fb7d63de55534dcef765c0819b9bac33f2ac527160194716bb6c6fe9846147f3609 SHA512 c714f1d403de3243b7c126c1944178d8244c4ebacff9f65833c6da7e4f426fe9f6fe167027eb54436616801b44b6bcfffb813a9e6fe02b122330938572692f90 +DIST firefox-127.0.2-lv.xpi 571665 BLAKE2B 7e447f4538e60fa05dc4c4d19ac40367f5f34a0b9d90901b07b450a94f0257492b00715200e3b6b85cc7972e4b007fc3d8331f8d3f652ed445954cbe40b335cc SHA512 61289ce06d7b40f3cc64c05c98aa1a3cf79f21f42c08f3dda07716b1448e8a8a0c005f59cfa808bc8c7f362c1399fea50e6130fb028627a3210463bf8b72cc18 +DIST firefox-127.0.2-mk.xpi 491109 BLAKE2B bc1c1db4419ad47e9ac9730b439424688c883e475f927c5671268cb81de37a8a3bf2771dfa80dfa67c6f109faa5ed2974cf410ebfb0f59d586052cc27f319401 SHA512 8fcae32a324e336d9966b63b29455a7d44bee75b2147433d7a63c4ca4a12a7546d1b40ad433114ec95bb006c4f0aef51305fee2a133e24875d78e07da2c6d798 +DIST firefox-127.0.2-mr.xpi 529928 BLAKE2B 5b22c69c09b104fb06864d1ec3698db42a6ec4514f125928d538189a4609f2c9453625ea0300a32d4cbf95205e50a39a544f72f4164d7f4a154f7e867f4d1169 SHA512 8c46bf44f606968f14d0fd62542d2115aad9c8221a7179c56a39fb716416094adf14f8e714c9a765058057cd25b9d8e5150ca4f91d04ba29a6e98285c62a1b77 +DIST firefox-127.0.2-ms.xpi 447570 BLAKE2B eb532ec99408b57058afa89095b9b83a5b8276fb2717794326d4e6a199ed656ae6f6a0244e30e4a29e6b4133cae40e609c9badd1bde18483e21f1f0a55bc5d7e SHA512 f4ee3966274156890c6c87d316f8eef628a78cf3fa4f37f12a74ccfa84e8ab5390c6da758df45ef90e985a069f139256eaf557b050e93e832b398ed38228596f +DIST firefox-127.0.2-my.xpi 516482 BLAKE2B 79892f75c81b973593e2fa5126fa861702d8612623b331c1c05856c86c8b5041ccb9587a1a7f6f6acc3d26269d5f39f8617f4b3a28e0a44662da543210b75084 SHA512 324244e8208859813d64ee578075a48cc4c9823154501ef1a3589f0c166be757dd470c563aa1ae7d8b46769a6d62c634c7b377859404d7c3e8b40a1cde596216 +DIST firefox-127.0.2-nb-NO.xpi 602855 BLAKE2B b385c75dd70ad2de9bca8cd9ca7f7a12e2519c5a3a8f52436cc4c74abb69176b9f1d353e951416bd72f6bb1bde9891cebb928dbd60b84db48d06c3a497f8b1dc SHA512 818598d7378d97f9cbff4b885660e950024c215bc9f6a669c5c8e7893fb3393e1bf6cb41d8e3feac142251d66796dd3174a4dfe968c7f80358c6cec63f231651 +DIST firefox-127.0.2-ne-NP.xpi 508759 BLAKE2B 8ebb4db29607220a96f7e81d539510830cf317936aae99c289ea35bdb77ef2aa493ab364c8ced059f5598186e68d6d6f069e41456c5131d06d0857c7d64df006 SHA512 5cf6ea3dbb0d82365beab3dfa6718014162b2901eb1ba8183106a99703004d0448b69fb49f6b140c8747b5ae00ff55b5b40fb15dbb60a89332f093d39c955898 +DIST firefox-127.0.2-nl.xpi 611454 BLAKE2B c9a18433a9f584b202cc5d3f1ac31ab77123b8682477f9874bee120ef5d5b34835fece3bab2eb9440860dfba1a925dc05dd295af1f14c851dbf54b0d0c075a88 SHA512 149f5c2d52fa2722b6f0d8f39796bc376d8ac0d65c07c61be43bdabfe135dc3056072bc3ffed433eae48ea9cc81ab8ea88759f8d2c4984a0ba337279d384b5e4 +DIST firefox-127.0.2-nn-NO.xpi 603355 BLAKE2B 67ac7a6dcaba44ec0190b7c8608b6edbae49fb9f6c61bda8dd9d1d55dc27e2e3cdbe57de79137bedc70dfe1f310dd192668be6166adb242e01ec8a72ce6ad623 SHA512 c22d95313aa51f705ad32255af4a43aefe645c6fd972b5d2e2f73e3369b1379c3ddb961823333323862b3eb8c5f2f12ebb16d9fdd82f39f8a992f955601f7b42 +DIST firefox-127.0.2-oc.xpi 608807 BLAKE2B 9df8419070a18ffe73e76b467e0b82fef9480e3d43fc5592376a96cf1a7c46a24fc7c59f0a7d99a1f291bb98548e3a55891daf32994e52f9f60fc407cfd1f62b SHA512 ee2cc4489784c7b26493a476730bc596b44cb6ec8703fa4e8c8066ed67e271ad23e720517b2577cced60e53031bb8db6fe2cc056f28f3956811216be0656df8a +DIST firefox-127.0.2-pa-IN.xpi 687023 BLAKE2B 773a89ac237620167b1475c980669f050d8bf1b70c7bddb6bd2198c1266d14fa8e4b966e19a66e6201c0f52f6e6767432279395a5baf72d4ad7a8ce9c69398ac SHA512 f21c8ab2a7bb86a3ae57a2552bfc16ea3842d6ac4b4773161c15f15512a2ef2dcc57a54544b36bd1ac1ecb550f86cf7ec092beae1b3fa261d541cbc9f2112a52 +DIST firefox-127.0.2-pl.xpi 631922 BLAKE2B 1f490bf716751765f37e947065c79e40bded9ba716bd0189bb59c25f36a0be83b6d9879a2ca1dbd873d9438eb0cb4189cd15f72d19a6d7afe2158c92f0fe5746 SHA512 c25788444c441b0ad0ba573a194fabe8922cc611586ee19a9c7854307fb609552152e05cb624c1d17cf9bcec1662ed9a463b102ecd4aa9265840a48f56f858f9 +DIST firefox-127.0.2-pt-BR.xpi 616113 BLAKE2B df9bfd077412f11ecc945ce17155f01a812ca3f4b5915231625fc8c2a85e6a2a73439c32dfdf5137fec208fc44608b3a4528dc2a38e59250c5834542df943b01 SHA512 d80533c25e2f6fb8e4ce428332ffabc24db70cba180fa8f99948f94c5fa018b51466049f27ef4b45c68d50b4e2fbc2a510c651433b84d24c0af5de2d7e2922bb +DIST firefox-127.0.2-pt-PT.xpi 622365 BLAKE2B 3a58c60a55ecb97079443c8b8f11c74e11b316e4cadd202b49c4a67d8c1ecca543295638e292bb843b9d53a8ae0f11746a507ccc13bc29e23a655b72962ca8b3 SHA512 6b3f52b3f597256263d6a31a9db4fe504405df80c77e33d4203438b31c1e4b5f0ea6b55bcfd088608b65efdf333d255dd51a6c62f6a6920542009d48d49a9277 +DIST firefox-127.0.2-rm.xpi 612109 BLAKE2B 037339854f561f18dad9b3f71ff29c93c62389a09bde63d038dc5432806d6793f89836a0b7a2b539fc1abc3e5da938841f4f56271c146507eeaaf1213076b6bf SHA512 b5e5ef4614f3c85eca0d95fc076ed6371ded5ee48186c58b209ae3d0386e4ec540c6fbbd479f7a4ac939e5687f51246d2d98c63ded1c791e3d429456e6743cef +DIST firefox-127.0.2-ro.xpi 547541 BLAKE2B 05bc2ce40ad88755d62e001e5fbfc2ecc3f8de44d4c9a66b05d2aa1f5f9bf9fa47942a070234a4bc17be222e50d9ac57a876b3c935edaf868116738cb2ce513c SHA512 69a69804d9e9555971e997c9c1a9979343b9e6d92d250f6056fb1a43cf9f319675bd8f9534f2b195d2b17aa896ec2f48bd0f4fece1cf9a953b80b89a242ea494 +DIST firefox-127.0.2-ru.xpi 713587 BLAKE2B d7e43eb431e9ccd825c369a5ae03da01d8cd3e75a75ec3976b6c077b8017f1399bd8f6898fff6dcd763b471b85d1e045734d2c87be3f5479ef71be25b2a820fd SHA512 9bc67383511f4e3772a8d0387bc6356c1bc6279378cf92459b3fed84027c063180f27565fd207ca87aba43b23d89b88985566041d54fa87b796dd72ff5f8c3b8 +DIST firefox-127.0.2-sc.xpi 582650 BLAKE2B bc0a2823a0358c3369f09a4ae8f945ff24cb03f64cc364e492ea7cf4a2a75d0091e4c1156135ca240d2cad8cb64a7224b7435586d612a97718f3fa52e02573b5 SHA512 7d98df466fca23340be563faf94ced9be26938deffc5bee708ba1b9d0adf0041e4353973a447b153ed30dd7fa3d475e6479b7e2f99514e34c1b8b101e569387d +DIST firefox-127.0.2-sco.xpi 509002 BLAKE2B 51c464944fb8b7bf1253d5283ac373b66a225936cc10d041f1a1afa7aa2945ad355ac76f4c7e0d486af5376f5a6168ab4fd7127adba7650d8beb48a64e2c290b SHA512 7f3f1f329b03011fd5e92ca83819878e52bcaa558d27fa8245fd97ba6a74263472dbc9e9e3b27a3d21243df7e97fa393cdabe5c3b7ec797dfea2365ef72caa1e +DIST firefox-127.0.2-si.xpi 603740 BLAKE2B f4e030dfa2a86adcbbcb5a012fd3b94ef771dd4ef04c84d7d92e9d0076444db69d82362836438179161cc76f30ea1fe28ff208d9eba9601ec36f0cc2e294da8d SHA512 052ed58c249b438855f0eec798bcd7168e2a4cea40f4cafc20c71d1420416dd4bffaeefab07e1468d2db138c0c8995512baa392f58fe650ff0292d2ddba4d205 +DIST firefox-127.0.2-sk.xpi 646183 BLAKE2B 066ee127bde4f408f04ece718dfdaa9e9787a9d531f172edbc645423375e122e86667c149225ef865463ed6506f861347229781d66a746706914f9400543a29d SHA512 c010b5ec4d21f751acc65fd11909a2d11204558c2ff3c599678dde58cf64525776905d1cd0ead10103e1a4ddaf8bf1e74a2bd187be79e661efdcfb8e76c78cb5 +DIST firefox-127.0.2-sl.xpi 612536 BLAKE2B 154f285a2c34c47ad645562c0739d7167d09dae0cc3310dea11c66531d01cd760328d487fc4e287660f6b8abd83ec5280eb496cef2d5ca55ed9a4a730f61a8c6 SHA512 74a722e53c9d79b7d6ac71bea7d20b178e8ae0444f4c237f9038ba984c9f1f83b4f1b413469f43f56b2dce04b5dd96c07717cb13f1cea15ae61548e9d14c1c81 +DIST firefox-127.0.2-son.xpi 414287 BLAKE2B ef3c9c5cbb49b995d4031173daa9b2671d31f8c1607454d728fbc9a48337584b507d39a5c3f763d471d0069d7d03c04a20156f849976dd1e3f1bc1ec060a48fb SHA512 a127c147748f1829537707bafd0803ba0be05500eac44a310a035c3600e59b354249f82d03e1414f72c943b682deddbaccf38741791809c6e6fcb6a2535a1e88 +DIST firefox-127.0.2-sq.xpi 632514 BLAKE2B 57ed4165eb1c50706d4daa426b9561bf55114323c57f252a5cb10f24d12cae7929a663431ec815ab70bec7271e2c99ce42b1d33503d00f4335ad829bdf072a10 SHA512 b26dbcb8ffb1f7b346f5afe1b2a96bef700b0274c9423fccce3a6f9a72870740b422e60ca153a42fdd5dd550ea21348be457bafe11e16702e9013c71ad76b12c +DIST firefox-127.0.2-sr.xpi 637089 BLAKE2B 0906ed4130759f223f0c9197ccefee7ee1a18e97adb2e3f95a37dd68e324f965571b2d465a6540241f094f713775528316cc9e20e92a16c6c0b3b93b58046163 SHA512 7f2ba2683e858264729389e1f87db5cc2facd712155cfba0b742e71977e40bd92aec35e85ba97cc089da1533d2a95aec727eee059db2b4e23cc7dc2085ca0ea9 +DIST firefox-127.0.2-sv-SE.xpi 613192 BLAKE2B 62fe88ce76e60a37d5d17d41aae8115fbd58f5e19f12a391dd12504d78b748d5f656eb72f2457ed0d2b4c5a423710333230a5cac7b811efc3b9bbf9425fc0e23 SHA512 0a3fc99b45702c4ecc38657c557681edaa5941d43cd2946310ebdc997306ba5d0566742c7bbdda44f1d52e9ea2b2d7d378a2e2ceb26cf5927d4f36b8cb5afeea +DIST firefox-127.0.2-szl.xpi 524220 BLAKE2B f8519e76c38de1fce2d84dcae35155482688d9ac5273ae47c4fea0d86fcffddcc5313395019b6fcc9eff045cede9b2ed19cf4f030c92395aedb50aa6ffdd1670 SHA512 090353e034ad44199601012d9a99a8903ed6cb0868e25d0a5316cb0a34deb51a9a3f64d1c4f358d79702ad1a21ceb5d72eac08a325f875c4bb4d8a60a1a0ccdc +DIST firefox-127.0.2-ta.xpi 505373 BLAKE2B 6e14af1ef396c63bc689033c1b89dd00019338c6b065f6e858a337ba0e38f5d08802fd8c85d1abc8da5ad95d970a9ff96f05076b029f482e246ab48ffbdf00ea SHA512 6f6096e2a0ca3e82649c97240052235d480456f32d38a810b0d5d7ac8fe4f5cd2406e44b4d92797154940213200024a1f6eb971b7dce12617f180f16998ecac6 +DIST firefox-127.0.2-te.xpi 558857 BLAKE2B 8492c705d927f9bfa27a41097f46b8f2bbe6532940360ce4e878fa117643bc6d5e82616fbd401a083810ab99325f821fdc670185181f2a88f9b03dd425d0ef08 SHA512 d5269e7b39125d492e13f4588037e970a39838d527483fa3e043f8087772cebbbd788f5242ea66db6825995c028bf1db2abe4abc28cabf42362cba5fe813ae41 +DIST firefox-127.0.2-th.xpi 689043 BLAKE2B d6175e8a39280a990dd5e2f598ccf7c920b9abf770ba68c7f87cd1c129b0e426d91155f7939c87716bd1921a58f3f411d0ed051e210cca19be9c275945fbf61c SHA512 1535857c7c226c8fcbe4b0d168953ee79868ddc590b0e52b70806e69aa0e9e9dca975062cea8f7028d49c1d6168ba0e4e0e4312e008c7813ffa3055ede341a06 +DIST firefox-127.0.2-tl.xpi 532003 BLAKE2B 9cc051e3025efe3b0a21bfa77cf9897ec5348a88be2481ad275c0ee1ee9756ff2d42bbd73aa5050ab0c5b540ccbb1f9242e1d38168098be8d139bf03475209dd SHA512 43611d4e87c7b5e5a5d4fe7ed505b08e5f768e340a01f0aa83e923f07d2bac9e8563981d8e5c28a3d52187a74f517a3d49c29aea57c6c9981f9943e54c940b0a +DIST firefox-127.0.2-tr.xpi 626623 BLAKE2B d52a002ea0eb3dcd6097470ea7aef86c75cbaa7a98c0ff123ced4aa9dcbd7cbe6173f83350d48311d3f3f25eb921f64362fa2a9cb178010ee7d92e162bd1ba0a SHA512 96fd86f48fda7cdd5f6f438ae5541d4a500169ff9957a47102ceb751fc2d89ad885c9fd0648a3e0fc9c46cfe1763763822e11ee4932726f3c2ef0690fed1be7f +DIST firefox-127.0.2-trs.xpi 501856 BLAKE2B 558bab47c71966a918c263834477838901ffd7650ad4af63731b44631f26b8f84cb5f26c16ffdb040657dfc39a7704453d66d93532a8ce546556379c30df8849 SHA512 5ad75696118ff20e7089ed1ba109c04307898533e3105529535e7243a53642b4b5ae9407b0ca0ddb2e64d5b9be871a20d740a7be58012ec0f6693194c5d95c8d +DIST firefox-127.0.2-uk.xpi 705155 BLAKE2B 11287c54554accce94129cbbf30f987ec3f3dfa3430eea7efeb36b79a92d849aa548bb97cb2db80b9ac91c76761a0c1b906dff856b69be514d408ba81391565c SHA512 0f5c9a05e82a765e7f36fdc3d99dc2c37593efce24ecfa2e5f31c69500b4c8fdb80629bd1f3b504437ca961a49a111a5dc404a8ef076420dc92036b9dbd47c17 +DIST firefox-127.0.2-ur.xpi 558321 BLAKE2B 0993ac2acdba4798d3f32ab68b52a57151d3ae34db7e77ae792ed4adb3717b5d816116b3718348434a4023b862a5fa31cf351902cb7537e0e00183f6fa848e86 SHA512 2c131c6220f62655c33f7b6831c4dea66ba1dae0a4602761ae2ff5284559093aeaadcc40030d996c995ac8150735fa8166bf39c238d98b675fb3560766d266a0 +DIST firefox-127.0.2-uz.xpi 476583 BLAKE2B ec8571499e1813b37030cff7b4b06ce4cc2180f65a3dd6fb6b1936b85eff56dc5a9396cdff034fcd96dc351763ef02ce2b3e03a1a7711606281c3fdcb6e7b4c5 SHA512 de62f38157aa6ecdd75659f2fc660c3466980ca633fb45705b92830cc4951a5d24e68dd50e06b15a99610dc0d00e05dc0b59fd44befdb0a636107b93f5de68b0 +DIST firefox-127.0.2-vi.xpi 650522 BLAKE2B b203152c7803a4d87465a3bad14a4a7a2b6e6c5745fae6e514fcc7467223a165bda3f5f0568600fce1ea38c650bbf9191b77aa8831a997127d945f50a169897c SHA512 45fcf4ca1e02495f6fec520d0dc095fce55e208e9805c641b80e600092a7b117be965e73990042ac7a8fffc421c43309f0d8875389d6a281321f0aece608f53a +DIST firefox-127.0.2-xh.xpi 415023 BLAKE2B 09ad510ea9a674f6f0aad08fcdd50dbe5196ec119d7a51fc8fcc02cd2358ce1df12dd46b4b23dc3a927a99a3727ee9159c44815e4ce074ba83a82bf2a0421b41 SHA512 a226b56517a49d29d74da8dba3d8e7edef132b970bc7f41f489973b26ba63961e2defc5e6d765b1f69dca05e07729ac49e953aeb195a5887fbd32fcf1d053b73 +DIST firefox-127.0.2-zh-CN.xpi 650833 BLAKE2B 28df31392be1acb5a73af40b1dd8744056cd9f5a179a5f95c31a16ec9f0c2a97deb52a927b1322ee1118691cfec05e35105953938a0c1ae527994805f4401f24 SHA512 61bc371d4d0e343f19a48a2ed473575176bdbd2b084ee464253e2958eb08673af9fefe3709dbad127254e8991a813d63de6156f60b773a0f6546a82728401595 +DIST firefox-127.0.2-zh-TW.xpi 653089 BLAKE2B f7d6c661cc6f7bdc068cb9b00991f164e3b6b123cef5af553c6749de3ce3eb6609a71115627532093f7450b08f6df5b5726903e70f61279b6292004918f9e5cf SHA512 3a8a3c3979db17b3a56fdb2049fb1a437b8c881dc6587affac0a24f936ab53845672da3cdb452e4831acd2ec080f08dd4fdb6f40bb8edbffbb2d2ff688eee96b +DIST firefox-127.0.2.source.tar.xz 554998504 BLAKE2B 63221122b5d3ef57f47895fc3583ea4b6dd97a636934054572ac1fb1005777b2d76229124f4b8f293f34791720992489f9ded0e5707d930977fedb160dd0966c SHA512 d5a959a032309b8a42690b7f5afd5110c2e6ca7de426e1529d50f59cf065e67623ed98bf3aab39ce4d345ccfad2a273b24ce4f87c7ba7e6eccf2e9dfe3008d8b DIST firefox-127.0.source.tar.xz 558840124 BLAKE2B 78fe92863389763759ce6e25dccc8adb19b8c35b59e591f40982fe5cd3b5511fee8f809567fa5aade68fcf3b40c1860f5e63aabdef0421c94b803d30d32d4988 SHA512 5a17bce357e7f445c37540115f2c131ad5a055c0cf04f20bc2eaca18f8d241a99ac76739d172b38f2ad2681633f901a0a15893801082ac5db9e20e31fc8b8291 EBUILD firefox-115.11.0.ebuild 40409 BLAKE2B 946cc9a9f1d5415932e8fa55d739370b1b2296588cbc97b95bea73c07efd9b51e12b5f55db269ece293e60697c764c7e635da36f2f6f40c2b25affab7f8d8f11 SHA512 fd6c57d8c113820d2fd2d20fd9c1dbb756585b5939168a3b9b96936284959f551359901e48f95a13d3b427210920a569a7f5aa8e999eecde84c42daea70e8bdd EBUILD firefox-115.12.0.ebuild 40410 BLAKE2B 902b584a455863f5f0842116038fa1d71841bd82fbd9e39fd835f58f93400f22d053574952b75c4b8fbf60f1b4bf6f6a0f33bbb66040156c6708386e1ecb6e01 SHA512 d1c1ecf8728174770221e973b5e9af74ce7643b9cc990544e0d7b8443940996fb5e685ec4d15410f8fa360a80be30766921078ec78153ef23e899ff0116828ec EBUILD firefox-126.0.1.ebuild 42514 BLAKE2B 789b5cebb2369a92cc314abbfee3b287b1b01a4402b635af4b6022d9d43ba2ef5b519205c994fc305672b45fd5f7673556176c3144ed1254a4849245906ff7d0 SHA512 66ef576f14b2a172633cfe41ce70a53051d13b3395909f7130237a4b93119b8331e68f6bd621d950234522e500f7ff09389f4e9d843e7c17f7d1607cfb525e74 EBUILD firefox-127.0.1.ebuild 42488 BLAKE2B 850bdf64d677b89ec1df1fc4a337d2e6ce08baaf559e224c573ada1ce98195b8e240e04a3ec5a31a277434e919ad71ffa9354540eab5ea0173c01ac379f3e926 SHA512 a435584138d6784271edc5592d5e67d9f07f5eefabe88c0a2dd09bccf21a56a6777629332aa4ec25ac20848ba7bc3da984a800517b3a2b4e8db8d1272cf9789a +EBUILD firefox-127.0.2.ebuild 42488 BLAKE2B 850bdf64d677b89ec1df1fc4a337d2e6ce08baaf559e224c573ada1ce98195b8e240e04a3ec5a31a277434e919ad71ffa9354540eab5ea0173c01ac379f3e926 SHA512 a435584138d6784271edc5592d5e67d9f07f5eefabe88c0a2dd09bccf21a56a6777629332aa4ec25ac20848ba7bc3da984a800517b3a2b4e8db8d1272cf9789a EBUILD firefox-127.0.ebuild 42488 BLAKE2B 850bdf64d677b89ec1df1fc4a337d2e6ce08baaf559e224c573ada1ce98195b8e240e04a3ec5a31a277434e919ad71ffa9354540eab5ea0173c01ac379f3e926 SHA512 a435584138d6784271edc5592d5e67d9f07f5eefabe88c0a2dd09bccf21a56a6777629332aa4ec25ac20848ba7bc3da984a800517b3a2b4e8db8d1272cf9789a MISC metadata.xml 2597 BLAKE2B b449997bc096ed8fb7bde41a5acb8d9f4c1c8cfc9663c06ff603cca756e8868d40049fd292a459a00d80b4e8c3a74e91e29fcb04abe87277640fe65d070f0bda SHA512 703c7f6a2b46748786145b0973a7b8439e530c96fd7c50d773efac7d5d9bf74ccb4f0c252f2701459944f2b3ced22d3e57ddf049b9aed0c8f0e094cabddda251 diff --git a/www-client/firefox/firefox-127.0.2.ebuild b/www-client/firefox/firefox-127.0.2.ebuild new file mode 100644 index 000000000000..72aa3df83042 --- /dev/null +++ b/www-client/firefox/firefox-127.0.2.ebuild @@ -0,0 +1,1420 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +FIREFOX_PATCHSET="firefox-127-patches-02.tar.xz" + +LLVM_COMPAT=( 17 18 ) + +PYTHON_COMPAT=( python3_{10..12} ) +PYTHON_REQ_USE="ncurses,sqlite,ssl" + +WANT_AUTOCONF="2.1" + +VIRTUALX_REQUIRED="manual" + +MOZ_ESR= + +MOZ_PV=${PV} +MOZ_PV_SUFFIX= +if [[ ${PV} =~ (_(alpha|beta|rc).*)$ ]] ; then + MOZ_PV_SUFFIX=${BASH_REMATCH[1]} + + # Convert the ebuild version to the upstream Mozilla version + MOZ_PV="${MOZ_PV/_alpha/a}" # Handle alpha for SRC_URI + MOZ_PV="${MOZ_PV/_beta/b}" # Handle beta for SRC_URI + MOZ_PV="${MOZ_PV%%_rc*}" # Handle rc for SRC_URI +fi + +if [[ -n ${MOZ_ESR} ]] ; then + # ESR releases have slightly different version numbers + MOZ_PV="${MOZ_PV}esr" +fi + +MOZ_PN="${PN%-bin}" +MOZ_P="${MOZ_PN}-${MOZ_PV}" +MOZ_PV_DISTFILES="${MOZ_PV}${MOZ_PV_SUFFIX}" +MOZ_P_DISTFILES="${MOZ_PN}-${MOZ_PV_DISTFILES}" + +inherit autotools check-reqs desktop flag-o-matic gnome2-utils linux-info llvm-r1 multiprocessing \ + optfeature pax-utils python-any-r1 readme.gentoo-r1 toolchain-funcs virtualx xdg + +MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/releases/${MOZ_PV}" + +if [[ ${PV} == *_rc* ]] ; then + MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/candidates/${MOZ_PV}-candidates/build${PV##*_rc}" +fi + +PATCH_URIS=( + https://dev.gentoo.org/~juippis/mozilla/patchsets/${FIREFOX_PATCHSET} +) + +SRC_URI="${MOZ_SRC_BASE_URI}/source/${MOZ_P}.source.tar.xz -> ${MOZ_P_DISTFILES}.source.tar.xz + ${PATCH_URIS[@]}" + +DESCRIPTION="Firefox Web Browser" +HOMEPAGE="https://www.mozilla.com/firefox" + +KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86" + +SLOT="rapid" +LICENSE="MPL-2.0 GPL-2 LGPL-2.1" + +IUSE="+clang cpu_flags_arm_neon dbus debug eme-free hardened hwaccel" +IUSE+=" jack +jumbo-build libproxy lto openh264 pgo pulseaudio sndio selinux" +IUSE+=" +system-av1 +system-harfbuzz +system-icu +system-jpeg +system-libevent +system-libvpx system-png +system-webp" +IUSE+=" +telemetry valgrind wayland wifi +X" + +# Firefox-only IUSE +IUSE+=" geckodriver +gmp-autoupdate" + +REQUIRED_USE="|| ( X wayland ) + debug? ( !system-av1 ) + pgo? ( lto ) + wifi? ( dbus )" + +FF_ONLY_DEPEND="!www-client/firefox:0 + !www-client/firefox:esr + selinux? ( sec-policy/selinux-mozilla )" +BDEPEND="${PYTHON_DEPS} + $(llvm_gen_dep ' + sys-devel/clang:${LLVM_SLOT} + sys-devel/llvm:${LLVM_SLOT} + clang? ( + sys-devel/lld:${LLVM_SLOT} + virtual/rust:0/llvm-${LLVM_SLOT} + ) + pgo? ( sys-libs/compiler-rt-sanitizers:${LLVM_SLOT}[profile] ) + ') + app-alternatives/awk + app-arch/unzip + app-arch/zip + >=dev-util/cbindgen-0.26.0 + net-libs/nodejs + virtual/pkgconfig + !clang? ( >=virtual/rust-1.76 ) + !elibc_glibc? ( dev-lang/rust ) + amd64? ( >=dev-lang/nasm-2.14 ) + x86? ( >=dev-lang/nasm-2.14 ) + pgo? ( + X? ( + sys-devel/gettext + x11-base/xorg-server[xvfb] + x11-apps/xhost + ) + !X? ( + || ( + gui-wm/tinywl + <gui-libs/wlroots-0.17.3[tinywl(-)] + ) + x11-misc/xkeyboard-config + ) + )" +COMMON_DEPEND="${FF_ONLY_DEPEND} + >=app-accessibility/at-spi2-core-2.46.0:2 + dev-libs/expat + dev-libs/glib:2 + dev-libs/libffi:= + >=dev-libs/nss-3.100 + >=dev-libs/nspr-4.35 + media-libs/alsa-lib + media-libs/fontconfig + media-libs/freetype + media-libs/mesa + media-video/ffmpeg + sys-libs/zlib + virtual/freedesktop-icon-theme + x11-libs/cairo + x11-libs/gdk-pixbuf + x11-libs/pango + x11-libs/pixman + dbus? ( + sys-apps/dbus + ) + jack? ( virtual/jack ) + pulseaudio? ( + || ( + media-libs/libpulse + >=media-sound/apulse-0.1.12-r4[sdk] + ) + ) + libproxy? ( net-libs/libproxy ) + selinux? ( sec-policy/selinux-mozilla ) + sndio? ( >=media-sound/sndio-1.8.0-r1 ) + system-av1? ( + >=media-libs/dav1d-1.0.0:= + >=media-libs/libaom-1.0.0:= + ) + system-harfbuzz? ( + >=media-gfx/graphite2-1.3.13 + >=media-libs/harfbuzz-2.8.1:0= + ) + system-icu? ( >=dev-libs/icu-73.1:= ) + system-jpeg? ( >=media-libs/libjpeg-turbo-1.2.1 ) + system-libevent? ( >=dev-libs/libevent-2.1.12:0=[threads(+)] ) + system-libvpx? ( >=media-libs/libvpx-1.8.2:0=[postproc] ) + system-png? ( >=media-libs/libpng-1.6.35:0=[apng] ) + system-webp? ( >=media-libs/libwebp-1.1.0:0= ) + valgrind? ( dev-debug/valgrind ) + wayland? ( + >=media-libs/libepoxy-1.5.10-r1 + x11-libs/gtk+:3[wayland] + x11-libs/libxkbcommon[wayland] + ) + wifi? ( + kernel_linux? ( + net-misc/networkmanager + sys-apps/dbus + ) + ) + X? ( + virtual/opengl + x11-libs/cairo[X] + x11-libs/gtk+:3[X] + x11-libs/libX11 + x11-libs/libXcomposite + x11-libs/libXdamage + x11-libs/libXext + x11-libs/libXfixes + x11-libs/libxkbcommon[X] + x11-libs/libXrandr + x11-libs/libXtst + x11-libs/libxcb:= + )" +RDEPEND="${COMMON_DEPEND} + hwaccel? ( + media-video/libva-utils + sys-apps/pciutils + ) + jack? ( virtual/jack ) + openh264? ( media-libs/openh264:*[plugin] )" +DEPEND="${COMMON_DEPEND} + X? ( + x11-base/xorg-proto + x11-libs/libICE + x11-libs/libSM + )" + +S="${WORKDIR}/${PN}-${PV%_*}" + +# Allow MOZ_GMP_PLUGIN_LIST to be set in an eclass or +# overridden in the enviromnent (advanced hackers only) +if [[ -z "${MOZ_GMP_PLUGIN_LIST+set}" ]] ; then + MOZ_GMP_PLUGIN_LIST=( gmp-gmpopenh264 gmp-widevinecdm ) +fi + +llvm_check_deps() { + if ! has_version -b "sys-devel/clang:${LLVM_SLOT}" ; then + einfo "sys-devel/clang:${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2 + return 1 + fi + + if use clang && ! tc-ld-is-mold ; then + if ! has_version -b "sys-devel/lld:${LLVM_SLOT}" ; then + einfo "sys-devel/lld:${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2 + return 1 + fi + + if ! has_version -b "virtual/rust:0/llvm-${LLVM_SLOT}" ; then + einfo "virtual/rust:0/llvm-${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2 + return 1 + fi + + if use pgo ; then + if ! has_version -b "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}*[profile]" ; then + einfo "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}*[profile] is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2 + return 1 + fi + fi + fi + + einfo "Using LLVM slot ${LLVM_SLOT} to build" >&2 +} + +MOZ_LANGS=( + af ar ast be bg br ca cak cs cy da de dsb + el en-CA en-GB en-US es-AR es-ES et eu + fi fr fy-NL ga-IE gd gl he hr hsb hu + id is it ja ka kab kk ko lt lv ms nb-NO nl nn-NO + pa-IN pl pt-BR pt-PT rm ro ru + sk sl sq sr sv-SE th tr uk uz vi zh-CN zh-TW +) + +# Firefox-only LANGS +MOZ_LANGS+=( ach ) +MOZ_LANGS+=( an ) +MOZ_LANGS+=( az ) +MOZ_LANGS+=( bn ) +MOZ_LANGS+=( bs ) +MOZ_LANGS+=( ca-valencia ) +MOZ_LANGS+=( eo ) +MOZ_LANGS+=( es-CL ) +MOZ_LANGS+=( es-MX ) +MOZ_LANGS+=( fa ) +MOZ_LANGS+=( ff ) +MOZ_LANGS+=( fur ) +MOZ_LANGS+=( gn ) +MOZ_LANGS+=( gu-IN ) +MOZ_LANGS+=( hi-IN ) +MOZ_LANGS+=( hy-AM ) +MOZ_LANGS+=( ia ) +MOZ_LANGS+=( km ) +MOZ_LANGS+=( kn ) +MOZ_LANGS+=( lij ) +MOZ_LANGS+=( mk ) +MOZ_LANGS+=( mr ) +MOZ_LANGS+=( my ) +MOZ_LANGS+=( ne-NP ) +MOZ_LANGS+=( oc ) +MOZ_LANGS+=( sc ) +MOZ_LANGS+=( sco ) +MOZ_LANGS+=( si ) +MOZ_LANGS+=( son ) +MOZ_LANGS+=( szl ) +MOZ_LANGS+=( ta ) +MOZ_LANGS+=( te ) +MOZ_LANGS+=( tl ) +MOZ_LANGS+=( trs ) +MOZ_LANGS+=( ur ) +MOZ_LANGS+=( xh ) + +mozilla_set_globals() { + # https://bugs.gentoo.org/587334 + local MOZ_TOO_REGIONALIZED_FOR_L10N=( + fy-NL ga-IE gu-IN hi-IN hy-AM nb-NO ne-NP nn-NO pa-IN sv-SE + ) + + local lang xflag + for lang in "${MOZ_LANGS[@]}" ; do + # en and en_US are handled internally + if [[ ${lang} == en ]] || [[ ${lang} == en-US ]] ; then + continue + fi + + # strip region subtag if $lang is in the list + if has ${lang} "${MOZ_TOO_REGIONALIZED_FOR_L10N[@]}" ; then + xflag=${lang%%-*} + else + xflag=${lang} + fi + + SRC_URI+=" l10n_${xflag/[_@]/-}? (" + SRC_URI+=" ${MOZ_SRC_BASE_URI}/linux-x86_64/xpi/${lang}.xpi -> ${MOZ_P_DISTFILES}-${lang}.xpi" + SRC_URI+=" )" + IUSE+=" l10n_${xflag/[_@]/-}" + done +} +mozilla_set_globals + +moz_clear_vendor_checksums() { + debug-print-function ${FUNCNAME} "$@" + + if [[ ${#} -ne 1 ]] ; then + die "${FUNCNAME} requires exact one argument" + fi + + einfo "Clearing cargo checksums for ${1} ..." + + sed -i \ + -e 's/\("files":{\)[^}]*/\1/' \ + "${S}"/third_party/rust/${1}/.cargo-checksum.json \ + || die +} + +moz_install_xpi() { + debug-print-function ${FUNCNAME} "$@" + + if [[ ${#} -lt 2 ]] ; then + die "${FUNCNAME} requires at least two arguments" + fi + + local DESTDIR=${1} + shift + + insinto "${DESTDIR}" + + local emid xpi_file xpi_tmp_dir + for xpi_file in "${@}" ; do + emid= + xpi_tmp_dir=$(mktemp -d --tmpdir="${T}") + + # Unpack XPI + unzip -qq "${xpi_file}" -d "${xpi_tmp_dir}" || die + + # Determine extension ID + if [[ -f "${xpi_tmp_dir}/install.rdf" ]] ; then + emid=$(sed -n -e '/install-manifest/,$ { /em:id/!d; s/.*[\">]\([^\"<>]*\)[\"<].*/\1/; p; q }' "${xpi_tmp_dir}/install.rdf") + [[ -z "${emid}" ]] && die "failed to determine extension id from install.rdf" + elif [[ -f "${xpi_tmp_dir}/manifest.json" ]] ; then + emid=$(sed -n -e 's/.*"id": "\([^"]*\)".*/\1/p' "${xpi_tmp_dir}/manifest.json") + [[ -z "${emid}" ]] && die "failed to determine extension id from manifest.json" + else + die "failed to determine extension id" + fi + + einfo "Installing ${emid}.xpi into ${ED}${DESTDIR} ..." + newins "${xpi_file}" "${emid}.xpi" + done +} + +mozconfig_add_options_ac() { + debug-print-function ${FUNCNAME} "$@" + + if [[ ${#} -lt 2 ]] ; then + die "${FUNCNAME} requires at least two arguments" + fi + + local reason=${1} + shift + + local option + for option in ${@} ; do + echo "ac_add_options ${option} # ${reason}" >>${MOZCONFIG} + done +} + +mozconfig_add_options_mk() { + debug-print-function ${FUNCNAME} "$@" + + if [[ ${#} -lt 2 ]] ; then + die "${FUNCNAME} requires at least two arguments" + fi + + local reason=${1} + shift + + local option + for option in ${@} ; do + echo "mk_add_options ${option} # ${reason}" >>${MOZCONFIG} + done +} + +mozconfig_use_enable() { + debug-print-function ${FUNCNAME} "$@" + + if [[ ${#} -lt 1 ]] ; then + die "${FUNCNAME} requires at least one arguments" + fi + + local flag=$(use_enable "${@}") + mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}" +} + +mozconfig_use_with() { + debug-print-function ${FUNCNAME} "$@" + + if [[ ${#} -lt 1 ]] ; then + die "${FUNCNAME} requires at least one arguments" + fi + + local flag=$(use_with "${@}") + mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}" +} + +# This is a straight copypaste from toolchain-funcs.eclass's 'tc-ld-is-lld', and is temporarily +# placed here until toolchain-funcs.eclass gets an official support for mold linker. +# Please see: +# https://github.com/gentoo/gentoo/pull/28366 || +# https://github.com/gentoo/gentoo/pull/28355 +tc-ld-is-mold() { + local out + + # Ensure ld output is in English. + local -x LC_ALL=C + + # First check the linker directly. + out=$($(tc-getLD "$@") --version 2>&1) + if [[ ${out} == *"mold"* ]] ; then + return 0 + fi + + # Then see if they're selecting mold via compiler flags. + # Note: We're assuming they're using LDFLAGS to hold the + # options and not CFLAGS/CXXFLAGS. + local base="${T}/test-tc-linker" + cat <<-EOF > "${base}.c" + int main() { return 0; } + EOF + out=$($(tc-getCC "$@") ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} -Wl,--version "${base}.c" -o "${base}" 2>&1) + rm -f "${base}"* + if [[ ${out} == *"mold"* ]] ; then + return 0 + fi + + # No mold here! + return 1 +} + +virtwl() { + debug-print-function ${FUNCNAME} "$@" + + [[ $# -lt 1 ]] && die "${FUNCNAME} needs at least one argument" + [[ -n $XDG_RUNTIME_DIR ]] || die "${FUNCNAME} needs XDG_RUNTIME_DIR to be set; try xdg_environment_reset" + tinywl -h >/dev/null || die 'tinywl -h failed' + + local VIRTWL VIRTWL_PID + coproc VIRTWL { WLR_BACKENDS=headless exec tinywl -s 'echo $WAYLAND_DISPLAY; read _; kill $PPID'; } + local -x WAYLAND_DISPLAY + read WAYLAND_DISPLAY <&${VIRTWL[0]} + + debug-print "${FUNCNAME}: $@" + "$@" + local r=$? + + [[ -n $VIRTWL_PID ]] || die "tinywl exited unexpectedly" + exec {VIRTWL[0]}<&- {VIRTWL[1]}>&- + return $r +} + +pkg_pretend() { + if [[ ${MERGE_TYPE} != binary ]] ; then + if use pgo ; then + if ! has usersandbox $FEATURES ; then + die "You must enable usersandbox as X server can not run as root!" + fi + fi + + # Ensure we have enough disk space to compile + if use pgo || use lto || use debug ; then + CHECKREQS_DISK_BUILD="13500M" + else + CHECKREQS_DISK_BUILD="6600M" + fi + + check-reqs_pkg_pretend + fi +} + +pkg_setup() { + if [[ ${MERGE_TYPE} != binary ]] ; then + if use pgo ; then + if ! has userpriv ${FEATURES} ; then + eerror "Building ${PN} with USE=pgo and FEATURES=-userpriv is not supported!" + fi + fi + + # Ensure we have enough disk space to compile + if use pgo || use lto || use debug ; then + CHECKREQS_DISK_BUILD="13500M" + else + CHECKREQS_DISK_BUILD="6400M" + fi + + check-reqs_pkg_setup + + llvm-r1_pkg_setup + + if use clang && use lto && tc-ld-is-lld ; then + local version_lld=$(ld.lld --version 2>/dev/null | awk '{ print $2 }') + [[ -n ${version_lld} ]] && version_lld=$(ver_cut 1 "${version_lld}") + [[ -z ${version_lld} ]] && die "Failed to read ld.lld version!" + + local version_llvm_rust=$(rustc -Vv 2>/dev/null | grep -F -- 'LLVM version:' | awk '{ print $3 }') + [[ -n ${version_llvm_rust} ]] && version_llvm_rust=$(ver_cut 1 "${version_llvm_rust}") + [[ -z ${version_llvm_rust} ]] && die "Failed to read used LLVM version from rustc!" + + if ver_test "${version_lld}" -ne "${version_llvm_rust}" ; then + eerror "Rust is using LLVM version ${version_llvm_rust} but ld.lld version belongs to LLVM version ${version_lld}." + eerror "You will be unable to link ${CATEGORY}/${PN}. To proceed you have the following options:" + eerror " - Manually switch rust version using 'eselect rust' to match used LLVM version" + eerror " - Switch to dev-lang/rust[system-llvm] which will guarantee matching version" + eerror " - Build ${CATEGORY}/${PN} without USE=lto" + eerror " - Rebuild lld with llvm that was used to build rust (may need to rebuild the whole " + eerror " llvm/clang/lld/rust chain depending on your @world updates)" + die "LLVM version used by Rust (${version_llvm_rust}) does not match with ld.lld version (${version_lld})!" + fi + fi + + python-any-r1_pkg_setup + + # Avoid PGO profiling problems due to enviroment leakage + # These should *always* be cleaned up anyway + unset \ + DBUS_SESSION_BUS_ADDRESS \ + DISPLAY \ + ORBIT_SOCKETDIR \ + SESSION_MANAGER \ + XAUTHORITY \ + XDG_CACHE_HOME \ + XDG_SESSION_COOKIE + + # Build system is using /proc/self/oom_score_adj, bug #604394 + addpredict /proc/self/oom_score_adj + + if use pgo ; then + # Update 105.0: "/proc/self/oom_score_adj" isn't enough anymore with pgo, but not sure + # whether that's due to better OOM handling by Firefox (bmo#1771712), or portage + # (PORTAGE_SCHEDULING_POLICY) update... + addpredict /proc + + # Clear tons of conditions, since PGO is hardware-dependant. + addpredict /dev + fi + + if ! mountpoint -q /dev/shm ; then + # If /dev/shm is not available, configure is known to fail with + # a traceback report referencing /usr/lib/pythonN.N/multiprocessing/synchronize.py + ewarn "/dev/shm is not mounted -- expect build failures!" + fi + + # Google API keys (see http://www.chromium.org/developers/how-tos/api-keys) + # Note: These are for Gentoo Linux use ONLY. For your own distribution, please + # get your own set of keys. + if [[ -z "${MOZ_API_KEY_GOOGLE+set}" ]] ; then + MOZ_API_KEY_GOOGLE="AIzaSyDEAOvatFogGaPi0eTgsV_ZlEzx0ObmepsMzfAc" + fi + + if [[ -z "${MOZ_API_KEY_LOCATION+set}" ]] ; then + MOZ_API_KEY_LOCATION="AIzaSyB2h2OuRgGaPicUgy5N-5hsZqiPW6sH3n_rptiQ" + fi + + # Mozilla API keys (see https://location.services.mozilla.com/api) + # Note: These are for Gentoo Linux use ONLY. For your own distribution, please + # get your own set of keys. + if [[ -z "${MOZ_API_KEY_MOZILLA+set}" ]] ; then + MOZ_API_KEY_MOZILLA="edb3d487-3a84-46m0ap1e3-9dfd-92b5efaaa005" + fi + + # Ensure we use C locale when building, bug #746215 + export LC_ALL=C + fi + + CONFIG_CHECK="~SECCOMP" + WARNING_SECCOMP="CONFIG_SECCOMP not set! This system will be unable to play DRM-protected content." + linux-info_pkg_setup +} + +src_unpack() { + local _lp_dir="${WORKDIR}/language_packs" + local _src_file + + if [[ ! -d "${_lp_dir}" ]] ; then + mkdir "${_lp_dir}" || die + fi + + for _src_file in ${A} ; do + if [[ ${_src_file} == *.xpi ]]; then + cp "${DISTDIR}/${_src_file}" "${_lp_dir}" || die "Failed to copy '${_src_file}' to '${_lp_dir}'!" + else + unpack ${_src_file} + fi + done +} + +src_prepare() { + if use lto; then + rm -v "${WORKDIR}"/firefox-patches/*-LTO-Only-enable-LTO-*.patch || die + fi + + # Workaround for bgo#917599 + if has_version ">=dev-libs/icu-74.1" && use system-icu ; then + eapply "${WORKDIR}"/firefox-patches/*-bmo-1862601-system-icu-74.patch + fi + rm -v "${WORKDIR}"/firefox-patches/*-bmo-1862601-system-icu-74.patch || die + + # Workaround for bgo#915651 on musl + if use elibc_glibc ; then + rm -v "${WORKDIR}"/firefox-patches/*bgo-748849-RUST_TARGET_override.patch || die + fi + + eapply "${WORKDIR}/firefox-patches" + + # Allow user to apply any additional patches without modifing ebuild + eapply_user + + # Make cargo respect MAKEOPTS + export CARGO_BUILD_JOBS="$(makeopts_jobs)" + + # Workaround for bgo#915651 + if ! use elibc_glibc ; then + if use amd64 ; then + export RUST_TARGET="x86_64-unknown-linux-musl" + elif use x86 ; then + export RUST_TARGET="i686-unknown-linux-musl" + elif use arm64 ; then + export RUST_TARGET="aarch64-unknown-linux-musl" + else + die "Unknown musl chost, please post your rustc -vV along with emerge --info on Gentoo's bug #915651" + fi + fi + + # Make LTO respect MAKEOPTS + sed -i -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \ + "${S}"/build/moz.configure/lto-pgo.configure || die "Failed sedding multiprocessing.cpu_count" + + # Make ICU respect MAKEOPTS + sed -i -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \ + "${S}"/intl/icu_sources_data.py || die "Failed sedding multiprocessing.cpu_count" + + # Respect MAKEOPTS all around (maybe some find+sed is better) + sed -i -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \ + "${S}"/python/mozbuild/mozbuild/base.py || die "Failed sedding multiprocessing.cpu_count" + + sed -i -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \ + "${S}"/third_party/libwebrtc/build/toolchain/get_cpu_count.py || die "Failed sedding multiprocessing.cpu_count" + + sed -i -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \ + "${S}"/third_party/libwebrtc/build/toolchain/get_concurrent_links.py || die "Failed sedding multiprocessing.cpu_count" + + sed -i -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \ + "${S}"/third_party/python/gyp/pylib/gyp/input.py || die "Failed sedding multiprocessing.cpu_count" + + sed -i -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \ + "${S}"/python/mozbuild/mozbuild/code_analysis/mach_commands.py || die "Failed sedding multiprocessing.cpu_count" + + # sed-in toolchain prefix + sed -i \ + -e "s/objdump/${CHOST}-objdump/" \ + "${S}"/python/mozbuild/mozbuild/configure/check_debug_ranges.py \ + || die "sed failed to set toolchain prefix" + + sed -i \ + -e 's/ccache_stats = None/return None/' \ + "${S}"/python/mozbuild/mozbuild/controller/building.py \ + || die "sed failed to disable ccache stats call" + + einfo "Removing pre-built binaries ..." + + find "${S}"/third_party -type f \( -name '*.so' -o -name '*.o' \) -print -delete || die + + # Clear checksums from cargo crates we've manually patched. + # moz_clear_vendor_checksums xyz + moz_clear_vendor_checksums proc-macro2 + + # Respect choice for "jumbo-build" + # Changing the value for FILES_PER_UNIFIED_FILE may not work, see #905431 + if [[ -n ${FILES_PER_UNIFIED_FILE} ]] && use jumbo-build; then + local my_files_per_unified_file=${FILES_PER_UNIFIED_FILE:=16} + elog "" + elog "jumbo-build defaults modified to ${my_files_per_unified_file}." + elog "if you get a build failure, try undefining FILES_PER_UNIFIED_FILE," + elog "if that fails try -jumbo-build before opening a bug report." + elog "" + + sed -i -e "s/\"FILES_PER_UNIFIED_FILE\", 16/\"FILES_PER_UNIFIED_FILE\", "${my_files_per_unified_file}"/" python/mozbuild/mozbuild/frontend/data.py || + die "Failed to adjust FILES_PER_UNIFIED_FILE in python/mozbuild/mozbuild/frontend/data.py" + sed -i -e "s/FILES_PER_UNIFIED_FILE = 6/FILES_PER_UNIFIED_FILE = "${my_files_per_unified_file}"/" js/src/moz.build || + die "Failed to adjust FILES_PER_UNIFIED_FILE in js/src/moz.build" + fi + + # Create build dir + BUILD_DIR="${WORKDIR}/${PN}_build" + mkdir -p "${BUILD_DIR}" || die + + # Write API keys to disk + echo -n "${MOZ_API_KEY_GOOGLE//gGaPi/}" > "${S}"/api-google.key || die + echo -n "${MOZ_API_KEY_LOCATION//gGaPi/}" > "${S}"/api-location.key || die + echo -n "${MOZ_API_KEY_MOZILLA//m0ap1/}" > "${S}"/api-mozilla.key || die + + xdg_environment_reset +} + +src_configure() { + # Show flags set at the beginning + einfo "Current BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}" + einfo "Current CFLAGS:\t\t${CFLAGS:-no value set}" + einfo "Current CXXFLAGS:\t\t${CXXFLAGS:-no value set}" + einfo "Current LDFLAGS:\t\t${LDFLAGS:-no value set}" + einfo "Current RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}" + + local have_switched_compiler= + if use clang; then + # Force clang + einfo "Enforcing the use of clang due to USE=clang ..." + + local version_clang=$(clang --version 2>/dev/null | grep -F -- 'clang version' | awk '{ print $3 }') + [[ -n ${version_clang} ]] && version_clang=$(ver_cut 1 "${version_clang}") + [[ -z ${version_clang} ]] && die "Failed to read clang version!" + + if tc-is-gcc; then + have_switched_compiler=yes + fi + + AR=llvm-ar + CC=${CHOST}-clang-${version_clang} + CXX=${CHOST}-clang++-${version_clang} + NM=llvm-nm + RANLIB=llvm-ranlib + elif ! use clang && ! tc-is-gcc ; then + # Force gcc + have_switched_compiler=yes + einfo "Enforcing the use of gcc due to USE=-clang ..." + AR=gcc-ar + CC=${CHOST}-gcc + CXX=${CHOST}-g++ + NM=gcc-nm + RANLIB=gcc-ranlib + fi + + if [[ -n "${have_switched_compiler}" ]] ; then + # Because we switched active compiler we have to ensure + # that no unsupported flags are set + strip-unsupported-flags + fi + + # Ensure we use correct toolchain, + # AS is used in a non-standard way by upstream, #bmo1654031 + export HOST_CC="$(tc-getBUILD_CC)" + export HOST_CXX="$(tc-getBUILD_CXX)" + export AS="$(tc-getCC) -c" + + # Configuration tests expect llvm-readelf output, bug 913130 + READELF="llvm-readelf" + + tc-export CC CXX LD AR AS NM OBJDUMP RANLIB READELF PKG_CONFIG + + # Pass the correct toolchain paths through cbindgen + if tc-is-cross-compiler ; then + export BINDGEN_CFLAGS="${SYSROOT:+--sysroot=${ESYSROOT}} --target=${CHOST} ${BINDGEN_CFLAGS-}" + fi + + # Set MOZILLA_FIVE_HOME + export MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}" + + # python/mach/mach/mixin/process.py fails to detect SHELL + export SHELL="${EPREFIX}/bin/bash" + + # Set state path + export MOZBUILD_STATE_PATH="${BUILD_DIR}" + + # Set MOZCONFIG + export MOZCONFIG="${S}/.mozconfig" + + # Initialize MOZCONFIG + mozconfig_add_options_ac '' --enable-application=browser + mozconfig_add_options_ac '' --enable-project=browser + + # Set Gentoo defaults + if use telemetry; then + export MOZILLA_OFFICIAL=1 + fi + + mozconfig_add_options_ac 'Gentoo default' \ + --allow-addon-sideload \ + --disable-cargo-incremental \ + --disable-crashreporter \ + --disable-disk-remnant-avoidance \ + --disable-gpsd \ + --disable-install-strip \ + --disable-legacy-profile-creation \ + --disable-parental-controls \ + --disable-strip \ + --disable-tests \ + --disable-updater \ + --disable-wmf \ + --enable-negotiateauth \ + --enable-new-pass-manager \ + --enable-official-branding \ + --enable-release \ + --enable-system-ffi \ + --enable-system-pixman \ + --enable-system-policies \ + --host="${CBUILD:-${CHOST}}" \ + --libdir="${EPREFIX}/usr/$(get_libdir)" \ + --prefix="${EPREFIX}/usr" \ + --target="${CHOST}" \ + --without-ccache \ + --without-wasm-sandboxed-libraries \ + --with-intl-api \ + --with-libclang-path="$(llvm-config --libdir)" \ + --with-system-nspr \ + --with-system-nss \ + --with-system-zlib \ + --with-toolchain-prefix="${CHOST}-" \ + --with-unsigned-addon-scopes=app,system \ + --x-includes="${ESYSROOT}/usr/include" \ + --x-libraries="${ESYSROOT}/usr/$(get_libdir)" + + # Set update channel + local update_channel=release + [[ -n ${MOZ_ESR} ]] && update_channel=esr + mozconfig_add_options_ac '' --update-channel=${update_channel} + + if ! use x86 && [[ ${CHOST} != armv*h* ]] ; then + mozconfig_add_options_ac '' --enable-rust-simd + fi + + # For future keywording: This is currently (97.0) only supported on: + # amd64, arm, arm64 & x86. + # Might want to flip the logic around if Firefox is to support more arches. + # bug 833001, bug 903411#c8 + if use ppc64 || use riscv; then + mozconfig_add_options_ac '' --disable-sandbox + elif use valgrind; then + mozconfig_add_options_ac 'valgrind requirement' --disable-sandbox + else + mozconfig_add_options_ac '' --enable-sandbox + fi + + # Enable JIT on riscv64 explicitly + # Can be removed once upstream enable it by default in the future. + use riscv && mozconfig_add_options_ac 'Enable JIT for RISC-V 64' --enable-jit + + if [[ -s "${S}/api-google.key" ]] ; then + local key_origin="Gentoo default" + if [[ $(cat "${S}/api-google.key" | md5sum | awk '{ print $1 }') != 709560c02f94b41f9ad2c49207be6c54 ]] ; then + key_origin="User value" + fi + + mozconfig_add_options_ac "${key_origin}" \ + --with-google-safebrowsing-api-keyfile="${S}/api-google.key" + else + einfo "Building without Google API key ..." + fi + + if [[ -s "${S}/api-location.key" ]] ; then + local key_origin="Gentoo default" + if [[ $(cat "${S}/api-location.key" | md5sum | awk '{ print $1 }') != ffb7895e35dedf832eb1c5d420ac7420 ]] ; then + key_origin="User value" + fi + + mozconfig_add_options_ac "${key_origin}" \ + --with-google-location-service-api-keyfile="${S}/api-location.key" + else + einfo "Building without Location API key ..." + fi + + if [[ -s "${S}/api-mozilla.key" ]] ; then + local key_origin="Gentoo default" + if [[ $(cat "${S}/api-mozilla.key" | md5sum | awk '{ print $1 }') != 3927726e9442a8e8fa0e46ccc39caa27 ]] ; then + key_origin="User value" + fi + + mozconfig_add_options_ac "${key_origin}" \ + --with-mozilla-api-keyfile="${S}/api-mozilla.key" + else + einfo "Building without Mozilla API key ..." + fi + + mozconfig_use_with system-av1 + mozconfig_use_with system-harfbuzz + mozconfig_use_with system-harfbuzz system-graphite2 + mozconfig_use_with system-icu + mozconfig_use_with system-jpeg + mozconfig_use_with system-libevent + mozconfig_use_with system-libvpx + mozconfig_use_with system-png + mozconfig_use_with system-webp + + mozconfig_use_enable dbus + mozconfig_use_enable libproxy + mozconfig_use_enable valgrind + + use eme-free && mozconfig_add_options_ac '+eme-free' --disable-eme + + mozconfig_use_enable geckodriver + + if use hardened ; then + mozconfig_add_options_ac "+hardened" --enable-hardening + append-ldflags "-Wl,-z,relro -Wl,-z,now" + + # Increase the FORTIFY_SOURCE value, #910071. + sed -i -e '/-D_FORTIFY_SOURCE=/s:2:3:' "${S}"/build/moz.configure/toolchain.configure || die + fi + + local myaudiobackends="" + use jack && myaudiobackends+="jack," + use sndio && myaudiobackends+="sndio," + use pulseaudio && myaudiobackends+="pulseaudio," + ! use pulseaudio && myaudiobackends+="alsa," + + mozconfig_add_options_ac '--enable-audio-backends' --enable-audio-backends="${myaudiobackends::-1}" + + mozconfig_use_enable wifi necko-wifi + + ! use jumbo-build && mozconfig_add_options_ac '--disable-unified-build' --disable-unified-build + + if use X && use wayland ; then + mozconfig_add_options_ac '+x11+wayland' --enable-default-toolkit=cairo-gtk3-x11-wayland + elif ! use X && use wayland ; then + mozconfig_add_options_ac '+wayland' --enable-default-toolkit=cairo-gtk3-wayland-only + else + mozconfig_add_options_ac '+x11' --enable-default-toolkit=cairo-gtk3-x11-only + fi + + # LTO is handled via configure + filter-lto + + if use lto ; then + if use clang ; then + # Upstream only supports lld or mold when using clang. + if tc-ld-is-mold ; then + # mold expects the -flto line from *FLAGS configuration, bgo#923119 + append-ldflags "-flto=thin" + mozconfig_add_options_ac "using ld=mold due to system selection" --enable-linker=mold + else + mozconfig_add_options_ac "forcing ld=lld due to USE=clang and USE=lto" --enable-linker=lld + fi + + mozconfig_add_options_ac '+lto' --enable-lto=cross + + else + # ThinLTO is currently broken, see bmo#1644409. + # mold does not support gcc+lto combination. + mozconfig_add_options_ac '+lto' --enable-lto=full + mozconfig_add_options_ac "linker is set to bfd" --enable-linker=bfd + fi + + if use pgo ; then + mozconfig_add_options_ac '+pgo' MOZ_PGO=1 + + if use clang ; then + # Used in build/pgo/profileserver.py + export LLVM_PROFDATA="llvm-profdata" + fi + fi + else + # Avoid auto-magic on linker + if use clang ; then + # lld is upstream's default + if tc-ld-is-mold ; then + mozconfig_add_options_ac "using ld=mold due to system selection" --enable-linker=mold + else + mozconfig_add_options_ac "forcing ld=lld due to USE=clang" --enable-linker=lld + fi + + else + if tc-ld-is-mold ; then + mozconfig_add_options_ac "using ld=mold due to system selection" --enable-linker=mold + else + mozconfig_add_options_ac "linker is set to bfd due to USE=-clang" --enable-linker=bfd + fi + fi + fi + + mozconfig_use_enable debug + if use debug ; then + mozconfig_add_options_ac '+debug' --disable-optimize + mozconfig_add_options_ac '+debug' --enable-real-time-tracing + else + mozconfig_add_options_ac 'Gentoo defaults' --disable-real-time-tracing + + if is-flag '-g*' ; then + if use clang ; then + mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols=$(get-flag '-g*') + else + mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols + fi + else + mozconfig_add_options_ac 'Gentoo default' --disable-debug-symbols + fi + + if is-flag '-O0' ; then + mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O0 + elif is-flag '-O4' ; then + mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O4 + elif is-flag '-O3' ; then + mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O3 + elif is-flag '-O1' ; then + mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O1 + elif is-flag '-Os' ; then + mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-Os + else + mozconfig_add_options_ac "Gentoo default" --enable-optimize=-O2 + fi + fi + + # Debug flag was handled via configure + filter-flags '-g*' + + # Optimization flag was handled via configure + filter-flags '-O*' + + # Modifications to better support ARM, bug #553364 + if use cpu_flags_arm_neon ; then + mozconfig_add_options_ac '+cpu_flags_arm_neon' --with-fpu=neon + + if ! tc-is-clang ; then + # thumb options aren't supported when using clang, bug 666966 + mozconfig_add_options_ac '+cpu_flags_arm_neon' \ + --with-thumb=yes \ + --with-thumb-interwork=no + fi + fi + + if [[ ${CHOST} == armv*h* ]] ; then + mozconfig_add_options_ac 'CHOST=armv*h*' --with-float-abi=hard + + if ! use system-libvpx ; then + sed -i \ + -e "s|softfp|hard|" \ + "${S}"/media/libvpx/moz.build \ + || die + fi + fi + + # elf-hack + # Filter "-z,pack-relative-relocs" and let the build system handle it instead. + if use amd64 || use x86 ; then + filter-flags "-z,pack-relative-relocs" + + if tc-ld-is-mold ; then + # relr-elf-hack is currently broken with mold, bgo#916259 + mozconfig_add_options_ac 'disable elf-hack with mold linker' --disable-elf-hack + else + mozconfig_add_options_ac 'relr elf-hack' --enable-elf-hack=relr + fi + elif use ppc64 || use riscv ; then + # '--disable-elf-hack' is not recognized on ppc64/riscv, + # see bgo #917049, #930046 + :; + else + mozconfig_add_options_ac 'disable elf-hack on non-supported arches' --disable-elf-hack + fi + + # Additional ARCH support + case "${ARCH}" in + arm) + # Reduce the memory requirements for linking + if use clang ; then + # Nothing to do + :; + elif use lto ; then + append-ldflags -Wl,--no-keep-memory + else + append-ldflags -Wl,--no-keep-memory -Wl,--reduce-memory-overheads + fi + ;; + esac + + if ! use elibc_glibc; then + mozconfig_add_options_ac '!elibc_glibc' --disable-jemalloc + fi + + if use valgrind; then + mozconfig_add_options_ac 'valgrind requirement' --disable-jemalloc + fi + + # System-av1 fix + use system-av1 && append-ldflags "-Wl,--undefined-version" + + # Allow elfhack to work in combination with unstripped binaries + # when they would normally be larger than 2GiB. + append-ldflags "-Wl,--compress-debug-sections=zlib" + + # Make revdep-rebuild.sh happy; Also required for musl + append-ldflags -Wl,-rpath="${MOZILLA_FIVE_HOME}",--enable-new-dtags + + # Pass $MAKEOPTS to build system + export MOZ_MAKE_FLAGS="${MAKEOPTS}" + + # Use system's Python environment + export PIP_NETWORK_INSTALL_RESTRICTED_VIRTUALENVS=mach + + export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE="none" + + if ! use telemetry; then + mozconfig_add_options_mk '-telemetry setting' "MOZ_CRASHREPORTER=0" + mozconfig_add_options_mk '-telemetry setting' "MOZ_DATA_REPORTING=0" + mozconfig_add_options_mk '-telemetry setting' "MOZ_SERVICES_HEALTHREPORT=0" + mozconfig_add_options_mk '-telemetry setting' "MOZ_TELEMETRY_REPORTING=0" + fi + + # Disable notification when build system has finished + export MOZ_NOSPAM=1 + + # Portage sets XARGS environment variable to "xargs -r" by default which + # breaks build system's check_prog() function which doesn't support arguments + mozconfig_add_options_ac 'Gentoo default' "XARGS=${EPREFIX}/usr/bin/xargs" + + # Set build dir + mozconfig_add_options_mk 'Gentoo default' "MOZ_OBJDIR=${BUILD_DIR}" + + # Show flags we will use + einfo "Build BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}" + einfo "Build CFLAGS:\t\t${CFLAGS:-no value set}" + einfo "Build CXXFLAGS:\t\t${CXXFLAGS:-no value set}" + einfo "Build LDFLAGS:\t\t${LDFLAGS:-no value set}" + einfo "Build RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}" + + # Handle EXTRA_CONF and show summary + local ac opt hash reason + + # Apply EXTRA_ECONF entries to $MOZCONFIG + if [[ -n ${EXTRA_ECONF} ]] ; then + IFS=\! read -a ac <<<${EXTRA_ECONF// --/\!} + for opt in "${ac[@]}"; do + mozconfig_add_options_ac "EXTRA_ECONF" --${opt#--} + done + fi + + echo + echo "==========================================================" + echo "Building ${PF} with the following configuration" + grep ^ac_add_options "${MOZCONFIG}" | while read ac opt hash reason; do + [[ -z ${hash} || ${hash} == \# ]] \ + || die "error reading mozconfig: ${ac} ${opt} ${hash} ${reason}" + printf " %-30s %s\n" "${opt}" "${reason:-mozilla.org default}" + done + echo "==========================================================" + echo + + if use valgrind; then + sed -i -e 's/--enable-optimize=-O[0-9s]/--enable-optimize="-g -O2"/' .mozconfig || die + fi + + ./mach configure || die +} + +src_compile() { + local virtx_cmd= + + if tc-ld-is-mold && use lto; then + # increase ulimit with mold+lto, bugs #892641, #907485 + if ! ulimit -n 16384 1>/dev/null 2>&1 ; then + ewarn "Unable to modify ulimits - building with mold+lto might fail due to low ulimit -n resources." + ewarn "Please see bugs #892641 & #907485." + else + ulimit -n 16384 + fi + fi + + if use pgo; then + # Reset and cleanup environment variables used by GNOME/XDG + gnome2_environment_reset + + addpredict /root + + if ! use X; then + virtx_cmd=virtwl + else + virtx_cmd=virtx + fi + fi + + if ! use X; then + local -x GDK_BACKEND=wayland + else + local -x GDK_BACKEND=x11 + fi + + ${virtx_cmd} ./mach build --verbose || die +} + +src_install() { + # xpcshell is getting called during install + pax-mark m \ + "${BUILD_DIR}"/dist/bin/xpcshell \ + "${BUILD_DIR}"/dist/bin/${PN} \ + "${BUILD_DIR}"/dist/bin/plugin-container + + DESTDIR="${D}" ./mach install || die + + # Upstream cannot ship symlink but we can (bmo#658850) + rm "${ED}${MOZILLA_FIVE_HOME}/${PN}-bin" || die + dosym ${PN} ${MOZILLA_FIVE_HOME}/${PN}-bin + + # Don't install llvm-symbolizer from sys-devel/llvm package + if [[ -f "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" ]] ; then + rm -v "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" || die + fi + + # Install policy (currently only used to disable application updates) + insinto "${MOZILLA_FIVE_HOME}/distribution" + newins "${FILESDIR}"/distribution.ini distribution.ini + newins "${FILESDIR}"/disable-auto-update.policy.json policies.json + + # Install system-wide preferences + local PREFS_DIR="${MOZILLA_FIVE_HOME}/browser/defaults/preferences" + insinto "${PREFS_DIR}" + newins "${FILESDIR}"/gentoo-default-prefs.js gentoo-prefs.js + + local GENTOO_PREFS="${ED}${PREFS_DIR}/gentoo-prefs.js" + + # Set dictionary path to use system hunspell + cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set spellchecker.dictionary_path pref" + pref("spellchecker.dictionary_path", "${EPREFIX}/usr/share/myspell"); + EOF + + # Force hwaccel prefs if USE=hwaccel is enabled + if use hwaccel ; then + cat "${FILESDIR}"/gentoo-hwaccel-prefs.js-r2 \ + >>"${GENTOO_PREFS}" \ + || die "failed to add prefs to force hardware-accelerated rendering to all-gentoo.js" + + if use wayland; then + cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set hwaccel wayland prefs" + pref("gfx.x11-egl.force-enabled", false); + EOF + else + cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set hwaccel x11 prefs" + pref("gfx.x11-egl.force-enabled", true); + EOF + fi + + # Install the vaapitest binary on supported arches (122.0 supports all platforms, bmo#1865969) + exeinto "${MOZILLA_FIVE_HOME}" + doexe "${BUILD_DIR}"/dist/bin/vaapitest + + # Install the v4l2test on supported arches (+ arm, + riscv64 when keyworded) + if use arm64 ; then + exeinto "${MOZILLA_FIVE_HOME}" + doexe "${BUILD_DIR}"/dist/bin/v4l2test + fi + fi + + if ! use gmp-autoupdate ; then + local plugin + for plugin in "${MOZ_GMP_PLUGIN_LIST[@]}" ; do + einfo "Disabling auto-update for ${plugin} plugin ..." + cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to disable autoupdate for ${plugin} media plugin" + pref("media.${plugin}.autoupdate", false); + EOF + done + fi + + # Force the graphite pref if USE=system-harfbuzz is enabled, since the pref cannot disable it + if use system-harfbuzz ; then + cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set gfx.font_rendering.graphite.enabled pref" + sticky_pref("gfx.font_rendering.graphite.enabled", true); + EOF + fi + + # Install language packs + local langpacks=( $(find "${WORKDIR}/language_packs" -type f -name '*.xpi') ) + if [[ -n "${langpacks}" ]] ; then + moz_install_xpi "${MOZILLA_FIVE_HOME}/distribution/extensions" "${langpacks[@]}" + fi + + # Install geckodriver + if use geckodriver ; then + einfo "Installing geckodriver into ${ED}${MOZILLA_FIVE_HOME} ..." + pax-mark m "${BUILD_DIR}"/dist/bin/geckodriver + exeinto "${MOZILLA_FIVE_HOME}" + doexe "${BUILD_DIR}"/dist/bin/geckodriver + + dosym ${MOZILLA_FIVE_HOME}/geckodriver /usr/bin/geckodriver + fi + + # Install icons + local icon_srcdir="${S}/browser/branding/official" + local icon_symbolic_file="${FILESDIR}/icon/firefox-symbolic.svg" + + insinto /usr/share/icons/hicolor/symbolic/apps + newins "${icon_symbolic_file}" ${PN}-symbolic.svg + + local icon size + for icon in "${icon_srcdir}"/default*.png ; do + size=${icon%.png} + size=${size##*/default} + + if [[ ${size} -eq 48 ]] ; then + newicon "${icon}" ${PN}.png + fi + + newicon -s ${size} "${icon}" ${PN}.png + done + + # Install menu + local app_name="Mozilla ${MOZ_PN^}" + local desktop_file="${FILESDIR}/icon/${PN}-r3.desktop" + local desktop_filename="${PN}.desktop" + local exec_command="${PN}" + local icon="${PN}" + local use_wayland="false" + + if use wayland ; then + use_wayland="true" + fi + + cp "${desktop_file}" "${WORKDIR}/${PN}.desktop-template" || die + + sed -i \ + -e "s:@NAME@:${app_name}:" \ + -e "s:@EXEC@:${exec_command}:" \ + -e "s:@ICON@:${icon}:" \ + "${WORKDIR}/${PN}.desktop-template" \ + || die + + newmenu "${WORKDIR}/${PN}.desktop-template" "${desktop_filename}" + + rm "${WORKDIR}/${PN}.desktop-template" || die + + # Install wrapper script + [[ -f "${ED}/usr/bin/${PN}" ]] && rm "${ED}/usr/bin/${PN}" + newbin "${FILESDIR}/${PN}-r1.sh" ${PN} + + # Update wrapper + sed -i \ + -e "s:@PREFIX@:${EPREFIX}/usr:" \ + -e "s:@MOZ_FIVE_HOME@:${MOZILLA_FIVE_HOME}:" \ + -e "s:@APULSELIB_DIR@:${apulselib}:" \ + -e "s:@DEFAULT_WAYLAND@:${use_wayland}:" \ + "${ED}/usr/bin/${PN}" \ + || die + + readme.gentoo_create_doc +} + +pkg_preinst() { + xdg_pkg_preinst + + # If the apulse libs are available in MOZILLA_FIVE_HOME then apulse + # does not need to be forced into the LD_LIBRARY_PATH + if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then + einfo "APULSE found; Generating library symlinks for sound support ..." + local lib + pushd "${ED}${MOZILLA_FIVE_HOME}" &>/dev/null || die + for lib in ../apulse/libpulse{.so{,.0},-simple.so{,.0}} ; do + # A quickpkg rolled by hand will grab symlinks as part of the package, + # so we need to avoid creating them if they already exist. + if [[ ! -L ${lib##*/} ]] ; then + ln -s "${lib}" ${lib##*/} || die + fi + done + popd &>/dev/null || die + fi +} + +pkg_postinst() { + xdg_pkg_postinst + + if ! use gmp-autoupdate ; then + elog "USE='-gmp-autoupdate' has disabled the following plugins from updating or" + elog "installing into new profiles:" + local plugin + for plugin in "${MOZ_GMP_PLUGIN_LIST[@]}" ; do + elog "\t ${plugin}" + done + elog + fi + + if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then + elog "Apulse was detected at merge time on this system and so it will always be" + elog "used for sound. If you wish to use pulseaudio instead please unmerge" + elog "media-sound/apulse." + elog + fi + + # bug 835078 + if use hwaccel && has_version "x11-drivers/xf86-video-nouveau"; then + ewarn "You have nouveau drivers installed in your system and 'hwaccel' " + ewarn "enabled for Firefox. Nouveau / your GPU might not support the " + ewarn "required EGL, so either disable 'hwaccel' or try the workaround " + ewarn "explained in https://bugs.gentoo.org/835078#c5 if Firefox crashes." + fi + + readme.gentoo_print_elog + + optfeature_header "Optional programs for extra features:" + optfeature "desktop notifications" x11-libs/libnotify + optfeature "fallback mouse cursor theme e.g. on WMs" gnome-base/gsettings-desktop-schemas + optfeature "screencasting with pipewire" sys-apps/xdg-desktop-portal + if use hwaccel && has_version "x11-drivers/nvidia-drivers"; then + optfeature "hardware acceleration with NVIDIA cards" media-libs/nvidia-vaapi-driver + fi + + if ! has_version "sys-libs/glibc"; then + elog + elog "glibc not found! You won't be able to play DRM content." + elog "See Gentoo bug #910309 or upstream bug #1843683." + elog + fi + + if use geckodriver ; then + ewarn "You have enabled the 'geckodriver' USE flag. Geckodriver is now" + ewarn "packaged separately as net-misc/geckodriver and the use flag will be" + ewarn "dropped from main Firefox package by Firefox 128.0 release." + fi +} diff --git a/www-client/google-chrome-unstable/Manifest b/www-client/google-chrome-unstable/Manifest index 7380d926aab0..89bf8ab06a35 100644 --- a/www-client/google-chrome-unstable/Manifest +++ b/www-client/google-chrome-unstable/Manifest @@ -1,3 +1,3 @@ -DIST google-chrome-unstable_128.0.6535.2-1_amd64.deb 109248816 BLAKE2B c270ea7c8bee8112e4839e9a0bbfcee5dfc707c50a78d74e27104c1c2ffb3e339282f01eaec98264f06518a9b115e5ff15774490fbdc6557c2a1d56d0eb95d39 SHA512 a8cd325ffe48a46ae676a773b49b728c409fa6d31cb4029e090826b137d0e201a3325888e3b54a9b7a0f59f6590c9b9ce8abc7651477902b56dd3fd0dbcd7d2a -EBUILD google-chrome-unstable-128.0.6535.2.ebuild 2983 BLAKE2B c0683d291bd6459daf64a35c34b4d56824b1c1119afe758af8bc18dc2a3625f16c5e94b4a137a8fd5b7673d36d3b6e559df17269ad3dce405643edb809137e10 SHA512 b00a89fbd7d0d9dd1a999ae2b01b7aec9ad2b6e7b9bde8727e22b9a35769da5ed7fe351fcca6681e02007380662b0688a2990f205b1dfed8effb91d991ab21d4 +DIST google-chrome-unstable_128.0.6555.2-1_amd64.deb 109871140 BLAKE2B 2bc6db0a021f8161ecdde53365b5bbe203eebd40e23886866b5e5e60f1dc98b3e1db481b20f97ee64a6cc5256df7fcb3c07d02905372ca927e2990e0b815b507 SHA512 219ba6ce068fb6311c4a423e64c35a96dc7944e63702d460ed9b47499abf62c3ee0218e16fbc93a8d36b735ea0242e2e32f43f07bac32480ddb14a25b37ab45e +EBUILD google-chrome-unstable-128.0.6555.2.ebuild 2983 BLAKE2B c0683d291bd6459daf64a35c34b4d56824b1c1119afe758af8bc18dc2a3625f16c5e94b4a137a8fd5b7673d36d3b6e559df17269ad3dce405643edb809137e10 SHA512 b00a89fbd7d0d9dd1a999ae2b01b7aec9ad2b6e7b9bde8727e22b9a35769da5ed7fe351fcca6681e02007380662b0688a2990f205b1dfed8effb91d991ab21d4 MISC metadata.xml 437 BLAKE2B 35ab5a754d8e65db84e25b08c76bed923c2f9eb1b1d65687dda842313b5f339c90cbb3eb8fe12ecb58f201383955ad8f72a5b34484265194a3fcffcf760122ef SHA512 82e6057b085e849bc5484b53fef974022bb9db33836502e8d54fca3c8f54f47768f9b0ed4591d90a444e82142e727d4e4071236b114705f91c005f170b2a3986 diff --git a/www-client/google-chrome-unstable/google-chrome-unstable-128.0.6535.2.ebuild b/www-client/google-chrome-unstable/google-chrome-unstable-128.0.6555.2.ebuild index dd9e9c497aea..dd9e9c497aea 100644 --- a/www-client/google-chrome-unstable/google-chrome-unstable-128.0.6535.2.ebuild +++ b/www-client/google-chrome-unstable/google-chrome-unstable-128.0.6555.2.ebuild diff --git a/www-client/google-chrome/Manifest b/www-client/google-chrome/Manifest index 36bad3383946..8218ccdf8501 100644 --- a/www-client/google-chrome/Manifest +++ b/www-client/google-chrome/Manifest @@ -1,3 +1,3 @@ -DIST google-chrome-stable_126.0.6478.114-1_amd64.deb 108805872 BLAKE2B 456742a69f8fefba9a7bc55ec80a803f4450581967c43d7934ac30d94e0bba618273375d389bd495bb8ecf00d5f56d48007d8102356b0f7917238867b568f8c9 SHA512 e92ce15324969327f906195382993bafe73a7225c549b09b400afaae7953c5ccb31d3364a269f9e8050971621858bd9da9fde655dd36b8ad7d8ec116d245f37a -EBUILD google-chrome-126.0.6478.114.ebuild 2982 BLAKE2B 94c28a910834b70ccfa642f6e5372dce9e534bf5b9c210516958e8cd96c4b8e042d360a9fa5c85d13cbe4b152a26b7751f5f87ab832002fe21e83f2cdf03f47e SHA512 23c9d78446da4b7ceef659dd659af367733abb766207e343fc991122d13744e3d67b0919d9d6371df5fc43815301c062087e1ce8d685e41ad0613e352b8c96ee +DIST google-chrome-stable_126.0.6478.126-1_amd64.deb 108773084 BLAKE2B 4e59333e6073b2b7320b50551a6241fc402509398a404742e63ccde60dce3a9c8d5a490a0b9fb4a9a409562ee4ea078ac1a6d441b0ead94bd40792b16afa48f9 SHA512 cae09818d2032253e1d9a8e58dfde53d56bb4fd63de0b7ad89bc6558da66103220057dce331ae519fa79e7ec140f116bc8d3e10200eb9845bb278aeaf3cf5d95 +EBUILD google-chrome-126.0.6478.126.ebuild 2982 BLAKE2B 94c28a910834b70ccfa642f6e5372dce9e534bf5b9c210516958e8cd96c4b8e042d360a9fa5c85d13cbe4b152a26b7751f5f87ab832002fe21e83f2cdf03f47e SHA512 23c9d78446da4b7ceef659dd659af367733abb766207e343fc991122d13744e3d67b0919d9d6371df5fc43815301c062087e1ce8d685e41ad0613e352b8c96ee MISC metadata.xml 437 BLAKE2B 35ab5a754d8e65db84e25b08c76bed923c2f9eb1b1d65687dda842313b5f339c90cbb3eb8fe12ecb58f201383955ad8f72a5b34484265194a3fcffcf760122ef SHA512 82e6057b085e849bc5484b53fef974022bb9db33836502e8d54fca3c8f54f47768f9b0ed4591d90a444e82142e727d4e4071236b114705f91c005f170b2a3986 diff --git a/www-client/google-chrome/google-chrome-126.0.6478.114.ebuild b/www-client/google-chrome/google-chrome-126.0.6478.126.ebuild index a6673ff33b80..a6673ff33b80 100644 --- a/www-client/google-chrome/google-chrome-126.0.6478.114.ebuild +++ b/www-client/google-chrome/google-chrome-126.0.6478.126.ebuild diff --git a/www-client/microsoft-edge-beta/Manifest b/www-client/microsoft-edge-beta/Manifest index 28fb0fe7274f..01c4014158bc 100644 --- a/www-client/microsoft-edge-beta/Manifest +++ b/www-client/microsoft-edge-beta/Manifest @@ -1,7 +1,7 @@ -DIST microsoft-edge-beta_126.0.2592.56-1_amd64.deb 168025734 BLAKE2B 55f7984e882a1a2b394923bcf1301a3649e4f041ab6dfe390b7e29e4f203547f3ffe0e3cce4e36142b5de923a6eecd6d776a4472231a2ebfc9316ac4ee14ad02 SHA512 5596e0754c3f443366838104b99e60a4991d42875b59e02e494db0d65b241a2fb483be675fa862e52a3f67f4e9edd173dc1ce4489f942585faa916b9d5c814b8 -DIST microsoft-edge-beta_126.0.2592.61-1_amd64.deb 168052066 BLAKE2B 01030d90820b785bdbb141faaca9d11ac98ff94961704142f6512b214c152c26cd563b4ce73ce95c5d425b3d1f75661c2f1233c35a3a4d4cd6c6bf28fb6b91a7 SHA512 5d997eed31300965a14a2bd3829bed2f1446d181d3d9e4c2082417e4cca628073e01f4e767a4ac4724b67180de2aac6f8ee593ec05937a86d5033939145906af DIST microsoft-edge-beta_126.0.2592.68-1_amd64.deb 168093970 BLAKE2B 5a5d84c1fe5fab744c48941eeb3c61f1c5ec1c2fa88f61ece81c865879320b9e2b40dadef6f84b3b1f8228e14076e60134ceaf9cbd7d3db30aa05a9f43f31cb5 SHA512 e0b75ef6671a9cda080622464ccfc41b7377d4cc7556f416c065a4d49c6d3f6f6b8da81bc33c143b064aca3b9817562f199fdd28d4d55734eb54b0df5651d6a8 -EBUILD microsoft-edge-beta-126.0.2592.56.ebuild 2712 BLAKE2B e4c40954c5106692f7b454e32c79e47cdc99c09b2e1aa02a263951adcafb56ef2179235210e2c1c4a24b7571338c9329d46bf7c5fa8430284be2e1d2eb447148 SHA512 1d1a784a1b19db517d78db66fd8457b5dbfe803f852cf82d7137bd18f624618e91016f38f571e0d848542a17788d01685228863fb005cc8de4bbb96381e3044b -EBUILD microsoft-edge-beta-126.0.2592.61.ebuild 2712 BLAKE2B e4c40954c5106692f7b454e32c79e47cdc99c09b2e1aa02a263951adcafb56ef2179235210e2c1c4a24b7571338c9329d46bf7c5fa8430284be2e1d2eb447148 SHA512 1d1a784a1b19db517d78db66fd8457b5dbfe803f852cf82d7137bd18f624618e91016f38f571e0d848542a17788d01685228863fb005cc8de4bbb96381e3044b +DIST microsoft-edge-beta_127.0.2651.15-1_amd64.deb 166274998 BLAKE2B 68b5e24fb80c0b9069e13349b05a44f5b2e8cfa5aa41256b4c0bf35ccb8a32da6d1fbb52620f81a873afd63a816ecc3da9a146b83fd2e24f601240c4cbcf674c SHA512 6121ac0e214b10235317ca4909668c49ad39e8be37f023a753df4ea01f2c16e6e36f7852a692fc1181e182d938fb6a2b4ffd46453ec330fa3b29a93bd09d9e46 +DIST microsoft-edge-beta_127.0.2651.8-1_amd64.deb 166235390 BLAKE2B 7fc059f64479348bf03fef05c3690bfede9f9036057b1dc6c69d268af37c049622cb036143211754382c566ff41846fbd2bcf28472a93425965f8a8cdaaf9978 SHA512 3eb1b79a878837eddf6ae36d4366ada21c0ec922b55dc1538fee4a07537dc5b8a97f31b25959379df444a3cea47aecef677d9b2924fa9863eaed6a41af9ac5b4 EBUILD microsoft-edge-beta-126.0.2592.68.ebuild 2712 BLAKE2B e4c40954c5106692f7b454e32c79e47cdc99c09b2e1aa02a263951adcafb56ef2179235210e2c1c4a24b7571338c9329d46bf7c5fa8430284be2e1d2eb447148 SHA512 1d1a784a1b19db517d78db66fd8457b5dbfe803f852cf82d7137bd18f624618e91016f38f571e0d848542a17788d01685228863fb005cc8de4bbb96381e3044b +EBUILD microsoft-edge-beta-127.0.2651.15.ebuild 2712 BLAKE2B e4c40954c5106692f7b454e32c79e47cdc99c09b2e1aa02a263951adcafb56ef2179235210e2c1c4a24b7571338c9329d46bf7c5fa8430284be2e1d2eb447148 SHA512 1d1a784a1b19db517d78db66fd8457b5dbfe803f852cf82d7137bd18f624618e91016f38f571e0d848542a17788d01685228863fb005cc8de4bbb96381e3044b +EBUILD microsoft-edge-beta-127.0.2651.8.ebuild 2712 BLAKE2B e4c40954c5106692f7b454e32c79e47cdc99c09b2e1aa02a263951adcafb56ef2179235210e2c1c4a24b7571338c9329d46bf7c5fa8430284be2e1d2eb447148 SHA512 1d1a784a1b19db517d78db66fd8457b5dbfe803f852cf82d7137bd18f624618e91016f38f571e0d848542a17788d01685228863fb005cc8de4bbb96381e3044b MISC metadata.xml 528 BLAKE2B ef09f12e6f9b503cd78a39ece67ab0b21c4760114b052bf105b7c5e426a1df43a5b37ff547338fc7122ac8a029b2ebb85a8793dbd4d192ae990ae71829dcdec6 SHA512 b6ab632cfce365f249a178a261eba3d469cd645cdcb99dd1bc4f1e865fbd6668cfd0f7171843e2b234ff852f8191a8b08b48cf89991cdfc7ca36337a71e5a38d diff --git a/www-client/microsoft-edge-beta/microsoft-edge-beta-126.0.2592.56.ebuild b/www-client/microsoft-edge-beta/microsoft-edge-beta-127.0.2651.15.ebuild index 0ff710cc5ddc..0ff710cc5ddc 100644 --- a/www-client/microsoft-edge-beta/microsoft-edge-beta-126.0.2592.56.ebuild +++ b/www-client/microsoft-edge-beta/microsoft-edge-beta-127.0.2651.15.ebuild diff --git a/www-client/microsoft-edge-beta/microsoft-edge-beta-126.0.2592.61.ebuild b/www-client/microsoft-edge-beta/microsoft-edge-beta-127.0.2651.8.ebuild index 0ff710cc5ddc..0ff710cc5ddc 100644 --- a/www-client/microsoft-edge-beta/microsoft-edge-beta-126.0.2592.61.ebuild +++ b/www-client/microsoft-edge-beta/microsoft-edge-beta-127.0.2651.8.ebuild diff --git a/www-client/microsoft-edge-dev/Manifest b/www-client/microsoft-edge-dev/Manifest index b82d2111125a..fc639153c11e 100644 --- a/www-client/microsoft-edge-dev/Manifest +++ b/www-client/microsoft-edge-dev/Manifest @@ -1,7 +1,7 @@ -DIST microsoft-edge-dev_127.0.2620.3-1_amd64.deb 168519466 BLAKE2B b6e7a80d4dd176704054d82823323ee4af6d5858dbbb11516e9919b980fecbc2c744292e80c31cb435c05889d073cc21d3595acf2158000b22b4385288fdc772 SHA512 a509b88aa4754c330792c430ce36cd504882b82776664eca228286c457d00c116b96bb290ae9ab39b4c114ce3380b9394c33b1c8ebc24cd44d5c26b563b73906 -DIST microsoft-edge-dev_127.0.2638.2-1_amd64.deb 168656286 BLAKE2B 242a4ec43d7c7b2f666190a52e28651caddb4f839d97b6fad29844cc0fde26f0bb520e06ef5aad573b5d2b5345e422bb9f7a70a83eeb9df5c4ef8a285fe663f4 SHA512 0cf7293b42db643afb340e2e437bd9a62ddb3501d3140f9d7716f938d69b4dd9e112e1aa002dcbdfdf1fd0b84e045aab95f200c6523856beed29b7bfc3e76b80 DIST microsoft-edge-dev_127.0.2651.2-1_amd64.deb 166275802 BLAKE2B a1642320646c17148e0355a43983128de51c934cca26fe2c20fd852f726c0fe4bd93fda399800e26a86039dbb48288a0451ecc9fe106c19b4dde33391cb48840 SHA512 e17477338e695c2cf91603d62375b22356d68c00c1c07b0dce7dd90c202e53d6b8e94980183b44526117ceed4c0673d2e3d74006ec4828395dd6ea1c1c7a00d9 -EBUILD microsoft-edge-dev-127.0.2620.3.ebuild 2712 BLAKE2B e4c40954c5106692f7b454e32c79e47cdc99c09b2e1aa02a263951adcafb56ef2179235210e2c1c4a24b7571338c9329d46bf7c5fa8430284be2e1d2eb447148 SHA512 1d1a784a1b19db517d78db66fd8457b5dbfe803f852cf82d7137bd18f624618e91016f38f571e0d848542a17788d01685228863fb005cc8de4bbb96381e3044b -EBUILD microsoft-edge-dev-127.0.2638.2.ebuild 2712 BLAKE2B e4c40954c5106692f7b454e32c79e47cdc99c09b2e1aa02a263951adcafb56ef2179235210e2c1c4a24b7571338c9329d46bf7c5fa8430284be2e1d2eb447148 SHA512 1d1a784a1b19db517d78db66fd8457b5dbfe803f852cf82d7137bd18f624618e91016f38f571e0d848542a17788d01685228863fb005cc8de4bbb96381e3044b +DIST microsoft-edge-dev_127.0.2651.8-1_amd64.deb 166223282 BLAKE2B a45295f0a41c739eab3ff926a1f7250ec4285c423243018005f9ba3f2f720a90ad37d7278ba422664caff89c150498f9238afce8560e6c080e5315993e534188 SHA512 d333c6b9ee120c106757e8ca1bbd03ede0342900d517add720a57c21ecb07c7d0010ac4aed1ea8a00fa08412d1a76bc8f15a79516b5de100ba421018fb924b58 +DIST microsoft-edge-dev_128.0.2661.0-1_amd64.deb 166470038 BLAKE2B 2e0ba0688d6bb0759f5bd3311dadab16fe659a7f50c1b9786fe75f9f8304617fe5e3c6baf7526fbab6724866131729effbf6577513201f503bdeae7a504d544c SHA512 c88bf304dc552f68f49a07b3f8bbad28b96b593e18d161884c7898f67768361e01c653f3681512fb27fe0c8949f5211ed4fd70ce14c12c896452441be2ccc2d3 EBUILD microsoft-edge-dev-127.0.2651.2.ebuild 2712 BLAKE2B e4c40954c5106692f7b454e32c79e47cdc99c09b2e1aa02a263951adcafb56ef2179235210e2c1c4a24b7571338c9329d46bf7c5fa8430284be2e1d2eb447148 SHA512 1d1a784a1b19db517d78db66fd8457b5dbfe803f852cf82d7137bd18f624618e91016f38f571e0d848542a17788d01685228863fb005cc8de4bbb96381e3044b +EBUILD microsoft-edge-dev-127.0.2651.8.ebuild 2712 BLAKE2B e4c40954c5106692f7b454e32c79e47cdc99c09b2e1aa02a263951adcafb56ef2179235210e2c1c4a24b7571338c9329d46bf7c5fa8430284be2e1d2eb447148 SHA512 1d1a784a1b19db517d78db66fd8457b5dbfe803f852cf82d7137bd18f624618e91016f38f571e0d848542a17788d01685228863fb005cc8de4bbb96381e3044b +EBUILD microsoft-edge-dev-128.0.2661.0.ebuild 2712 BLAKE2B e4c40954c5106692f7b454e32c79e47cdc99c09b2e1aa02a263951adcafb56ef2179235210e2c1c4a24b7571338c9329d46bf7c5fa8430284be2e1d2eb447148 SHA512 1d1a784a1b19db517d78db66fd8457b5dbfe803f852cf82d7137bd18f624618e91016f38f571e0d848542a17788d01685228863fb005cc8de4bbb96381e3044b MISC metadata.xml 528 BLAKE2B ef09f12e6f9b503cd78a39ece67ab0b21c4760114b052bf105b7c5e426a1df43a5b37ff547338fc7122ac8a029b2ebb85a8793dbd4d192ae990ae71829dcdec6 SHA512 b6ab632cfce365f249a178a261eba3d469cd645cdcb99dd1bc4f1e865fbd6668cfd0f7171843e2b234ff852f8191a8b08b48cf89991cdfc7ca36337a71e5a38d diff --git a/www-client/microsoft-edge-dev/microsoft-edge-dev-127.0.2620.3.ebuild b/www-client/microsoft-edge-dev/microsoft-edge-dev-127.0.2651.8.ebuild index 0ff710cc5ddc..0ff710cc5ddc 100644 --- a/www-client/microsoft-edge-dev/microsoft-edge-dev-127.0.2620.3.ebuild +++ b/www-client/microsoft-edge-dev/microsoft-edge-dev-127.0.2651.8.ebuild diff --git a/www-client/microsoft-edge-dev/microsoft-edge-dev-127.0.2638.2.ebuild b/www-client/microsoft-edge-dev/microsoft-edge-dev-128.0.2661.0.ebuild index 0ff710cc5ddc..0ff710cc5ddc 100644 --- a/www-client/microsoft-edge-dev/microsoft-edge-dev-127.0.2638.2.ebuild +++ b/www-client/microsoft-edge-dev/microsoft-edge-dev-128.0.2661.0.ebuild diff --git a/www-client/opera/Manifest b/www-client/opera/Manifest index 0229348c1bf3..da450fe892d6 100644 --- a/www-client/opera/Manifest +++ b/www-client/opera/Manifest @@ -1,3 +1,3 @@ -DIST opera-stable_111.0.5168.25_amd64.deb 110244468 BLAKE2B c6685634269272d6803c2232bddaf47a8c1d9ac3dd5131d432b0784bb38fae5c674d5543c8419bd5427ee2d58ce94a2c8106810e96476fbbb8dd0439e60edea3 SHA512 d7799f35d284d7a08abc4b6b02d83ce852916a9dc38fd6af6f600850fb7f27b9869d5e0e555c7a4d7ce252f7435596c96d25a7b47aa086e9aee23ea067152adf -EBUILD opera-111.0.5168.25.ebuild 4222 BLAKE2B 1091bc144473a96cbc91da218fbf249d640c7dd37ff38a7796043c1cd20a670bc1342221af7d80369b0f0f7c2a65815547cc117f49436392f5490c76d98df9dc SHA512 ecf572caaf6133d3824f38555c1d9c1ac4045f23400bdf81f824735714e9e8d454ff81e6657f3e9654e4a61bd3e3e83458f3dee0f33f0bc7fa8ddbe4ac2e21bf +DIST opera-stable_111.0.5168.43_amd64.deb 110234408 BLAKE2B 751b98f71b18c81824c3ed0dedf6dd0f5c36c6c6ca7ff1f1682bdf2ba2a76ca24c88229fabceaff337bdf9c70fd0e0ce473ada7ee0caaa47f5985175868a4a42 SHA512 819eff9c2ae927f03f713ff749b5a4f8457ad3db6bc8e09c21fb2533fcbd4aba175cab7f724696b286bc6d010221637139b17cc41709de77e747973ede5e1661 +EBUILD opera-111.0.5168.43.ebuild 4222 BLAKE2B 1091bc144473a96cbc91da218fbf249d640c7dd37ff38a7796043c1cd20a670bc1342221af7d80369b0f0f7c2a65815547cc117f49436392f5490c76d98df9dc SHA512 ecf572caaf6133d3824f38555c1d9c1ac4045f23400bdf81f824735714e9e8d454ff81e6657f3e9654e4a61bd3e3e83458f3dee0f33f0bc7fa8ddbe4ac2e21bf MISC metadata.xml 544 BLAKE2B 94b2f6807c021794769fc62b041c69bd08a0d307c51db96109bd45a1fff240d586c51daa91e894055e47291505750f07e9054b6b1b364a691c18f5711acbe9b4 SHA512 691c7b62fa7c8a46e4cc981a2f211a1609b1c57620aca668b001eeaa2cbcd2f38299680c4707a73a8f32ee19b054cd131a2b09600bac30b8530af35142694ff7 diff --git a/www-client/opera/opera-111.0.5168.25.ebuild b/www-client/opera/opera-111.0.5168.43.ebuild index 0de1bebfcf29..0de1bebfcf29 100644 --- a/www-client/opera/opera-111.0.5168.25.ebuild +++ b/www-client/opera/opera-111.0.5168.43.ebuild |