summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorgraysky2021-03-02 18:42:08 -0500
committergraysky2021-03-02 18:42:08 -0500
commit4c7e89d73546cd7f02ea3f9216e1cfa87de42ec2 (patch)
tree2b3adb919d6706a4fef3358e6ebe13dd14e87922
parent7620f8885a9cb52b2984d7968ca199ab1ae1b316 (diff)
downloadaur-4c7e89d73546cd7f02ea3f9216e1cfa87de42ec2.tar.gz
Update to 89.0.4389.72-1
-rw-r--r--.SRCINFO32
-rw-r--r--PKGBUILD49
-rw-r--r--add-ctime-for-std-time.patch27
-rw-r--r--add-dependency-on-opus-in-webcodecs.patch43
-rw-r--r--subpixel-anti-aliasing-in-FreeType-2.8.1.patch100
-rw-r--r--use-oauth2-client-switches-as-default.patch17
6 files changed, 129 insertions, 139 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 6de92420360e..52a845c17007 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,22 +1,19 @@
pkgbase = chromium-no-extras
pkgdesc = Chromium without hangout services, widevine, pipewire, or chromedriver
- pkgver = 88.0.4324.182
+ pkgver = 89.0.4389.72
pkgrel = 1
url = https://www.chromium.org/Home
arch = x86_64
license = BSD
makedepends = python
- makedepends = python2
- makedepends = gperf
- makedepends = mesa
+ makedepends = gn
makedepends = ninja
- makedepends = nodejs
- makedepends = git
- makedepends = libva
makedepends = clang
makedepends = lld
- makedepends = gn
+ makedepends = gperf
+ makedepends = nodejs
makedepends = java-runtime-headless
+ makedepends = python2
makedepends = python2-setuptools
depends = gtk3
depends = nss
@@ -47,22 +44,25 @@ pkgbase = chromium-no-extras
depends = libxslt
depends = libpng
depends = freetype2
- optdepends = libva: hardware-accelerated video decode [experimental]
optdepends = kdialog: needed for file dialogs in KDE
optdepends = org.freedesktop.secrets: password storage backend on GNOME / Xfce
optdepends = kwallet: for storing passwords in KWallet on KDE desktops
- provides = chromium=88.0.4324.182
+ provides = chromium=89.0.4389.72
conflicts = chromium
- source = https://commondatastorage.googleapis.com/chromium-browser-official/chromium-88.0.4324.182.tar.xz
+ source = https://commondatastorage.googleapis.com/chromium-browser-official/chromium-89.0.4389.72.tar.xz
source = https://github.com/foutrelis/chromium-launcher/archive/v7/chromium-launcher-7.tar.gz
- source = https://github.com/stha09/chromium-patches/releases/download/chromium-88-patchset-3/chromium-88-patchset-3.tar.xz
+ source = https://github.com/stha09/chromium-patches/releases/download/chromium-89-patchset-6/chromium-89-patchset-6.tar.xz
+ source = add-dependency-on-opus-in-webcodecs.patch
+ source = add-ctime-for-std-time.patch
source = chromium-glibc-2.33.patch
- source = subpixel-anti-aliasing-in-FreeType-2.8.1.patch
- sha256sums = 30411fc3ec2d33df4c5cad41f21affa3823c80f7dbd394f6d68f9a1e81015b81
+ source = use-oauth2-client-switches-as-default.patch
+ sha256sums = 946a0b65aad10e0f77a539103892099b7238310c733f25b41d58b76f6ac0bc4f
sha256sums = 86859c11cfc8ba106a3826479c0bc759324a62150b271dd35d1a0f96e890f52f
- sha256sums = e5a60a4c9d0544d3321cc241b4c7bd4adb0a885f090c6c6c21581eac8e3b4ba9
+ sha256sums = 359d2847e775d8cf6f4e0b12c94c8f2718f0fd562427859c596ce1c3711dbd8e
+ sha256sums = b86b11de8db438c47f0a84c7956740f648d21035f4ee46bfbd50c3348d369121
+ sha256sums = 102e0c976c0d7fd1fbe2f2978ec621499a97b62457b3fde4daf84f026d1a53a7
sha256sums = 2fccecdcd4509d4c36af873988ca9dbcba7fdb95122894a9fdf502c33a1d7a4b
- sha256sums = 1e2913e21c491d546e05f9b4edf5a6c7a22d89ed0b36ef692ca6272bcd5faec6
+ sha256sums = e393174d7695d0bafed69e868c5fbfecf07aa6969f3b64596d0bae8b067e1711
pkgname = chromium-no-extras
diff --git a/PKGBUILD b/PKGBUILD
index 49f180ad9c57..8ade636419e2 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -5,11 +5,11 @@
# Contributor: Daniel J Griffiths <ghost1227@archlinux.us>
pkgname=chromium-no-extras
-pkgver=88.0.4324.182
+pkgver=89.0.4389.72
pkgrel=1
_pkgname=chromium
_launcher_ver=7
-_gcc_patchset=3
+_gcc_patchset=6
pkgdesc="Chromium without hangout services, widevine, pipewire, or chromedriver"
arch=('x86_64')
url="https://www.chromium.org/Home"
@@ -19,24 +19,26 @@ conflicts=(chromium)
depends=('gtk3' 'nss' 'alsa-lib' 'xdg-utils' 'libxss' 'libcups' 'libgcrypt'
'ttf-liberation' 'systemd' 'dbus' 'libpulse' 'pciutils'
'desktop-file-utils' 'hicolor-icon-theme')
-makedepends=('python' 'python2' 'gperf' 'mesa' 'ninja' 'nodejs' 'git' 'libva'
- 'clang' 'lld' 'gn' 'java-runtime-headless'
- 'python2-setuptools')
+makedepends=('python' 'gn' 'ninja' 'clang' 'lld' 'gperf' 'nodejs'
+ 'java-runtime-headless' 'python2' 'python2-setuptools')
optdepends=(
- 'libva: hardware-accelerated video decode [experimental]'
'kdialog: needed for file dialogs in KDE'
'org.freedesktop.secrets: password storage backend on GNOME / Xfce'
'kwallet: for storing passwords in KWallet on KDE desktops')
source=(https://commondatastorage.googleapis.com/chromium-browser-official/$_pkgname-$pkgver.tar.xz
https://github.com/foutrelis/chromium-launcher/archive/v$_launcher_ver/chromium-launcher-$_launcher_ver.tar.gz
https://github.com/stha09/chromium-patches/releases/download/chromium-${pkgver%%.*}-patchset-$_gcc_patchset/chromium-${pkgver%%.*}-patchset-$_gcc_patchset.tar.xz
+ add-dependency-on-opus-in-webcodecs.patch
+ add-ctime-for-std-time.patch
chromium-glibc-2.33.patch
- subpixel-anti-aliasing-in-FreeType-2.8.1.patch)
-sha256sums=('30411fc3ec2d33df4c5cad41f21affa3823c80f7dbd394f6d68f9a1e81015b81'
+ use-oauth2-client-switches-as-default.patch)
+sha256sums=('946a0b65aad10e0f77a539103892099b7238310c733f25b41d58b76f6ac0bc4f'
'86859c11cfc8ba106a3826479c0bc759324a62150b271dd35d1a0f96e890f52f'
- 'e5a60a4c9d0544d3321cc241b4c7bd4adb0a885f090c6c6c21581eac8e3b4ba9'
+ '359d2847e775d8cf6f4e0b12c94c8f2718f0fd562427859c596ce1c3711dbd8e'
+ 'b86b11de8db438c47f0a84c7956740f648d21035f4ee46bfbd50c3348d369121'
+ '102e0c976c0d7fd1fbe2f2978ec621499a97b62457b3fde4daf84f026d1a53a7'
'2fccecdcd4509d4c36af873988ca9dbcba7fdb95122894a9fdf502c33a1d7a4b'
- '1e2913e21c491d546e05f9b4edf5a6c7a22d89ed0b36ef692ca6272bcd5faec6')
+ 'e393174d7695d0bafed69e868c5fbfecf07aa6969f3b64596d0bae8b067e1711')
# 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
@@ -67,9 +69,10 @@ depends+=(${_system_libs[@]})
# Google API keys (see https://www.chromium.org/developers/how-tos/api-keys)
# Note: These are for Arch Linux use ONLY. For your own distribution, please
# get your own set of keys.
+#
+# Starting with Chromium 89 (2021-03-02) the OAuth2 credentials have been left
+# out: https://archlinux.org/news/chromium-losing-sync-support-in-early-march/
_google_api_key=AIzaSyDwr302FpOSkGRpLlUpPThNTDPbXcIn_FM
-_google_default_client_id=413772536636.apps.googleusercontent.com
-_google_default_client_secret=0ZChLK6AxeA3Isu96MkwqDR4
prepare() {
cd "$srcdir/$_pkgname-$pkgver"
@@ -84,17 +87,20 @@ prepare() {
third_party/blink/renderer/core/xml/parser/xml_document_parser.cc \
third_party/libxml/chromium/*.cc
+ # 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
+ patch -Np1 -i ../use-oauth2-client-switches-as-default.patch
+
# https://crbug.com/1164975
patch -Np1 -i ../chromium-glibc-2.33.patch
# Upstream fixes
- patch -Np1 -d third_party/skia <../subpixel-anti-aliasing-in-FreeType-2.8.1.patch
+ patch -Np1 -i ../add-dependency-on-opus-in-webcodecs.patch
+ patch -Np1 -i ../add-ctime-for-std-time.patch
# Fixes for building with libstdc++ instead of libc++
- patch -Np1 -i ../patches/chromium-87-openscreen-include.patch
- patch -Np1 -i ../patches/chromium-88-CompositorFrameReporter-dcheck.patch
- patch -Np1 -i ../patches/chromium-88-ideographicSpaceCharacter.patch
- patch -Np1 -i ../patches/chromium-88-AXTreeFormatter-include.patch
+ patch -Np1 -i ../patches/chromium-89-quiche-dcheck.patch
# Force script incompatible with Python 3 to use /usr/bin/python2
sed -i '1s|python$|&2|' third_party/dom_distiller_js/protoc_plugins/*.py
@@ -115,7 +121,7 @@ prepare() {
-delete
done
- python2 build/linux/unbundle/replace_gn_files.py \
+ ./build/linux/unbundle/replace_gn_files.py \
--system-libraries "${!_system_libs[@]}"
}
@@ -139,6 +145,7 @@ build() {
'host_toolchain="//build/toolchain/linux/unbundle:default"'
'clang_use_chrome_plugins=false'
'is_official_build=true' # implies is_cfi=true on x86_64
+ 'chrome_pgo_phase=0' # unsupported instrumentation profile format version
'treat_warnings_as_errors=false'
'fieldtrial_testing_like_official_build=true'
'ffmpeg_branding="Chrome"'
@@ -151,12 +158,8 @@ build() {
'use_custom_libcxx=false'
'enable_hangout_services_extension=false'
'enable_widevine=false'
- 'use_vaapi=true'
'enable_nacl=false'
"google_api_key=\"${_google_api_key}\""
- "google_default_client_id=\"${_google_default_client_id}\""
- "google_default_client_secret=\"${_google_default_client_secret}\""
- 'symbol_level=0'
# from ArchARM to build with distcc, uncomment if you build with distcc
#'is_cfi=false'
#'use_gold=false'
@@ -181,7 +184,7 @@ build() {
CFLAGS+=' -Wno-unknown-warning-option'
CXXFLAGS+=' -Wno-unknown-warning-option'
- gn gen out/Release --args="${_flags[*]}" --script-executable=python2
+ gn gen out/Release --args="${_flags[*]}"
ninja -C out/Release chrome chrome_sandbox
}
diff --git a/add-ctime-for-std-time.patch b/add-ctime-for-std-time.patch
new file mode 100644
index 000000000000..8e9ec47d4891
--- /dev/null
+++ b/add-ctime-for-std-time.patch
@@ -0,0 +1,27 @@
+From c06ddc4935bf1394812c011ce5d93898ccc8a53a Mon Sep 17 00:00:00 2001
+From: Stephan Hartmann <stha09@googlemail.com>
+Date: Tue, 9 Feb 2021 19:22:57 +0000
+Subject: [PATCH] IWYU: add ctime for std::time
+
+Bug: None
+Change-Id: I8bdae43209984242b9f5e538d74ece4409b65e3c
+Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2679610
+Reviewed-by: Katie Dektar <katie@chromium.org>
+Commit-Queue: Katie Dektar <katie@chromium.org>
+Cr-Commit-Position: refs/heads/master@{#852287}
+---
+ ui/accessibility/ax_tree_serializer.h | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/ui/accessibility/ax_tree_serializer.h b/ui/accessibility/ax_tree_serializer.h
+index ddbbdcdc25c53..1790e3b791967 100644
+--- a/ui/accessibility/ax_tree_serializer.h
++++ b/ui/accessibility/ax_tree_serializer.h
+@@ -8,6 +8,7 @@
+ #include <stddef.h>
+ #include <stdint.h>
+
++#include <ctime>
+ #include <ostream>
+ #include <unordered_map>
+ #include <unordered_set>
diff --git a/add-dependency-on-opus-in-webcodecs.patch b/add-dependency-on-opus-in-webcodecs.patch
new file mode 100644
index 000000000000..12e1116fafc9
--- /dev/null
+++ b/add-dependency-on-opus-in-webcodecs.patch
@@ -0,0 +1,43 @@
+From b5b80df7dafba8cafa4c6c0ba2153dfda467dfc9 Mon Sep 17 00:00:00 2001
+From: Stephan Hartmann <stha09@googlemail.com>
+Date: Wed, 27 Jan 2021 20:31:51 +0000
+Subject: [PATCH] add dependency on opus in webcodecs
+
+webcodecs uses opus, but dependency is missing. With unbundled
+opus library build fails, because include path is incomplete.
+
+Bug: 1169758
+Change-Id: I01369364327461196a81002479636cf45017669a
+Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2644623
+Reviewed-by: Dale Curtis <dalecurtis@chromium.org>
+Commit-Queue: Dale Curtis <dalecurtis@chromium.org>
+Cr-Commit-Position: refs/heads/master@{#847754}
+---
+ third_party/blink/renderer/modules/webcodecs/BUILD.gn | 1 +
+ third_party/blink/renderer/modules/webcodecs/DEPS | 1 +
+ 2 files changed, 2 insertions(+)
+
+diff --git a/third_party/blink/renderer/modules/webcodecs/BUILD.gn b/third_party/blink/renderer/modules/webcodecs/BUILD.gn
+index fdf4ca0fafc72..01a7bf809ffca 100644
+--- a/third_party/blink/renderer/modules/webcodecs/BUILD.gn
++++ b/third_party/blink/renderer/modules/webcodecs/BUILD.gn
+@@ -65,6 +65,7 @@ blink_modules_sources("webcodecs") {
+ "//media/mojo/clients",
+ "//media/mojo/mojom",
+ "//third_party/libyuv:libyuv",
++ "//third_party/opus",
+ ]
+ if (media_use_openh264) {
+ deps += [ "//third_party/openh264:encoder" ]
+diff --git a/third_party/blink/renderer/modules/webcodecs/DEPS b/third_party/blink/renderer/modules/webcodecs/DEPS
+index b8dd596da8caf..ea1919d12205a 100644
+--- a/third_party/blink/renderer/modules/webcodecs/DEPS
++++ b/third_party/blink/renderer/modules/webcodecs/DEPS
+@@ -19,6 +19,7 @@ include_rules = [
+
+ "+third_party/libyuv",
+ "+third_party/openh264",
++ "+third_party/opus",
+
+ "+ui/gfx/color_space.h",
+ "+ui/gfx/geometry/rect.h",
diff --git a/subpixel-anti-aliasing-in-FreeType-2.8.1.patch b/subpixel-anti-aliasing-in-FreeType-2.8.1.patch
deleted file mode 100644
index c11b512c16ad..000000000000
--- a/subpixel-anti-aliasing-in-FreeType-2.8.1.patch
+++ /dev/null
@@ -1,100 +0,0 @@
-From f25787b72c20e97cdeb74e037dc1ff56a88b45c6 Mon Sep 17 00:00:00 2001
-From: Ben Wagner <bungeman@google.com>
-Date: Tue, 1 Dec 2020 20:22:00 -0500
-Subject: [PATCH] Subpixel anti-aliasing in FreeType 2.8.1+
-
-FreeType 2.8.1 and later always provide some form of subpixel
-anti-aliasing.
-
-Bug: skia:10950,skia:6663
-Change-Id: I666cc942e73b73073cdabf900c25faa10d9aaf0f
-Reviewed-on: https://skia-review.googlesource.com/c/skia/+/339861
-Reviewed-by: Herb Derby <herb@google.com>
-Commit-Queue: Ben Wagner <bungeman@google.com>
----
- src/ports/SkFontHost_FreeType.cpp | 33 ++++++++++++++++++++-----------
- 1 file changed, 22 insertions(+), 11 deletions(-)
-
-diff --git a/src/ports/SkFontHost_FreeType.cpp b/src/ports/SkFontHost_FreeType.cpp
-index 990eff4f5e..c0aeb792da 100644
---- a/src/ports/SkFontHost_FreeType.cpp
-+++ b/src/ports/SkFontHost_FreeType.cpp
-@@ -32,6 +32,7 @@
- #include "src/utils/SkMatrix22.h"
-
- #include <memory>
-+#include <tuple>
-
- #include <ft2build.h>
- #include FT_ADVANCES_H
-@@ -147,13 +148,16 @@ public:
- // *reinterpret_cast<void**>(&procPtr) = dlsym(self, "proc");
- // because clang has not implemented DR573. See http://clang.llvm.org/cxx_dr_status.html .
-
-- FT_Int major, minor, patch;
-- FT_Library_Version(fLibrary, &major, &minor, &patch);
-+ using Version = std::tuple<FT_Int, FT_Int, FT_Int>;
-+ Version version;
-+ FT_Library_Version(fLibrary, &std::get<0>(version),
-+ &std::get<1>(version),
-+ &std::get<2>(version));
-
- #if SK_FREETYPE_MINIMUM_RUNTIME_VERSION >= 0x02070100
- fGetVarDesignCoordinates = FT_Get_Var_Design_Coordinates;
- #elif SK_FREETYPE_MINIMUM_RUNTIME_VERSION & SK_FREETYPE_DLOPEN
-- if (major > 2 || ((major == 2 && minor > 7) || (major == 2 && minor == 7 && patch >= 0))) {
-+ if (Version(2,7,0) <= version) {
- //The FreeType library is already loaded, so symbols are available in process.
- void* self = dlopen(nullptr, RTLD_LAZY);
- if (self) {
-@@ -166,7 +170,7 @@ public:
- #if SK_FREETYPE_MINIMUM_RUNTIME_VERSION >= 0x02070200
- FT_Set_Default_Properties(fLibrary);
- #elif SK_FREETYPE_MINIMUM_RUNTIME_VERSION & SK_FREETYPE_DLOPEN
-- if (major > 2 || ((major == 2 && minor > 7) || (major == 2 && minor == 7 && patch >= 1))) {
-+ if (Version(2,7,1) <= version) {
- //The FreeType library is already loaded, so symbols are available in process.
- void* self = dlopen(nullptr, RTLD_LAZY);
- if (self) {
-@@ -185,7 +189,7 @@ public:
- #if SK_FREETYPE_MINIMUM_RUNTIME_VERSION >= 0x02080000
- fLightHintingIsYOnly = true;
- #else
-- if (major > 2 || ((major == 2 && minor > 8) || (major == 2 && minor == 8 && patch >= 0))) {
-+ if (Version(2,8,0) <= version) {
- fLightHintingIsYOnly = true;
- }
- #endif
-@@ -194,7 +198,7 @@ public:
- #if SK_FREETYPE_MINIMUM_RUNTIME_VERSION >= 0x02080100
- fGetVarAxisFlags = FT_Get_Var_Axis_Flags;
- #elif SK_FREETYPE_MINIMUM_RUNTIME_VERSION & SK_FREETYPE_DLOPEN
-- if (major > 2 || ((major == 2 && minor > 7) || (major == 2 && minor == 7 && patch >= 0))) {
-+ if (Version(2,7,0) <= version) {
- //The FreeType library is already loaded, so symbols are available in process.
- void* self = dlopen(nullptr, RTLD_LAZY);
- if (self) {
-@@ -204,11 +208,18 @@ public:
- }
- #endif
-
-- // Setup LCD filtering. This reduces color fringes for LCD smoothed glyphs.
-- // The default has changed over time, so this doesn't mean the same thing to all users.
-- if (FT_Library_SetLcdFilter(fLibrary, FT_LCD_FILTER_DEFAULT) == 0) {
-- fIsLCDSupported = true;
-- fLCDExtra = 2; //Using a filter adds one full pixel to each side.
-+ fIsLCDSupported =
-+ // Subpixel anti-aliasing may be unfiltered until the LCD filter is set.
-+ // Newer versions may still need this, so this test with side effects must come first.
-+ // The default has changed over time, so this doesn't mean the same thing to all users.
-+ (FT_Library_SetLcdFilter(fLibrary, FT_LCD_FILTER_DEFAULT) == 0) ||
-+
-+ // In 2.8.1 and later FreeType always provides some form of subpixel anti-aliasing.
-+ ((SK_FREETYPE_MINIMUM_RUNTIME_VERSION) >= 0x02080100) ||
-+ (Version(2,8,1) <= version);
-+
-+ if (fIsLCDSupported) {
-+ fLCDExtra = 2; // Using a filter may require up to one full pixel to each side.
- }
- }
- ~FreeTypeLibrary() {
diff --git a/use-oauth2-client-switches-as-default.patch b/use-oauth2-client-switches-as-default.patch
new file mode 100644
index 000000000000..9d9c57bfb0d2
--- /dev/null
+++ b/use-oauth2-client-switches-as-default.patch
@@ -0,0 +1,17 @@
+diff -upr chromium-89.0.4389.58.orig/google_apis/google_api_keys.cc chromium-89.0.4389.58/google_apis/google_api_keys.cc
+--- chromium-89.0.4389.58.orig/google_apis/google_api_keys.cc 2021-02-24 22:37:18.494007649 +0000
++++ chromium-89.0.4389.58/google_apis/google_api_keys.cc 2021-02-24 22:35:00.865777600 +0000
+@@ -154,11 +154,11 @@ class APIKeyCache {
+
+ std::string default_client_id = CalculateKeyValue(
+ GOOGLE_DEFAULT_CLIENT_ID,
+- STRINGIZE_NO_EXPANSION(GOOGLE_DEFAULT_CLIENT_ID), nullptr,
++ STRINGIZE_NO_EXPANSION(GOOGLE_DEFAULT_CLIENT_ID), ::switches::kOAuth2ClientID,
+ std::string(), environment.get(), command_line, gaia_config);
+ std::string default_client_secret = CalculateKeyValue(
+ GOOGLE_DEFAULT_CLIENT_SECRET,
+- STRINGIZE_NO_EXPANSION(GOOGLE_DEFAULT_CLIENT_SECRET), nullptr,
++ STRINGIZE_NO_EXPANSION(GOOGLE_DEFAULT_CLIENT_SECRET), ::switches::kOAuth2ClientSecret,
+ std::string(), environment.get(), command_line, gaia_config);
+
+ // We currently only allow overriding the baked-in values for the