diff options
author | jk | 2020-07-10 23:34:44 -0500 |
---|---|---|
committer | jk | 2020-07-10 23:34:44 -0500 |
commit | eaa35091b9f09117931562c5481750bb0474dc76 (patch) | |
tree | 59c312b0d5d1a9b9893607d25333340365224abe | |
parent | cd5af5fb6f54636ba7d9a8cbc6f5f092be7b8384 (diff) | |
download | aur-eaa35091b9f09117931562c5481750bb0474dc76.tar.gz |
upgpkg: ungoogled-chromium-git 83.0.4103.116.1.r3.gd089bbc-3
-rw-r--r-- | .SRCINFO | 27 | ||||
-rw-r--r-- | PKGBUILD | 64 | ||||
-rw-r--r-- | force-mp3-files-to-have-a-start-time-of-zero.patch | 38 | ||||
-rw-r--r-- | intel-vp9-quirk.patch | 12 | ||||
-rw-r--r-- | nvidia-vdpau.patch | 65 | ||||
-rw-r--r-- | wayland-egl.patch | 22 |
6 files changed, 193 insertions, 35 deletions
@@ -1,8 +1,8 @@ pkgbase = ungoogled-chromium-git pkgdesc = A lightweight approach to removing Google web service dependency (master branch) - pkgver = 83.0.4103.106.1.r0.gf08ce8b - pkgrel = 1 - url = https://github.com/ungoogled-software/ungoogled-chromium-archlinux + pkgver = 83.0.4103.116.1.r3.gd089bbc + pkgrel = 3 + url = https://github.com/Eloston/ungoogled-chromium install = chromium.install arch = x86_64 license = BSD @@ -34,7 +34,6 @@ pkgbase = ungoogled-chromium-git depends = libpulse depends = pciutils depends = json-glib - depends = libva depends = desktop-file-utils depends = hicolor-icon-theme depends = icu @@ -60,11 +59,10 @@ pkgbase = ungoogled-chromium-git optdepends = kwallet: for storing passwords in KWallet on KDE desktops provides = chromium conflicts = chromium - source = https://commondatastorage.googleapis.com/chromium-browser-official/chromium-83.0.4103.106.tar.xz + source = https://commondatastorage.googleapis.com/chromium-browser-official/chromium-83.0.4103.116.tar.xz + source = ungoogled-chromium-master::git://github.com/Eloston/ungoogled-chromium.git source = chromium-launcher-6.tar.gz::https://github.com/foutrelis/chromium-launcher/archive/v6.tar.gz source = chromium-drirc-disable-10bpc-color-configs.conf - source = vdpau-support.patch - source = fix-intel-vaapi-wayland.patch source = clean-up-a-call-to-set_utf8.patch source = iwyu-std-numeric_limits-is-defined-in-limits.patch source = add-missing-algorithm-header-in-crx_install_error.cc.patch @@ -72,15 +70,17 @@ pkgbase = ungoogled-chromium-git source = include-memory-header-to-get-the-definition-of-std-u.patch source = make-some-of-blink-custom-iterators-STL-compatible.patch source = avoid-double-destruction-of-ServiceWorkerObjectHost.patch + source = force-mp3-files-to-have-a-start-time-of-zero.patch source = v8-remove-soon-to-be-removed-getAllFieldPositions.patch + source = intel-vp9-quirk.patch + source = wayland-egl.patch + source = nvidia-vdpau.patch source = chromium-83-gcc-10.patch source = chromium-skia-harmony.patch - source = ungoogled-chromium-master::git://github.com/Eloston/ungoogled-chromium.git - sha256sums = cfd153a2e10b0bb0fb3b7e6be543aef0915181f5fbdbea893d08465afd097e2f + sha256sums = bb0c7e8dfee9f3a5e30eca7f34fc9f21caefa82a86c058c552f52b1ae2da2ac3 + sha256sums = SKIP sha256sums = 04917e3cd4307d8e31bfb0027a5dce6d086edb10ff8a716024fbb8bb0c7dccf1 sha256sums = babda4f5c1179825797496898d77334ac067149cac03d797ab27ac69671a7feb - sha256sums = 0ec6ee49113cc8cc5036fa008519b94137df6987bf1f9fbffb2d42d298af868a - sha256sums = f6335d1e14e4ed865f37695d67df18008c8664778620e698bb46c35b88a8b4c2 sha256sums = 58c41713eb6fb33b6eef120f4324fa1fb8123b1fbc4ecbe5662f1f9779b9b6af sha256sums = 675fb3d6276cce569a641436465f58d5709d1d4a5f62b7052989479fd4aaea24 sha256sums = 0e2a78e4aa7272ab0ff4a4c467750e01bad692a026ad9828aaf06d2a9418b9d8 @@ -88,10 +88,13 @@ pkgbase = ungoogled-chromium-git sha256sums = 071326135bc25226aa165639dff80a03670a17548f2d2ff5cc4f40982b39c52a sha256sums = 3d7f20e1d2ee7d73ed25e708c0d59a0cb215fcce10a379e3d48a856533c4b0b7 sha256sums = d793842e9584bf75e3779918297ba0ffa6dd05394ef5b2bf5fb73aa9c86a7e2f + sha256sums = abc3fad113408332c3b187b083bf33eba59eb5c87fa3ce859023984b5804623c sha256sums = e042024423027ad3ef729a7e4709bdf9714aea49d64cfbbf46a645a05703abc2 + sha256sums = 326b8ad8f1100ad11213ee916effab43dfd7b0229ee8bed2c1c8c3132866bcae + sha256sums = 34d08ea93cb4762cb33c7cffe931358008af32265fc720f2762f0179c3973574 + sha256sums = 8095bf73afbca7c2b07306c5b4dd8f79b66e1053fa4e58b07f71ef938be603f1 sha256sums = 3e5ba8c0a70a4bc673deec0c61eb2b58f05a4c784cbdb7c8118be1eb6580db6d sha256sums = 771292942c0901092a402cc60ee883877a99fb804cb54d568c8c6c94565a48e1 - sha256sums = SKIP pkgname = ungoogled-chromium-git @@ -1,22 +1,29 @@ # Maintainer: JustKidding <jk@vin.ovh> + +# Based on aur/chromium-vaapi, with ungoogled-chromium patches + +# Maintainer: Evangelos Foutras <evangelos@foutrelis.com> # Contributor: Pierre Schmitz <pierre@archlinux.de> # Contributor: Jan "heftig" Steffens <jan.steffens@gmail.com> # Contributor: Daniel J Griffiths <ghost1227@archlinux.us> -# Contributor: Evangelos Foutras <evangelos@foutrelis.com> pkgname=ungoogled-chromium-git -pkgver=83.0.4103.106.1.r0.gf08ce8b -pkgrel=1 +pkgver=83.0.4103.116.1.r3.gd089bbc +pkgrel=3 _pkgname=ungoogled-chromium -_pkgver=83.0.4103.106 +_pkgver=83.0.4103.116 +# sometimes an ungoogled patches can be combined with a new chromium release +# only if the release only includes security fixes _ungoogled_ver=master +_uc_url="$_pkgname-$_ungoogled_ver::git://github.com/Eloston/ungoogled-chromium.git" +_uc_sum="SKIP" _launcher_ver=6 pkgdesc="A lightweight approach to removing Google web service dependency (master branch)" arch=('x86_64') -url="https://github.com/ungoogled-software/ungoogled-chromium-archlinux" +url="https://github.com/Eloston/ungoogled-chromium" license=('BSD') depends=('gtk3' 'nss' 'alsa-lib' 'xdg-utils' 'libxss' 'libcups' 'libgcrypt' - 'ttf-liberation' 'systemd' 'dbus' 'libpulse' 'pciutils' 'json-glib' 'libva' + 'ttf-liberation' 'systemd' 'dbus' 'libpulse' 'pciutils' 'json-glib' 'desktop-file-utils' 'hicolor-icon-theme') makedepends=('python' 'python2' 'gperf' 'yasm' 'mesa' 'ninja' 'nodejs' 'git' 'libpipewire02' 'libva' 'clang' 'lld' 'gn' 'java-runtime-headless' @@ -31,10 +38,9 @@ provides=('chromium') conflicts=('chromium') install=chromium.install source=(https://commondatastorage.googleapis.com/chromium-browser-official/chromium-$_pkgver.tar.xz + $_uc_url chromium-launcher-$_launcher_ver.tar.gz::https://github.com/foutrelis/chromium-launcher/archive/v$_launcher_ver.tar.gz chromium-drirc-disable-10bpc-color-configs.conf - vdpau-support.patch - fix-intel-vaapi-wayland.patch clean-up-a-call-to-set_utf8.patch iwyu-std-numeric_limits-is-defined-in-limits.patch add-missing-algorithm-header-in-crx_install_error.cc.patch @@ -42,14 +48,17 @@ source=(https://commondatastorage.googleapis.com/chromium-browser-official/chrom include-memory-header-to-get-the-definition-of-std-u.patch make-some-of-blink-custom-iterators-STL-compatible.patch avoid-double-destruction-of-ServiceWorkerObjectHost.patch + force-mp3-files-to-have-a-start-time-of-zero.patch v8-remove-soon-to-be-removed-getAllFieldPositions.patch + intel-vp9-quirk.patch + wayland-egl.patch + nvidia-vdpau.patch chromium-83-gcc-10.patch chromium-skia-harmony.patch) -sha256sums=('cfd153a2e10b0bb0fb3b7e6be543aef0915181f5fbdbea893d08465afd097e2f' +sha256sums=('bb0c7e8dfee9f3a5e30eca7f34fc9f21caefa82a86c058c552f52b1ae2da2ac3' + $_uc_sum '04917e3cd4307d8e31bfb0027a5dce6d086edb10ff8a716024fbb8bb0c7dccf1' 'babda4f5c1179825797496898d77334ac067149cac03d797ab27ac69671a7feb' - '0ec6ee49113cc8cc5036fa008519b94137df6987bf1f9fbffb2d42d298af868a' - 'f6335d1e14e4ed865f37695d67df18008c8664778620e698bb46c35b88a8b4c2' '58c41713eb6fb33b6eef120f4324fa1fb8123b1fbc4ecbe5662f1f9779b9b6af' '675fb3d6276cce569a641436465f58d5709d1d4a5f62b7052989479fd4aaea24' '0e2a78e4aa7272ab0ff4a4c467750e01bad692a026ad9828aaf06d2a9418b9d8' @@ -57,11 +66,13 @@ sha256sums=('cfd153a2e10b0bb0fb3b7e6be543aef0915181f5fbdbea893d08465afd097e2f' '071326135bc25226aa165639dff80a03670a17548f2d2ff5cc4f40982b39c52a' '3d7f20e1d2ee7d73ed25e708c0d59a0cb215fcce10a379e3d48a856533c4b0b7' 'd793842e9584bf75e3779918297ba0ffa6dd05394ef5b2bf5fb73aa9c86a7e2f' + 'abc3fad113408332c3b187b083bf33eba59eb5c87fa3ce859023984b5804623c' 'e042024423027ad3ef729a7e4709bdf9714aea49d64cfbbf46a645a05703abc2' + '326b8ad8f1100ad11213ee916effab43dfd7b0229ee8bed2c1c8c3132866bcae' + '34d08ea93cb4762cb33c7cffe931358008af32265fc720f2762f0179c3973574' + '8095bf73afbca7c2b07306c5b4dd8f79b66e1053fa4e58b07f71ef938be603f1' '3e5ba8c0a70a4bc673deec0c61eb2b58f05a4c784cbdb7c8118be1eb6580db6d' '771292942c0901092a402cc60ee883877a99fb804cb54d568c8c6c94565a48e1') -source+=($_pkgname-$_ungoogled_ver::git://github.com/Eloston/ungoogled-chromium.git) -sha256sums+=('SKIP') # Possible replacements are listed in build/linux/unbundle/replace_gn_files.py # Keys are the names in the above script; values are the dependencies in Arch @@ -129,6 +140,9 @@ prepare() { # https://chromium-review.googlesource.com/c/chromium/src/+/2094496 patch -Np1 -i ../avoid-double-destruction-of-ServiceWorkerObjectHost.patch + # https://chromium-review.googlesource.com/c/chromium/src/+/2268221 + patch -Np1 -i ../force-mp3-files-to-have-a-start-time-of-zero.patch + # https://crbug.com/v8/10393 patch -Np1 -d v8 <../v8-remove-soon-to-be-removed-getAllFieldPositions.patch @@ -138,17 +152,23 @@ prepare() { # Fixes from Gentoo patch -Np1 -i ../chromium-83-gcc-10.patch - # Fix VA-API on Nvidia - patch -Np1 -i ../vdpau-support.patch + # Intel KabyLake/GeminiLake VP9 quirk + patch -Np1 -i ../intel-vp9-quirk.patch - # Fix VA-API on Intel on Wayland - patch -Np1 -i ../fix-intel-vaapi-wayland.patch + # Wayland/EGL regression (crbug #1071528 #1071550) + patch -Np1 -i ../wayland-egl.patch + + # NVIDIA vdpau-wrapper + patch -Np1 -i ../nvidia-vdpau.patch # Ungoogled Chromium changes _ungoogled_repo="$srcdir/$_pkgname-$_ungoogled_ver" _utils="${_ungoogled_repo}/utils" + msg2 'Pruning binaries' python "$_utils/prune_binaries.py" ./ "$_ungoogled_repo/pruning.list" + msg2 'Applying patches' python "$_utils/patches.py" apply ./ "$_ungoogled_repo/patches" + msg2 'Applying domain substitution' python "$_utils/domain_substitution.py" apply -r "$_ungoogled_repo/domain_regex.list" \ -f "$_ungoogled_repo/domain_substitution.list" -c domainsubcache.tar.gz ./ @@ -204,6 +224,7 @@ build() { 'linux_use_bundled_binutils=false' 'use_custom_libcxx=false' 'use_vaapi=true' + 'enable_swiftshader=false' ) if [[ -n ${_system_libs[icu]+set} ]]; then @@ -215,7 +236,7 @@ build() { fi # Append ungoogled chromium flags to _flags array - _ungoogled_repo="$srcdir/ungoogled-chromium-$_ungoogled_ver" + _ungoogled_repo="$srcdir/$_pkgname-$_ungoogled_ver" readarray -t -O ${#_flags[@]} _flags < "${_ungoogled_repo}/flags.gn" # Facilitate deterministic builds (taken from build/config/compiler/BUILD.gn) @@ -227,7 +248,9 @@ build() { CFLAGS+=' -Wno-unknown-warning-option' CXXFLAGS+=' -Wno-unknown-warning-option' + msg2 'Configuring Chromium' gn gen out/Release --args="${_flags[*]}" --script-executable=/usr/bin/python2 + msg2 'Building Chromium' ninja -C out/Release chrome chrome_sandbox chromedriver } @@ -272,10 +295,6 @@ package() { resources.pak v8_context_snapshot.bin - # ANGLE - libEGL.so - libGLESv2.so - chromedriver ) @@ -285,7 +304,6 @@ package() { cp "${toplevel_files[@]/#/out/Release/}" "$pkgdir/usr/lib/chromium/" install -Dm644 -t "$pkgdir/usr/lib/chromium/locales" out/Release/locales/*.pak - install -Dm755 -t "$pkgdir/usr/lib/chromium/swiftshader" out/Release/swiftshader/*.so for size in 24 48 64 128 256; do install -Dm644 "chrome/app/theme/chromium/product_logo_$size.png" \ diff --git a/force-mp3-files-to-have-a-start-time-of-zero.patch b/force-mp3-files-to-have-a-start-time-of-zero.patch new file mode 100644 index 000000000000..d018a87094dc --- /dev/null +++ b/force-mp3-files-to-have-a-start-time-of-zero.patch @@ -0,0 +1,38 @@ +From 192fc3899f76e9487d77895f31df8d2d13bf9619 Mon Sep 17 00:00:00 2001 +From: Dale Curtis <dalecurtis@chromium.org> +Date: Fri, 26 Jun 2020 01:10:55 +0000 +Subject: [PATCH] Force mp3 files to have a start time of zero. + +This will allow us to remove our custom patch which breaks upstream +ffmpeg functionality for unknown reasons. + +R=sandersd + +Fixed: 1062037 +Change-Id: I253011843dee4dd6a8c958b14990ad836a9f1dca +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2268221 +Auto-Submit: Dale Curtis <dalecurtis@chromium.org> +Reviewed-by: Dan Sanders <sandersd@chromium.org> +Commit-Queue: Dale Curtis <dalecurtis@chromium.org> +Cr-Commit-Position: refs/heads/master@{#782792} +--- + media/filters/ffmpeg_demuxer.cc | 6 ++++++ + 1 file changed, 6 insertions(+) + +diff --git a/media/filters/ffmpeg_demuxer.cc b/media/filters/ffmpeg_demuxer.cc +index 01266e1a072..a7ed542b5fc 100644 +--- a/media/filters/ffmpeg_demuxer.cc ++++ b/media/filters/ffmpeg_demuxer.cc +@@ -1522,6 +1522,12 @@ void FFmpegDemuxer::OnFindStreamInfoDone(int result) { + if (glue_->container() == container_names::CONTAINER_AVI) + format_context->flags |= AVFMT_FLAG_GENPTS; + ++ // FFmpeg will incorrectly adjust the start time of MP3 files into the future ++ // based on discard samples. We were unable to fix this upstream without ++ // breaking ffmpeg functionality. https://crbug.com/1062037 ++ if (glue_->container() == container_names::CONTAINER_MP3) ++ start_time_ = base::TimeDelta(); ++ + // For testing purposes, don't overwrite the timeline offset if set already. + if (timeline_offset_.is_null()) { + timeline_offset_ = diff --git a/intel-vp9-quirk.patch b/intel-vp9-quirk.patch new file mode 100644 index 000000000000..27820a5d81d5 --- /dev/null +++ b/intel-vp9-quirk.patch @@ -0,0 +1,12 @@ +--- a/media/gpu/vaapi/vaapi_video_decode_accelerator.cc 2020-06-15 11:58:38.000000000 -0700 ++++ b/media/gpu/vaapi/vaapi_video_decode_accelerator.cc 2020-06-23 17:18:20.219862776 -0700 +@@ -1163,6 +1163,9 @@ + // of frames needed by the client pipeline (see b/133733739). + // TODO(crbug.com/911754): Enable for VP9 Profile 2. + if (IsGeminiLakeOrLater() && ++#if defined(OS_LINUX) ++ false && ++#endif + (profile_ == VP9PROFILE_PROFILE0 || profile_ == VP8PROFILE_ANY)) { + // Add one to the reference frames for the one being currently egressed, and + // an extra allocation for both |client_| and |decoder_|, see diff --git a/nvidia-vdpau.patch b/nvidia-vdpau.patch new file mode 100644 index 000000000000..8d879de7bfd8 --- /dev/null +++ b/nvidia-vdpau.patch @@ -0,0 +1,65 @@ +--- a/media/gpu/vaapi/vaapi_video_decode_accelerator.cc ++++ b/media/gpu/vaapi/vaapi_video_decode_accelerator.cc +@@ -641,6 +641,7 @@ void VaapiVideoDecodeAccelerator::AssignPictureBuffers( + // |vpp_vaapi_wrapper_| for VaapiPicture to DownloadFromSurface() the VA's + // internal decoded frame. + if (buffer_allocation_mode_ != BufferAllocationMode::kNone && ++ buffer_allocation_mode_ != BufferAllocationMode::kWrapVdpau && + !vpp_vaapi_wrapper_) { + vpp_vaapi_wrapper_ = VaapiWrapper::Create( + VaapiWrapper::kVideoProcess, VAProfileNone, +@@ -665,7 +666,8 @@ void VaapiVideoDecodeAccelerator::AssignPictureBuffers( + PictureBuffer buffer = buffers[i]; + buffer.set_size(requested_pic_size_); + std::unique_ptr<VaapiPicture> picture = vaapi_picture_factory_->Create( +- (buffer_allocation_mode_ == BufferAllocationMode::kNone) ++ ((buffer_allocation_mode_ == BufferAllocationMode::kNone) || ++ (buffer_allocation_mode_ == BufferAllocationMode::kWrapVdpau)) + ? vaapi_wrapper_ + : vpp_vaapi_wrapper_, + make_context_current_cb_, bind_image_cb_, buffer); +@@ -1093,6 +1095,12 @@ VaapiVideoDecodeAccelerator::GetSupportedProfiles() { + + VaapiVideoDecodeAccelerator::BufferAllocationMode + VaapiVideoDecodeAccelerator::DecideBufferAllocationMode() { ++ // NVIDIA blobs use VDPAU ++ if (VaapiWrapper::GetImplementationType() == VAImplementation::kNVIDIAVDPAU) { ++ LOG(INFO) << "VA-API driver on VDPAU backend"; ++ return BufferAllocationMode::kWrapVdpau; ++ } ++ + // TODO(crbug.com/912295): Enable a better BufferAllocationMode for IMPORT + // |output_mode_| as well. + if (output_mode_ == VideoDecodeAccelerator::Config::OutputMode::IMPORT) +--- a/media/gpu/vaapi/vaapi_video_decode_accelerator.h ++++ b/media/gpu/vaapi/vaapi_video_decode_accelerator.h +@@ -204,6 +204,7 @@ class MEDIA_GPU_EXPORT VaapiVideoDecodeAccelerator + // Using |client_|s provided PictureBuffers and as many internally + // allocated. + kNormal, ++ kWrapVdpau, + }; + + // Decides the concrete buffer allocation mode, depending on the hardware +--- a/media/gpu/vaapi/vaapi_wrapper.cc ++++ b/media/gpu/vaapi/vaapi_wrapper.cc +@@ -131,6 +131,9 @@ media::VAImplementation VendorStringToImplementationType( + } else if (base::StartsWith(va_vendor_string, "Intel iHD driver", + base::CompareCase::SENSITIVE)) { + return media::VAImplementation::kIntelIHD; ++ } else if (base::StartsWith(va_vendor_string, "Splitted-Desktop Systems VDPAU", ++ base::CompareCase::SENSITIVE)) { ++ return media::VAImplementation::kNVIDIAVDPAU; + } + return media::VAImplementation::kOther; + } +--- a/media/gpu/vaapi/vaapi_wrapper.h ++++ b/media/gpu/vaapi/vaapi_wrapper.h +@@ -79,6 +79,7 @@ enum class VAImplementation { + kIntelIHD, + kOther, + kInvalid, ++ kNVIDIAVDPAU, + }; + + // This class handles VA-API calls and ensures proper locking of VA-API calls diff --git a/wayland-egl.patch b/wayland-egl.patch new file mode 100644 index 000000000000..58a079862f35 --- /dev/null +++ b/wayland-egl.patch @@ -0,0 +1,22 @@ +--- a/ui/gl/gl_image_native_pixmap.cc 2020-05-18 11:40:06.000000000 -0700 ++++ b/ui/gl/gl_image_native_pixmap.cc 2020-05-22 02:07:16.007770442 -0700 +@@ -288,6 +288,8 @@ + std::move(scoped_fd)); + } + ++ handle.planes[0].size = size_.GetArea(); ++ + return handle; + #endif // !defined(OS_FUCHSIA) + } +--- a/gpu/command_buffer/service/error_state.cc 2020-05-18 11:39:22.000000000 -0700 ++++ b/gpu/command_buffer/service/error_state.cc 2020-05-22 13:43:09.181180388 -0700 +@@ -115,6 +115,8 @@ + // buffer. + error = GL_NO_ERROR; + } ++ if (error == GL_INVALID_ENUM) ++ error = GL_NO_ERROR; + return error; + } + |