diff options
Diffstat (limited to 'community/chromium/APKBUILD')
-rw-r--r-- | community/chromium/APKBUILD | 716 |
1 files changed, 378 insertions, 338 deletions
diff --git a/community/chromium/APKBUILD b/community/chromium/APKBUILD index ad72282b4c7..92e69e5e906 100644 --- a/community/chromium/APKBUILD +++ b/community/chromium/APKBUILD @@ -1,49 +1,75 @@ # Contributor: Carlo Landmeter <clandmeter@alpinelinux.org> -# Maintainer: Natanael Copa <ncopa@alpinelinux.org> +# Contributor: Natanael Copa <ncopa@alpinelinux.org> +# Contributor: Elly Fong-Jones <elly@elly.town> +# Maintainer: lauren n. liberda <lauren@selfisekai.rocks> pkgname=chromium -pkgver=103.0.5060.53 +pkgver=124.0.6367.78 pkgrel=0 +_copium_tag=124.6 +# https://source.chromium.org/chromium/chromium/src/+/main:third_party/test_fonts/test_fonts.tar.gz.sha1 +# (for the given version, when it changes) +_testfonts=336e775eec536b2d785cc80eff6ac39051931286 pkgdesc="Chromium web browser" url="https://www.chromium.org/Home" -arch="aarch64 x86_64" # x86: ./v8_context_snapshot_generator segfaults +arch="aarch64 armv7 x86_64" license="BSD-3-Clause" +# explicit depends for --headless +# XXX: eudev-libs replaced by so:libudev.so.1 to allow installation with libudev-zero +# take care if libudev.so ever updates somajor.. +depends=" + font-opensans + gtk+3.0 + icu-data-full + mesa-dri-gallium + musl>=1.2.3_git20230322-r0 + so:libudev.so.1 + xdg-utils + " makedepends=" alsa-lib-dev bash - bison flex + bison bsd-compat-headers + brotli-dev bzip2-dev cairo-dev clang-dev + compiler-rt + crc32c-dev cups-dev curl-dev + dav1d-dev dbus-glib-dev + double-conversion-dev elfutils elfutils-dev eudev-dev ffmpeg-dev findutils flac-dev + flatbuffers-dev + flex freetype-dev + gn gperf gtk+3.0-dev gzip harfbuzz-dev + highway-dev hunspell-dev - hwids-usb - java-jdk + hwdata-dev jpeg-dev - jsoncpp-dev krb5-dev lcms2-dev libbsd-dev libcap-dev + libevdev-dev libevent-dev libexif-dev + libffi-dev libgcrypt-dev - libgnome-keyring-dev libjpeg-turbo-dev - libpng-dev + libsecret-dev libusb-dev libva-dev libwebp-dev @@ -56,11 +82,12 @@ makedepends=" libxslt-dev linux-headers lld + llvm mesa-dev minizip-dev - ninja - nodejs + nodejs-current nss-dev + openh264-dev opus-dev pciutils-dev perl @@ -68,77 +95,107 @@ makedepends=" pulseaudio-dev py3-setuptools python3 - re2-dev - snappy-dev + qt5-qtbase-dev + rust + samurai speex-dev sqlite-dev xcb-proto - xdg-utils zlib-dev + zstd-dev " -# explicit depends for --headless -# XXX: eudev-libs replaced by so:libudev.so.1 to allow installation with libudev-zero -# take care if libudev.so ever updates somajor.. -depends="xdg-utils so:libudev.so.1 gtk+3.0 font-opensans" -options="suid !check" # broken +checkdepends="py3-six" subpackages=" - $pkgname-angle + $pkgname-qt5 $pkgname-chromedriver $pkgname-doc $pkgname-lang $pkgname-swiftshader " source="https://commondatastorage.googleapis.com/chromium-browser-official/chromium-$pkgver.tar.xz - test_fonts-cd96fc55dc243f6c6f4cb63ad117cad6cd48dceb.tar.gz::https://chromium-fonts.storage.googleapis.com/cd96fc55dc243f6c6f4cb63ad117cad6cd48dceb + https://commondatastorage.googleapis.com/chromium-browser-official/chromium-$pkgver-testdata.tar.xz + test_fonts-$_testfonts.tar.gz::https://chromium-fonts.storage.googleapis.com/$_testfonts + copium-$_copium_tag.tar.gz::https://codeberg.org/selfisekai/copium/archive/$_copium_tag.tar.gz chromium-launcher.sh chromium.conf google-api.keys - default-pthread-stacksize.patch - musl-fixes.patch - no-getcontext.patch - musl-hacks.patch - musl-libc++.patch - musl-sandbox.patch - no-execinfo.patch - no-mallinfo.patch - resolver.patch - musl-stat.patch - - chromium-use-alpine-target.patch - media-base.patch - musl-crashpad.patch - musl-v8-monotonic-pthread-cont_timedwait.patch - nasm.patch - - elf-arm.patch - - fix-narrowing-cast.patch - - fix-unittests-sandbox.patch - chromium-revert-drop-of-system-java.patch - scoped-file.patch - remove-strip_binary.patch + compiler.patch + disable-dns_config_service.patch + disable-failing-tests.patch + fc-cache-version.patch + fix-missing-cstdint-include-musl.patch + fix-opus.patch + fstatat-32bit.patch gdbinit.patch - quiche-arena-size.patch - - revert-use-ffile-compilation-dir.patch - chromium-VirtualCursor-standard-layout.patch - - credentials-header.patch - + generic-sensor-include.patch + import-version.patch + libstdc++13.patch + mman.patch + musl-auxv.patch + musl-sandbox.patch musl-tid-caching.patch - - memory-tagging-arm64.patch - fix-missing-cstdint-include-musl.patch - - roll-src-third_party-ffmpeg.patch - remove-no-opaque-pointers-flag.patch -" + musl-v8-monotonic-pthread-cont_timedwait.patch + no-execinfo.patch + no-mallinfo.patch + no-res-ninit-nclose.patch + no-sandbox-settls.patch + partalloc-no-tagging-arm64.patch + perfetto-libstdc++.patch + pvalloc.patch + random-fixes.patch + quiche-array.patch + system-zstd.patch + temp-failure-retry.patch + yes-musl.patch + " +_copium_patches=" + cr124-fix-ozone-platform-hint.patch + cr124-iwyu-sys-select-dawn-terminal.patch + cr124-libwebp-shim-sharpyuv.patch + " +# chrome-sandbox can use suid when user namespaces aren't available, but uses only userns and drops privileges normally +options="suid" + +# backwards compat (merged into primary) +provides="$pkgname-angle=$pkgver-r$pkgrel" + +case "$CARCH" in +riscv64) + ;; +*) + # dbg outside riscv only + subpackages="$pkgname-dbg $subpackages" + ;; +esac + +case "$CARCH" in +x86_64) + ;; +*) + # 32-bit fails a bunch of tests for various size-related reasons + # aarch64 gets timeout related failures due to builder setup, no easy way to + # raise timeouts + options="$options !check" + ;; +esac # secfixes: -# 103.0.5060.115-r0: +# 116.0.5845.187-r0: +# - CVE-2023-4863 +# 103.0.5060.134-r0: +# - CVE-2022-2163 +# - CVE-2022-2477 +# - CVE-2022-2478 +# - CVE-2022-2479 +# - CVE-2022-2480 +# - CVE-2022-2481 +# 103.0.5060.114-r0: +# - CVE-2022-2294 +# - CVE-2022-2295 +# - CVE-2022-2296 +# 103.0.5060.53-r0: # - CVE-2022-2156 # - CVE-2022-2157 # - CVE-2022-2158 @@ -432,18 +489,6 @@ source="https://commondatastorage.googleapis.com/chromium-browser-official/chrom # 72.0.3626.121-r0: # - CVE-2019-5786 -if [ -n "$CHECK" ]; then - options="suid" -fi - -_buildtype=Release -if [ -n "$DEBUG" ]; then - _symbol_level=2 - subpackages="$subpackages $pkgname-dbg" -else - _symbol_level=0 -fi - upstream_version() { curl --silent https://omahaproxy.appspot.com/all \ | awk -F, '$1 == "linux" && $2 == "stable" {print $3}' @@ -452,7 +497,21 @@ upstream_version() { prepare() { default_prepare - cd "$srcdir"/"chromium-$pkgver" + for i in $_copium_patches; do + case "$i" in + *.patch) + msg "${i%::*}" + patch -p1 -i "$srcdir/copium/$i" || failed="$failed $i" + ;; + esac + done + if [ ! -z "$failed" ]; then + error "The following patches failed to apply:" + for i in $failed; do + printf " %s\n" "$i" >&2 + done + exit 1 + fi mv ../test_fonts/ ./third_party/test_fonts/ @@ -466,32 +525,47 @@ prepare() { ln -s /usr/bin/node third_party/node/linux/node-linux-x64/bin/ # reusable system library settings + # libavif - https://github.com/AOMediaCodec/libavif/commit/50a541469c98009016af8dcc9f83a1be79f3a7d9 + # libaom - https://aomedia.googlesource.com/aom/+/706ee36dcc82%5E%21/ + # but watch this space: https://aomedia-review.googlesource.com/c/aom/+/188606 + # jsoncpp, re2, snappy, swiftshader, woff2 - needs use_custom_libcxx=false local use_system=" + brotli + crc32c + dav1d + double-conversion ffmpeg flac + flatbuffers fontconfig freetype harfbuzz-ng + highway + icu libdrm libevent libjpeg - libpng + libsecret + libusb libwebp libxml libxslt + openh264 opus - re2 - snappy + zlib + zstd " + for _lib in $use_system libjpeg_turbo; do msg "Removing buildscripts for system provided $_lib" - find . -type f -path "*third_party/$_lib/*" \ + find . -type f -path "*third_party/$_lib/*" \ \! -path "*third_party/$_lib/chromium/*" \ \! -path "*third_party/$_lib/google/*" \ \! -path './base/third_party/icu/*' \ \! -path './third_party/libxml/*' \ \! -path './third_party/pdfium/third_party/freetype/include/pstables.h' \ \! -path './third_party/harfbuzz-ng/utils/hb_scoped.h' \ + \! -path './third_party/crashpad/crashpad/third_party/zlib/zlib_crashpad.h' \ \! -regex '.*\.\(gn\|gni\|isolate\|py\)' \ -delete done @@ -508,13 +582,20 @@ prepare() { # allow system dependencies in "official builds" sed -i 's/OFFICIAL_BUILD/GOOGLE_CHROME_BUILD/' \ tools/generate_shim_headers/generate_shim_headers.py -} -_gn_flags() { - echo "$@" + # https://crbug.com/893950 + sed -i -e 's/\<xmlMalloc\>/malloc/' -e 's/\<xmlFree\>/free/' \ + third_party/blink/renderer/core/xml/*.cc \ + third_party/blink/renderer/core/xml/parser/xml_document_parser.cc \ + third_party/libxml/chromium/*.cc \ + third_party/maldoca/src/maldoca/ole/oss_utils.h + + _configure } -build() { +_configure() { + cd "$builddir" + ############################################################## # Please dont use these keys outside of Alpine Linux project # # You can create your own at: # @@ -523,242 +604,211 @@ build() { local _google_api_key _google_default_client_id _google_default_client_secret eval "$(base64 -d < $srcdir/google-api.keys)" - # silence really annoying warning on every compiler invocation - export CFLAGS="$CFLAGS -O2 -Wno-unknown-warning-option" - export CXXFLAGS="$CXXFLAGS -O2 -Wno-unknown-warning-option" + export CFLAGS="${CFLAGS/-g/} -O2 -Wno-unknown-warning-option -Wno-builtin-macro-redefined -Wno-deprecated-declarations -Wno-shift-count-overflow -Wno-ignored-attributes" + export CXXFLAGS="${CXXFLAGS/-g/} -O2 -Wno-unknown-warning-option -Wno-builtin-macro-redefined -Wno-deprecated-declarations -Wno-invalid-constexpr" + export CPPFLAGS="${CPPFLAGS/-g/} -D__DATE__= -D__TIME__= -D__TIMESTAMP__=" - msg "Bootstrapping GN" + # breaks chromium + export CXXFLAGS="${CXXFLAGS/-D_GLIBCXX_ASSERTIONS=1}" + export CXXFLAGS="${CXXFLAGS/-fstack-clash-protection}" + export CFLAGS="${CFLAGS/-fstack-clash-protection}" -# AR="ar" CC="${CC:-gcc}" CXX="${CXX:-g++}" LD="${CXX:-g++}" \ - # shellcheck disable=SC2097,SC2098 - CC="${CC:-clang}" CXX="${CXX:-clang++}" LD="${CXX:-clang++}" \ - python3 tools/gn/bootstrap/bootstrap.py -s -v --skip-generate-buildfiles + export AR="llvm-ar" + export CC="clang" + export CXX="clang++" + export NM="llvm-nm" msg "Configuring build" - local _c _ca - _c=$(_gn_flags \ - blink_symbol_level=$_symbol_level \ - build_with_tflite_lib=false \ - chrome_pgo_phase=0 \ - clang_use_chrome_plugins=false \ - custom_toolchain=\"//build/toolchain/linux/unbundle:default\" \ - disable_fieldtrial_testing_config=true \ - enable_hangout_services_extension=true \ - enable_nacl=false \ - enable_precompiled_headers=false \ - enable_vr=false \ - fatal_linker_warnings=false \ - ffmpeg_branding=\"Chrome\" \ - gold_path=\"/usr/bin/ld.gold\" \ - google_api_key=\"$_google_api_key\" \ - google_default_client_id=\"$_google_default_client_id\" \ - google_default_client_secret=\"$_google_default_client_secret\" \ - host_toolchain=\"//build/toolchain/linux/unbundle:default\" \ - icu_use_data_file=true \ - is_cfi=false \ - is_clang=true \ - is_component_build=false \ - is_debug=false \ - is_official_build=true \ - link_pulseaudio=true \ - proprietary_codecs=true \ - rtc_use_pipewire=true \ - symbol_level=$_symbol_level \ - treat_warnings_as_errors=false \ - use_allocator=\"none\" \ - use_allocator_shim=false \ - use_cfi_icall=false \ - use_cups=true \ - use_custom_libcxx=false \ - use_gnome_keyring=false \ - use_gold=false \ - use_lld=true \ - use_pulseaudio=true \ - use_sysroot=false \ - use_system_freetype=true \ - use_system_harfbuzz=true \ - use_system_lcms2=true \ - use_system_libdrm=true \ - use_system_libjpeg=true \ - use_system_libpng=true \ - use_system_zlib=true \ - use_thin_lto=false \ - ) - - case $CARCH in - x86*|aarch64) _ca="use_vaapi=true" ;; - *) _ca="concurrent_links=1" ;; + # this should be at 0 for -dbg too. change it for local debugging only + local symbol_level=0 + + case "$CARCH" in + riscv64) + # no vaapi on riscv support + local vaapi=false + ;; + *) + local vaapi=true + ;; + esac + + case "$CARCH" in + armv7) + local maglev=false + ;; + *) + local maglev=true + ;; esac - AR="ar" CC="clang" CXX="clang++" LD="clang++" NM=/usr/bin/nm \ - out/Release/gn gen out/$_buildtype --args="$_c $_ca" + local clang_ver="$(clang -dumpversion)" + case "$USE_CCACHE" in + 1) + local cc_wrapper="ccache" + ;; + *) + local cc_wrapper="" + ;; + esac + + # shellcheck disable=2089 + local gn_config=" + blink_enable_generated_code_formatting=false + cc_wrapper=\"$cc_wrapper\" + chrome_pgo_phase=0 + clang_base_path=\"/usr\" + clang_use_chrome_plugins=false + clang_version=\"${clang_ver%%.*}\" + custom_toolchain=\"//build/toolchain/linux/unbundle:default\" + disable_fieldtrial_testing_config=true + enable_hangout_services_extension=true + enable_nacl=false + enable_nocompile_tests=false + enable_stripping=false + enable_rust=true + enable_vr=false + fatal_linker_warnings=false + ffmpeg_branding=\"Chrome\" + google_api_key=\"$_google_api_key\" + google_default_client_id=\"$_google_default_client_id\" + google_default_client_secret=\"$_google_default_client_secret\" + host_toolchain=\"//build/toolchain/linux/unbundle:default\" + icu_use_data_file=false + is_cfi=false + is_clang=true + is_component_ffmpeg=true + is_debug=false + is_official_build=true + link_pulseaudio=true + proprietary_codecs=true + regenerate_x11_protos=true + rtc_link_pipewire=true + rtc_use_pipewire=true + rustc_version=\"yes\" + rust_sysroot_absolute=\"/usr\" + symbol_level=$symbol_level + treat_warnings_as_errors=false + use_custom_libcxx=true + use_lld=true + use_pulseaudio=true + use_safe_libstdcxx=false + use_system_libffi=true + use_sysroot=false + use_thin_lto=false + use_vaapi=$vaapi + v8_enable_maglev=$maglev + " + + # shellcheck disable=2090,2116 + gn gen out/bld --args="$(echo $gn_config)" +} + +build() { msg "Ninja turtles GO!" # final link needs lots of file descriptors ulimit -n 4096 - ninja -C out/$_buildtype chrome chrome_sandbox chromedriver chrome_crashpad_handler - - if [ -n "$CHECK" ]; then - ninja -C out/$_buildtype \ - base_unittests \ - base_util_unittests \ - sandbox_linux_unittests \ - chromedriver_unittests \ - crypto_unittests \ - skia_unittests \ - blink_common_unittests \ - ozone_unittests \ - ozone_x11_unittests \ - ozone_gl_unittests \ - absl_hardening_tests \ - # angle_unittests \ - blink_heap_unittests \ - # blink_platform_unittests \ - boringssl_crypto_tests \ - boringssl_ssl_tests \ - cast_unittests \ - capture_unittests \ - # components_browsertests \ - # components_unittests \ - # content_browsertests \ - # content_unittests \ - # crashpad_tests \ - events_unittests \ - gcm_unit_tests \ - gin_unittests \ - google_apis_unittests \ - gpu_unittests \ - gwp_asan_unittests \ - ipc_tests \ - jingle_unittests \ - latency_unittests \ - libjingle_xmpp_unittests \ - liburlpattern_unittests \ - media_blink_unittests \ - media_unittests \ - midi_unittests \ - mojo_unittests \ - net_unittests \ - # cc_unittests \ - # blink_unittests \ - perfetto_unittests \ - # services_unittests \ - shell_dialogs_unittests \ - sql_unittests \ - storage_unittests \ - ui_base_unittests \ - ui_touch_selection_unittests \ - url_unittests \ - # webkit_unit_tests \ - wtf_unittests \ - zlib_unittests - fi + # moc and friends not in path by default + export PATH="$PATH:/usr/lib/qt5/bin" + + # shellcheck disable=2046 + ninja -C out/bld \ + chrome \ + chrome_sandbox \ + chromedriver.unstripped \ + chrome_crashpad_handler \ + $(want_check && echo base_unittests) + +} + +check_base_unittests() { + # TODO: fix these tests, hopefully + # https://issues.chromium.org/issues/40939315 + broken="MessagePumpLibeventTest.NestedNotification*" + broken="$broken:AlternateTestParams/PartitionAllocTest.SchedulerLoopQuarantine" + broken="$broken:ClampTest.Death" + broken="$broken:OptionalTest.DereferencingNoValueCrashes" + broken="$broken:RawPtrTest.TrivialRelocability" + broken="$broken:SafeNumerics.IntMaxOperations" + broken="$broken:StringPieceTest.InvalidLengthDeath" + broken="$broken:StringPieceTest.OutOfBoundsDeath" + # test-launcher-bot-mode enables parallelism and uncolored output + ./out/bld/base_unittests --test-launcher-bot-mode --gtest_filter="-$broken" } check() { - out/$_buildtype/base_unittests - out/$_buildtype/base_util_unittests - out/$_buildtype/sandbox_linux_unittests # broken + does not compile - out/$_buildtype/chromedriver_unittests - out/$_buildtype/crypto_unittests - out/$_buildtype/skia_unittests - out/$_buildtype/ozone_unittests - out/$_buildtype/ozone_x11_unittests # ? - out/$_buildtype/ozone_gl_unittests # broken - out/$_buildtype/absl_hardening_tests - # out/$_buildtype/angle_unittests # broken / does not compile - out/$_buildtype/blink_common_unittests - out/$_buildtype/blink_heap_unittests - # out/$_buildtype/blink_platform_unittests # broken / does not compile - out/$_buildtype/boringssl_crypto_tests - out/$_buildtype/boringssl_ssl_tests - out/$_buildtype/cast_unittests - out/$_buildtype/capture_unittests --gtest_filter=-*UsingRealWebcam* # broken - # out/$_buildtype/components_browsertests # broken / does not compile - # out/$_buildtype/components_unittests # broken / does not compile - # out/$_buildtype/content_browsertests # broken / does not compile - # out/$_buildtype/content_unittests # broken / does not compile - # out/$_buildtype/crashpad_tests # broken / does not compile - out/$_buildtype/events_unittests - out/$_buildtype/gcm_unit_tests - out/$_buildtype/gin_unittests # ? - out/$_buildtype/google_apis_unittests - out/$_buildtype/gpu_unittests - out/$_buildtype/gwp_asan_unittests # broken / required? - out/$_buildtype/ipc_tests - out/$_buildtype/jingle_unittests - out/$_buildtype/latency_unittests - out/$_buildtype/libjingle_xmpp_unittests - out/$_buildtype/liburlpattern_unittests - out/$_buildtype/media_blink_unittests # broken - out/$_buildtype/media_unittests # broken - out/$_buildtype/midi_unittests - out/$_buildtype/mojo_unittests - out/$_buildtype/net_unittests # broken - # out/$_buildtype/cc_unittests # broken / does not compile - # out/$_buildtype/blink_unittests # broken / does not compile - out/$_buildtype/perfetto_unittests # ? - # out/$_buildtype/services_unittests # broken / does not compile - out/$_buildtype/shell_dialogs_unittests - out/$_buildtype/sql_unittests - out/$_buildtype/storage_unittests - out/$_buildtype/ui_base_unittests # ok - out/$_buildtype/ui_touch_selection_unittests - out/$_buildtype/url_unittests - # out/$_buildtype/webkit_unit_tests # broken / does not compile - out/$_buildtype/wtf_unittests - out/$_buildtype/zlib_unittests + # vpython3 execs system python3 with this set + export VPYTHON_BYPASS="manually managed python not supported by chrome operations" + # for vpython3 in cwd + export PATH="$PATH:$PWD/third_party/depot_tools" + + check_base_unittests + } package() { - cd "$builddir"/out/$_buildtype + cd ./out/bld + + mkdir -p "$pkgdir"/usr/bin # binaries - install -Dm755 chrome "$pkgdir"/usr/lib/$pkgname/chrome + install -Dm755 chrome "$pkgdir"/usr/lib/$pkgname/chromium + # backward compat symlink + ln -sfv chromium "$pkgdir"/usr/lib/$pkgname/chrome install -Dm4755 chrome_sandbox "$pkgdir"/usr/lib/$pkgname/chrome-sandbox - install -Dm755 chrome_crashpad_handler "$pkgdir"/usr/lib/$pkgname/chrome_crashpad_handler + install -Dm755 chrome_crashpad_handler -t "$pkgdir"/usr/lib/$pkgname/ - # resources - install -Dm644 snapshot_blob.bin "$pkgdir"/usr/lib/$pkgname/ - install -Dm644 v8_context_snapshot.bin "$pkgdir"/usr/lib/$pkgname/ + # qt5 + install -Dm755 libqt5_shim.so -t "$pkgdir"/usr/lib/$pkgname/ - install -m644 icudtl.dat "$pkgdir"/usr/lib/$pkgname/icudtl.dat + # chromedriver + install -Dm755 chromedriver.unstripped "$pkgdir"/usr/lib/$pkgname/chromedriver + ln -sfv ../lib/$pkgname/chromedriver "$pkgdir"/usr/bin/chromedriver - install -Dm755 xdg-mime "$pkgdir"/usr/lib/$pkgname/xdg-mime - install -Dm755 xdg-settings "$pkgdir"/usr/lib/$pkgname/xdg-settings + # resources + install -Dm644 snapshot_blob.bin -t "$pkgdir"/usr/lib/$pkgname/ + install -Dm644 v8_context_snapshot.bin -t "$pkgdir"/usr/lib/$pkgname/ + if [ -f icudtl.dat ]; then + install -Dm644 icudtl.dat -t "$pkgdir"/usr/lib/$pkgname/ + fi + + install -Dm755 xdg-mime -t "$pkgdir"/usr/lib/$pkgname/ + install -Dm755 xdg-settings -t "$pkgdir"/usr/lib/$pkgname/ # Vulkan - install -Dm755 libvulkan.so.1 "$pkgdir"/usr/lib/$pkgname/libvulkan.so.1 + install -Dm755 libvulkan.so.1 -t "$pkgdir"/usr/lib/$pkgname/ # Angle - install -Dm755 libEGL.so "$pkgdir"/usr/lib/$pkgname/libEGL.so - install -Dm755 libGLESv2.so "$pkgdir"/usr/lib/$pkgname/libGLESv2.so - - local pak - for pak in *.pak; do - install -Dm644 $pak "$pkgdir"/usr/lib/$pkgname/$pak - done + install -Dm755 libEGL.so -t "$pkgdir"/usr/lib/$pkgname/ + install -Dm755 libGLESv2.so -t "$pkgdir"/usr/lib/$pkgname/ install -Dm755 "$srcdir"/chromium-launcher.sh \ - "$pkgdir"/usr/lib/$pkgname/chromium-launcher.sh + -t "$pkgdir"/usr/lib/$pkgname/ cp -a MEIPreload "$pkgdir"/usr/lib/$pkgname/ - # Default to en-us and provide everything else through the chromium-lang package - install -Dm644 locales/en-US.pak "$pkgdir"/usr/lib/$pkgname/locales/en-US.pak - # It is important that we name the target "chromium-browser", # xdg-utils expect it; bug https://bugs.gentoo.org/355517 - mkdir -p "$pkgdir"/usr/bin - ln -sf /usr/lib/$pkgname/chromium-launcher.sh "$pkgdir"/usr/bin/chromium-browser + ln -sfv ../lib/$pkgname/chromium-launcher.sh "$pkgdir"/usr/bin/chromium-browser + ln -sfv chromium-browser "$pkgdir"/usr/bin/chromium install -Dm644 "$srcdir"/chromium.conf \ - "$pkgdir"/etc/chromium/chromium.conf + -t "$pkgdir"/etc/chromium/ + + for pak in locales/*.pak *.pak; do + install -Dm644 "$pak" "$pkgdir"/usr/lib/$pkgname/"$pak" + done + + install -Dm755 libvk_swiftshader.so \ + -t "$pkgdir"/usr/lib/$pkgname/ + install -Dm755 vk_swiftshader_icd.json \ + -t "$pkgdir"/usr/lib/$pkgname/ cd "$builddir" + for size in 24 48 64 128 256; do install -Dm644 "chrome/app/theme/chromium/product_logo_$size.png" \ "$pkgdir/usr/share/icons/hicolor/${size}x$size/apps/chromium.png" @@ -791,85 +841,75 @@ package() { "$pkgdir"/usr/share/metainfo/chromium.appdata.xml } +qt5() { + pkgdesc="chromium qt5 shim" + + amove usr/lib/$pkgname/libqt5_shim.so +} + chromedriver() { pkgdesc="WebDriver driver for the Chromium Browser" depends="$pkgname=$pkgver-r$pkgrel" - cd "$builddir"/out/$_buildtype - - mkdir -p "$subpkgdir"/usr/lib/$pkgname "$subpkgdir"/usr/bin - - install -Dm755 chromedriver "$subpkgdir"/usr/lib/$pkgname/chromedriver - ln -sf /usr/lib/$pkgname/chromedriver "$subpkgdir"/usr/bin/ + amove usr/lib/$pkgname/chromedriver \ + usr/bin/chromedriver } lang() { pkgdesc="Languages for package $pkgname" install_if="$pkgname=$pkgver-r$pkgrel lang" - cd "$builddir"/out/$_buildtype - - for pak in locales/*.pak; do - install -Dm644 "$pak" "$subpkgdir"/usr/lib/$pkgname/"$pak" - done; + # Default to en-us and provide everything else through the chromium-lang package + amove usr/lib/$pkgname/locales/*.pak - rm "$subpkgdir"/usr/lib/$pkgname/locales/en-US.pak + mkdir -p "$pkgdir"/usr/lib/$pkgname/locales + mv "$subpkgdir"/usr/lib/$pkgname/locales/en-US.pak \ + "$pkgdir"/usr/lib/$pkgname/locales/ } swiftshader() { pkgdesc="Chromium web browser: CPU-based implementation of the Vulkan graphics API" depends="$pkgname-angle=$pkgver-r$pkgrel" - cd "$builddir"/out/$_buildtype - - install -Dm755 libvk_swiftshader.so \ - "$subpkgdir"/usr/lib/$pkgname/libvk_swiftshader.so - install -Dm755 vk_swiftshader_icd.json \ - "$subpkgdir"/usr/lib/$pkgname/vk_swiftshader_icd.json -} - -angle() { - pkgdesc="Chromium web browser: ANGLE based hardware acceleration" - depends="" - - mkdir -p "$subpkgdir" + amove usr/lib/$pkgname/libvk_swiftshader.so \ + usr/lib/$pkgname/vk_swiftshader_icd.json } sha512sums=" -6a312f85e4fda49fc63b1b6bc74b1d6ea5be5a9db98f22c88ab0394968399df49daf1dfab19922b69a04a5afacc16eb9aa3f8af350f4cb1d2b0824c74efcf835 chromium-103.0.5060.53.tar.xz -f554ccc5d8a5c066634357878c89944cc591809ea6f6c6ef5b35e970e9674e0b3be8fddb06c0d333ddc65211fa09ae5e0b4b483ca70048156c29607c5487c017 test_fonts-cd96fc55dc243f6c6f4cb63ad117cad6cd48dceb.tar.gz -b9a810416dd7a8ffc3a5ced85ad9acebda1665bd08a57eec7b189698cc5f74d2c3fd69044e20fcb83297a43214b2772a1312b2c6122ea0eb716abacf39524d60 chromium-launcher.sh -f6d962b9e4c22dd42183df3db5d3202dab33eccecafb1bf63ca678147289581262db1e5e64cbe8f9c212beefb0a6717bb8d311e497f56b55fe95b8bab2db493f chromium.conf +ff8d3161568875661ae343c40826dab62fc05e83c97a2d194da1b388d1ed3eaa233939c60df97a4dfc0857d3145c4db7779d3a34c65473880d8f9e15b6052629 chromium-124.0.6367.78.tar.xz +2285730acfd1d515c197d284739e56afadd00db13b2da5ec22341e2cdbaea58f3c949572774709389f405ef82c8966131819d7e89d4f34f9fa8b80aa66717748 chromium-124.0.6367.78-testdata.tar.xz +bbc928e99ebcd4d953b982688b01526cb754bad018f67be9e777a4f8ac51cdd3e01374e5a63faf55b12e7cee0d52816c88062e012b5bcc4f9bb41f28d8e0b7f7 test_fonts-336e775eec536b2d785cc80eff6ac39051931286.tar.gz +c6293916e1780ba69686a5c629063c14b22cb1773aa207487e46ee74f4d1da61b47fffb8b9a2bc6f389d062882d5a8f9212693ed9b28f2c314364bb5e3c08e20 copium-124.6.tar.gz +1b16564f85a03f3eb934ec51289dc6159e2454202d40f48354f947d6ceffac8889e9eb4c0f4dfaafb3a15101566d54039f832bc9a8433c3c463e2d1dac2d2acc chromium-launcher.sh +9cfcb41d69c5a515b6f9fe2a629579fa499e1f48eb58a0ce4ec8e5029d450bcafb6d963019aaac9a6838244bee9f9ba7fe5ef6146a0ca6b20fcda4ab7f059476 chromium.conf 2d8237a940ea691bd10b08315429677a587f7ef9692a0cca53bfd066eae82998a6c71f402a8669e9de39f94d7f3280745d1628ea6eac5d76ca7116844d4e0dac google-api.keys -22da17c649ae9845d6a174187f2b666245a10db8a997169fc214c430fbba10143cfb57f8f6ece5acf856cd9ea09f293a1aca90cdf3e64fd9423b78beac53f517 default-pthread-stacksize.patch -9fbfeb1f52e48658f46e55db29de02b554f24ae79f46bbd89bbf05c20f538c9bb3c8624a6e27907d13d6717e5f55a332b13577d8672539662c90c9a10109b94a musl-fixes.patch -e8675aff9fccd8b58cc839ef1d9e0e022d66aa94f72baa72e7acf92ceb2691f6a7907cc60ec3a87f894efdd639a3dec7fe702c97d446fcdea99452caec57e002 no-getcontext.patch -20b6931937ae792ddf4e1be7f0cbf0f0931b0afce9f6528b7ae5edb1bb2db070438caa8edc94e915e1e5ab1a191789129877d0353fe8976f537df3775dd3ab5d musl-hacks.patch -a361989c7ff4a285ed36c499e4fe1e97ed8d904a9b92f8d3c01b056b469490b7d215b6edb803ba3b0955633f58f3682d4fb60cc710cba68153a6b23df3ba7ba9 musl-libc++.patch -ef43fa90b05e2407b6daa822193121cdeef6ee9068175572f0928f156f186be9c77539dfa06863adfaa25afd498ec1b5081f9e476543616f9472b9033fd921dc musl-sandbox.patch -7aa351e79c29de63972f1f16fbab0465b2569bc0a22174780988e0cdfe4fcaff3c664dd277937bb33f2b77f108d20afa8720c427524b09d26074f9cf6807e147 no-execinfo.patch -c741fafab758a675f7007a450df7d9acfe05149f4ce6dd4cf82dc6e97ddcd6b5b4a6b8e09820c2ad3ea62487f30b34d848739908e95ca8a31ca5baeb7cb9d0d7 no-mallinfo.patch -cd7719c30518aeb659e9b7dc126241f897afe1a231e601271b63ba170e811a93b514c4d2a77680cdf0c846f81fa6db766ac619aa200efb32cbdfff6732a63893 resolver.patch -0c0d3ed0a8f2bcecb2bf4eb56130fcd71031bb63744fb56e1b5a6b9dfbe16680607ff592e24602fe045b819509a70556e240b6fe0e876710977d60185f682df4 musl-stat.patch -ded02360a36283973b9abb4150de3d964749a58017fbbd9f09fb6cb29ec97a8ac99ccadd953633bbb7eb9ec77a078f4df9de5f624d1580f33446ceba5fd3a3f6 chromium-use-alpine-target.patch -599f5ef338b5797e04436bdc88921c31365d2dea2613d40053be6e774f654e2889efb0c0bd55c2c5044a6805510fbc337da555971169a75d584fac93e18256ac media-base.patch -2e5a83826239849d096aead033eb519338b84e6fbbf58abfcd7cfe40d0b3070b66bcc825ec84406484d73d1a333f1b9d23a8ab44987ab5c8b187076c84cd668b musl-crashpad.patch -556cc2ba28184a75745f13c673605327f5be590be179eb3f941dc0abded854a814e5da1432a28fb8d4dcdcd66ffd4c94ee1a8824d2cd93b632f48e9310dbc3fa musl-v8-monotonic-pthread-cont_timedwait.patch -7957aae04e8ef3badbc98c982ba1acb1b9ef5e665440116c704512f11554d7b64ba3643b7ff7d00476a6686324033b0cf762deb78ce798619226380953b9dc9c nasm.patch -9b1441fe42421ef9ead86a5143bf997d989bd53a8969cdfdf4e0c45f847efc8c1d127e15fb05e2ef5dbefbb228cbdc2849404d74997ca56265599e12e5efd6e4 elf-arm.patch -e60f381c557a15598d71e33b7aacc63be4a8e17b16cdd95047df5e5e9577ad925864ffd64597d5dbc9a4516de13b3f17c26099b36692165df8c66b1b4d399ce9 fix-narrowing-cast.patch -54f07ee9d85577e284e04460e79132fa6769251ceb045561cea811dde0369e9e4cdbcf26566235b0d12c649be4d46fea294f7c6a4e2a75109dc3282e6e7d7993 fix-unittests-sandbox.patch -c4654d5b23c6f5d9502507e534fe1951d6749c62251e49b6adfe10d1569431e7f7a5a6fa5ff09ec30984415ced27a5e20985df8c91295de34af3c84557fa5b91 chromium-revert-drop-of-system-java.patch -8d11b2ba811fdd6280784bfafcef073238324941b4c33e7c9a5ccfde8506242d06e5136d697f047bab3838b43a666f1da404af7b4f4ff9a0c6bf6bdb8448e5b2 scoped-file.patch -91dafba2138175b6618ec4c96c7ea39f3a26f6a09b69adabad4f9355dd84d436f3de3274b31465d5f46deeb452fde64e4cfbbda0bb4ed7e9a25d953e1b73e5d2 remove-strip_binary.patch -82f2bd4aa613e792d3af6e7a8632e0920cf48504a7572fb97d5480ea182fa125fe526e7df1ce4311b5d139a3f78da0f0b54605fbd09d7cd43135906a7639e47f gdbinit.patch -b72905bcb775920939b6ac69e22166745daf1154fec46377988c329e0e073d14ff85ae93386fc0d345cd47d3dcfd6b8be56e39277c40637315151bca28f1b904 quiche-arena-size.patch -2fdd0b2fd403dd4440533288f7e08bb8480702c42c7571ea764aac18ba5eaf72494793c77e4244991d12f45e5acfceae0772995b11d323916c07cb53c43a2f59 revert-use-ffile-compilation-dir.patch -0fc131ef4ad32964815744080f40cc2566c70da1cd4ddaf1da8456d1c86e67e3ebf38f43208d17d40b646744e8e662f5b314e236a1c90bc6f8b936313e42a3cf chromium-VirtualCursor-standard-layout.patch -274858323d040ac8c51bac90b6ef91bb075d7b8d92d73952ed700c10a8bae2c2115fb2a9cc6912de79be226c141d7106839fc3486e22c0206e75cb6d8ff65ee6 credentials-header.patch -a018cf58b9e34f73d588961f2f9a36de67267060fb2e77ebc562974c6c92a59009161e374cf9bbdc35e8bf1a7e90f0b90117a0d494dcd2e2bb2f5e6534925d0b musl-tid-caching.patch -63e5b25c49af484964b3ac723da1c2f348812572a2e24ad412d2fb9eb7eec9ddc0e76568e76d1f352cdc562bc5003c93e04ee519a82e8568f48484d1682e237f memory-tagging-arm64.patch -8bebf4a9d5225c6e47edc5b07c4b97be24a45cc221f49632836915ceeb4ecb69b7f79a31ea7f82171cde3443f45fec541f409892542cf1014e81aa6acd01566d fix-missing-cstdint-include-musl.patch -128ec0fd14349e065c8bb0910d53cbea7423182a06e06f7b7765f3cba1e5ba5e7a8bccbcdab079335b5235abb7bf0d46dee21ecc8c221be7e1c5c6d9795f958e roll-src-third_party-ffmpeg.patch -c8e892e36e7292cd6db36017fff994a0fbc00dd83ea9010422c21cd56da89c9eddd1712e4ff4b3fec354fa595ce3cc403b96fc13525e74fe6538461d5c2d9b50 remove-no-opaque-pointers-flag.patch +29bb685e03356a77df5fd347cdf55194cc8b3265c421cc76e54d64edefc329dbcb052deb26b22e8f587ce68456876c071de1b7d258dd0fcc6ee66c875ec4a020 chromium-revert-drop-of-system-java.patch +54eb147c0af2ba096d1df375a289b339ee855ab1a9114e7c747753f0274a6bafb7212c1859b7885454c4529d9a5e3bd9559fc14e8e006f23ccd381895fa68d15 compiler.patch +4057cc78f10bfd64092bc35a373869abb1d68b880cdbca70422f39ffd78a929c19c7728d4d4c40709aaba25581148a93ae5343e724849fd35323062ed68753fa disable-dns_config_service.patch +111bc22fb704d97759988268a40d6b356c51b0bd7a8119a694e905ffe21850ff64e91566cd0dd0c9d62fcb46dca8acc821436c34eb0ba78be872ee4f7ec88a7b disable-failing-tests.patch +5fc5c012c1db6cf1ba82f38c6f3f4f5ca3a209e47ac708a74de379b018e0649b7694877c9571ef79002dde875ffc07b458a3355425f1c01867f362c66c2bc1bf fc-cache-version.patch +9200f78bad70e95c648a5e8392d50642190600f655c6baa366ff6467ebad52d3b3f305dad58f3610da67136f4b723557653b174ec5c25be8d8737ee04d9ee09f fix-missing-cstdint-include-musl.patch +b24563e9a738c00fce7ff2fbdee3d7c024d9125d7c74d9ab90af6bdb16f7ec8419f2c8aa78c0640f6d5d81c17dc2c673a194401d354f466749672729b48ed068 fix-opus.patch +c63dee5044353eb306a39ca1526158c0f003ab310ecb03d1c368dc2a979454590c84b8d3c15484517d5e66bb8add9b231da9abbadf2e50850abd72ac1345c4ab fstatat-32bit.patch +33ee60863cc438ef57ffef92ba4cf67a856a5ffc16138bce241bcf87e47b15154aa86918e793c26f7ec4dc62a445257ad5673ed7001daf22c4043cf6cc57da7f gdbinit.patch +36a764fa73443b47d38050b52dbe6ad2fa8d67201ff4ccdbad13b52308ef165ca046aac6f9609fe35890a6485f0f3e672e78cc41e3e44f3cdc7f145e540524e8 generic-sensor-include.patch +8de65109ece27ea63bd469f2220c56b8c752ba0a50fdf390082a2d5ae74b8e010199126175569f6d5084270dd4e0571e68aec32c0bca8211a6699925b3a09124 import-version.patch +53721a222c099a96f01ef437ef132055ea4b624f6dc08e6c09c9fa1d6bb88bab23a3c0a3ee6871edb2fb88b86d9a48bb1d7a0acb84cdd3fca268832d83c9e11f libstdc++13.patch +e75f57ae34c97ca1caf15fa4b4106c6c1e79c31ed66869cf92ed9ea0c449886c9511e455047c17c1e9ad8b9a46ad4948511a4f2995a4b6030fb4d1c7ae21d038 mman.patch +99bcc7dd485b404a90c606a96addab1d900852128d44fb8cea8acc7303189ef87c89a7b0e749fd0e10c5ef5f6bf1fadeb5c16a34503cab6a59938ce2653d887e musl-auxv.patch +50c274a420bb8a7f14fcb56e40920dac8f708792a4520789b4987facea459bef88113d5a2b60fa8c57bee6e92bff3617d6b73fa305c8c44614c638971cffd440 musl-sandbox.patch +e7163ac5810ac85366cef2447412287c856e3d67c6b77f219a6e5a418b1965b98e449c409424ad0704a5bded9355dd0aec3dc4585918ce5a2ab36c079707afe2 musl-tid-caching.patch +92eb002718026611f5542362ad69b67f0a398ff71b3fca5c05d55cb5c6f9f29334e5e127bb4860cfaa3fba0f0d4c901e2b98808217e7dc02e254a64a5c9521aa musl-v8-monotonic-pthread-cont_timedwait.patch +73bca6c6f9873f2f11cef04f3f41f71e0ae86e7e2d77e14db4298675fec390744c5081f6fdb14052e5ee2b5885be1198c3aa6068eb2b656d1a665c0c3f36e708 no-execinfo.patch +8e17101d69e23b456a9c03dc2fe95bcd56846389707ba6f4720192a9e9168406d20d9168dbebbb3a47d921ec92e478f0e390f46e6b9bb43a34dda217c6e6448b no-mallinfo.patch +e4c4e5bc6f828f9c883dd418c0ba01887949c29c311f76206a1ec29f620b0c0ba0452949dc2778a9c46ea066405857536964a36436a68eecf7da7952736333cf no-res-ninit-nclose.patch +6dc4d8dc92e685dace62265a1ddb3aebc558aed54d20ff6d36b030be0c48d7e84662326c31363612492574d9a03c62653cdc21a60995b97dee1d75cae86a9f9b no-sandbox-settls.patch +d4ac7f350806b4410ccb1df3b0ad7e90a7b6d724a16919761aa2d47a6f21008c7374da528b05b754ee712b85d23adfb113c7f7b9ca2ed5b47644fe3ea0cb9119 partalloc-no-tagging-arm64.patch +8e1aca983890c78d81a6f888b2cf1aa42878d1f8523e87d63b800e1e468cbfd33e5ff6a0975775ca222fe82f30c6497da95505da01b091c8776a44c98ac86f0f perfetto-libstdc++.patch +2eb434b4fc6aee77026492644cd86772a543d9845f112a75cd4c3e1f25c9435cc31f8454c1c73223451fc9be69b86e822ff68821978f67f2fc8bcba50296d8e0 pvalloc.patch +803b8117c65132f76bec42054a4b2257a078b15b07fd08645fec2dfd51aa4e0075a9015300cd579d4ae0d757d9850b9988e080cfc2eea093f6684fdf82c4722c random-fixes.patch +86f612dd2b39602984a75b1b11c2ab8bc8cc6b4e78fae998570a777a6901ae45fdcdb22e46dd006dab703a0674e64c72cf8120af2dc5b9e78004f402c7e65358 quiche-array.patch +b3beb98b539fe160fbc493ba410ae0f68540cc4b6834f1f8ce9a22c3f4f59ef5d583ad48793e10549fd02a701f833a3969791ef4524322cd1e715ca5bf226bc8 system-zstd.patch +e48693e6b7aeebf69a5acbf80d9a35defe4c23835121dfeb58b051ac7c527e758a41004f4d193274fe1b01c0bfb1dbc77b09cb6a404a3fdee507a2918afb0edb temp-failure-retry.patch +914ccf649d7771f19f209ab97f99c481aebc6f66174d68e8b539f6ad4a70bc8cb0fae2df6dadbf0415958ffb3574c420fe029079dcce45f5e5add4db2e903566 yes-musl.patch " |