Github messages for voidlinux
 help / color / mirror / Atom feed
* [PR PATCH] New package: haskell-language-server-0.8.0
@ 2021-01-16  8:17 waynevanson
  2021-01-16  8:18 ` [PR PATCH] [Updated] " waynevanson
                   ` (36 more replies)
  0 siblings, 37 replies; 38+ messages in thread
From: waynevanson @ 2021-01-16  8:17 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 720 bytes --]

There is a new pull request by waynevanson against master on the void-packages repository

https://github.com/waynevanson/void-packages package/haskell-language-server
https://github.com/void-linux/void-packages/pull/27961

New package: haskell-language-server-0.8.0
Hi Team,

This contains a few executables: haskell-language-server,  haskell-language-server-wrapper, ghcide, ghcide-test-preprocessor, ghcide-bench.

These were all made from running the `stack build` on the `wkrsrc` directory. 
Should these be packages as submodules? All the submodules seem to be requirements of the main module, haskell-laguage-server.

A patch file from https://github.com/void-linux/void-packages/pull/27961.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-package/haskell-language-server-27961.patch --]
[-- Type: text/x-diff, Size: 1466 bytes --]

From 5c842b79da80cd2028e188d5f8e0a9a0548ef484 Mon Sep 17 00:00:00 2001
From: Wayne Van Son <waynevanson@gmail.com>
Date: Sat, 16 Jan 2021 17:12:06 +0000
Subject: [PATCH] New package: haskell-language-server-0.8.0

---
 srcpkgs/haskell-language-server/template | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)
 create mode 100644 srcpkgs/haskell-language-server/template

diff --git a/srcpkgs/haskell-language-server/template b/srcpkgs/haskell-language-server/template
new file mode 100644
index 00000000000..8744fe21bf0
--- /dev/null
+++ b/srcpkgs/haskell-language-server/template
@@ -0,0 +1,22 @@
+# Template file for 'haskell-language-server'
+pkgname=haskell-language-server
+version=0.8.0
+revision=0
+build_style="haskell-stack"
+make_build_args="--stack-yaml stack-8.8.4.yaml"
+makedepends="ncurses-libtinfo-devel icu-devel zlib-devel ncurses-term"
+short_desc="Haskell Language Server: Integration of ghcide and haskell-ide-engine"
+maintainer="Wayne Van Son <waynevanson@gmail.com>"
+license="Apache-2.0"
+homepage="https://github.com/haskell/haskell-language-server"
+# todo - use GHC version
+distfiles="https://github.com/haskell/haskell-language-server/archive/${version}.tar.gz"
+checksum="5ff053f0f4bb26b867fdc0b4071ba25c47eaa6febc9a4ef5b70a5a31c9433671"
+nocross="yes"
+nopie_files="
+/usr/bin/haskell-language-server
+/usr/bin/haskell-language-server-wrapper
+/usr/bin/ghcide-bench
+/usr/bin/ghcide
+/usr/bin/ghcide-test-preprocessor
+"

^ permalink raw reply	[flat|nested] 38+ messages in thread

* Re: [PR PATCH] [Updated] New package: haskell-language-server-0.8.0
  2021-01-16  8:17 [PR PATCH] New package: haskell-language-server-0.8.0 waynevanson
@ 2021-01-16  8:18 ` waynevanson
  2021-01-17  5:24 ` waynevanson
                   ` (35 subsequent siblings)
  36 siblings, 0 replies; 38+ messages in thread
From: waynevanson @ 2021-01-16  8:18 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 725 bytes --]

There is an updated pull request by waynevanson against master on the void-packages repository

https://github.com/waynevanson/void-packages package/haskell-language-server
https://github.com/void-linux/void-packages/pull/27961

New package: haskell-language-server-0.8.0
Hi Team,

This contains a few executables: haskell-language-server,  haskell-language-server-wrapper, ghcide, ghcide-test-preprocessor, ghcide-bench.

These were all made from running the `stack build` on the `wkrsrc` directory. 
Should these be packages as submodules? All the submodules seem to be requirements of the main module, haskell-laguage-server.

A patch file from https://github.com/void-linux/void-packages/pull/27961.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-package/haskell-language-server-27961.patch --]
[-- Type: text/x-diff, Size: 1493 bytes --]

From b80c2fcfccc5a0c3d5368e801ed6726c95de12c6 Mon Sep 17 00:00:00 2001
From: Wayne Van Son <waynevanson@gmail.com>
Date: Sat, 16 Jan 2021 17:12:06 +0000
Subject: [PATCH] New package: haskell-language-server-0.8.0

---
 srcpkgs/haskell-language-server/template | 23 +++++++++++++++++++++++
 1 file changed, 23 insertions(+)
 create mode 100644 srcpkgs/haskell-language-server/template

diff --git a/srcpkgs/haskell-language-server/template b/srcpkgs/haskell-language-server/template
new file mode 100644
index 00000000000..83366a27bb5
--- /dev/null
+++ b/srcpkgs/haskell-language-server/template
@@ -0,0 +1,23 @@
+# Template file for 'haskell-language-server'
+pkgname=haskell-language-server
+version=0.8.0
+revision=1
+archs="x86-64"
+build_style="haskell-stack"
+# todo - use GHC version
+make_build_args="--stack-yaml stack-8.8.4.yaml"
+makedepends="ncurses-libtinfo-devel icu-devel zlib-devel ncurses-term"
+short_desc="Haskell Language Server: Integration of ghcide and haskell-ide-engine"
+maintainer="Wayne Van Son <waynevanson@gmail.com>"
+license="Apache-2.0"
+homepage="https://github.com/haskell/haskell-language-server"
+distfiles="https://github.com/haskell/haskell-language-server/archive/${version}.tar.gz"
+checksum="5ff053f0f4bb26b867fdc0b4071ba25c47eaa6febc9a4ef5b70a5a31c9433671"
+nocross="unimplemented"
+nopie_files="
+/usr/bin/haskell-language-server
+/usr/bin/haskell-language-server-wrapper
+/usr/bin/ghcide-bench
+/usr/bin/ghcide
+/usr/bin/ghcide-test-preprocessor
+"

^ permalink raw reply	[flat|nested] 38+ messages in thread

* Re: New package: haskell-language-server-0.8.0
  2021-01-16  8:17 [PR PATCH] New package: haskell-language-server-0.8.0 waynevanson
  2021-01-16  8:18 ` [PR PATCH] [Updated] " waynevanson
@ 2021-01-17  5:24 ` waynevanson
  2021-01-17  5:26 ` [PR PATCH] [Updated] " waynevanson
                   ` (34 subsequent siblings)
  36 siblings, 0 replies; 38+ messages in thread
From: waynevanson @ 2021-01-17  5:24 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 2169 bytes --]

New comment by waynevanson on void-packages repository

https://github.com/void-linux/void-packages/pull/27961#issuecomment-761735959

Comment:
So it works for  `x86_64`, but I cannot get it working with any other architectures.

When building for `armv7l`, I get the following error:

```
network                          > configure
network                          > [1 of 2] Compiling Main             ( /tmp/stack-8ee1647aa5b6024f/network-3.1.1.1/Setup.hs, /tmp/stack-8ee1647aa5b6024f/network-3.1.1.1/.stack-work/dist/x86_64-linux/Cabal-3.0.1.0/setup/Main.o )
network                          > [2 of 2] Compiling StackSetupShim   ( /builddir/haskell-language-server-0.8.0/.stack/setup-exe-src/setup-shim-mPHDZzAJ.hs, /tmp/stack-8ee1647aa5b6024f/network-3.1.1.1/.stack-work/dist/x86_64-linux/Cabal-3.0.1.0/setup/StackSetupShim.o )
network                          > Linking /tmp/stack-8ee1647aa5b6024f/network-3.1.1.1/.stack-work/dist/x86_64-linux/Cabal-3.0.1.0/setup/setup ...
network                          > Configuring network-3.1.1.1...
network                          > configure: WARNING: unrecognized options: --with-compiler
network                          > checking build system type... x86_64-pc-linux-gnu
network                          > checking host system type... x86_64-pc-linux-gnu
network                          > checking for gcc... /usr/bin/cc
network                          > checking whether the C compiler works... no
network                          > configure: error: in `/tmp/stack-8ee1647aa5b6024f/network-3.1.1.1/.stack-work/dist/x86_64-linux/Cabal-3.0.1.0/build':
network                          > configure: error: C compiler cannot create executables
network                          > See `config.log' for more details
```

What could be the reason for this? Googling around didn't get me anywhere.

- `configure: WARNING: unrecognized options: --with-compiler`
- `checking whether the C compiler works... no`
- `configure: error: C compiler cannot create executables`

I would like to see this accepted even it works just for `x86_64`, then we can add support for `armv7l` and friends later.

^ permalink raw reply	[flat|nested] 38+ messages in thread

* Re: [PR PATCH] [Updated] New package: haskell-language-server-0.8.0
  2021-01-16  8:17 [PR PATCH] New package: haskell-language-server-0.8.0 waynevanson
  2021-01-16  8:18 ` [PR PATCH] [Updated] " waynevanson
  2021-01-17  5:24 ` waynevanson
@ 2021-01-17  5:26 ` waynevanson
  2021-01-17  5:26 ` waynevanson
                   ` (33 subsequent siblings)
  36 siblings, 0 replies; 38+ messages in thread
From: waynevanson @ 2021-01-17  5:26 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 725 bytes --]

There is an updated pull request by waynevanson against master on the void-packages repository

https://github.com/waynevanson/void-packages package/haskell-language-server
https://github.com/void-linux/void-packages/pull/27961

New package: haskell-language-server-0.8.0
Hi Team,

This contains a few executables: haskell-language-server,  haskell-language-server-wrapper, ghcide, ghcide-test-preprocessor, ghcide-bench.

These were all made from running the `stack build` on the `wkrsrc` directory. 
Should these be packages as submodules? All the submodules seem to be requirements of the main module, haskell-laguage-server.

A patch file from https://github.com/void-linux/void-packages/pull/27961.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-package/haskell-language-server-27961.patch --]
[-- Type: text/x-diff, Size: 1493 bytes --]

From e06f3df8861442baf2c45ba08eb9885f7970eb2a Mon Sep 17 00:00:00 2001
From: Wayne Van Son <waynevanson@gmail.com>
Date: Sat, 16 Jan 2021 17:12:06 +0000
Subject: [PATCH] New package: haskell-language-server-0.8.0

---
 srcpkgs/haskell-language-server/template | 23 +++++++++++++++++++++++
 1 file changed, 23 insertions(+)
 create mode 100644 srcpkgs/haskell-language-server/template

diff --git a/srcpkgs/haskell-language-server/template b/srcpkgs/haskell-language-server/template
new file mode 100644
index 00000000000..2886a5ac3c0
--- /dev/null
+++ b/srcpkgs/haskell-language-server/template
@@ -0,0 +1,23 @@
+# Template file for 'haskell-language-server'
+pkgname=haskell-language-server
+version=0.8.0
+revision=1
+archs="x86_64"
+build_style="haskell-stack"
+# todo - use GHC version
+make_build_args="--stack-yaml stack-8.8.4.yaml"
+makedepends="ncurses-libtinfo-devel icu-devel zlib-devel ncurses-term"
+short_desc="Haskell Language Server: Integration of ghcide and haskell-ide-engine"
+maintainer="Wayne Van Son <waynevanson@gmail.com>"
+license="Apache-2.0"
+homepage="https://github.com/haskell/haskell-language-server"
+distfiles="https://github.com/haskell/haskell-language-server/archive/${version}.tar.gz"
+checksum="5ff053f0f4bb26b867fdc0b4071ba25c47eaa6febc9a4ef5b70a5a31c9433671"
+nocross="unimplemented"
+nopie_files="
+/usr/bin/haskell-language-server
+/usr/bin/haskell-language-server-wrapper
+/usr/bin/ghcide-bench
+/usr/bin/ghcide
+/usr/bin/ghcide-test-preprocessor
+"

^ permalink raw reply	[flat|nested] 38+ messages in thread

* Re: [PR PATCH] [Updated] New package: haskell-language-server-0.8.0
  2021-01-16  8:17 [PR PATCH] New package: haskell-language-server-0.8.0 waynevanson
                   ` (2 preceding siblings ...)
  2021-01-17  5:26 ` [PR PATCH] [Updated] " waynevanson
@ 2021-01-17  5:26 ` waynevanson
  2021-01-17  5:26 ` waynevanson
                   ` (32 subsequent siblings)
  36 siblings, 0 replies; 38+ messages in thread
From: waynevanson @ 2021-01-17  5:26 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 725 bytes --]

There is an updated pull request by waynevanson against master on the void-packages repository

https://github.com/waynevanson/void-packages package/haskell-language-server
https://github.com/void-linux/void-packages/pull/27961

New package: haskell-language-server-0.8.0
Hi Team,

This contains a few executables: haskell-language-server,  haskell-language-server-wrapper, ghcide, ghcide-test-preprocessor, ghcide-bench.

These were all made from running the `stack build` on the `wkrsrc` directory. 
Should these be packages as submodules? All the submodules seem to be requirements of the main module, haskell-laguage-server.

A patch file from https://github.com/void-linux/void-packages/pull/27961.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-package/haskell-language-server-27961.patch --]
[-- Type: text/x-diff, Size: 1493 bytes --]

From caf7c0153df720a35b9bbd32077c07959e8cf531 Mon Sep 17 00:00:00 2001
From: Wayne Van Son <waynevanson@gmail.com>
Date: Sat, 16 Jan 2021 17:12:06 +0000
Subject: [PATCH] New package: haskell-language-server-0.8.0

---
 srcpkgs/haskell-language-server/template | 23 +++++++++++++++++++++++
 1 file changed, 23 insertions(+)
 create mode 100644 srcpkgs/haskell-language-server/template

diff --git a/srcpkgs/haskell-language-server/template b/srcpkgs/haskell-language-server/template
new file mode 100644
index 00000000000..2886a5ac3c0
--- /dev/null
+++ b/srcpkgs/haskell-language-server/template
@@ -0,0 +1,23 @@
+# Template file for 'haskell-language-server'
+pkgname=haskell-language-server
+version=0.8.0
+revision=1
+archs="x86_64"
+build_style="haskell-stack"
+# todo - use GHC version
+make_build_args="--stack-yaml stack-8.8.4.yaml"
+makedepends="ncurses-libtinfo-devel icu-devel zlib-devel ncurses-term"
+short_desc="Haskell Language Server: Integration of ghcide and haskell-ide-engine"
+maintainer="Wayne Van Son <waynevanson@gmail.com>"
+license="Apache-2.0"
+homepage="https://github.com/haskell/haskell-language-server"
+distfiles="https://github.com/haskell/haskell-language-server/archive/${version}.tar.gz"
+checksum="5ff053f0f4bb26b867fdc0b4071ba25c47eaa6febc9a4ef5b70a5a31c9433671"
+nocross="unimplemented"
+nopie_files="
+/usr/bin/haskell-language-server
+/usr/bin/haskell-language-server-wrapper
+/usr/bin/ghcide-bench
+/usr/bin/ghcide
+/usr/bin/ghcide-test-preprocessor
+"

^ permalink raw reply	[flat|nested] 38+ messages in thread

* Re: [PR PATCH] [Updated] New package: haskell-language-server-0.8.0
  2021-01-16  8:17 [PR PATCH] New package: haskell-language-server-0.8.0 waynevanson
                   ` (3 preceding siblings ...)
  2021-01-17  5:26 ` waynevanson
@ 2021-01-17  5:26 ` waynevanson
  2021-03-15  7:55 ` waynevanson
                   ` (31 subsequent siblings)
  36 siblings, 0 replies; 38+ messages in thread
From: waynevanson @ 2021-01-17  5:26 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 725 bytes --]

There is an updated pull request by waynevanson against master on the void-packages repository

https://github.com/waynevanson/void-packages package/haskell-language-server
https://github.com/void-linux/void-packages/pull/27961

New package: haskell-language-server-0.8.0
Hi Team,

This contains a few executables: haskell-language-server,  haskell-language-server-wrapper, ghcide, ghcide-test-preprocessor, ghcide-bench.

These were all made from running the `stack build` on the `wkrsrc` directory. 
Should these be packages as submodules? All the submodules seem to be requirements of the main module, haskell-laguage-server.

A patch file from https://github.com/void-linux/void-packages/pull/27961.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-package/haskell-language-server-27961.patch --]
[-- Type: text/x-diff, Size: 1637 bytes --]

From 45418558f2fe44c16e9350f9f02e4bda0a1db85d Mon Sep 17 00:00:00 2001
From: Wayne Van Son <waynevanson@gmail.com>
Date: Sat, 16 Jan 2021 17:12:06 +0000
Subject: [PATCH] New package: haskell-language-server-0.8.0

---
 srcpkgs/haskell-language-server/template | 28 ++++++++++++++++++++++++
 1 file changed, 28 insertions(+)
 create mode 100644 srcpkgs/haskell-language-server/template

diff --git a/srcpkgs/haskell-language-server/template b/srcpkgs/haskell-language-server/template
new file mode 100644
index 00000000000..db8d132b1ea
--- /dev/null
+++ b/srcpkgs/haskell-language-server/template
@@ -0,0 +1,28 @@
+# Template file for 'haskell-language-server'
+pkgname=haskell-language-server
+version=0.8.0
+revision=1
+archs="x86_64"
+build_style="haskell-stack"
+make_build_args="--stack-yaml stack-8.8.4.yaml"
+makedepends="ncurses-libtinfo-devel icu-devel zlib-devel"
+short_desc="Haskell Language Server: Integration of ghcide and haskell-ide-engine"
+maintainer="Wayne Van Son <waynevanson@gmail.com>"
+license="Apache-2.0"
+homepage="https://github.com/haskell/haskell-language-server"
+distfiles="https://github.com/haskell/haskell-language-server/archive/${version}.tar.gz"
+checksum="5ff053f0f4bb26b867fdc0b4071ba25c47eaa6febc9a4ef5b70a5a31c9433671"
+nopie_files="
+/usr/bin/haskell-language-server
+/usr/bin/haskell-language-server-wrapper
+/usr/bin/ghcide-bench
+/usr/bin/ghcide
+/usr/bin/ghcide-test-preprocessor
+"
+
+pre_build() {
+	# fixes /usr/bin/ld: cannot find -lncursesw
+	if [ "$XBPS_TARGET_MACHINE" != "x86_64" ] && [ -f "/lib/libncursesw.so" ]; then
+		ln -sf /lib/libncursesw.so.6.2 /lib/libncursesw.so
+	fi
+}

^ permalink raw reply	[flat|nested] 38+ messages in thread

* Re: [PR PATCH] [Updated] New package: haskell-language-server-0.8.0
  2021-01-16  8:17 [PR PATCH] New package: haskell-language-server-0.8.0 waynevanson
                   ` (4 preceding siblings ...)
  2021-01-17  5:26 ` waynevanson
@ 2021-03-15  7:55 ` waynevanson
  2021-03-15  8:19 ` waynevanson
                   ` (30 subsequent siblings)
  36 siblings, 0 replies; 38+ messages in thread
From: waynevanson @ 2021-03-15  7:55 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 725 bytes --]

There is an updated pull request by waynevanson against master on the void-packages repository

https://github.com/waynevanson/void-packages package/haskell-language-server
https://github.com/void-linux/void-packages/pull/27961

New package: haskell-language-server-0.8.0
Hi Team,

This contains a few executables: haskell-language-server,  haskell-language-server-wrapper, ghcide, ghcide-test-preprocessor, ghcide-bench.

These were all made from running the `stack build` on the `wkrsrc` directory. 
Should these be packages as submodules? All the submodules seem to be requirements of the main module, haskell-laguage-server.

A patch file from https://github.com/void-linux/void-packages/pull/27961.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-package/haskell-language-server-27961.patch --]
[-- Type: text/x-diff, Size: 10061684 bytes --]

From da6a09a11f2935823cb3a7bd3da06be70972d29b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sun, 17 Jan 2021 17:01:40 +0700
Subject: [PATCH 0001/3482] libvirt: fix build order

---
 srcpkgs/libvirt/template | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/srcpkgs/libvirt/template b/srcpkgs/libvirt/template
index 39b5b6b6102d..1d504692423c 100644
--- a/srcpkgs/libvirt/template
+++ b/srcpkgs/libvirt/template
@@ -85,6 +85,10 @@ post_install() {
 	fi
 }
 
+pre_build() {
+	ninja -C build src/remote/qemu_protocol.h
+}
+
 libvirt-devel_package() {
 	depends="libvirt>=${version}_${revision}"
 	short_desc+=" - development files"

From c139ca240be6515a2c780c2c2a721af662e59325 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sun, 17 Jan 2021 16:55:38 +0700
Subject: [PATCH 0002/3482] kpmcore: update to 20.12.1.

---
 srcpkgs/kpmcore/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/kpmcore/template b/srcpkgs/kpmcore/template
index 9566c8b5173f..b463f8b14d44 100644
--- a/srcpkgs/kpmcore/template
+++ b/srcpkgs/kpmcore/template
@@ -1,6 +1,6 @@
 # Template file for 'kpmcore'
 pkgname=kpmcore
-version=4.2.0
+version=20.12.1
 revision=1
 build_style=cmake
 configure_args="-DBUILD_TESTING=OFF"
@@ -13,8 +13,8 @@ short_desc="Library for managing partitions"
 maintainer="jambonmcyeah <jambonmcyeah@gmail.com>"
 license="GPL-3.0-or-later"
 homepage="https://kde.org/applications/system/org.kde.partitionmanager"
-distfiles="${KDE_SITE}/${pkgname}/${version}/src/${pkgname}-${version}.tar.xz"
-checksum=32f5b40aabc566dcdc265c9ae83229ce8acf6ca25a8ba7f1b7b9cab0aa499f9e
+distfiles="${KDE_SITE}/release-service/$version/src/$pkgname-$version.tar.xz"
+checksum=3b109cf4066499e9ab2858528f7634eaf9f5a3f7e7ee6b01b209a6ec64f8d85b
 
 if [ -n "$CROSS_BUILD" ]; then
 	configure_args+=" -DDESKTOPTOJSON_EXECUTABLE=/usr/bin/desktoptojson"

From 458908a25f679ce7784ad5737c83766dcec94d6d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sun, 17 Jan 2021 17:56:25 +0700
Subject: [PATCH 0003/3482] libvirt: pre-generate another header

---
 srcpkgs/libvirt/template | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/libvirt/template b/srcpkgs/libvirt/template
index 1d504692423c..1b4f98fce20e 100644
--- a/srcpkgs/libvirt/template
+++ b/srcpkgs/libvirt/template
@@ -68,6 +68,12 @@ post_patch() {
 	fi
 }
 
+pre_build() {
+	ninja -C build \
+		src/remote/qemu_protocol.h \
+		src/remote/remote_protocol.h
+}
+
 post_install() {
 	# runit services
 	vsv libvirtd
@@ -85,10 +91,6 @@ post_install() {
 	fi
 }
 
-pre_build() {
-	ninja -C build src/remote/qemu_protocol.h
-}
-
 libvirt-devel_package() {
 	depends="libvirt>=${version}_${revision}"
 	short_desc+=" - development files"

From eae3e34b855964ba2886f05351ad177843567122 Mon Sep 17 00:00:00 2001
From: Johannes <johannes.brechtmann@gmail.com>
Date: Fri, 15 Jan 2021 23:08:39 +0100
Subject: [PATCH 0004/3482] radare2: update to 5.0.0.

also switch to meson
---
 common/shlibs                          | 44 +++++++++++++-------------
 srcpkgs/radare2/patches/trust-cc.patch | 13 --------
 srcpkgs/radare2/patches/try.patch      | 20 ++++++++++++
 srcpkgs/radare2/template               |  8 ++---
 4 files changed, 46 insertions(+), 39 deletions(-)
 delete mode 100644 srcpkgs/radare2/patches/trust-cc.patch
 create mode 100644 srcpkgs/radare2/patches/try.patch

diff --git a/common/shlibs b/common/shlibs
index f8d77eb7fefc..468fe3a63fea 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -3197,28 +3197,28 @@ libkdeconnectinterfaces.so.1 kdeconnect-1.2_1
 libkdeconnectcore.so.1 kdeconnect-1.2_1
 libkpmcore.so.10 kpmcore-4.2.0_1
 libpkcs11-helper.so.1 pkcs11-helper-1.22_1
-libr_core.so radare2-2.2.0_1
-libr_config.so radare2-2.2.0_1
-libr_cons.so radare2-2.2.0_1
-libr_util.so radare2-2.2.0_1
-libr_flag.so radare2-2.2.0_1
-libr_asm.so radare2-2.2.0_1
-libr_bin.so radare2-2.2.0_1
-libr_anal.so radare2-2.2.0_1
-libr_lang.so radare2-2.2.0_1
-libr_debug.so radare2-2.2.0_1
-libr_egg.so radare2-2.2.0_1
-libr_bp.so radare2-2.2.0_1
-libr_search.so radare2-2.2.0_1
-libr_io.so radare2-2.2.0_1
-libr_hash.so radare2-2.2.0_1
-libr_socket.so radare2-2.2.0_1
-libr_parse.so radare2-2.2.0_1
-libr_syscall.so radare2-2.2.0_1
-libr_crypto.so radare2-2.2.0_1
-libr_fs.so radare2-2.2.0_1
-libr_magic.so radare2-2.2.0_1
-libr_reg.so radare2-2.2.0_1
+libr_core.so.5.0.0 radare2-5.0.0_1
+libr_config.so.5.0.0 radare2-5.0.0_1
+libr_cons.so.5.0.0 radare2-5.0.0_1
+libr_util.so.5.0.0 radare2-5.0.0_1
+libr_flag.so.5.0.0 radare2-5.0.0_1
+libr_asm.so.5.0.0 radare2-5.0.0_1
+libr_bin.so.5.0.0 radare2-5.0.0_1
+libr_anal.so.5.0.0 radare2-5.0.0_1
+libr_lang.so.5.0.0 radare2-5.0.0_1
+libr_debug.so.5.0.0 radare2-5.0.0_1
+libr_egg.so.5.0.0 radare2-5.0.0_1
+libr_bp.so.5.0.0 radare2-5.0.0_1
+libr_search.so.5.0.0 radare2-5.0.0_1
+libr_io.so.5.0.0 radare2-5.0.0_1
+libr_hash.so.5.0.0 radare2-5.0.0_1
+libr_socket.so.5.0.0 radare2-5.0.0_1
+libr_parse.so.5.0.0 radare2-5.0.0_1
+libr_syscall.so.5.0.0 radare2-5.0.0_1
+libr_crypto.so.5.0.0 radare2-5.0.0_1
+libr_fs.so.5.0.0 radare2-5.0.0_1
+libr_magic.so.5.0.0 radare2-5.0.0_1
+libr_reg.so.5.0.0 radare2-5.0.0_1
 libykpiv.so.1 libykpiv-1.5.0_1
 libykcs11.so.1 libykcs11-1.5.0_1
 libKF5KExiv2.so.15.0.0 libkexiv25-17.04.3_1
diff --git a/srcpkgs/radare2/patches/trust-cc.patch b/srcpkgs/radare2/patches/trust-cc.patch
deleted file mode 100644
index fc9c3c6e3559..000000000000
--- a/srcpkgs/radare2/patches/trust-cc.patch
+++ /dev/null
@@ -1,13 +0,0 @@
---- configure.orig
-+++ configure
-@@ -330,10 +330,6 @@
- COMPILER=CC
- printf "checking for c compiler... "
- HAVE_LANG_C=1
--if [ "${CROSSBUILD}" = 1 ]; then
-- (command -v ${HOST}-${CC} >/dev/null 2>&1)
-- if [ $? = 0 ]; then CC="${HOST}-${CC}"; fi
--fi
- echo "int main(int argc, char **argv){return 0;}" > test.c
-  (exec ${CC} ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} test.c >/dev/null 2>&1)
- if [ $? = 0 ]; then echo ${CC}; else
diff --git a/srcpkgs/radare2/patches/try.patch b/srcpkgs/radare2/patches/try.patch
new file mode 100644
index 000000000000..32ecdb33973c
--- /dev/null
+++ b/srcpkgs/radare2/patches/try.patch
@@ -0,0 +1,20 @@
+--- shlr/Makefile	2020-12-21 09:39:46.000000000 +0100
++++ shlr/Makefile	2021-01-04 22:13:43.513442861 +0100
+@@ -122,7 +122,7 @@
+ SDB_LIBA=sdb/src/libsdb.a
+ 
+ $(SDB_HOST):
+-	$(MAKE) sdb-host HOST_CC=$(HOST_CC) CC=$(HOST_CC)
++	$(MAKE) sdb-host HOST_CC=$(HOST_CC) CC=$(HOST_CC) LD=ld
+ 
+ $(SDB_LIBA):
+ 	$(MAKE) sdb-target
+@@ -136,7 +136,7 @@
+ 	@echo ">>>>>>>>"
+ 	@echo
+ 	$(MAKE) -C sdb clean ; rm -f sdb/src/*.o sdb/src/sdb_version.h
+-	$(MAKE) -C sdb/src "CC=${HOST_CC}" LDFLAGS='${HOST_LDFLAGS}' CPPFLAGS='' CFLAGS='${HOST_CFLAGS} ${PIC}' bin
++	$(MAKE) -C sdb/src "CC=${HOST_CC}" "LD=ld" LDFLAGS='${HOST_LDFLAGS}' CPPFLAGS='' CFLAGS='${HOST_CFLAGS} ${PIC}' bin
+ 	cp -f sdb/src/sdb${BUILD_EXT_EXE} sdb/src/.sdb${BUILD_EXT_EXE}
+ 	cp -f sdb/src/sdb${BUILD_EXT_EXE} sdb/sdb$(BUILD_EXT_EXE)
+ 	-file sdb/sdb$(BUILD_EXT_EXE)
diff --git a/srcpkgs/radare2/template b/srcpkgs/radare2/template
index 3046be71cf53..1f4601b46a27 100644
--- a/srcpkgs/radare2/template
+++ b/srcpkgs/radare2/template
@@ -1,10 +1,10 @@
 # Template file for 'radare2'
 # cutter needs to be bumped when radare2 is updated
 pkgname=radare2
-version=4.5.1
+version=5.0.0
 revision=1
-build_style=gnu-configure
-configure_args="--with-syscapstone"
+build_style=meson
+configure_args="-Duse_sys_capstone=true -Denable_tests=false"
 hostmakedepends="pkg-config"
 makedepends="capstone-devel"
 short_desc="Advanced command line debugger and hexadecimal editor"
@@ -12,7 +12,7 @@ maintainer="Johannes <johannes.brechtmann@gmail.com>"
 license="LGPL-3.0-only"
 homepage="http://www.radare.org"
 distfiles="https://github.com/radareorg/radare2/archive/${version}.tar.gz"
-checksum=4e85b35987bd2ca5881ad9585970b970fe7374814bd383bd1cd62e961a0c228b
+checksum=517dd80ebd0569f31498887338eacb92e8cf054bc4625eef8ffe9ea174c1adae
 
 case "$XBPS_TARGET_MACHINE" in
 	mips*) CFLAGS="-Os";;

From 40a7f147046027f0fef670c2d8b1a0789c83e368 Mon Sep 17 00:00:00 2001
From: Johannes <johannes.brechtmann@gmail.com>
Date: Fri, 15 Jan 2021 23:09:25 +0100
Subject: [PATCH 0005/3482] cutter: rebuild for radare2-5.0.0

---
 srcpkgs/cutter/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/cutter/template b/srcpkgs/cutter/template
index f0dadb5d5dda..646d7b64bab0 100644
--- a/srcpkgs/cutter/template
+++ b/srcpkgs/cutter/template
@@ -1,7 +1,7 @@
 # Template file for 'cutter'
 pkgname=cutter
 version=1.12.0
-revision=1
+revision=2
 build_wrksrc=src
 build_style=qmake
 configure_args="CUTTER_EXTRA_PLUGIN_DIRS=/usr/lib/RadareOrg/Cutter/plugins"

From 77b840c5f1c26dcb8e61d5a619702560439409d7 Mon Sep 17 00:00:00 2001
From: UsernameRandomlyGenerated <coredavid@tutanota.com>
Date: Sun, 17 Jan 2021 09:48:48 +0100
Subject: [PATCH 0006/3482] ImageMagick: update to 7.0.10.58

---
 srcpkgs/ImageMagick/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/ImageMagick/template b/srcpkgs/ImageMagick/template
index 92f99654290e..5764712db610 100644
--- a/srcpkgs/ImageMagick/template
+++ b/srcpkgs/ImageMagick/template
@@ -1,7 +1,7 @@
 # Template file for 'ImageMagick'
 pkgname=ImageMagick
 _majorver=7.0.10
-_patchver=54
+_patchver=58
 version="${_majorver}.${_patchver}"
 revision=1
 wrksrc="${pkgname}-${_majorver}-${_patchver}"
@@ -21,7 +21,7 @@ license="ImageMagick"
 homepage="https://www.imagemagick.org/"
 changelog="https://imagemagick.org/script/changelog.php"
 distfiles="https://github.com/ImageMagick/ImageMagick/archive/${_majorver}-${_patchver}.tar.gz"
-checksum=6766bd17330b43f1c7492ac33628368a8b54dc346b9d3113267292a53964b51a
+checksum=0daabb64602164940fbf95cbd6f16709903eef5d3eee7bd329da878f17605df5
 
 subpackages="libmagick libmagick-devel"
 

From 7f8dcdaf847bf02219282e8ad99dcb43b4c9d894 Mon Sep 17 00:00:00 2001
From: UsernameRandomlyGenerated <coredavid@tutanota.com>
Date: Sun, 17 Jan 2021 09:49:32 +0100
Subject: [PATCH 0007/3482] ImageMagick6: update to 6.9.11.57

---
 srcpkgs/ImageMagick6/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/ImageMagick6/template b/srcpkgs/ImageMagick6/template
index 599793146d32..d55964fb7bde 100644
--- a/srcpkgs/ImageMagick6/template
+++ b/srcpkgs/ImageMagick6/template
@@ -1,7 +1,7 @@
 # Template file for 'ImageMagick6'
 pkgname=ImageMagick6
 _majorver=6.9.11
-_patchver=54
+_patchver=57
 version="${_majorver}.${_patchver}"
 revision=1
 wrksrc="${pkgname}-${_majorver}-${_patchver}"
@@ -20,7 +20,7 @@ maintainer="Johannes <johannes.brechtmann@gmail.com>"
 license="ImageMagick"
 homepage="https://www.imagemagick.org/"
 distfiles="https://github.com/ImageMagick/ImageMagick6/archive/${_majorver}-${_patchver}.tar.gz"
-checksum=e29f89b040a8bbf679eb0a508541356d8a30c73359f469bbd19b290bf293f530
+checksum=bfa17b29fad92a859381d5e896ebb95f5212202fa345a534c70ba5150f94f896
 
 keep_libtool_archives=yes
 conf_files="/etc/ImageMagick-${_majorver%%.*}/*.xml"

From 38d70af9cbfa80501b909916792ee476db776a8b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?J=C3=BCrgen=20Buchm=C3=BCller?= <pullmoll@t-online.de>
Date: Sun, 17 Jan 2021 13:14:43 +0100
Subject: [PATCH 0008/3482] rocksndiamonds: update to 4.2.2.1

---
 srcpkgs/rocksndiamonds/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/rocksndiamonds/template b/srcpkgs/rocksndiamonds/template
index 5c028fc443b7..bd76648459f8 100644
--- a/srcpkgs/rocksndiamonds/template
+++ b/srcpkgs/rocksndiamonds/template
@@ -1,6 +1,6 @@
 # Template file for 'rocksndiamonds'
 pkgname=rocksndiamonds
-version=4.2.2.0
+version=4.2.2.1
 revision=1
 build_style=gnu-makefile
 hostmakedepends="pkg-config"
@@ -10,7 +10,7 @@ maintainer="Jürgen Buchmüller <pullmoll@t-online.de>"
 license="GPL-2.0-only"
 homepage="http://www.artsoft.org/rocksndiamonds"
 distfiles="http://www.artsoft.org/RELEASES/unix/${pkgname}/${pkgname}-${version}.tar.gz"
-checksum=4a990a92fb22ab5e0f77db90a51905e1b2b037b7badab8b3e99553f11dab041b
+checksum=56d3578548cdb439695fad7a8d2339ded9be355969f4fe3e43c89735d9815166
 replaces="rocksndiamonds-data>=0"
 
 do_build() {

From fd5b66f42241f812a17453808861c598e4c4760c Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?J=C3=BCrgen=20Buchm=C3=BCller?= <pullmoll@t-online.de>
Date: Sun, 17 Jan 2021 14:32:40 +0100
Subject: [PATCH 0009/3482] endless-sky-gl21: fix build w/ gcc10

---
 srcpkgs/endless-sky-gl21/patches/fix-std-string.patch | 10 ++++++++++
 1 file changed, 10 insertions(+)
 create mode 100644 srcpkgs/endless-sky-gl21/patches/fix-std-string.patch

diff --git a/srcpkgs/endless-sky-gl21/patches/fix-std-string.patch b/srcpkgs/endless-sky-gl21/patches/fix-std-string.patch
new file mode 100644
index 000000000000..cbe1fe44de66
--- /dev/null
+++ b/srcpkgs/endless-sky-gl21/patches/fix-std-string.patch
@@ -0,0 +1,10 @@
+--- source/Panel.h	2021-01-17 14:25:52.952063261 +0100
++++ source/Panel.h	2021-01-17 14:29:26.466536974 +0100
+@@ -15,6 +15,7 @@
+ 
+ #include "Rectangle.h"
+ 
++#include <string>
+ #include <functional>
+ #include <list>
+ 

From 45036753eee62396237af2a27fce48d7f1aa9273 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Sun, 17 Jan 2021 17:52:45 +0700
Subject: [PATCH 0010/3482] fcitx-libpinyin: rebuilt for libpinyin 2.6.0

---
 .../patches/libpinyin-2.6.0.patch             | 10 +++++++
 srcpkgs/fcitx-libpinyin/template              | 27 +++++++++----------
 2 files changed, 22 insertions(+), 15 deletions(-)
 create mode 100644 srcpkgs/fcitx-libpinyin/patches/libpinyin-2.6.0.patch

diff --git a/srcpkgs/fcitx-libpinyin/patches/libpinyin-2.6.0.patch b/srcpkgs/fcitx-libpinyin/patches/libpinyin-2.6.0.patch
new file mode 100644
index 000000000000..163367025497
--- /dev/null
+++ b/srcpkgs/fcitx-libpinyin/patches/libpinyin-2.6.0.patch
@@ -0,0 +1,10 @@
+--- data/table.conf.orig	2021-01-17 17:32:50.977868321 +0700
++++ data/table.conf	2021-01-17 17:34:32.055849637 +0700
+@@ -3,6 +3,7 @@
+ lambda parameter:0.347121
+ 
+ source table format:pinyin
++database format:BerkeleyDB
+ 
+ default RESERVED NULL NULL NULL NOT_USED
+ default GB_DICTIONARY gb_char.table gb_char.bin gb_char.dbin SYSTEM_FILE
diff --git a/srcpkgs/fcitx-libpinyin/template b/srcpkgs/fcitx-libpinyin/template
index 50e3afa22c8f..8372dbff322f 100644
--- a/srcpkgs/fcitx-libpinyin/template
+++ b/srcpkgs/fcitx-libpinyin/template
@@ -1,9 +1,10 @@
 # Template file for 'fcitx-libpinyin'
 pkgname=fcitx-libpinyin
 version=0.5.3
-revision=1
+revision=2
 build_style=cmake
-hostmakedepends="pkg-config gobject-introspection fcitx"
+configure_args="-DENABLE_QT=OFF"
+hostmakedepends="pkg-config gobject-introspection fcitx libpinyin"
 makedepends="libpinyin-devel fcitx-devel"
 depends="fcitx"
 short_desc="Fcitx wrapper for libpinyin"
@@ -13,22 +14,18 @@ homepage="https://github.com/fcitx/fcitx-libpinyin"
 distfiles="https://download.fcitx-im.org/$pkgname/$pkgname-${version}_dict.tar.xz"
 checksum=fccd408b9fad8becebf7f736e3309e775d045d6383742892385b69be91f89b4c
 
-if [ "$XBPS_WORDSIZE" = "$XBPS_TARGET_WORDSIZE" ] &&
-	[ "$XBPS_TARGET_ENDIAN" = "le" ]
+if [ "$XBPS_WORDSIZE$XBPS_TARGET_ENDIAN" = "${XBPS_TARGET_WORDSIZE}le" ]
 then
-	configure_args="-DENABLE_QT=ON"
+	configure_args+=" -DENABLE_QT=ON"
 	hostmakedepends+=" qt5-devel"
 	makedepends+=" libfcitx-qt5-devel qt5-webengine-devel
 	 qt5-declarative-devel qt5-webchannel-devel qt5-location-devel"
-else
-	configure_args="-DENABLE_QT=OFF"
-	subpackages=" "
-fi
 
-fcitx-libpinyin-qt5_package() {
-	short_desc+=" - Qt5 IM module"
-	depends="fcitx-libpinyin-${version}_${revision}"
-	pkg_install() {
-		vmove usr/lib/fcitx/qt
+	fcitx-libpinyin-qt5_package() {
+		short_desc+=" - Qt5 IM module"
+		depends="fcitx-libpinyin-${version}_${revision}"
+		pkg_install() {
+			vmove usr/lib/fcitx/qt
+		}
 	}
-}
+fi

From 3d0f4d8ef75f1880aa66d13c40f78aed79469328 Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Sun, 17 Jan 2021 16:25:51 +0100
Subject: [PATCH 0011/3482] python3-pipx: update to 0.16.0.0.

---
 srcpkgs/python3-pipx/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/python3-pipx/template b/srcpkgs/python3-pipx/template
index b013b164d2ba..6ae1acdb9add 100644
--- a/srcpkgs/python3-pipx/template
+++ b/srcpkgs/python3-pipx/template
@@ -1,6 +1,6 @@
 # Template file for 'python3-pipx'
 pkgname=python3-pipx
-version=0.15.6.0
+version=0.16.0.0
 revision=1
 wrksrc="pipx-${version}"
 build_style=python3-module
@@ -11,7 +11,7 @@ maintainer="Leah Neukirchen <leah@vuxu.org>"
 license="MIT"
 homepage="https://pipxproject.github.io/pipx/"
 distfiles="${PYPI_SITE}/p/pipx/pipx-${version}.tar.gz"
-checksum=0d20e295a236b60e5601cb4e3d0c4fad202b9027ca1b2b8c88b322e66bf42b1f
+checksum=ec9d63753f34eb2dde5597ecdfe23df61749104485eead42937abec4dc4f4598
 
 post_install() {
 	vlicense LICENSE

From 11149408134f5d3684c7ba964177aaa177337f4f Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Sun, 17 Jan 2021 16:29:26 +0100
Subject: [PATCH 0012/3482] linux5.10: update to 5.10.8.

---
 srcpkgs/linux5.10/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/linux5.10/template b/srcpkgs/linux5.10/template
index 1bad20376bd3..7c97b77eec96 100644
--- a/srcpkgs/linux5.10/template
+++ b/srcpkgs/linux5.10/template
@@ -1,6 +1,6 @@
 # Template file for 'linux5.10'
 pkgname=linux5.10
-version=5.10.7
+version=5.10.8
 revision=1
 wrksrc="linux-${version}"
 short_desc="Linux kernel and modules (${version%.*} series)"
@@ -8,7 +8,7 @@ maintainer="Leah Neukirchen <leah@vuxu.org>"
 license="GPL-2.0-only"
 homepage="https://www.kernel.org"
 distfiles="https://cdn.kernel.org/pub/linux/kernel/v5.x/linux-${version}.tar.xz"
-checksum=4cbf6e09f90f2ae7160432c884d5a2aeb9d33a07ca7f50eb7d80f427706ffabe
+checksum=5cfc829425165d699059a398f5c24cad6e40e8899f2076ecd301c3d551e503ed
 python_version=3
 patch_args="-Np1"
 

From e12bdf57430cd5afbded761ed0cdff77ba37f9ff Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Sun, 17 Jan 2021 16:29:29 +0100
Subject: [PATCH 0013/3482] linux: update to 5.10.

---
 srcpkgs/linux/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/linux/template b/srcpkgs/linux/template
index 8aac3eec5272..4c21d6561c37 100644
--- a/srcpkgs/linux/template
+++ b/srcpkgs/linux/template
@@ -1,7 +1,7 @@
 # Template file for 'linux'
 pkgname=linux
-version=5.9
-revision=2
+version=5.10
+revision=1
 build_style=meta
 short_desc="Linux kernel meta package"
 maintainer="Leah Neukirchen <leah@vuxu.org>"

From 45418558f2fe44c16e9350f9f02e4bda0a1db85d Mon Sep 17 00:00:00 2001
From: Wayne Van Son <waynevanson@gmail.com>
Date: Sat, 16 Jan 2021 17:12:06 +0000
Subject: [PATCH 0014/3482] New package: haskell-language-server-0.8.0

---
 srcpkgs/haskell-language-server/template | 28 ++++++++++++++++++++++++
 1 file changed, 28 insertions(+)
 create mode 100644 srcpkgs/haskell-language-server/template

diff --git a/srcpkgs/haskell-language-server/template b/srcpkgs/haskell-language-server/template
new file mode 100644
index 000000000000..db8d132b1ea1
--- /dev/null
+++ b/srcpkgs/haskell-language-server/template
@@ -0,0 +1,28 @@
+# Template file for 'haskell-language-server'
+pkgname=haskell-language-server
+version=0.8.0
+revision=1
+archs="x86_64"
+build_style="haskell-stack"
+make_build_args="--stack-yaml stack-8.8.4.yaml"
+makedepends="ncurses-libtinfo-devel icu-devel zlib-devel"
+short_desc="Haskell Language Server: Integration of ghcide and haskell-ide-engine"
+maintainer="Wayne Van Son <waynevanson@gmail.com>"
+license="Apache-2.0"
+homepage="https://github.com/haskell/haskell-language-server"
+distfiles="https://github.com/haskell/haskell-language-server/archive/${version}.tar.gz"
+checksum="5ff053f0f4bb26b867fdc0b4071ba25c47eaa6febc9a4ef5b70a5a31c9433671"
+nopie_files="
+/usr/bin/haskell-language-server
+/usr/bin/haskell-language-server-wrapper
+/usr/bin/ghcide-bench
+/usr/bin/ghcide
+/usr/bin/ghcide-test-preprocessor
+"
+
+pre_build() {
+	# fixes /usr/bin/ld: cannot find -lncursesw
+	if [ "$XBPS_TARGET_MACHINE" != "x86_64" ] && [ -f "/lib/libncursesw.so" ]; then
+		ln -sf /lib/libncursesw.so.6.2 /lib/libncursesw.so
+	fi
+}

From 186d2261e8d15ab7d28ca22d3ed2e5b73f0ad85c Mon Sep 17 00:00:00 2001
From: Olaf Mersmann <olafm@p-value.net>
Date: Sat, 9 Jan 2021 23:11:42 +0100
Subject: [PATCH 0015/3482] python3-numpy: Use OpenBLAS on supported platforms.

Closes: #27797 [via git-merge-pr]
---
 srcpkgs/python3-numpy/template | 33 +++++++++++++++++++++++++++++++--
 1 file changed, 31 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/python3-numpy/template b/srcpkgs/python3-numpy/template
index 619040f2892f..c4e97ae9172d 100644
--- a/srcpkgs/python3-numpy/template
+++ b/srcpkgs/python3-numpy/template
@@ -1,11 +1,12 @@
 # Template file for 'python3-numpy'
 pkgname=python3-numpy
 version=1.19.5
-revision=1
+revision=2
 wrksrc="numpy-${version}"
 build_style=python3-module
 hostmakedepends="python3-setuptools python3-Cython gcc-fortran"
-makedepends="python3-devel lapack-devel cblas-devel"
+makedepends="python3-devel
+ $(vopt_if openblas 'openblas-devel' 'lapack-devel cblas-devel')"
 depends="python3-setuptools"
 short_desc="Fast and sophisticated array facility to Python3"
 maintainer="bra1nwave <bra1nwave@protonmail.com>"
@@ -15,6 +16,17 @@ distfiles="https://github.com/numpy/numpy/archive/v${version}.tar.gz"
 checksum=43fe3bcdf27a2eb27196a1d140385aeece71c8b1a6eda18d2c6365239e50c60f
 alternatives="numpy:f2py:/usr/bin/f2py3"
 
+build_options="openblas"
+desc_option_openblas="Enable support for openblas accelerated linear algebra"
+
+case "$XBPS_TARGET_MACHINE" in
+	x86_64*|i686*|aarch64*|armv[67]*|ppc64*)
+		# Prefer accelerated routines where available
+		build_options_default="openblas"
+		;;
+	*) ;;
+esac
+
 post_patch() {
 	case "${XBPS_TARGET_MACHINE}" in
 		armv5tel-musl)
@@ -22,10 +34,27 @@ post_patch() {
 			patch -Np0 -i "${FILESDIR}/fenv-constants.patch"
 			;;
 	esac
+
+	if [ "$XBPS_TARGET_LIBC" = musl ] ; then
+		vsed -i 's|"backtrace",||' numpy/core/setup_common.py
+	fi
 }
 
 pre_build() {
+	# Build numpy in parallel
 	make_build_args+=" ${makejobs}"
+
+	# Find the right linear algebra subroutines on the target arch
+	: > site.cfg
+	for _blaslib in $(vopt_if openblas openblas "lapack blas"); do
+		cat >> site.cfg <<-EOF
+		[$_blaslib]
+		libraries = ${_blaslib}
+		include_dirs = ${XBPS_CROSS_BASE}/usr/include
+		library_dirs = ${XBPS_CROSS_BASE}/usr/lib
+		runtime_library_dirs = ${XBPS_CROSS_BASE}/usr/lib
+		EOF
+	done
 }
 
 do_check() {

From fdbec388e882f7be45bc6db689f428d4e6a4e509 Mon Sep 17 00:00:00 2001
From: UsernameRandomlyGenerated <coredavid@tutanota.com>
Date: Sun, 17 Jan 2021 11:13:17 +0100
Subject: [PATCH 0016/3482] cmus: update to 2.9.0

Closes: #27975 [via git-merge-pr]
---
 .../cmus/patches/fix-ub-narrowing-cast.patch  | 132 ------------------
 srcpkgs/cmus/template                         |   6 +-
 2 files changed, 3 insertions(+), 135 deletions(-)
 delete mode 100644 srcpkgs/cmus/patches/fix-ub-narrowing-cast.patch

diff --git a/srcpkgs/cmus/patches/fix-ub-narrowing-cast.patch b/srcpkgs/cmus/patches/fix-ub-narrowing-cast.patch
deleted file mode 100644
index a3dfe8039d42..000000000000
--- a/srcpkgs/cmus/patches/fix-ub-narrowing-cast.patch
+++ /dev/null
@@ -1,132 +0,0 @@
-This is technically undefined behavior and may result in bad
-codegen in other cases as well. @q66
-
-https://github.com/cmus/cmus/pull/941
-
-From 55cbb02c414fb5c41373e022974fc417e493a5ab Mon Sep 17 00:00:00 2001
-From: Chris Grahn <grahn@posteo.net>
-Date: Sun, 17 Nov 2019 23:42:16 -0600
-Subject: [PATCH] Fix bug on ppc64 caused by narrowing cast
-
-diff --git a/format_print.c b/format_print.c
-index 0fee984..c7c0ef7 100644
---- format_print.c
-+++ format_print.c
-@@ -216,7 +216,8 @@ static void print_str(const char *src)
- 
- 		}
- 	} else {
--		int s = 0, d = 0;
-+		int s = 0;
-+		size_t d = 0;
- 		uchar u;
- 
- 		while (1) {
-@@ -471,7 +472,7 @@ static void format_parse(int str_width, const char *format, const struct format_
- 		u = u_get_char(format, &s);
- 		if (u != '%') {
- 			gbuf_grow(str, 4);
--			u_set_char(str->buffer, (int *)&str->len, u);
-+			u_set_char(str->buffer, &str->len, u);
- 			(*len) += u_char_width(u);
- 			continue;
- 		}
-@@ -594,7 +595,7 @@ static void format_write(char *buf, int str_width)
- 		strcpy(buf + pos + ws_len, r_str.buffer);
- 	} else {
- 		int l_space = str_width - str_len.rlen;
--		int pos = 0;
-+		size_t pos = 0;
- 		int idx = 0;
- 
- 		if (l_space > 0)
-diff --git a/id3.c b/id3.c
-index d505ba9..d5947b9 100644
---- id3.c
-+++ id3.c
-@@ -287,10 +287,10 @@ static int utf16_is_special(uchar uch)
- 	return utf16_is_hsurrogate(uch) || utf16_is_lsurrogate(uch) || utf16_is_bom(uch);
- }
- 
--static char *utf16_to_utf8(const unsigned char *buf, int buf_size)
-+static char *utf16_to_utf8(const unsigned char *buf, size_t buf_size)
- {
- 	char *out;
--	int i, idx;
-+	size_t i, idx;
- 	int little_endian = 0;
- 
- 	if (buf_size < 2)
-diff --git a/uchar.c b/uchar.c
-index 7b8691a..36509d7 100644
---- uchar.c
-+++ uchar.c
-@@ -428,7 +428,7 @@ void u_set_char_raw(char *str, int *idx, uchar uch)
-  * Printing functions, these lose information
-  */
- 
--void u_set_char(char *str, int *idx, uchar uch)
-+void u_set_char(char *str, size_t *idx, uchar uch)
- {
- 	int i = *idx;
- 
-@@ -476,10 +476,11 @@ invalid:
- 	}
- }
- 
--int u_copy_chars(char *dst, const char *src, int *width)
-+size_t u_copy_chars(char *dst, const char *src, int *width)
- {
- 	int w = *width;
--	int si = 0, di = 0;
-+	int si = 0;
-+	size_t di = 0;
- 	int cw;
- 	uchar u;
- 
-diff --git a/uchar.h b/uchar.h
-index 237cd55..8e03162 100644
---- uchar.h
-+++ uchar.h
-@@ -137,7 +137,7 @@ uchar u_get_char(const char *str, int *idx);
-  * @uch  unicode character
-  */
- void u_set_char_raw(char *str, int *idx, uchar uch);
--void u_set_char(char *str, int *idx, uchar uch);
-+void u_set_char(char *str, size_t *idx, uchar uch);
- 
- /*
-  * @dst    destination buffer
-@@ -150,7 +150,7 @@ void u_set_char(char *str, int *idx, uchar uch);
-  *
-  * Returns number of _bytes_ copied.
-  */
--int u_copy_chars(char *dst, const char *src, int *width);
-+size_t u_copy_chars(char *dst, const char *src, int *width);
- 
- /*
-  * @dst    destination buffer
-diff --git a/ui_curses.c b/ui_curses.c
-index 564b205..9621d94 100644
---- ui_curses.c
-+++ ui_curses.c
-@@ -467,7 +467,8 @@ static void dump_print_buffer(int row, int col)
-  */
- static int format_str(char *buf, const char *str, int width)
- {
--	int s = 0, d = 0, ellipsis_pos = 0, cut_double_width = 0;
-+	int s = 0, ellipsis_pos = 0, cut_double_width = 0;
-+	size_t d = 0;
- 
- 	while (1) {
- 		uchar u;
-@@ -1237,7 +1238,8 @@ static void dump_buffer(const char *buffer)
- static void do_update_commandline(void)
- {
- 	char *str;
--	int w, idx;
-+	int w;
-+	size_t idx;
- 	char ch;
- 
- 	move(LINES - 1, 0);
diff --git a/srcpkgs/cmus/template b/srcpkgs/cmus/template
index 9f6a1d9a6ee8..22052fc3d5d9 100644
--- a/srcpkgs/cmus/template
+++ b/srcpkgs/cmus/template
@@ -1,7 +1,7 @@
 # Template file for 'cmus'
 pkgname=cmus
-version=2.8.0
-revision=4
+version=2.9.0
+revision=1
 build_style=configure
 configure_args="prefix=/usr LD=$CC"
 hostmakedepends="pkg-config"
@@ -15,7 +15,7 @@ maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://cmus.github.io"
 distfiles="https://github.com/cmus/cmus/archive/v${version}.tar.gz"
-checksum=756ce2c6241b2104dc19097488225de559ac1802a175be0233cfb6fbc02f3bd2
+checksum=e7ea7f5ec52b991cf378a9caf19e479be16a165a5b26adca058de711e72ad2a0
 build_options="elogind"
 build_options_default="elogind"
 desc_option_elogind="Support MPRIS interface via elogind"

From 10825dde09d969e194c08479f3ea48bf4122fc6f Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C3=89rico=20Rolim?= <erico.erc@gmail.com>
Date: Thu, 14 Jan 2021 03:43:50 -0300
Subject: [PATCH 0017/3482] New package: can-utils-2020.12.0.

---
 srcpkgs/can-utils/template | 11 +++++++++++
 1 file changed, 11 insertions(+)
 create mode 100644 srcpkgs/can-utils/template

diff --git a/srcpkgs/can-utils/template b/srcpkgs/can-utils/template
new file mode 100644
index 000000000000..de92b7fe919f
--- /dev/null
+++ b/srcpkgs/can-utils/template
@@ -0,0 +1,11 @@
+# Template file for 'can-utils'
+pkgname=can-utils
+version=2020.12.0
+revision=1
+build_style=gnu-makefile
+short_desc="Linux-CAN / SocketCAN user space applications "
+maintainer="Érico Nogueira <ericonr@disroot.org>"
+license="GPL-2.0-only"
+homepage="https://github.com/linux-can/can-utils"
+distfiles="${homepage}/archive/v${version}.tar.gz"
+checksum=c5c22a00ce2ea7578d7617ac0affef8f47a349be58e708780d703b979f324a2b

From 0e05ee88cbb2adc1fb24e9beb4141184e8f69b62 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C3=89rico=20Rolim?= <erico.erc@gmail.com>
Date: Fri, 15 Jan 2021 20:12:33 -0300
Subject: [PATCH 0018/3482] sudo: update to 1.9.5p1, set permissions during
 do_install.

- fixes a bunch of CVEs.

- the chmod 4111 in INSTALL changed sudo from 4755 to 4111. It was
always suid, it just stopped being world readable for some reason (with
a window of time where it could still be read, since INSTALL isn't run
immediately after unpacking). Furthermore, chmod'ing sudoedit doesn't
change anything in the final package, since it's a symlink to sudo.

- clean up outdated patches.
---
 srcpkgs/sudo/INSTALL                          |  1 -
 ...en-configured-using-without-sendmail.patch | 48 -------------------
 srcpkgs/sudo/patches/fix-musl-test.patch      | 15 ------
 srcpkgs/sudo/patches/musl.patch               | 13 -----
 srcpkgs/sudo/template                         |  4 +-
 5 files changed, 2 insertions(+), 79 deletions(-)
 delete mode 100644 srcpkgs/sudo/patches/0001-Fix-build-when-configured-using-without-sendmail.patch
 delete mode 100644 srcpkgs/sudo/patches/fix-musl-test.patch
 delete mode 100644 srcpkgs/sudo/patches/musl.patch

diff --git a/srcpkgs/sudo/INSTALL b/srcpkgs/sudo/INSTALL
index d7162122f5cf..6150aed7d14b 100644
--- a/srcpkgs/sudo/INSTALL
+++ b/srcpkgs/sudo/INSTALL
@@ -7,7 +7,6 @@ post)
 		echo "Setting up permissions to /etc/sudoers..."
 		chmod 0440 etc/sudoers
 	fi
-	chmod 4111 usr/bin/sudo usr/bin/sudoedit
 	[ ! -d etc/sudoers.d ] && install -d etc/sudoers.d
 	[ ! -d var/db/sudo ] && install -dm750 var/db/sudo
 	;;
diff --git a/srcpkgs/sudo/patches/0001-Fix-build-when-configured-using-without-sendmail.patch b/srcpkgs/sudo/patches/0001-Fix-build-when-configured-using-without-sendmail.patch
deleted file mode 100644
index bcc80136b312..000000000000
--- a/srcpkgs/sudo/patches/0001-Fix-build-when-configured-using-without-sendmail.patch
+++ /dev/null
@@ -1,48 +0,0 @@
-From e22817e3abfee6fee779ab0b2d312d48323abb56 Mon Sep 17 00:00:00 2001
-From: "Todd C. Miller" <Todd.Miller@sudo.ws>
-Date: Mon, 30 Nov 2020 13:18:12 -0700
-Subject: [PATCH] Fix build when configured using --without-sendmail Bug #947
-
----
- lib/eventlog/eventlog.c | 8 +++++++-
- 1 file changed, 7 insertions(+), 1 deletion(-)
-
-diff --git lib/eventlog/eventlog.c lib/eventlog/eventlog.c
-index 8b190b7ce..ae97fdea9 100644
---- lib/eventlog/eventlog.c
-+++ lib/eventlog/eventlog.c
-@@ -78,7 +78,7 @@
- static FILE *eventlog_stub_open_log(int type, const char *logfile);
- static void eventlog_stub_close_log(int type, FILE *fp);
- 
--/* Eventlog config settings */
-+/* Eventlog config settings (default values). */
- static struct eventlog_config evl_conf = {
-     EVLOG_NONE,			/* type */
-     EVLOG_SUDO,			/* format */
-@@ -91,7 +91,11 @@ static struct eventlog_config evl_conf = {
-     false,			/* omit_hostname */
-     _PATH_SUDO_LOGFILE,		/* logpath */
-     "%h %e %T",			/* time_fmt */
-+#ifdef _PATH_SUDO_SENDMAIL
-     _PATH_SUDO_SENDMAIL,	/* mailerpath */
-+#else
-+    NULL,			/* mailerpath (disabled) */
-+#endif
-     "-t",			/* mailerflags */
-     NULL,			/* mailfrom */
-     MAILTO,			/* mailto */
-@@ -1436,8 +1440,10 @@ eventlog_setconf(struct eventlog_config *conf)
- 	evl_conf.logpath = _PATH_SUDO_LOGFILE;
-     if (evl_conf.time_fmt == NULL)
- 	evl_conf.time_fmt = "%h %e %T";
-+#ifdef _PATH_SUDO_SENDMAIL
-     if (evl_conf.mailerpath == NULL)
- 	evl_conf.mailerpath = _PATH_SUDO_SENDMAIL;
-+#endif
-     if (evl_conf.mailerflags == NULL)
- 	evl_conf.mailerflags = "-t";
-     if (evl_conf.mailto == NULL)
--- 
-2.29.2
-
diff --git a/srcpkgs/sudo/patches/fix-musl-test.patch b/srcpkgs/sudo/patches/fix-musl-test.patch
deleted file mode 100644
index cfd14e211345..000000000000
--- a/srcpkgs/sudo/patches/fix-musl-test.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-sys/stat.h is required for mode_t
-
-Fixes
-error: unknown type name 'mode_t'
-
---- plugins/sudoers/regress/env_match/check_env_pattern.c
-+++ plugins/sudoers/regress/env_match/check_env_pattern.c
-@@ -17,6 +17,7 @@
- #include <config.h>
- 
- #include <stdio.h>
-+#include <sys/stat.h>
- #include <stdlib.h>
- #ifdef HAVE_STRING_H
- # include <string.h>
diff --git a/srcpkgs/sudo/patches/musl.patch b/srcpkgs/sudo/patches/musl.patch
deleted file mode 100644
index c48d84522e6e..000000000000
--- a/srcpkgs/sudo/patches/musl.patch
+++ /dev/null
@@ -1,13 +0,0 @@
---- include/sudo_util.h.orig	2015-07-17 07:49:35.184634311 +0200
-+++ include/sudo_util.h	2015-07-17 07:50:05.018046508 +0200
-@@ -23,6 +23,10 @@
- # include "compat/stdbool.h"
- #endif /* HAVE_STDBOOL_H */
- 
-+#ifdef HAVE_SYS_TYPES_H
-+# include <sys/types.h>	/* id_t */
-+#endif
-+
- /*
-  * Macros for operating on struct timeval.
-  */
diff --git a/srcpkgs/sudo/template b/srcpkgs/sudo/template
index d1286b8727bc..54b3a5a2f65a 100644
--- a/srcpkgs/sudo/template
+++ b/srcpkgs/sudo/template
@@ -1,6 +1,6 @@
 # Template file for 'sudo'
 pkgname=sudo
-version=1.9.4
+version=1.9.5p1
 revision=1
 build_style=gnu-configure
 configure_args="--with-ignore-dot --with-insults=disabled --with-all-insults --with-env-editor
@@ -15,7 +15,7 @@ license="ISC"
 homepage="https://www.sudo.ws/"
 changelog="https://www.sudo.ws/repos/sudo/raw-file/tip/NEWS"
 distfiles="https://www.sudo.ws/dist/sudo-${version}.tar.gz"
-checksum=8b91bd2cc73af18a06a01406e38d154b837107be759f72e89cefeaa94e1103f0
+checksum=4dddf37c22653defada299e5681e0daef54bb6f5fc950f63997bb8eb966b7882
 conf_files="/etc/pam.d/sudo /etc/sudoers"
 lib32disabled=yes
 

From e49be9fb2d3b08128db3d93a96ef69331f15ba31 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C3=89rico=20Rolim?= <erico.erc@gmail.com>
Date: Fri, 15 Jan 2021 19:44:36 -0300
Subject: [PATCH 0019/3482] opendoas: set permissions during do_install.

- setting permissions in a INSTALL script makes the program unusable
between it being unpacked and the INSTALL script actually being run; for
users with other long running post-install steps, e.g. DKMS modules,
this can be a long time where an administrative tool can't be used.

- furthermore, any interruption of the post-install steps or a power
failure will have a much higher probability of leaving the user with a
non suid executable than if it had been set at install time.

- making the binary permissions 4111 isn't necessary; the binary can be
retrieved in multiple manners, so this doesn't offer any protection (and
the binary would be "unprotected" anyway while INSTALL hasn't run yet).
opendoas's makefile can chmod the executable, so we just stop removing the
chmod line from its makefile.

- also xlintify.
---
 srcpkgs/opendoas/INSTALL  | 8 --------
 srcpkgs/opendoas/template | 8 +++-----
 2 files changed, 3 insertions(+), 13 deletions(-)
 delete mode 100644 srcpkgs/opendoas/INSTALL

diff --git a/srcpkgs/opendoas/INSTALL b/srcpkgs/opendoas/INSTALL
deleted file mode 100644
index 352dcde82cde..000000000000
--- a/srcpkgs/opendoas/INSTALL
+++ /dev/null
@@ -1,8 +0,0 @@
-#
-# This script sets up correct perms for usr/bin/doas.
-#
-case "${ACTION}" in
-post)
-	chmod 4111 usr/bin/doas
-	;;
-esac
diff --git a/srcpkgs/opendoas/template b/srcpkgs/opendoas/template
index f2084305d1e5..fb68b70ddebd 100644
--- a/srcpkgs/opendoas/template
+++ b/srcpkgs/opendoas/template
@@ -1,7 +1,7 @@
 # Template file for 'opendoas'
 pkgname=opendoas
 version=6.8
-revision=1
+revision=2
 wrksrc="OpenDoas-$version"
 build_style=configure
 configure_args="--prefix=/usr $(vopt_with 'pam') $(vopt_with 'timestamp')"
@@ -10,7 +10,7 @@ hostmakedepends="bison"
 makedepends="$(vopt_if 'pam' 'pam-devel')"
 short_desc="Portable OpenBSD doas to execute commands as another user"
 maintainer="Duncaen <duncaen@voidlinux.org>"
-license="ISC, BSD-3-clause"
+license="ISC, BSD-3-Clause"
 homepage="https://github.com/Duncaen/OpenDoas"
 distfiles="https://github.com/Duncaen/OpenDoas/archive/v${version}.tar.gz"
 checksum=c53edc59a576cfe8ec8737230e7d0398842a5a8c925e25065463ab632a7eaba9
@@ -19,12 +19,10 @@ build_options="pam timestamp"
 build_options_default="pam timestamp"
 desc_option_timestamp="enable persistent auth using timestamps"
 
-
 pre_configure() {
 	cp ${FILESDIR}/doas.pam pam.d__doas__linux
 	vsed -i GNUmakefile \
-		-e '/chown ${BINOWN}:${BINGRP}/d' \
-		-e '/chmod ${BINMODE}/d'
+		-e '/chown ${BINOWN}:${BINGRP}/d'
 }
 
 post_install() {

From 058e8402a9f583a38442672721d5bb09987ac3b0 Mon Sep 17 00:00:00 2001
From: UsernameRandomlyGenerated <coredavid@tutanota.com>
Date: Sat, 16 Jan 2021 11:30:51 +0100
Subject: [PATCH 0020/3482] viu: update to 1.3.0

---
 srcpkgs/viu/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/viu/template b/srcpkgs/viu/template
index 095675733224..71a2291d9a3d 100644
--- a/srcpkgs/viu/template
+++ b/srcpkgs/viu/template
@@ -1,6 +1,6 @@
 # Template file for 'viu'
 pkgname=viu
-version=1.2
+version=1.3.0
 revision=1
 build_style=cargo
 short_desc="CLI app to view images in the terminal"
@@ -8,7 +8,7 @@ maintainer="Jan Christian Grünhage <jan.christian@gruenhage.xyz>"
 license="MIT"
 homepage="https://github.com/atanunq/viu"
 distfiles="https://github.com/atanunq/viu/archive/v${version}.tar.gz"
-checksum=9c91941492289e01fffe15e881ca32b511b337b310bc6fc382126d92ebb51d70
+checksum=ee049c065945a528699799f18de4d82355d5b2f5509d2435b9f5332c8dd520c5
 
 post_install() {
 	vlicense LICENSE-MIT

From facae1547dbc72d8ba3195d7d41890322c5272d6 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 18 Jan 2021 07:24:40 +0700
Subject: [PATCH 0021/3482] lightdm-gtk3-greeter: update to 2.0.8.

---
 srcpkgs/lightdm-gtk3-greeter/template | 11 ++++++-----
 1 file changed, 6 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/lightdm-gtk3-greeter/template b/srcpkgs/lightdm-gtk3-greeter/template
index 0143b00d129a..8e8da8c6920f 100644
--- a/srcpkgs/lightdm-gtk3-greeter/template
+++ b/srcpkgs/lightdm-gtk3-greeter/template
@@ -1,18 +1,19 @@
 # Template file for 'lightdm-gtk3-greeter'
 pkgname=lightdm-gtk3-greeter
-version=2.0.7
+version=2.0.8
 revision=1
 wrksrc="${pkgname/3/}-${version}"
 build_style=gnu-configure
-configure_args="--disable-static"
-hostmakedepends="pkg-config intltool exo-devel"
+configure_args="--disable-static --disable-maintainer-mode"
+hostmakedepends="pkg-config intltool"
 makedepends="gtk+3-devel lightdm-devel libxklavier-devel"
 depends="lightdm hicolor-icon-theme"
 conf_files="/etc/lightdm/lightdm-gtk-greeter.conf"
 short_desc="Light Display Manager GTK+ Greeter (GTK+ 3.x)"
 maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-3.0-or-later"
-homepage="https://launchpad.net/lightdm-gtk-greeter"
+homepage="https://github.com/Xubuntu/lightdm-gtk-greeter"
 distfiles="${homepage}/${version%.*}/${version}/+download/${pkgname/3/}-${version}.tar.gz"
-checksum=bae293f21286e93113ee7965a3a8734bbee6b94f3c74d8723dcae13dda60fcbc
+distfiles="https://github.com/Xubuntu/lightdm-gtk-greeter/releases/download/lightdm-gtk-greeter-$version/lightdm-gtk-greeter-$version.tar.gz"
+checksum=befbb300c7b34ff21865fdbc881201f730fc7c560e9e01d17e899e9477150613
 conflicts="lightdm-gtk-greeter>=0"

From aa58a914beb4e76dbd164a3e98516feb116ebf85 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 18 Jan 2021 07:33:45 +0700
Subject: [PATCH 0022/3482] nemo: fix gir path

Also remove gnome-common
---
 srcpkgs/nemo/patches/fix-gir-path.patch | 11 +++++++++++
 srcpkgs/nemo/template                   |  9 +--------
 2 files changed, 12 insertions(+), 8 deletions(-)
 create mode 100644 srcpkgs/nemo/patches/fix-gir-path.patch

diff --git a/srcpkgs/nemo/patches/fix-gir-path.patch b/srcpkgs/nemo/patches/fix-gir-path.patch
new file mode 100644
index 000000000000..317b031af15f
--- /dev/null
+++ b/srcpkgs/nemo/patches/fix-gir-path.patch
@@ -0,0 +1,11 @@
+--- libnemo-extension/meson.build
++++ libnemo-extension/meson.build
+@@ -61,7 +61,7 @@
+   dependencies: nemo_extension_deps,
+ )
+ 
+-typelibdir = go_intr.get_pkgconfig_variable('typelibdir', define_variable: ['libdir', get_option('libdir')])
++typelibdir = go_intr.get_pkgconfig_variable('typelibdir')
+ 
+ gnome.generate_gir(nemo_extension_lib,
+   sources: nemo_extension_sources + nemo_extension_headers,
diff --git a/srcpkgs/nemo/template b/srcpkgs/nemo/template
index b01069a16318..ef869db4d31a 100644
--- a/srcpkgs/nemo/template
+++ b/srcpkgs/nemo/template
@@ -5,8 +5,7 @@ revision=1
 build_style=meson
 build_helper=gir
 pycompile_dirs="/usr/share/nemo/actions/myaction.py"
-hostmakedepends="gettext-devel glib-devel gnome-common intltool pkg-config
- gobject-introspection"
+hostmakedepends="gettext-devel glib-devel intltool pkg-config"
 makedepends="cinnamon-desktop-devel dconf-devel exempi-devel gvfs-devel
  libexif-devel libnotify-devel tracker-devel xapps-devel"
 depends="cinnamon-translations dconf gvfs"
@@ -30,12 +29,6 @@ pre_configure() {
 	sed -i 's/^Name\(.*\)=.*/Name\1=Nemo/' data/nemo.desktop.in
 }
 
-post_install() {
-	if [ -d "$DESTDIR"/lib/girepository-1.0 ]; then
-		mv ${DESTDIR}/lib/girepository-1.0 ${DESTDIR}/usr/lib/
-	fi
-}
-
 libnemo_package() {
 	short_desc+=" - runtime library"
 	pkg_install() {

From 6bb4e4faf90a2dabbbe8523306cfb3f303439cf6 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 18 Jan 2021 07:32:41 +0700
Subject: [PATCH 0023/3482] boomerang: include stdint.h for int8_t

---
 srcpkgs/boomerang/patches/include-stdint.patch | 11 +++++++++++
 1 file changed, 11 insertions(+)
 create mode 100644 srcpkgs/boomerang/patches/include-stdint.patch

diff --git a/srcpkgs/boomerang/patches/include-stdint.patch b/srcpkgs/boomerang/patches/include-stdint.patch
new file mode 100644
index 000000000000..025d00c5dea1
--- /dev/null
+++ b/srcpkgs/boomerang/patches/include-stdint.patch
@@ -0,0 +1,11 @@
+--- src/boomerang-plugins/codegen/c/ControlFlowAnalyzer.h
++++ src/boomerang-plugins/codegen/c/ControlFlowAnalyzer.h
+@@ -9,7 +9,7 @@
+ #pragma endregion License
+ #pragma once
+ 
+-
++#include <stdint.h>
+ #include <unordered_map>
+ #include <vector>
+ 

From b358a8c9b9c1df183ba4fdb2e85d61edace5b740 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 18 Jan 2021 07:52:49 +0700
Subject: [PATCH 0024/3482] lightdm-gtk3-greeter: remove old distfiles

---
 srcpkgs/lightdm-gtk3-greeter/template | 1 -
 1 file changed, 1 deletion(-)

diff --git a/srcpkgs/lightdm-gtk3-greeter/template b/srcpkgs/lightdm-gtk3-greeter/template
index 8e8da8c6920f..c514dfa5563a 100644
--- a/srcpkgs/lightdm-gtk3-greeter/template
+++ b/srcpkgs/lightdm-gtk3-greeter/template
@@ -13,7 +13,6 @@ short_desc="Light Display Manager GTK+ Greeter (GTK+ 3.x)"
 maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://github.com/Xubuntu/lightdm-gtk-greeter"
-distfiles="${homepage}/${version%.*}/${version}/+download/${pkgname/3/}-${version}.tar.gz"
 distfiles="https://github.com/Xubuntu/lightdm-gtk-greeter/releases/download/lightdm-gtk-greeter-$version/lightdm-gtk-greeter-$version.tar.gz"
 checksum=befbb300c7b34ff21865fdbc881201f730fc7c560e9e01d17e899e9477150613
 conflicts="lightdm-gtk-greeter>=0"

From 597174314788beeb318eaf97b9fea6ae19bcff97 Mon Sep 17 00:00:00 2001
From: Cameron Nemo <cnemo@tutanota.com>
Date: Sat, 16 Jan 2021 22:19:07 -0800
Subject: [PATCH 0025/3482] linux5.10: add PL330 support to arm64-dotconfig

This DMA driver is necessary on rk3399 and rk3328 boards
(and perhaps others).
---
 srcpkgs/linux5.10/files/arm64-dotconfig | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/linux5.10/files/arm64-dotconfig b/srcpkgs/linux5.10/files/arm64-dotconfig
index 75101a22dbd4..f0fcc43b536b 100644
--- a/srcpkgs/linux5.10/files/arm64-dotconfig
+++ b/srcpkgs/linux5.10/files/arm64-dotconfig
@@ -8564,7 +8564,7 @@ CONFIG_MXS_DMA=y
 CONFIG_MX3_IPU=y
 CONFIG_MX3_IPU_IRQS=4
 CONFIG_OWL_DMA=m
-# CONFIG_PL330_DMA is not set
+CONFIG_PL330_DMA=m
 CONFIG_PLX_DMA=m
 CONFIG_SPRD_DMA=m
 # CONFIG_TEGRA20_APB_DMA is not set

From fdfebfc81c7fdf39017cd5e11ceb67d247fc5742 Mon Sep 17 00:00:00 2001
From: m3tav3rse <mtvrs@tuta.io>
Date: Wed, 13 Jan 2021 14:19:21 +0100
Subject: [PATCH 0026/3482] geckodriver: update to 0.28.0.

---
 srcpkgs/geckodriver/template | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

diff --git a/srcpkgs/geckodriver/template b/srcpkgs/geckodriver/template
index 23d734ff0fcc..055a3454f82f 100644
--- a/srcpkgs/geckodriver/template
+++ b/srcpkgs/geckodriver/template
@@ -1,23 +1,23 @@
 # Template file for 'geckodriver'
 pkgname=geckodriver
-version=0.26.0
+version=0.28.0
 revision=1
-_hg_commit="e9783a644016aa9b317887076618425586730d73"
+_hg_commit="c00d2b6acd3fb1b197b25662fba0a96c11669b66"
 create_wrksrc=yes
 build_wrksrc=${pkgname}
 build_style=cargo
 short_desc="WebDriver for Firefox"
-maintainer="m3tav3rse <n6maa10816@tuta.io>"
+maintainer="m3tav3rse <mtvrs@tuta.io>"
 license="MPL-2.0"
 homepage="https://github.com/mozilla/geckodriver"
 distfiles="https://hg.mozilla.org/mozilla-central/archive/${_hg_commit}.zip/testing/geckodriver/>geckodriver.zip
  https://hg.mozilla.org/mozilla-central/archive/${_hg_commit}.zip/testing/webdriver/>webdriver.zip
  https://hg.mozilla.org/mozilla-central/archive/${_hg_commit}.zip/testing/mozbase/rust/>mozbase-rust.zip
  https://hg.mozilla.org/mozilla-central/raw-file/${_hg_commit}/Cargo.lock"
-checksum="c5854000621938de2aac0bdc853da62539e694adcba98b61851adcbb9ce54dd3
- d84d6b84d4b37bb4fadda639026eca63dc61dd289bbeb3961eef1257be49266b
- a838ae82753aaed38eff52bd2076e47a418858be39c7dc5d833070c6ee2f7beb
- 107aaf145d4840a389c2d4586660e95e3fa336a42bb9f94524f9a72c89c21d09"
+checksum="278b0f57b4659c82a22be260e754a38d0e61fc28cb76bf8a4b672020456c2f08
+ eddf228980cd00a357f549435e5225a7d291305583c1d5010b0930039f6ddfb7
+ 1049fa9f18ffc7bb03da0523d782c6f52f12bdee8b5ee3d705ee618a1e95011e
+ e2b6ba6af118d2fde12cdc05dfd0feca0d1d583f8bd083255dd48544fd416ca9"
 skip_extraction="Cargo.lock"
 
 post_extract() {

From 35cac24b71e98a83138a7447faedfcf5fab946b8 Mon Sep 17 00:00:00 2001
From: Piraty <piraty1@inbox.ru>
Date: Mon, 18 Jan 2021 10:16:38 +0100
Subject: [PATCH 0027/3482] geckodriver: fix concurrent builds

---
 srcpkgs/geckodriver/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/geckodriver/template b/srcpkgs/geckodriver/template
index 055a3454f82f..685bfc35cdbe 100644
--- a/srcpkgs/geckodriver/template
+++ b/srcpkgs/geckodriver/template
@@ -1,7 +1,7 @@
 # Template file for 'geckodriver'
 pkgname=geckodriver
 version=0.28.0
-revision=1
+revision=2
 _hg_commit="c00d2b6acd3fb1b197b25662fba0a96c11669b66"
 create_wrksrc=yes
 build_wrksrc=${pkgname}
@@ -23,7 +23,7 @@ skip_extraction="Cargo.lock"
 post_extract() {
 	mv ${wrksrc}/mozilla-central-${_hg_commit}/testing/* ${wrksrc}
 	rm -r ${wrksrc}/mozilla-central-${_hg_commit}
-	mv ${XBPS_SRCDISTDIR}/${pkgname}-${version}/Cargo.lock ${build_wrksrc}
+	cp ${XBPS_SRCDISTDIR}/${pkgname}-${version}/Cargo.lock ${build_wrksrc}
 }
 
 case $XBPS_TARGET_MACHINE in

From 6444245fcacf6cf20a13f963224faa1febee5e73 Mon Sep 17 00:00:00 2001
From: Piraty <piraty1@inbox.ru>
Date: Mon, 18 Jan 2021 10:32:57 +0100
Subject: [PATCH 0028/3482] fntsample: don't move distfile

---
 srcpkgs/fntsample/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/fntsample/template b/srcpkgs/fntsample/template
index 4c8488eed1dd..7abc88b2aa9f 100644
--- a/srcpkgs/fntsample/template
+++ b/srcpkgs/fntsample/template
@@ -3,6 +3,7 @@ pkgname=fntsample
 version=5.3
 revision=1
 build_style=cmake
+wrksrc="fntsample-release-${version}"
 configure_args="-DUNICODE_BLOCKS=../Blocks.txt"
 hostmakedepends="gettext pkg-config"
 makedepends="cairo-devel fontconfig-devel freetype-devel glib-devel pango-devel"
@@ -21,8 +22,7 @@ skip_extraction="Blocks.txt
  terms_of_use.html"
 
 post_extract() {
-	mv "${XBPS_BUILDDIR}/fntsample-release-${version}" "${wrksrc}"
-	mv "${XBPS_SRCDISTDIR}/fntsample-${version}/Blocks.txt" "${wrksrc}/"
+	cp "${XBPS_SRCDISTDIR}/fntsample-${version}/Blocks.txt" "${wrksrc}/"
 }
 
 post_install() {

From 9a31d0c8f4042a519ae63988b844e9cfdc8bf75f Mon Sep 17 00:00:00 2001
From: Piraty <piraty1@inbox.ru>
Date: Mon, 18 Jan 2021 10:43:04 +0100
Subject: [PATCH 0029/3482] stremio-shell: don't move distfiles

---
 srcpkgs/stremio-shell/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/stremio-shell/template b/srcpkgs/stremio-shell/template
index 88b2153da306..100543c5f4f4 100644
--- a/srcpkgs/stremio-shell/template
+++ b/srcpkgs/stremio-shell/template
@@ -53,6 +53,6 @@ post_install() {
 	echo "cd /usr/lib/stremio && exec node server.js" >> stremio-server
 	vbin stremio-server
 
-	mv ${XBPS_SRCDISTDIR}/${pkgname}-${version}/server.js ${DESTDIR}/usr/lib/stremio
-	mv ${XBPS_SRCDISTDIR}/${pkgname}-${version}/stremio.asar ${DESTDIR}/usr/lib/stremio
+	cp ${XBPS_SRCDISTDIR}/${pkgname}-${version}/server.js ${DESTDIR}/usr/lib/stremio
+	cp ${XBPS_SRCDISTDIR}/${pkgname}-${version}/stremio.asar ${DESTDIR}/usr/lib/stremio
 }

From 9c707db8a3ffbd12f94bfb59b261db55f67433e8 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 18 Jan 2021 07:18:51 +0700
Subject: [PATCH 0030/3482] libpinyin: enable libzhuyin

---
 srcpkgs/libpinyin/template | 17 ++++++++++++-----
 1 file changed, 12 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/libpinyin/template b/srcpkgs/libpinyin/template
index 363ee5f0fe27..7d141b6a086b 100644
--- a/srcpkgs/libpinyin/template
+++ b/srcpkgs/libpinyin/template
@@ -1,19 +1,26 @@
 # Template file for 'libpinyin'
 pkgname=libpinyin
 version=2.6.0
-revision=1
+revision=2
 build_style=gnu-configure
-hostmakedepends="intltool libtool pkg-config autoconf-archive autoconf automake
- wget gnome-common"
+configure_args="--enable-libzhuyin"
+hostmakedepends="intltool libtool pkg-config autoconf-archive autoconf automake"
 makedepends="db-devel libglib-devel"
 short_desc="Support library for PinYin and ZhuYin (Bopofomo)"
 maintainer="Ben Sung Hsu <pobetiger+github@gmail.com>"
 license="GPL-3.0-or-later"
 homepage="https://github.com/libpinyin/libpinyin"
 changelog="https://raw.githubusercontent.com/libpinyin/libpinyin/${version}/ChangeLog"
-distfiles="https://github.com/libpinyin/libpinyin/archive/${version}.tar.gz"
-checksum=2b52f617a99567a8ace478ee82ccc62d1761e3d1db2f1e05ba05b416708c35d2
+distfiles="https://github.com/libpinyin/libpinyin/archive/${version}.tar.gz
+ http://downloads.sourceforge.net/libpinyin/models/model19.text.tar.gz"
+checksum="2b52f617a99567a8ace478ee82ccc62d1761e3d1db2f1e05ba05b416708c35d2
+ 56422a4ee5966c2c809dd065692590ee8def934e52edbbe249b8488daaa1f50b"
 nocross="Requires data generators compiled against target system"
+skip_extraction="model19.text.tar.gz"
+
+post_extract() {
+	bsdtar -C data -xf $XBPS_SRCDISTDIR/$pkgname-$version/model19.text.tar.gz
+}
 
 pre_configure() {
 	NOCONFIGURE=1 ./autogen.sh

From 68ebeb045ac10151f8275505d335bad606361773 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 18 Jan 2021 07:56:04 +0700
Subject: [PATCH 0031/3482] cinnamon-control-center:
 hostmakedepends-=gnome-common

---
 srcpkgs/cinnamon-control-center/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/cinnamon-control-center/template b/srcpkgs/cinnamon-control-center/template
index 9da17ca74f32..d818e4223c4a 100644
--- a/srcpkgs/cinnamon-control-center/template
+++ b/srcpkgs/cinnamon-control-center/template
@@ -5,7 +5,7 @@ revision=3
 build_style=gnu-configure
 build_helper=gir
 configure_args="--disable-static --disable-update-mimedb --disable-systemd"
-hostmakedepends="autoconf-archive gettext-devel glib-devel gnome-common
+hostmakedepends="autoconf-archive gettext-devel glib-devel automake
  gobject-introspection intltool libtool pkg-config libxslt"
 makedepends="ModemManager-devel cinnamon-desktop-devel cinnamon-menus-devel
  cinnamon-settings-daemon-devel gnome-online-accounts-devel ibus-devel

From f0263666aa740bfb70a71417d6b5b1c531e4c068 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 18 Jan 2021 08:00:07 +0700
Subject: [PATCH 0032/3482] cinnamon-menus: hostmakedepends-=gnome-common

---
 srcpkgs/cinnamon-menus/template | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/srcpkgs/cinnamon-menus/template b/srcpkgs/cinnamon-menus/template
index 7b2451c7ee90..4611ddd3ca04 100644
--- a/srcpkgs/cinnamon-menus/template
+++ b/srcpkgs/cinnamon-menus/template
@@ -4,8 +4,7 @@ version=4.6.1
 revision=2
 build_style=meson
 build_helper=gir
-hostmakedepends="glib-devel gnome-common gobject-introspection intltool libtool
- pkg-config"
+hostmakedepends="glib-devel gobject-introspection intltool libtool pkg-config"
 makedepends="libglib-devel gobject-introspection"
 short_desc="Cinnamon menu specifications"
 maintainer="Orphaned <orphan@voidlinux.org>"

From 2757f0ebe7fb434be4bcf846f22ea4df55937b6e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 18 Jan 2021 08:07:26 +0700
Subject: [PATCH 0033/3482] cinnamon-screensaver: hostmakedepends-=gnome-common

---
 srcpkgs/cinnamon-screensaver/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/cinnamon-screensaver/template b/srcpkgs/cinnamon-screensaver/template
index 76df8da77bfc..e45409aae8a6 100644
--- a/srcpkgs/cinnamon-screensaver/template
+++ b/srcpkgs/cinnamon-screensaver/template
@@ -4,7 +4,7 @@ version=4.6.0
 revision=2
 build_style=meson
 build_helper=gir
-hostmakedepends="gettext-devel glib-devel gnome-common gobject-introspection
+hostmakedepends="gettext-devel glib-devel gobject-introspection
  intltool libtool pkg-config python3-devel"
 makedepends="cinnamon-desktop-devel dbus-glib-devel libXxf86misc-devel
  libgnomekbd-devel pam-devel python3-devel webkit2gtk-devel"

From f7cddbfa4beebc949f495ccc54715b7ac1de38f8 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 18 Jan 2021 08:14:50 +0700
Subject: [PATCH 0034/3482] cinnamon-settings-daemon:
 hostmakedepends-=gnome-common

---
 srcpkgs/cinnamon-settings-daemon/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/cinnamon-settings-daemon/template b/srcpkgs/cinnamon-settings-daemon/template
index 70f76130dd2a..a41b897347f7 100644
--- a/srcpkgs/cinnamon-settings-daemon/template
+++ b/srcpkgs/cinnamon-settings-daemon/template
@@ -5,7 +5,7 @@ revision=2
 build_style=gnu-configure
 build_helper=gir
 configure_args="--disable-static --disable-schemas-compile"
-hostmakedepends="dbus-glib-devel gettext-devel glib-devel gnome-common
+hostmakedepends="dbus-glib-devel gettext-devel glib-devel automake
  gobject-introspection intltool libtool pkg-config"
 makedepends="cinnamon-desktop-devel elogind-devel ibus-devel json-glib-devel
  libSM-devel libcanberra-devel libgnomekbd-devel libgudev-devel libnotify-devel

From 07c47668a029194a7f9bbf09f6e80998e3d55f20 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 18 Jan 2021 08:40:52 +0700
Subject: [PATCH 0035/3482] gnome-online-accounts:
 hostmakedepends-=gnome-common

---
 srcpkgs/gnome-online-accounts/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/gnome-online-accounts/template b/srcpkgs/gnome-online-accounts/template
index d44450e043f2..6c95c1530c3d 100644
--- a/srcpkgs/gnome-online-accounts/template
+++ b/srcpkgs/gnome-online-accounts/template
@@ -10,7 +10,7 @@ configure_args="$(vopt_enable gir introspection)
  --enable-facebook --disable-static --enable-exchange  --enable-imap-smtp
  --enable-owncloud --enable-windows-live --enable-pocket
  --enable-lastfm --enable-media-server"
-hostmakedepends="docbook-xsl gettext-devel glib-devel gnome-common
+hostmakedepends="docbook-xsl gettext-devel glib-devel
  libxslt pkg-config $(vopt_if gir vala)"
 makedepends="gcr-devel gtk+3-devel json-glib-devel libnotify-devel libsecret-devel
  libsoup-devel mit-krb5-devel rest-devel telepathy-glib-devel webkit2gtk-devel"

From 970ad4f3f4ff255ca06c4b0a8152787cd1c5e336 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 18 Jan 2021 18:41:09 +0700
Subject: [PATCH 0036/3482] refind: build with
 -fno-tree-loop-distribute-patterns

Fix build for gcc-10
---
 .../0001-Fix-GCC-10-compile-problem.patch     | 25 +++++++++++++++++++
 srcpkgs/refind/template                       |  2 +-
 2 files changed, 26 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/refind/patches/0001-Fix-GCC-10-compile-problem.patch

diff --git a/srcpkgs/refind/patches/0001-Fix-GCC-10-compile-problem.patch b/srcpkgs/refind/patches/0001-Fix-GCC-10-compile-problem.patch
new file mode 100644
index 000000000000..d93f719b78a0
--- /dev/null
+++ b/srcpkgs/refind/patches/0001-Fix-GCC-10-compile-problem.patch
@@ -0,0 +1,25 @@
+From e34a16301f425f273a67ed3abbc45840bc82d892 Mon Sep 17 00:00:00 2001
+From: srs5694 <srs5694@users.sourceforge.net>
+Date: Fri, 15 May 2020 12:34:14 -0400
+Subject: [PATCH] Fix GCC 10 compile problem
+
+---
+ Make.common | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git Make.common Make.common
+index 3f0b919..95a3a97 100644
+--- Make.common
++++ Make.common
+@@ -60,7 +60,7 @@ endif
+ #
+ 
+ # ...for both GNU-EFI and TianoCore....
+-OPTIMFLAGS      = -Os -fno-strict-aliasing
++OPTIMFLAGS      = -Os -fno-strict-aliasing -fno-tree-loop-distribute-patterns
+ CFLAGS          = $(OPTIMFLAGS) -fno-stack-protector -fshort-wchar -Wall
+ 
+ # ...for GNU-EFI....
+-- 
+2.30.0
+
diff --git a/srcpkgs/refind/template b/srcpkgs/refind/template
index d7f8f2fba1ca..85742b0385ab 100644
--- a/srcpkgs/refind/template
+++ b/srcpkgs/refind/template
@@ -1,7 +1,7 @@
 # Template file for 'refind'
 pkgname=refind
 version=0.12.0
-revision=2
+revision=3
 archs="x86_64* i686* aarch64*"
 makedepends="gnu-efi-libs"
 depends="bash dosfstools efibootmgr"

From beea74e3bd231b3741bafcac3dda044b2b267fc1 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Thu, 14 Jan 2021 20:46:35 +0700
Subject: [PATCH 0037/3482] reminiscence: remove package

- The last GPLv3 version was 0.2.1 or so (Debian has this version)
- Our current version doesn't have any license, only Copyright notice,
  let's not play the politic game.
---
 srcpkgs/reminiscence/template     | 24 ------------------------
 srcpkgs/removed-packages/template |  3 ++-
 2 files changed, 2 insertions(+), 25 deletions(-)
 delete mode 100644 srcpkgs/reminiscence/template

diff --git a/srcpkgs/reminiscence/template b/srcpkgs/reminiscence/template
deleted file mode 100644
index 33a2d85e8287..000000000000
--- a/srcpkgs/reminiscence/template
+++ /dev/null
@@ -1,24 +0,0 @@
-# Template file for 'reminiscence'
-pkgname=reminiscence
-version=0.4.6
-revision=1
-wrksrc="REminiscence-${version}"
-build_style=gnu-makefile
-make_use_env=yes
-makedepends="zlib-devel libmodplug-devel SDL2-devel"
-short_desc="Rewrite of the engine used in the game Flashback from Delphine Software"
-maintainer="Orphaned <orphan@voidlinux.org>"
-license="GPL-3"
-homepage="http://cyxdown.free.fr/reminiscence/"
-distfiles="http://cyxdown.free.fr/reminiscence/REminiscence-${version}.tar.bz2"
-checksum=a1738ca7df64cd34e75a0ada3110e70ed495260fda813bc9d8722b521fc6fee0
-
-pre_build() {
-	vsed -e 's,-DUSE_TREMOR,,' -i Makefile
-	vsed -e '/LIBS =/s/$(TREMOR_LIBS)//' -i Makefile
-}
-
-do_install() {
-	vbin rs ${pkgname}
-	vdoc README.txt
-}
diff --git a/srcpkgs/removed-packages/template b/srcpkgs/removed-packages/template
index bf072b83c9bf..3afdfe988051 100644
--- a/srcpkgs/removed-packages/template
+++ b/srcpkgs/removed-packages/template
@@ -1,7 +1,7 @@
 # Template file for 'removed-packages'
 pkgname=removed-packages
 version=0.1
-revision=10
+revision=11
 build_style=meta
 short_desc="Uninstalls packages removed from repository"
 maintainer="Piotr Wójcik <chocimier@tlen.pl>"
@@ -65,6 +65,7 @@ replaces="
  python-pytest-relaxed<=1.1.2_2
  qimageblitz<=0.0.6_4
  r2-bindings<=1.0.1_2
+ reminiscence<=0.4.6_1
  seriespl<=2.3.5_2
  simple-obfs<=0.0.5_2
  skypetab-ng<=20150201_3

From e5cd09ec87e86cc9aee63dace7af92438b8b49bb Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 18 Jan 2021 18:57:52 +0700
Subject: [PATCH 0038/3482] XyGrib: fix build with openjpeg 2.4

---
 srcpkgs/XyGrib/template | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/srcpkgs/XyGrib/template b/srcpkgs/XyGrib/template
index 203d0fc9f58c..e4aa3a2e0265 100644
--- a/srcpkgs/XyGrib/template
+++ b/srcpkgs/XyGrib/template
@@ -17,6 +17,11 @@ if [ "$CROSS_BUILD" ]; then
 	make_build_args="LINK=${XBPS_CROSS_TRIPLET}-c++"
 fi
 
+post_patch() {
+	vsed -i -e '\!/usr/include/openjpeg-2.3!i /usr/include/openjpeg-2.4' \
+		CMakeLists.txt
+}
+
 post_install() {
 	vbin ${FILESDIR}/XyGrib
 

From 99543601985e5bba37ab54effa9d9c7e5f1bfa37 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 18 Jan 2021 19:13:42 +0700
Subject: [PATCH 0039/3482] Terminal: fix build with gcc-10

---
 srcpkgs/Terminal/template | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/srcpkgs/Terminal/template b/srcpkgs/Terminal/template
index adef5edb6cc3..c52cbeb59d2a 100644
--- a/srcpkgs/Terminal/template
+++ b/srcpkgs/Terminal/template
@@ -4,7 +4,8 @@ version=0.9.9
 revision=1
 build_style=gnu-makefile
 make_use_env=yes
-hostmakedepends="gnustep-make gcc-objc"
+make_build_args="OBJCFLAGS=-fcommon messages=yes"
+hostmakedepends="gnustep-make gcc-objc which"
 makedepends="gnustep-base-devel gnustep-gui-devel"
 depends="gnustep-base gnustep-gui gnustep-back"
 short_desc="Terminal emulator for GNUstep"

From fbd095287695aef7ff81bd7121567fd8e77e52a5 Mon Sep 17 00:00:00 2001
From: Piraty <piraty1@inbox.ru>
Date: Sat, 26 Oct 2019 00:56:58 +0200
Subject: [PATCH 0040/3482] .github: add pull request template

---
 .github/pull_request_template.md | 28 ++++++++++++++++++++++++++++
 1 file changed, 28 insertions(+)
 create mode 100644 .github/pull_request_template.md

diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md
new file mode 100644
index 000000000000..212d2ef3f78e
--- /dev/null
+++ b/.github/pull_request_template.md
@@ -0,0 +1,28 @@
+<!-- Mark items with [x] where applicable -->
+
+#### General
+- [ ] This is a new package and it conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements)
+
+#### Have the results of the proposed changes been tested?
+- [ ] I use the packages affected by the proposed changes on a regular basis and confirm this PR works for me
+- [ ] I generally don't use the affected packages but briefly tested this PR
+
+<!--
+If GitHub CI cannot be used to validate the build result (for example, if the
+build is likely to take several hours), make sure to include "[ci skip]' in
+either the PR title or this description. When skipping CI, uncomment and complete
+the following section.
+Note: for builds that are likely to complete in less than 2 hours, it is not
+acceptable to skip CI.
+-->
+<!-- 
+#### Does it build and run successfully? 
+(Please choose at least one native build and, if supported, at least one cross build. More are better.)
+- [ ] I built this PR locally for my native architecture, (ARCH-LIBC)
+- [ ] I built this PR locally for these architectures (if supported. mark crossbuilds):
+  - [ ] aarch64-musl
+  - [ ] armv7l
+  - [ ] armv6l-musl
+
+[ci skip]
+-->

From c28e6520bad63ba1d866aeff06461c4067bdcdf7 Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Mon, 18 Jan 2021 10:33:23 +0100
Subject: [PATCH 0041/3482] nncp: update to 5.6.0.

---
 srcpkgs/nncp/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/nncp/template b/srcpkgs/nncp/template
index db039facdae9..3f7d0bedea0b 100644
--- a/srcpkgs/nncp/template
+++ b/srcpkgs/nncp/template
@@ -1,6 +1,6 @@
 # Template file for 'nncp'
 pkgname=nncp
-version=5.5.1
+version=5.6.0
 revision=1
 build_style=go
 go_import_path=cypherpunks.ru/nncp
@@ -9,7 +9,7 @@ maintainer="Leah Neukirchen <leah@vuxu.org>"
 license="GPL-3.0-only"
 homepage="http://www.nncpgo.org/"
 distfiles="http://www.nncpgo.org/download/${pkgname}-${version}.tar.xz"
-checksum=e7deed7ad3ba696cf64359c0dc0a93ad109950c56660d0285fd7bb57120c9cf7
+checksum=1dc83f05f14a3c3b95820046c60b170eb8c8936f142a5b9a1e943e6f4cefbde3
 
 do_build() {
 	make

From 89bbae679f8d062c0cff63b54f59063dd8cdbf13 Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Mon, 18 Jan 2021 10:34:11 +0100
Subject: [PATCH 0042/3482] python3-userpath: update to 1.4.2.

---
 srcpkgs/python3-userpath/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/python3-userpath/template b/srcpkgs/python3-userpath/template
index 67e62bb719fe..117866eb9b8b 100644
--- a/srcpkgs/python3-userpath/template
+++ b/srcpkgs/python3-userpath/template
@@ -1,7 +1,7 @@
 # Template file for 'python3-userpath'
 pkgname=python3-userpath
-version=1.4.1
-revision=2
+version=1.4.2
+revision=1
 wrksrc="userpath-${version}"
 build_style=python3-module
 pycompile_module="userpath"
@@ -12,7 +12,7 @@ maintainer="Leah Neukirchen <leah@vuxu.org>"
 license="MIT, Apache-2.0"
 homepage="https://github.com/ofek/userpath"
 distfiles="${PYPI_SITE}/u/userpath/userpath-${version}.tar.gz"
-checksum=211544ea02d8715fdc06f429cf66cd18c9877a31751d966d6de11b24faaed255
+checksum=dd4b5496e4ef2c1a3bbb103ffefa7738fa4ba15f23580918bb9f949dcd61a8a7
 
 post_install() {
 	vlicense LICENSE-MIT

From c474e2d3a95416c20b91547a5f4e93aa24715c78 Mon Sep 17 00:00:00 2001
From: Piraty <piraty1@inbox.ru>
Date: Mon, 18 Jan 2021 14:01:24 +0100
Subject: [PATCH 0043/3482] .github: add notice to delete the [ci skip] block

if the commented block is left in the PR text, CI won't run
---
 .github/pull_request_template.md | 8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)

diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md
index 212d2ef3f78e..1fdf9e94ea93 100644
--- a/.github/pull_request_template.md
+++ b/.github/pull_request_template.md
@@ -9,9 +9,9 @@
 
 <!--
 If GitHub CI cannot be used to validate the build result (for example, if the
-build is likely to take several hours), make sure to include "[ci skip]' in
-either the PR title or this description. When skipping CI, uncomment and complete
-the following section.
+build is likely to take several hours), make sure to
+[skip CI](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration).
+When skipping CI, uncomment and fill out the following section.
 Note: for builds that are likely to complete in less than 2 hours, it is not
 acceptable to skip CI.
 -->
@@ -23,6 +23,4 @@ acceptable to skip CI.
   - [ ] aarch64-musl
   - [ ] armv7l
   - [ ] armv6l-musl
-
-[ci skip]
 -->

From 326fbe95b0b6c4a65b8e1ae9e54233bb849eb15d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Thu, 14 Jan 2021 07:40:30 +0700
Subject: [PATCH 0044/3482] libfprint: update to 1.90.7.

---
 common/shlibs                |  2 +-
 srcpkgs/libfprint-udev-rules |  1 +
 srcpkgs/libfprint/template   | 29 ++++++++++++++++++-----------
 srcpkgs/libfprint/update     |  2 --
 4 files changed, 20 insertions(+), 14 deletions(-)
 create mode 120000 srcpkgs/libfprint-udev-rules
 delete mode 100644 srcpkgs/libfprint/update

diff --git a/common/shlibs b/common/shlibs
index 468fe3a63fea..c55d6c02ac8f 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -1571,7 +1571,7 @@ libtcmalloc.so.4 gperftools-2.1_1
 libaio.so.1 libaio-0.3.109_1
 libofx.so.7 libofx-0.9.11_1
 libsigsegv.so.2 libsigsegv-2.10_2
-libfprint.so.0 libfprint-0.5.1_1
+libfprint-2.so.2 libfprint-1.90.7_1
 libwx_baseu_xml-3.0.so.0 wxWidgets-common-3.0.4_1
 libwx_baseu-3.0.so.0 wxWidgets-common-3.0.4_1
 libwx_gtk2_adv-3.0.so.0 wxWidgets-3.0.0_1
diff --git a/srcpkgs/libfprint-udev-rules b/srcpkgs/libfprint-udev-rules
new file mode 120000
index 000000000000..739ca683efab
--- /dev/null
+++ b/srcpkgs/libfprint-udev-rules
@@ -0,0 +1 @@
+libfprint
\ No newline at end of file
diff --git a/srcpkgs/libfprint/template b/srcpkgs/libfprint/template
index ae22b871f3db..9f32d0bea086 100644
--- a/srcpkgs/libfprint/template
+++ b/srcpkgs/libfprint/template
@@ -1,24 +1,22 @@
 # Template file for 'libfprint'
 pkgname=libfprint
-version=1.0
+version=1.90.7
 revision=1
-wrksrc="libfprint-V_${version//./_}"
+wrksrc=libfprint-v$version
 build_style=meson
+build_helper=gir
 configure_args="-Dudev_rules=false -Dx11-examples=false -Dgtk-examples=false -Ddoc=false"
-hostmakedepends="pkg-config"
-makedepends="libusb-devel nss-devel glib-devel gdk-pixbuf-devel pixman-devel"
+hostmakedepends="pkg-config glib-devel"
+makedepends="libusb-devel nss-devel glib-devel gdk-pixbuf-devel pixman-devel
+ libgusb-devel libglib-devel"
+depends="libfprint-udev-rules>=${version}_${revision}"
 short_desc="Support for consumer fingerprint reader devices"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="LGPL-2.1-or-later"
 homepage="http://www.freedesktop.org/wiki/Software/fprint/"
 changelog="https://gitlab.freedesktop.org/libfprint/libfprint/raw/master/NEWS"
-distfiles="https://gitlab.freedesktop.org/libfprint/libfprint/-/archive/V_${version//./_}/libfprint-V_${version//./_}.tar.bz2"
-checksum=22777a1d202ef912395b94842ae6b531338c8d48a8a813616e846b1bc96c5ad9
-
-post_install() {
-	vmkdir usr/lib/udev/rules.d
-	vinstall $FILESDIR/60-fprint-autosuspend.rules 644 usr/lib/udev/rules.d
-}
+distfiles="https://gitlab.freedesktop.org/libfprint/libfprint/-/archive/v$version/libfprint-v$version.tar.bz2"
+checksum=d11acf183820812fd6a8cd808d58bbf197554bcc0f9119d4c873092ecd94ee29
 
 libfprint-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"
@@ -29,3 +27,12 @@ libfprint-devel_package() {
 		vmove "usr/lib/*.so"
 	}
 }
+
+libfprint-udev-rules_package() {
+	short_desc+=" - udev rules"
+	conflicts="libfprint<=1.0_1"
+	pkg_install() {
+		vmkdir usr/lib/udev/rules.d
+		vinstall $FILESDIR/60-fprint-autosuspend.rules 644 usr/lib/udev/rules.d
+	}
+}
diff --git a/srcpkgs/libfprint/update b/srcpkgs/libfprint/update
deleted file mode 100644
index 1f57940e9389..000000000000
--- a/srcpkgs/libfprint/update
+++ /dev/null
@@ -1,2 +0,0 @@
-pattern='/archive/[^/]+/\Q'"$pkgname"'\E-v?_\K[\d\._]+(?=\.tar\.gz")'
-ignore='*.99.*'

From 26e23d4f390887d5ddc9847ecdc0ed1661b9bc31 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Thu, 14 Jan 2021 07:41:57 +0700
Subject: [PATCH 0045/3482] New package: libfprint0-1.0

---
 common/shlibs                                 |  1 +
 srcpkgs/libfprint0-devel                      |  1 +
 .../patches/fix-stderr-redefinition.patch     | 12 +++++++
 srcpkgs/libfprint0/template                   | 33 +++++++++++++++++++
 srcpkgs/libfprint0/update                     |  2 ++
 5 files changed, 49 insertions(+)
 create mode 120000 srcpkgs/libfprint0-devel
 create mode 100644 srcpkgs/libfprint0/patches/fix-stderr-redefinition.patch
 create mode 100644 srcpkgs/libfprint0/template
 create mode 100644 srcpkgs/libfprint0/update

diff --git a/common/shlibs b/common/shlibs
index c55d6c02ac8f..04c50017e314 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -1571,6 +1571,7 @@ libtcmalloc.so.4 gperftools-2.1_1
 libaio.so.1 libaio-0.3.109_1
 libofx.so.7 libofx-0.9.11_1
 libsigsegv.so.2 libsigsegv-2.10_2
+libfprint.so.0 libfprint0-1.0_1
 libfprint-2.so.2 libfprint-1.90.7_1
 libwx_baseu_xml-3.0.so.0 wxWidgets-common-3.0.4_1
 libwx_baseu-3.0.so.0 wxWidgets-common-3.0.4_1
diff --git a/srcpkgs/libfprint0-devel b/srcpkgs/libfprint0-devel
new file mode 120000
index 000000000000..f5b92a78c253
--- /dev/null
+++ b/srcpkgs/libfprint0-devel
@@ -0,0 +1 @@
+libfprint0
\ No newline at end of file
diff --git a/srcpkgs/libfprint0/patches/fix-stderr-redefinition.patch b/srcpkgs/libfprint0/patches/fix-stderr-redefinition.patch
new file mode 100644
index 000000000000..3784ccba869a
--- /dev/null
+++ b/srcpkgs/libfprint0/patches/fix-stderr-redefinition.patch
@@ -0,0 +1,12 @@
+--- libfprint/nbis/include/bozorth.h.orig	2019-08-11 15:17:26.878344708 +0200
++++ libfprint/nbis/include/bozorth.h	2019-08-11 15:17:10.303132150 +0200
+@@ -218,7 +218,9 @@ struct xytq_struct {
+ /* Globals supporting command line options */
+ extern int verbose_threshold;
+ /* Global supporting error reporting */
++#ifdef __GLIBC__
+ extern FILE *stderr;
++#endif
+ 
+ /**************************************************************************/
+ /* In: BZ_GBLS.C */
diff --git a/srcpkgs/libfprint0/template b/srcpkgs/libfprint0/template
new file mode 100644
index 000000000000..2d31deb97f4b
--- /dev/null
+++ b/srcpkgs/libfprint0/template
@@ -0,0 +1,33 @@
+# Template file for 'libfprint0'
+pkgname=libfprint0
+version=1.0
+revision=2
+wrksrc="libfprint-V_${version//./_}"
+build_style=meson
+configure_args="-Dudev_rules=false -Dx11-examples=false -Dgtk-examples=false -Ddoc=false"
+hostmakedepends="pkg-config"
+makedepends="libusb-devel nss-devel glib-devel gdk-pixbuf-devel pixman-devel"
+depends="libfprint-udev-rules"
+short_desc="Support for consumer fingerprint reader devices"
+maintainer="Enno Boland <gottox@voidlinux.org>"
+license="LGPL-2.1-or-later"
+homepage="http://www.freedesktop.org/wiki/Software/fprint/"
+changelog="https://gitlab.freedesktop.org/libfprint/libfprint/raw/master/NEWS"
+distfiles="https://gitlab.freedesktop.org/libfprint/libfprint/-/archive/V_${version//./_}/libfprint-V_${version//./_}.tar.bz2"
+checksum=22777a1d202ef912395b94842ae6b531338c8d48a8a813616e846b1bc96c5ad9
+provides="libfprint-${version}_${revision}"
+replaces="libfprint<=${version}_1"
+
+post_install() {
+	vmkdir usr/lib/udev/rules.d
+}
+
+libfprint0-devel_package() {
+	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"
+	short_desc+=" - development files"
+	pkg_install() {
+		vmove usr/include
+		vmove usr/lib/pkgconfig
+		vmove "usr/lib/*.so"
+	}
+}
diff --git a/srcpkgs/libfprint0/update b/srcpkgs/libfprint0/update
new file mode 100644
index 000000000000..bebe6bef5f30
--- /dev/null
+++ b/srcpkgs/libfprint0/update
@@ -0,0 +1,2 @@
+pattern='/archive/[^/]+/\Q'"$pkgname"'\E-v?_\K[\d\._]+(?=\.tar\.gz")'
+ignore='*.99.* 1.9* [2-9].*'

From 3930d4ed5f958998f45b32ec5f8ee7cec78e14b4 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Wed, 13 Jan 2021 22:33:19 +0700
Subject: [PATCH 0046/3482] fprint_demo: rebuild with libfprint0

---
 srcpkgs/fprint_demo/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/fprint_demo/template b/srcpkgs/fprint_demo/template
index a801b480bbf7..723fa68f3f7d 100644
--- a/srcpkgs/fprint_demo/template
+++ b/srcpkgs/fprint_demo/template
@@ -1,15 +1,15 @@
 # Template file for 'fprint_demo'
 pkgname=fprint_demo
 version=0.4
-revision=2
+revision=3
 build_style=gnu-configure
 hostmakedepends="autoconf automake pkg-config"
-makedepends="gtk+-devel libfprint-devel"
+makedepends="gtk+-devel libfprint0-devel"
 depends="desktop-file-utils hicolor-icon-theme"
 short_desc="Demonstrates libfprint's capabilities"
 maintainer="Enno Boland <gottox@voidlinux.org>"
+license="GPL-2.0-or-later"
 homepage="http://www.freedesktop.org/wiki/Software/fprint/fprint_demo/"
-license="GPL-2"
 distfiles="https://github.com/dsd/${pkgname}/archive/v${version}.tar.gz"
 checksum=6f54f43e0a015cd83504a2c726a59154c5aee83e229e8494d54e592624ee3ad5
 

From ab4192200eabe882c1f571f55b44eeff51bb78bc Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Wed, 13 Jan 2021 22:33:41 +0700
Subject: [PATCH 0047/3482] fingerprint-gui: rebuild with fprint0

---
 srcpkgs/fingerprint-gui/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/fingerprint-gui/template b/srcpkgs/fingerprint-gui/template
index f030ab573aad..a17832fe13f9 100644
--- a/srcpkgs/fingerprint-gui/template
+++ b/srcpkgs/fingerprint-gui/template
@@ -1,11 +1,11 @@
 # Template file for 'fingerprint-gui'
 pkgname=fingerprint-gui
 version=1.09
-revision=2
+revision=3
 wrksrc="${pkgname}-${version}-qt5"
 build_style=qmake
 hostmakedepends="qt5-host-tools qt5-qmake"
-makedepends="qt5-devel qca-qt5-devel libfprint-devel libfakekey-devel
+makedepends="qt5-devel qca-qt5-devel libfprint0-devel libfakekey-devel
  polkit-qt5-devel pam-devel qt5-x11extras-devel"
 depends="desktop-file-utils"
 short_desc="Fingerprint management GUI and PAM module"

From 2d1e6ccf85be3ef826d68f5773e54116124e752c Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Thu, 10 Sep 2020 22:56:15 +0700
Subject: [PATCH 0048/3482] New package: pam_wrapper-1.1.3

---
 common/shlibs                |  1 +
 srcpkgs/pam_wrapper/template | 24 ++++++++++++++++++++++++
 srcpkgs/python3-pypamtest    |  1 +
 3 files changed, 26 insertions(+)
 create mode 100644 srcpkgs/pam_wrapper/template
 create mode 120000 srcpkgs/python3-pypamtest

diff --git a/common/shlibs b/common/shlibs
index 04c50017e314..5bd95138da00 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -4045,3 +4045,4 @@ libtdb-wrap-samba4.so samba-libs-4.13.3_1
 libutil-cmdline-samba4.so samba-libs-4.13.2_1
 libwinbind-client-samba4.so samba-libs-4.13.2_1
 libsixel.so.1 libsixel-1.8.6_1
+libpamtest.so.0 pam_wrapper-1.1.3_1
diff --git a/srcpkgs/pam_wrapper/template b/srcpkgs/pam_wrapper/template
new file mode 100644
index 000000000000..ff5d9df688e8
--- /dev/null
+++ b/srcpkgs/pam_wrapper/template
@@ -0,0 +1,24 @@
+# Template file for 'pam_wrapper'
+pkgname=pam_wrapper
+version=1.1.3
+revision=1
+build_style=cmake
+configure_args="-DCMAKE_BUILD_TYPE=None -DUNIT_TESTING=ON"
+hostmakedepends="cmake python3"
+makedepends="python3-devel pam-devel cmocka-devel"
+short_desc="Tool to test PAM applications and modules"
+maintainer="Đoàn Trần Công Danh <congdanhqx@gmail.com>"
+license="GPL-3.0-or-later"
+homepage="https://cwrap.org/pam_wrapper.html"
+distfiles="https://www.samba.org/ftp/cwrap/pam_wrapper-${version}.tar.gz"
+checksum=4feedd788c6fa36516f6d6060482cd86455998d72849eb5f539de48915bdc5f3
+lib32disabled=yes
+
+python3-pypamtest_package() {
+	lib32disabled=yes
+	short_desc+=" - Python 3 bindings"
+	depends="${sourcepkg}>=${version}_${revision} python3"
+	pkg_install() {
+		vmove usr/lib/python*
+	}
+}
diff --git a/srcpkgs/python3-pypamtest b/srcpkgs/python3-pypamtest
new file mode 120000
index 000000000000..3ea00f9d1ad3
--- /dev/null
+++ b/srcpkgs/python3-pypamtest
@@ -0,0 +1 @@
+pam_wrapper
\ No newline at end of file

From 3ad28fb416ebea878b77b60b728058961494a500 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Thu, 10 Sep 2020 20:54:57 +0700
Subject: [PATCH 0049/3482] fprintd: update to 1.90.1.

---
 srcpkgs/fprintd/template | 41 +++++++++++++---------------------------
 1 file changed, 13 insertions(+), 28 deletions(-)

diff --git a/srcpkgs/fprintd/template b/srcpkgs/fprintd/template
index 11e0922ea43e..8e40d243de27 100644
--- a/srcpkgs/fprintd/template
+++ b/srcpkgs/fprintd/template
@@ -1,36 +1,21 @@
 # Template file for 'fprintd'
 pkgname=fprintd
-version=0.9.0
-revision=3
-wrksrc="fprintd-V_${version//./_}"
-build_style=gnu-configure
-configure_args="--sysconfdir=/etc/${pkgname} --disable-static --without-systemdsystemunitdir"
+version=1.90.9
+revision=1
+wrksrc=fprintd-v$version
+build_style=meson
+configure_args="--sysconfdir=/etc/fprintd -Dman=true -Dgtk_doc=false
+ -Dsystemd=false -Dpam_modules_dir=/usr/lib/security"
 conf_files="/etc/fprintd/fprintd.conf"
-hostmakedepends="autoconf automake dbus-glib-devel gettext-devel glib-devel gtk-doc intltool libtool m4 pkg-config"
-makedepends="dbus-devel dbus-glib-devel gettext-devel glib-devel libfprint-devel pam-devel polkit-devel"
+hostmakedepends="meson dbus-glib-devel gettext-devel glib-devel intltool
+ pkg-config perl python3-cairo python3-pypamtest python3-dbus
+ python3-dbusmock libxslt libfprint polkit"
+makedepends="dbus-devel dbus-glib-devel gettext-devel glib-devel pam-devel
+ libfprint-devel polkit-devel cairo-devel elogind-devel pam_wrapper"
 short_desc="Daemon that provides fingerprint scanning functionality"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://www.freedesktop.org/wiki/Software/fprint/"
-distfiles="https://gitlab.freedesktop.org/libfprint/fprintd/-/archive/V_${version//./_}/fprintd-V_${version//./_}.tar.bz2"
-checksum=3bfbf870a3c333a0a1f08287b2b8501c34fd347faac8c1d52bd0d64ab3474d8e
+distfiles="https://gitlab.freedesktop.org/libfprint/fprintd/-/archive/v$version/fprintd-v$version.tar.bz2"
+checksum=9c9dcef205be0dfc669e2c892b28224dcd517674214aba745697e7341e3aef6f
 lib32disabled=yes
-
-CFLAGS="-fcommon"
-
-pre_configure() {
-	glib-gettextize -c -f
-	gtkdocize --copy
-	intltoolize -c -f
-	libtoolize -c
-	aclocal
-	autoconf
-	autoheader
-	automake -a -c
-}
-
-post_install() {
-	mv $DESTDIR/etc/$pkgname/dbus-1 $DESTDIR/usr/share/dbus-1
-	vmkdir usr/share/dbus-1/system.d
-	mv $DESTDIR/usr/share/dbus-1/dbus-1/system.d/net.reactivated.Fprint.conf $DESTDIR/usr/share/dbus-1/system.d/
-}

From b68a299f86b446d886da9674226e301da4fcdb7b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 18 Jan 2021 20:51:30 +0700
Subject: [PATCH 0050/3482] liquid-dsp: fix build

---
 srcpkgs/liquid-dsp/template | 5 +----
 1 file changed, 1 insertion(+), 4 deletions(-)

diff --git a/srcpkgs/liquid-dsp/template b/srcpkgs/liquid-dsp/template
index b1cff261bc10..d03535ae6605 100644
--- a/srcpkgs/liquid-dsp/template
+++ b/srcpkgs/liquid-dsp/template
@@ -3,6 +3,7 @@ pkgname=liquid-dsp
 version=1.3.1
 revision=1
 build_style=gnu-configure
+configure_args="--exec-prefix="
 hostmakedepends="automake"
 makedepends="fftw-devel"
 short_desc="Signal processing library for software-defined radios (SDR)"
@@ -12,10 +13,6 @@ homepage="http://liquidsdr.org/"
 distfiles="https://github.com/jgaeddert/liquid-dsp/archive/v${version}.tar.gz"
 checksum=e3f66ce72a3b5d74eea5ccffb049c62c422c91b0ab92d6dbbef21af3c3bfec73
 
-case "$XBPS_TARGET_MACHINE" in
-	i686) configure_args+=" --exec-prefix=" ;;
-esac
-
 pre_configure() {
 	autoreconf -fi
 }

From 7dd6038bad9b566c4a150d3e24a60808e7889968 Mon Sep 17 00:00:00 2001
From: Alex Lohr <alex.lohr@logmein.com>
Date: Mon, 18 Jan 2021 09:47:06 +0100
Subject: [PATCH 0051/3482] volta: update to 1.0.1

volta dropped 686 architecture support
---
 srcpkgs/volta/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/volta/template b/srcpkgs/volta/template
index 49e2aba57189..4f59d1542354 100644
--- a/srcpkgs/volta/template
+++ b/srcpkgs/volta/template
@@ -1,8 +1,8 @@
 # Template file for 'volta'
 pkgname=volta
-version=1.0.0
+version=1.0.1
 revision=1
-archs="x86_64 i686" # Due to volta pulling pre-built binaries later. Evil.
+archs="x86_64" # Due to volta pulling pre-built binaries later. Evil.
 build_style="cargo"
 hostmakedepends="pkg-config"
 makedepends="libressl-devel"
@@ -11,7 +11,7 @@ maintainer="Alex Lohr <alex.lohr@logmein.com>"
 license="BSD-2-Clause"
 homepage="https://volta.sh/"
 distfiles="https://github.com/volta-cli/volta/archive/v${version}.tar.gz"
-checksum=55d4e245b81baa540d4f56f5e2cb93f0a62047a7a40423536305b38231e38d96
+checksum=8d12a9f8754a982dfcfdb21cef29fa6d087e7e1022d0d3fe66f04b90f081a98a
 
 post_install() {
 	vlicense LICENSE

From 4f3680ba6031a54da28ad8fc6cddcab2e80966ea Mon Sep 17 00:00:00 2001
From: Nafis <mnabid.25@outlook.com>
Date: Mon, 18 Jan 2021 13:02:58 +0600
Subject: [PATCH 0052/3482] opera: update to 73.0.3856.344.

---
 srcpkgs/opera/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/opera/template b/srcpkgs/opera/template
index 2d19dfb78220..136b504e8147 100644
--- a/srcpkgs/opera/template
+++ b/srcpkgs/opera/template
@@ -1,6 +1,6 @@
 # Template file for 'opera'
 pkgname=opera
-version=73.0.3856.329
+version=73.0.3856.344
 revision=1
 archs="x86_64"
 depends="ffmpeg desktop-file-utils hicolor-icon-theme"
@@ -9,7 +9,7 @@ maintainer="Diogo Leal <diogo@diogoleal.com>"
 license="custom:Proprietary"
 homepage="https://www.opera.com/computer"
 distfiles="http://get.geo.opera.com/pub/opera/desktop/${version}/linux/${pkgname}-stable_${version}_amd64.deb"
-checksum=ff03c0f8f969038521b82b2f3c47dddf52921266adcc9ccb0860f4e8e38ce048
+checksum=70cd10eb8fc4a2930571692aec9dcd2a8d52b23599a9c90b39578827e7df31f9
 repository="nonfree"
 nostrip=yes
 

From 1c4e5746f34228b90086585930f46d63bc540d6d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?J=C3=BCrgen=20Buchm=C3=BCller?= <pullmoll@t-online.de>
Date: Mon, 18 Jan 2021 19:35:07 +0100
Subject: [PATCH 0053/3482] lollypop: update to 1.4.12

---
 srcpkgs/lollypop/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/lollypop/template b/srcpkgs/lollypop/template
index 6cb8881ddd58..7cffd5a42a1b 100644
--- a/srcpkgs/lollypop/template
+++ b/srcpkgs/lollypop/template
@@ -1,6 +1,6 @@
 # Template file for 'lollypop'
 pkgname=lollypop
-version=1.4.9
+version=1.4.12
 revision=1
 build_style=meson
 hostmakedepends="cmake git glib-devel gobject-introspection intltool itstool pkg-config"
@@ -13,4 +13,4 @@ maintainer="Jürgen Buchmüller <pullmoll@t-online.de>"
 license="GPL-3.0-or-later"
 homepage="https://wiki.gnome.org/Apps/Lollypop"
 distfiles="https://adishatz.org/lollypop/${pkgname}-${version}.tar.xz"
-checksum=9423a6e474480b0a27153cdcf7f994c7f7ce4dbeb5a05809b1f40e3e9776f4ba
+checksum=c089f89ad53a8d8743265ee12bd19a1b8907d6ff20f498ab1bff9cb4c83ec218

From 524253bd00e1f07e66b3393f3bb7c4a1b0b2ad8d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?J=C3=BCrgen=20Buchm=C3=BCller?= <pullmoll@t-online.de>
Date: Mon, 18 Jan 2021 19:38:00 +0100
Subject: [PATCH 0054/3482] sysexer-ng: fix build w/ gcc10

---
 srcpkgs/sysexxer-ng/patches/fix-std_string.patch | 10 ++++++++++
 1 file changed, 10 insertions(+)
 create mode 100644 srcpkgs/sysexxer-ng/patches/fix-std_string.patch

diff --git a/srcpkgs/sysexxer-ng/patches/fix-std_string.patch b/srcpkgs/sysexxer-ng/patches/fix-std_string.patch
new file mode 100644
index 000000000000..d6e7a5796425
--- /dev/null
+++ b/srcpkgs/sysexxer-ng/patches/fix-std_string.patch
@@ -0,0 +1,10 @@
+--- sources/utility.h	2019-03-14 19:21:37.000000000 +0100
++++ sources/utility.h	2021-01-18 19:36:38.116292685 +0100
+@@ -5,6 +5,7 @@
+ 
+ #include <memory>
+ #include <type_traits>
++#include <string>
+ #include <stdlib.h>
+ #include <stdio.h>
+ #include <stdarg.h>

From 9de6a9e7fb56c7d7ab9980d56c13efb38c4b03f4 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 18 Jan 2021 20:43:00 +0700
Subject: [PATCH 0055/3482] stk: fix ftbfs, reconfigure libexecdir

We installed those files into /usr/libexec/stk for a long time.
---
 srcpkgs/stk/patches/lib-include-dir.patch | 21 +++++++++++++++++++++
 srcpkgs/stk/template                      | 12 +++++-------
 2 files changed, 26 insertions(+), 7 deletions(-)
 create mode 100644 srcpkgs/stk/patches/lib-include-dir.patch

diff --git a/srcpkgs/stk/patches/lib-include-dir.patch b/srcpkgs/stk/patches/lib-include-dir.patch
new file mode 100644
index 000000000000..50fb53a77ccd
--- /dev/null
+++ b/srcpkgs/stk/patches/lib-include-dir.patch
@@ -0,0 +1,21 @@
+--- src/Makefile.in.orig	2021-01-18 20:34:19.338872822 +0700
++++ src/Makefile.in	2021-01-18 20:35:11.314028147 +0700
+@@ -93,13 +93,13 @@
+ 	$(LN) -s @sharedname@ $(SHAREDLIB)
+ 
+ install-headers:
+-	install -d $(DESTDIR)$(PREFIX)$(INCLUDEDIR)/stk
+-	cp -R ../include/*.h $(DESTDIR)$(PREFIX)$(INCLUDEDIR)/stk
++	install -d $(DESTDIR)$(INCLUDEDIR)/stk
++	cp -R ../include/*.h $(DESTDIR)$(INCLUDEDIR)/stk
+ 
+ install: $(SHAREDLIB) install-headers
+-	install -d $(DESTDIR)$(PREFIX)$(LIBDIR)
+-	install -m 644 @sharedname@ $(DESTDIR)$(PREFIX)$(LIBDIR)
+-	ln -sf @sharedname@ $(DESTDIR)$(PREFIX)$(LIBDIR)/$(SHAREDLIB)
++	install -d $(DESTDIR)$(LIBDIR)
++	install -m 644 @sharedname@ $(DESTDIR)$(LIBDIR)
++	ln -sf @sharedname@ $(DESTDIR)$(LIBDIR)/$(SHAREDLIB)
+ 
+ 
+ $(OBJECTS) : Stk.h
diff --git a/srcpkgs/stk/template b/srcpkgs/stk/template
index f726e3a53409..3ef3e444a38b 100644
--- a/srcpkgs/stk/template
+++ b/srcpkgs/stk/template
@@ -1,9 +1,12 @@
 # Template file for 'stk'
 pkgname=stk
 version=4.6.1
-revision=4
+revision=5
 build_style=gnu-configure
-configure_args="--with-alsa --with-jack RAWWAVE_PATH=/usr/share/stk/rawwaves/"
+configure_args="--with-alsa
+ --libexecdir=/usr/libexec/stk
+ --with-jack RAWWAVE_PATH=/usr/share/stk/rawwaves/"
+make_install_args="prefix=/usr"
 hostmakedepends="automake libtool pkg-config"
 makedepends="alsa-lib-devel jack-devel"
 depends="libstk-${version}_${revision} stk-data-${version}_${revision}"
@@ -19,11 +22,6 @@ pre_configure() {
 }
 
 post_install() {
-	# Fix wrong 32 bit library install path
-	if [ -f "${DESTDIR}"/usr/usr/lib32/libstk.so ]; then
-		mv -v "${DESTDIR}"/usr/usr/lib32/* "${DESTDIR}"/usr/lib
-	fi
-
 	# Create a pkg-config file
 	vmkdir usr/lib/pkgconfig
 	sed ${FILESDIR}/stk.pc \

From b9790eff2c015d6dcd7b1cce945284594e193fad Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Benjam=C3=ADn=20Albi=C3=B1ana?= <benalb@gmail.com>
Date: Mon, 18 Jan 2021 19:44:30 +0100
Subject: [PATCH 0056/3482] exiftool: update to 12.15.

---
 srcpkgs/exiftool/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/exiftool/template b/srcpkgs/exiftool/template
index 08daf214fcc6..f2baecc24850 100644
--- a/srcpkgs/exiftool/template
+++ b/srcpkgs/exiftool/template
@@ -1,6 +1,6 @@
 # Template file for 'exiftool'
 pkgname=exiftool
-version=12.14
+version=12.15
 revision=1
 wrksrc="Image-ExifTool-${version}"
 build_style=perl-module
@@ -13,4 +13,4 @@ license="Artistic-1.0-Perl, GPL-1.0-or-later"
 homepage="https://exiftool.org/"
 changelog="https://exiftool.org/history.html"
 distfiles="https://exiftool.org/Image-ExifTool-${version}.tar.gz"
-checksum=c1682bd467b0cfb3a385cfe17e413e33a15070d4fe55b82f0302ca47f42341a4
+checksum=02e07fae4070c6bf7cdeb91075f783fea17c766b7caa23e6834e8bba424551b9

From d7ff592cbc714f3349b39f5c2f79d3f4f505293f Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C3=89rico=20Rolim?= <erico.erc@gmail.com>
Date: Wed, 13 Jan 2021 11:45:12 -0300
Subject: [PATCH 0057/3482] caribou: add fix for crash observed in
 cinammon-screensaver.

https://github.com/linuxmint/cinnamon-screensaver/issues/354

Also clean wrong and repeated entry from shlibs.
---
 common/shlibs                           |  1 -
 srcpkgs/caribou/patches/fix-crash.patch | 46 +++++++++++++++++++++++++
 srcpkgs/caribou/patches/fix-vala.patch  | 16 +++++++++
 srcpkgs/caribou/template                |  4 +--
 4 files changed, 64 insertions(+), 3 deletions(-)
 create mode 100644 srcpkgs/caribou/patches/fix-crash.patch
 create mode 100644 srcpkgs/caribou/patches/fix-vala.patch

diff --git a/common/shlibs b/common/shlibs
index 5bd95138da00..e0601851d650 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -896,7 +896,6 @@ liblcms2.so.2 lcms2-2.2_1
 libcolord.so.2 libcolord-1.1.7_1
 libcolordprivate.so.2 libcolord-1.1.7_1
 libcolorhug.so.2 libcolord-1.1.7_1
-libcaribou.so.0 caribou-0.4.0_1
 libgupnp-av-1.0.so.2 gupnp-av-0.10.0_1
 libgrilo-0.3.so.0 grilo-0.3.2_1
 libgrlnet-0.3.so.0 grilo-0.3.2_1
diff --git a/srcpkgs/caribou/patches/fix-crash.patch b/srcpkgs/caribou/patches/fix-crash.patch
new file mode 100644
index 000000000000..a6fa3d7cd378
--- /dev/null
+++ b/srcpkgs/caribou/patches/fix-crash.patch
@@ -0,0 +1,46 @@
+From d41c8e44b12222a290eaca16703406b113a630c6 Mon Sep 17 00:00:00 2001
+From: Michael Webster <miketwebster@gmail.com>
+Date: Tue, 12 Jan 2021 18:01:47 +0000
+Subject: [PATCH] xadapter.vala: Remove XkbKeyTypesMask and fields from
+ XKbChangeMap call.
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+This was originally a workaround for xFree86 4.3 - see:
+https://bugzilla.gnome.org/show_bug.cgi?id=673547
+​
+As of https://gitlab.freedesktop.org/xorg/xserver/-/commit/87c64fc5b0 this
+causes a BadLength error when attempting to use shifted characters.
+​
+Ref:
+https://www.x.org/releases/X11R7.7/doc/libX11/XKB/xkblib.html#Changing_Map_Components_in_the_Server
+---
+ libcaribou/xadapter.vala | 9 ++-------
+ 1 file changed, 2 insertions(+), 7 deletions(-)
+
+diff --git a/libcaribou/xadapter.vala b/libcaribou/xadapter.vala
+index 22858b7..1da5a78 100644
+--- a/libcaribou/xadapter.vala
++++ b/libcaribou/xadapter.vala
+@@ -195,15 +195,10 @@ namespace Caribou {
+ 
+             Xkb.MapChanges changes = Xkb.MapChanges ();
+ 
+-            // We don't touch key types here but include the
+-            // information in XkbSetMap request to the server, because
+-            // some X servers need the information to check the sanity
+-            // of the keysyms change.
+-            changes.changed = (ushort) (Xkb.KeySymsMask | Xkb.KeyTypesMask);
++            changes.changed = (ushort) Xkb.KeySymsMask;
+             changes.first_key_sym = (char) this.reserved_keycode;
+             changes.num_key_syms = this.xkbdesc.map.key_sym_map[this.reserved_keycode].width;
+-            changes.first_type = 0;
+-            changes.num_types = this.xkbdesc.map.num_types;
++
+             Xkb.change_map (this.xdisplay, this.xkbdesc, changes);
+ 
+             this.xdisplay.flush ();
+-- 
+GitLab
+
diff --git a/srcpkgs/caribou/patches/fix-vala.patch b/srcpkgs/caribou/patches/fix-vala.patch
new file mode 100644
index 000000000000..9fae15bc231f
--- /dev/null
+++ b/srcpkgs/caribou/patches/fix-vala.patch
@@ -0,0 +1,16 @@
+Patch from
+https://github.com/archlinux/svntogit-packages/blob/bf8285526628664f46c1b790238c6e3555e51499/trunk/unicode_to_keyval-symbol-check.patch
+
+diff --git a/libcaribou/key-model.vala b/libcaribou/key-model.vala
+index 89015bc..e88342e 100644
+--- a/libcaribou/key-model.vala
++++ b/libcaribou/key-model.vala
+@@ -101,7 +101,7 @@ namespace Caribou {
+                     unichar uc;
+                     while (text.get_next_char (ref index, out uc)) {
+                         uint keyval = Gdk.unicode_to_keyval (uc);
+-                        if (keyval != uc | 0x01000000)
++                        if (keyval != (uc | 0x01000000))
+                             _keyvals += keyval;
+                     }
+                 } else {
diff --git a/srcpkgs/caribou/template b/srcpkgs/caribou/template
index 6ac08ee5e22b..bf135b75f8b0 100644
--- a/srcpkgs/caribou/template
+++ b/srcpkgs/caribou/template
@@ -1,12 +1,12 @@
 # Template file for 'caribou'
 pkgname=caribou
 version=0.4.21
-revision=4
+revision=5
 build_style=gnu-configure
 build_helper="gir"
 configure_args="--disable-schemas-compile --disable-static --disable-gtk2-module
  PYTHON=/usr/bin/python3"
-hostmakedepends="pkg-config intltool python3-gobject-devel libxslt"
+hostmakedepends="pkg-config intltool python3-gobject-devel libxslt vala"
 makedepends="vala-devel libxklavier-devel libgee08-devel python3-gobject-devel
  clutter-devel gtk+3-devel libXtst-devel gir-freedesktop"
 depends="python3-gobject python3-atspi python3-dbus gir-freedesktop at-spi2-atk

From fd5aeae95d637b0c9984192c4b63006f5aa1d8c2 Mon Sep 17 00:00:00 2001
From: mobinmob <mobinmob@disroot.org>
Date: Tue, 12 Jan 2021 23:21:31 +0200
Subject: [PATCH 0058/3482] kblocks: update to 20.12.1.

---
 srcpkgs/kblocks/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/kblocks/template b/srcpkgs/kblocks/template
index dfccb77171af..66f93edd49f7 100644
--- a/srcpkgs/kblocks/template
+++ b/srcpkgs/kblocks/template
@@ -1,6 +1,6 @@
 # Template file for 'kblocks'
 pkgname=kblocks
-version=20.08.1
+version=20.12.1
 revision=1
 build_style=cmake
 hostmakedepends="extra-cmake-modules qt5-qmake qt5-host-tools kdoctools kconfig
@@ -13,4 +13,4 @@ maintainer="toluschr <toluschr@protonmail.com>"
 license="GPL-2.0-or-later"
 homepage="https://kde.org/applications/games/org.kde.kblocks"
 distfiles="${KDE_SITE}/release-service/${version}/src/kblocks-${version}.tar.xz"
-checksum=e2b6e5b0727ca45d6b0f0e8b9f0aa029a0acb9bdebeac5bfd849455e560977ed
+checksum=9a601c46ffcf2b90f6fb45fcbb8accd6b6b006a3263c9b52468099261eee2d09

From b7999b20815473b5eb1520e0e9365ae78d997f13 Mon Sep 17 00:00:00 2001
From: Alex <60660439+AlexDltg@users.noreply.github.com>
Date: Tue, 12 Jan 2021 11:55:26 +0100
Subject: [PATCH 0059/3482] pycharm-community: update to 2020.3.2

---
 srcpkgs/pycharm-community/files/pycharm.desktop |  5 +++--
 srcpkgs/pycharm-community/template              | 16 +++++++++++++---
 2 files changed, 16 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/pycharm-community/files/pycharm.desktop b/srcpkgs/pycharm-community/files/pycharm.desktop
index d86ec782f8e0..aa51d673e772 100644
--- a/srcpkgs/pycharm-community/files/pycharm.desktop
+++ b/srcpkgs/pycharm-community/files/pycharm.desktop
@@ -1,7 +1,8 @@
 [Desktop Entry]
-Name=PyCharm
+Name=PyCharm Community
+Comment=The Python IDE for Professional Developers
 Exec=pycharm %f
 Terminal=false
 Type=Application
-Icon=/usr/lib/pycharm/bin/pycharm.png
+Icon=pycharm
 Categories=Development;
diff --git a/srcpkgs/pycharm-community/template b/srcpkgs/pycharm-community/template
index 6b1494d60a40..77f5a358d8a4 100644
--- a/srcpkgs/pycharm-community/template
+++ b/srcpkgs/pycharm-community/template
@@ -1,15 +1,15 @@
 # Template file for 'pycharm-community'
 pkgname=pycharm-community
-version=2020.2.3
+version=2020.3.2
 revision=1
 archs="x86_64"
-depends="virtual?java-environment giflib libXtst"
+depends="virtual?java-environment giflib libXtst hicolor-icon-theme"
 short_desc="Python integrated development environment"
 maintainer="Felix Van der Jeugt <felix.vanderjeugt@gmail.com>"
 license="Apache-2.0"
 homepage="https://www.jetbrains.org/pycharm/"
 distfiles="https://download-cf.jetbrains.com/python/${pkgname}-${version}.tar.gz"
-checksum=870071ba911d41052e3b94ad97116940b79b411b4ad0aaccebb83b319e621073
+checksum=33e19dfaa434f637506b6fa35dcf94c908f9b471aadc9f616eae0c0395327cfc
 repository=nonfree
 nopie=yes
 python_version=3
@@ -18,7 +18,11 @@ do_install() {
 	vmkdir usr/bin
 	vmkdir usr/share/doc/pycharm
 	vmkdir usr/lib/pycharm
+	vmkdir usr/share/pixmaps
+	vmkdir usr/share/icons/hicolor/scalable/apps
 
+	local launcher_path="bin/pycharm.sh"
+	sed -i '1 s/$/\nPYCHARM_JDK=${PYCHARM_JDK:-${IDEA_JDK}}/' "${launcher_path}"
 	mv -v bin lib plugins ${DESTDIR}/usr/lib/pycharm
 	mv -v license ${DESTDIR}/usr/share/doc/pycharm
 	rm -vf ${DESTDIR}/usr/lib/pycharm/bin/fsnotifier-arm
@@ -31,7 +35,11 @@ do_install() {
 	rm -vf ${DESTDIR}/usr/lib/pycharm/plugins/python-ce/helpers/pydev/third_party/wrapped_for_pydev/ctypes/_ctypes.dll
 
 	rm -vf ${DESTDIR}/usr/lib/pycharm/lib/pty4j-native/linux/ppc64le/libpty.so
+	rm -vf ${DESTDIR}/usr/lib/pycharm/lib/pty4j-native/linux/mips64el/libpty.so
+	rm -vf ${DESTDIR}/usr/lib/pycharm/lib/pty4j-native/linux/aarch64/libpty.so
 	rmdir -v ${DESTDIR}/usr/lib/pycharm/lib/pty4j-native/linux/ppc64le
+	rmdir -v ${DESTDIR}/usr/lib/pycharm/lib/pty4j-native/linux/mips64el
+	rmdir -v ${DESTDIR}/usr/lib/pycharm/lib/pty4j-native/linux/aarch64
 
 	if [ "$XBPS_TARGET_MACHINE" = "x86_64" ]; then
 		rm -vf ${DESTDIR}/usr/lib/pycharm/bin/fsnotifier
@@ -46,5 +54,7 @@ do_install() {
 	fi
 
 	ln -sf /usr/lib/pycharm/bin/pycharm.sh ${DESTDIR}/usr/bin/pycharm
+	ln -sf /usr/lib/pycharm/bin/pycharm.png ${DESTDIR}/usr/share/pixmaps
+	ln -sf /usr/lib/pycharm/bin/pycharm.svg ${DESTDIR}/usr/share/icons/hicolor/scalable/apps
 	vinstall ${FILESDIR}/pycharm.desktop 644 usr/share/applications
 }

From c16497fb406584e642b595a66b86bd505c69652e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?J=C3=BCrgen=20Buchm=C3=BCller?= <pullmoll@t-online.de>
Date: Mon, 18 Jan 2021 21:25:55 +0100
Subject: [PATCH 0060/3482] Aegisub: fix build w/ ffms2-2.40; reduce warnings

---
 srcpkgs/Aegisub/patches/fix-ffms2-2.40.patch  | 87 +++++++++++++++++++
 .../Aegisub/patches/fix-no-narrowing.patch    | 12 +++
 srcpkgs/Aegisub/template                      |  2 +-
 3 files changed, 100 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/Aegisub/patches/fix-ffms2-2.40.patch
 create mode 100644 srcpkgs/Aegisub/patches/fix-no-narrowing.patch

diff --git a/srcpkgs/Aegisub/patches/fix-ffms2-2.40.patch b/srcpkgs/Aegisub/patches/fix-ffms2-2.40.patch
new file mode 100644
index 000000000000..bec020031307
--- /dev/null
+++ b/srcpkgs/Aegisub/patches/fix-ffms2-2.40.patch
@@ -0,0 +1,87 @@
+Source: @pullmoll
+Upstream: no
+Reason: ffms2 no longer provides color space enum values; use the ffmpeg ones
+
+--- src/ffmpegsource_common.cpp	2014-12-08 01:07:09.000000000 +0100
++++ src/ffmpegsource_common.cpp	2021-01-18 21:12:42.209582337 +0100
+@@ -98,7 +98,6 @@
+ 			ps->SetProgress(Current, Total);
+ 			return ps->IsCancelled();
+ 		};
+-		Index = FFMS_DoIndexing(Indexer, Trackmask, FFMS_TRACKMASK_NONE,
+-			nullptr, nullptr, IndexEH, callback, ps, &ErrInfo);
++		Index = FFMS_DoIndexing2(Indexer, FFMS_IEH_ABORT, &ErrInfo);
+ 	});
+ 
+--- src/video_provider_ffmpegsource.cpp	2014-12-08 01:07:09.000000000 +0100
++++ src/video_provider_ffmpegsource.cpp	2021-01-18 21:07:47.205800051 +0100
+@@ -42,6 +42,7 @@
+ 
+ #include <libaegisub/fs.h>
+ #include <libaegisub/make_unique.h>
++#include <libavutil/pixfmt.h>
+ 
+ namespace {
+ /// @class FFmpegSourceVideoProvider
+@@ -78,7 +79,7 @@
+ 		if (matrix == RealColorSpace)
+ 			FFMS_SetInputFormatV(VideoSource, CS, CR, FFMS_GetPixFmt(""), nullptr);
+ 		else if (matrix == "TV.601")
+-			FFMS_SetInputFormatV(VideoSource, FFMS_CS_BT470BG, CR, FFMS_GetPixFmt(""), nullptr);
++			FFMS_SetInputFormatV(VideoSource, AVCOL_SPC_BT470BG, CR, FFMS_GetPixFmt(""), nullptr);
+ 		else
+ 			return;
+ 		ColorSpace = matrix;
+@@ -103,16 +104,16 @@
+ 	std::string str = cr == FFMS_CR_JPEG ? "PC" : "TV";
+ 
+ 	switch (cs) {
+-		case FFMS_CS_RGB:
++		case AVCOL_SPC_RGB:
+ 			return "None";
+-		case FFMS_CS_BT709:
++		case AVCOL_SPC_BT709:
+ 			return str + ".709";
+-		case FFMS_CS_FCC:
++		case AVCOL_SPC_FCC:
+ 			return str + ".FCC";
+-		case FFMS_CS_BT470BG:
+-		case FFMS_CS_SMPTE170M:
++		case AVCOL_SPC_BT470BG:
++		case AVCOL_SPC_SMPTE170M:
+ 			return str + ".601";
+-		case FFMS_CS_SMPTE240M:
++		case AVCOL_SPC_SMPTE240M:
+ 			return str + ".240M";
+ 		default:
+ 			throw VideoOpenError("Unknown video color space");
+@@ -208,8 +209,6 @@
+ 
+ 	// set thread count
+ 	int Threads = OPT_GET("Provider/Video/FFmpegSource/Decoding Threads")->GetInt();
+-	if (FFMS_GetVersion() < ((2 << 24) | (17 << 16) | (2 << 8) | 1) && FFMS_GetSourceType(Index) == FFMS_SOURCE_LAVF)
+-		Threads = 1;
+ 
+ 	// set seekmode
+ 	// TODO: give this its own option?
+@@ -240,15 +239,15 @@
+ 	CS = TempFrame->ColorSpace;
+ 	CR = TempFrame->ColorRange;
+ 
+-	if (CS == FFMS_CS_UNSPECIFIED)
+-		CS = Width > 1024 || Height >= 600 ? FFMS_CS_BT709 : FFMS_CS_BT470BG;
++	if (CS == AVCOL_SPC_UNSPECIFIED)
++		CS = Width > 1024 || Height >= 600 ? AVCOL_SPC_BT709 : AVCOL_SPC_BT470BG;
+ 	RealColorSpace = ColorSpace = colormatrix_description(CS, CR);
+ 
+ #if FFMS_VERSION >= ((2 << 24) | (17 << 16) | (1 << 8) | 0)
+-	if (CS != FFMS_CS_RGB && CS != FFMS_CS_BT470BG && ColorSpace != colormatrix && (colormatrix == "TV.601" || OPT_GET("Video/Force BT.601")->GetBool())) {
+-		if (FFMS_SetInputFormatV(VideoSource, FFMS_CS_BT470BG, CR, FFMS_GetPixFmt(""), &ErrInfo))
++	if (CS != AVCOL_SPC_RGB && CS != AVCOL_SPC_BT470BG && ColorSpace != colormatrix && (colormatrix == "TV.601" || OPT_GET("Video/Force BT.601")->GetBool())) {
++		if (FFMS_SetInputFormatV(VideoSource, AVCOL_SPC_BT470BG, CR, FFMS_GetPixFmt(""), &ErrInfo))
+ 			throw VideoOpenError(std::string("Failed to set input format: ") + ErrInfo.Buffer);
+-		ColorSpace = colormatrix_description(FFMS_CS_BT470BG, CR);
++		ColorSpace = colormatrix_description(AVCOL_SPC_BT470BG, CR);
+ 	}
+ #endif
+ 
diff --git a/srcpkgs/Aegisub/patches/fix-no-narrowing.patch b/srcpkgs/Aegisub/patches/fix-no-narrowing.patch
new file mode 100644
index 000000000000..ecccc927abec
--- /dev/null
+++ b/srcpkgs/Aegisub/patches/fix-no-narrowing.patch
@@ -0,0 +1,12 @@
+--- configure.ac	2021-01-18 20:39:16.546501531 +0100
++++ configure.ac	2021-01-18 20:57:43.667587518 +0100
+@@ -142,7 +142,8 @@
+   CFLAGS="$CFLAGS -Wall -Wextra -Wno-unused-parameter -std=gnu99 -pipe -g"
+   CXXFLAGS="$CXXFLAGS -Wall -Wextra -Wno-unused-parameter -fno-strict-aliasing -pipe -g"
+   AC_CXX_FLAG([-std=c++11])
+-  AC_CXX_FLAG([-Wno-c++11-narrowing])
++  AC_CXX_FLAG([-Wno-narrowing])
++  AC_CXX_FLAG([-Wno-deprecated-copy])
+   AC_C_FLAG([-Wno-unused-local-typedefs])
+   AC_CXX_FLAG([-Wno-unused-local-typedefs])
+ 
diff --git a/srcpkgs/Aegisub/template b/srcpkgs/Aegisub/template
index cc8107525638..9f38b0e37c0f 100644
--- a/srcpkgs/Aegisub/template
+++ b/srcpkgs/Aegisub/template
@@ -1,7 +1,7 @@
 # Template file for 'Aegisub'
 pkgname=Aegisub
 version=3.2.2
-revision=11
+revision=12
 build_style=gnu-configure
 configure_args="--disable-update-checker --with-alsa --with-ffms2
  --with-wx-config=wx-config-gtk3 $(vopt_with fftw fftw3) $(vopt_with openal)

From 0e0750c92b5ef76f9dab6dcc5909e194ee7684eb Mon Sep 17 00:00:00 2001
From: mobinmob <mobinmob@disroot.org>
Date: Thu, 7 Jan 2021 00:36:39 +0200
Subject: [PATCH 0061/3482] rssguard: update to 3.8.4.

---
 srcpkgs/rssguard/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/rssguard/template b/srcpkgs/rssguard/template
index 0595883e72f9..2b4b7ed36f83 100644
--- a/srcpkgs/rssguard/template
+++ b/srcpkgs/rssguard/template
@@ -1,6 +1,6 @@
 # Template file for 'rssguard'
 pkgname=rssguard
-version=3.8.3
+version=3.8.4
 revision=1
 build_style=qmake
 configure_args="CONFIG+=release LRELEASE_EXECUTABLE=lrelease-qt5 USE_WEBENGINE=false"
@@ -11,7 +11,7 @@ maintainer="mobinmob <mobinmob@disroot.org>"
 license="GPL-3.0-only"
 homepage="https://github.com/martinrotter/rssguard"
 distfiles="https://github.com/martinrotter/rssguard/archive/${version}.tar.gz"
-checksum=27ad2eff79e111fa916bb5bd896393d88caf14b7c1920ce8bfc6f0801c10adc7
+checksum=4acfcb482c5f1f065b4e299ab4500c69146ddd398536ccb0799912290805b262
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" qt5-tools-devel kdeclarative-devel"

From c610faede5b367ee2b9ab887d8f3eda761da5e40 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?J=C3=BCrgen=20Buchm=C3=BCller?= <pullmoll@t-online.de>
Date: Mon, 18 Jan 2021 21:47:38 +0100
Subject: [PATCH 0062/3482] Aegisub: cross is broken

---
 srcpkgs/Aegisub/template | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/srcpkgs/Aegisub/template b/srcpkgs/Aegisub/template
index 9f38b0e37c0f..580dde47a0df 100644
--- a/srcpkgs/Aegisub/template
+++ b/srcpkgs/Aegisub/template
@@ -32,9 +32,15 @@ if [ "$XBPS_TARGET_NO_ATOMIC8" ]; then
 	configure_args+=" --with-libatomic"
 fi
 
+if [ "$CROSS_BUILD" ]; then
+	# When cross building the detection of iconv const parameters is wrong
+	configure_args+=" agi_cv_with_iconv_const=no"
+	# and cross is broken because of boost::icu_regex_trais anyway ...
+	broken="/usr/aarch64-linux-gnu/usr/include/boost/regex/v4/perl_matcher_common.hpp:512: undefined reference to 'boost ::icu_regex_traits::isctype(int, unsigned long) const'"
+fi
+
 case "$XBPS_TARGET_MACHINE" in
 	*musl) broken="segfaults on startup";;
-	armv7l*|armv6l*) broken="error: invalid conversion from 'const char**' to 'char**' [-fpermissive]"
 esac
 
 post_extract() {

From 7267f169ec05e3746025014e576bcbf8729993fb Mon Sep 17 00:00:00 2001
From: newbluemoon <blaumolch@mailbox.org>
Date: Tue, 12 Jan 2021 06:52:49 +0100
Subject: [PATCH 0063/3482] perl-Role-Tiny: update to 2.002003

---
 srcpkgs/perl-Role-Tiny/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/perl-Role-Tiny/template b/srcpkgs/perl-Role-Tiny/template
index 95e9691edfe8..f0754d4ab5b2 100644
--- a/srcpkgs/perl-Role-Tiny/template
+++ b/srcpkgs/perl-Role-Tiny/template
@@ -1,7 +1,7 @@
 # Template file for 'perl-Role-Tiny'
 pkgname=perl-Role-Tiny
-version=2.001004
-revision=2
+version=2.002003
+revision=1
 wrksrc="${pkgname/perl-/}-${version}"
 build_style=perl-module
 hostmakedepends="perl"
@@ -12,4 +12,4 @@ maintainer="newbluemoon <blaumolch@mailbox.org>"
 license="Artistic-1.0-Perl, GPL-1.0-or-later"
 homepage="https://metacpan.org/release/Role-Tiny"
 distfiles="${CPAN_SITE}/lib/HAARG/Role-Tiny-${version}.tar.gz"
-checksum=92ba5712850a74102c93c942eb6e7f62f7a4f8f483734ed289d08b324c281687
+checksum=6981e5f2d0beded157840199d678da462b22a9a3753333cab322ab6efb0fbb89

From ff0018bcc143d444d555a0294bc8c36cc493df7e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Stefan=20M=C3=BChlinghaus?= <jazzman@alphabreed.com>
Date: Mon, 18 Jan 2021 20:31:50 +0100
Subject: [PATCH 0064/3482] spotify: updated licence checksum

---
 srcpkgs/spotify/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/spotify/template b/srcpkgs/spotify/template
index bd35e859c295..d73147bf6b0f 100644
--- a/srcpkgs/spotify/template
+++ b/srcpkgs/spotify/template
@@ -1,7 +1,7 @@
 # Template file for 'spotify'
 pkgname=spotify
 version=1.1.42
-revision=2
+revision=3
 _ver="${version}.622.gbd112320-37_amd64"
 _filename="spotify-client_${_ver}.deb"
 archs="x86_64"
@@ -15,7 +15,7 @@ license="custom:Proprietary"
 homepage="https://www.spotify.com"
 distfiles="http://repository.spotify.com/pool/non-free/s/spotify-client/${_filename}"
 checksum=101a3699197659b8bc60a4fd8b579e63cc494e7abd089c45306559329af4a868
-_license_checksum=4a66993926096dd60fb03d7d82bd806f2f4b2d6ab2970aa0462e669f51f076a0
+_license_checksum=3c073aa5bd7ffaba3df5283cdd2d3b36a415bd824234693844548fc3e16027a5
 repository=nonfree
 restricted=yes
 nostrip=yes

From ef1e7df4b39788e1691463bca4ce2a897c54cab5 Mon Sep 17 00:00:00 2001
From: fosslinux <fosslinux@aussies.space>
Date: Mon, 4 Jan 2021 20:42:38 +1100
Subject: [PATCH 0065/3482] foomatic-db: update to 20210104.

---
 srcpkgs/foomatic-db/template | 25 +++++++++++++------------
 srcpkgs/foomatic-db/update   |  4 +++-
 2 files changed, 16 insertions(+), 13 deletions(-)

diff --git a/srcpkgs/foomatic-db/template b/srcpkgs/foomatic-db/template
index 58d267a42d69..0a4862431788 100644
--- a/srcpkgs/foomatic-db/template
+++ b/srcpkgs/foomatic-db/template
@@ -1,23 +1,24 @@
 # Template file for 'foomatic-db'
-# Note: update the version=<date> regularly like once/month.
+# Update when there is a new commit at https://github.com/OpenPrinting/foomatic-db.
 pkgname=foomatic-db
-version=20201129
+version=20210104
 revision=1
-create_wrksrc=yes
+_commit=28466ef2f9f931f49816ed70c499001d1783f5cb
+wrksrc="${pkgname}-${_commit}"
 build_style=gnu-configure
-hostmakedepends="xmlstarlet tar"
+hostmakedepends="xmlstarlet tar automake"
 short_desc="OpenPrinting printer support - database"
 maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-2.0-or-later, MIT"
 homepage="https://wiki.linuxfoundation.org/openprinting/database/foomatic"
+distfiles="https://github.com/OpenPrinting/foomatic-db/archive/${_commit}.tar.gz"
+checksum=eb412f7967300ae49bd22a886ecd478767828eff5da4d1e875c3409898265866
 
-do_fetch() {
-	$XBPS_FETCH_CMD https://www.openprinting.org/download/foomatic/${pkgname}-4.0-current.tar.gz
-}
-
-do_extract() {
-	bsdtar -xf ${XBPS_BUILDDIR}/${pkgname}-4.0-current.tar.gz \
-		--strip-components=1 -C ${wrksrc}
+pre_configure() {
+	# Taken from make_configure
+	aclocal
+	autoconf
+	sed -i "s=\#include \<xmlversion.h\>=\#include \<libxml/xmlversion.h\>=g" configure
 }
 
 post_install() {
@@ -28,4 +29,4 @@ post_install() {
 			vlicense "LICENSE-$(basename $i .xml).txt"
 		fi
 	done
- }
+}
diff --git a/srcpkgs/foomatic-db/update b/srcpkgs/foomatic-db/update
index 632ae769a2d5..187d2fc18407 100644
--- a/srcpkgs/foomatic-db/update
+++ b/srcpkgs/foomatic-db/update
@@ -1 +1,3 @@
-pattern=$pkgname'-[\d.]+-\K[\d]+'
+site="https://github.com/OpenPrinting/foomatic-db"
+version="${version:0:4}.${version:4:2}.${version:6:2}"
+pattern="relative-time datetime=\"\K\d{4}-\d{2}-\d{2}"

From 079afcc5bf9d0cc8245e0a02f3b0021a08b0309b Mon Sep 17 00:00:00 2001
From: fosslinux <fosslinux@aussies.space>
Date: Mon, 4 Jan 2021 20:42:51 +1100
Subject: [PATCH 0066/3482] foomatic-db-nonfree: update to 20210104.

---
 srcpkgs/foomatic-db-nonfree/template | 23 ++++++++++++-----------
 srcpkgs/foomatic-db-nonfree/update   |  3 +++
 2 files changed, 15 insertions(+), 11 deletions(-)
 create mode 100644 srcpkgs/foomatic-db-nonfree/update

diff --git a/srcpkgs/foomatic-db-nonfree/template b/srcpkgs/foomatic-db-nonfree/template
index d6773c5443b0..bc4ef4c5a0fb 100644
--- a/srcpkgs/foomatic-db-nonfree/template
+++ b/srcpkgs/foomatic-db-nonfree/template
@@ -1,24 +1,25 @@
 # Template file for 'foomatic-db-nonfree'
-# Note: update the version=<date> regularly like once/month.
+# Update when there is a new commit at https://github.com/OpenPrinting/foomatic-db-nonfree.
 pkgname=foomatic-db-nonfree
-version=20201129
+version=20210104
 revision=1
-create_wrksrc=yes
+_commit=6ddae02ac89240c019f8b5026cfe70e30fd2b3db
+wrksrc="${pkgname}-${_commit}"
 build_style=gnu-configure
-hostmakedepends="tar xmlstarlet"
+hostmakedepends="tar xmlstarlet automake"
 short_desc="OpenPrinting printer support - nonfree database"
 maintainer="fosslinux <fosslinux@aussies.space>"
 license="custom:Various Nonfree"
 homepage="https://wiki.linuxfoundation.org/openprinting/database/foomatic"
+distfiles="https://github.com/OpenPrinting/foomatic-db-nonfree/archive/${_commit}.tar.gz"
+checksum=958c1067a24c37cb753ee2b4aeb9e8325629f4363ce9e108f1f6d0f828e5b7c5
 repository="nonfree"
 
-do_fetch() {
-	$XBPS_FETCH_CMD https://www.openprinting.org/download/foomatic/${pkgname}-current.tar.gz
-}
-
-do_extract() {
-	bsdtar -xf ${XBPS_BUILDDIR}/${pkgname}-current.tar.gz \
-		--strip-components=1 -C ${wrksrc}
+pre_configure() {
+	# From make_configure
+	aclocal
+	autoconf
+	sed -i "s=\#include \<xmlversion.h\>=\#include \<libxml/xmlversion.h\>=g" configure
 }
 
 post_install() {
diff --git a/srcpkgs/foomatic-db-nonfree/update b/srcpkgs/foomatic-db-nonfree/update
new file mode 100644
index 000000000000..751988f2c000
--- /dev/null
+++ b/srcpkgs/foomatic-db-nonfree/update
@@ -0,0 +1,3 @@
+site="https://github.com/OpenPrinting/foomatic-db-nonfree"
+version="${version:0:4}.${version:4:2}.${version:6:2}"
+pattern="relative-time datetime=\"\K\d{4}-\d{2}-\d{2}"

From 769fa0b6c8b328a19545fcfc5384c8e23f59a192 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?J=C3=BCrgen=20Buchm=C3=BCller?= <pullmoll@t-online.de>
Date: Mon, 18 Jan 2021 22:42:22 +0100
Subject: [PATCH 0067/3482] lwipv6: fix build w/ kernel headers 5.10.4

---
 srcpkgs/lwipv6/patches/linux-headers-5.10.patch | 10 ++++++++++
 1 file changed, 10 insertions(+)
 create mode 100644 srcpkgs/lwipv6/patches/linux-headers-5.10.patch

diff --git a/srcpkgs/lwipv6/patches/linux-headers-5.10.patch b/srcpkgs/lwipv6/patches/linux-headers-5.10.patch
new file mode 100644
index 000000000000..93213d101264
--- /dev/null
+++ b/srcpkgs/lwipv6/patches/linux-headers-5.10.patch
@@ -0,0 +1,10 @@
+--- lwip-v6/src/include/lwip/sockets.h
++++ lwip-v6/src/include/lwip/sockets.h
+@@ -58,6 +58,7 @@
+ #include <netinet/in.h>
+ #include <sys/ioctl.h>
+ #include <net/if_arp.h>
++#include <linux/sockios.h>
+ 
+ #include "lwip/ip_addr.h"
+ #if 0

From 6dbab21fdba29da1f523ba1bfdbbdb75e8eaa98c Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Mon, 18 Jan 2021 23:20:52 +0100
Subject: [PATCH 0068/3482] chromium: boop

rebuild with time64 syscalls allowed in seccomp, so that i686
can work after glibc 2.32 update is done - rebuild ahead of time
so we have less to do later
---
 srcpkgs/chromium/patches/time64.patch | 51 +++++++++++++++++++++++++++
 srcpkgs/chromium/template             |  2 +-
 2 files changed, 52 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/chromium/patches/time64.patch

diff --git a/srcpkgs/chromium/patches/time64.patch b/srcpkgs/chromium/patches/time64.patch
new file mode 100644
index 000000000000..b1ad93590033
--- /dev/null
+++ b/srcpkgs/chromium/patches/time64.patch
@@ -0,0 +1,51 @@
+Description: allow sandboxed code to call gettime64
+ Add __NR_clock_gettime64 and __NR_clock_nanosleep_time64 to syscall whitelist
+ and clock selection parameter filtering code.
+
+ Add __NR_utimensat_time64 to syscall whitelist
+
+ Conditionalise additions on the new calls existing, because they do not exist
+ on 64-bit architectures.
+Author: Peter Michael Green <plugwash@raspbian.org>
+
+Index: chromium-83.0.4103.116/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc
+===================================================================
+--- sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc
++++ sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc
+@@ -148,7 +148,11 @@ ResultExpr EvaluateSyscallImpl(int fs_de
+     return Allow();
+ #endif
+ 
++#ifdef __NR_clock_gettime64
++  if (sysno == __NR_clock_gettime || sysno == __NR_clock_gettime64 || sysno == __NR_clock_nanosleep || sysno == __NR_clock_nanosleep_time64) {
++#else
+   if (sysno == __NR_clock_gettime || sysno == __NR_clock_nanosleep) {
++#endif
+     return RestrictClockID();
+   }
+ 
+Index: chromium-83.0.4103.116/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc
+===================================================================
+--- sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc
++++ sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc
+@@ -38,6 +38,10 @@ bool SyscallSets::IsAllowedGettime(int s
+     case __NR_clock_getres:     // Allowed only on Android with parameters
+                                 // filtered by RestrictClokID().
+     case __NR_clock_gettime:    // Parameters filtered by RestrictClockID().
++#ifdef __NR_clock_gettime64
++    case __NR_clock_gettime64:    // Parameters filtered by RestrictClockID().
++    case __NR_clock_nanosleep_time64:  // Parameters filtered by RestrictClockID().
++#endif
+     case __NR_clock_nanosleep:  // Parameters filtered by RestrictClockID().
+     case __NR_clock_settime:    // Privileged.
+ #if defined(__i386__) || \
+@@ -159,6 +163,9 @@ bool SyscallSets::IsFileSystem(int sysno
+     case __NR_utime:
+ #endif
+     case __NR_utimensat:  // New.
++#ifdef __NR_utimensat_time64
++    case __NR_utimensat_time64:
++#endif
+       return true;
+     default:
+       return false;
diff --git a/srcpkgs/chromium/template b/srcpkgs/chromium/template
index 5e4d8129e5da..6a8ec3827dd9 100644
--- a/srcpkgs/chromium/template
+++ b/srcpkgs/chromium/template
@@ -2,7 +2,7 @@
 pkgname=chromium
 # See http://www.chromium.org/developers/calendar for the latest version
 version=87.0.4280.141
-revision=1
+revision=2
 archs="i686* x86_64* aarch64* armv7l* ppc64le*"
 short_desc="Google's attempt at creating a safer, faster, and more stable browser"
 maintainer="Enno Boland <gottox@voidlinux.org>"

From 9b7f5593d7849ce9e2d2b7bb7d2959e4d2842c85 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?J=C3=BCrgen=20Buchm=C3=BCller?= <pullmoll@t-online.de>
Date: Tue, 19 Jan 2021 01:03:58 +0100
Subject: [PATCH 0069/3482] imagescan: fix build

---
 srcpkgs/imagescan/patches/fix-iostream.patch | 20 ++++++++++++++++++++
 1 file changed, 20 insertions(+)
 create mode 100644 srcpkgs/imagescan/patches/fix-iostream.patch

diff --git a/srcpkgs/imagescan/patches/fix-iostream.patch b/srcpkgs/imagescan/patches/fix-iostream.patch
new file mode 100644
index 000000000000..b05f5f70bd63
--- /dev/null
+++ b/srcpkgs/imagescan/patches/fix-iostream.patch
@@ -0,0 +1,20 @@
+--- utsushi/string.hpp	2019-04-02 02:01:37.000000000 +0200
++++ utsushi/string.hpp	2021-01-19 00:58:03.102000070 +0100
+@@ -23,6 +23,7 @@
+ 
+ #include <iosfwd>
++#include <iostream>
+ #include <string>
+ 
+ #include <boost/operators.hpp>
+ 
+--- utsushi/toggle.hpp	2019-04-02 02:01:36.000000000 +0200
++++ utsushi/toggle.hpp	2021-01-19 01:00:34.884821885 +0100
+@@ -22,6 +22,7 @@
+ #define utsushi_toggle_hpp_
+ 
+ #include <iosfwd>
++#include <iostream>
+ #include <boost/operators.hpp>
+ 
+ namespace utsushi {

From c1fa4b434d2cd22351ef77aac7dfce9f2994e042 Mon Sep 17 00:00:00 2001
From: Andrew Benson <abenson@gmail.com>
Date: Mon, 11 Jan 2021 17:40:16 -0600
Subject: [PATCH 0070/3482] linux5.10: enable SATA link power management

---
 srcpkgs/linux5.10/files/i386-dotconfig    | 2 +-
 srcpkgs/linux5.10/files/ppc64-dotconfig   | 2 +-
 srcpkgs/linux5.10/files/ppc64le-dotconfig | 2 +-
 srcpkgs/linux5.10/files/x86_64-dotconfig  | 2 +-
 4 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/linux5.10/files/i386-dotconfig b/srcpkgs/linux5.10/files/i386-dotconfig
index b04c4328e372..abe232b5ccad 100644
--- a/srcpkgs/linux5.10/files/i386-dotconfig
+++ b/srcpkgs/linux5.10/files/i386-dotconfig
@@ -2523,7 +2523,7 @@ CONFIG_SATA_PMP=y
 # Controllers with non-SFF native interface
 #
 CONFIG_SATA_AHCI=m
-CONFIG_SATA_MOBILE_LPM_POLICY=0
+CONFIG_SATA_MOBILE_LPM_POLICY=3
 CONFIG_SATA_AHCI_PLATFORM=m
 CONFIG_SATA_INIC162X=m
 CONFIG_SATA_ACARD_AHCI=m
diff --git a/srcpkgs/linux5.10/files/ppc64-dotconfig b/srcpkgs/linux5.10/files/ppc64-dotconfig
index 3aa41f8121a0..0a5ee22c5398 100644
--- a/srcpkgs/linux5.10/files/ppc64-dotconfig
+++ b/srcpkgs/linux5.10/files/ppc64-dotconfig
@@ -2529,7 +2529,7 @@ CONFIG_SATA_PMP=y
 # Controllers with non-SFF native interface
 #
 CONFIG_SATA_AHCI=m
-CONFIG_SATA_MOBILE_LPM_POLICY=0
+CONFIG_SATA_MOBILE_LPM_POLICY=3
 CONFIG_SATA_AHCI_PLATFORM=m
 CONFIG_AHCI_CEVA=m
 CONFIG_AHCI_QORIQ=m
diff --git a/srcpkgs/linux5.10/files/ppc64le-dotconfig b/srcpkgs/linux5.10/files/ppc64le-dotconfig
index 7514a38b0cbc..1397fe1b7763 100644
--- a/srcpkgs/linux5.10/files/ppc64le-dotconfig
+++ b/srcpkgs/linux5.10/files/ppc64le-dotconfig
@@ -2424,7 +2424,7 @@ CONFIG_SATA_PMP=y
 # Controllers with non-SFF native interface
 #
 CONFIG_SATA_AHCI=m
-CONFIG_SATA_MOBILE_LPM_POLICY=0
+CONFIG_SATA_MOBILE_LPM_POLICY=3
 CONFIG_SATA_AHCI_PLATFORM=m
 CONFIG_AHCI_CEVA=m
 CONFIG_AHCI_QORIQ=m
diff --git a/srcpkgs/linux5.10/files/x86_64-dotconfig b/srcpkgs/linux5.10/files/x86_64-dotconfig
index eaa3378c6415..cb83e9152281 100644
--- a/srcpkgs/linux5.10/files/x86_64-dotconfig
+++ b/srcpkgs/linux5.10/files/x86_64-dotconfig
@@ -2585,7 +2585,7 @@ CONFIG_SATA_PMP=y
 # Controllers with non-SFF native interface
 #
 CONFIG_SATA_AHCI=m
-CONFIG_SATA_MOBILE_LPM_POLICY=0
+CONFIG_SATA_MOBILE_LPM_POLICY=3
 CONFIG_SATA_AHCI_PLATFORM=m
 CONFIG_SATA_INIC162X=m
 CONFIG_SATA_ACARD_AHCI=m

From efff4abe82da3145100ba4f2983217c49ac18099 Mon Sep 17 00:00:00 2001
From: Andrew Benson <abenson@gmail.com>
Date: Mon, 11 Jan 2021 17:40:17 -0600
Subject: [PATCH 0071/3482] linux5.4: enable SATA Link power management

---
 srcpkgs/linux5.4/files/i386-dotconfig    | 2 +-
 srcpkgs/linux5.4/files/ppc64-dotconfig   | 2 +-
 srcpkgs/linux5.4/files/ppc64le-dotconfig | 2 +-
 srcpkgs/linux5.4/files/x86_64-dotconfig  | 2 +-
 4 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/linux5.4/files/i386-dotconfig b/srcpkgs/linux5.4/files/i386-dotconfig
index 9a9eb45517ad..f27f8a8177f9 100644
--- a/srcpkgs/linux5.4/files/i386-dotconfig
+++ b/srcpkgs/linux5.4/files/i386-dotconfig
@@ -2463,7 +2463,7 @@ CONFIG_SATA_PMP=y
 # Controllers with non-SFF native interface
 #
 CONFIG_SATA_AHCI=m
-CONFIG_SATA_MOBILE_LPM_POLICY=0
+CONFIG_SATA_MOBILE_LPM_POLICY=3
 CONFIG_SATA_AHCI_PLATFORM=m
 CONFIG_SATA_INIC162X=m
 CONFIG_SATA_ACARD_AHCI=m
diff --git a/srcpkgs/linux5.4/files/ppc64-dotconfig b/srcpkgs/linux5.4/files/ppc64-dotconfig
index b70e72966ccd..1da6642caee8 100644
--- a/srcpkgs/linux5.4/files/ppc64-dotconfig
+++ b/srcpkgs/linux5.4/files/ppc64-dotconfig
@@ -2468,7 +2468,7 @@ CONFIG_SATA_PMP=y
 # Controllers with non-SFF native interface
 #
 CONFIG_SATA_AHCI=m
-CONFIG_SATA_MOBILE_LPM_POLICY=0
+CONFIG_SATA_MOBILE_LPM_POLICY=3
 CONFIG_SATA_AHCI_PLATFORM=m
 CONFIG_AHCI_CEVA=m
 CONFIG_AHCI_QORIQ=m
diff --git a/srcpkgs/linux5.4/files/ppc64le-dotconfig b/srcpkgs/linux5.4/files/ppc64le-dotconfig
index 0e52fd5c5b1c..97d31795f388 100644
--- a/srcpkgs/linux5.4/files/ppc64le-dotconfig
+++ b/srcpkgs/linux5.4/files/ppc64le-dotconfig
@@ -2366,7 +2366,7 @@ CONFIG_SATA_PMP=y
 # Controllers with non-SFF native interface
 #
 CONFIG_SATA_AHCI=m
-CONFIG_SATA_MOBILE_LPM_POLICY=0
+CONFIG_SATA_MOBILE_LPM_POLICY=3
 CONFIG_SATA_AHCI_PLATFORM=m
 CONFIG_AHCI_CEVA=m
 CONFIG_AHCI_QORIQ=m
diff --git a/srcpkgs/linux5.4/files/x86_64-dotconfig b/srcpkgs/linux5.4/files/x86_64-dotconfig
index a7a13f3f5714..388d37462b44 100644
--- a/srcpkgs/linux5.4/files/x86_64-dotconfig
+++ b/srcpkgs/linux5.4/files/x86_64-dotconfig
@@ -2524,7 +2524,7 @@ CONFIG_SATA_PMP=y
 # Controllers with non-SFF native interface
 #
 CONFIG_SATA_AHCI=m
-CONFIG_SATA_MOBILE_LPM_POLICY=0
+CONFIG_SATA_MOBILE_LPM_POLICY=3
 CONFIG_SATA_AHCI_PLATFORM=m
 CONFIG_SATA_INIC162X=m
 CONFIG_SATA_ACARD_AHCI=m

From 628abe5541650e7948da26f08d5f72f65f155e6c Mon Sep 17 00:00:00 2001
From: Andrew Benson <abenson@gmail.com>
Date: Mon, 11 Jan 2021 17:40:17 -0600
Subject: [PATCH 0072/3482] linux4.19: enable SATA Link power management

---
 srcpkgs/linux4.19/files/i386-dotconfig    | 2 +-
 srcpkgs/linux4.19/files/ppc64-dotconfig   | 2 +-
 srcpkgs/linux4.19/files/ppc64le-dotconfig | 2 +-
 srcpkgs/linux4.19/files/x86_64-dotconfig  | 2 +-
 4 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/linux4.19/files/i386-dotconfig b/srcpkgs/linux4.19/files/i386-dotconfig
index a2d2aeda971f..cf8aedad932a 100644
--- a/srcpkgs/linux4.19/files/i386-dotconfig
+++ b/srcpkgs/linux4.19/files/i386-dotconfig
@@ -2302,7 +2302,7 @@ CONFIG_SATA_PMP=y
 # Controllers with non-SFF native interface
 #
 CONFIG_SATA_AHCI=m
-CONFIG_SATA_MOBILE_LPM_POLICY=0
+CONFIG_SATA_MOBILE_LPM_POLICY=3
 CONFIG_SATA_AHCI_PLATFORM=m
 CONFIG_SATA_INIC162X=m
 CONFIG_SATA_ACARD_AHCI=m
diff --git a/srcpkgs/linux4.19/files/ppc64-dotconfig b/srcpkgs/linux4.19/files/ppc64-dotconfig
index 9f0935511005..e127c7a2fe02 100644
--- a/srcpkgs/linux4.19/files/ppc64-dotconfig
+++ b/srcpkgs/linux4.19/files/ppc64-dotconfig
@@ -2317,7 +2317,7 @@ CONFIG_SATA_PMP=y
 # Controllers with non-SFF native interface
 #
 CONFIG_SATA_AHCI=m
-CONFIG_SATA_MOBILE_LPM_POLICY=0
+CONFIG_SATA_MOBILE_LPM_POLICY=3
 CONFIG_SATA_AHCI_PLATFORM=m
 CONFIG_AHCI_CEVA=m
 CONFIG_AHCI_QORIQ=m
diff --git a/srcpkgs/linux4.19/files/ppc64le-dotconfig b/srcpkgs/linux4.19/files/ppc64le-dotconfig
index 07cd1962d4a4..684e0980c4a2 100644
--- a/srcpkgs/linux4.19/files/ppc64le-dotconfig
+++ b/srcpkgs/linux4.19/files/ppc64le-dotconfig
@@ -2223,7 +2223,7 @@ CONFIG_SATA_PMP=y
 # Controllers with non-SFF native interface
 #
 CONFIG_SATA_AHCI=m
-CONFIG_SATA_MOBILE_LPM_POLICY=0
+CONFIG_SATA_MOBILE_LPM_POLICY=3
 CONFIG_SATA_AHCI_PLATFORM=m
 CONFIG_AHCI_CEVA=m
 CONFIG_AHCI_QORIQ=m
diff --git a/srcpkgs/linux4.19/files/x86_64-dotconfig b/srcpkgs/linux4.19/files/x86_64-dotconfig
index fc9b08cceb38..3705b028eb58 100644
--- a/srcpkgs/linux4.19/files/x86_64-dotconfig
+++ b/srcpkgs/linux4.19/files/x86_64-dotconfig
@@ -2359,7 +2359,7 @@ CONFIG_SATA_PMP=y
 # Controllers with non-SFF native interface
 #
 CONFIG_SATA_AHCI=m
-CONFIG_SATA_MOBILE_LPM_POLICY=0
+CONFIG_SATA_MOBILE_LPM_POLICY=3
 CONFIG_SATA_AHCI_PLATFORM=m
 CONFIG_SATA_INIC162X=m
 CONFIG_SATA_ACARD_AHCI=m

From 196a3bba255bd37f47cb736548ea25b65f4954cb Mon Sep 17 00:00:00 2001
From: Andrew Benson <abenson+void@gmail.com>
Date: Thu, 14 Jan 2021 20:35:12 -0600
Subject: [PATCH 0073/3482] linux5.10: enable ASPM for PCIe

---
 srcpkgs/linux5.10/files/i386-dotconfig   | 4 ++--
 srcpkgs/linux5.10/files/x86_64-dotconfig | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/linux5.10/files/i386-dotconfig b/srcpkgs/linux5.10/files/i386-dotconfig
index abe232b5ccad..996cf947ea4a 100644
--- a/srcpkgs/linux5.10/files/i386-dotconfig
+++ b/srcpkgs/linux5.10/files/i386-dotconfig
@@ -1928,10 +1928,10 @@ CONFIG_PCIEAER=y
 CONFIG_PCIEAER_INJECT=m
 # CONFIG_PCIE_ECRC is not set
 CONFIG_PCIEASPM=y
-# CONFIG_PCIEASPM_DEFAULT is not set
+CONFIG_PCIEASPM_DEFAULT=y
 # CONFIG_PCIEASPM_POWERSAVE is not set
 # CONFIG_PCIEASPM_POWER_SUPERSAVE is not set
-CONFIG_PCIEASPM_PERFORMANCE=y
+# CONFIG_PCIEASPM_PERFORMANCE is not set
 CONFIG_PCIE_PME=y
 # CONFIG_PCIE_DPC is not set
 # CONFIG_PCIE_PTM is not set
diff --git a/srcpkgs/linux5.10/files/x86_64-dotconfig b/srcpkgs/linux5.10/files/x86_64-dotconfig
index cb83e9152281..bbd136a1b1e3 100644
--- a/srcpkgs/linux5.10/files/x86_64-dotconfig
+++ b/srcpkgs/linux5.10/files/x86_64-dotconfig
@@ -1985,10 +1985,10 @@ CONFIG_PCIEAER=y
 CONFIG_PCIEAER_INJECT=m
 # CONFIG_PCIE_ECRC is not set
 CONFIG_PCIEASPM=y
-# CONFIG_PCIEASPM_DEFAULT is not set
+CONFIG_PCIEASPM_DEFAULT=y
 # CONFIG_PCIEASPM_POWERSAVE is not set
 # CONFIG_PCIEASPM_POWER_SUPERSAVE is not set
-CONFIG_PCIEASPM_PERFORMANCE=y
+# CONFIG_PCIEASPM_PERFORMANCE is not set
 CONFIG_PCIE_PME=y
 # CONFIG_PCIE_DPC is not set
 # CONFIG_PCIE_PTM is not set

From 03f786c8786e13985ddbd36896a2ed11776d184b Mon Sep 17 00:00:00 2001
From: Andrew Benson <abenson+void@gmail.com>
Date: Thu, 14 Jan 2021 20:35:20 -0600
Subject: [PATCH 0074/3482] linux4.9: enable ASPM for PCIe

---
 srcpkgs/linux4.9/files/i386-dotconfig   | 4 ++--
 srcpkgs/linux4.9/files/x86_64-dotconfig | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/linux4.9/files/i386-dotconfig b/srcpkgs/linux4.9/files/i386-dotconfig
index ba7448d2e767..d04e07d1afe7 100644
--- a/srcpkgs/linux4.9/files/i386-dotconfig
+++ b/srcpkgs/linux4.9/files/i386-dotconfig
@@ -746,9 +746,9 @@ CONFIG_PCIEAER=y
 CONFIG_PCIEAER_INJECT=m
 CONFIG_PCIEASPM=y
 # CONFIG_PCIEASPM_DEBUG is not set
-# CONFIG_PCIEASPM_DEFAULT is not set
+CONFIG_PCIEASPM_DEFAULT=y
 # CONFIG_PCIEASPM_POWERSAVE is not set
-CONFIG_PCIEASPM_PERFORMANCE=y
+# CONFIG_PCIEASPM_PERFORMANCE is not set
 CONFIG_PCIE_PME=y
 # CONFIG_PCIE_DPC is not set
 # CONFIG_PCIE_PTM is not set
diff --git a/srcpkgs/linux4.9/files/x86_64-dotconfig b/srcpkgs/linux4.9/files/x86_64-dotconfig
index f82bfbac3cc9..3ac7fb403d7d 100644
--- a/srcpkgs/linux4.9/files/x86_64-dotconfig
+++ b/srcpkgs/linux4.9/files/x86_64-dotconfig
@@ -762,9 +762,9 @@ CONFIG_PCIEAER=y
 CONFIG_PCIEAER_INJECT=m
 CONFIG_PCIEASPM=y
 # CONFIG_PCIEASPM_DEBUG is not set
-# CONFIG_PCIEASPM_DEFAULT is not set
+CONFIG_PCIEASPM_DEFAULT=y
 # CONFIG_PCIEASPM_POWERSAVE is not set
-CONFIG_PCIEASPM_PERFORMANCE=y
+# CONFIG_PCIEASPM_PERFORMANCE is not set
 CONFIG_PCIE_PME=y
 # CONFIG_PCIE_DPC is not set
 # CONFIG_PCIE_PTM is not set

From cec079e14aaadcd4a916623697aee0f8118d92a9 Mon Sep 17 00:00:00 2001
From: Andrew Benson <abenson+void@gmail.com>
Date: Thu, 14 Jan 2021 20:35:29 -0600
Subject: [PATCH 0075/3482] linux4.14: enable ASPM for PCIe

---
 srcpkgs/linux4.14/files/i386-dotconfig   | 4 ++--
 srcpkgs/linux4.14/files/x86_64-dotconfig | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/linux4.14/files/i386-dotconfig b/srcpkgs/linux4.14/files/i386-dotconfig
index 7e8b77072726..9fcc0839e9da 100644
--- a/srcpkgs/linux4.14/files/i386-dotconfig
+++ b/srcpkgs/linux4.14/files/i386-dotconfig
@@ -794,10 +794,10 @@ CONFIG_PCIEAER=y
 CONFIG_PCIEAER_INJECT=m
 CONFIG_PCIEASPM=y
 # CONFIG_PCIEASPM_DEBUG is not set
-# CONFIG_PCIEASPM_DEFAULT is not set
+CONFIG_PCIEASPM_DEFAULT=y
 # CONFIG_PCIEASPM_POWERSAVE is not set
 # CONFIG_PCIEASPM_POWER_SUPERSAVE is not set
-CONFIG_PCIEASPM_PERFORMANCE=y
+# CONFIG_PCIEASPM_PERFORMANCE is not set
 CONFIG_PCIE_PME=y
 # CONFIG_PCIE_DPC is not set
 # CONFIG_PCIE_PTM is not set
diff --git a/srcpkgs/linux4.14/files/x86_64-dotconfig b/srcpkgs/linux4.14/files/x86_64-dotconfig
index f2198cadf0ce..d0a943589a64 100644
--- a/srcpkgs/linux4.14/files/x86_64-dotconfig
+++ b/srcpkgs/linux4.14/files/x86_64-dotconfig
@@ -821,10 +821,10 @@ CONFIG_PCIEAER=y
 CONFIG_PCIEAER_INJECT=m
 CONFIG_PCIEASPM=y
 # CONFIG_PCIEASPM_DEBUG is not set
-# CONFIG_PCIEASPM_DEFAULT is not set
+CONFIG_PCIEASPM_DEFAULT=y
 # CONFIG_PCIEASPM_POWERSAVE is not set
 # CONFIG_PCIEASPM_POWER_SUPERSAVE is not set
-CONFIG_PCIEASPM_PERFORMANCE=y
+# CONFIG_PCIEASPM_PERFORMANCE is not set
 CONFIG_PCIE_PME=y
 # CONFIG_PCIE_DPC is not set
 # CONFIG_PCIE_PTM is not set

From 5bf180b6c18ba53d0d1b451c319dd16a6ca38393 Mon Sep 17 00:00:00 2001
From: Andrew Benson <abenson+void@gmail.com>
Date: Thu, 14 Jan 2021 20:35:50 -0600
Subject: [PATCH 0076/3482] linux5.4: enable ASPM for PCIe

---
 srcpkgs/linux5.4/files/i386-dotconfig   | 4 ++--
 srcpkgs/linux5.4/files/x86_64-dotconfig | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/linux5.4/files/i386-dotconfig b/srcpkgs/linux5.4/files/i386-dotconfig
index f27f8a8177f9..51445aa49688 100644
--- a/srcpkgs/linux5.4/files/i386-dotconfig
+++ b/srcpkgs/linux5.4/files/i386-dotconfig
@@ -1862,10 +1862,10 @@ CONFIG_PCIEAER_INJECT=m
 # CONFIG_PCIE_ECRC is not set
 CONFIG_PCIEASPM=y
 # CONFIG_PCIEASPM_DEBUG is not set
-# CONFIG_PCIEASPM_DEFAULT is not set
+CONFIG_PCIEASPM_DEFAULT=y
 # CONFIG_PCIEASPM_POWERSAVE is not set
 # CONFIG_PCIEASPM_POWER_SUPERSAVE is not set
-CONFIG_PCIEASPM_PERFORMANCE=y
+# CONFIG_PCIEASPM_PERFORMANCE is not set
 CONFIG_PCIE_PME=y
 # CONFIG_PCIE_DPC is not set
 # CONFIG_PCIE_PTM is not set
diff --git a/srcpkgs/linux5.4/files/x86_64-dotconfig b/srcpkgs/linux5.4/files/x86_64-dotconfig
index 388d37462b44..5b30546a8d62 100644
--- a/srcpkgs/linux5.4/files/x86_64-dotconfig
+++ b/srcpkgs/linux5.4/files/x86_64-dotconfig
@@ -1913,10 +1913,10 @@ CONFIG_PCIEAER_INJECT=m
 # CONFIG_PCIE_ECRC is not set
 CONFIG_PCIEASPM=y
 # CONFIG_PCIEASPM_DEBUG is not set
-# CONFIG_PCIEASPM_DEFAULT is not set
+CONFIG_PCIEASPM_DEFAULT=y
 # CONFIG_PCIEASPM_POWERSAVE is not set
 # CONFIG_PCIEASPM_POWER_SUPERSAVE is not set
-CONFIG_PCIEASPM_PERFORMANCE=y
+# CONFIG_PCIEASPM_PERFORMANCE is not set
 CONFIG_PCIE_PME=y
 # CONFIG_PCIE_DPC is not set
 # CONFIG_PCIE_PTM is not set

From d3367e6f66fee4c9e3640990b0e3b1cb1a1f745c Mon Sep 17 00:00:00 2001
From: Andrew Benson <abenson+void@gmail.com>
Date: Thu, 14 Jan 2021 20:35:57 -0600
Subject: [PATCH 0077/3482] linux4.4: enable ASPM for PCIe

---
 srcpkgs/linux4.4/files/i386-dotconfig   | 4 ++--
 srcpkgs/linux4.4/files/x86_64-dotconfig | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/linux4.4/files/i386-dotconfig b/srcpkgs/linux4.4/files/i386-dotconfig
index ee1aa07f4914..e76c4d02c59a 100644
--- a/srcpkgs/linux4.4/files/i386-dotconfig
+++ b/srcpkgs/linux4.4/files/i386-dotconfig
@@ -695,9 +695,9 @@ CONFIG_PCIEAER=y
 CONFIG_PCIEAER_INJECT=m
 CONFIG_PCIEASPM=y
 # CONFIG_PCIEASPM_DEBUG is not set
-# CONFIG_PCIEASPM_DEFAULT is not set
+CONFIG_PCIEASPM_DEFAULT=y
 # CONFIG_PCIEASPM_POWERSAVE is not set
-CONFIG_PCIEASPM_PERFORMANCE=y
+# CONFIG_PCIEASPM_PERFORMANCE is not set
 CONFIG_PCIE_PME=y
 CONFIG_PCI_MSI=y
 CONFIG_PCI_MSI_IRQ_DOMAIN=y
diff --git a/srcpkgs/linux4.4/files/x86_64-dotconfig b/srcpkgs/linux4.4/files/x86_64-dotconfig
index 894788a3f974..3c64f6463b28 100644
--- a/srcpkgs/linux4.4/files/x86_64-dotconfig
+++ b/srcpkgs/linux4.4/files/x86_64-dotconfig
@@ -709,9 +709,9 @@ CONFIG_PCIEAER=y
 CONFIG_PCIEAER_INJECT=m
 CONFIG_PCIEASPM=y
 # CONFIG_PCIEASPM_DEBUG is not set
-# CONFIG_PCIEASPM_DEFAULT is not set
+CONFIG_PCIEASPM_DEFAULT=y
 # CONFIG_PCIEASPM_POWERSAVE is not set
-CONFIG_PCIEASPM_PERFORMANCE=y
+# CONFIG_PCIEASPM_PERFORMANCE is not set
 CONFIG_PCIE_PME=y
 CONFIG_PCI_BUS_ADDR_T_64BIT=y
 CONFIG_PCI_MSI=y

From cee91f6180faefc81afab620ac29c92cc9fe7f85 Mon Sep 17 00:00:00 2001
From: Andrew Benson <abenson+void@gmail.com>
Date: Thu, 14 Jan 2021 20:36:06 -0600
Subject: [PATCH 0078/3482] linux4.19: enable ASPM for PCIe

---
 srcpkgs/linux4.19/files/i386-dotconfig   | 4 ++--
 srcpkgs/linux4.19/files/x86_64-dotconfig | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/linux4.19/files/i386-dotconfig b/srcpkgs/linux4.19/files/i386-dotconfig
index cf8aedad932a..728539f4419d 100644
--- a/srcpkgs/linux4.19/files/i386-dotconfig
+++ b/srcpkgs/linux4.19/files/i386-dotconfig
@@ -579,10 +579,10 @@ CONFIG_PCIEAER_INJECT=m
 # CONFIG_PCIE_ECRC is not set
 CONFIG_PCIEASPM=y
 # CONFIG_PCIEASPM_DEBUG is not set
-# CONFIG_PCIEASPM_DEFAULT is not set
+CONFIG_PCIEASPM_DEFAULT=y
 # CONFIG_PCIEASPM_POWERSAVE is not set
 # CONFIG_PCIEASPM_POWER_SUPERSAVE is not set
-CONFIG_PCIEASPM_PERFORMANCE=y
+# CONFIG_PCIEASPM_PERFORMANCE is not set
 CONFIG_PCIE_PME=y
 # CONFIG_PCIE_DPC is not set
 # CONFIG_PCIE_PTM is not set
diff --git a/srcpkgs/linux4.19/files/x86_64-dotconfig b/srcpkgs/linux4.19/files/x86_64-dotconfig
index 3705b028eb58..bfe6e2ef45b1 100644
--- a/srcpkgs/linux4.19/files/x86_64-dotconfig
+++ b/srcpkgs/linux4.19/files/x86_64-dotconfig
@@ -587,9 +587,9 @@ CONFIG_PCIEAER_INJECT=m
 CONFIG_PCIEASPM=y
 # CONFIG_PCIEASPM_DEBUG is not set
 # CONFIG_PCIEASPM_DEFAULT is not set
-# CONFIG_PCIEASPM_POWERSAVE is not set
+CONFIG_PCIEASPM_POWERSAVE=y
 # CONFIG_PCIEASPM_POWER_SUPERSAVE is not set
-CONFIG_PCIEASPM_PERFORMANCE=y
+# CONFIG_PCIEASPM_PERFORMANCE is not set
 CONFIG_PCIE_PME=y
 # CONFIG_PCIE_DPC is not set
 # CONFIG_PCIE_PTM is not set

From 4d6216abc2e6985f2fbe92574f653f750c099e7d Mon Sep 17 00:00:00 2001
From: Anshul Sirur <anshul@vixus0.dev>
Date: Mon, 18 Jan 2021 14:24:52 +0100
Subject: [PATCH 0079/3482] github-cli: fix setting build version and date

---
 srcpkgs/github-cli/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/github-cli/template b/srcpkgs/github-cli/template
index e65f708957ea..59500d045881 100644
--- a/srcpkgs/github-cli/template
+++ b/srcpkgs/github-cli/template
@@ -1,12 +1,12 @@
 # Template file for 'github-cli'
 pkgname=github-cli
 version=1.4.0
-revision=1
+revision=2
 wrksrc="cli-${version}"
 build_style=go
 build_helper=qemu
 go_import_path="github.com/cli/cli/cmd/gh"
-go_ldflags="-X github.com/cli/cli/command.Version=v${version}"
+go_ldflags="-X github.com/cli/cli/internal/build.Version=v${version}"
 short_desc="GitHub CLI tool"
 maintainer="shizonic <realtiaz@gmail.com>"
 license="MIT"
@@ -19,7 +19,7 @@ pre_build() {
 	local _date
 	if [ "$SOURCE_DATE_EPOCH" ]; then
 		_date="$(date --utc --date "@$SOURCE_DATE_EPOCH" "+%Y-%m-%d")"
-		go_ldflags="$go_ldflags -X github.com/cli/cli/command.BuildDate=${_date}"
+		go_ldflags="$go_ldflags -X github.com/cli/cli/internal/build.Date=${_date}"
 	fi
 }
 

From 465c515ab1a3f7d1c6d60940b3e6f9f8d463fa9a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Mon, 18 Jan 2021 19:26:10 +0700
Subject: [PATCH 0080/3482] gosu: fix build with gcc-10

---
 srcpkgs/gosu/patches/stdexcept.patch | 120 +++++++++++++++++++++++++++
 1 file changed, 120 insertions(+)
 create mode 100644 srcpkgs/gosu/patches/stdexcept.patch

diff --git a/srcpkgs/gosu/patches/stdexcept.patch b/srcpkgs/gosu/patches/stdexcept.patch
new file mode 100644
index 000000000000..f865b18de154
--- /dev/null
+++ b/srcpkgs/gosu/patches/stdexcept.patch
@@ -0,0 +1,120 @@
+diff --git src/DrawOpQueue.hpp src/DrawOpQueue.hpp
+index 3a463ce..b06515f 100644
+--- src/DrawOpQueue.hpp
++++ src/DrawOpQueue.hpp
+@@ -10,6 +10,7 @@
+ #include <functional>
+ #include <map>
+ #include <vector>
++#include <stdexcept>
+ 
+ class Gosu::DrawOpQueue
+ {
+diff --git src/Font.cpp src/Font.cpp
+index b2c0152..5bcacad 100644
+--- src/Font.cpp
++++ src/Font.cpp
+@@ -10,6 +10,7 @@
+ #include <array>
+ #include <cassert>
+ #include <map>
++#include <stdexcept>
+ using namespace std;
+ 
+ static const int FONT_RENDER_SCALE = 2;
+diff --git src/Graphics.cpp src/Graphics.cpp
+index 0028269..db03fb2 100644
+--- src/Graphics.cpp
++++ src/Graphics.cpp
+@@ -13,6 +13,7 @@
+ #include <algorithm>
+ #include <functional>
+ #include <memory>
++#include <stdexcept>
+ using namespace std;
+ 
+ namespace Gosu
+diff --git src/LargeImageData.cpp src/LargeImageData.cpp
+index c0cbe0d..568a126 100644
+--- src/LargeImageData.cpp
++++ src/LargeImageData.cpp
+@@ -3,6 +3,7 @@
+ #include <Gosu/Graphics.hpp>
+ #include <Gosu/Math.hpp>
+ #include <cmath>
++#include <stdexcept>
+ using namespace std;
+ 
+ Gosu::LargeImageData::LargeImageData(const Bitmap& source, int tile_width, int tile_height,
+diff --git src/OffScreenTarget.cpp src/OffScreenTarget.cpp
+index 7044777..0ec7625 100644
+--- src/OffScreenTarget.cpp
++++ src/OffScreenTarget.cpp
+@@ -5,6 +5,7 @@
+ #ifndef GOSU_IS_IPHONE
+ #include <SDL.h>
+ #endif
++#include <stdexcept>
+ using namespace std;
+ 
+ #ifdef GOSU_IS_OPENGLES
+diff --git src/RubyGosu.cxx src/RubyGosu.cxx
+index 1825875..ae66a71 100644
+--- src/RubyGosu.cxx
++++ src/RubyGosu.cxx
+@@ -17,6 +17,7 @@
+ 
+ 
+ #ifdef __cplusplus
++#include <stdexcept>
+ /* SwigValueWrapper is described in swig.swg */
+ template<typename T> class SwigValueWrapper {
+   struct SwigMovePointer {
+diff --git src/SndFile.hpp src/SndFile.hpp
+index 11e06c1..df17785 100644
+--- src/SndFile.hpp
++++ src/SndFile.hpp
+@@ -9,6 +9,7 @@
+ #define NOMINMAX
+ #include <windows.h>
+ #endif
++#include <stdexcept>
+ 
+ namespace Gosu
+ {
+diff --git src/Text.cpp src/Text.cpp
+index 3641fad..f874b03 100644
+--- src/Text.cpp
++++ src/Text.cpp
+@@ -7,6 +7,7 @@
+ #include <cmath>
+ #include <algorithm>
+ #include <vector>
++#include <stdexcept>
+ using namespace std;
+ 
+ double Gosu::text_width(const u32string& text,
+diff --git src/TrueTypeFont.cpp src/TrueTypeFont.cpp
+index e891015..40ed6b6 100644
+--- src/TrueTypeFont.cpp
++++ src/TrueTypeFont.cpp
+@@ -17,6 +17,7 @@
+ 
+ #include <algorithm>
+ #include <map>
++#include <stdexcept>
+ using namespace std;
+ 
+ struct Gosu::TrueTypeFont::Impl
+diff --git src/WindowUIKit.cpp src/WindowUIKit.cpp
+index fc5060c..14ea73f 100644
+--- src/WindowUIKit.cpp
++++ src/WindowUIKit.cpp
+@@ -3,6 +3,7 @@
+ 
+ #include "GosuViewController.hpp"
+ #include <Gosu/Gosu.hpp>
++#include <stdexcept>
+ 
+ using namespace std;
+ 

From da7eaa8865c4763aacf3beb5d4d7edf32d255b50 Mon Sep 17 00:00:00 2001
From: Piraty <piraty1@inbox.ru>
Date: Tue, 19 Jan 2021 15:24:46 +0100
Subject: [PATCH 0081/3482] rpi-kernel: update to 5.4.83.

* install correct set of dtb, thanks to @ahesford
* adopt, as suggested by former maintainer @pbui
---
 srcpkgs/rpi-kernel/template | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/srcpkgs/rpi-kernel/template b/srcpkgs/rpi-kernel/template
index 7bce019015fa..f9f170aedc05 100644
--- a/srcpkgs/rpi-kernel/template
+++ b/srcpkgs/rpi-kernel/template
@@ -5,19 +5,19 @@
 #
 #   https://www.raspberrypi.org/forums/viewtopic.php?f=29&t=269769
 
-_githash="e82816db535e0489ffd1c31cd9b7e4969fce4171"
+_githash="76c49e60e742d0bebd798be972d67dd3fd007691"
 _gitshort="${_githash:0:7}"
 
 pkgname=rpi-kernel
-version=5.4.68
+version=5.4.83
 revision=1
 wrksrc="linux-${_githash}"
-maintainer="Peter Bui <pbui@github.bx612.space>"
+maintainer="Piraty <piraty1@inbox.ru>"
 homepage="http://www.kernel.org"
 license="GPL-2.0-only"
 short_desc="The Linux kernel for Raspberry Pi (${version%.*} series [git ${_gitshort}])"
 distfiles="https://github.com/raspberrypi/linux/archive/${_githash}.tar.gz"
-checksum=e0dc98befadb4c8c66aa0e73d9d79f10b20e29fb758ab870a0c6c708e3a0abb7
+checksum=4a98ea0d68c6e74d479789c12fc97619c872cb2607ae87a881a9491c1c3fbc35
 python_version=2
 
 _kernver="${version}_${revision}"
@@ -128,10 +128,10 @@ do_install() {
 	# Install device tree blobs
 	make ${makejobs} ARCH=${_arch} INSTALL_DTBS_PATH=${DESTDIR}/boot dtbs_install
 
-	#move rpi3's dtb that ended up in /boot/broadcom
+	# move dtb that ended up in /boot/broadcom
 	case "$XBPS_TARGET_MACHINE" in
 	aarch64*)
-		mv ${DESTDIR}/boot/broadcom/bcm2710-rpi-3-b.dtb ${DESTDIR}/boot
+		mv ${DESTDIR}/boot/broadcom/bcm{2710,2837}-*.dtb ${DESTDIR}/boot
 		;;
 	esac
 

From 985d6c9475bf6baef46867314aae6ae252d396b9 Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Tue, 19 Jan 2021 14:40:13 +0100
Subject: [PATCH 0082/3482] janet: update to 1.14.1.

---
 common/shlibs          | 2 +-
 srcpkgs/janet/template | 4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index e0601851d650..a6b5cedc84ed 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -3928,7 +3928,7 @@ libcaribou.so.0 libcaribou-0.4.21_3
 libtinyclipboard.so.1 tinyclipboard-16.01_1
 libcbor.so.0.8 libcbor-0.8.0_1
 libfido2.so.1 libfido2-1.3.0_1
-libjanet.so.1.13 janet-1.13.1_1
+libjanet.so.1.14 janet-1.14.1_1
 libOpenImageDenoise.so.0 openimagedenoise-1.2.0_1
 libcbang0.so cbang-1.3.3_1
 libblosc.so.1 c-blosc-1.17.1_1
diff --git a/srcpkgs/janet/template b/srcpkgs/janet/template
index 1a8601b7ddc6..abc45fde9bde 100644
--- a/srcpkgs/janet/template
+++ b/srcpkgs/janet/template
@@ -1,6 +1,6 @@
 # Template file for 'janet'
 pkgname=janet
-version=1.13.1
+version=1.14.1
 revision=1
 build_style=meson
 short_desc="Dynamic Lisp dialect and bytecode VM"
@@ -8,7 +8,7 @@ maintainer="Leah Neukirchen <leah@vuxu.org>"
 license="MIT"
 homepage="https://janet-lang.org/"
 distfiles="https://github.com/janet-lang/janet/archive/v${version}.tar.gz"
-checksum=7d369b72a1fc649f7e5c254e2b746eb36885970504f6d9d3441507ca2d716644
+checksum=fcdb12c4ca414af346f390f81ea6e2417da182656c1c36377237df57b92cfd34
 
 post_install() {
 	vlicense LICENSE

From f313585d59beae84e33b316504110c3751ed030b Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Tue, 19 Jan 2021 14:40:38 +0100
Subject: [PATCH 0083/3482] python3-pyinfra: update to 1.3.3.

---
 srcpkgs/python3-pyinfra/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/python3-pyinfra/template b/srcpkgs/python3-pyinfra/template
index ef65f2057b5c..da7abbf01fcb 100644
--- a/srcpkgs/python3-pyinfra/template
+++ b/srcpkgs/python3-pyinfra/template
@@ -1,6 +1,6 @@
 # Template file for 'python3-pyinfra'
 pkgname=python3-pyinfra
-version=1.3.1
+version=1.3.3
 revision=1
 wrksrc="pyinfra-${version}"
 build_style=python3-module
@@ -13,7 +13,7 @@ maintainer="Leah Neukirchen <leah@vuxu.org>"
 license="MIT"
 homepage="https://pyinfra.com/"
 distfiles="https://github.com/Fizzadar/pyinfra/archive/v${version}.tar.gz"
-checksum=0ada84e57f2e86be94f0fc259e2d09640dad8c24361cba8de39de18c39564248
+checksum=f6a7575f0f5ad337f988916296ee5b756f2be4ac24d047b5a6130d71b2acc8c1
 
 post_extract() {
 	vsed -i -e '/configparser/d' setup.py  # is in Python 3.8

From 1892f402522c114ea20c8f5b72961c6bba9d85ae Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Tue, 19 Jan 2021 14:52:30 +0100
Subject: [PATCH 0084/3482] xaos: update to 4.2.1.

---
 srcpkgs/xaos/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/xaos/template b/srcpkgs/xaos/template
index ca17fcc29897..1b4c9dfd8310 100644
--- a/srcpkgs/xaos/template
+++ b/srcpkgs/xaos/template
@@ -1,6 +1,6 @@
 # Template file for 'xaos'
 pkgname=xaos
-version=4.2
+version=4.2.1
 revision=1
 wrksrc="XaoS-release-${version}"
 build_style=qmake
@@ -11,7 +11,7 @@ maintainer="Leah Neukirchen <leah@vuxu.org>"
 license="GPL-2.0-or-later"
 homepage="https://xaos-project.github.io/"
 distfiles="https://github.com/xaos-project/XaoS/archive/release-${version}.tar.gz"
-checksum=7910e5f935d5d9db7947f4339087de88ca057428490e5ce5540d271f81cbc09c
+checksum=bf21d3f50d7c1626c5c96da475f84ea24d24a164ec6cc2bbc4ee229bc4a65967
 
 pre_configure() {
 	vsed -i i18n/i18n.pri -e'/updateqm.commands/ s;lrelease;lrelease-qt5;'

From d9482e8453328f5683ec3837d440dad0860f2b54 Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Tue, 19 Jan 2021 14:55:47 +0100
Subject: [PATCH 0085/3482] angle-grinder: update to 0.16.

---
 srcpkgs/angle-grinder/template | 14 +++-----------
 1 file changed, 3 insertions(+), 11 deletions(-)

diff --git a/srcpkgs/angle-grinder/template b/srcpkgs/angle-grinder/template
index 3b5df7155615..3ee788491d97 100644
--- a/srcpkgs/angle-grinder/template
+++ b/srcpkgs/angle-grinder/template
@@ -1,23 +1,15 @@
 # Template file for 'angle-grinder'
 pkgname=angle-grinder
-version=0.15.0
-revision=2
+version=0.16
+revision=1
 build_style=cargo
 hostmakedepends="pkg-config"
-makedepends="libressl-devel"
 short_desc="Slice and dice logs on the command line"
 maintainer="Leah Neukirchen <leah@vuxu.org>"
 license="MIT"
 homepage="https://github.com/rcoh/angle-grinder"
 distfiles="https://github.com/rcoh/angle-grinder/archive/v${version}.tar.gz"
-checksum=5359d6e241eca2bc3bdb7ddf9344b4ef8315cbe7629775c09e0ab7ed70310c8d
-#nocross="https://build.voidlinux.org/builders/aarch64_builder/builds/26343/steps/shell_3/logs/stdio"
-
-post_extract() {
-	# get rid of rustls and therefore ring dependency
-	# https://github.com/rcoh/angle-grinder/issues/124
-	vsed -i '/self_update/s/"rustls"/"default"/' Cargo.toml
-}
+checksum=575e5398cfcddc78152f76ade632f7be2aa6b54b4adaaf1776344529fb9c0561
 
 post_install() {
 	vlicense LICENSE

From ec3d2e3389638d15ce5e9c0af38a8a301f96d779 Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Tue, 19 Jan 2021 15:12:18 +0100
Subject: [PATCH 0086/3482] erlang: update to 23.2.2.

---
 srcpkgs/erlang/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/erlang/template b/srcpkgs/erlang/template
index b241ddd8aa46..756bc760effb 100644
--- a/srcpkgs/erlang/template
+++ b/srcpkgs/erlang/template
@@ -1,6 +1,6 @@
 # Template file for 'erlang'
 pkgname=erlang
-version=23.2.1
+version=23.2.2
 revision=1
 create_wrksrc=yes
 build_wrksrc="otp-OTP-${version}"
@@ -14,7 +14,7 @@ license="Apache-2.0"
 homepage="http://www.erlang.org/"
 changelog="https://github.com/erlang/otp/releases"
 distfiles="https://github.com/erlang/otp/archive/OTP-${version}.tar.gz"
-checksum=e7034e2cfe50d7570ac8f70ea7ba69ea013f10863043e25132f0a5d3d0d8d3a7
+checksum=04994a2dffee0170554797b3d258b4f4727e54c772e721202e9fb22d6827e4de
 subpackages="erlang-doc"
 
 if [ -z "$CROSS_BUILD" ]; then

From 80e6aa02bf4f71cf8dfb83a611f3ece0d0cae182 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Tue, 19 Jan 2021 19:05:08 +0100
Subject: [PATCH 0087/3482] qt5-webengine: boop

just like with chromium, add a time64 patch from debian
to fix sandbox with glibc 2.32
---
 .../qt5-webengine/patches/0114-time64.patch   | 89 +++++++++++++++++++
 srcpkgs/qt5-webengine/template                |  2 +-
 2 files changed, 90 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/qt5-webengine/patches/0114-time64.patch

diff --git a/srcpkgs/qt5-webengine/patches/0114-time64.patch b/srcpkgs/qt5-webengine/patches/0114-time64.patch
new file mode 100644
index 000000000000..6a98dd4e480e
--- /dev/null
+++ b/srcpkgs/qt5-webengine/patches/0114-time64.patch
@@ -0,0 +1,89 @@
+Description: fix seccomp-bpf failures in syscalls 0403, 0407
+ glibc ≥ 2.31 uses these syscalls on 32-bit platforms:
+ .
+ - https://sourceware.org/git/?p=glibc.git;a=commit;h=2e44b10b42d68d98
+ - https://sourceware.org/git/?p=glibc.git;a=commit;h=ec138c67cbda8b58
+Author: Andreas Müller <schnitzeltony@gmail.com>
+Forwarded: no
+Last-Update: 2020-09-02
+
+--- a/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc
++++ b/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc
+@@ -148,7 +148,14 @@ ResultExpr EvaluateSyscallImpl(int fs_de
+     return Allow();
+ #endif
+ 
+-  if (sysno == __NR_clock_gettime || sysno == __NR_clock_nanosleep) {
++  if (sysno == __NR_clock_gettime || sysno == __NR_clock_nanosleep
++#if defined(__NR_clock_gettime64)
++                                  || sysno == __NR_clock_gettime64
++#endif
++#if defined(__NR_clock_nanosleep_time64)
++                                  || sysno == __NR_clock_nanosleep_time64
++#endif
++  ) {
+     return RestrictClockID();
+   }
+ 
+--- a/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions_unittests.cc
++++ b/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions_unittests.cc
+@@ -60,6 +60,12 @@ class RestrictClockIdPolicy : public bpf
+       case __NR_clock_gettime:
+       case __NR_clock_getres:
+       case __NR_clock_nanosleep:
++#if defined(__NR_clock_nanosleep_time64)
++      case __NR_clock_nanosleep_time64:
++#endif
++#if defined(__NR_clock_gettime64)
++      case __NR_clock_gettime64:
++#endif
+         return RestrictClockID();
+       default:
+         return Allow();
+--- a/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc
++++ b/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc
+@@ -39,6 +39,12 @@ bool SyscallSets::IsAllowedGettime(int s
+                                 // filtered by RestrictClokID().
+     case __NR_clock_gettime:    // Parameters filtered by RestrictClockID().
+     case __NR_clock_nanosleep:  // Parameters filtered by RestrictClockID().
++#if defined(__NR_clock_gettime64)
++    case __NR_clock_gettime64:  // Parameters filtered by RestrictClockID().
++#endif
++#if defined(__NR_clock_nanosleep_time64)
++    case __NR_clock_nanosleep_time64:  // Parameters filtered by RestrictClockID().
++#endif
+     case __NR_clock_settime:    // Privileged.
+ #if defined(__i386__) || \
+     (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_32_BITS))
+--- a/src/3rdparty/chromium/sandbox/linux/system_headers/arm_linux_syscalls.h
++++ b/src/3rdparty/chromium/sandbox/linux/system_headers/arm_linux_syscalls.h
+@@ -1385,6 +1385,14 @@
+ #define __NR_memfd_create (__NR_SYSCALL_BASE+385)
+ #endif
+ 
++#if !defined(__NR_clock_gettime64)
++#define __NR_clock_gettime64 (__NR_SYSCALL_BASE+403)
++#endif
++
++#if !defined(__NR_clock_nanosleep_time64)
++#define __NR_clock_nanosleep_time64 (__NR_SYSCALL_BASE+407)
++#endif
++
+ // ARM private syscalls.
+ #if !defined(__ARM_NR_BASE)
+ #define __ARM_NR_BASE (__NR_SYSCALL_BASE + 0xF0000)
+--- a/src/3rdparty/chromium/sandbox/linux/system_headers/mips_linux_syscalls.h
++++ b/src/3rdparty/chromium/sandbox/linux/system_headers/mips_linux_syscalls.h
+@@ -1433,4 +1433,12 @@
+ #define __NR_memfd_create (__NR_Linux + 354)
+ #endif
+ 
++#if !defined(__NR_clock_gettime64)
++#define __NR_clock_gettime64 (__NR_Linux + 403)
++#endif
++
++#if !defined(__NR_clock_nanosleep_time64)
++#define __NR_clock_nanosleep_time64 (__NR_Linux + 407)
++#endif
++
+ #endif  // SANDBOX_LINUX_SYSTEM_HEADERS_MIPS_LINUX_SYSCALLS_H_
diff --git a/srcpkgs/qt5-webengine/template b/srcpkgs/qt5-webengine/template
index 1bacb88e9ec2..b49665122bb2 100644
--- a/srcpkgs/qt5-webengine/template
+++ b/srcpkgs/qt5-webengine/template
@@ -1,7 +1,7 @@
 # Template file for 'qt5-webengine'
 pkgname=qt5-webengine
 version=5.15.2
-revision=1
+revision=2
 archs="x86_64* i686* armv[67]* ppc64* aarch64*"
 wrksrc="qtwebengine-everywhere-src-${version}"
 build_style=qmake

From c9e89fb626862165fab22c2846f2b1c999812682 Mon Sep 17 00:00:00 2001
From: Helmut Pozimski <helmut@pozimski.eu>
Date: Tue, 19 Jan 2021 19:15:44 +0100
Subject: [PATCH 0088/3482] vlc: update to 3.0.12.

---
 srcpkgs/vlc/patches/qt_5_15.patch | 33 -------------------------------
 srcpkgs/vlc/template              |  6 +++---
 2 files changed, 3 insertions(+), 36 deletions(-)
 delete mode 100644 srcpkgs/vlc/patches/qt_5_15.patch

diff --git a/srcpkgs/vlc/patches/qt_5_15.patch b/srcpkgs/vlc/patches/qt_5_15.patch
deleted file mode 100644
index 66b0df96e018..000000000000
--- a/srcpkgs/vlc/patches/qt_5_15.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-diff -u -r vlc-3.0.10/modules/gui/qt/components/playlist/views.cpp vlc-3.0.10-qt-5.15/modules/gui/qt/components/playlist/views.cpp
---- modules/gui/qt/components/playlist/views.cpp	2017-11-24 15:29:17.000000000 +0000
-+++ modules/gui/qt/components/playlist/views.cpp	2020-05-29 20:50:09.267959371 +0000
-@@ -27,6 +27,7 @@
- #include "input_manager.hpp"                      /* THEMIM */
- 
- #include <QPainter>
-+#include <QPainterPath>
- #include <QRect>
- #include <QStyleOptionViewItem>
- #include <QFontMetrics>
-diff -u -r vlc-3.0.10/modules/gui/qt/dialogs/plugins.cpp vlc-3.0.10-qt-5.15/modules/gui/qt/dialogs/plugins.cpp
---- modules/gui/qt/dialogs/plugins.cpp	2017-11-24 15:29:17.000000000 +0000
-+++ modules/gui/qt/dialogs/plugins.cpp	2020-05-29 20:49:44.114275108 +0000
-@@ -53,6 +53,7 @@
- #include <QListView>
- #include <QListWidget>
- #include <QPainter>
-+#include <QPainterPath>
- #include <QStyleOptionViewItem>
- #include <QKeyEvent>
- #include <QPushButton>
-diff -u -r vlc-3.0.10/modules/gui/qt/util/timetooltip.hpp vlc-3.0.10-qt-5.15/modules/gui/qt/util/timetooltip.hpp
---- modules/gui/qt/util/timetooltip.hpp	2018-05-03 12:03:21.000000000 +0000
-+++ modules/gui/qt/util/timetooltip.hpp	2020-05-29 20:40:30.306628713 +0000
-@@ -24,6 +24,7 @@
- 
- #include "qt.hpp"
- 
-+#include <QPainterPath>
- #include <QWidget>
- 
- class TimeTooltip : public QWidget
diff --git a/srcpkgs/vlc/template b/srcpkgs/vlc/template
index 7cb0b4a3c1db..fe29870ac996 100644
--- a/srcpkgs/vlc/template
+++ b/srcpkgs/vlc/template
@@ -1,7 +1,7 @@
 # Template file for 'vlc'
 pkgname=vlc
-version=3.0.11.1
-revision=6
+version=3.0.12
+revision=1
 build_style=gnu-configure
 configure_args="--disable-gme --disable-libtar --enable-jack
  --enable-live555 --disable-fluidsynth --enable-dvdread
@@ -17,7 +17,7 @@ license="GPL-2.0-only, LGPL-2.1-only"
 homepage="https://www.videolan.org/vlc/"
 changelog="https://www.videolan.org/developers/vlc-branch/NEWS"
 distfiles="https://download.videolan.org/pub/videolan/vlc/${version}/vlc-${version}.tar.xz"
-checksum=189311d28aa814f106a7b3645211ac52c0b3e2b9f4b348de2f63bab3218086b8
+checksum=eff458f38a92126094f44f2263c2bf2c7cdef271b48192d0fe7b1726388cf879
 
 lib32disabled=yes
 

From 1d74fb6d7badb85a8b1edeadf460c1680acfa119 Mon Sep 17 00:00:00 2001
From: fosslinux <fosslinux@aussies.space>
Date: Thu, 31 Dec 2020 11:31:50 +1100
Subject: [PATCH 0089/3482] common/build-style/texmf.sh: various improvments.

- do_check (ownership check): only check against latest version of
  package.
- Add comments.
---
 common/build-style/texmf.sh | 30 ++++++++++++++++++++++++++++--
 1 file changed, 28 insertions(+), 2 deletions(-)

diff --git a/common/build-style/texmf.sh b/common/build-style/texmf.sh
index 798d44e14d22..dbed1fd64bfd 100644
--- a/common/build-style/texmf.sh
+++ b/common/build-style/texmf.sh
@@ -1,19 +1,34 @@
 do_build() {
 	local f p
+	# Extract the source files
 	mkdir -p "build/usr/share/texmf-dist"
 	find . -maxdepth 1 -print -name "*.tar.xz" \
 		-exec bsdtar -C "build/usr/share/texmf-dist" -xf {} \;
 	cd "build/usr/share/texmf-dist/"
+	# Everything in usr/share/texmf-dist/texmf-dist should really be in
+	# usr/share/texmf-dist, so we move it
 	if [ -d "texmf-dist" ] ; then
 		rsync -ar texmf-dist/ ./
 		rm -rf texmf-dist/
 	fi
+	# LICENSEs are unneeded
 	rm -f LICENSE*
+
+	# We have some conflicting files between different packages. To work
+	# around this, we use an ownership file that maps which conflicting
+	# files should be in which packages. Here, each file in the map list is
+	# checked whether it is in the package, and if it shouldn't be it is
+	# removed.
 	while IFS=' ' read -r f p ; do
 		if [ "$p" = "$pkgname" ] && ! [ -e "$f" ]; then
+			# Error out if the ownership map expects this package to have a
+			# file but it dosen't
 			msg_error "$pkgver: missing file $f\n"
 		elif [ "$p" != "$pkgname" ] && [ -e "$f" ]; then
+			# Remove a file that according to the ownership map belongs to
+			# another file
 			echo "removed $f"
+			# Install a file that lists the removed packages
 			mkdir -p ../texlive/removed
 			echo "$f" >> ../texlive/removed/$pkgname.txt
 			rm -f "$f"
@@ -22,10 +37,21 @@ do_build() {
 }
 
 do_check() {
-	local f p exitcode=0
+	# This is essentially a helper for generating the ownership map. It checks
+	# to see if there are any conflicts between all of the different packages.
+	local f p current_ver current_rev exitcode=0
 	cd build
+
 	while read p; do
-		if [[ ${p%-*} =~ .*-bin$ ]] || [ "${p%-*}" = "$pkgname" ]; then
+		# Don't check against the texlive-bin* packages, ourselves, -dbg or -32bit pkgs
+		if [[ ${p%-*} =~ .*-bin$ ]] || [ "${p%-*}" = "$pkgname" ] || [[ ${p%-*} =~ .*-dbg$ ]] || [[ ${p%-*} =~ .*-32bit$ ]]; then
+			continue
+		fi
+		# Don't check against any version other than the version in the source tree
+		current_ver="$(grep -m 1 version= ${XBPS_SRCPKGDIR}/${p%-*}/template | cut -d= -f2)"
+		current_rev="$(grep -m 1 revision= ${XBPS_SRCPKGDIR}/${p%-*}/template | cut -d= -f2)"
+		if [ "${p%-*}-${current_ver}_${current_rev}" != "${p}" ]; then
+			# They are not the same version
 			continue
 		fi
 		echo checking conflicts with ${p}...

From 0215f1c6ce03ac6db858c186d417d393c6012ea5 Mon Sep 17 00:00:00 2001
From: fosslinux <fosslinux@aussies.space>
Date: Thu, 31 Dec 2020 11:24:33 +1100
Subject: [PATCH 0090/3482] texlive-core: update to 2020.57066.

---
 srcpkgs/texlive-core/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/texlive-core/template b/srcpkgs/texlive-core/template
index b264f88ea4f3..b330bfc6c2bc 100644
--- a/srcpkgs/texlive-core/template
+++ b/srcpkgs/texlive-core/template
@@ -1,11 +1,11 @@
 # Template file for 'texlive-core'
 pkgname=texlive-core
-version=2020.55416
-revision=2
+version=2020.57066
+revision=1
 build_style="texmf"
 short_desc="TeX Live - core texmf distribution"
 maintainer="fosslinux <fosslinux@aussies.space>"
 license="GPL-2.0-or-later"
 homepage="http://tug.org/texlive"
 distfiles="https://sources.archlinux.org/other/texlive/${pkgname}-${version}-src.zip"
-checksum=8e025c2dfa4e19dcb6aa5e661874d2c2a158aa2e1a078c11a4ddd6347bd9db45
+checksum=b3280ddd2b2c8d41dba3784ba41b755e317e5352868015fe1f70a16b24f5dde9

From 91c67acbab9d2c3395838258cd59721ea825d68e Mon Sep 17 00:00:00 2001
From: fosslinux <fosslinux@aussies.space>
Date: Thu, 31 Dec 2020 11:25:09 +1100
Subject: [PATCH 0091/3482] texlive-bibtexextra: update to 2020.56991.

---
 srcpkgs/texlive-bibtexextra/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/texlive-bibtexextra/template b/srcpkgs/texlive-bibtexextra/template
index 8919b87655b4..fe9d2fa2681d 100644
--- a/srcpkgs/texlive-bibtexextra/template
+++ b/srcpkgs/texlive-bibtexextra/template
@@ -1,7 +1,7 @@
 # Template file for 'texlive-bibtexextra'
 pkgname=texlive-bibtexextra
-version=2020.55376
-revision=2
+version=2020.56991
+revision=1
 build_style="texmf"
 depends="texlive-core"
 short_desc="TeX Live - Additional BibTeX styles and bibliography databases"
@@ -9,4 +9,4 @@ maintainer="fosslinux <fosslinux@aussies.space>"
 license="GPL-2.0-or-later"
 homepage="http://tug.org/texlive/"
 distfiles="https://sources.archlinux.org/other/texlive/${pkgname}-${version}-src.zip"
-checksum=f886188aa015f8450519a22cca61b7dc929bb206c90f5de8947a1a949f762f4a
+checksum=29ac4e1ab0447832a6847abf4a4f2a034ff4deae339fe9c118aef1bc95c02b49

From cdbcb542ec359e23713a464265b7fd8e92f0a629 Mon Sep 17 00:00:00 2001
From: fosslinux <fosslinux@aussies.space>
Date: Thu, 31 Dec 2020 11:25:31 +1100
Subject: [PATCH 0092/3482] texlive-fontsextra: update to 2020.57042.

---
 srcpkgs/texlive-fontsextra/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/texlive-fontsextra/template b/srcpkgs/texlive-fontsextra/template
index bded49719ef5..ea129fa90f8c 100644
--- a/srcpkgs/texlive-fontsextra/template
+++ b/srcpkgs/texlive-fontsextra/template
@@ -1,7 +1,7 @@
 # Template file for 'texlive-fontsextra'
 pkgname=texlive-fontsextra
-version=2020.55407
-revision=2
+version=2020.57042
+revision=1
 build_style="texmf"
 depends="texlive-core"
 short_desc="TeX Live - All sorts of extra fonts"
@@ -9,4 +9,4 @@ maintainer="fosslinux <fosslinux@aussies.space>"
 license="GPL-2.0-or-later"
 homepage="http://tug.org/texlive/"
 distfiles="https://sources.archlinux.org/other/texlive/${pkgname}-${version}-src.zip"
-checksum=25e1060c699f09e02924bf27902b162d7af5a6cc2d0c898f83c09ca0928d9060
+checksum=88a46fc20ec4522bb825aad3b8792ad1494933b2dcbeee4e6b746e1a264352fb

From 701dbdcb17b9f777b662f37b75638f58f43f77b9 Mon Sep 17 00:00:00 2001
From: fosslinux <fosslinux@aussies.space>
Date: Thu, 31 Dec 2020 11:25:50 +1100
Subject: [PATCH 0093/3482] texlive-formatsextra: update to 2020.56699.

---
 srcpkgs/texlive-formatsextra/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/texlive-formatsextra/template b/srcpkgs/texlive-formatsextra/template
index 9c16243f8674..fee99a62cd6e 100644
--- a/srcpkgs/texlive-formatsextra/template
+++ b/srcpkgs/texlive-formatsextra/template
@@ -1,7 +1,7 @@
 # Template file for 'texlive-formatsextra'
 pkgname=texlive-formatsextra
-version=2020.54498
-revision=2
+version=2020.56699
+revision=1
 build_style="texmf"
 depends="texlive-core"
 short_desc="TeX Live - Collection of extra TeX 'formats'"
@@ -9,4 +9,4 @@ maintainer="fosslinux <fosslinux@aussies.space>"
 license="GPL-2.0-or-later"
 homepage="http://tug.org/texlive/"
 distfiles="https://sources.archlinux.org/other/texlive/${pkgname}-${version}-src.zip"
-checksum=897881410cc6144478c40cee45d976950a60bd5f86f798857d57501b3c2a4bf0
+checksum=ead7b2f6674f0db9b35db6ad89c13dead0831f7782999b7fdd921937ffec8352

From 1891d87d730dee9691fa8b8d526678e9665c51e9 Mon Sep 17 00:00:00 2001
From: fosslinux <fosslinux@aussies.space>
Date: Thu, 31 Dec 2020 11:26:10 +1100
Subject: [PATCH 0094/3482] texlive-games: update to 2020.56833.

---
 srcpkgs/texlive-games/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/texlive-games/template b/srcpkgs/texlive-games/template
index 886078f5f55d..682791ab0e36 100644
--- a/srcpkgs/texlive-games/template
+++ b/srcpkgs/texlive-games/template
@@ -1,7 +1,7 @@
 # Template file for 'texlive-games'
 pkgname=texlive-games
-version=2020.55271
-revision=2
+version=2020.56833
+revision=1
 build_style="texmf"
 depends="texlive-core"
 short_desc="TeX Live - Typesetting board games"
@@ -9,4 +9,4 @@ maintainer="fosslinux <fosslinux@aussies.space>"
 license="GPL-2.0-or-later"
 homepage="http://tug.org/texlive/"
 distfiles="https://sources.archlinux.org/other/texlive/${pkgname}-${version}-src.zip"
-checksum=8fee7616c18bd8c53cdea108d2d17583b88ace4a97fe6d23f13d32c56397885b
+checksum=c11db61e7daf90f815a606df357da480479d300ebe7606179f67ca8c13fedc27

From 69cb037e60199b833edd5ab2795325659bb7bbf2 Mon Sep 17 00:00:00 2001
From: fosslinux <fosslinux@aussies.space>
Date: Thu, 31 Dec 2020 11:26:48 +1100
Subject: [PATCH 0095/3482] texlive-humanities: update to 2020.57034.

---
 srcpkgs/texlive-humanities/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/texlive-humanities/template b/srcpkgs/texlive-humanities/template
index 6a212087ae11..4623280a8914 100644
--- a/srcpkgs/texlive-humanities/template
+++ b/srcpkgs/texlive-humanities/template
@@ -1,7 +1,7 @@
 # Template file for 'texlive-humanities'
 pkgname=texlive-humanities
-version=2020.55389
-revision=2
+version=2020.57034
+revision=1
 build_style="texmf"
 depends="texlive-core texlive-latexextra texlive-pictures"
 short_desc="TeX Live - Packages for humanities, law, linguistics, etc"
@@ -9,4 +9,4 @@ maintainer="fosslinux <fosslinux@aussies.space>"
 license="GPL-2.0-or-later"
 homepage="http://tug.org/texlive/"
 distfiles="https://sources.archlinux.org/other/texlive/${pkgname}-${version}-src.zip"
-checksum=528bc27a2ba5410a76d4ab509b97d0ea87038fde1b65f4254fb0d94805c1f3e5
+checksum=9eecd63565d7ab550fa7f82f10f4f1bbb523c501e987c3eef051426e5927ed70

From a9eec7c92ec86834bcf8d062ca9b3d2aa9e6f0f9 Mon Sep 17 00:00:00 2001
From: fosslinux <fosslinux@aussies.space>
Date: Thu, 31 Dec 2020 11:27:17 +1100
Subject: [PATCH 0096/3482] texlive-langchinese: update to 2020.57044.

---
 srcpkgs/texlive-langchinese/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/texlive-langchinese/template b/srcpkgs/texlive-langchinese/template
index 45500a2fcaef..9b10e8751d56 100644
--- a/srcpkgs/texlive-langchinese/template
+++ b/srcpkgs/texlive-langchinese/template
@@ -1,7 +1,7 @@
 # Template file for 'texlive-langchinese'
 pkgname=texlive-langchinese
-version=2020.55162
-revision=2
+version=2020.57044
+revision=1
 build_style="texmf"
 depends="texlive-core"
 short_desc="TeX Live - Fonts and macro packages for typesetting Chinese"
@@ -9,4 +9,4 @@ maintainer="fosslinux <fosslinux@aussies.space>"
 license="GPL-2.0-or-later"
 homepage="http://tug.org/texlive/"
 distfiles="https://sources.archlinux.org/other/texlive/${pkgname}-${version}-src.zip"
-checksum=4ed294a09e69ca853fd9a141103ad4d4f6282afc3dcc058e18415acfd71f8883
+checksum=635ff96a2373caca1c4b927ba54d6fd1bd3ee629dc9279be768021eb8fe1c93f

From d8e2fb9c660d742e900843118477e586493bc18d Mon Sep 17 00:00:00 2001
From: fosslinux <fosslinux@aussies.space>
Date: Thu, 31 Dec 2020 11:27:43 +1100
Subject: [PATCH 0097/3482] texlive-langcyrillic: update to 2020.56674.

---
 srcpkgs/texlive-langcyrillic/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/texlive-langcyrillic/template b/srcpkgs/texlive-langcyrillic/template
index 2bf412808038..6ab9170e30d1 100644
--- a/srcpkgs/texlive-langcyrillic/template
+++ b/srcpkgs/texlive-langcyrillic/template
@@ -1,7 +1,7 @@
 # Template file for 'texlive-langcyrillic'
 pkgname=texlive-langcyrillic
-version=2020.54594
-revision=2
+version=2020.56674
+revision=1
 build_style="texmf"
 depends="texlive-core"
 short_desc="TeX Live - Fonts and macro packages for typesetting Cyrillic text"
@@ -9,4 +9,4 @@ maintainer="fosslinux <fosslinux@aussies.space>"
 license="GPL-2.0-or-later"
 homepage="http://tug.org/texlive/"
 distfiles="https://sources.archlinux.org/other/texlive/${pkgname}-${version}-src.zip"
-checksum=42cb98a93a1cb9437691d24d4aae64360b260da036f874cb6644aa7bc8a47c67
+checksum=b20e99fd5a7f48e0024fc2e2bb2609d28eb9a74e5b2abee1843e680632833cf9

From 64fb532bb3e031d75afd840caf5a91a336d7cdce Mon Sep 17 00:00:00 2001
From: fosslinux <fosslinux@aussies.space>
Date: Thu, 31 Dec 2020 11:28:05 +1100
Subject: [PATCH 0098/3482] texlive-langextra: update to 2020.56781.

---
 srcpkgs/texlive-langextra/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/texlive-langextra/template b/srcpkgs/texlive-langextra/template
index e59d071ad633..a66c38aa338a 100644
--- a/srcpkgs/texlive-langextra/template
+++ b/srcpkgs/texlive-langextra/template
@@ -1,7 +1,7 @@
 # Template file for 'texlive-langextra'
 pkgname=texlive-langextra
-version=2020.55417
-revision=2
+version=2020.56781
+revision=1
 build_style="texmf"
 depends="texlive-core texlive-latexextra"
 short_desc="TeX Live - Packages for a bunch of extra languages"
@@ -9,4 +9,4 @@ maintainer="fosslinux <fosslinux@aussies.space>"
 license="GPL-2.0-or-later"
 homepage="http://tug.org/texlive/"
 distfiles="https://sources.archlinux.org/other/texlive/${pkgname}-${version}-src.zip"
-checksum=b92cff8917d8f44071de42307c9f5d72d0be8999d789d1d407225d010f026ac9
+checksum=57b27be556189cb9a50ee5c724d4cce40cab2efdc3e253d8a4fb61c52d36860a

From bbe7149352fa0434fdae06573346add248ac074c Mon Sep 17 00:00:00 2001
From: fosslinux <fosslinux@aussies.space>
Date: Thu, 31 Dec 2020 11:28:30 +1100
Subject: [PATCH 0099/3482] texlive-langgreek: update to 2020.56956.

---
 srcpkgs/texlive-langgreek/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/texlive-langgreek/template b/srcpkgs/texlive-langgreek/template
index dffd3471916d..1e4c61c3fc2b 100644
--- a/srcpkgs/texlive-langgreek/template
+++ b/srcpkgs/texlive-langgreek/template
@@ -1,7 +1,7 @@
 # Template file for 'texlive-langgreek'
 pkgname=texlive-langgreek
-version=2020.54512
-revision=2
+version=2020.56956
+revision=1
 build_style="texmf"
 depends="texlive-core"
 short_desc="TeX Live - Fonts and macro packages for typesetting Greek"
@@ -9,4 +9,4 @@ maintainer="fosslinux <fosslinux@aussies.space>"
 license="GPL-2.0-or-later"
 homepage="http://tug.org/texlive/"
 distfiles="https://sources.archlinux.org/other/texlive/${pkgname}-${version}-src.zip"
-checksum=72c7c9b7ab23df11edf2ec2430a97d8a45885316ccbcfa7bc62684b3f2e9188b
+checksum=9fac133578469c91572306a537c47ee6fdc661caf0f0dacba276af6a69fca465

From 030f8b3c1983b6d561a6cc84cb2ef581ca24b668 Mon Sep 17 00:00:00 2001
From: fosslinux <fosslinux@aussies.space>
Date: Thu, 31 Dec 2020 11:28:51 +1100
Subject: [PATCH 0100/3482] texlive-langjapanese: update to 2020.57025.

---
 srcpkgs/texlive-langjapanese/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/texlive-langjapanese/template b/srcpkgs/texlive-langjapanese/template
index 3a8d424ac1d7..e5949a7f2325 100644
--- a/srcpkgs/texlive-langjapanese/template
+++ b/srcpkgs/texlive-langjapanese/template
@@ -1,7 +1,7 @@
 # Template file for 'texlive-langjapanese'
 pkgname=texlive-langjapanese
-version=2020.55320
-revision=2
+version=2020.57025
+revision=1
 build_style="texmf"
 depends="texlive-core"
 short_desc="TeX Live - Fonts and macro packages for typesetting Japanese"
@@ -9,4 +9,4 @@ maintainer="fosslinux <fosslinux@aussies.space>"
 license="GPL-2.0-or-later"
 homepage="http://tug.org/texlive/"
 distfiles="https://sources.archlinux.org/other/texlive/${pkgname}-${version}-src.zip"
-checksum=2e2538c9c81ed69530ce78b1dd132eaa54832276e614d6907bafeec17a1c3a90
+checksum=8f358bde670e7afb8b1561382bc0c18797da97f0e2ea40c74b87a54fc32057c7

From 4e238f3037ac396b38bf5fd464625acc15ce8dd9 Mon Sep 17 00:00:00 2001
From: fosslinux <fosslinux@aussies.space>
Date: Thu, 31 Dec 2020 11:29:12 +1100
Subject: [PATCH 0101/3482] texlive-langkorean: update to 2020.56915.

---
 srcpkgs/texlive-langkorean/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/texlive-langkorean/template b/srcpkgs/texlive-langkorean/template
index 75e6390c8bb8..05287fea5178 100644
--- a/srcpkgs/texlive-langkorean/template
+++ b/srcpkgs/texlive-langkorean/template
@@ -1,7 +1,7 @@
 # Template file for 'texlive-langkorean'
 pkgname=texlive-langkorean
-version=2020.54519
-revision=2
+version=2020.56915
+revision=1
 build_style="texmf"
 depends="texlive-core"
 short_desc="TeX Live - Fonts and macro packages for typesetting Korean"
@@ -9,4 +9,4 @@ maintainer="fosslinux <fosslinux@aussies.space>"
 license="GPL-2.0-or-later"
 homepage="http://tug.org/texlive/"
 distfiles="https://sources.archlinux.org/other/texlive/${pkgname}-${version}-src.zip"
-checksum=dfc1e1434bbc10442009e9c3e28609ae45aeda96930df899d365eea38423f66e
+checksum=e767951038f076f9cdd76a7b5bad9598733ef3df098082d623511d9adffb1d1e

From cb84587d57965c66043e2b164797bf6732b06427 Mon Sep 17 00:00:00 2001
From: fosslinux <fosslinux@aussies.space>
Date: Thu, 31 Dec 2020 11:29:36 +1100
Subject: [PATCH 0102/3482] texlive-latexextra: update to 2020.57067.

---
 srcpkgs/texlive-latexextra/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/texlive-latexextra/template b/srcpkgs/texlive-latexextra/template
index 7d9ab489fe0b..bedea0152676 100644
--- a/srcpkgs/texlive-latexextra/template
+++ b/srcpkgs/texlive-latexextra/template
@@ -1,7 +1,7 @@
 # Template file for 'texlive-latexextra'
 pkgname=texlive-latexextra
-version=2020.55418
-revision=2
+version=2020.57067
+revision=1
 build_style="texmf"
 depends="perl-File-Which python3-Pygments texlive-core texlive-pictures"
 short_desc="TeX Live - Collection of LaTeX addon packages"
@@ -9,4 +9,4 @@ maintainer="fosslinux <fosslinux@aussies.space>"
 license="GPL-2.0-or-later"
 homepage="http://tug.org/texlive/"
 distfiles="https://sources.archlinux.org/other/texlive/${pkgname}-${version}-src.zip"
-checksum=a2ee21a2a6f00def6bec620a85bb8116de97a16dcd98adaa308eb455fe0e7fcb
+checksum=6ab6ca702f7d956de9ee8fb9c78518da64c322472716c99780d9dfd9c158930f

From 7482d0f75287739b49ace1bc2b81151db9ca4765 Mon Sep 17 00:00:00 2001
From: fosslinux <fosslinux@aussies.space>
Date: Thu, 31 Dec 2020 11:29:54 +1100
Subject: [PATCH 0103/3482] texlive-music: update to 2020.56473.

---
 srcpkgs/texlive-music/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/texlive-music/template b/srcpkgs/texlive-music/template
index 2210ffcb9363..03a03d99805f 100644
--- a/srcpkgs/texlive-music/template
+++ b/srcpkgs/texlive-music/template
@@ -1,7 +1,7 @@
 # Template file for 'texlive-music'
 pkgname=texlive-music
-version=2020.54758
-revision=2
+version=2020.56473
+revision=1
 build_style="texmf"
 depends="fontforge python3 texlive-core"
 short_desc="TeX Live - Music typesetting packages"
@@ -9,4 +9,4 @@ maintainer="fosslinux <fosslinux@aussies.space>"
 license="GPL-2.0-or-later"
 homepage="http://tug.org/texlive/"
 distfiles="https://sources.archlinux.org/other/texlive/${pkgname}-${version}-src.zip"
-checksum=47f418d851a0f838c08be406135ef338533e32cf0bc9c4ffefeaa0139973e8f1
+checksum=06caf29f5ef2e3881cde74963f70ffe75215359ae824ebae4f0599b24ca4458b

From 0541d0848fecf3a61f94e0924da5199dbfbc243d Mon Sep 17 00:00:00 2001
From: fosslinux <fosslinux@aussies.space>
Date: Thu, 31 Dec 2020 11:30:10 +1100
Subject: [PATCH 0104/3482] texlive-pictures: update to 2020.57065.

---
 srcpkgs/texlive-pictures/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/texlive-pictures/template b/srcpkgs/texlive-pictures/template
index 5f1c07af383e..e60fb2462824 100644
--- a/srcpkgs/texlive-pictures/template
+++ b/srcpkgs/texlive-pictures/template
@@ -1,7 +1,7 @@
 # Template file for 'texlive-pictures'
 pkgname=texlive-pictures
-version=2020.55342
-revision=2
+version=2020.57065
+revision=1
 build_style="texmf"
 depends="texlive-core"
 short_desc="TeX Live - Packages for drawing graphics"
@@ -9,4 +9,4 @@ maintainer="fosslinux <fosslinux@aussies.space>"
 license="GPL-2.0-or-later"
 homepage="http://tug.org/texlive/"
 distfiles="https://sources.archlinux.org/other/texlive/${pkgname}-${version}-src.zip"
-checksum=4bfd4a1cf0339151806ff7591c11d4b1868bc9ebf7f9b0f396193abbc3c7aec5
+checksum=4e9a720d65b4a2d15cb05591f817cc76dff57797485b075f356c1c1ff109bca5

From 2f2812d2b93512222a4a69f5cf7a736c3791077c Mon Sep 17 00:00:00 2001
From: fosslinux <fosslinux@aussies.space>
Date: Thu, 31 Dec 2020 11:30:32 +1100
Subject: [PATCH 0105/3482] texlive-pstricks: update to 2020.56758.

---
 srcpkgs/texlive-pstricks/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/texlive-pstricks/template b/srcpkgs/texlive-pstricks/template
index f7ca79bf6814..40773bad302a 100644
--- a/srcpkgs/texlive-pstricks/template
+++ b/srcpkgs/texlive-pstricks/template
@@ -1,7 +1,7 @@
 # Template file for 'texlive-pstricks'
 pkgname=texlive-pstricks
-version=2020.55289
-revision=2
+version=2020.56758
+revision=1
 build_style="texmf"
 depends="texlive-core"
 short_desc="TeX Live - Additional PSTricks packages"
@@ -9,4 +9,4 @@ maintainer="fosslinux <fosslinux@aussies.space>"
 license="GPL-2.0-or-later"
 homepage="http://tug.org/texlive/"
 distfiles="https://sources.archlinux.org/other/texlive/${pkgname}-${version}-src.zip"
-checksum=be0eb4d24474a3af116af7d34af5b78f6cdc7aee6235ed4d63f1682dc2ef0cbc
+checksum=3c02a5733450544e8d38f66e6fa20055974a474e6184b293fe7d7003e891f6a1

From 55fdb4c05aaf1bbce0941376b96dced1f858a363 Mon Sep 17 00:00:00 2001
From: fosslinux <fosslinux@aussies.space>
Date: Thu, 31 Dec 2020 11:30:51 +1100
Subject: [PATCH 0106/3482] texlive-publishers: update to 2020.57058.

---
 srcpkgs/texlive-publishers/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/texlive-publishers/template b/srcpkgs/texlive-publishers/template
index f1cea965157b..892d6e202462 100644
--- a/srcpkgs/texlive-publishers/template
+++ b/srcpkgs/texlive-publishers/template
@@ -1,11 +1,11 @@
 # Template file for 'texlive-publishers'
 pkgname=texlive-publishers
-version=2020.55415
-revision=2
+version=2020.57058
+revision=1
 build_style="texmf"
 short_desc="TeX Live - Classes and packages for certain publishers"
 maintainer="fosslinux <fosslinux@aussies.space>"
 license="GPL-2.0-or-later"
 homepage="http://tug.org/texlive/"
 distfiles="https://sources.archlinux.org/other/texlive/${pkgname}-${version}-src.zip"
-checksum=4d36cad1e18e5ad9b9866bba17c9288454f6d7b17a3ac144160ec4a5bce79176
+checksum=13a312f58913e168e68b6dc57ef93b099485537c99e5f6f588f5c98764abf069

From 82795f9db6d733061b5a790a1c8eeb442b8d9c17 Mon Sep 17 00:00:00 2001
From: fosslinux <fosslinux@aussies.space>
Date: Thu, 31 Dec 2020 11:31:09 +1100
Subject: [PATCH 0107/3482] texlive-science: update to 2020.57068.

---
 srcpkgs/texlive-science/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/texlive-science/template b/srcpkgs/texlive-science/template
index 9a179ccfbe13..c405043a4638 100644
--- a/srcpkgs/texlive-science/template
+++ b/srcpkgs/texlive-science/template
@@ -1,7 +1,7 @@
 # Template file for 'texlive-science'
 pkgname=texlive-science
-version=2020.55390
-revision=2
+version=2020.57068
+revision=1
 build_style="texmf"
 depends="texlive-core"
 short_desc="TeX Live - Typesetting for mathematatics and science disciplines"
@@ -9,4 +9,4 @@ maintainer="fosslinux <fosslinux@aussies.space>"
 license="GPL-2.0-or-later"
 homepage="http://tug.org/texlive/"
 distfiles="https://sources.archlinux.org/other/texlive/${pkgname}-${version}-src.zip"
-checksum=c42294cd26e5a65585b27520e5a877539f88ba1583d5e1101c828a934225eea4
+checksum=ae3925dce04e315ee53cef15799c03a743bdf048313cf328a50b143ff9ace888

From 71d25cb5e9f03d2cd357f847ffdaa1479a37f9a0 Mon Sep 17 00:00:00 2001
From: fosslinux <fosslinux@aussies.space>
Date: Thu, 31 Dec 2020 11:32:42 +1100
Subject: [PATCH 0108/3482] texlive-minimal: update to 2020.1.

---
 srcpkgs/texlive-minimal/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/texlive-minimal/template b/srcpkgs/texlive-minimal/template
index 1b40bb3ea71d..cd6fed4d1f4e 100644
--- a/srcpkgs/texlive-minimal/template
+++ b/srcpkgs/texlive-minimal/template
@@ -1,10 +1,10 @@
 # Template file for 'texlive-minimal'
 pkgname=texlive-minimal
-version=2020
-revision=2
+version=2020.1
+revision=1
 build_style=meta
 depends="texlive>=20200406
- texlive-core>=2020.55416"
+ texlive-core>=2020.57066"
 short_desc="TeX Live - Metapackage including minimal packages"
 maintainer="fosslinux <fosslinux@aussies.space>"
 license="GPL-2.0-or-later"

From 782f9dd24a6250d816ac7d3561de39aa17466a54 Mon Sep 17 00:00:00 2001
From: fosslinux <fosslinux@aussies.space>
Date: Thu, 31 Dec 2020 11:33:02 +1100
Subject: [PATCH 0109/3482] texlive-basic: update to 2020.1.

---
 srcpkgs/texlive-basic/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/texlive-basic/template b/srcpkgs/texlive-basic/template
index 8058751dc87f..68af65f2c705 100644
--- a/srcpkgs/texlive-basic/template
+++ b/srcpkgs/texlive-basic/template
@@ -1,15 +1,15 @@
 # Template file for 'texlive-basic'
 pkgname=texlive-basic
-version=2020
-revision=2
+version=2020.1
+revision=1
 build_style=meta
 depends="texlive>=20200406
  texlive-BibTeX>=20200406
  texlive-LuaTeX>=20200406
  texlive-dvi>=20200406
- texlive-core>=2020.55416
- texlive-latexextra>=2020.55418
- texlive-pictures>=2020.55342"
+ texlive-core>=2020.57066
+ texlive-latexextra>=2020.57067
+ texlive-pictures>=2020.57065"
 short_desc="TeX Live - Metapackage including some simple packages"
 maintainer="fosslinux <fosslinux@aussies.space>"
 license="GPL-2.0-or-later"

From d283710afc4ac74ba3afbd4def02084b7a71b285 Mon Sep 17 00:00:00 2001
From: fosslinux <fosslinux@aussies.space>
Date: Thu, 31 Dec 2020 11:33:16 +1100
Subject: [PATCH 0110/3482] texlive-most: update to 2020.1.

---
 srcpkgs/texlive-most/template | 28 ++++++++++++++--------------
 1 file changed, 14 insertions(+), 14 deletions(-)

diff --git a/srcpkgs/texlive-most/template b/srcpkgs/texlive-most/template
index 8e61be6ff875..68683f7d1c01 100644
--- a/srcpkgs/texlive-most/template
+++ b/srcpkgs/texlive-most/template
@@ -1,7 +1,7 @@
 # Template file for 'texlive-most'
 pkgname=texlive-most
-version=2020
-revision=2
+version=2020.1
+revision=1
 build_style=meta
 depends="texlive>=20200406
  texlive-BibTeX>=20200406
@@ -11,18 +11,18 @@ depends="texlive>=20200406
  texlive-Xdvi>=20200406
  texlive-XeTeX>=20200406
  texlive-dvi>=20200406
- texlive-core>=2020.55416
- texlive-bibtexextra>=2020.55376
- texlive-fontsextra>=2020.55407
- texlive-formatsextra>=2020.54498
- texlive-games>=2020.55271
- texlive-humanities>=2020.55389
- texlive-latexextra>=2020.55418
- texlive-music>=2020.54758
- texlive-pictures>=2020.55342
- texlive-pstricks>=2020.55289
- texlive-publishers>=2020.55415
- texlive-science>=2020.55390"
+ texlive-core>=2020.57066
+ texlive-bibtexextra>=2020.56991
+ texlive-fontsextra>=2020.57042
+ texlive-formatsextra>=2020.56699
+ texlive-games>=2020.56833
+ texlive-humanities>=2020.57034
+ texlive-latexextra>=2020.57067
+ texlive-music>=2020.56473
+ texlive-pictures>=2020.57065
+ texlive-pstricks>=2020.56758
+ texlive-publishers>=2020.57058
+ texlive-science>=2020.57068"
 short_desc="TeX Live - Metapackage including most packages"
 maintainer="fosslinux <fosslinux@aussies.space>"
 license="GPL-2.0-or-later"

From 482dccd751055142f933ef420436b1a2d80c9a0b Mon Sep 17 00:00:00 2001
From: fosslinux <fosslinux@aussies.space>
Date: Thu, 31 Dec 2020 11:33:29 +1100
Subject: [PATCH 0111/3482] texlive-lang: update to 2020.1.

---
 srcpkgs/texlive-lang/template | 18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)

diff --git a/srcpkgs/texlive-lang/template b/srcpkgs/texlive-lang/template
index b6eb6ec78e16..7473c58c229a 100644
--- a/srcpkgs/texlive-lang/template
+++ b/srcpkgs/texlive-lang/template
@@ -1,15 +1,15 @@
 # Template file for 'texlive-lang'
 pkgname=texlive-lang
-version=2020
-revision=2
+version=2020.1
+revision=1
 build_style=meta
-depends="texlive-core>=2020.55416
- texlive-langchinese>=2020.55162
- texlive-langcyrillic>=2020.54594
- texlive-langextra>=2020.55417
- texlive-langgreek>=2020.54512
- texlive-langjapanese>=2020.55320
- texlive-langkorean>=2020.54519"
+depends="texlive-core>=2020.57066
+ texlive-langchinese>=2020.57044
+ texlive-langcyrillic>=2020.56674
+ texlive-langextra>=2020.56781
+ texlive-langgreek>=2020.56956
+ texlive-langjapanese>=2020.57025
+ texlive-langkorean>=2020.56915"
 short_desc="TeX Live - Metapackage including all languages"
 maintainer="fosslinux <fosslinux@aussies.space>"
 license="GPL-2.0-or-later"

From dddafd43a2d8fb7a9013547aed56de39ffa7d6c1 Mon Sep 17 00:00:00 2001
From: fosslinux <fosslinux@aussies.space>
Date: Thu, 31 Dec 2020 11:33:39 +1100
Subject: [PATCH 0112/3482] texlive-full: update to 2020.1.

---
 srcpkgs/texlive-full/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/texlive-full/template b/srcpkgs/texlive-full/template
index e506e4935c7d..dd578736f605 100644
--- a/srcpkgs/texlive-full/template
+++ b/srcpkgs/texlive-full/template
@@ -1,10 +1,10 @@
 # Template file for 'texlive-full'
 pkgname=texlive-full
-version=2020
-revision=2
+version=2020.1
+revision=1
 build_style=meta
-depends="texlive-most>=2020
- texlive-lang>=2020"
+depends="texlive-most>=2020.1
+ texlive-lang>=2020.1"
 short_desc="TeX Live - Metapackage including all packages"
 maintainer="fosslinux <fosslinux@aussies.space>"
 license="GPL-2.0-or-later"

From f3738c37d684b738bd9536cb2c5b5f7db47a3b6e Mon Sep 17 00:00:00 2001
From: Chris Brannon <chris@the-brannons.com>
Date: Wed, 6 Jan 2021 14:55:41 +0000
Subject: [PATCH 0113/3482] xen: update to 4.14.1.

Also:
* Move qemu-xen firmware to /usr/share, not /usr/libexec.  That's where
Xen expects it.  Some of those things are ELF files, but they're used
as data and not host executables.
* Bring back a musl patch for hvmloader.  This came from Alpine Linux,
though we had it in the tree a long time ago.  Update stdint_local.h
with the version from Alpine.
---
 srcpkgs/xen/files/stdint_local.h              |  29 ++-
 .../patches/musl-hvmloader-fix-stdint.patch   | 190 ++++++++++++++++++
 srcpkgs/xen/template                          |  39 ++--
 3 files changed, 218 insertions(+), 40 deletions(-)
 create mode 100644 srcpkgs/xen/patches/musl-hvmloader-fix-stdint.patch

diff --git a/srcpkgs/xen/files/stdint_local.h b/srcpkgs/xen/files/stdint_local.h
index 2c2fa6dd8386..e61982672767 100644
--- a/srcpkgs/xen/files/stdint_local.h
+++ b/srcpkgs/xen/files/stdint_local.h
@@ -1,23 +1,20 @@
+/* Copied from Alpine Linux's aports repo: */
 /* 32 bit int types */
 #ifndef STDINT_LOCAL_H
 #define STDINT_LOCAL_H
-typedef signed char             int8_t;
-typedef short int               int16_t;
-typedef int                     int32_t;
-# if defined(__x86_64__)
-typedef long int                int64_t;
-#else
-typedef long long int           int64_t;
-#endif
+typedef	__INT8_TYPE__		int8_t;
+typedef __INT16_TYPE__		int16_t;
+typedef __INT32_TYPE__		int32_t;
+typedef __INT64_TYPE__		int64_t;
+typedef __INTPTR_TYPE__		intptr_t;
 
 /* Unsigned.  */
-typedef unsigned char           uint8_t;
-typedef unsigned short int      uint16_t;
-typedef unsigned int            uint32_t;
-# if defined(__x86_64__)
-typedef unsigned long int       uint64_t;
-#else
-typedef unsigned long long int  uint64_t;
-#endif
+typedef	__UINT8_TYPE__		uint8_t;
+typedef __UINT16_TYPE__		uint16_t;
+typedef __UINT32_TYPE__		uint32_t;
+typedef __UINT64_TYPE__		uint64_t;
+typedef __UINTPTR_TYPE__	uintptr_t;
 
+#define INTPTR_MAX	0x7fffffffffffffffL
+#define UINTPTR_MAX	0xffffffffffffffffUL
 #endif
diff --git a/srcpkgs/xen/patches/musl-hvmloader-fix-stdint.patch b/srcpkgs/xen/patches/musl-hvmloader-fix-stdint.patch
new file mode 100644
index 000000000000..0579d595768e
--- /dev/null
+++ b/srcpkgs/xen/patches/musl-hvmloader-fix-stdint.patch
@@ -0,0 +1,190 @@
+(patch from Alpine Linux's aports repository)
+musl's stdint does not support gcc -m32 so we need to make sure that we
+don't use system's stdint.h. We ship a stdind_local.h and make sure that
+we use that instead
+
+https://bugs.alpinelinux.org/issues/3308
+
+diff --git a/tools/firmware/Rules.mk b/tools/firmware/Rules.mk
+index 26bbddc..efad58c 100644
+--- a/tools/firmware/Rules.mk
++++ b/tools/firmware/Rules.mk
+@@ -12,6 +12,7 @@ CFLAGS += -DNDEBUG
+ endif
+ 
+ CFLAGS += -Werror
++CFLAGS += -I$(XEN_ROOT)/tools/firmware
+ 
+ $(call cc-options-add,CFLAGS,CC,$(EMBEDDED_EXTRA_CFLAGS))
+ 
+diff --git a/tools/firmware/hvmloader/32bitbios_support.c b/tools/firmware/hvmloader/32bitbios_support.c
+index 1141350..0ba9d38 100644
+--- a/tools/firmware/hvmloader/32bitbios_support.c
++++ b/tools/firmware/hvmloader/32bitbios_support.c
+@@ -20,8 +20,8 @@
+  * this program; If not, see <http://www.gnu.org/licenses/>.
+  */
+ 
+-#include <inttypes.h>
+-#include <elf.h>
++#include <stdint_local.h>
++#include <elf_local.h>
+ #ifdef __sun__
+ #include <sys/machelf.h>
+ #endif
+diff --git a/tools/firmware/hvmloader/config.h b/tools/firmware/hvmloader/config.h
+index 844120b..8cb799f 100644
+--- a/tools/firmware/hvmloader/config.h
++++ b/tools/firmware/hvmloader/config.h
+@@ -1,7 +1,7 @@
+ #ifndef __HVMLOADER_CONFIG_H__
+ #define __HVMLOADER_CONFIG_H__
+ 
+-#include <stdint.h>
++#include <stdint_local.h>
+ #include <stdbool.h>
+ 
+ enum virtual_vga { VGA_none, VGA_std, VGA_cirrus, VGA_pt };
+diff --git a/tools/firmware/hvmloader/hypercall.h b/tools/firmware/hvmloader/hypercall.h
+index 5368c30..c57bc86 100644
+--- a/tools/firmware/hvmloader/hypercall.h
++++ b/tools/firmware/hvmloader/hypercall.h
+@@ -31,7 +31,7 @@
+ #ifndef __HVMLOADER_HYPERCALL_H__
+ #define __HVMLOADER_HYPERCALL_H__
+ 
+-#include <stdint.h>
++#include <stdint_local.h>
+ #include <xen/xen.h>
+ #include "config.h"
+ 
+diff --git a/tools/firmware/hvmloader/mp_tables.c b/tools/firmware/hvmloader/mp_tables.c
+index d207ecb..6dae38a 100644
+--- a/tools/firmware/hvmloader/mp_tables.c
++++ b/tools/firmware/hvmloader/mp_tables.c
+@@ -27,7 +27,7 @@
+  * this program; If not, see <http://www.gnu.org/licenses/>.
+  */
+ 
+-#include <stdint.h>
++#include <stdint_local.h>
+ #include "config.h"
+ 
+ /* number of non-processor MP table entries */
+diff --git a/tools/firmware/hvmloader/option_rom.h b/tools/firmware/hvmloader/option_rom.h
+index 0fefe08..66a93bc 100644
+--- a/tools/firmware/hvmloader/option_rom.h
++++ b/tools/firmware/hvmloader/option_rom.h
+@@ -1,7 +1,7 @@
+ #ifndef __HVMLOADER_OPTION_ROM_H__
+ #define __HVMLOADER_OPTION_ROM_H__
+ 
+-#include <stdint.h>
++#include <stdint_local.h>
+ 
+ struct option_rom_header {
+     uint8_t signature[2]; /* "\x55\xaa" */
+diff --git a/tools/firmware/hvmloader/pir_types.h b/tools/firmware/hvmloader/pir_types.h
+index 9f9259c..7c004c8 100644
+--- a/tools/firmware/hvmloader/pir_types.h
++++ b/tools/firmware/hvmloader/pir_types.h
+@@ -23,7 +23,7 @@
+ #ifndef PIR_TYPES_H
+ #define PIR_TYPES_H
+ 
+-#include <stdint.h>
++#include <stdint_local.h>
+ 
+ #define NR_PIR_SLOTS 6
+ 
+diff --git a/tools/firmware/hvmloader/smbios.c b/tools/firmware/hvmloader/smbios.c
+index 97a054e..e1646ee 100644
+--- a/tools/firmware/hvmloader/smbios.c
++++ b/tools/firmware/hvmloader/smbios.c
+@@ -19,7 +19,7 @@
+  * Authors: Andrew D. Ball <aball@us.ibm.com>
+  */
+ 
+-#include <stdint.h>
++#include <stdint_local.h>
+ #include <xen/xen.h>
+ #include <xen/version.h>
+ #include "smbios_types.h"
+diff --git a/tools/firmware/hvmloader/smbios_types.h b/tools/firmware/hvmloader/smbios_types.h
+index 7c648ec..6ea0dc8 100644
+--- a/tools/firmware/hvmloader/smbios_types.h
++++ b/tools/firmware/hvmloader/smbios_types.h
+@@ -25,7 +25,7 @@
+ #ifndef SMBIOS_TYPES_H
+ #define SMBIOS_TYPES_H
+ 
+-#include <stdint.h>
++#include <stdint_local.h>
+ 
+ /* SMBIOS entry point -- must be written to a 16-bit aligned address
+    between 0xf0000 and 0xfffff. 
+diff --git a/tools/firmware/hvmloader/util.c b/tools/firmware/hvmloader/util.c
+index 7da144b..5a96608 100644
+--- a/tools/firmware/hvmloader/util.c
++++ b/tools/firmware/hvmloader/util.c
+@@ -24,7 +24,7 @@
+ #include "vnuma.h"
+ #include <acpi2_0.h>
+ #include <libacpi.h>
+-#include <stdint.h>
++#include <stdint_local.h>
+ #include <xen/xen.h>
+ #include <xen/memory.h>
+ #include <xen/sched.h>
+diff --git a/tools/firmware/hvmloader/util.h b/tools/firmware/hvmloader/util.h
+index 31889de..4f32283 100644
+--- a/tools/firmware/hvmloader/util.h
++++ b/tools/firmware/hvmloader/util.h
+@@ -2,7 +2,7 @@
+ #define __HVMLOADER_UTIL_H__
+ 
+ #include <stdarg.h>
+-#include <stdint.h>
++#include <stdint_local.h>
+ #include <stddef.h>
+ #include <stdbool.h>
+ #include <xen/xen.h>
+diff --git a/tools/firmware/rombios/32bit/pmm.c b/tools/firmware/rombios/32bit/pmm.c
+index 09fec42..133cab7 100644
+--- a/tools/firmware/rombios/32bit/pmm.c
++++ b/tools/firmware/rombios/32bit/pmm.c
+@@ -62,7 +62,7 @@
+  *     }
+  */
+ 
+-#include <stdint.h>
++#include <stdint_local.h>
+ #include <stddef.h>
+ #include "config.h"
+ #include "e820.h"
+diff --git a/tools/firmware/rombios/32bit/util.c b/tools/firmware/rombios/32bit/util.c
+index 6c1c480..52c5878 100644
+--- a/tools/firmware/rombios/32bit/util.c
++++ b/tools/firmware/rombios/32bit/util.c
+@@ -17,7 +17,7 @@
+  * this program; If not, see <http://www.gnu.org/licenses/>.
+  */
+ #include <stdarg.h>
+-#include <stdint.h>
++#include <stdint_local.h>
+ #include "rombios_compat.h"
+ #include "util.h"
+ 
+diff --git a/tools/libacpi/acpi2_0.h b/tools/libacpi/acpi2_0.h
+index 2619ba3..c0498ca 100644
+--- a/tools/libacpi/acpi2_0.h
++++ b/tools/libacpi/acpi2_0.h
+@@ -14,7 +14,7 @@
+ #ifndef _ACPI_2_0_H_
+ #define _ACPI_2_0_H_
+ 
+-#include <stdint.h>
++#include <stdint_local.h>
+ #include <xen/xen.h>
+ #include <xen/hvm/ioreq.h>
+ 
diff --git a/srcpkgs/xen/template b/srcpkgs/xen/template
index 5e6381480e37..8b6649410d00 100644
--- a/srcpkgs/xen/template
+++ b/srcpkgs/xen/template
@@ -1,7 +1,7 @@
 # Template file for 'xen'
 pkgname=xen
-version=4.14.0
-revision=4
+version=4.14.1
+revision=1
 # grep -R IPXE_GIT_TAG src/xen-*/tools/firmware/etherboot
 _git_tag_ipxe=4bd064de239dab2426b31c9789a1f4d78087dc63
 # TODO: arm / aarch64
@@ -23,11 +23,21 @@ homepage="https://www.xenproject.org/"
 distfiles="
  https://downloads.xenproject.org/release/xen/${version}/${pkgname}-${version}.tar.gz
  https://github.com/ipxe/ipxe/archive/${_git_tag_ipxe}.tar.gz"
-checksum="
- 06839f68ea7620669dbe8b67861213223cc2a7d02ced61b56e5249c50e87f035
+checksum="cf0d7316ad674491f49b7ef0518cb1d906a2e3bfad639deef0ef2343b119ac0c
  4850691d6f196eaf4d6210f2de01383251b3ea1b928141da9ce28c0b06a90938"
 skip_extraction="${_git_tag_ipxe}.tar.gz"
 nopie=yes
+patch_args='-Np1'
+ignore_elf_dirs="/usr/share/xen/qemu /usr/share/qemu-xen/qemu"
+nostrip_files="
+ hppa-firmware.img
+ u-boot.e500
+ openbios-ppc
+ openbios-sparc32
+ openbios-sparc64
+ palcode-clipper
+ s390-ccw.img
+ s390-netboot.img"
 
 build_options="stubdom"
 build_options_default="stubdom"
@@ -90,19 +100,6 @@ conf_files="
  /etc/conf.d/xendomains
  /etc/conf.d/xencommons
  /etc/xen/xl.conf"
-nostrip_files="
- hppa-firmware.img
- u-boot.e500
- openbios-ppc
- openbios-sparc32
- openbios-sparc64
- palcode-clipper
- s390-ccw.img
- s390-netboot.img"
-ignore_elf_files="
- /usr/share/xen/qemu/openbios-ppc
- /usr/share/xen/qemu/openbios-sparc64
- /usr/share/xen/qemu/openbios-sparc32"
 
 post_extract() {
 	local _src="${XBPS_SRCDISTDIR}/${pkgname}-${version}"
@@ -144,6 +141,7 @@ do_configure() {
 	# Silence a stream edit for dependencies
 	vsed -i Config.mk -e 's;sed ";@&;'
 	cp -a ${FILESDIR}/*.h ${wrksrc}/tools/firmware
+	cp -a ${FILESDIR}/stdint_local.h ${wrksrc}/tools/libxl/
 	rm -f ${XBPS_WRAPPERDIR}/strip
 	./autogen.sh
 	./configure ${configure_args}
@@ -168,9 +166,6 @@ do_install() {
 	# Remove useless stuff.
 	rm -rf ${DESTDIR}/etc/init.d ${DESTDIR}/usr/local
 	rm -f ${DESTDIR}/install.sh
-	if [ -d ${DESTDIR}/usr/lib64/efi ]; then
-		mv -v ${DESTDIR}/usr/lib64/efi ${DESTDIR}/usr/lib/
-	fi
 	rm -rf ${DESTDIR}/usr/lib64
 	rm -rf ${DESTDIR}/usr/bin/qemu-*-xen
 	rm -f ${DESTDIR}/boot/xen{,-4,-4.3}.gz
@@ -197,10 +192,6 @@ do_install() {
 	rm -f ${DESTDIR}/usr/share/doc/xen/html/man/{xmdomain.cfg,xend-config.sxp}.5.html
 	rm -f ${DESTDIR}/usr/share/examples/xen/xmexample*
 
-	# Move usr/share/qemu-xen/qemu to usr/libexec/qemu-xen/qemu
-	mkdir -p ${DESTDIR}/usr/libexec/qemu-xen
-	mv -v ${DESTDIR}/usr/{share,libexec}/qemu-xen/qemu
-
 	# runit services
 	vsv xen
 	vsv xenconsoled

From fcc0982fd8135bd403c387645e784cf6011efd8c Mon Sep 17 00:00:00 2001
From: Giuseppe Fierro <gspe@ae-design.ws>
Date: Tue, 5 Jan 2021 15:27:48 +0100
Subject: [PATCH 0114/3482] hexchat: change depends from enchant to enchant2

---
 srcpkgs/hexchat/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/hexchat/template b/srcpkgs/hexchat/template
index de331d9b7b9f..b0dd3fbbf170 100644
--- a/srcpkgs/hexchat/template
+++ b/srcpkgs/hexchat/template
@@ -1,7 +1,7 @@
 # Template file for 'hexchat'
 pkgname=hexchat
 version=2.14.3
-revision=3
+revision=4
 build_style=meson
 configure_args="-Dwith-dbus=true -Dwith-ssl=true -Dwith-text=false
  -Dwith-perl=/usr/bin/perl -Dwith-python=python3
@@ -10,7 +10,7 @@ hostmakedepends="gettext pkg-config glib-devel"
 makedepends="gtk+-devel libressl-devel dbus-glib-devel perl libnotify-devel
  libcanberra-devel libxml2-devel pciutils-devel libproxy-devel
  iso-codes python3-devel $(vopt_if LuaJIT LuaJIT-devel lua53-devel)"
-depends="desktop-file-utils enchant"
+depends="desktop-file-utils enchant2"
 short_desc="GTK+ based IRC client successor of Xchat"
 maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-2.0-or-later"

From 975d623508103617dd9462eb3242b250e6c12d89 Mon Sep 17 00:00:00 2001
From: Giuseppe Fierro <gspe@ae-design.ws>
Date: Wed, 6 Jan 2021 12:34:28 +0100
Subject: [PATCH 0115/3482] balsa: replace enchant with gspell

---
 srcpkgs/balsa/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/balsa/template b/srcpkgs/balsa/template
index 76db1624f981..255ae0f226a5 100644
--- a/srcpkgs/balsa/template
+++ b/srcpkgs/balsa/template
@@ -1,12 +1,12 @@
 # Template file for 'balsa'
 pkgname=balsa
 version=2.6.1
-revision=1
+revision=2
 build_style=gnu-configure
 configure_args="--without-gnome --with-libsecret --with-gpgme --with-sqlite
- --with-html-widget=webkit2"
+ --with-html-widget=webkit2 --with-spell-checker=gspell"
 hostmakedepends="automake gettext-devel intltool pkg-config"
-makedepends="enchant-devel gmime3-devel gnutls-devel gpgme-devel iso-codes
+makedepends="gspell-devel gmime3-devel gnutls-devel gpgme-devel iso-codes
  libesmtp-devel libnotify-devel libsecret-devel webkit2gtk-devel libical-devel"
 depends="desktop-file-utils hicolor-icon-theme"
 short_desc="Email client for GNOME"

From 972a5d40bf244ef23309cf6b6c71c4a61601e11f Mon Sep 17 00:00:00 2001
From: Giuseppe Fierro <gspe@ae-design.ws>
Date: Wed, 6 Jan 2021 14:47:35 +0100
Subject: [PATCH 0116/3482] python3-enchant: replace enchant with enchant2

By ericonr:
- switch to GH distfiles, which include tests
- fix tests

Closes: #27716 [via git-merge-pr]
---
 srcpkgs/python3-enchant/template | 18 ++++++++----------
 1 file changed, 8 insertions(+), 10 deletions(-)

diff --git a/srcpkgs/python3-enchant/template b/srcpkgs/python3-enchant/template
index cb44e98880b4..f7593aef017f 100644
--- a/srcpkgs/python3-enchant/template
+++ b/srcpkgs/python3-enchant/template
@@ -1,18 +1,16 @@
 # Template file for 'python3-enchant'
 pkgname=python3-enchant
 version=3.1.1
-revision=2
+revision=3
 wrksrc="pyenchant-${version}"
 build_style=python3-module
-hostmakedepends="python3-setuptools enchant-devel"
-depends="enchant"
+hostmakedepends="python3-setuptools enchant2-devel"
+depends="enchant2"
+# needs an en_US dict to run
+checkdepends="$depends python3-pytest python3-pytest-cov hunspell-en_US"
 short_desc="Spellchecking library for Python 3"
 maintainer="Orphaned <orphan@voidlinux.org>"
-license="LGPL-2.1"
+license="LGPL-2.1-only"
 homepage="https://github.com/rfk/pyenchant"
-distfiles="${PYPI_SITE}/p/pyenchant/pyenchant-${version}.tar.gz"
-checksum=ce0915d7acd771fde6e8c2dce8ad0cb0e6f7c4fa8430cc96e3e7134e99aeb12f
-
-do_check() {
-	: GtkSpellCheckerDialog is Python 2 only, at least in my understand
-}
+distfiles="https://github.com/pyenchant/pyenchant/archive/v${version}.tar.gz"
+checksum=ced3a776116e63ed7e496401ed23ac4ba52ac7942cd808492e8e654b27dccacd

From 57c63a7a674e09eeb9ccbbea31a1284d1fca7fa3 Mon Sep 17 00:00:00 2001
From: Giuseppe Fierro <gspe@ae-design.ws>
Date: Wed, 6 Jan 2021 13:46:21 +0100
Subject: [PATCH 0117/3482] lyx: update to 2.3.6.1 and replace old enchant

---
 srcpkgs/lyx/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/lyx/template b/srcpkgs/lyx/template
index 7bac08ea7822..96dad71fe07e 100644
--- a/srcpkgs/lyx/template
+++ b/srcpkgs/lyx/template
@@ -1,16 +1,16 @@
 # Template file for 'lyx'
 pkgname=lyx
-version=2.3.6
+version=2.3.6.1
 revision=1
 build_style=gnu-configure
 configure_args="--enable-qt5 --without-included-mythes --without-included-boost"
 hostmakedepends="pkg-config bc qt5-devel"
-makedepends="file-devel boost-devel mythes-devel enchant-devel qt5-svg-devel"
+makedepends="file-devel boost-devel mythes-devel enchant2-devel qt5-svg-devel"
 depends="virtual?tex GraphicsMagick python3"
 short_desc="Document Processor WYSIWYM Editor & Latex frontend"
 maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://www.lyx.org/Home"
 distfiles="https://ftp.lip6.fr/pub/lyx/stable/2.3.x/${pkgname}-${version}.tar.gz"
-checksum=6cd22594f2dc1e7c4860a97e3340513ab7a82899cd5e824bbaa2a147aa122932
+checksum=6d6f5458ebaac644cdfa35114d029e9ec57b4d930268d6d40bd9795d5c7e7929
 python_version=3

From 153550640ae3511caa7668689c21fb0edb7bace9 Mon Sep 17 00:00:00 2001
From: Nathan Owens <ndowens@artixlinux.org>
Date: Tue, 8 Dec 2020 15:58:26 -0600
Subject: [PATCH 0118/3482] castero: Add missing runtime deps

---
 srcpkgs/castero/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/castero/template b/srcpkgs/castero/template
index d0a29a1c6720..9cf9b3031566 100644
--- a/srcpkgs/castero/template
+++ b/srcpkgs/castero/template
@@ -1,11 +1,11 @@
 # Template file for 'castero'
 pkgname=castero
 version=0.8.2
-revision=1
+revision=2
 build_style=python3-module
 hostmakedepends="python3-setuptools"
-depends="python3-BeautifulSoup4 python3-cjkwrap
- python3-mpv python3-requests"
+depends="python3-BeautifulSoup4 python3-cjkwrap python3-gevent
+ python3-grequests python3-mpv python3-requests python3-zope.event"
 short_desc="TUI podcast client for the terminal"
 maintainer="Nathan Owens <ndowens04@gmail.com>"
 license="MIT"

From e4ceefeace2f40d84efb0e161e5258605bd92e30 Mon Sep 17 00:00:00 2001
From: Nathan Owens <ndowens@artixlinux.org>
Date: Tue, 8 Dec 2020 16:21:48 -0600
Subject: [PATCH 0119/3482] New package: python3-grequests-0.6.0

---
 srcpkgs/python3-grequests/template | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)
 create mode 100644 srcpkgs/python3-grequests/template

diff --git a/srcpkgs/python3-grequests/template b/srcpkgs/python3-grequests/template
new file mode 100644
index 000000000000..7343ca6928d4
--- /dev/null
+++ b/srcpkgs/python3-grequests/template
@@ -0,0 +1,19 @@
+# Template file for 'python3-grequests'
+pkgname=python3-grequests
+version=0.6.0
+revision=1
+wrksrc="grequests-${version}"
+build_style=python3-module
+hostmakedepends="python3-setuptools"
+depends="python3-gevent python3-requests"
+checkdepends="${depends} python3-nose"
+short_desc="Asynchronus HTTP requests with gevent"
+maintainer="Nathan Owens <ndowens@artixlinux.org>"
+license="BSD-2-Clause"
+homepage="https://github.com/spyoungtech/grequests"
+distfiles="https://github.com/spyoungtech/grequests/archive/v${version}.tar.gz"
+checksum=8c4a7c004d6f01a44bb84069043b1d266228af238a4d4f2ea6f6bbdd4c37ee0e
+
+post_install() {
+	vlicense LICENSE
+}

From 84df9b287ae0f33df755e987f0b6228d30b49516 Mon Sep 17 00:00:00 2001
From: Nathan Owens <ndowens@artixlinux.org>
Date: Tue, 8 Dec 2020 16:29:17 -0600
Subject: [PATCH 0120/3482] python3-gevent: update to 20.9.0.

---
 srcpkgs/python3-gevent/patches/setup_py.patch | 18 ------------------
 srcpkgs/python3-gevent/template               |  4 ++--
 2 files changed, 2 insertions(+), 20 deletions(-)
 delete mode 100644 srcpkgs/python3-gevent/patches/setup_py.patch

diff --git a/srcpkgs/python3-gevent/patches/setup_py.patch b/srcpkgs/python3-gevent/patches/setup_py.patch
deleted file mode 100644
index 4aaecb30a60b..000000000000
--- a/srcpkgs/python3-gevent/patches/setup_py.patch
+++ /dev/null
@@ -1,18 +0,0 @@
---- setup.py.orig	2018-06-08 12:56:05.000000000 +0200
-+++ setup.py	2018-06-09 18:13:19.783191927 +0200
-@@ -306,15 +306,6 @@
- 
- 
- def run_setup(ext_modules, run_make):
--    if run_make:
--        if (not LIBEV_EMBED and not WIN and cffi_modules) or PYPY:
--            # We're not embedding libev but we do want
--            # to build the CFFI module. We need to configure libev
--            # because the CORE Extension won't.
--            # TODO: Generalize this.
--            if LIBEV_CFFI_MODULE in cffi_modules and not WIN:
--                system(libev_configure_command)
--
-     setup(
-         name='gevent',
-         version=__version__,
diff --git a/srcpkgs/python3-gevent/template b/srcpkgs/python3-gevent/template
index fad5556530b9..ce71112dc99c 100644
--- a/srcpkgs/python3-gevent/template
+++ b/srcpkgs/python3-gevent/template
@@ -1,6 +1,6 @@
 # Template file for 'python3-gevent'
 pkgname=python3-gevent
-version=1.4.0
+version=20.9.0
 revision=4
 wrksrc="gevent-${version}"
 build_style=python3-module
@@ -12,7 +12,7 @@ maintainer="Orphaned <orphan@voidlinux.org>"
 license="MIT"
 homepage="http://www.gevent.org/"
 distfiles="https://github.com/gevent/gevent/archive/${version}.tar.gz"
-checksum=7dee57c362240b3c15d2f9c50d4b0bb13f4cca25a9fe7adf3ae7c76ddc5e73f4
+checksum=a43d6b8335eae4d1ebb3f9585bcb78c397c6f1f141eb2449838167cbb4a40ee3
 
 export LIBEV_EMBED=0
 export CARES_EMBED=0

From 751648b77953bd1827af4163878c610c876b5e58 Mon Sep 17 00:00:00 2001
From: Nathan Owens <ndowens@artixlinux.org>
Date: Tue, 8 Dec 2020 16:44:50 -0600
Subject: [PATCH 0121/3482] python3-pyinfra: Add missing runtime dep

---
 srcpkgs/python3-pyinfra/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/python3-pyinfra/template b/srcpkgs/python3-pyinfra/template
index da7abbf01fcb..5eb2c77c2c0e 100644
--- a/srcpkgs/python3-pyinfra/template
+++ b/srcpkgs/python3-pyinfra/template
@@ -1,13 +1,13 @@
 # Template file for 'python3-pyinfra'
 pkgname=python3-pyinfra
 version=1.3.3
-revision=1
+revision=2
 wrksrc="pyinfra-${version}"
 build_style=python3-module
 hostmakedepends="python3-setuptools"
 depends="python3 python3-Jinja2 python3-click python3-colorama python3-dateutil
- python3-docopt python3-gevent python3-paramiko python3-pywinrm python3-six
- python3-yaml"
+ python3-distro python3-docopt python3-gevent python3-paramiko python3-pywinrm
+ python3-six python3-yaml"
 short_desc="Automate infrastructure super fast at massive scale"
 maintainer="Leah Neukirchen <leah@vuxu.org>"
 license="MIT"

From 49ded64d23bf1e123f8368d29b25767185385e78 Mon Sep 17 00:00:00 2001
From: Antonio Gurgel <antonio@goorzhel.com>
Date: Mon, 18 Jan 2021 22:23:31 -0800
Subject: [PATCH 0122/3482] python3-pycryptodomex: update to 3.9.9.

---
 srcpkgs/python3-pycryptodomex/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/python3-pycryptodomex/template b/srcpkgs/python3-pycryptodomex/template
index 0e7c5327177c..9c6234007523 100644
--- a/srcpkgs/python3-pycryptodomex/template
+++ b/srcpkgs/python3-pycryptodomex/template
@@ -1,7 +1,7 @@
 # Template file for 'python3-pycryptodomex'
 pkgname=python3-pycryptodomex
-version=3.9.8
-revision=2
+version=3.9.9
+revision=1
 wrksrc="pycryptodomex-${version}"
 build_style=python3-module
 hostmakedepends="python3-setuptools"
@@ -12,7 +12,7 @@ license="Public Domain, BSD-2-Clause"
 homepage="https://www.pycryptodome.org/"
 changelog="https://raw.githubusercontent.com/Legrandin/pycryptodome/master/Changelog.rst"
 distfiles="${PYPI_SITE}/p/pycryptodomex/pycryptodomex-${version}.tar.gz"
-checksum=48cc2cfc251f04a6142badeb666d1ff49ca6fdfc303fd72579f62b768aaa52b9
+checksum=7b5b7c5896f8172ea0beb283f7f9428e0ab88ec248ce0a5b8c98d73e26267d51
 
 post_install() {
 	vlicense LICENSE.rst

From 0b03e999dc8f5fc20be161dc7e1a30b55130c73c Mon Sep 17 00:00:00 2001
From: UsernameRandomlyGenerated <coredavid@tutanota.com>
Date: Tue, 19 Jan 2021 08:45:47 +0100
Subject: [PATCH 0123/3482] ed: update to 1.17.

---
 srcpkgs/ed/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/ed/template b/srcpkgs/ed/template
index d08a86ec40ba..a91b6fadff4a 100644
--- a/srcpkgs/ed/template
+++ b/srcpkgs/ed/template
@@ -1,6 +1,6 @@
 # Template file for 'ed'
 pkgname=ed
-version=1.16
+version=1.17
 revision=1
 build_style=gnu-configure
 hostmakedepends="lzip"
@@ -9,7 +9,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="http://www.gnu.org/software/ed/ed.html"
 distfiles="${GNU_SITE}/$pkgname/$pkgname-$version.tar.lz"
-checksum=cfc07a14ab048a758473ce222e784fbf031485bcd54a76f74acfee1f390d8b2c
+checksum=71de39883c25b6fab44add80635382a10c9bf154515b94729f4a6529ddcc5e54
 
 do_build() {
 	make CC=$CC CFLAGS="$CFLAGS" LDFLAGS="$LDFLAGS"

From 8e4b31e643a1ae40547d7b0654aa9f2a0b90f5be Mon Sep 17 00:00:00 2001
From: mobinmob <mobinmob@disroot.org>
Date: Mon, 18 Jan 2021 16:08:51 +0200
Subject: [PATCH 0124/3482] mtools: update to 4.0.26.

---
 srcpkgs/mtools/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/mtools/template b/srcpkgs/mtools/template
index ddce128dd9d6..ee6656642915 100644
--- a/srcpkgs/mtools/template
+++ b/srcpkgs/mtools/template
@@ -1,6 +1,6 @@
 # Template file for 'mtools'
 pkgname=mtools
-version=4.0.25
+version=4.0.26
 revision=1
 build_style=gnu-configure
 makedepends="acl-devel"
@@ -9,7 +9,7 @@ maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="http://www.gnu.org/software/mtools"
 distfiles="${GNU_SITE}/${pkgname}/${pkgname}-${version}.tar.bz2"
-checksum=fd161eec3bb7a93d13936db67725ad3e17f2d5f4e6fa8f7667fbc7ac728e2c15
+checksum=539f1c8b476a16e198d8bcb10a5799e22e69de49d854f7dbd85b64c2a45dea1a
 conf_files="/etc/mtools.conf"
 
 post_install() {

From b921a889623affaad3ebebed4e86a572f699cbe4 Mon Sep 17 00:00:00 2001
From: mobinmob <mobinmob@disroot.org>
Date: Mon, 18 Jan 2021 13:44:33 +0200
Subject: [PATCH 0125/3482] goodvibes: update to 0.6.2.

---
 srcpkgs/goodvibes/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/goodvibes/template b/srcpkgs/goodvibes/template
index d098fa9fd132..f3b9782ac927 100644
--- a/srcpkgs/goodvibes/template
+++ b/srcpkgs/goodvibes/template
@@ -1,6 +1,6 @@
 # Template file for 'goodvibes'
 pkgname=goodvibes
-version=0.6.1
+version=0.6.2
 revision=1
 wrksrc="goodvibes-v${version}"
 build_style=meson
@@ -14,7 +14,7 @@ license="GPL-3.0-or-later"
 homepage="https://gitlab.com/goodvibes/goodvibes"
 changelog="https://gitlab.com/goodvibes/goodvibes/-/raw/master/NEWS"
 distfiles="https://gitlab.com/goodvibes/goodvibes/-/archive/v${version}/${pkgname}-v${version}.tar.gz"
-checksum=f71e8b5a843b53ca24ec93da2c9c402a71ac2a594434636a83a6b8fd5937f228
+checksum=01eb5dd4853e0f38b159b7f46d87507b8c524cb4a29df899961684873eab4fdc
 
 if [ "$CROSS_BUILD" ]; then
 	hostmakedepends+=" glib-devel"

From 7d4d60fbde3ccf40fc95d16a9b872dadae64241a Mon Sep 17 00:00:00 2001
From: mobinmob <mobinmob@disroot.org>
Date: Mon, 18 Jan 2021 14:16:48 +0200
Subject: [PATCH 0126/3482] dialog: update to 1.3.20210117.

---
 srcpkgs/dialog/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/dialog/template b/srcpkgs/dialog/template
index bafc9132ef3b..3a9f39fe1c1b 100644
--- a/srcpkgs/dialog/template
+++ b/srcpkgs/dialog/template
@@ -1,7 +1,7 @@
 # Template file for 'dialog'
 pkgname=dialog
 _distver=1.3
-_date=20201126
+_date=20210117
 version="${_distver}.${_date}"
 revision=1
 wrksrc="${pkgname}-${_distver}-${_date}"
@@ -13,7 +13,7 @@ maintainer="Orphaned <orphan@voidlinux.org>"
 license="LGPL-2.1-only"
 homepage="https://invisible-island.net/dialog/"
 distfiles="https://invisible-mirror.net/archives/${pkgname}/${pkgname}-${_distver}-${_date}.tgz"
-checksum=c9233a6c8ea33a59e2378e5146ae2bd13b519744cfdb647af7420adac5ad3866
+checksum=3c1ed08f44bcf6f159f2aa6fde765db94e8997b3eefb49d8b4c86691693c43e1
 
 post_install() {
 	rm -r ${DESTDIR}/usr/lib

From d14c3d1d4397a2b53a1dfd498fa8cfc699218c77 Mon Sep 17 00:00:00 2001
From: tibequadorian <tibequadorian@posteo.de>
Date: Mon, 18 Jan 2021 13:26:37 +0100
Subject: [PATCH 0127/3482] conky-cli: update to 1.11.6.

---
 srcpkgs/conky-cli/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/conky-cli/template b/srcpkgs/conky-cli/template
index 64e9bc3ba7f7..4dcfd8deb731 100644
--- a/srcpkgs/conky-cli/template
+++ b/srcpkgs/conky-cli/template
@@ -1,7 +1,7 @@
 # Template file for 'conky-cli'
 pkgname=conky-cli
-version=1.11.5
-revision=3
+version=1.11.6
+revision=1
 wrksrc="${pkgname/-cli/}-${version}"
 build_style=cmake
 conf_files="/etc/conky/conky.conf /etc/conky/conky_no_x11.conf"
@@ -17,7 +17,7 @@ maintainer="Orphaned <orphan@voidlinux.org>"
 license="BSD-3-Clause, GPL-3.0-or-later"
 homepage="https://github.com/brndnmtthws/conky"
 distfiles="https://github.com/brndnmtthws/conky/archive/v${version}.tar.gz"
-checksum=4cefdd92219a90934c28297e4ac7448a3f69d6aeec5d48c5763b23f6b214ef13
+checksum=e7c01e4910744851e05f85f0a0aab3f5068215b1af850515189ac40e7deeb26d
 
 provides="conky-${version}_${revision}"
 conflicts="conky>=0"

From 96534c0c43cf90c954cc51e15515d9fdfab300b8 Mon Sep 17 00:00:00 2001
From: mobinmob <mobinmob@disroot.org>
Date: Mon, 18 Jan 2021 16:22:18 +0200
Subject: [PATCH 0128/3482] monocypher: update to 3.1.2.

---
 srcpkgs/monocypher/template | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/monocypher/template b/srcpkgs/monocypher/template
index 2f062513c882..532e4bbb68ac 100644
--- a/srcpkgs/monocypher/template
+++ b/srcpkgs/monocypher/template
@@ -1,14 +1,15 @@
 # Template file for 'monocypher'
 pkgname=monocypher
-version=3.1.1
+version=3.1.2
 revision=1
 build_style=gnu-makefile
 short_desc="Easy to use crypto library inspired by libsodium and TweetNaCl"
 maintainer="Orphaned <orphan@voidlinux.org>"
 license="BSD-2-Clause, CC0-1.0"
 homepage="https://monocypher.org"
+changelog="https://monocypher.org/changelog"
 distfiles="https://monocypher.org/download/monocypher-${version}.tar.gz"
-checksum=ed96874acfe75781cfbe06b049868920f0e9f493ec78e7d6e3879177a8d0af7a
+checksum=f80a2e16d553e4b119634fd0e85ff86fc42afb4c9cc4569077854d1b6f5ef4f9
 
 post_install() {
 	vlicense LICENCE.md

From f1c5465f0dcda0df34f6a968600893c1410b30b4 Mon Sep 17 00:00:00 2001
From: mobinmob <mobinmob@disroot.org>
Date: Mon, 18 Jan 2021 16:41:08 +0200
Subject: [PATCH 0129/3482] oil: update to 0.8.6.

---
 srcpkgs/oil/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/oil/template b/srcpkgs/oil/template
index b68eca52034a..df432c0f2859 100644
--- a/srcpkgs/oil/template
+++ b/srcpkgs/oil/template
@@ -1,6 +1,6 @@
 # Template file for 'oil'
 pkgname=oil
-version=0.8.4
+version=0.8.6
 revision=1
 build_style=configure
 configure_args="--prefix=/usr $(vopt_with readline)"
@@ -11,7 +11,7 @@ maintainer="Orphaned <orphan@voidlinux.org>"
 license="Apache-2.0"
 homepage="https://www.oilshell.org"
 distfiles="${homepage}/download/${pkgname}-${version}.tar.xz"
-checksum=08fd1c6d653ea594a5dcecb7bf40037e683845cf7627129bbeeb4d0b9fe7b879
+checksum=7d7d66888f325f39ff4fd71b6d9ffb13afed2ecdd15ec5f73e07c2eec0712235
 python_version=2
 register_shell="/usr/bin/osh"
 nocross="Binaries doesn't build if cross built"

From 863481f806dbeee176890ce732cc17ab270ac8e5 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Benjam=C3=ADn=20Albi=C3=B1ana?= <benalb@gmail.com>
Date: Mon, 18 Jan 2021 17:56:30 +0100
Subject: [PATCH 0130/3482] postfix: update to 3.5.9.

---
 srcpkgs/postfix/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/postfix/template b/srcpkgs/postfix/template
index 2b4785932b43..5722fe15adb7 100644
--- a/srcpkgs/postfix/template
+++ b/srcpkgs/postfix/template
@@ -1,6 +1,6 @@
 # Template file for 'postfix'
 pkgname=postfix
-version=3.5.8
+version=3.5.9
 revision=1
 hostmakedepends="perl m4"
 makedepends="icu-devel libldap-devel libmysqlclient-devel pcre-devel
@@ -10,7 +10,7 @@ maintainer="Benjamín Albiñana <benalb@gmail.com>"
 license="IPL-1.0, EPL-2.0"
 homepage="http://www.postfix.org/"
 distfiles="http://ftp.porcupine.org/mirrors/postfix-release/official/${pkgname}-${version}.tar.gz"
-checksum=22582628cf3edc18c5155c9ff44543dd95a9435fb68135d76a99f572cb07456f
+checksum=51ced5a3165a415beba812b6c9ead0496b7172ac6c3beb654d2ccd9a1b00762b
 
 system_accounts="postfix"
 postfix_homedir="/var/spool/postfix"

From 9f19256d102d96aef5bbfe9f946ded88a8ad538c Mon Sep 17 00:00:00 2001
From: mojamuto <carlosme@protonmail.ch>
Date: Mon, 18 Jan 2021 18:04:28 +0100
Subject: [PATCH 0131/3482] bleachbit: update to 4.2.0.

---
 srcpkgs/bleachbit/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/bleachbit/template b/srcpkgs/bleachbit/template
index a7b9c9cbb271..7d79473e667b 100644
--- a/srcpkgs/bleachbit/template
+++ b/srcpkgs/bleachbit/template
@@ -1,6 +1,6 @@
 # Template file for 'bleachbit'
 pkgname=bleachbit
-version=4.1.0
+version=4.2.0
 revision=1
 build_style=gnu-makefile
 make_install_args="prefix=/usr"
@@ -11,5 +11,5 @@ maintainer="graysky <graysky@archlinux.us>"
 license="GPL-3.0-or-later"
 homepage="https://www.bleachbit.org/"
 distfiles="https://github.com/bleachbit/bleachbit/archive/v${version}.tar.gz"
-checksum=0f783a22e1f8197bae6bfe3074875dd6381b16aab7a3cfe5a3fcd65cba1a4f58
+checksum=cc1a6a191c9d43564e8745e2c576a6d30cfe9b994cda7edc67724dee50fe981c
 python_version=3

From a47f96056b46a71859ecfa3e7efbf9e7dd45988b Mon Sep 17 00:00:00 2001
From: UsernameRandomlyGenerated <coredavid@tutanota.com>
Date: Mon, 18 Jan 2021 18:11:55 +0100
Subject: [PATCH 0132/3482] kid3: update to 3.8.4

---
 common/shlibs         | 4 ++--
 srcpkgs/kid3/template | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index a6b5cedc84ed..e98f088266bd 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -3474,8 +3474,8 @@ libfifechan_opengl.so.0.1.5 fifechan-0.1.5_1
 libpolyclipping.so.22 clipper-6.4.2_1
 libSoapySDR.so.0.7 SoapySDR-0.7.0_1
 libeditorconfig.so.0 editorconfig-0.12.2_1
-libkid3-core.so.3.8.3 kid3-3.8.3_1
-libkid3-gui.so.3.8.3 kid3-3.8.3_1
+libkid3-core.so.3.8.4 kid3-3.8.4_1
+libkid3-gui.so.3.8.4 kid3-3.8.4_1
 libcfitsio.so.9 cfitsio-3.480_1
 libapparmor.so.1 libapparmor-2.12.0_1
 libplacebo.so.72 libplacebo-2.72.0_1
diff --git a/srcpkgs/kid3/template b/srcpkgs/kid3/template
index 5c9375b47524..074b992774dd 100644
--- a/srcpkgs/kid3/template
+++ b/srcpkgs/kid3/template
@@ -1,6 +1,6 @@
 # Template file for 'kid3'
 pkgname=kid3
-version=3.8.3
+version=3.8.4
 revision=1
 build_style=cmake
 configure_args="-DWITH_APPS='CLI;$(vopt_if KDE KDE Qt)'
@@ -19,7 +19,7 @@ maintainer="SolitudeSF <solitudesf@protonmail.com>"
 license="GPL-2.0-only"
 homepage="https://kid3.sourceforge.io"
 distfiles="${SOURCEFORGE_SITE}/kid3/kid3-${version}.tar.gz"
-checksum=6a1aa06d2f225f6d8a139cfd3c3d382f82170fa17196517690d28caaeb220c44
+checksum=598b843aa32ed9530ebfa9a45424579e622714447f0d67cf36a62e693277bc07
 
 build_options="KDE mp3 mp4 flac vorbis taglib chromaprint"
 build_options_default="mp3 mp4 flac vorbis taglib chromaprint"

From d1db70d17cce3fb00a220d445f0217a3846962cf Mon Sep 17 00:00:00 2001
From: mobinmob <mobinmob@disroot.org>
Date: Tue, 19 Jan 2021 00:20:34 +0200
Subject: [PATCH 0133/3482] xfce4-whiskermenu-plugin: update to 2.5.2.

Closes: #28024 [via git-merge-pr]
---
 srcpkgs/xfce4-whiskermenu-plugin/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/xfce4-whiskermenu-plugin/template b/srcpkgs/xfce4-whiskermenu-plugin/template
index 85d226fe0400..93a53ee68ad8 100644
--- a/srcpkgs/xfce4-whiskermenu-plugin/template
+++ b/srcpkgs/xfce4-whiskermenu-plugin/template
@@ -1,6 +1,6 @@
 # Template file for 'xfce4-whiskermenu-plugin'
 pkgname=xfce4-whiskermenu-plugin
-version=2.5.1
+version=2.5.2
 revision=1
 build_style=cmake
 hostmakedepends="gettext pkg-config"
@@ -9,6 +9,6 @@ short_desc="Alternate menu for Xfce4"
 maintainer="mobinmob <mobinmob@disroot.org>"
 license="GPL-2.0-or-later"
 homepage="https://goodies.xfce.org/projects/panel-plugins/xfce4-whiskermenu-plugin"
-changelog="https://gitlab.xfce.org/panel-plugins/xfce4-whiskermenu-plugin/-/raw/master/NEWS"
+changelog="https://gitlab.xfce.org/panel-plugins/xfce4-whiskermenu-plugin/-/raw/main/NEWS"
 distfiles="https://archive.xfce.org/src/panel-plugins/${pkgname}/${version%.*}/${pkgname}-${version}.tar.bz2"
-checksum=b2074f8a9caa766e2d97f0b960ef2f4d1e20dd804497229bc1f0157791896925
+checksum=a6f7070afd1c9020257d8ed7483872643a6cddd76d5d73de107c7fbd981fc515

From aa57b7079fbe733cd6ec6adfaabaf78b03a88e84 Mon Sep 17 00:00:00 2001
From: Ulf <ulf@voidlinux.home>
Date: Mon, 18 Jan 2021 20:10:48 +0000
Subject: [PATCH 0134/3482] python3-chromecast: update to 7.7.2.

No longer requires requests.

Closes: #28023 [via git-merge-pr]
---
 srcpkgs/python3-chromecast/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/python3-chromecast/template b/srcpkgs/python3-chromecast/template
index 97a9cd9c99d9..c018f118050e 100644
--- a/srcpkgs/python3-chromecast/template
+++ b/srcpkgs/python3-chromecast/template
@@ -1,17 +1,17 @@
 # Template file for 'python3-chromecast'
 pkgname=python3-chromecast
-version=7.7.1
+version=7.7.2
 revision=1
 wrksrc="pychromecast-${version}"
 build_style=python3-module
 hostmakedepends="python3-setuptools"
-depends="python3-requests python3-protobuf python3-zeroconf python3-casttube"
+depends="python3-protobuf python3-zeroconf python3-casttube"
 short_desc="Python3 library to communicate with Google Chromecast"
 maintainer="Ulf <void@uw.anonaddy.com>"
 license="MIT"
 homepage="https://github.com/home-assistant-libs/pychromecast"
 distfiles="https://github.com/home-assistant-libs/pychromecast/archive/${version}.tar.gz"
-checksum=933aa7e334c931739a92ae9869cc0f42752177b7abf0e01460a34e611ad8c0ee
+checksum=98aef480168163c26405c16e69458829d7ec62ac9129c0d9c8f2e86a3f83a10e
 
 post_install() {
 	vlicense LICENSE

From fdefdc04d4662f031da7a46d5a5256d7cf383900 Mon Sep 17 00:00:00 2001
From: mobinmob <mobinmob@disroot.org>
Date: Tue, 19 Jan 2021 00:41:22 +0200
Subject: [PATCH 0135/3482] xfce4-appfinder: update to 4.16.1.

Add changelog.

Closes: #28026 [via git-merge-pr]
---
 srcpkgs/xfce4-appfinder/template | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/xfce4-appfinder/template b/srcpkgs/xfce4-appfinder/template
index c15ca8b10a7f..80c4b0927509 100644
--- a/srcpkgs/xfce4-appfinder/template
+++ b/srcpkgs/xfce4-appfinder/template
@@ -1,7 +1,7 @@
 # Template file for 'xfce4-appfinder'
 pkgname=xfce4-appfinder
-version=4.16.0
-revision=2
+version=4.16.1
+revision=1
 build_style=gnu-configure
 configure_args="--with-locales-dir=/usr/share/locale --enable-gtk3"
 hostmakedepends="pkg-config intltool"
@@ -11,5 +11,6 @@ short_desc="Appfinder for the Xfce Desktop Environment"
 maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://xfce.org/"
+changelog="https://gitlab.xfce.org/xfce/xfce4-appfinder/-/raw/master/NEWS"
 distfiles="https://archive.xfce.org/src/xfce/${pkgname}/${version%.*}/${pkgname}-${version}.tar.bz2"
-checksum=37b92aaaeeec8220ed23163cf89321168d3b49e0c48b4c10f12dc4a21fdf0954
+checksum=bfe3e9bd92695014ee74a2fbb7f5fd1b4c29cf043c4a11598b8958324c81e7ec

From 2aad4dfbb12430603cbb8a3642542f6877926e83 Mon Sep 17 00:00:00 2001
From: mobinmob <mobinmob@disroot.org>
Date: Tue, 19 Jan 2021 00:35:04 +0200
Subject: [PATCH 0136/3482] garcon: update to 4.16.1.

Closes: #28025 [via git-merge-pr]
---
 srcpkgs/garcon/template | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/garcon/template b/srcpkgs/garcon/template
index 327595a2f225..18543988ddfe 100644
--- a/srcpkgs/garcon/template
+++ b/srcpkgs/garcon/template
@@ -1,7 +1,7 @@
 # Template file for 'garcon'
 pkgname=garcon
-version=0.8.0
-revision=3
+version=4.16.1
+revision=1
 build_style=gnu-configure
 build_helper=gir
 configure_args="--disable-static --with-locales-dir=/usr/share/locale
@@ -13,8 +13,9 @@ short_desc="Glib/GIO freedesktop.org compliant menu implementation"
 maintainer="Orphaned <orphan@voidlinux.org>"
 license="LGPL-2.0-or-later"
 homepage="https://xfce.org/"
+changelog="https://gitlab.xfce.org/xfce/garcon/-/raw/master/NEWS"
 distfiles="https://archive.xfce.org/src/xfce/garcon/${version%.*}/${pkgname}-${version}.tar.bz2"
-checksum=4811d89ee5bc48dbdeffd69fc3eec6c112bbf01fde98a9e848335b374a4aa1bb
+checksum=84914927a2c1fda167f67af26a6640630a744a22940df508aa6c752cdbd3d21d
 
 build_options="gir"
 build_options_default="gir"

From 14757effd3210cee0cb7b97fa35b51632aaec84b Mon Sep 17 00:00:00 2001
From: UsernameRandomlyGenerated <coredavid@tutanota.com>
Date: Sun, 17 Jan 2021 21:14:24 +0100
Subject: [PATCH 0137/3482] bpytop: update to 1.0.59.

---
 srcpkgs/bpytop/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/bpytop/template b/srcpkgs/bpytop/template
index 6b0b5474ff41..d1b7362fb732 100644
--- a/srcpkgs/bpytop/template
+++ b/srcpkgs/bpytop/template
@@ -1,6 +1,6 @@
 # Template file for 'bpytop'
 pkgname=bpytop
-version=1.0.57
+version=1.0.59
 revision=1
 build_style=gnu-makefile
 depends="python3-psutil"
@@ -9,7 +9,7 @@ maintainer="Andrew Benson <abenson+void@gmail.com>"
 license="Apache-2.0"
 homepage="https://github.com/aristocratos/bpytop"
 distfiles="${homepage}/archive/v${version}.tar.gz"
-checksum=50978e17d634a53691a78befb9b177a7aa10dae77fd031076e8ac4345ba24c4f
+checksum=c95d0034ab6567a72d377d12806f5a89f87a796e72b8993fbbb5efc79e5a9133
 
 pre_configure() {
 	vsed -e '/^update_check/s/\$update_check/false/' -i bpytop.py

From 8c865beca7e4e1e6da31c795e212fbfde399f54f Mon Sep 17 00:00:00 2001
From: tibequadorian <tibequadorian@posteo.de>
Date: Sun, 17 Jan 2021 21:08:40 +0100
Subject: [PATCH 0138/3482] youtube-dl: update to 2021.01.16.

---
 srcpkgs/youtube-dl/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/youtube-dl/template b/srcpkgs/youtube-dl/template
index a4e36b7f5e6c..e45004501bb3 100644
--- a/srcpkgs/youtube-dl/template
+++ b/srcpkgs/youtube-dl/template
@@ -1,6 +1,6 @@
 # Template file for 'youtube-dl'
 pkgname=youtube-dl
-version=2021.01.08
+version=2021.01.16
 revision=1
 wrksrc="${pkgname}"
 build_style=python3-module
@@ -13,7 +13,7 @@ license="Unlicense"
 homepage="https://yt-dl.org"
 changelog="https://raw.githubusercontent.com/ytdl-org/youtube-dl/master/ChangeLog"
 distfiles="${homepage}/downloads/${version}/${pkgname}-${version}.tar.gz"
-checksum=7340448a90ac82dfb2b1b6569f08bd87552b9b1647a81eb735e11dd6d30607cd
+checksum=113a5272c1917d83f1c1e7e54971ab41aa6e22b43ba736f2b66816220bdf17e1
 
 do_check() {
 	PYTHON=/usr/bin/python3 make offlinetest

From b3a4be619e1b56d0dac6ef6612d31b3cbcae30e3 Mon Sep 17 00:00:00 2001
From: tibequadorian <tibequadorian@posteo.de>
Date: Sun, 17 Jan 2021 20:48:59 +0100
Subject: [PATCH 0139/3482] x42-plugins: update to 20210114.

---
 srcpkgs/x42-plugins/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/x42-plugins/template b/srcpkgs/x42-plugins/template
index dc9ab0efa2a0..001e3d36459b 100644
--- a/srcpkgs/x42-plugins/template
+++ b/srcpkgs/x42-plugins/template
@@ -1,6 +1,6 @@
 # Template file for 'x42-plugins'
 pkgname=x42-plugins
-version=20200714
+version=20210114
 revision=1
 build_style=gnu-makefile
 hostmakedepends="pkg-config"
@@ -9,9 +9,9 @@ makedepends="cairo-devel pango-devel glu-devel jack-devel libsndfile-devel
 short_desc="Collection of LV2 plugins"
 maintainer="tibequadorian <tibequadorian@posteo.de>"
 license="GPL-2.0-or-later"
-homepage="https://github.com/x42/x42-plugins"
+homepage="https://x42-plugins.com"
 distfiles="https://gareus.org/misc/${pkgname}/${pkgname}-${version}.tar.xz"
-checksum=746fe07a561392ba8c9c5de75dd3881fcc1de0733f55880238a62378a72f60ab
+checksum=c54880fe4e596c8fd2918f1adb416cc91c2a3f1c4cb5e88574484517ff1ed8e0
 
 pre_build() {
 	export OPTIMIZATIONS="-fomit-frame-pointer -O3 -fno-finite-math-only -DNDEBUG"

From 537f0f234918c7ec297dcc7a3afee7d84c69d08c Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Wed, 20 Jan 2021 00:11:20 +0100
Subject: [PATCH 0140/3482] janet: disable LTO, breaks jpm

---
 srcpkgs/janet/template | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/srcpkgs/janet/template b/srcpkgs/janet/template
index abc45fde9bde..77674059ea68 100644
--- a/srcpkgs/janet/template
+++ b/srcpkgs/janet/template
@@ -1,8 +1,9 @@
 # Template file for 'janet'
 pkgname=janet
 version=1.14.1
-revision=1
+revision=2
 build_style=meson
+configure_args="-Db_lto=false"  # breaks jpm
 short_desc="Dynamic Lisp dialect and bytecode VM"
 maintainer="Leah Neukirchen <leah@vuxu.org>"
 license="MIT"

From 58644a231887b00a2b69d20fb9462923128a9a81 Mon Sep 17 00:00:00 2001
From: Olaf Mersmann <olafm@p-value.net>
Date: Tue, 19 Jan 2021 22:45:18 +0100
Subject: [PATCH 0141/3482] options.description: describe openblas option

---
 common/options.description     | 1 +
 srcpkgs/dlib/template          | 1 -
 srcpkgs/python3-numpy/template | 1 -
 srcpkgs/python3-scipy/template | 1 -
 4 files changed, 1 insertion(+), 3 deletions(-)

diff --git a/common/options.description b/common/options.description
index 360fc21bca2e..51d3261abf6b 100644
--- a/common/options.description
+++ b/common/options.description
@@ -50,6 +50,7 @@ desc_option_microhttpd="Enable support for microhttpd"
 desc_option_mpcdec="Enable support for the Musepack decoder"
 desc_option_notify="Enable support for desktop notifications (libnotify)"
 desc_option_nvenc="Enable support for NVENC codecs"
+desc_option_openblas="Enable support for OpenBLAS accelerated linear algebra"
 desc_option_opengl="Enable support for OpenGL"
 desc_option_openssl="Enable support for SSL with OpenSSL"
 desc_option_pam="Enable support for PAM"
diff --git a/srcpkgs/dlib/template b/srcpkgs/dlib/template
index 442f3fec8723..bd85c15d64b7 100644
--- a/srcpkgs/dlib/template
+++ b/srcpkgs/dlib/template
@@ -14,7 +14,6 @@ distfiles="https://github.com/davisking/${pkgname}/archive/v${version}.tar.gz"
 checksum=fc3f0986350e8e53aceadf95a71d2f413f1eedc469abda99a462cb528741d411
 
 build_options="openblas x11"
-desc_option_openblas="Enable OpenBlas for performance"
 desc_option_x11="Enable X11 for GUI components"
 build_options_default="openblas x11"
 
diff --git a/srcpkgs/python3-numpy/template b/srcpkgs/python3-numpy/template
index c4e97ae9172d..ae5a0d095328 100644
--- a/srcpkgs/python3-numpy/template
+++ b/srcpkgs/python3-numpy/template
@@ -17,7 +17,6 @@ checksum=43fe3bcdf27a2eb27196a1d140385aeece71c8b1a6eda18d2c6365239e50c60f
 alternatives="numpy:f2py:/usr/bin/f2py3"
 
 build_options="openblas"
-desc_option_openblas="Enable support for openblas accelerated linear algebra"
 
 case "$XBPS_TARGET_MACHINE" in
 	x86_64*|i686*|aarch64*|armv[67]*|ppc64*)
diff --git a/srcpkgs/python3-scipy/template b/srcpkgs/python3-scipy/template
index 04b11c62dfef..0c778e8ef3ca 100644
--- a/srcpkgs/python3-scipy/template
+++ b/srcpkgs/python3-scipy/template
@@ -19,7 +19,6 @@ distfiles="https://github.com/scipy/scipy/releases/download/v${version}/scipy-${
 checksum=dd06d02e8ac6e13e973cbab3da63888daf26a4fec1cd8a8d0804ec872864a7f5
 
 build_options="openblas"
-desc_option_openblas="Enable support for openblas accelerated linear algebra"
 
 case "$XBPS_TARGET_MACHINE" in
 	x86_64*|i686*|aarch64*|armv[67]*|ppc64*)

From fffd6cac0dc89adee8cb194ebc0e1e15d76894f2 Mon Sep 17 00:00:00 2001
From: UsernameRandomlyGenerated <coredavid@tutanota.com>
Date: Sun, 17 Jan 2021 20:49:35 +0100
Subject: [PATCH 0142/3482] celluloid: update to 0.20

---
 srcpkgs/celluloid/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/celluloid/template b/srcpkgs/celluloid/template
index 3e37c48b2f59..1ad41decbe8b 100644
--- a/srcpkgs/celluloid/template
+++ b/srcpkgs/celluloid/template
@@ -1,6 +1,6 @@
 # Template file for 'celluloid'
 pkgname=celluloid
-version=0.19
+version=0.20
 revision=1
 build_style=meson
 hostmakedepends="gettext glib-devel pkg-config"
@@ -10,7 +10,7 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="https://celluloid-player.github.io/"
 distfiles="https://github.com/${pkgname}-player/${pkgname}/releases/download/v${version}/${pkgname}-${version}.tar.xz"
-checksum=5413799506ad82c1ed513e18bee566b814f170364b6f662321f19954759c78e8
+checksum=63798c4cd7da818aef3ddbfed64d67a6db7b14d3774d143db18cefc6aed8524e
 
 gnome-mpv_package() {
 	depends="${sourcepkg}>=${version}_${revision}"

From 7bee58e43a60122d775d8d2fecf0b7163f89d507 Mon Sep 17 00:00:00 2001
From: Michael Taboada <michael@michaels.world>
Date: Sun, 17 Jan 2021 10:01:37 -0800
Subject: [PATCH 0143/3482] tintin: update to 2.02.05.

---
 srcpkgs/tintin/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/tintin/template b/srcpkgs/tintin/template
index 6efe9347c6d5..14fadd6d4dab 100644
--- a/srcpkgs/tintin/template
+++ b/srcpkgs/tintin/template
@@ -1,6 +1,6 @@
 # Template file for 'tintin'
 pkgname=tintin
-version=2.02.01
+version=2.02.05
 revision=1
 wrksrc=tt
 build_wrksrc=src
@@ -11,7 +11,7 @@ maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="http://tintin.sourceforge.net"
 distfiles="${SOURCEFORGE_SITE}/tintin/${pkgname}-${version}.tar.gz"
-checksum=decc933d18f91e0d890e13325d8e9e60eff4238bdf3f431a647dac0c9ad15295
+checksum=63a70052122d24d69d7bc012395745f1a0412dffd456a8e8aab85704d44bd5a1
 
 post_install() {
 	for i in FAQ SCRIPTS README; do

From 4325f230301a6d01cee66f629b66a0b4b87abab6 Mon Sep 17 00:00:00 2001
From: Andrea Brancaleoni <abc@pompel.me>
Date: Tue, 19 Jan 2021 20:39:43 +0000
Subject: [PATCH 0144/3482] python-b2sdk: update to 1.3.0.

---
 srcpkgs/python-b2sdk/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/python-b2sdk/template b/srcpkgs/python-b2sdk/template
index ab0f4edc4aba..d394714962d3 100644
--- a/srcpkgs/python-b2sdk/template
+++ b/srcpkgs/python-b2sdk/template
@@ -1,7 +1,7 @@
 # Template file for 'python-b2sdk'
 # keep python-b2sdk name to revert this package
 pkgname=python-b2sdk
-version=1.2.0
+version=1.3.0
 revision=1
 wrksrc="b2sdk-${version}"
 build_style=python3-module
@@ -14,7 +14,7 @@ maintainer="Andrea Brancaleoni <abc@pompel.me>"
 license="MIT"
 homepage="https://pypi.org/project/b2sdk"
 distfiles="${PYPI_SITE}/b/b2sdk/b2sdk-${version}.tar.gz"
-checksum=8e46ff9d47a9b90d8b9beab1969fcf4920300b02e20e6bf0745be04e09e8a6ff
+checksum=af53e2449414b772a0bd6fad311d98a171c3693f77ebca933499946e786715ae
 
 post_install() {
 	vlicense LICENSE

From 37a22c51d7b629e09275228bac3adad5db81290f Mon Sep 17 00:00:00 2001
From: Andrea Brancaleoni <abc@pompel.me>
Date: Tue, 19 Jan 2021 20:40:41 +0000
Subject: [PATCH 0145/3482] backblaze-b2: update to 2.1.0.

---
 srcpkgs/backblaze-b2/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/backblaze-b2/template b/srcpkgs/backblaze-b2/template
index d613b0297fa0..b37ea7673f6d 100644
--- a/srcpkgs/backblaze-b2/template
+++ b/srcpkgs/backblaze-b2/template
@@ -1,7 +1,7 @@
 # Template file for 'backblaze-b2'
 pkgname=backblaze-b2
-version=1.4.2
-revision=5
+version=2.1.0
+revision=1
 wrksrc="b2-${version}"
 build_style=python3-module
 hostmakedepends="python3-setuptools"
@@ -14,7 +14,7 @@ maintainer="Andrea Brancaleoni <abc@pompel.me>"
 license="MIT"
 homepage="https://github.com/Backblaze/B2_Command_Line_Tool"
 distfiles="${PYPI_SITE}/b/b2/b2-${version}.tar.gz"
-checksum=f0a3baf0a94b4c4cc652c5206a03311516742fe87a0e33b51c06adf3eb89c054
+checksum=fdae4aa7c88c7981ae68784600cc820ab8fd591a2ca6dc7af5e6b4d1549c2080
 replaces="python-b2>=0"
 provides="python-b2-${version}_${revision}"
 

From 2148970336f16c99e1f6be4a4d13b76a276e0382 Mon Sep 17 00:00:00 2001
From: Andrea Brancaleoni <abc@pompel.me>
Date: Tue, 19 Jan 2021 20:41:24 +0000
Subject: [PATCH 0146/3482] bash-preexec: update to 0.4.1.

---
 srcpkgs/bash-preexec/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/bash-preexec/template b/srcpkgs/bash-preexec/template
index 71a5f696c128..abb127f50f6d 100644
--- a/srcpkgs/bash-preexec/template
+++ b/srcpkgs/bash-preexec/template
@@ -1,14 +1,14 @@
 # Template file for 'bash-preexec'
 pkgname=bash-preexec
-version=0.3.7
-revision=2
+version=0.4.1
+revision=1
 depends="bash"
 short_desc="Preexec and Precmd functions for Bash just like Zsh"
 maintainer="Andrea Brancaleoni <abc@pompel.me>"
 license="MIT"
 homepage="https://github.com/rcaloras/bash-preexec"
 distfiles="https://github.com/rcaloras/bash-preexec/archive/${version}.tar.gz"
-checksum=56c33779763f9960dee863f4d87bc58f8da0ad9120b2c60dd12ba61c71c72da4
+checksum=5e6515d247e6156c99a31de6db58e9cbef53071806292a1ca10b7af74633a8c9
 
 do_install() {
 	vbin bash-preexec.sh

From 2d2f20063c06f1daf11929eb61bc07581867d650 Mon Sep 17 00:00:00 2001
From: Andrea Brancaleoni <abc@pompel.me>
Date: Tue, 19 Jan 2021 20:41:49 +0000
Subject: [PATCH 0147/3482] csound: update to 6.15.0.

---
 srcpkgs/csound/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/csound/template b/srcpkgs/csound/template
index 4539bf3a0877..b4c67632ca8a 100644
--- a/srcpkgs/csound/template
+++ b/srcpkgs/csound/template
@@ -1,7 +1,7 @@
 # Template file for 'csound'
 pkgname=csound
-version=6.14.0
-revision=2
+version=6.15.0
+revision=1
 build_style=cmake
 configure_args="
  -DLUA_MODULE_INSTALL_DIR=${XBPS_CROSS_BASE}/usr/lib/lua/5.1
@@ -17,7 +17,7 @@ maintainer="Andrea Brancaleoni <abc@pompel.me>"
 license="LGPL-2.1-or-later"
 homepage="https://csound.com/"
 distfiles="https://github.com/${pkgname}/${pkgname}/archive/${version}.tar.gz"
-checksum=bef349c5304b2d3431ef417933b4c9e9469c0a408a4fa4a98acf0070af360a22
+checksum=d47ed0fb70c752cb06ee2655ee9f010d8d1e369fc73d09d2ac2bc1b3060bf724
 
 CFLAGS="-fcommon"
 CXXFLAGS="-Wno-error -fcommon"

From 5dae041faa25afe562b91d7bd88111c87e62ac53 Mon Sep 17 00:00:00 2001
From: Andrea Brancaleoni <abc@pompel.me>
Date: Tue, 19 Jan 2021 20:48:10 +0000
Subject: [PATCH 0148/3482] packer: update to 1.6.6.

---
 srcpkgs/packer/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/packer/template b/srcpkgs/packer/template
index 2eb02e6aa877..018c81b5b063 100644
--- a/srcpkgs/packer/template
+++ b/srcpkgs/packer/template
@@ -1,6 +1,6 @@
 # Template file for 'packer'
 pkgname=packer
-version=1.6.5
+version=1.6.6
 revision=1
 build_style=go
 go_import_path="github.com/hashicorp/packer"
@@ -9,7 +9,7 @@ maintainer="Andrea Brancaleoni <abc@pompel.me>"
 license="MPL-2.0"
 homepage="http://www.packer.io"
 distfiles="https://${go_import_path}/archive/v${version}.tar.gz"
-checksum=983d20903bf62c3f1e424b67d360cbaa835e3022dc2aa35a0c3bb6a5726c2f82
+checksum=76b2108fce383b558717ce42a23b8bce5f7ab81d7cc64d18a5746d87e0454e43
 replaces="packer-bin>=0"
 
 case "$XBPS_TARGET_MACHINE" in

From b07f53fd1ca42a2688a5149551837c0fef61e2fa Mon Sep 17 00:00:00 2001
From: Andrea Brancaleoni <abc@pompel.me>
Date: Tue, 19 Jan 2021 23:12:58 +0000
Subject: [PATCH 0149/3482] tbb: update to 2020.U3.

---
 srcpkgs/tbb/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/tbb/template b/srcpkgs/tbb/template
index 65886aae299b..aeef6ebdd061 100644
--- a/srcpkgs/tbb/template
+++ b/srcpkgs/tbb/template
@@ -1,7 +1,7 @@
 # Template file for 'tbb'
 pkgname=tbb
-version=2020.U1
-revision=2
+version=2020.U3
+revision=1
 # version rewrite: 2017_U7 (upstream) => 2017.7 (xbps)
 _ver=${version/./_}
 wrksrc="oneTBB-${_ver}"
@@ -12,7 +12,7 @@ maintainer="Andrea Brancaleoni <abc@pompel.me>"
 license="Apache-2.0"
 homepage="https://www.threadingbuildingblocks.org"
 distfiles="https://github.com/oneapi-src/oneTBB/archive/${_ver}.tar.gz"
-checksum=d80ca22c224ab7ef913dfae72c23fc1434b6aa46bfd472916d8c874c90881f5e
+checksum=2103cc6238c935664f87680618f6684d57501d4a2fa8ea8f6c97ad6ff7dc722a
 
 case "$XBPS_TARGET_MACHINE" in
 	x86_64*)

From 3ef35a7b40f9200529ad886c477f9479b82c70f1 Mon Sep 17 00:00:00 2001
From: Andrea Brancaleoni <abc@pompel.me>
Date: Tue, 19 Jan 2021 23:14:12 +0000
Subject: [PATCH 0150/3482] terraform: update to 0.14.4.

---
 srcpkgs/terraform/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/terraform/template b/srcpkgs/terraform/template
index b6440c9c41d4..788b4b2c78d0 100644
--- a/srcpkgs/terraform/template
+++ b/srcpkgs/terraform/template
@@ -1,6 +1,6 @@
 # Template file for 'terraform'
 pkgname=terraform
-version=0.13.5
+version=0.14.4
 revision=1
 build_style=go
 go_import_path="github.com/hashicorp/$pkgname"
@@ -9,4 +9,4 @@ maintainer="Andrea Brancaleoni <abc@pompel.me>"
 license="MPL-2.0"
 homepage="https://www.terraform.io/"
 distfiles="https://$go_import_path/archive/v$version.tar.gz"
-checksum=c4bdb9e636550795862f13e0ae667a1d381bf2f6cd30c4dde54411afdd07aeab
+checksum=56da03b95c62c849adf5c5397ae4bc3b8cad2ca4ffb26244d3daf90567208e63

From 53d8496aef3a6cdbc3ced8298f2873a8dfcd8bec Mon Sep 17 00:00:00 2001
From: Andrea Brancaleoni <abc@pompel.me>
Date: Tue, 19 Jan 2021 23:18:14 +0000
Subject: [PATCH 0151/3482] terragrunt: update to 0.27.1.

---
 srcpkgs/terragrunt/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/terragrunt/template b/srcpkgs/terragrunt/template
index 10e6489f66e1..9f1da160a162 100644
--- a/srcpkgs/terragrunt/template
+++ b/srcpkgs/terragrunt/template
@@ -1,6 +1,6 @@
 # Template file for 'terragrunt'
 pkgname=terragrunt
-version=0.23.33
+version=0.27.1
 revision=1
 build_style=go
 go_import_path="github.com/gruntwork-io/$pkgname"
@@ -11,7 +11,7 @@ maintainer="Andrea Brancaleoni <abc@pompel.me>"
 license="MIT"
 homepage="https://github.com/gruntwork-io/terragrunt"
 distfiles="$homepage/archive/v$version.tar.gz"
-checksum=28e5a3bc2d9ec9ad8a2037680ba28214267ec974f6d8315ad23730c222c6a1fe
+checksum=5cc13d6556b9206335be97a5e8f163c85e2097a44b352c284efb369ea6c0e446
 
 post_install() {
 	vlicense LICENSE.txt

From 88287e9036da0f7fb280f3ad311a30c286b80ba0 Mon Sep 17 00:00:00 2001
From: UsernameRandomlyGenerated <coredavid@tutanota.com>
Date: Sun, 17 Jan 2021 16:43:49 +0100
Subject: [PATCH 0152/3482] jhead: update to 3.0.4

---
 srcpkgs/jhead/patches/CVE-2018-16554.patch | 20 ----------------
 srcpkgs/jhead/patches/CVE-2018-17088.patch | 27 ----------------------
 srcpkgs/jhead/template                     |  4 ++--
 3 files changed, 2 insertions(+), 49 deletions(-)
 delete mode 100644 srcpkgs/jhead/patches/CVE-2018-16554.patch
 delete mode 100644 srcpkgs/jhead/patches/CVE-2018-17088.patch

diff --git a/srcpkgs/jhead/patches/CVE-2018-16554.patch b/srcpkgs/jhead/patches/CVE-2018-16554.patch
deleted file mode 100644
index ba47806e370e..000000000000
--- a/srcpkgs/jhead/patches/CVE-2018-16554.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-From: Ludovic Rousseau <rousseau@debian.org>
-Date: Sat Sep  8 16:19:07 CEST 2018
-Subject: fix heap buffer overflow
-
-Bug-Debian: https://bugs.debian.org/908176
-Description: Fix CVE-2018-16554
-
---- gpsinfo.c
-+++ gpsinfo.c
-@@ -162,7 +162,8 @@
-                 break;
- 
-             case TAG_GPS_ALT:
--                sprintf(ImageInfo.GpsAlt + 1, "%.2fm", 
-+                snprintf(ImageInfo.GpsAlt + 1, sizeof(ImageInfo.GpsAlt) -1,
-+                    "%.2fm",
-                     ConvertAnyFormat(ValuePtr, Format));
-                 break;
-         }
-
diff --git a/srcpkgs/jhead/patches/CVE-2018-17088.patch b/srcpkgs/jhead/patches/CVE-2018-17088.patch
deleted file mode 100644
index 733c7f31bf1a..000000000000
--- a/srcpkgs/jhead/patches/CVE-2018-17088.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From: Ludovic Rousseau <rousseau@debian.org>
-Date: Wed Sep  5 15:32:00 CEST 2018
-Subject: Fix heap buffer overflow
-
-Bug-Debian: http://bugs.debian.org/907925
-Description: Fix CVE-2018-17088
-
---- gpsinfo.c
-+++ gpsinfo.c
-@@ -4,6 +4,7 @@
- // Matthias Wandel,  Dec 1999 - Dec 2002 
- //--------------------------------------------------------------------------
- #include "jhead.h"
-+#include <stdint.h>
- 
- #define MAX_GPS_TAG 0x1e
- 
-@@ -101,7 +102,7 @@
-             unsigned OffsetVal;
-             OffsetVal = Get32u(DirEntry+8);
-             // If its bigger than 4 bytes, the dir entry contains an offset.
--            if (OffsetVal+ByteCount > ExifLength){
-+            if (OffsetVal > UINT32_MAX - ByteCount || OffsetVal+ByteCount > ExifLength){
-                 // Bogus pointer offset and / or bytecount value
-                 ErrNonfatal("Illegal value pointer for Exif gps tag %04x", Tag,0);
-                 continue;
-
diff --git a/srcpkgs/jhead/template b/srcpkgs/jhead/template
index facb6bc2d7df..e6774d93ea9b 100644
--- a/srcpkgs/jhead/template
+++ b/srcpkgs/jhead/template
@@ -1,6 +1,6 @@
 # Template file for 'jhead'
 pkgname=jhead
-version=3.03
+version=3.04
 revision=1
 build_style=gnu-makefile
 short_desc="Display and manipulate EXIF header of JPEG images"
@@ -8,7 +8,7 @@ maintainer="Oliver Kiddle <okiddle@yahoo.co.uk>"
 license="Public Domain"
 homepage="http://www.sentex.net/~mwandel/jhead/"
 distfiles="${homepage}/jhead-${version}.tar.gz"
-checksum=82194e0128d9141038f82fadcb5845391ca3021d61bc00815078601619f6c0c2
+checksum=ef89bbcf4f6c25ed88088cf242a47a6aedfff4f08cc7dc205bf3e2c0f10a03c9
 
 post_extract() {
 	sed -i -e 's,/local,,' -e '/CC.*-o/s/$/ $(LDFLAGS)/' makefile

From f9eeed20877040ec6dcda93daaf5550f08efe868 Mon Sep 17 00:00:00 2001
From: tibequadorian <tibequadorian@posteo.de>
Date: Sun, 17 Jan 2021 21:49:38 +0100
Subject: [PATCH 0153/3482] libstrophe: update to 0.10.1.

removed libressl patch because its supported upstream now
added build option for new c-ares support
added build option for tls
---
 srcpkgs/libstrophe/patches/fix-libressl.patch | 40 -------------------
 srcpkgs/libstrophe/template                   | 14 +++++--
 2 files changed, 10 insertions(+), 44 deletions(-)
 delete mode 100644 srcpkgs/libstrophe/patches/fix-libressl.patch

diff --git a/srcpkgs/libstrophe/patches/fix-libressl.patch b/srcpkgs/libstrophe/patches/fix-libressl.patch
deleted file mode 100644
index a356285ee75b..000000000000
--- a/srcpkgs/libstrophe/patches/fix-libressl.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-Source: maxice8
-Upstream: not upstreamable
-Reason: Fixes compilation with LibreSSL
-
---- src/tls_openssl.c
-+++ src/tls_openssl.c
-@@ -51,12 +51,8 @@ static void _tls_log_error(xmpp_ctx_t *ctx);
- 
- void tls_initialize(void)
- {
--#if OPENSSL_VERSION_NUMBER < 0x10100000L
-     SSL_library_init();
-     SSL_load_error_strings();
--#else
--    OPENSSL_init_ssl(OPENSSL_INIT_LOAD_SSL_STRINGS, NULL);
--#endif
- }
- 
- void tls_shutdown(void)
-@@ -120,20 +116,6 @@ tls_t *tls_new(xmpp_conn_t *conn)
-         /* Trust server's certificate when user sets the flag explicitly. */
-         mode = conn->tls_trust ? SSL_VERIFY_NONE : SSL_VERIFY_PEER;
-         SSL_set_verify(tls->ssl, mode, 0);
--#if OPENSSL_VERSION_NUMBER >= 0x10002000L
--        /* Hostname verification is supported in OpenSSL 1.0.2 and newer. */
--        X509_VERIFY_PARAM *param = SSL_get0_param(tls->ssl);
--
--        /*
--         * Allow only complete wildcards.  RFC 6125 discourages wildcard usage
--         * completely, and lists internationalized domain names as a reason
--         * against partial wildcards.
--         * See https://tools.ietf.org/html/rfc6125#section-7.2 for more information.
--         */
--        X509_VERIFY_PARAM_set_hostflags(param, X509_CHECK_FLAG_NO_PARTIAL_WILDCARDS);
--        X509_VERIFY_PARAM_set1_host(param, conn->domain, 0);
--#endif
--
-         ret = SSL_set_fd(tls->ssl, conn->sock);
-         if (ret <= 0)
-             goto err_free_ssl;
diff --git a/srcpkgs/libstrophe/template b/srcpkgs/libstrophe/template
index 08b98ba8067b..4d90ded8f475 100644
--- a/srcpkgs/libstrophe/template
+++ b/srcpkgs/libstrophe/template
@@ -1,16 +1,22 @@
 # Template file for 'libstrophe'
 pkgname=libstrophe
-version=0.9.3
-revision=2
+version=0.10.1
+revision=1
 build_style=gnu-configure
+configure_args="$(vopt_enable cares) $(vopt_enable tls)"
 hostmakedepends="automake libtool pkg-config"
-makedepends="expat-devel libressl-devel zlib-devel"
+makedepends="$(vopt_if cares c-ares-devel) expat-devel
+ $(vopt_if tls libressl-devel) zlib-devel"
 short_desc="Minimal XMPP library written in C"
 maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-3.0-only"
 homepage="http://strophe.im/libstrophe/"
+changelog="https://raw.githubusercontent.com/strophe/libstrophe/master/ChangeLog"
 distfiles="https://github.com/strophe/libstrophe/archive/${version}.tar.gz"
-checksum=8a3b79f62177ed59c01d4d4108357ff20bd933d53b845ee4e350d304c051a4fe
+checksum=5bf0bbc555cb6059008f1b748370d4d2ee1e1fabd3eeab68475263556405ba39
+
+build_options="cares tls"
+build_options_default="tls"
 
 pre_configure() {
 	NOCONFIGURE=1 ./bootstrap.sh

From a2cdafe611ff8d7df1308bc5a3c4fccc8b777a96 Mon Sep 17 00:00:00 2001
From: tibequadorian <tibequadorian@posteo.de>
Date: Sun, 17 Jan 2021 22:03:00 +0100
Subject: [PATCH 0154/3482] profanity: update to 0.10.0.

---
 srcpkgs/profanity/template | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/profanity/template b/srcpkgs/profanity/template
index 88c75ab5f2fc..338e3092a675 100644
--- a/srcpkgs/profanity/template
+++ b/srcpkgs/profanity/template
@@ -1,7 +1,7 @@
 # Template file for 'profanity'
 pkgname=profanity
-version=0.9.5
-revision=3
+version=0.10.0
+revision=1
 build_style=gnu-configure
 configure_args="$(vopt_enable notify notifications) $(vopt_enable otr)
  $(vopt_enable pgp) $(vopt_enable python python-plugins) $(vopt_enable plugins)
@@ -18,8 +18,9 @@ short_desc="Console based XMPP client"
 maintainer="Anthony Iliopoulos <ailiop@altatus.com>"
 license="GPL-3.0-or-later"
 homepage="https://profanity-im.github.io/"
+changelog="https://raw.githubusercontent.com/profanity-im/profanity/master/CHANGELOG"
 distfiles="https://github.com/boothj5/profanity/releases/download/${version}/profanity-${version}.tar.gz"
-checksum=23f7b2e5c6cf85913b9e7a228802bca9ecb1d1cf3bf8f8f285e9676176a24902
+checksum=4a05e32590f9ec38430e33735bd02cfa199b257922b4116613f23912ca39ff8c
 
 case "$XBPS_TARGET_MACHINE" in
 	arm*)

From 705698f99cc8409c22432925ae0e8022773fd451 Mon Sep 17 00:00:00 2001
From: teldra <teldra@rotce.de>
Date: Sun, 17 Jan 2021 11:43:18 +0100
Subject: [PATCH 0155/3482] leocad: update to 21.01.

---
 srcpkgs/leocad/template | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/srcpkgs/leocad/template b/srcpkgs/leocad/template
index 4202da76a8bf..fa8a093c6c05 100644
--- a/srcpkgs/leocad/template
+++ b/srcpkgs/leocad/template
@@ -1,8 +1,8 @@
 # Template file for 'leocad'
 pkgname=leocad
-version=19.07.1
-revision=3
-_lib_version=14384
+version=21.01
+revision=1
+_lib_version=20.03
 build_style=qmake
 configure_args="DISABLE_UPDATE_CHECK=1"
 hostmakedepends="qt5-tools-devel unzip"
@@ -12,9 +12,9 @@ maintainer="teldra <teldra@rotce.de>"
 license="GPL-2.0-only, CC-BY-2.0"
 homepage="http://leocad.org"
 distfiles="https://github.com/leozide/${pkgname}/archive/v${version}.tar.gz
- https://github.com/leozide/leocad/releases/download/v${version}/Library-Linux-${_lib_version}.zip"
-checksum="b74557e00366f1d3ddc211f9e55c28dba39987d66e5e3106490ab5fb75d25bc0
- 6bec1e45b464545fab866fcf7842d7e659521d418d7e7391f5f5cf574a4bd4e8"
+ https://github.com/leozide/leocad/releases/download/v${version}/Library-${_lib_version}.zip"
+checksum="d57576ced3855e1b57aa7e310c81929505db57e88a891094972579b2481bf0d6
+ 88d6d28b3a494a15ae63e984c1e732e28362fabc2e145ffab828fed2eb5e3632"
 
 leocad-data_package() {
 	short_desc+=" - data files"

From 391f36b9b259b503a541e6f742cad2c43c7d349a Mon Sep 17 00:00:00 2001
From: Imran Khan <imrankhan@teknik.io>
Date: Wed, 13 Jan 2021 21:41:21 +0600
Subject: [PATCH 0156/3482] pgbouncer: update to 1.15.0.

Fix tests and add changelog.

Closes: #27984 [via git-merge-pr]
---
 srcpkgs/pgbouncer/template | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/pgbouncer/template b/srcpkgs/pgbouncer/template
index 8f4213f2a258..6ea13d31c9c7 100644
--- a/srcpkgs/pgbouncer/template
+++ b/srcpkgs/pgbouncer/template
@@ -1,16 +1,22 @@
 # Template file for 'pgbouncer'
 pkgname=pgbouncer
-version=1.14.0
+version=1.15.0
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="libevent-devel"
+checkdepends="which postgresql13 postgresql13-client"
 short_desc="Lightweight connection pooler for PostgreSQL"
 maintainer="Kyle Nusbaum <knusbaum+void@sdf.org>"
 license="ISC"
 homepage="https://pgbouncer.github.io/"
+changelog="https://raw.githubusercontent.com/pgbouncer/pgbouncer/master/NEWS.md"
 distfiles="https://pgbouncer.github.io/downloads/files/${version}/pgbouncer-${version}.tar.gz"
-checksum=a0c13d10148f557e36ff7ed31793abb7a49e1f8b09aa2d4695d1c28fa101fee7
+checksum=e05a9e158aa6256f60aacbcd9125d3109155c1001a1d1c15d33a37c685d31380
+
+pre_check() {
+	. /etc/profile.d/postgresql13.sh
+}
 
 post_install() {
 	vlicense COPYRIGHT

From 20db1867c69d2baf1b28815e33c53fdc7273802a Mon Sep 17 00:00:00 2001
From: Paper <paper@tilde.institute>
Date: Thu, 14 Jan 2021 17:51:17 +0100
Subject: [PATCH 0157/3482] appstream-glib: update to 0.7.18

---
 srcpkgs/appstream-glib/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/appstream-glib/template b/srcpkgs/appstream-glib/template
index fccc2072965c..5eaf493d53f6 100644
--- a/srcpkgs/appstream-glib/template
+++ b/srcpkgs/appstream-glib/template
@@ -1,6 +1,6 @@
 # Template file for 'appstream-glib'
 pkgname=appstream-glib
-version=0.7.16
+version=0.7.18
 revision=1
 build_style=meson
 build_helper="gir"
@@ -15,7 +15,7 @@ license="LGPL-2.1-or-later"
 homepage="https://people.freedesktop.org/~hughsient/appstream-glib/"
 changelog="https://raw.githubusercontent.com/hughsie/appstream-glib/master/NEWS"
 distfiles="${homepage}/releases/${pkgname}-${version}.tar.xz"
-checksum=04f290d73bc865071112076b8a3345df2730783a16af976fe3becfd2f50d5992
+checksum=ca1ed22e3bde3912cb903aaa7de085d55771da454f1c0573fd9608e1de9c4002
 
 build_options="gir"
 build_options_default="gir"

From 4ad181a3c8f2efa6deff4d9a76842c8d773c7207 Mon Sep 17 00:00:00 2001
From: Paper <paper@tilde.institute>
Date: Thu, 14 Jan 2021 17:49:08 +0100
Subject: [PATCH 0158/3482] deja-dup: update to 42.7

---
 srcpkgs/deja-dup/template | 12 +++++++++---
 1 file changed, 9 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/deja-dup/template b/srcpkgs/deja-dup/template
index d48e19189bdb..4bbc10feae9b 100644
--- a/srcpkgs/deja-dup/template
+++ b/srcpkgs/deja-dup/template
@@ -1,16 +1,22 @@
 # Template file for 'deja-dup'
 pkgname=deja-dup
-version=42.6
+version=42.7
 revision=1
 build_style=meson
 hostmakedepends="appstream-glib dbus glib-devel intltool itstool
  libgpg-error-devel pkg-config vala desktop-file-utils"
 makedepends="gnome-online-accounts-devel json-glib-devel libgpg-error-devel
- libhandy-devel libpeas-devel libsecret-devel libsoup-devel"
+ libhandy1-devel libpeas-devel libsecret-devel libsoup-devel"
 depends="dbus duplicity"
 short_desc="Simple backup tool that uses duplicity as the backend"
 maintainer="John <me@johnnynator.dev>"
 license="GPL-3.0-or-later"
 homepage="https://gitlab.gnome.org/World/deja-dup"
+changelog="https://gitlab.gnome.org/World/deja-dup/-/raw/main/NEWS.md"
 distfiles="https://gitlab.gnome.org/World/deja-dup/-/archive/${version}/deja-dup-${version}.tar.gz"
-checksum=d035fcc7fc84f17fe101184b3a6bfa5a7dd8f51696a1eee092d6d8d75047d7db
+checksum=e4c4986644f829e72b242278eb4298a54c9264be480d854aac8fd72e492b5593
+
+do_check() {
+	# tests fail
+	:
+}

From f7845164d8fdbbc133cf527974b32b1bb1db1f05 Mon Sep 17 00:00:00 2001
From: Paper <paper@tilde.institute>
Date: Thu, 14 Jan 2021 16:39:18 +0100
Subject: [PATCH 0159/3482] libhandy1: update to 1.0.3, adopt

---
 srcpkgs/libhandy1/template | 13 +++++--------
 srcpkgs/libhandy1/update   |  3 +--
 2 files changed, 6 insertions(+), 10 deletions(-)

diff --git a/srcpkgs/libhandy1/template b/srcpkgs/libhandy1/template
index 547afccaa11f..b1b7f1f9c32e 100644
--- a/srcpkgs/libhandy1/template
+++ b/srcpkgs/libhandy1/template
@@ -1,6 +1,6 @@
 # Template file for 'libhandy1'
 pkgname=libhandy1
-version=1.0.0
+version=1.0.3
 revision=1
 wrksrc="libhandy-${version}"
 build_style=meson
@@ -11,20 +11,17 @@ configure_args="-Dexamples=false -Dtests=false $(vopt_bool gir vapi)
  -Dintrospection=$(vopt_if gir enabled disabled)"
 hostmakedepends="glib-devel pkg-config $(vopt_if gir vala-devel)"
 makedepends="gtk+3-devel libglib-devel $(vopt_if glade glade3-devel)"
-short_desc="Library full of GTK+ widgets for mobile phones"
-maintainer="Orphaned <orphan@voidlinux.org>"
+short_desc="GTK+3 Building blocks for modern adaptive applications"
+maintainer="Paper <paper@tilde.institute>"
 license="LGPL-2.0-or-later"
-homepage="https://source.puri.sm/Librem5/libhandy"
+homepage="https://gitlab.gnome.org/GNOME/libhandy/"
 distfiles="${GNOME_SITE}/libhandy/${version%.*}/libhandy-${version}.tar.xz"
-checksum=a9398582f47b7d729205d6eac0c068fef35aaf249fdd57eea3724f8518d26699
+checksum=559bb3acc2c362488917eb72ed25bdc181f4ae26ac94d177634cc5d34c867f7a
 
 build_options="gir glade"
 desc_option_glade="Generate glade modules and catalog files"
 build_options_default="gir glade"
 
-# https://gitlab.gnome.org/GNOME/glade/-/commit/bb626dd
-CFLAGS="-DGWA_GET_CLASS=GLADE_WIDGET_ADAPTOR_GET_ADAPTOR_CLASS"
-
 libhandy1-devel_package() {
 	depends="${sourcepkg}>=${version}_${revision} gtk+3-devel"
 	conflicts="libhandy-devel>=0"
diff --git a/srcpkgs/libhandy1/update b/srcpkgs/libhandy1/update
index bbea94b75ae6..f01319fe1b71 100644
--- a/srcpkgs/libhandy1/update
+++ b/srcpkgs/libhandy1/update
@@ -1,2 +1 @@
-site="https://source.puri.sm/Librem5/libhandy/tags"
-pattern='/archive/[^/]+/\Q'"$pkgname"'\E-v?\K[\d\.]+(?=\.tar\.gz")'
+pkgname=libhandy

From 2e5677268a3af4f5b12b8d883d55a8588113be8f Mon Sep 17 00:00:00 2001
From: yopito <pierre.bourgin@free.fr>
Date: Wed, 13 Jan 2021 22:13:16 +0100
Subject: [PATCH 0160/3482] simage: update to 1.8.1

---
 srcpkgs/simage/template | 30 +++++++++++++-----------------
 1 file changed, 13 insertions(+), 17 deletions(-)

diff --git a/srcpkgs/simage/template b/srcpkgs/simage/template
index 7f26620e1dd1..5bbddc3f0f4b 100644
--- a/srcpkgs/simage/template
+++ b/srcpkgs/simage/template
@@ -1,23 +1,20 @@
 # Template file for 'simage'
 pkgname=simage
-version=1.7.0
-revision=2
-build_style=gnu-configure
-# XXX disable gif support since misuse of giflib 5.x API
-#     (3rd param "int *ErrorCode" is missing in all calls)
-configure_args="--without-gif"
-makedepends="libXt-devel libjpeg-turbo-devel libpng-devel tiff-devel jasper-devel
- libsndfile-devel libogg-devel libvorbis-devel"
+version=1.8.1
+revision=1
+wrksrc=simage
+build_style=cmake
+makedepends="libjpeg-turbo-devel libpng-devel tiff-devel jasper-devel
+ libsndfile-devel libvorbis-devel giflib-devel"
 short_desc="Library with image format loaders for image files as texture"
 maintainer="yopito <pierre.bourgin@free.fr>"
-license="GPL-3"
-homepage="https://bitbucket.org/Coin3D/simage"
-distfiles="https://bitbucket.org/Coin3D/coin/downloads/${pkgname}-${version}.tar.gz"
-checksum=c9a0c43e45f825c46941789f5a8f6c3b61da5ac87e4088cb611ac0fead494def
+license="0BSD"
+homepage="https://github.com/coin3d/simage"
+distfiles="https://github.com/coin3d/simage/releases/download/v${version}/simage-${version}-src.tar.gz"
+checksum=a0b85ffa14cc03dcd5e4918dac8982a280df229f7e5758d1c28281920e9f8e74
 
-pre_configure() {
-	sed -i '326s/(setjmp(png_ptr->jmpbuf)/(setjmp(png_jmpbuf(png_ptr))/' \
-	    src/simage_png.c
+post_install() {
+	vlicense LICENSE
 }
 
 simage-devel_package() {
@@ -25,9 +22,8 @@ simage-devel_package() {
 	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"
 	pkg_install() {
 		vmove usr/include
-		vmove usr/bin
+		vmove usr/lib/cmake
 		vmove "usr/lib/*.so"
 		vmove /usr/lib/pkgconfig
-		vmove /usr/share/aclocal
 	}
 }

From 8cbd86028f36f909674fc26005cb5c2338804928 Mon Sep 17 00:00:00 2001
From: mobinmob <mobinmob@disroot.org>
Date: Wed, 13 Jan 2021 22:52:21 +0200
Subject: [PATCH 0161/3482] libebml: update to 1.4.1.

---
 srcpkgs/libebml/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/libebml/template b/srcpkgs/libebml/template
index 9c85bbb6e8b1..6fa20f7667c6 100644
--- a/srcpkgs/libebml/template
+++ b/srcpkgs/libebml/template
@@ -1,6 +1,6 @@
 # Template file for 'libebml'
 pkgname=libebml
-version=1.4.0
+version=1.4.1
 revision=1
 build_style=cmake
 configure_args="-DBUILD_SHARED_LIBS=ON"
@@ -9,7 +9,7 @@ maintainer="Orphaned <orphan@voidlinux.org>"
 license="LGPL-2.1-or-later"
 homepage="https://dl.matroska.org/downloads/libebml/"
 distfiles="https://dl.matroska.org/downloads/libebml/libebml-${version}.tar.xz"
-checksum=80abc9a82549615018798ee704997270a39b43de9a6e7e0d23b62f8ce682c4b3
+checksum=6e94c669405061aa0d25a523b9f1bea8ac73536e37721a110b3372c7f8717032
 
 libebml-devel_package() {
 	depends="libebml>=${version}_${revision}"

From cd054a0aa52bb4cc9549f453147ee66f4b22a10d Mon Sep 17 00:00:00 2001
From: travankor <travankor@tuta.io>
Date: Wed, 13 Jan 2021 16:07:44 -0700
Subject: [PATCH 0162/3482] mesa: update to 20.3.3.

---
 srcpkgs/mesa/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/mesa/template b/srcpkgs/mesa/template
index abfaa5031ef7..614f17e76d07 100644
--- a/srcpkgs/mesa/template
+++ b/srcpkgs/mesa/template
@@ -1,6 +1,6 @@
 # Template file for 'mesa'
 pkgname=mesa
-version=20.3.2
+version=20.3.3
 revision=1
 wrksrc="mesa-${version}"
 build_style=meson
@@ -23,7 +23,7 @@ license="MIT, LGPL-2.1-or-later"
 homepage="https://www.mesa3d.org/"
 changelog="https://docs.mesa3d.org/relnotes/${version}.html"
 distfiles="https://mesa.freedesktop.org/archive/mesa-${version}.tar.xz"
-checksum=cce001b685d23afb976b04138714906abcf7e7f996da6355e6a43e5ca486533d
+checksum=f74e212d4838e982a10c203ffa998817d1855c5cf448ae87b58f96edea61d156
 
 if [ "$XBPS_TARGET_LIBC" = "musl" ]; then
 	configure_args+=" -Duse-elf-tls=false"

From 5b1d651502e5986086a4d725177b64bfbcbd4a05 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Wed, 20 Jan 2021 01:33:48 +0100
Subject: [PATCH 0163/3482] mattermost-desktop: remove

---
 .../files/mattermost-desktop.sh               |  2 -
 .../patches/10-only-build-unpacked.patch      |  7 --
 .../patches/20-create-desktop-file.patch      | 17 -----
 .../patches/30-allow-build-as-root.patch      |  4 --
 srcpkgs/mattermost-desktop/template           | 66 -------------------
 5 files changed, 96 deletions(-)
 delete mode 100644 srcpkgs/mattermost-desktop/files/mattermost-desktop.sh
 delete mode 100644 srcpkgs/mattermost-desktop/patches/10-only-build-unpacked.patch
 delete mode 100644 srcpkgs/mattermost-desktop/patches/20-create-desktop-file.patch
 delete mode 100644 srcpkgs/mattermost-desktop/patches/30-allow-build-as-root.patch
 delete mode 100644 srcpkgs/mattermost-desktop/template

diff --git a/srcpkgs/mattermost-desktop/files/mattermost-desktop.sh b/srcpkgs/mattermost-desktop/files/mattermost-desktop.sh
deleted file mode 100644
index a9e09a37a869..000000000000
--- a/srcpkgs/mattermost-desktop/files/mattermost-desktop.sh
+++ /dev/null
@@ -1,2 +0,0 @@
-#!/bin/sh
-exec electron7 /usr/libexec/mattermost-desktop/app.asar --disable-dev-mode "$@"
diff --git a/srcpkgs/mattermost-desktop/patches/10-only-build-unpacked.patch b/srcpkgs/mattermost-desktop/patches/10-only-build-unpacked.patch
deleted file mode 100644
index 7cbf34356a30..000000000000
--- a/srcpkgs/mattermost-desktop/patches/10-only-build-unpacked.patch
+++ /dev/null
@@ -1,7 +0,0 @@
---- electron-builder.json.orig	2020-07-25 12:41:25.091865817 +0300
-+++ electron-builder.json	2020-07-25 12:41:41.889843654 +0300
-@@ -38,3 +38 @@
--      "deb",
--      "tar.gz",
--      "appimage"
-+      "dir"
diff --git a/srcpkgs/mattermost-desktop/patches/20-create-desktop-file.patch b/srcpkgs/mattermost-desktop/patches/20-create-desktop-file.patch
deleted file mode 100644
index c83d76f54150..000000000000
--- a/srcpkgs/mattermost-desktop/patches/20-create-desktop-file.patch
+++ /dev/null
@@ -1,17 +0,0 @@
---- electron-builder.json.orig	2020-07-25 12:46:12.470489136 +0300
-+++ electron-builder.json	2020-07-25 12:47:22.490397616 +0300
-@@ -52 +52,2 @@
--          "README.md"
-+          "README.md",
-+          "Mattermost.desktop"
---- resources/linux/Mattermost.desktop.orig	1970-01-01 03:00:00.000000000 +0300
-+++ resources/linux/Mattermost.desktop		2020-07-25 12:49:12.938253258 +0300
-@@ -0,0 +1,8 @@
-+[Desktop Entry]
-+Name=Mattermost
-+Comment=Mattermost Desktop application for Linux
-+Exec=/usr/bin/mattermost-desktop
-+Terminal=false
-+Type=Application
-+Icon=mattermost-desktop
-+Categories=Network;InstantMessaging;
diff --git a/srcpkgs/mattermost-desktop/patches/30-allow-build-as-root.patch b/srcpkgs/mattermost-desktop/patches/30-allow-build-as-root.patch
deleted file mode 100644
index f7ad3d4936ac..000000000000
--- a/srcpkgs/mattermost-desktop/patches/30-allow-build-as-root.patch
+++ /dev/null
@@ -1,4 +0,0 @@
---- .npmrc.orig	1970-01-01 03:00:00.000000000 +0300
-+++ .npmrc	2020-07-25 19:10:22.837221360 +0300
-@@ -0,0 +1 @@
-+unsafe-perm = true
diff --git a/srcpkgs/mattermost-desktop/template b/srcpkgs/mattermost-desktop/template
deleted file mode 100644
index 66ea1136af50..000000000000
--- a/srcpkgs/mattermost-desktop/template
+++ /dev/null
@@ -1,66 +0,0 @@
-# Template file for 'mattermost-desktop'
-pkgname=mattermost-desktop
-version=4.6.0
-revision=1
-archs="x86_64* i686*"
-wrksrc="desktop-${version}"
-# electron-builder needs GNU tar
-hostmakedepends="git p7zip jq nodejs-lts-10 python libicns GraphicsMagick xz tar"
-makedepends="libnotify-devel electron7"
-depends="electron7"
-short_desc="Team messaging app, an open source Slack alternative"
-maintainer="Orphaned <orphan@voidlinux.org>"
-license="Apache-2.0"
-homepage="https://mattermost.com/"
-distfiles="https://github.com/mattermost/desktop/archive/v${version}.tar.gz"
-checksum=ee1ff93120ed0d296c293950fd00cbd9dcc36a4f5085e1f3abf9c48ccc1e7ce0
-nocross=yes
-
-if [ "$XBPS_LIBC" = "musl" ]; then
-	hostmakedepends+=" gcompat" #XXX: ugly af
-	# Npm fetches a bunch of binaries that are lined against glibc
-	# refuses to use the system one
-	# this also kinda limits the amount of support host archs for the build
-	# can partly fixed by adding some host deps so these tools can be built
-	# from source. In short npm packages are a busted mess that shouldn't exist
-fi
-
-do_configure() {
-	case "${XBPS_TARGET_MACHINE#-musl}" in
-		x86_64*) sed -i 's/--ia32//g' package.json ;;
-		i686*) sed -i 's/--x64//g' package.json ;;
-	esac
-
-	# Prepend to system electron in order to avoid an unneeded download.
-	local electronDist="/usr/lib/electron7"
-	local electronVersion="$(<"$electronDist"/version)"
-	jq '{"electronDist": $electronDist, "electronVersion": $electronVersion} + .' \
-		--arg electronDist "$electronDist" \
-		--arg electronVersion "$electronVersion" \
-		electron-builder.json > electron-builder-new.json
-	mv electron-builder-new.json electron-builder.json
-}
-
-pre_build() {
-	# XXX: Should probably be done in some kind of npm helper
-	export USE_SYSTEM_7ZA="true"
-	npm install
-}
-
-do_build() {
-	export USE_SYSTEM_7ZA="true"
-	npm run build
-	npm run package:linux
-}
-
-do_install() {
-	case $XBPS_TARGET_MACHINE in
-		x86_64*)	cd release/linux-unpacked ;;
-		i686*)		cd release/linux-ia32-unpacked ;;
-	esac
-	vmkdir usr/libexec/${pkgname}
-	vinstall resources/app.asar 644 usr/libexec/${pkgname}
-	vinstall Mattermost.desktop 644 usr/share/applications
-	vinstall icon.svg 644 usr/share/icons/hicolor/scalable/apps mattermost-desktop.svg
-	vbin ${FILESDIR}/mattermost-desktop.sh mattermost-desktop
-}

From 16cefef48dc552862a2663288acbad65deade725 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Wed, 20 Jan 2021 01:34:10 +0100
Subject: [PATCH 0164/3482] electron7: remove

---
 ...musl-default-pthread-stacksize.patch.patch |   31 -
 .../chromium-musl-sandbox.patch.patch         |  176 -
 ...um-musl_canonicalize_file_name.patch.patch |   13 -
 .../chromium-musl_cdefs.patch.patch           |   45 -
 ...musl_define_temp_failure_retry.patch.patch |   18 -
 .../chromium-musl_dns.patch.patch             |   61 -
 .../chromium-musl_exeinfo.patch.patch         |   96 -
 .../chromium-musl_fpstate_t.patch.patch       |   48 -
 .../chromium-musl_getcontext.patch.patch      |   25 -
 .../chromium-musl_mallinfo.patch.patch        |   61 -
 .../chromium-musl_pread_pwrite64.patch.patch  |   18 -
 .../chromium-musl_push_back.patch.patch       |   13 -
 .../chromium-musl_si_fields.patch.patch       |   13 -
 .../chromium-musl_stack_size.patch.patch      |   41 -
 .../chromium-musl_stack_trace.patch.patch     |   44 -
 .../chromium-musl_tcp_listen.patch.patch      |   14 -
 .../chromium-musl_wordsize.patch.patch        |   24 -
 .../chromium-musl_xxx_ppc64le.patch           |  187 -
 ...um-001-upstream_chrome_cleaner.patch.patch |   73 -
 ..._logs_from_test_cild_processes.patch.patch |  342 --
 ...pstream_move_child_process_log.patch.patch |  730 ---
 ...pstream_use_childprocesslogger.patch.patch |  186 -
 ...-005-upstream-chromium_version.patch.patch |   26 -
 .../files/patches/chromium-77-clang.patch     |   13 -
 .../patches/chromium-77-pulseaudio-13.patch   |   82 -
 .../patches/chromium-77-system-icu.patch      |   20 -
 .../patches/chromium-78-gcc-alignas.patch     |  102 -
 .../patches/chromium-78-gcc-enum-range.patch  |   46 -
 .../patches/chromium-78-gcc-noexcept.patch    |   32 -
 .../files/patches/chromium-78-icon.patch      |   12 -
 .../files/patches/chromium-78-include.patch   |   40 -
 .../files/patches/chromium-78-pm-crash.patch  |   43 -
 .../patches/chromium-78-protobuf-export.patch |   13 -
 .../chromium-78-revert-noexcept-r1.patch      | 1471 ------
 ...romium-79-gcc-ambiguous-nodestructor.patch |   39 -
 .../patches/chromium-79-gcc-includes.patch    |  102 -
 .../patches/chromium-79-gcc-status-enum.patch |   31 -
 .../files/patches/chromium-79-icu-65.patch    |   13 -
 .../files/patches/chromium-79-icu-67.patch    |  167 -
 ...chromium-chromium_atk_optional.patch.patch |   17 -
 .../chromium-clang10_glslang.patch.patch      |   25 -
 .../files/patches/chromium-compiler-r10.patch |  185 -
 .../patches/chromium-fix-char_traits.patch    |   14 -
 .../chromium-fix-commandline-include.patch    |   44 -
 .../chromium-fix-sucess-definition.patch      |   15 -
 .../files/patches/chromium-gcc-lto.patch      |  131 -
 .../files/patches/chromium-gcc-shared.patch   |   20 -
 .../patches/chromium-gn_bootstrap_ninja.patch |   32 -
 .../files/patches/chromium-libc_malloc.patch  |   26 -
 .../patches/chromium-toolchain-host.patch     |   11 -
 .../patches/chromium-unbundle-zlib-r1.patch   |   13 -
 ...3-files-to-have-a-start-time-of-zero.patch |   38 -
 .../files/patches/chromium-xxx-ppc64le.patch  | 4141 -----------------
 ...a-script-to-list-patch-targets.patch.patch |   42 -
 .../patches/electron-Build-fixes.patch.patch  |   57 -
 ...ectron-dont-assume-python-is-python2.patch |   17 -
 .../files/patches/electron-fix-includes.patch |   19 -
 .../electron-mjsunit-not-exsit.patch.patch    |   47 -
 srcpkgs/electron7/template                    |  341 --
 srcpkgs/electron7/update                      |    2 -
 60 files changed, 9748 deletions(-)
 delete mode 100644 srcpkgs/electron7/files/musl-patches/chromium-musl-default-pthread-stacksize.patch.patch
 delete mode 100644 srcpkgs/electron7/files/musl-patches/chromium-musl-sandbox.patch.patch
 delete mode 100644 srcpkgs/electron7/files/musl-patches/chromium-musl_canonicalize_file_name.patch.patch
 delete mode 100644 srcpkgs/electron7/files/musl-patches/chromium-musl_cdefs.patch.patch
 delete mode 100644 srcpkgs/electron7/files/musl-patches/chromium-musl_define_temp_failure_retry.patch.patch
 delete mode 100644 srcpkgs/electron7/files/musl-patches/chromium-musl_dns.patch.patch
 delete mode 100644 srcpkgs/electron7/files/musl-patches/chromium-musl_exeinfo.patch.patch
 delete mode 100644 srcpkgs/electron7/files/musl-patches/chromium-musl_fpstate_t.patch.patch
 delete mode 100644 srcpkgs/electron7/files/musl-patches/chromium-musl_getcontext.patch.patch
 delete mode 100644 srcpkgs/electron7/files/musl-patches/chromium-musl_mallinfo.patch.patch
 delete mode 100644 srcpkgs/electron7/files/musl-patches/chromium-musl_pread_pwrite64.patch.patch
 delete mode 100644 srcpkgs/electron7/files/musl-patches/chromium-musl_push_back.patch.patch
 delete mode 100644 srcpkgs/electron7/files/musl-patches/chromium-musl_si_fields.patch.patch
 delete mode 100644 srcpkgs/electron7/files/musl-patches/chromium-musl_stack_size.patch.patch
 delete mode 100644 srcpkgs/electron7/files/musl-patches/chromium-musl_stack_trace.patch.patch
 delete mode 100644 srcpkgs/electron7/files/musl-patches/chromium-musl_tcp_listen.patch.patch
 delete mode 100644 srcpkgs/electron7/files/musl-patches/chromium-musl_wordsize.patch.patch
 delete mode 100644 srcpkgs/electron7/files/musl-patches/chromium-musl_xxx_ppc64le.patch
 delete mode 100644 srcpkgs/electron7/files/patches/chromium-001-upstream_chrome_cleaner.patch.patch
 delete mode 100644 srcpkgs/electron7/files/patches/chromium-002-upstream_save_logs_from_test_cild_processes.patch.patch
 delete mode 100644 srcpkgs/electron7/files/patches/chromium-003-upstream_move_child_process_log.patch.patch
 delete mode 100644 srcpkgs/electron7/files/patches/chromium-004-upstream_use_childprocesslogger.patch.patch
 delete mode 100644 srcpkgs/electron7/files/patches/chromium-005-upstream-chromium_version.patch.patch
 delete mode 100644 srcpkgs/electron7/files/patches/chromium-77-clang.patch
 delete mode 100644 srcpkgs/electron7/files/patches/chromium-77-pulseaudio-13.patch
 delete mode 100644 srcpkgs/electron7/files/patches/chromium-77-system-icu.patch
 delete mode 100644 srcpkgs/electron7/files/patches/chromium-78-gcc-alignas.patch
 delete mode 100644 srcpkgs/electron7/files/patches/chromium-78-gcc-enum-range.patch
 delete mode 100644 srcpkgs/electron7/files/patches/chromium-78-gcc-noexcept.patch
 delete mode 100644 srcpkgs/electron7/files/patches/chromium-78-icon.patch
 delete mode 100644 srcpkgs/electron7/files/patches/chromium-78-include.patch
 delete mode 100644 srcpkgs/electron7/files/patches/chromium-78-pm-crash.patch
 delete mode 100644 srcpkgs/electron7/files/patches/chromium-78-protobuf-export.patch
 delete mode 100644 srcpkgs/electron7/files/patches/chromium-78-revert-noexcept-r1.patch
 delete mode 100644 srcpkgs/electron7/files/patches/chromium-79-gcc-ambiguous-nodestructor.patch
 delete mode 100644 srcpkgs/electron7/files/patches/chromium-79-gcc-includes.patch
 delete mode 100644 srcpkgs/electron7/files/patches/chromium-79-gcc-status-enum.patch
 delete mode 100644 srcpkgs/electron7/files/patches/chromium-79-icu-65.patch
 delete mode 100644 srcpkgs/electron7/files/patches/chromium-79-icu-67.patch
 delete mode 100644 srcpkgs/electron7/files/patches/chromium-chromium_atk_optional.patch.patch
 delete mode 100644 srcpkgs/electron7/files/patches/chromium-clang10_glslang.patch.patch
 delete mode 100644 srcpkgs/electron7/files/patches/chromium-compiler-r10.patch
 delete mode 100644 srcpkgs/electron7/files/patches/chromium-fix-char_traits.patch
 delete mode 100644 srcpkgs/electron7/files/patches/chromium-fix-commandline-include.patch
 delete mode 100644 srcpkgs/electron7/files/patches/chromium-fix-sucess-definition.patch
 delete mode 100644 srcpkgs/electron7/files/patches/chromium-gcc-lto.patch
 delete mode 100644 srcpkgs/electron7/files/patches/chromium-gcc-shared.patch
 delete mode 100644 srcpkgs/electron7/files/patches/chromium-gn_bootstrap_ninja.patch
 delete mode 100644 srcpkgs/electron7/files/patches/chromium-libc_malloc.patch
 delete mode 100644 srcpkgs/electron7/files/patches/chromium-toolchain-host.patch
 delete mode 100644 srcpkgs/electron7/files/patches/chromium-unbundle-zlib-r1.patch
 delete mode 100644 srcpkgs/electron7/files/patches/chromium-upstream-force-mp3-files-to-have-a-start-time-of-zero.patch
 delete mode 100644 srcpkgs/electron7/files/patches/chromium-xxx-ppc64le.patch
 delete mode 100644 srcpkgs/electron7/files/patches/electron-Add-a-script-to-list-patch-targets.patch.patch
 delete mode 100644 srcpkgs/electron7/files/patches/electron-Build-fixes.patch.patch
 delete mode 100644 srcpkgs/electron7/files/patches/electron-dont-assume-python-is-python2.patch
 delete mode 100644 srcpkgs/electron7/files/patches/electron-fix-includes.patch
 delete mode 100644 srcpkgs/electron7/files/patches/electron-mjsunit-not-exsit.patch.patch
 delete mode 100644 srcpkgs/electron7/template
 delete mode 100644 srcpkgs/electron7/update

diff --git a/srcpkgs/electron7/files/musl-patches/chromium-musl-default-pthread-stacksize.patch.patch b/srcpkgs/electron7/files/musl-patches/chromium-musl-default-pthread-stacksize.patch.patch
deleted file mode 100644
index d0c1361b8ed1..000000000000
--- a/srcpkgs/electron7/files/musl-patches/chromium-musl-default-pthread-stacksize.patch.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-diff --git a/base/threading/platform_thread_linux.cc b/base/threading/platform_thread_linux.cc
-index 095c49b..5044bb8 100644
---- a/base/threading/platform_thread_linux.cc
-+++ b/base/threading/platform_thread_linux.cc
-@@ -186,7 +186,7 @@ void TerminateOnThread() {}
- 
- size_t GetDefaultThreadStackSize(const pthread_attr_t& attributes) {
- #if !defined(THREAD_SANITIZER)
--  return 0;
-+  return (1 << 23);
- #else
-   // ThreadSanitizer bloats the stack heavily. Evidence has been that the
-   // default stack size isn't enough for some browser tests.
-diff --git a/chrome/app/shutdown_signal_handlers_posix.cc b/chrome/app/shutdown_signal_handlers_posix.cc
-index 621d441..be21106 100644
---- a/chrome/app/shutdown_signal_handlers_posix.cc
-+++ b/chrome/app/shutdown_signal_handlers_posix.cc
-@@ -187,11 +187,11 @@ void InstallShutdownSignalHandlers(
-   g_shutdown_pipe_read_fd = pipefd[0];
-   g_shutdown_pipe_write_fd = pipefd[1];
- #if !defined(ADDRESS_SANITIZER)
--  const size_t kShutdownDetectorThreadStackSize = PTHREAD_STACK_MIN * 2;
-+  const size_t kShutdownDetectorThreadStackSize = PTHREAD_STACK_MIN * 2 *8;
- #else
-   // ASan instrumentation bloats the stack frames, so we need to increase the
-   // stack size to avoid hitting the guard page.
--  const size_t kShutdownDetectorThreadStackSize = PTHREAD_STACK_MIN * 4;
-+  const size_t kShutdownDetectorThreadStackSize = PTHREAD_STACK_MIN * 4 *8;
- #endif
-   ShutdownDetector* detector = new ShutdownDetector(
-       g_shutdown_pipe_read_fd, std::move(shutdown_callback), task_runner);
diff --git a/srcpkgs/electron7/files/musl-patches/chromium-musl-sandbox.patch.patch b/srcpkgs/electron7/files/musl-patches/chromium-musl-sandbox.patch.patch
deleted file mode 100644
index f485f6cc75af..000000000000
--- a/srcpkgs/electron7/files/musl-patches/chromium-musl-sandbox.patch.patch
+++ /dev/null
@@ -1,176 +0,0 @@
-diff --git a/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc b/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc
-index 348ab6e..4550f9e 100644
---- ./sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc
-+++ ./sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc
-@@ -139,21 +139,11 @@ namespace sandbox {
- // present (as in newer versions of posix_spawn).
- ResultExpr RestrictCloneToThreadsAndEPERMFork() {
-   const Arg<unsigned long> flags(0);
--
--  // TODO(mdempsky): Extend DSL to support (flags & ~mask1) == mask2.
--  const uint64_t kAndroidCloneMask = CLONE_VM | CLONE_FS | CLONE_FILES |
--                                     CLONE_SIGHAND | CLONE_THREAD |
--                                     CLONE_SYSVSEM;
--  const uint64_t kObsoleteAndroidCloneMask = kAndroidCloneMask | CLONE_DETACHED;
--
--  const uint64_t kGlibcPthreadFlags =
--      CLONE_VM | CLONE_FS | CLONE_FILES | CLONE_SIGHAND | CLONE_THREAD |
--      CLONE_SYSVSEM | CLONE_SETTLS | CLONE_PARENT_SETTID | CLONE_CHILD_CLEARTID;
--  const BoolExpr glibc_test = flags == kGlibcPthreadFlags;
--
--  const BoolExpr android_test =
--      AnyOf(flags == kAndroidCloneMask, flags == kObsoleteAndroidCloneMask,
--            flags == kGlibcPthreadFlags);
-+  const int required = CLONE_VM | CLONE_FS | CLONE_FILES | CLONE_SIGHAND |
-+                       CLONE_THREAD | CLONE_SYSVSEM;
-+  const int safe = CLONE_SETTLS | CLONE_PARENT_SETTID | CLONE_CHILD_CLEARTID |
-+                   CLONE_DETACHED;
-+  const BoolExpr thread_clone_ok = (flags&~safe)==required;
- 
-   // The following two flags are the two important flags in any vfork-emulating
-   // clone call. EPERM any clone call that contains both of them.
-@@ -163,7 +153,7 @@ ResultExpr RestrictCloneToThreadsAndEPERMFork() {
-       AnyOf((flags & (CLONE_VM | CLONE_THREAD)) == 0,
-             (flags & kImportantCloneVforkFlags) == kImportantCloneVforkFlags);
- 
--  return If(IsAndroid() ? android_test : glibc_test, Allow())
-+  return If(thread_clone_ok, Allow())
-       .ElseIf(is_fork_or_clone_vfork, Error(EPERM))
-       .Else(CrashSIGSYSClone());
- }
-diff --git a/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc b/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc
-index 7dbcc87..589262f 100644
---- ./sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc
-+++ ./sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc
-@@ -391,6 +391,7 @@ bool SyscallSets::IsAllowedProcessStartOrDeath(int sysno) {
- #if defined(__i386__)
-     case __NR_waitpid:
- #endif
-+    case __NR_set_tid_address:
-       return true;
-     case __NR_clone:  // Should be parameter-restricted.
-     case __NR_setns:  // Privileged.
-@@ -403,7 +404,6 @@ bool SyscallSets::IsAllowedProcessStartOrDeath(int sysno) {
- #if defined(__i386__) || defined(__x86_64__) || defined(__mips__)
-     case __NR_set_thread_area:
- #endif
--    case __NR_set_tid_address:
-     case __NR_unshare:
- #if !defined(__mips__) && !defined(__aarch64__)
-     case __NR_vfork:
-@@ -513,6 +513,8 @@ bool SyscallSets::IsAllowedAddressSpaceAccess(int sysno) {
-     case __NR_mlock:
-     case __NR_munlock:
-     case __NR_munmap:
-+    case __NR_mremap:
-+    case __NR_membarrier:
-       return true;
-     case __NR_madvise:
-     case __NR_mincore:
-@@ -530,7 +532,6 @@ bool SyscallSets::IsAllowedAddressSpaceAccess(int sysno) {
-     case __NR_modify_ldt:
- #endif
-     case __NR_mprotect:
--    case __NR_mremap:
-     case __NR_msync:
-     case __NR_munlockall:
-     case __NR_readahead:
-diff --git a/sandbox/linux/system_headers/arm64_linux_syscalls.h b/sandbox/linux/system_headers/arm64_linux_syscalls.h
-index 59d0eab..7ae7002 100644
---- ./sandbox/linux/system_headers/arm64_linux_syscalls.h
-+++ ./sandbox/linux/system_headers/arm64_linux_syscalls.h
-@@ -1063,4 +1063,8 @@
- #define __NR_memfd_create 279
- #endif
- 
-+#if !defined(__NR_membarrier)
-+#define __NR_membarrier 283
-+#endif
-+
- #endif  // SANDBOX_LINUX_SYSTEM_HEADERS_ARM64_LINUX_SYSCALLS_H_
-diff --git a/sandbox/linux/system_headers/arm_linux_syscalls.h b/sandbox/linux/system_headers/arm_linux_syscalls.h
-index 1addd53..7843b5e 100644
---- ./sandbox/linux/system_headers/arm_linux_syscalls.h
-+++ ./sandbox/linux/system_headers/arm_linux_syscalls.h
-@@ -1385,6 +1385,10 @@
- #define __NR_memfd_create (__NR_SYSCALL_BASE+385)
- #endif
- 
-+#if !defined(__NR_membarrier)
-+#define __NR_membarrier (__NR_SYSCALL_BASE+389)
-+#endif
-+
- // ARM private syscalls.
- #if !defined(__ARM_NR_BASE)
- #define __ARM_NR_BASE (__NR_SYSCALL_BASE + 0xF0000)
-diff --git a/sandbox/linux/system_headers/mips64_linux_syscalls.h b/sandbox/linux/system_headers/mips64_linux_syscalls.h
-index ec75815..612fcfa 100644
---- ./sandbox/linux/system_headers/mips64_linux_syscalls.h
-+++ ./sandbox/linux/system_headers/mips64_linux_syscalls.h
-@@ -1271,4 +1271,8 @@
- #define __NR_memfd_create (__NR_Linux + 314)
- #endif
- 
-+#if !defined(__NR_membarrier)
-+#define __NR_membarrier (__NR_Linux + 318)
-+#endif
-+
- #endif  // SANDBOX_LINUX_SYSTEM_HEADERS_MIPS64_LINUX_SYSCALLS_H_
-diff --git a/sandbox/linux/system_headers/mips_linux_syscalls.h b/sandbox/linux/system_headers/mips_linux_syscalls.h
-index ddbf97f..1742acd 100644
---- ./sandbox/linux/system_headers/mips_linux_syscalls.h
-+++ ./sandbox/linux/system_headers/mips_linux_syscalls.h
-@@ -1433,4 +1433,8 @@
- #define __NR_memfd_create (__NR_Linux + 354)
- #endif
- 
-+#if !defined(__NR_membarrier)
-+#define __NR_membarrier (__NR_Linux + 358)
-+#endif
-+
- #endif  // SANDBOX_LINUX_SYSTEM_HEADERS_MIPS_LINUX_SYSCALLS_H_
-diff --git a/sandbox/linux/system_headers/x86_32_linux_syscalls.h b/sandbox/linux/system_headers/x86_32_linux_syscalls.h
-index a6afc62..7ed0a3b 100644
---- ./sandbox/linux/system_headers/x86_32_linux_syscalls.h
-+++ ./sandbox/linux/system_headers/x86_32_linux_syscalls.h
-@@ -1422,5 +1422,9 @@
- #define __NR_memfd_create 356
- #endif
- 
-+#if !defined(__NR_membarrier)
-+#define __NR_membarrier 375
-+#endif
-+
- #endif  // SANDBOX_LINUX_SYSTEM_HEADERS_X86_32_LINUX_SYSCALLS_H_
- 
-diff --git a/sandbox/linux/system_headers/x86_64_linux_syscalls.h b/sandbox/linux/system_headers/x86_64_linux_syscalls.h
-index 349504a..ea3c7c9 100644
---- ./sandbox/linux/system_headers/x86_64_linux_syscalls.h
-+++ ./sandbox/linux/system_headers/x86_64_linux_syscalls.h
-@@ -1290,5 +1290,9 @@
- #define __NR_memfd_create 319
- #endif
- 
-+#if !defined(__NR_membarrier)
-+#define __NR_membarrier 324
-+#endif
-+
- #endif  // SANDBOX_LINUX_SYSTEM_HEADERS_X86_64_LINUX_SYSCALLS_H_
- 
-diff --git a/services/service_manager/sandbox/linux/bpf_renderer_policy_linux.cc b/services/service_manager/sandbox/linux/bpf_renderer_policy_linux.cc
-index 017f13c..50aeec3 100644
---- ./services/service_manager/sandbox/linux/bpf_renderer_policy_linux.cc
-+++ ./services/service_manager/sandbox/linux/bpf_renderer_policy_linux.cc
-@@ -88,10 +88,10 @@ ResultExpr RendererProcessPolicy::EvaluateSyscall(int sysno) const {
-     case __NR_sysinfo:
-     case __NR_times:
-     case __NR_uname:
--      return Allow();
--    case __NR_sched_getaffinity:
-     case __NR_sched_getparam:
-     case __NR_sched_getscheduler:
-+      return Allow();
-+    case __NR_sched_getaffinity:
-     case __NR_sched_setscheduler:
-       return sandbox::RestrictSchedTarget(GetPolicyPid(), sysno);
-     case __NR_prlimit64:
diff --git a/srcpkgs/electron7/files/musl-patches/chromium-musl_canonicalize_file_name.patch.patch b/srcpkgs/electron7/files/musl-patches/chromium-musl_canonicalize_file_name.patch.patch
deleted file mode 100644
index 05614daa7576..000000000000
--- a/srcpkgs/electron7/files/musl-patches/chromium-musl_canonicalize_file_name.patch.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/third_party/nasm/config/config-linux.h b/third_party/nasm/config/config-linux.h
-index 7eb7c20..882b736 100644
---- a/third_party/nasm/config/config-linux.h
-+++ b/third_party/nasm/config/config-linux.h
-@@ -117,7 +117,7 @@
- #define HAVE_ACCESS 1
- 
- /* Define to 1 if you have the `canonicalize_file_name' function. */
--#define HAVE_CANONICALIZE_FILE_NAME 1
-+/* #undef HAVE_CANONICALIZE_FILE_NAME */
- 
- /* Define to 1 if you have the `cpu_to_le16' intrinsic function. */
- /* #undef HAVE_CPU_TO_LE16 */
diff --git a/srcpkgs/electron7/files/musl-patches/chromium-musl_cdefs.patch.patch b/srcpkgs/electron7/files/musl-patches/chromium-musl_cdefs.patch.patch
deleted file mode 100644
index fc7dc06ff21b..000000000000
--- a/srcpkgs/electron7/files/musl-patches/chromium-musl_cdefs.patch.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-diff --git a/base/allocator/allocator_shim_internals.h b/base/allocator/allocator_shim_internal
-s.h
-index 0196f89..bb42b5d 100644
---- a/base/allocator/allocator_shim_internals.h
-+++ b/base/allocator/allocator_shim_internals.h
-@@ -7,7 +7,9 @@
-
- #if defined(__GNUC__)
-
-+#if defined(__GLIBC__)
- #include <sys/cdefs.h>  // for __THROW
-+#endif
-
- #ifndef __THROW  // Not a glibc system
- #ifdef _NOEXCEPT  // LLVM libc++ uses noexcept instead
-diff --git a/third_party/libsync/src/include/sync/sync.h b/third_party/libsync/src/include/sync/sync.h
-index 50ed0ac..7552a49 100644
---- a/third_party/libsync/src/include/sync/sync.h
-+++ b/third_party/libsync/src/include/sync/sync.h
-@@ -19,12 +19,13 @@
- #ifndef __SYS_CORE_SYNC_H
- #define __SYS_CORE_SYNC_H
- 
--#include <sys/cdefs.h>
- #include <stdint.h>
- 
- #include <linux/types.h>
- 
--__BEGIN_DECLS
-+#ifdef __cplusplus
-+extern "C" {
-+#endif /* __cplusplus */
- 
- struct sync_legacy_merge_data {
-  int32_t fd2;
-@@ -158,6 +159,8 @@ struct sync_pt_info *sync_pt_info(struct sync_fence_info_data *info,
-                                   struct sync_pt_info *itr);
- void sync_fence_info_free(struct sync_fence_info_data *info);
- 
--__END_DECLS
-+#ifdef __cplusplus
-+}
-+#endif /* __cplusplus */
- 
- #endif /* __SYS_CORE_SYNC_H */
diff --git a/srcpkgs/electron7/files/musl-patches/chromium-musl_define_temp_failure_retry.patch.patch b/srcpkgs/electron7/files/musl-patches/chromium-musl_define_temp_failure_retry.patch.patch
deleted file mode 100644
index 61db658f849e..000000000000
--- a/srcpkgs/electron7/files/musl-patches/chromium-musl_define_temp_failure_retry.patch.patch
+++ /dev/null
@@ -1,18 +0,0 @@
---- a/sandbox/linux/suid/sandbox.c	2019-11-19 09:28:05.000000000 +0800
-+++ b/sandbox/linux/suid/sandbox.c	2020-04-24 11:50:12.719880728 +0800
-@@ -42,6 +42,15 @@
- #define CLONE_NEWNET 0x40000000
- #endif
- 
-+#ifndef TEMP_FAILURE_RETRY
-+#define TEMP_FAILURE_RETRY(expression) \
-+  (__extension__                                                             \
-+    ({ long int __result;                                                    \
-+       do __result = (long int) (expression);                                \
-+       while (__result == -1L && errno == EINTR);                            \
-+       __result; }))
-+#endif
-+
- static bool DropRoot();
- 
- #define HANDLE_EINTR(x) TEMP_FAILURE_RETRY(x)
diff --git a/srcpkgs/electron7/files/musl-patches/chromium-musl_dns.patch.patch b/srcpkgs/electron7/files/musl-patches/chromium-musl_dns.patch.patch
deleted file mode 100644
index f49d8bd0afaf..000000000000
--- a/srcpkgs/electron7/files/musl-patches/chromium-musl_dns.patch.patch
+++ /dev/null
@@ -1,61 +0,0 @@
-diff --git a/net/dns/dns_config_service_posix.cc b/net/dns/dns_config_service_posix.cc
-index 2f94832..2dd1a98 100644
---- a/net/dns/dns_config_service_posix.cc
-+++ b/net/dns/dns_config_service_posix.cc
-@@ -150,7 +150,7 @@ ConfigParsePosixResult ReadDnsConfig(DnsConfig* dns_config) {
- #if !defined(OS_ANDROID)
-   ConfigParsePosixResult result;
- // TODO(fuchsia): Use res_ninit() when it's implemented on Fuchsia.
--#if defined(OS_OPENBSD) || defined(OS_FUCHSIA)
-+#if defined(OS_OPENBSD) || defined(OS_FUCHSIA) || (defined(OS_LINUX) && !defined(__GLIBC__))
-   // Note: res_ninit in glibc always returns 0 and sets RES_INIT.
-   // res_init behaves the same way.
-   memset(&_res, 0, sizeof(_res));
-@@ -173,7 +173,7 @@ ConfigParsePosixResult ReadDnsConfig(DnsConfig* dns_config) {
- #else
-   res_nclose(&res);
- #endif  // defined(OS_MACOSX) || defined(OS_FREEBSD)
--#endif  // defined(OS_OPENBSD)
-+#endif  // defined(OS_OPENBSD) || defined(OS_FUCHSIA) || (defined(OS_LINUX) && !defined(__GLIBC__))
- 
- #if defined(OS_MACOSX) && !defined(OS_IOS)
-   ConfigParsePosixResult error = DnsConfigWatcher::CheckDnsConfig();
-diff --git a/net/dns/dns_reloader.cc b/net/dns/dns_reloader.cc
-index 952cff4..4b366f4 100644
---- a/net/dns/dns_reloader.cc
-+++ b/net/dns/dns_reloader.cc
-@@ -4,7 +4,7 @@
- 
- #include "net/dns/dns_reloader.h"
- 
--#if defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_OPENBSD) && \
-+#if defined(OS_POSIX) && defined(__GLIBC__) && !defined(OS_MACOSX) && !defined(OS_OPENBSD) && \
-     !defined(OS_ANDROID) && !defined(OS_FUCHSIA)
- 
- #include <resolv.h>
-diff --git a/net/dns/host_resolver_manager.cc b/net/dns/host_resolver_manager.cc
-index e8dea46..c86a830 100644
---- a/net/dns/host_resolver_manager.cc
-+++ b/net/dns/host_resolver_manager.cc
-@@ -2386,7 +2386,7 @@ HostResolverManager::HostResolverManager(
-   NetworkChangeNotifier::AddConnectionTypeObserver(this);
-   if (system_dns_config_notifier_)
-     system_dns_config_notifier_->AddObserver(this);
--#if defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_OPENBSD) && \
-+#if defined(OS_POSIX) && defined(__GLIBC__) && !defined(OS_MACOSX) && !defined(OS_OPENBSD) && \
-     !defined(OS_ANDROID)
-   EnsureDnsReloaderInit();
- #endif
-diff --git a/net/dns/host_resolver_proc.cc b/net/dns/host_resolver_proc.cc
-index 0824540..3384978 100644
---- a/net/dns/host_resolver_proc.cc
-+++ b/net/dns/host_resolver_proc.cc
-@@ -197,7 +197,7 @@ int SystemHostResolverCall(const std::string& host,
-   base::ScopedBlockingCall scoped_blocking_call(FROM_HERE,
-                                                 base::BlockingType::WILL_BLOCK);
- 
--#if defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_OPENBSD) && \
-+#if defined(OS_POSIX) && defined(__GLIBC__) && !defined(OS_MACOSX) && !defined(OS_OPENBSD) && \
-     !defined(OS_ANDROID) && !defined(OS_FUCHSIA)
-   DnsReloaderMaybeReload();
- #endif
diff --git a/srcpkgs/electron7/files/musl-patches/chromium-musl_exeinfo.patch.patch b/srcpkgs/electron7/files/musl-patches/chromium-musl_exeinfo.patch.patch
deleted file mode 100644
index f1afc7c1b176..000000000000
--- a/srcpkgs/electron7/files/musl-patches/chromium-musl_exeinfo.patch.patch
+++ /dev/null
@@ -1,96 +0,0 @@
-diff --git a/base/debug/stack_trace_posix.cc b/base/debug/stack_trace_posix.cc
-index de2f356..f697c66 100644
---- a/base/debug/stack_trace_posix.cc
-+++ b/base/debug/stack_trace_posix.cc
-@@ -27,7 +27,7 @@
- #if !defined(USE_SYMBOLIZE)
- #include <cxxabi.h>
- #endif
--#if !defined(__UCLIBC__) && !defined(_AIX)
-+#if defined(__GLIBC__) && !defined(__UCLIBC__) && !defined(_AIX)
- #include <execinfo.h>
- #endif
- 
-@@ -86,7 +86,7 @@ void DemangleSymbols(std::string* text) {
-   // Note: code in this function is NOT async-signal safe (std::string uses
-   // malloc internally).
- 
--#if !defined(__UCLIBC__) && !defined(_AIX)
-+#if defined(__GLIBC__) && !defined(__UCLIBC__) && !defined(_AIX)
-   std::string::size_type search_from = 0;
-   while (search_from < text->size()) {
-     // Look for the start of a mangled symbol, from search_from.
-@@ -121,7 +121,7 @@ void DemangleSymbols(std::string* text) {
-       search_from = mangled_start + 2;
-     }
-   }
--#endif  // !defined(__UCLIBC__) && !defined(_AIX)
-+#endif  // defined(__GLIBC__) && !defined(__UCLIBC__) && !defined(_AIX)
- }
- #endif  // !defined(USE_SYMBOLIZE)
- 
-@@ -133,7 +133,7 @@ class BacktraceOutputHandler {
-   virtual ~BacktraceOutputHandler() = default;
- };
- 
--#if !defined(__UCLIBC__) && !defined(_AIX)
-+#if defined(__GLIBC__) && !defined(__UCLIBC__) && !defined(_AIX)
- void OutputPointer(void* pointer, BacktraceOutputHandler* handler) {
-   // This should be more than enough to store a 64-bit number in hex:
-   // 16 hex digits + 1 for null-terminator.
-@@ -216,7 +216,7 @@ void ProcessBacktrace(void* const* trace,
-   }
- #endif  // defined(USE_SYMBOLIZE)
- }
--#endif  // !defined(__UCLIBC__) && !defined(_AIX)
-+#endif  // defined(__GLIBC__) && !defined(__UCLIBC__) && !defined(_AIX)
- 
- void PrintToStderr(const char* output) {
-   // NOTE: This code MUST be async-signal safe (it's used by in-process
-@@ -828,7 +828,7 @@ size_t CollectStackTrace(void** trace, size_t count) {
-   // NOTE: This code MUST be async-signal safe (it's used by in-process
-   // stack dumping signal handler). NO malloc or stdio is allowed here.
- 
--#if !defined(__UCLIBC__) && !defined(_AIX)
-+#if defined(__GLIBC__) && !defined(__UCLIBC__) && !defined(_AIX)
-   // Though the backtrace API man page does not list any possible negative
-   // return values, we take no chance.
-   return base::saturated_cast<size_t>(backtrace(trace, count));
-@@ -841,13 +841,13 @@ void StackTrace::PrintWithPrefix(const char* prefix_string) const {
- // NOTE: This code MUST be async-signal safe (it's used by in-process
- // stack dumping signal handler). NO malloc or stdio is allowed here.
- 
--#if !defined(__UCLIBC__) && !defined(_AIX)
-+#if defined(__GLIBC__) && !defined(__UCLIBC__) && !defined(_AIX)
-   PrintBacktraceOutputHandler handler;
-   ProcessBacktrace(trace_, count_, prefix_string, &handler);
- #endif
- }
- 
--#if !defined(__UCLIBC__) && !defined(_AIX)
-+#if defined(__GLIBC__) && !defined(__UCLIBC__) && !defined(_AIX)
- void StackTrace::OutputToStreamWithPrefix(std::ostream* os,
-                                           const char* prefix_string) const {
-   StreamBacktraceOutputHandler handler(os);
-diff --git a/third_party/swiftshader/third_party/llvm-subzero/build/Linux/include/llvm/Config/config.h b/third_party/swiftshader/third_party/llvm-subzero/build/Linux/include/llvm/Config/config.h
-index 798f150..97acc7c 100644
---- a/third_party/swiftshader/third_party/llvm-subzero/build/Linux/include/llvm/Config/config.h
-+++ b/third_party/swiftshader/third_party/llvm-subzero/build/Linux/include/llvm/Config/config.h
-@@ -14,7 +14,7 @@
- #define ENABLE_CRASH_OVERRIDES 1
- 
- /* Define to 1 if you have the `backtrace' function. */
--#define HAVE_BACKTRACE 1
-+/* #undef HAVE_BACKTRACE */
- 
- /* Define to 1 if you have the <CrashReporterClient.h> header file. */
- /* #undef HAVE_CRASHREPORTERCLIENT_H */
-@@ -55,7 +55,7 @@
- #define HAVE_ERRNO_H 1
- 
- /* Define to 1 if you have the <execinfo.h> header file. */
--#define HAVE_EXECINFO_H 1
-+/* #undef HAVE_EXECINFO_H */
- 
- /* Define to 1 if you have the <fcntl.h> header file. */
- #define HAVE_FCNTL_H 1
diff --git a/srcpkgs/electron7/files/musl-patches/chromium-musl_fpstate_t.patch.patch b/srcpkgs/electron7/files/musl-patches/chromium-musl_fpstate_t.patch.patch
deleted file mode 100644
index d8c41ccd9a03..000000000000
--- a/srcpkgs/electron7/files/musl-patches/chromium-musl_fpstate_t.patch.patch
+++ /dev/null
@@ -1,48 +0,0 @@
-diff --git a/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/ucontext_reader.cc b/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/ucontext_reader.cc
-index 6ee6cc1..a8f9ccc 100644
---- a/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/ucontext_reader.cc
-+++ b/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/ucontext_reader.cc
-@@ -49,7 +49,7 @@ uintptr_t UContextReader::GetInstructionPointer(const ucontext_t* uc) {
- }
- 
- void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc,
--                                    const struct _libc_fpstate* fp) {
-+                                    const struct _fpstate* fp) {
-   const greg_t* regs = uc->uc_mcontext.gregs;
- 
-   out->context_flags = MD_CONTEXT_X86_FULL |
-@@ -97,7 +97,7 @@ uintptr_t UContextReader::GetInstructionPointer(const ucontext_t* uc) {
- }
- 
- void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc,
--                                    const struct _libc_fpstate* fpregs) {
-+                                    const struct _fpstate* fpregs) {
-   const greg_t* regs = uc->uc_mcontext.gregs;
- 
-   out->context_flags = MD_CONTEXT_AMD64_FULL;
-diff --git a/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/ucontext_reader.h b/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/ucontext_reader.h
-index f830618..f3dde1f 100644
---- a/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/ucontext_reader.h
-+++ b/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/ucontext_reader.h
-@@ -50,7 +50,7 @@ struct UContextReader {
-   //   info: the collection of register structures.
- #if defined(__i386__) || defined(__x86_64)
-   static void FillCPUContext(RawContextCPU *out, const ucontext_t *uc,
--                             const struct _libc_fpstate* fp);
-+                             const struct _fpstate* fp);
- #elif defined(__aarch64__)
-   static void FillCPUContext(RawContextCPU *out, const ucontext_t *uc,
-                              const struct fpsimd_context* fpregs);
-diff --git a/third_party/breakpad/breakpad/src/client/linux/minidump_writer/minidump_writer.h b/third_party/breakpad/breakpad/src/client/linux/minidump_writer/minidump_writer.h
-index d1dc331..d1cc562 100644
---- a/third_party/breakpad/breakpad/src/client/linux/minidump_writer/minidump_writer.h
-+++ b/third_party/breakpad/breakpad/src/client/linux/minidump_writer/minidump_writer.h
-@@ -48,7 +48,7 @@ class ExceptionHandler;
- #if defined(__aarch64__)
- typedef struct fpsimd_context fpstate_t;
- #elif !defined(__ARM_EABI__) && !defined(__mips__)
--typedef struct _libc_fpstate fpstate_t;
-+typedef struct _fpstate fpstate_t;
- #endif
- 
- // These entries store a list of memory regions that the client wants included
diff --git a/srcpkgs/electron7/files/musl-patches/chromium-musl_getcontext.patch.patch b/srcpkgs/electron7/files/musl-patches/chromium-musl_getcontext.patch.patch
deleted file mode 100644
index 7697243a9104..000000000000
--- a/srcpkgs/electron7/files/musl-patches/chromium-musl_getcontext.patch.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-diff --git a/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc b/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc
-index b895f6d..4f13352 100644
---- a/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc
-+++ b/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc
-@@ -490,7 +490,9 @@ bool ExceptionHandler::SimulateSignalDelivery(int sig) {
-   siginfo.si_code = SI_USER;
-   siginfo.si_pid = getpid();
-   ucontext_t context;
-+#if defined(__GLIBC__)
-   getcontext(&context);
-+#endif
-   return HandleSignal(sig, &siginfo, &context);
- }
- 
-@@ -675,8 +677,10 @@ bool ExceptionHandler::WriteMinidump() {
-   sys_prctl(PR_SET_DUMPABLE, 1, 0, 0, 0);
- 
-   CrashContext context;
-+#if defined(__GLIBC__)
-   int getcontext_result = getcontext(&context.context);
-   if (getcontext_result)
-+#endif
-     return false;
- 
- #if defined(__i386__)
diff --git a/srcpkgs/electron7/files/musl-patches/chromium-musl_mallinfo.patch.patch b/srcpkgs/electron7/files/musl-patches/chromium-musl_mallinfo.patch.patch
deleted file mode 100644
index 941313e49397..000000000000
--- a/srcpkgs/electron7/files/musl-patches/chromium-musl_mallinfo.patch.patch
+++ /dev/null
@@ -1,61 +0,0 @@
-diff --git a/base/process/process_metrics_posix.cc b/base/process/process_metrics_posix.cc
-index 044bd8d..0521321 100644
---- a/base/process/process_metrics_posix.cc
-+++ b/base/process/process_metrics_posix.cc
-@@ -110,14 +110,14 @@ size_t ProcessMetrics::GetMallocUsage() {
-   malloc_statistics_t stats = {0};
-   malloc_zone_statistics(nullptr, &stats);
-   return stats.size_in_use;
--#elif defined(OS_LINUX) || defined(OS_ANDROID)
-+#elif (defined(OS_LINUX) && defined(__GLIBC__)) || defined(OS_ANDROID)
-   struct mallinfo minfo = mallinfo();
- #if BUILDFLAG(USE_TCMALLOC)
-   return minfo.uordblks;
- #else
-   return minfo.hblkhd + minfo.arena;
- #endif
--#elif defined(OS_FUCHSIA)
-+#else
-   // TODO(fuchsia): Not currently exposed. https://crbug.com/735087.
-   return 0;
- #endif
-diff --git a/base/trace_event/malloc_dump_provider.cc b/base/trace_event/malloc_dump_provider.cc
-index e89597c..eca258c 100644
---- a/base/trace_event/malloc_dump_provider.cc
-+++ b/base/trace_event/malloc_dump_provider.cc
-@@ -132,7 +132,7 @@ bool MallocDumpProvider::OnMemoryDump(const MemoryDumpArgs& args,
-   }
- #elif defined(OS_FUCHSIA)
- // TODO(fuchsia): Port, see https://crbug.com/706592.
--#else
-+#elif defined(OS_LINUX) && defined(__GLIBC__)
-   struct mallinfo info = mallinfo();
-   DCHECK_GE(info.arena + info.hblkhd, info.uordblks);
- 
-diff --git a/third_party/swiftshader/third_party/llvm-subzero/build/Linux/include/llvm/Config/config.h b/third_party/swiftshader/third_party/llvm-subzero/build/Linux/include/llvm/Config/config.h
-index aa98242..97acc7c 100644
---- a/third_party/swiftshader/third_party/llvm-subzero/build/Linux/include/llvm/Config/config.h
-+++ b/third_party/swiftshader/third_party/llvm-subzero/build/Linux/include/llvm/Config/config.h
-@@ -130,7 +130,7 @@
- /* #undef HAVE_MALLCTL */
- 
- /* Define to 1 if you have the `mallinfo' function. */
--#define HAVE_MALLINFO 1
-+/* #undef HAVE_MALLINFO */
- 
- /* Define to 1 if you have the <malloc.h> header file. */
- #define HAVE_MALLOC_H 1
-diff --git a/third_party/swiftshader/third_party/llvm-7.0/configs/linux/include/llvm/Config/config.h b/third_party/swiftshader/third_party/llvm-7.0/configs/linux/include/llvm/Config/config.h
-index 6e17020..d4a9ed0 100644
---- a/third_party/swiftshader/third_party/llvm-7.0/configs/linux/include/llvm/Config/config.h
-+++ b/third_party/swiftshader/third_party/llvm-7.0/configs/linux/include/llvm/Config/config.h
-@@ -122,7 +122,7 @@
- /* #undef HAVE_MALLCTL */
-
- /* Define to 1 if you have the `mallinfo' function. */
--#define HAVE_MALLINFO 1
-+/* #undef HAVE_MALLINFO */
-
- /* Define to 1 if you have the <malloc.h> header file. */
- #define HAVE_MALLOC_H 1
-
diff --git a/srcpkgs/electron7/files/musl-patches/chromium-musl_pread_pwrite64.patch.patch b/srcpkgs/electron7/files/musl-patches/chromium-musl_pread_pwrite64.patch.patch
deleted file mode 100644
index 2aeaaeb7593f..000000000000
--- a/srcpkgs/electron7/files/musl-patches/chromium-musl_pread_pwrite64.patch.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-diff --git a/third_party/lss/linux_syscall_support.h b/third_party/lss/linux_syscall_support.h
-index 5d9c2e8..2682349 100644
---- a/third_party/lss/linux_syscall_support.h
-+++ b/third_party/lss/linux_syscall_support.h
-@@ -166,6 +166,13 @@ extern "C" {
- # undef __NR_waitpid
- #endif
- 
-+#ifdef pread64
-+#undef pread64
-+#endif
-+#ifdef pwrite64
-+#undef pwrite64
-+#endif
-+
- /* As glibc often provides subtly incompatible data structures (and implicit
-  * wrapper functions that convert them), we provide our own kernel data
-  * structures for use by the system calls.
diff --git a/srcpkgs/electron7/files/musl-patches/chromium-musl_push_back.patch.patch b/srcpkgs/electron7/files/musl-patches/chromium-musl_push_back.patch.patch
deleted file mode 100644
index cff340287da5..000000000000
--- a/srcpkgs/electron7/files/musl-patches/chromium-musl_push_back.patch.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/net/socket/udp_socket_posix.cc b/net/socket/udp_socket_posix.cc
-index 08bf79c..3ee5353 100644
---- a/net/socket/udp_socket_posix.cc
-+++ b/net/socket/udp_socket_posix.cc
-@@ -1194,7 +1194,7 @@ SendResult UDPSocketPosixSender::InternalSendmmsgBuffers(
-     msg_iov->push_back({const_cast<char*>(buffer->data()), buffer->length()});
-   msgvec->reserve(buffers.size());
-   for (size_t j = 0; j < buffers.size(); j++)
--    msgvec->push_back({{nullptr, 0, &msg_iov[j], 1, nullptr, 0, 0}, 0});
-+    msgvec->push_back({{nullptr, 0, &msg_iov[j], 1, 0, nullptr, 0, 0, 0}, 0});
-   int result = HANDLE_EINTR(Sendmmsg(fd, &msgvec[0], buffers.size(), 0));
-   SendResult send_result(0, 0, std::move(buffers));
-   if (result < 0) {
diff --git a/srcpkgs/electron7/files/musl-patches/chromium-musl_si_fields.patch.patch b/srcpkgs/electron7/files/musl-patches/chromium-musl_si_fields.patch.patch
deleted file mode 100644
index fdbefd27e2bf..000000000000
--- a/srcpkgs/electron7/files/musl-patches/chromium-musl_si_fields.patch.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/sandbox/linux/seccomp-bpf/trap.cc b/sandbox/linux/seccomp-bpf/trap.cc
-index 003708d..b21414f 100644
---- a/sandbox/linux/seccomp-bpf/trap.cc
-+++ b/sandbox/linux/seccomp-bpf/trap.cc
-@@ -168,7 +168,7 @@ void Trap::SigSys(int nr, LinuxSigInfo* info, ucontext_t* ctx) {
-   // most versions of glibc don't include this information in siginfo_t. So,
-   // we need to explicitly copy it into a arch_sigsys structure.
-   struct arch_sigsys sigsys;
--  memcpy(&sigsys, &info->_sifields, sizeof(sigsys));
-+  memcpy(&sigsys, &info->__si_fields, sizeof(sigsys));
- 
- #if defined(__mips__)
-   // When indirect syscall (syscall(__NR_foo, ...)) is made on Mips, the
diff --git a/srcpkgs/electron7/files/musl-patches/chromium-musl_stack_size.patch.patch b/srcpkgs/electron7/files/musl-patches/chromium-musl_stack_size.patch.patch
deleted file mode 100644
index a4df7a3729b0..000000000000
--- a/srcpkgs/electron7/files/musl-patches/chromium-musl_stack_size.patch.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-diff --git a/third_party/blink/renderer/platform/wtf/stack_util.cc b/third_party/blink/renderer/platform/wtf/stack_util.cc
-index b242164..1a0b519 100644
---- a/third_party/blink/renderer/platform/wtf/stack_util.cc
-+++ b/third_party/blink/renderer/platform/wtf/stack_util.cc
-@@ -29,7 +29,7 @@ size_t GetUnderestimatedStackSize() {
- // FIXME: On Mac OSX and Linux, this method cannot estimate stack size
- // correctly for the main thread.
- 
--#if defined(__GLIBC__) || defined(OS_ANDROID) || defined(OS_FREEBSD) || \
-+#if defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_FREEBSD) || \
-     defined(OS_FUCHSIA)
-   // pthread_getattr_np() can fail if the thread is not invoked by
-   // pthread_create() (e.g., the main thread of blink_unittests).
-@@ -55,6 +55,9 @@ size_t GetUnderestimatedStackSize() {
-   pthread_attr_destroy(&attr);
- #endif
- 
-+#if defined(OS_LINUX) && !defined(__GLIBC__)
-+  return 0;
-+#else
-   // Return a 512k stack size, (conservatively) assuming the following:
-   //  - that size is much lower than the pthreads default (x86 pthreads has a 2M
-   //    default.)
-@@ -62,6 +65,8 @@ size_t GetUnderestimatedStackSize() {
-   //    low as 512k.
-   //
-   return 512 * 1024;
-+#endif
-+
- #elif defined(OS_MACOSX)
-   // pthread_get_stacksize_np() returns too low a value for the main thread on
-   // OSX 10.9,
-@@ -97,7 +102,7 @@ return Threading::ThreadStackSize();
- }
- 
- void* GetStackStart() {
--#if defined(__GLIBC__) || defined(OS_ANDROID) || defined(OS_FREEBSD) || \
-+#if defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_FREEBSD) || \
-     defined(OS_FUCHSIA)
-   pthread_attr_t attr;
-   int error;
diff --git a/srcpkgs/electron7/files/musl-patches/chromium-musl_stack_trace.patch.patch b/srcpkgs/electron7/files/musl-patches/chromium-musl_stack_trace.patch.patch
deleted file mode 100644
index 9a1f2b044583..000000000000
--- a/srcpkgs/electron7/files/musl-patches/chromium-musl_stack_trace.patch.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-diff --git a/base/debug/stack_trace.cc b/base/debug/stack_trace.cc
-index d8ca822..ffe1f08 100644
---- a/base/debug/stack_trace.cc
-+++ b/base/debug/stack_trace.cc
-@@ -225,7 +225,9 @@ void StackTrace::Print() const {
- }
-
- void StackTrace::OutputToStream(std::ostream* os) const {
-+#if defined(__GLIBC__) && !defined(__UCLIBC__) && !defined(_AIX)
-   OutputToStreamWithPrefix(os, nullptr);
-+#endif
- }
-
- std::string StackTrace::ToString() const {
-@@ -233,14 +233,14 @@ std::string StackTrace::ToString() const {
- }
- std::string StackTrace::ToStringWithPrefix(const char* prefix_string) const {
-   std::stringstream stream;
--#if !defined(__UCLIBC__) && !defined(_AIX)
-+#if defined(__GLIBC__) && !defined(__UCLIBC__) && !defined(_AIX)
-   OutputToStreamWithPrefix(&stream, prefix_string);
- #endif
-   return stream.str();
- }
- 
- std::ostream& operator<<(std::ostream& os, const StackTrace& s) {
--#if !defined(__UCLIBC__) & !defined(_AIX)
-+#if defined(__GLIBC__) && !defined(__UCLIBC__) & !defined(_AIX)
-   s.OutputToStream(&os);
- #else
-   os << "StackTrace::OutputToStream not implemented.";
-diff --git a/base/logging.cc b/base/logging.cc
-index 36b8bfc..dd830fe 100644
---- a/base/logging.cc
-+++ b/base/logging.cc
-@@ -607,7 +607,7 @@ LogMessage::LogMessage(const char* file, int line, LogSeverity severity,
- LogMessage::~LogMessage() {
-   size_t stack_start = stream_.tellp();
- #if !defined(OFFICIAL_BUILD) && !defined(OS_NACL) && !defined(__UCLIBC__) && \
--    !defined(OS_AIX)
-+    !defined(OS_AIX) && defined(__GLIBC__)
-   if (severity_ == LOG_FATAL && !base::debug::BeingDebugged()) {
-     // Include a stack trace on a fatal, unless a debugger is attached.
-     base::debug::StackTrace stack_trace;
diff --git a/srcpkgs/electron7/files/musl-patches/chromium-musl_tcp_listen.patch.patch b/srcpkgs/electron7/files/musl-patches/chromium-musl_tcp_listen.patch.patch
deleted file mode 100644
index fa62317b11ac..000000000000
--- a/srcpkgs/electron7/files/musl-patches/chromium-musl_tcp_listen.patch.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-diff --git a/content/public/common/socket_permission_request.h b/content/public/common/socket_permission_request.h
-index 7316621..6171219 100644
---- a/content/public/common/socket_permission_request.h
-+++ b/content/public/common/socket_permission_request.h
-@@ -9,6 +9,9 @@
- 
- #include <string>
- 
-+#ifdef TCP_LISTEN
-+#undef TCP_LISTEN
-+#endif
- 
- namespace content {
- 
diff --git a/srcpkgs/electron7/files/musl-patches/chromium-musl_wordsize.patch.patch b/srcpkgs/electron7/files/musl-patches/chromium-musl_wordsize.patch.patch
deleted file mode 100644
index 6208cffafbe3..000000000000
--- a/srcpkgs/electron7/files/musl-patches/chromium-musl_wordsize.patch.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-diff --git a/third_party/breakpad/breakpad/src/common/linux/elf_core_dump.h b/third_party/breakpad/breakpad/src/common/linux/elf_core_dump.h
-index d03c7a8..78ca9dd 100644
---- a/third_party/breakpad/breakpad/src/common/linux/elf_core_dump.h
-+++ b/third_party/breakpad/breakpad/src/common/linux/elf_core_dump.h
-@@ -36,6 +36,7 @@
- #include <elf.h>
- #include <link.h>
- #include <stddef.h>
-+#include <limits.h>
- 
- #include "common/memory_range.h"
- 
-@@ -51,9 +52,9 @@ class ElfCoreDump {
-   typedef ElfW(Phdr) Phdr;
-   typedef ElfW(Word) Word;
-   typedef ElfW(Addr) Addr;
--#if __WORDSIZE == 32
-+#if ULONG_MAX == 0xffffffff
-   static const int kClass = ELFCLASS32;
--#elif __WORDSIZE == 64
-+#elif ULONG_MAX == 0xffffffffffffffff
-   static const int kClass = ELFCLASS64;
- #else
- #error "Unsupported __WORDSIZE for ElfCoreDump."
diff --git a/srcpkgs/electron7/files/musl-patches/chromium-musl_xxx_ppc64le.patch b/srcpkgs/electron7/files/musl-patches/chromium-musl_xxx_ppc64le.patch
deleted file mode 100644
index 5758a77aeeac..000000000000
--- a/srcpkgs/electron7/files/musl-patches/chromium-musl_xxx_ppc64le.patch
+++ /dev/null
@@ -1,187 +0,0 @@
-From f1167a4390736e6f1588c497c0a0a271c71ac9b4 Mon Sep 17 00:00:00 2001
-From: Daniel Kolesa <daniel@octaforge.org>
-Date: Sat, 12 Sep 2020 05:57:12 +0200
-Subject: [PATCH] ppc64le musl bits
-
----
- sandbox/linux/bpf_dsl/seccomp_macros.h                     | 6 +++---
- sandbox/linux/seccomp-bpf/syscall.cc                       | 4 ++--
- .../abseil-cpp/absl/base/internal/unscaledcycleclock.h     | 2 +-
- .../src/client/linux/dump_writer_common/thread_info.cc     | 7 +++++--
- .../src/client/linux/dump_writer_common/ucontext_reader.cc | 7 +++++--
- .../breakpad/src/client/linux/handler/exception_handler.cc | 5 +++++
- .../crashpad/crashpad/snapshot/linux/signal_context.h      | 2 +-
- third_party/crashpad/crashpad/util/linux/thread_info.h     | 1 +
- third_party/lss/linux_syscall_support.h                    | 4 ++++
- 9 files changed, 27 insertions(+), 11 deletions(-)
-
-diff --git a/sandbox/linux/bpf_dsl/seccomp_macros.h b/sandbox/linux/bpf_dsl/seccomp_macros.h
-index a6aec544e0..2a4a7f1bca 100644
---- a/sandbox/linux/bpf_dsl/seccomp_macros.h
-+++ b/sandbox/linux/bpf_dsl/seccomp_macros.h
-@@ -16,7 +16,7 @@
- #if defined(__mips__)
- // sys/user.h in eglibc misses size_t definition
- #include <stddef.h>
--#elif defined(__powerpc64__)
-+#elif defined(__powerpc64__) && defined(__GLIBC__)
- // Manually define greg_t on ppc64
- typedef unsigned long long greg_t;
- #endif
-@@ -361,11 +361,11 @@ typedef struct pt_regs regs_struct;
- #define SECCOMP_ARCH AUDIT_ARCH_PPC64
- #endif
- 
--#define SECCOMP_REG(_ctx, _reg) ((_ctx)->uc_mcontext.regs->gpr[_reg])
-+#define SECCOMP_REG(_ctx, _reg) (((struct pt_regs *)(_ctx)->uc_mcontext.regs)->gpr[_reg])
- 
- #define SECCOMP_RESULT(_ctx) SECCOMP_REG(_ctx, 3)
- #define SECCOMP_SYSCALL(_ctx) SECCOMP_REG(_ctx, 0)
--#define SECCOMP_IP(_ctx) (_ctx)->uc_mcontext.regs->nip
-+#define SECCOMP_IP(_ctx) ((struct pt_regs *)(_ctx)->uc_mcontext.regs)->nip
- #define SECCOMP_PARM1(_ctx) SECCOMP_REG(_ctx, 3)
- #define SECCOMP_PARM2(_ctx) SECCOMP_REG(_ctx, 4)
- #define SECCOMP_PARM3(_ctx) SECCOMP_REG(_ctx, 5)
-diff --git a/sandbox/linux/seccomp-bpf/syscall.cc b/sandbox/linux/seccomp-bpf/syscall.cc
-index 10fa5fd070..30b7b3851f 100644
---- a/sandbox/linux/seccomp-bpf/syscall.cc
-+++ b/sandbox/linux/seccomp-bpf/syscall.cc
-@@ -497,9 +497,9 @@ void Syscall::PutValueInUcontext(intptr_t ret_val, ucontext_t* ctx) {
-   // Same as MIPS, need to invert ret and set error register (cr0.SO)
-   if (ret_val <= -1 && ret_val >= -4095) {
-     ret_val = -ret_val;
--    ctx->uc_mcontext.regs->ccr |= (1 << 28);
-+    ((struct pt_regs *)ctx->uc_mcontext.regs)->ccr |= (1 << 28);
-   } else {
--    ctx->uc_mcontext.regs->ccr &= ~(1 << 28);
-+    ((struct pt_regs *)ctx->uc_mcontext.regs)->ccr &= ~(1 << 28);
-   }
- #endif
-   SECCOMP_RESULT(ctx) = static_cast<greg_t>(ret_val);
-diff --git a/third_party/abseil-cpp/absl/base/internal/unscaledcycleclock.h b/third_party/abseil-cpp/absl/base/internal/unscaledcycleclock.h
-index 2d361e9628..98242096cd 100644
---- a/third_party/abseil-cpp/absl/base/internal/unscaledcycleclock.h
-+++ b/third_party/abseil-cpp/absl/base/internal/unscaledcycleclock.h
-@@ -46,7 +46,7 @@
- 
- // The following platforms have an implementation of a hardware counter.
- #if defined(__i386__) || defined(__x86_64__) || defined(__aarch64__) || \
--  defined(__powerpc__) || defined(__ppc__) || \
-+  ((defined(__powerpc__) || defined(__ppc__)) && defined(__GLIBC__)) || \
-   defined(_M_IX86) || defined(_M_X64)
- #define ABSL_HAVE_UNSCALED_CYCLECLOCK_IMPLEMENTATION 1
- #else
-diff --git a/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/thread_info.cc b/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/thread_info.cc
-index 03afec7a58..0264ecf135 100644
---- a/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/thread_info.cc
-+++ b/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/thread_info.cc
-@@ -273,6 +273,9 @@ void ThreadInfo::FillCPUContext(RawContextCPU* out) const {
- 
- #elif defined(__powerpc64__)
- 
-+#include <asm/elf.h>
-+#include <asm/ptrace.h>
-+
- uintptr_t ThreadInfo::GetInstructionPointer() const {
-     return mcontext.gp_regs[PT_NIP];
- }
-@@ -290,9 +293,9 @@ void ThreadInfo::FillCPUContext(RawContextCPU* out) const {
-     out->ctr = mcontext.gp_regs[PT_CTR];
-     
-     for (int i = 0; i < MD_FLOATINGSAVEAREA_PPC_FPR_COUNT; i++)
--        out->float_save.fpregs[i] = mcontext.fp_regs[i];
-+        out->float_save.fpregs[i] = ((uint64_t *)&mcontext.fp_regs)[i];
- 
--    out->float_save.fpscr = mcontext.fp_regs[NFPREG-1];
-+    out->float_save.fpscr = ((uint64_t *)&mcontext.fp_regs)[ELF_NFPREG-1];
- 
-     for (int i = 0; i < MD_VECTORSAVEAREA_PPC_VR_COUNT; i++)
-         out->vector_save.save_vr[i] = \
-diff --git a/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/ucontext_reader.cc b/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/ucontext_reader.cc
-index 7620cf6f79..54e373611f 100644
---- a/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/ucontext_reader.cc
-+++ b/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/ucontext_reader.cc
-@@ -257,6 +257,9 @@ void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc) {
- 
- #elif defined(__powerpc64__)
- 
-+#include <asm/elf.h>
-+#include <asm/ptrace.h>
-+
- uintptr_t UContextReader::GetStackPointer(const ucontext_t* uc) {
-     return uc->uc_mcontext.gp_regs[MD_CONTEXT_PPC64_REG_SP];
- }
-@@ -280,9 +283,9 @@ void UContextReader::FillCPUContext(RawContextCPU* out, const ucontext_t* uc,
-     out->ctr = uc->uc_mcontext.gp_regs[PT_CTR];
-     
-     for (int i = 0; i < MD_FLOATINGSAVEAREA_PPC_FPR_COUNT; i++)
--        out->float_save.fpregs[i] = uc->uc_mcontext.fp_regs[i];
-+        out->float_save.fpregs[i] = ((uint64_t *)&uc->uc_mcontext.fp_regs)[i];
- 
--    out->float_save.fpscr = uc->uc_mcontext.fp_regs[NFPREG-1];
-+    out->float_save.fpscr = ((uint64_t *)&uc->uc_mcontext.fp_regs)[ELF_NFPREG-1];
- 
-     for (int i = 0; i < MD_VECTORSAVEAREA_PPC_VR_COUNT; i++)
-         out->vector_save.save_vr[i] =
-diff --git a/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc b/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc
-index 826c9e0c21..9bb4f6a3e4 100644
---- a/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc
-+++ b/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc
-@@ -105,6 +105,11 @@
- #define PR_SET_PTRACER 0x59616d61
- #endif
- 
-+/* musl hack, can't include asm/ptrace.h as that causes conflicts */
-+#if defined(__powerpc64__) && !defined(PT_NIP)
-+#define PT_NIP 32
-+#endif
-+
- namespace google_breakpad {
- 
- namespace {
-diff --git a/third_party/crashpad/crashpad/snapshot/linux/signal_context.h b/third_party/crashpad/crashpad/snapshot/linux/signal_context.h
-index a1f2da2591..e6a5bd72ab 100644
---- a/third_party/crashpad/crashpad/snapshot/linux/signal_context.h
-+++ b/third_party/crashpad/crashpad/snapshot/linux/signal_context.h
-@@ -469,7 +469,7 @@ struct MContext64 {
-   SignalThreadContext64 gp_regs;
-   SignalFloatContext64  fp_regs;
-   SignalVectorContext64 *v_regs;
--  int64_t vmx_reserve[69];
-+  int64_t vmx_reserve[101];
- };
- 
- struct ContextTraits64 : public Traits64 {
-diff --git a/third_party/crashpad/crashpad/util/linux/thread_info.h b/third_party/crashpad/crashpad/util/linux/thread_info.h
-index dea0d1f39e..b203e5b2f2 100644
---- a/third_party/crashpad/crashpad/util/linux/thread_info.h
-+++ b/third_party/crashpad/crashpad/util/linux/thread_info.h
-@@ -30,6 +30,7 @@
- 
- #if defined(ARCH_CPU_PPC64_FAMILY)
- #include <sys/ucontext.h>
-+#include <asm/ptrace.h>
- #endif
- 
- namespace crashpad {
-diff --git a/third_party/lss/linux_syscall_support.h b/third_party/lss/linux_syscall_support.h
-index c05710e56f..af327ea616 100644
---- a/third_party/lss/linux_syscall_support.h
-+++ b/third_party/lss/linux_syscall_support.h
-@@ -4226,9 +4226,13 @@ struct kernel_statfs {
-     }
-   #endif
-   #if defined(__NR_fstatat64)
-+    // musl does #define fstatat64 fstatat
-+    #undef fstatat64
-     LSS_INLINE _syscall4(int,   fstatat64,        int,   d,
-                          const char *,      p,
-                          struct kernel_stat64 *,   b,    int,   f)
-+    // set it back like it was
-+    #define fstatat64 fstatat
-   #endif
-   #if defined(__NR_waitpid)
-     // waitpid is polyfilled below when not available.
--- 
-2.28.0
-
diff --git a/srcpkgs/electron7/files/patches/chromium-001-upstream_chrome_cleaner.patch.patch b/srcpkgs/electron7/files/patches/chromium-001-upstream_chrome_cleaner.patch.patch
deleted file mode 100644
index 57e94180c59c..000000000000
--- a/srcpkgs/electron7/files/patches/chromium-001-upstream_chrome_cleaner.patch.patch
+++ /dev/null
@@ -1,73 +0,0 @@
-From c755ec847459d9d3807c22c2d4d6aa6f9c86dc7c Mon Sep 17 00:00:00 2001
-From: John Budorick <jbudorick@chromium.org>
-Date: Tue, 19 Nov 2019 22:24:20 +0000
-Subject: [PATCH] 3904: chrome_cleaner: ensure internal targets are reachable
- from :gn_all.
-
-(cherry picked from commit eee513dfc780ad4bcaa74b67f2e0eaebf57b5c93)
-
-Bug: 984162, 1004848
-Change-Id: Ibb7c47f0188de8e077cd30aa8d68ca61133d2037
-Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1904549
-Commit-Queue: John Budorick <jbudorick@chromium.org>
-Reviewed-by: Joe Mason <joenotcharles@chromium.org>
-Cr-Original-Commit-Position: refs/heads/master@{#713683}
-Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1922299
-Cr-Commit-Position: refs/branch-heads/3904@{#895}
-Cr-Branched-From: 675968a8c657a3bd9c1c2c20c5d2935577bbc5e6-refs/heads/master@{#693954}
----
- BUILD.gn                       |  2 +-
- chrome/chrome_cleaner/BUILD.gn | 23 ++++++++++++++++++++---
- 2 files changed, 21 insertions(+), 4 deletions(-)
-
-diff --git a/BUILD.gn b/BUILD.gn
-index 5e2f6b9b0f41c..ac0297608594f 100644
---- a/BUILD.gn
-+++ b/BUILD.gn
-@@ -604,7 +604,7 @@ group("gn_all") {
-   if (is_win) {
-     deps += [
-       "//base:pe_image_test",
--      "//chrome/chrome_cleaner:chrome_cleaner_unittests",
-+      "//chrome/chrome_cleaner",
-       "//chrome/chrome_elf:chrome_elf_unittests",
-       "//chrome/chrome_elf:dll_hash_main",
-       "//chrome/elevation_service:elevation_service_unittests",
-diff --git a/chrome/chrome_cleaner/BUILD.gn b/chrome/chrome_cleaner/BUILD.gn
-index fbd2d8d5307aa..1671a3f7d097c 100644
---- a/chrome/chrome_cleaner/BUILD.gn
-+++ b/chrome/chrome_cleaner/BUILD.gn
-@@ -64,9 +64,6 @@ static_library("other_executable_definitions") {
- }
- 
- test("chrome_cleaner_unittests") {
--  # Make this target findable from the "all" target used by the builders.
--  visibility += [ "//.:gn_all" ]
--
-   sources = [
-     "//chrome/chrome_cleaner/test/test_main.cc",
-   ]
-@@ -126,3 +123,23 @@ test("chrome_cleaner_unittests") {
-     ]
-   }
- }
-+
-+group("chrome_cleaner") {
-+  testonly = true
-+
-+  # Make this target findable from the "all" target used by the builders.
-+  visibility += [ "//.:gn_all" ]
-+
-+  deps = [
-+    ":chrome_cleaner_unittests",
-+    "//chrome/chrome_cleaner/executables:chrome_cleanup_tool",
-+    "//chrome/chrome_cleaner/executables:software_reporter_tool",
-+  ]
-+
-+  if (is_internal_chrome_cleaner_build) {
-+    deps += [
-+      "${chrome_cleaner_internal_root}:build_targets",
-+      "${chrome_cleaner_internal_root}:test_targets",
-+    ]
-+  }
-+}
diff --git a/srcpkgs/electron7/files/patches/chromium-002-upstream_save_logs_from_test_cild_processes.patch.patch b/srcpkgs/electron7/files/patches/chromium-002-upstream_save_logs_from_test_cild_processes.patch.patch
deleted file mode 100644
index 74b9fec59a7a..000000000000
--- a/srcpkgs/electron7/files/patches/chromium-002-upstream_save_logs_from_test_cild_processes.patch.patch
+++ /dev/null
@@ -1,342 +0,0 @@
-From daec661f27bdfab79132d7d2c4637cc17fd4aa35 Mon Sep 17 00:00:00 2001
-From: Joe Mason <joenotcharles@google.com>
-Date: Wed, 4 Dec 2019 18:04:21 +0000
-Subject: [PATCH] Save logs from test child processes by redirecting stdout and
- stderr.
-
-The previous solution can only capture logs after the child process
-creates a ScopedLogging object. We see flaky crashes in sandbox creation
-that happen before that so this will let us see the child process stack
-traces.
-
-Also moves some functions that were exported from ipc_test_util.h to be
-private to proto_chrome_prompt_ipc_unittest.cc, which is the only test
-that still uses them.
-
-(cherry picked from commit e7a755421136d7fc9b3a73a5e5464368f3efa7f9)
-
-Bug: 1030333
-Change-Id: Ie30eed3b16631721e81a420b3b70f1ec5f0d9a0c
-Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1948483
-Reviewed-by: proberge <proberge@chromium.org>
-Commit-Queue: Joe Mason <joenotcharles@chromium.org>
-Cr-Original-Commit-Position: refs/heads/master@{#721071}
-Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1951089
-Reviewed-by: Joe Mason <joenotcharles@chromium.org>
-Cr-Commit-Position: refs/branch-heads/3904@{#913}
-Cr-Branched-From: 675968a8c657a3bd9c1c2c20c5d2935577bbc5e6-refs/heads/master@{#693954}
----
- chrome/chrome_cleaner/ipc/ipc_test_util.cc    | 92 ++++++++++++-------
- chrome/chrome_cleaner/ipc/ipc_test_util.h     | 13 ++-
- .../ipc/proto_chrome_prompt_ipc_unittest.cc   | 17 ++--
- chrome/chrome_cleaner/ipc/sandbox.cc          |  5 +-
- 4 files changed, 77 insertions(+), 50 deletions(-)
-
-diff --git a/chrome/chrome_cleaner/ipc/ipc_test_util.cc b/chrome/chrome_cleaner/ipc/ipc_test_util.cc
-index 05fc0d027ec43..0d03a6870fb07 100644
---- a/chrome/chrome_cleaner/ipc/ipc_test_util.cc
-+++ b/chrome/chrome_cleaner/ipc/ipc_test_util.cc
-@@ -13,6 +13,7 @@
- #include "base/command_line.h"
- #include "base/files/file_path.h"
- #include "base/files/file_util.h"
-+#include "base/files/scoped_temp_dir.h"
- #include "base/logging.h"
- #include "base/process/launch.h"
- #include "base/rand_util.h"
-@@ -23,7 +24,6 @@
- #include "base/test/test_timeouts.h"
- #include "base/win/win_util.h"
- #include "chrome/chrome_cleaner/ipc/sandbox.h"
--#include "chrome/chrome_cleaner/logging/scoped_logging.h"
- #include "sandbox/win/src/sandbox_factory.h"
- 
- namespace chrome_cleaner {
-@@ -32,12 +32,13 @@ namespace {
- 
- constexpr char kMojoPipeTokenSwitch[] = "mojo-pipe-token";
- 
--constexpr wchar_t kIPCTestUtilLogSuffix[] = L"ipc-test-util";
--
- class MojoSandboxSetupHooks : public SandboxSetupHooks {
-  public:
--  explicit MojoSandboxSetupHooks(SandboxedParentProcess* parent_process)
--      : parent_process_(parent_process) {}
-+  explicit MojoSandboxSetupHooks(
-+      SandboxedParentProcess* parent_process,
-+      base::win::ScopedHandle child_stdout_write_handle)
-+      : parent_process_(parent_process),
-+        child_stdout_write_handle_(std::move(child_stdout_write_handle)) {}
-   ~MojoSandboxSetupHooks() override = default;
- 
-   // SandboxSetupHooks
-@@ -49,6 +50,8 @@ class MojoSandboxSetupHooks : public SandboxSetupHooks {
-     parent_process_->CreateMojoPipe(command_line, &handles_to_inherit);
-     for (HANDLE handle : handles_to_inherit)
-       policy->AddHandleToShare(handle);
-+    policy->SetStdoutHandle(child_stdout_write_handle_.Get());
-+    policy->SetStderrHandle(child_stdout_write_handle_.Get());
-     return RESULT_CODE_SUCCESS;
-   }
- 
-@@ -61,33 +64,14 @@ class MojoSandboxSetupHooks : public SandboxSetupHooks {
- 
-  private:
-   SandboxedParentProcess* parent_process_;
-+  base::win::ScopedHandle child_stdout_write_handle_;
- };
- 
- }  // namespace
- 
- namespace internal {
- 
--base::FilePath::StringPieceType GetLogPathSuffix() {
--  return kIPCTestUtilLogSuffix;
--}
--
--base::FilePath GetLogPath() {
--  return ScopedLogging::GetLogFilePath(kIPCTestUtilLogSuffix);
--}
--
--bool DeleteChildProcessLogs() {
--  // Delete the child process log file if existing.
--  const base::FilePath log_path = GetLogPath();
--  if (!base::DeleteFile(log_path, false)) {
--    LOG(ERROR) << "Can't delete log file from previous run: "
--               << log_path.value();
--    return false;
--  }
--  return true;
--}
--
--void PrintChildProcessLogs() {
--  const base::FilePath log_path = GetLogPath();
-+void PrintChildProcessLogs(const base::FilePath& log_path) {
-   if (log_path.empty()) {
-     LOG(ERROR) << "Child process log path is empty";
-     return;
-@@ -174,11 +158,38 @@ bool ParentProcess::LaunchConnectedChildProcess(
-     const std::string& child_main_function,
-     base::TimeDelta timeout,
-     int32_t* exit_code) {
--  if (!internal::DeleteChildProcessLogs())
-+  // Adapted from
-+  // https://cs.chromium.org/chromium/src/sandbox/win/src/handle_inheritance_test.cc
-+  base::ScopedTempDir temp_dir;
-+  if (!temp_dir.CreateUniqueTempDir()) {
-+    PLOG(ERROR) << "Could not create temp dir for child stdout";
-+    return false;
-+  }
-+
-+  base::FilePath temp_file_name;
-+  if (!CreateTemporaryFileInDir(temp_dir.GetPath(), &temp_file_name)) {
-+    PLOG(ERROR) << "Could not create temp file for child stdout";
-+    return false;
-+  }
-+
-+  SECURITY_ATTRIBUTES attrs = {};
-+  attrs.nLength = sizeof(attrs);
-+  attrs.bInheritHandle = true;
-+
-+  base::win::ScopedHandle child_stdout_write_handle(
-+      ::CreateFile(temp_file_name.value().c_str(), GENERIC_WRITE,
-+                   FILE_SHARE_WRITE | FILE_SHARE_READ | FILE_SHARE_DELETE,
-+                   &attrs, OPEN_EXISTING, 0, nullptr));
-+  if (!child_stdout_write_handle.IsValid()) {
-+    PLOG(ERROR) << "Could not open child stdout file";
-     return false;
-+  }
- 
--  if (!PrepareAndLaunchTestChildProcess(child_main_function))
-+  if (!PrepareAndLaunchTestChildProcess(child_main_function,
-+                                        std::move(child_stdout_write_handle))) {
-+    internal::PrintChildProcessLogs(temp_file_name);
-     return false;
-+  }
- 
-   CreateImplOnIPCThread(std::move(mojo_pipe_));
-   const bool success = base::WaitForMultiprocessTestChildExit(
-@@ -189,21 +200,32 @@ bool ParentProcess::LaunchConnectedChildProcess(
-   }
-   DestroyImplOnIPCThread();
- 
--  if (!success || *exit_code != 0)
--    internal::PrintChildProcessLogs();
-+  if (!success || *exit_code != 0) {
-+    internal::PrintChildProcessLogs(temp_file_name);
-+  }
- 
-   return success;
- }
- 
- bool ParentProcess::PrepareAndLaunchTestChildProcess(
--    const std::string& child_main_function) {
-+    const std::string& child_main_function,
-+    base::win::ScopedHandle child_stdout_write_handle) {
-   base::LaunchOptions launch_options;
-   launch_options.handles_to_inherit = extra_handles_to_inherit_;
-+  launch_options.handles_to_inherit.push_back(child_stdout_write_handle.Get());
-+  launch_options.stdin_handle = INVALID_HANDLE_VALUE;
-+  launch_options.stdout_handle = child_stdout_write_handle.Get();
-+  launch_options.stderr_handle = child_stdout_write_handle.Get();
-+
-   CreateMojoPipe(&command_line_, &launch_options.handles_to_inherit);
- 
-   base::Process child_process = base::SpawnMultiProcessTestChild(
-       child_main_function, command_line_, launch_options);
- 
-+  // Now that it's been passed to the child process,
-+  // |child_stdout_write_handle| can be closed in this process as it goes out
-+  // of scope.
-+
-   ConnectMojoPipe(std::move(child_process));
-   return true;
- }
-@@ -235,8 +257,9 @@ SandboxedParentProcess::SandboxedParentProcess(
- SandboxedParentProcess::~SandboxedParentProcess() {}
- 
- bool SandboxedParentProcess::PrepareAndLaunchTestChildProcess(
--    const std::string& child_main_function) {
--  MojoSandboxSetupHooks hooks(this);
-+    const std::string& child_main_function,
-+    base::win::ScopedHandle child_stdout_write_handle) {
-+  MojoSandboxSetupHooks hooks(this, std::move(child_stdout_write_handle));
- 
-   // This switch usage is copied from SpawnMultiProcessTestChild.
-   //
-@@ -258,8 +281,7 @@ bool SandboxedParentProcess::PrepareAndLaunchTestChildProcess(
- 
- ChildProcess::ChildProcess(scoped_refptr<MojoTaskRunner> mojo_task_runner)
-     : mojo_task_runner_(mojo_task_runner),
--      command_line_(base::CommandLine::ForCurrentProcess()),
--      scopped_logging_(new ScopedLogging(kIPCTestUtilLogSuffix)) {
-+      command_line_(base::CommandLine::ForCurrentProcess()) {
-   sandbox::TargetServices* target_services =
-       sandbox::SandboxFactory::GetTargetServices();
-   if (!target_services)
-diff --git a/chrome/chrome_cleaner/ipc/ipc_test_util.h b/chrome/chrome_cleaner/ipc/ipc_test_util.h
-index 97f2072a09165..1b2e5598ed52a 100644
---- a/chrome/chrome_cleaner/ipc/ipc_test_util.h
-+++ b/chrome/chrome_cleaner/ipc/ipc_test_util.h
-@@ -14,9 +14,9 @@
- #include "base/process/launch.h"
- #include "base/process/process.h"
- #include "base/time/time.h"
-+#include "base/win/scoped_handle.h"
- #include "chrome/chrome_cleaner/ipc/chrome_prompt_ipc.h"
- #include "chrome/chrome_cleaner/ipc/mojo_task_runner.h"
--#include "chrome/chrome_cleaner/logging/scoped_logging.h"
- #include "mojo/public/cpp/platform/platform_channel.h"
- #include "mojo/public/cpp/system/invitation.h"
- #include "mojo/public/cpp/system/message_pipe.h"
-@@ -70,7 +70,8 @@ class ParentProcess : public base::RefCountedThreadSafe<ParentProcess> {
-   // as in the sandbox. Subclasses should call CreateMojoPipe before the
-   // subprocess is spawned and ConnectMojoPipe afterward.
-   virtual bool PrepareAndLaunchTestChildProcess(
--      const std::string& child_main_function);
-+      const std::string& child_main_function,
-+      base::win::ScopedHandle child_stdout_write_handle);
- 
-   scoped_refptr<MojoTaskRunner> mojo_task_runner();
- 
-@@ -95,7 +96,8 @@ class SandboxedParentProcess : public ParentProcess {
-   ~SandboxedParentProcess() override;
- 
-   bool PrepareAndLaunchTestChildProcess(
--      const std::string& child_main_function) override;
-+      const std::string& child_main_function,
-+      base::win::ScopedHandle child_stdout_write_handle) override;
- };
- 
- class ChildProcess : public base::RefCountedThreadSafe<ChildProcess> {
-@@ -120,7 +122,6 @@ class ChildProcess : public base::RefCountedThreadSafe<ChildProcess> {
- 
-  private:
-   base::CommandLine* command_line_;
--  std::unique_ptr<ScopedLogging> scopped_logging_;
- 
-   // This will be true iff the process is running in a sandbox and
-   // TargetServices was initialized successfully.
-@@ -143,9 +144,7 @@ class ChromePromptIPCTestErrorHandler : public ChromePromptIPC::ErrorHandler {
- };
- 
- namespace internal {
--base::FilePath::StringPieceType GetLogPathSuffix();
--bool DeleteChildProcessLogs();
--void PrintChildProcessLogs();
-+void PrintChildProcessLogs(const base::FilePath& log_file);
- }  // namespace internal
- 
- }  // namespace chrome_cleaner
-diff --git a/chrome/chrome_cleaner/ipc/proto_chrome_prompt_ipc_unittest.cc b/chrome/chrome_cleaner/ipc/proto_chrome_prompt_ipc_unittest.cc
-index 1c7b4c575eb3d..f867df58f96ea 100644
---- a/chrome/chrome_cleaner/ipc/proto_chrome_prompt_ipc_unittest.cc
-+++ b/chrome/chrome_cleaner/ipc/proto_chrome_prompt_ipc_unittest.cc
-@@ -5,6 +5,7 @@
- #include <windows.h>
- 
- #include "base/command_line.h"
-+#include "base/files/file_util.h"
- #include "base/process/process.h"
- #include "base/strings/strcat.h"
- #include "base/strings/string_number_conversions.h"
-@@ -41,8 +42,9 @@ constexpr char kExpectedPromptResultSwitch[] = "expected-prompt-result";
- constexpr char kExpectedChromeDisconnectPointSwitch[] =
-     "expected-parent-disconnected";
- 
--const base::char16 kInvalidUTF16String[] = {0xDC00, 0xD800, 0xD800, 0xDFFF,
--                                            0xDFFF, 0xDBFF, 0};
-+constexpr base::char16 kLogSuffix[] = L"prompt-ipc-test";
-+constexpr base::char16 kInvalidUTF16String[] = {0xDC00, 0xD800, 0xD800, 0xDFFF,
-+                                                0xDFFF, 0xDBFF, 0};
- const base::FilePath kInvalidFilePath(kInvalidUTF16String);
- const base::FilePath kNonASCIIFilePath(L"ééààçç");
- const base::string16 kInvalidRegistryKey(kInvalidUTF16String);
-@@ -420,8 +422,7 @@ class MockChrome {
- class ChildProcess {
-  public:
-   ChildProcess()
--      : scopped_logging_(
--            std::make_unique<ScopedLogging>(internal::GetLogPathSuffix())) {
-+      : scopped_logging_(std::make_unique<ScopedLogging>(kLogSuffix)) {
-     mock_chrome_ = std::make_unique<MockChrome>(
-         ExtractHandleFromCommandLine(chrome_cleaner::kChromeReadHandleSwitch),
-         ExtractHandleFromCommandLine(chrome_cleaner::kChromeWriteHandleSwitch));
-@@ -630,7 +631,10 @@ class ParentProcess {
-   }
- 
-   void Run() {
--    ASSERT_TRUE(internal::DeleteChildProcessLogs());
-+    // Delete the child process log file if existing.
-+    const base::FilePath log_path = ScopedLogging::GetLogFilePath(kLogSuffix);
-+    ASSERT_TRUE(base::DeleteFile(log_path, false))
-+        << "Can't delete log file from previous run: " << log_path.value();
- 
-     // Pass the command to the child process and launch the child process.
-     base::Process child_process = base::SpawnMultiProcessTestChild(
-@@ -702,7 +706,8 @@ class ParentProcess {
-     EXPECT_EQ(expected_exit_code, rv);
- 
-     if (!success || rv != 0) {
--      internal::PrintChildProcessLogs();
-+      internal::PrintChildProcessLogs(
-+          ScopedLogging::GetLogFilePath(kLogSuffix));
-     }
-   }
- 
-diff --git a/chrome/chrome_cleaner/ipc/sandbox.cc b/chrome/chrome_cleaner/ipc/sandbox.cc
-index 154bd05c51066..fafad4f0c6188 100644
---- a/chrome/chrome_cleaner/ipc/sandbox.cc
-+++ b/chrome/chrome_cleaner/ipc/sandbox.cc
-@@ -280,8 +280,9 @@ ResultCode StartSandboxTarget(const base::CommandLine& sandbox_command_line,
-       &last_win_error, &temp_process_info);
-   if (sandbox_result != sandbox::SBOX_ALL_OK) {
-     LOG(DFATAL) << "Failed to spawn sandbox target: " << sandbox_result
--                << " , last sandbox warning : " << last_sbox_warning
--                << " , last windows error: " << last_win_error;
-+                << ", last sandbox warning: " << last_sbox_warning
-+                << ", last windows error: "
-+                << logging::SystemErrorCodeToString(last_win_error);
-     return RESULT_CODE_FAILED_TO_START_SANDBOX_PROCESS;
-   }
- 
diff --git a/srcpkgs/electron7/files/patches/chromium-003-upstream_move_child_process_log.patch.patch b/srcpkgs/electron7/files/patches/chromium-003-upstream_move_child_process_log.patch.patch
deleted file mode 100644
index 518b955a0b0d..000000000000
--- a/srcpkgs/electron7/files/patches/chromium-003-upstream_move_child_process_log.patch.patch
+++ /dev/null
@@ -1,730 +0,0 @@
-From 726cbfcfaa521e9e5098829195a7d9a9c19ca391 Mon Sep 17 00:00:00 2001
-From: Joe Mason <joenotcharles@google.com>
-Date: Wed, 4 Dec 2019 18:15:36 +0000
-Subject: [PATCH] Move child process log capture to a ChildProcessLogger class.
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Update comments to clarify how the child process log interacts with
-ScopedLogging.
-
-Use the new class to capture logs in cleaner_test.cc,
-secure_dll_loading_test.cc and proto_chrome_prompt_ipc_unittest.cc.
-
-R=​proberge
-
-(cherry picked from commit 063600229fb7dc472ff66839ba2657bf99b98850)
-
-Bug: 1030333
-Change-Id: I88f538ff360bb8ed9da6743dc5d6c4b263af992c
-Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1947986
-Commit-Queue: Joe Mason <joenotcharles@chromium.org>
-Reviewed-by: proberge <proberge@chromium.org>
-Cr-Original-Commit-Position: refs/heads/master@{#721184}
-Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1949631
-Reviewed-by: Joe Mason <joenotcharles@chromium.org>
-Cr-Commit-Position: refs/branch-heads/3904@{#914}
-Cr-Branched-From: 675968a8c657a3bd9c1c2c20c5d2935577bbc5e6-refs/heads/master@{#693954}
----
- chrome/chrome_cleaner/ipc/BUILD.gn            |  1 +
- chrome/chrome_cleaner/ipc/ipc_test_util.cc    | 98 +++----------------
- chrome/chrome_cleaner/ipc/ipc_test_util.h     | 17 ++--
- .../ipc/proto_chrome_prompt_ipc_unittest.cc   | 26 +++--
- chrome/chrome_cleaner/test/BUILD.gn           |  3 +
- .../test/child_process_logger.cc              | 90 +++++++++++++++++
- .../test/child_process_logger.h               | 62 ++++++++++++
- chrome/chrome_cleaner/test/cleaner_test.cc    | 14 ++-
- .../test/secure_dll_loading_test.cc           | 57 ++---------
- 9 files changed, 207 insertions(+), 161 deletions(-)
- create mode 100644 chrome/chrome_cleaner/test/child_process_logger.cc
- create mode 100644 chrome/chrome_cleaner/test/child_process_logger.h
-
-diff --git a/chrome/chrome_cleaner/ipc/BUILD.gn b/chrome/chrome_cleaner/ipc/BUILD.gn
-index 03fddfd8736e1..4d81803a24df6 100644
---- a/chrome/chrome_cleaner/ipc/BUILD.gn
-+++ b/chrome/chrome_cleaner/ipc/BUILD.gn
-@@ -77,6 +77,7 @@ source_set("ipc_test_util") {
-     "//base/test:test_support",
-     "//chrome/chrome_cleaner/ipc:sandbox",
-     "//chrome/chrome_cleaner/logging:common",
-+    "//chrome/chrome_cleaner/test:test_util",
-     "//mojo/public/cpp/system",
-     "//sandbox/win:sandbox",
-     "//testing/gtest",
-diff --git a/chrome/chrome_cleaner/ipc/ipc_test_util.cc b/chrome/chrome_cleaner/ipc/ipc_test_util.cc
-index 0d03a6870fb07..ea2bb2145bfdd 100644
---- a/chrome/chrome_cleaner/ipc/ipc_test_util.cc
-+++ b/chrome/chrome_cleaner/ipc/ipc_test_util.cc
-@@ -12,14 +12,10 @@
- #include "base/bind_helpers.h"
- #include "base/command_line.h"
- #include "base/files/file_path.h"
--#include "base/files/file_util.h"
--#include "base/files/scoped_temp_dir.h"
- #include "base/logging.h"
- #include "base/process/launch.h"
- #include "base/rand_util.h"
- #include "base/strings/string_number_conversions.h"
--#include "base/strings/string_piece.h"
--#include "base/strings/string_split.h"
- #include "base/test/multiprocess_test.h"
- #include "base/test/test_timeouts.h"
- #include "base/win/win_util.h"
-@@ -34,11 +30,8 @@ constexpr char kMojoPipeTokenSwitch[] = "mojo-pipe-token";
- 
- class MojoSandboxSetupHooks : public SandboxSetupHooks {
-  public:
--  explicit MojoSandboxSetupHooks(
--      SandboxedParentProcess* parent_process,
--      base::win::ScopedHandle child_stdout_write_handle)
--      : parent_process_(parent_process),
--        child_stdout_write_handle_(std::move(child_stdout_write_handle)) {}
-+  explicit MojoSandboxSetupHooks(SandboxedParentProcess* parent_process)
-+      : parent_process_(parent_process) {}
-   ~MojoSandboxSetupHooks() override = default;
- 
-   // SandboxSetupHooks
-@@ -50,8 +43,7 @@ class MojoSandboxSetupHooks : public SandboxSetupHooks {
-     parent_process_->CreateMojoPipe(command_line, &handles_to_inherit);
-     for (HANDLE handle : handles_to_inherit)
-       policy->AddHandleToShare(handle);
--    policy->SetStdoutHandle(child_stdout_write_handle_.Get());
--    policy->SetStderrHandle(child_stdout_write_handle_.Get());
-+    parent_process_->child_process_logger().UpdateSandboxPolicy(policy);
-     return RESULT_CODE_SUCCESS;
-   }
- 
-@@ -69,38 +61,6 @@ class MojoSandboxSetupHooks : public SandboxSetupHooks {
- 
- }  // namespace
- 
--namespace internal {
--
--void PrintChildProcessLogs(const base::FilePath& log_path) {
--  if (log_path.empty()) {
--    LOG(ERROR) << "Child process log path is empty";
--    return;
--  }
--
--  if (!base::PathExists(log_path)) {
--    LOG(ERROR) << "Child process log file doesn't exist";
--    return;
--  }
--
--  // Collect the child process log file, and dump the contents, to help
--  // debugging failures.
--  std::string log_file_contents;
--  if (!base::ReadFileToString(log_path, &log_file_contents)) {
--    LOG(ERROR) << "Failed to read child process log file";
--    return;
--  }
--
--  std::vector<base::StringPiece> lines =
--      base::SplitStringPiece(log_file_contents, "\n", base::TRIM_WHITESPACE,
--                             base::SPLIT_WANT_NONEMPTY);
--  LOG(ERROR) << "Dumping child process logs";
--  for (const auto& line : lines) {
--    LOG(ERROR) << "Child process: " << line;
--  }
--}
--
--}  // namespace internal
--
- ParentProcess::ParentProcess(scoped_refptr<MojoTaskRunner> mojo_task_runner)
-     : command_line_(base::GetMultiProcessTestChildBaseCommandLine()),
-       mojo_task_runner_(mojo_task_runner) {}
-@@ -158,36 +118,10 @@ bool ParentProcess::LaunchConnectedChildProcess(
-     const std::string& child_main_function,
-     base::TimeDelta timeout,
-     int32_t* exit_code) {
--  // Adapted from
--  // https://cs.chromium.org/chromium/src/sandbox/win/src/handle_inheritance_test.cc
--  base::ScopedTempDir temp_dir;
--  if (!temp_dir.CreateUniqueTempDir()) {
--    PLOG(ERROR) << "Could not create temp dir for child stdout";
-+  if (!child_process_logger_.Initialize())
-     return false;
--  }
--
--  base::FilePath temp_file_name;
--  if (!CreateTemporaryFileInDir(temp_dir.GetPath(), &temp_file_name)) {
--    PLOG(ERROR) << "Could not create temp file for child stdout";
--    return false;
--  }
--
--  SECURITY_ATTRIBUTES attrs = {};
--  attrs.nLength = sizeof(attrs);
--  attrs.bInheritHandle = true;
--
--  base::win::ScopedHandle child_stdout_write_handle(
--      ::CreateFile(temp_file_name.value().c_str(), GENERIC_WRITE,
--                   FILE_SHARE_WRITE | FILE_SHARE_READ | FILE_SHARE_DELETE,
--                   &attrs, OPEN_EXISTING, 0, nullptr));
--  if (!child_stdout_write_handle.IsValid()) {
--    PLOG(ERROR) << "Could not open child stdout file";
--    return false;
--  }
--
--  if (!PrepareAndLaunchTestChildProcess(child_main_function,
--                                        std::move(child_stdout_write_handle))) {
--    internal::PrintChildProcessLogs(temp_file_name);
-+  if (!PrepareAndLaunchTestChildProcess(child_main_function)) {
-+    child_process_logger_.DumpLogs();
-     return false;
-   }
- 
-@@ -201,31 +135,22 @@ bool ParentProcess::LaunchConnectedChildProcess(
-   DestroyImplOnIPCThread();
- 
-   if (!success || *exit_code != 0) {
--    internal::PrintChildProcessLogs(temp_file_name);
-+    child_process_logger_.DumpLogs();
-   }
- 
-   return success;
- }
- 
- bool ParentProcess::PrepareAndLaunchTestChildProcess(
--    const std::string& child_main_function,
--    base::win::ScopedHandle child_stdout_write_handle) {
-+    const std::string& child_main_function) {
-   base::LaunchOptions launch_options;
-   launch_options.handles_to_inherit = extra_handles_to_inherit_;
--  launch_options.handles_to_inherit.push_back(child_stdout_write_handle.Get());
--  launch_options.stdin_handle = INVALID_HANDLE_VALUE;
--  launch_options.stdout_handle = child_stdout_write_handle.Get();
--  launch_options.stderr_handle = child_stdout_write_handle.Get();
--
-+  child_process_logger_.UpdateLaunchOptions(&launch_options);
-   CreateMojoPipe(&command_line_, &launch_options.handles_to_inherit);
- 
-   base::Process child_process = base::SpawnMultiProcessTestChild(
-       child_main_function, command_line_, launch_options);
- 
--  // Now that it's been passed to the child process,
--  // |child_stdout_write_handle| can be closed in this process as it goes out
--  // of scope.
--
-   ConnectMojoPipe(std::move(child_process));
-   return true;
- }
-@@ -257,9 +182,8 @@ SandboxedParentProcess::SandboxedParentProcess(
- SandboxedParentProcess::~SandboxedParentProcess() {}
- 
- bool SandboxedParentProcess::PrepareAndLaunchTestChildProcess(
--    const std::string& child_main_function,
--    base::win::ScopedHandle child_stdout_write_handle) {
--  MojoSandboxSetupHooks hooks(this, std::move(child_stdout_write_handle));
-+    const std::string& child_main_function) {
-+  MojoSandboxSetupHooks hooks(this);
- 
-   // This switch usage is copied from SpawnMultiProcessTestChild.
-   //
-diff --git a/chrome/chrome_cleaner/ipc/ipc_test_util.h b/chrome/chrome_cleaner/ipc/ipc_test_util.h
-index 1b2e5598ed52a..1526a42701353 100644
---- a/chrome/chrome_cleaner/ipc/ipc_test_util.h
-+++ b/chrome/chrome_cleaner/ipc/ipc_test_util.h
-@@ -14,9 +14,9 @@
- #include "base/process/launch.h"
- #include "base/process/process.h"
- #include "base/time/time.h"
--#include "base/win/scoped_handle.h"
- #include "chrome/chrome_cleaner/ipc/chrome_prompt_ipc.h"
- #include "chrome/chrome_cleaner/ipc/mojo_task_runner.h"
-+#include "chrome/chrome_cleaner/test/child_process_logger.h"
- #include "mojo/public/cpp/platform/platform_channel.h"
- #include "mojo/public/cpp/system/invitation.h"
- #include "mojo/public/cpp/system/message_pipe.h"
-@@ -58,6 +58,10 @@ class ParentProcess : public base::RefCountedThreadSafe<ParentProcess> {
-     return extra_handles_to_inherit_;
-   }
- 
-+  const ChildProcessLogger& child_process_logger() const {
-+    return child_process_logger_;
-+  }
-+
-  protected:
-   friend base::RefCountedThreadSafe<ParentProcess>;
-   virtual ~ParentProcess();
-@@ -70,13 +74,13 @@ class ParentProcess : public base::RefCountedThreadSafe<ParentProcess> {
-   // as in the sandbox. Subclasses should call CreateMojoPipe before the
-   // subprocess is spawned and ConnectMojoPipe afterward.
-   virtual bool PrepareAndLaunchTestChildProcess(
--      const std::string& child_main_function,
--      base::win::ScopedHandle child_stdout_write_handle);
-+      const std::string& child_main_function);
- 
-   scoped_refptr<MojoTaskRunner> mojo_task_runner();
- 
-   base::CommandLine command_line_;
-   base::HandlesToInheritVector extra_handles_to_inherit_;
-+  ChildProcessLogger child_process_logger_;
- 
-  private:
-   scoped_refptr<MojoTaskRunner> mojo_task_runner_;
-@@ -96,8 +100,7 @@ class SandboxedParentProcess : public ParentProcess {
-   ~SandboxedParentProcess() override;
- 
-   bool PrepareAndLaunchTestChildProcess(
--      const std::string& child_main_function,
--      base::win::ScopedHandle child_stdout_write_handle) override;
-+      const std::string& child_main_function) override;
- };
- 
- class ChildProcess : public base::RefCountedThreadSafe<ChildProcess> {
-@@ -143,10 +146,6 @@ class ChromePromptIPCTestErrorHandler : public ChromePromptIPC::ErrorHandler {
-   base::OnceClosure on_closed_after_done_;
- };
- 
--namespace internal {
--void PrintChildProcessLogs(const base::FilePath& log_file);
--}  // namespace internal
--
- }  // namespace chrome_cleaner
- 
- #endif  // CHROME_CHROME_CLEANER_IPC_IPC_TEST_UTIL_H_
-diff --git a/chrome/chrome_cleaner/ipc/proto_chrome_prompt_ipc_unittest.cc b/chrome/chrome_cleaner/ipc/proto_chrome_prompt_ipc_unittest.cc
-index f867df58f96ea..e3ce2ab6c27fe 100644
---- a/chrome/chrome_cleaner/ipc/proto_chrome_prompt_ipc_unittest.cc
-+++ b/chrome/chrome_cleaner/ipc/proto_chrome_prompt_ipc_unittest.cc
-@@ -5,7 +5,6 @@
- #include <windows.h>
- 
- #include "base/command_line.h"
--#include "base/files/file_util.h"
- #include "base/process/process.h"
- #include "base/strings/strcat.h"
- #include "base/strings/string_number_conversions.h"
-@@ -19,7 +18,7 @@
- #include "base/win/win_util.h"
- #include "chrome/chrome_cleaner/ipc/ipc_test_util.h"
- #include "chrome/chrome_cleaner/ipc/proto_chrome_prompt_ipc.h"
--#include "chrome/chrome_cleaner/logging/scoped_logging.h"
-+#include "chrome/chrome_cleaner/test/child_process_logger.h"
- #include "components/chrome_cleaner/public/constants/constants.h"
- #include "components/chrome_cleaner/public/proto/chrome_prompt.pb.h"
- #include "components/chrome_cleaner/public/proto/chrome_prompt_for_tests.pb.h"
-@@ -42,7 +41,6 @@ constexpr char kExpectedPromptResultSwitch[] = "expected-prompt-result";
- constexpr char kExpectedChromeDisconnectPointSwitch[] =
-     "expected-parent-disconnected";
- 
--constexpr base::char16 kLogSuffix[] = L"prompt-ipc-test";
- constexpr base::char16 kInvalidUTF16String[] = {0xDC00, 0xD800, 0xD800, 0xDFFF,
-                                                 0xDFFF, 0xDBFF, 0};
- const base::FilePath kInvalidFilePath(kInvalidUTF16String);
-@@ -421,8 +419,7 @@ class MockChrome {
- // Gtest to log.
- class ChildProcess {
-  public:
--  ChildProcess()
--      : scopped_logging_(std::make_unique<ScopedLogging>(kLogSuffix)) {
-+  ChildProcess() {
-     mock_chrome_ = std::make_unique<MockChrome>(
-         ExtractHandleFromCommandLine(chrome_cleaner::kChromeReadHandleSwitch),
-         ExtractHandleFromCommandLine(chrome_cleaner::kChromeWriteHandleSwitch));
-@@ -571,7 +568,6 @@ class ChildProcess {
- 
-  private:
-   std::unique_ptr<MockChrome> mock_chrome_;
--  std::unique_ptr<ScopedLogging> scopped_logging_;
- 
-   ChromeDisconnectPoint expected_disconnect_point_ =
-       ChromeDisconnectPoint::kUnspecified;
-@@ -603,6 +599,9 @@ class ProtoChromePromptIPCTest
- class ParentProcess {
-  public:
-   bool Initialize() {
-+    if (!child_process_logger_.Initialize())
-+      return false;
-+
-     // Inject the flags related to the the config in the command line.
-     test_config_.EnhanceCommandLine(&command_line_);
- 
-@@ -631,14 +630,13 @@ class ParentProcess {
-   }
- 
-   void Run() {
--    // Delete the child process log file if existing.
--    const base::FilePath log_path = ScopedLogging::GetLogFilePath(kLogSuffix);
--    ASSERT_TRUE(base::DeleteFile(log_path, false))
--        << "Can't delete log file from previous run: " << log_path.value();
-+    child_process_logger_.UpdateLaunchOptions(&launch_options_);
- 
-     // Pass the command to the child process and launch the child process.
-     base::Process child_process = base::SpawnMultiProcessTestChild(
-         "ProtoChromePromptIPCClientMain", command_line_, launch_options_);
-+    if (!child_process.IsRunning())
-+      child_process_logger_.DumpLogs();
-     ASSERT_TRUE(child_process.IsRunning());
- 
-     // Close our references to the handles as they are now handled by the child
-@@ -705,10 +703,8 @@ class ParentProcess {
- 
-     EXPECT_EQ(expected_exit_code, rv);
- 
--    if (!success || rv != 0) {
--      internal::PrintChildProcessLogs(
--          ScopedLogging::GetLogFilePath(kLogSuffix));
--    }
-+    if (!success || rv != 0)
-+      child_process_logger_.DumpLogs();
-   }
- 
-   TestConfig& GetTestConfig() { return test_config_; }
-@@ -732,6 +728,8 @@ class ParentProcess {
-   // Blocks until we receive the response from Chrome or an error occurs.
-   base::RunLoop main_runloop_;
-   bool error_occurred_ = false;
-+
-+  ChildProcessLogger child_process_logger_;
- };
- 
- // This contains calls to the chrome_cleaner_ipc implementation.
-diff --git a/chrome/chrome_cleaner/test/BUILD.gn b/chrome/chrome_cleaner/test/BUILD.gn
-index 118454c2bdcd2..4b053fdcaf182 100644
---- a/chrome/chrome_cleaner/test/BUILD.gn
-+++ b/chrome/chrome_cleaner/test/BUILD.gn
-@@ -148,6 +148,8 @@ source_set("test_util") {
-   testonly = true
- 
-   sources = [
-+    "child_process_logger.cc",
-+    "child_process_logger.h",
-     "file_remover_test_util.cc",
-     "file_remover_test_util.h",
-     "reboot_deletion_helper.cc",
-@@ -228,6 +230,7 @@ source_set("integration_test_sources") {
-     "//chrome/chrome_cleaner/os:common_os",
-     "//chrome/chrome_cleaner/pup_data:pup_data_base",
-     "//chrome/chrome_cleaner/pup_data:test_uws",
-+    "//chrome/chrome_cleaner/test:test_util",
-     "//chrome/chrome_cleaner/zip_archiver:common",
-     "//components/chrome_cleaner/public/constants",
-     "//components/chrome_cleaner/test:test_name_helper",
-diff --git a/chrome/chrome_cleaner/test/child_process_logger.cc b/chrome/chrome_cleaner/test/child_process_logger.cc
-new file mode 100644
-index 0000000000000..9f4836267aea6
---- /dev/null
-+++ b/chrome/chrome_cleaner/test/child_process_logger.cc
-@@ -0,0 +1,90 @@
-+// Copyright 2019 The Chromium Authors. All rights reserved.
-+// Use of this source code is governed by a BSD-style license that can be
-+// found in the LICENSE file.
-+
-+#include "chrome/chrome_cleaner/test/child_process_logger.h"
-+
-+#include <vector>
-+
-+#include "base/files/file_util.h"
-+#include "base/logging.h"
-+#include "base/strings/string_piece.h"
-+#include "base/strings/string_split.h"
-+
-+namespace chrome_cleaner {
-+
-+ChildProcessLogger::ChildProcessLogger() = default;
-+
-+ChildProcessLogger::~ChildProcessLogger() = default;
-+
-+bool ChildProcessLogger::Initialize() {
-+  // Adapted from
-+  // https://cs.chromium.org/chromium/src/sandbox/win/src/handle_inheritance_test.cc
-+  if (!temp_dir_.CreateUniqueTempDir()) {
-+    PLOG(ERROR) << "Could not create temp dir for child stdout";
-+    return false;
-+  }
-+
-+  if (!CreateTemporaryFileInDir(temp_dir_.GetPath(), &temp_file_name_)) {
-+    PLOG(ERROR) << "Could not create temp file for child stdout";
-+    return false;
-+  }
-+
-+  SECURITY_ATTRIBUTES attrs = {};
-+  attrs.nLength = sizeof(attrs);
-+  attrs.bInheritHandle = true;
-+
-+  child_stdout_handle_.Set(
-+      ::CreateFile(temp_file_name_.value().c_str(), GENERIC_WRITE,
-+                   FILE_SHARE_WRITE | FILE_SHARE_READ | FILE_SHARE_DELETE,
-+                   &attrs, OPEN_EXISTING, 0, nullptr));
-+  if (!child_stdout_handle_.IsValid()) {
-+    PLOG(ERROR) << "Could not open child stdout file";
-+    return false;
-+  }
-+
-+  return true;
-+}
-+
-+void ChildProcessLogger::UpdateLaunchOptions(
-+    base::LaunchOptions* options) const {
-+  DCHECK(child_stdout_handle_.IsValid());
-+  options->handles_to_inherit.push_back(child_stdout_handle_.Get());
-+  options->stdin_handle = INVALID_HANDLE_VALUE;
-+  options->stdout_handle = child_stdout_handle_.Get();
-+  options->stderr_handle = child_stdout_handle_.Get();
-+}
-+
-+void ChildProcessLogger::UpdateSandboxPolicy(
-+    sandbox::TargetPolicy* policy) const {
-+  DCHECK(child_stdout_handle_.IsValid());
-+  policy->SetStdoutHandle(child_stdout_handle_.Get());
-+  policy->SetStderrHandle(child_stdout_handle_.Get());
-+}
-+
-+void ChildProcessLogger::DumpLogs() const {
-+  DCHECK(!temp_file_name_.empty());
-+
-+  if (!base::PathExists(temp_file_name_)) {
-+    LOG(ERROR) << "Child process log file doesn't exist";
-+    return;
-+  }
-+
-+  // Collect the child process log file, and dump the contents, to help
-+  // debugging failures.
-+  std::string log_file_contents;
-+  if (!base::ReadFileToString(temp_file_name_, &log_file_contents)) {
-+    LOG(ERROR) << "Failed to read child process log file";
-+    return;
-+  }
-+
-+  std::vector<base::StringPiece> lines =
-+      base::SplitStringPiece(log_file_contents, "\n", base::TRIM_WHITESPACE,
-+                             base::SPLIT_WANT_NONEMPTY);
-+  LOG(ERROR) << "Dumping child process logs";
-+  for (const auto& line : lines) {
-+    LOG(ERROR) << "Child process: " << line;
-+  }
-+}
-+
-+}  // namespace chrome_cleaner
-diff --git a/chrome/chrome_cleaner/test/child_process_logger.h b/chrome/chrome_cleaner/test/child_process_logger.h
-new file mode 100644
-index 0000000000000..215fa911d7899
---- /dev/null
-+++ b/chrome/chrome_cleaner/test/child_process_logger.h
-@@ -0,0 +1,62 @@
-+// Copyright 2019 The Chromium Authors. All rights reserved.
-+// Use of this source code is governed by a BSD-style license that can be
-+// found in the LICENSE file.
-+
-+#ifndef CHROME_CHROME_CLEANER_TEST_CHILD_PROCESS_LOGGER_H_
-+#define CHROME_CHROME_CLEANER_TEST_CHILD_PROCESS_LOGGER_H_
-+
-+#include "base/files/scoped_temp_dir.h"
-+#include "base/process/launch.h"
-+#include "base/win/scoped_handle.h"
-+#include "sandbox/win/src/sandbox_policy.h"
-+
-+namespace chrome_cleaner {
-+
-+// Redirects stdin and stdout of a child process to a temp file. Tests that
-+// spawn children can add the contents of the temp file to the test output.
-+//
-+// Note that if the child process sets up ScopedLogging, ERROR and FATAL level
-+// logs will still be captured by this, but other logs will start going to the
-+// ScopedLogging log file. test_main.cc sets up ScopedLogging so usually this
-+// class will capture:
-+//
-+// 1. All log lines from before the ScopedLogging constructor.
-+// 2. ERROR and FATAL log lines from after that.
-+// 3. stdout and stderr output that doesn't go through the logging system.
-+// 4. Stack traces from any crashes.
-+//
-+// This should be all that's needed to diagnose errors in tests.
-+class ChildProcessLogger {
-+ public:
-+  ChildProcessLogger();
-+  ~ChildProcessLogger();
-+
-+  // Creates a temp file for child processes to log to. Logs an error and
-+  // returns false on failure.
-+  bool Initialize();
-+
-+  // Updates |options| to direct the child stdout and stderr to the temp file.
-+  // For use with base::LaunchProcess and base::SpawnMultiProcessTestChild.
-+  void UpdateLaunchOptions(base::LaunchOptions* options) const;
-+
-+  // Updates |policy| to direct the child stdout and stderr to the temp file.
-+  // For use with sandbox::BrokerServices::SpawnTarget.
-+  void UpdateSandboxPolicy(sandbox::TargetPolicy* policy) const;
-+
-+  // Writes every line in the temp file using LOG(ERROR) so that all lines are
-+  // captured in the test suite output. The class-level comment above describes
-+  // which log lines from the child will be captured.
-+  void DumpLogs() const;
-+
-+ private:
-+  ChildProcessLogger(const ChildProcessLogger& other) = delete;
-+  ChildProcessLogger& operator=(const ChildProcessLogger& other) = delete;
-+
-+  base::ScopedTempDir temp_dir_;
-+  base::FilePath temp_file_name_;
-+  base::win::ScopedHandle child_stdout_handle_;
-+};
-+
-+}  // namespace chrome_cleaner
-+
-+#endif  // CHROME_CHROME_CLEANER_TEST_CHILD_PROCESS_LOGGER_H_
-diff --git a/chrome/chrome_cleaner/test/cleaner_test.cc b/chrome/chrome_cleaner/test/cleaner_test.cc
-index d6df17e3516f1..f778103bfdad3 100644
---- a/chrome/chrome_cleaner/test/cleaner_test.cc
-+++ b/chrome/chrome_cleaner/test/cleaner_test.cc
-@@ -24,6 +24,7 @@
- #include "chrome/chrome_cleaner/os/pre_fetched_paths.h"
- #include "chrome/chrome_cleaner/pup_data/pup_data.h"
- #include "chrome/chrome_cleaner/pup_data/test_uws.h"
-+#include "chrome/chrome_cleaner/test/child_process_logger.h"
- #include "chrome/chrome_cleaner/test/test_util.h"
- #include "chrome/chrome_cleaner/zip_archiver/sandboxed_zip_archiver.h"
- #include "components/chrome_cleaner/public/constants/constants.h"
-@@ -311,8 +312,14 @@ class CleanerTest
- 
-   void ExpectExitCode(const base::CommandLine& command_line,
-                       int expected_exit_code) {
--    base::Process process(
--        base::LaunchProcess(command_line, base::LaunchOptions()));
-+    chrome_cleaner::ChildProcessLogger logger;
-+    ASSERT_TRUE(logger.Initialize());
-+
-+    base::LaunchOptions options;
-+    logger.UpdateLaunchOptions(&options);
-+    base::Process process(base::LaunchProcess(command_line, options));
-+    if (!process.IsValid())
-+      logger.DumpLogs();
-     ASSERT_TRUE(process.IsValid());
- 
-     int exit_code = -1;
-@@ -320,7 +327,8 @@ class CleanerTest
-         base::TimeDelta::FromMinutes(10), &exit_code);
-     EXPECT_TRUE(exited_within_timeout);
-     EXPECT_EQ(expected_exit_code, exit_code);
--
-+    if (!exited_within_timeout || expected_exit_code != exit_code)
-+      logger.DumpLogs();
-     if (!exited_within_timeout)
-       process.Terminate(/*exit_code=*/-1, /*wait=*/false);
-   }
-diff --git a/chrome/chrome_cleaner/test/secure_dll_loading_test.cc b/chrome/chrome_cleaner/test/secure_dll_loading_test.cc
-index fe10c44346b5e..92e2db19fde6c 100644
---- a/chrome/chrome_cleaner/test/secure_dll_loading_test.cc
-+++ b/chrome/chrome_cleaner/test/secure_dll_loading_test.cc
-@@ -8,22 +8,17 @@
- 
- #include <memory>
- #include <set>
--#include <string>
- #include <vector>
- 
- #include "base/base_paths.h"
- #include "base/command_line.h"
- #include "base/files/file_path.h"
--#include "base/files/file_util.h"
--#include "base/files/scoped_temp_dir.h"
- #include "base/logging.h"
- #include "base/path_service.h"
- #include "base/process/launch.h"
- #include "base/process/process.h"
- #include "base/strings/string16.h"
- #include "base/strings/string_number_conversions.h"
--#include "base/strings/string_piece.h"
--#include "base/strings/string_split.h"
- #include "base/strings/string_util.h"
- #include "base/synchronization/waitable_event.h"
- #include "base/test/test_timeouts.h"
-@@ -32,54 +27,16 @@
- #include "chrome/chrome_cleaner/constants/chrome_cleaner_switches.h"
- #include "chrome/chrome_cleaner/os/inheritable_event.h"
- #include "chrome/chrome_cleaner/os/process.h"
-+#include "chrome/chrome_cleaner/test/child_process_logger.h"
- #include "chrome/chrome_cleaner/test/test_util.h"
- #include "components/chrome_cleaner/public/constants/constants.h"
- #include "components/chrome_cleaner/test/test_name_helper.h"
- #include "testing/gtest/include/gtest/gtest.h"
- 
--namespace {
--
--void PrintChildProcessLogs(const base::FilePath& log_dir,
--                           base::StringPiece16 file_name) {
--  base::string16 base_name;
--  if (file_name == L"software_reporter_tool") {
--    base_name = L"software_reporter_tool";
--  } else if (file_name == L"chrome_cleanup_tool") {
--    base_name = L"chrome_cleanup";
--  } else {
--    LOG(ERROR) << "Unknown file name " << file_name.data();
--    return;
--  }
--
--  base::FilePath log_path = log_dir.Append(base_name).AddExtension(L"log");
--
--  if (!base::PathExists(log_path)) {
--    LOG(ERROR) << "Child process log file doesn't exist";
--    return;
--  }
--
--  // Collect the child process log file, and dump the contents, to help
--  // debugging failures.
--  std::string log_file_contents;
--  if (!base::ReadFileToString(log_path, &log_file_contents)) {
--    LOG(ERROR) << "Failed to read child process log file";
--    return;
--  }
--
--  std::vector<base::StringPiece> lines =
--      base::SplitStringPiece(log_file_contents, "\n", base::TRIM_WHITESPACE,
--                             base::SPLIT_WANT_NONEMPTY);
--  LOG(ERROR) << "Dumping child process logs";
--  for (const auto& line : lines) {
--    LOG(ERROR) << "Child process: " << line;
--  }
--}
--
--}  // namespace
--
- class SecureDLLLoadingTest : public testing::TestWithParam<base::string16> {
-  protected:
-   void SetUp() override {
-+    ASSERT_TRUE(child_process_logger_.Initialize());
-     base::FilePath out_dir;
-     ASSERT_TRUE(base::PathService::Get(base::DIR_EXE, &out_dir));
-     exe_path_ = out_dir.Append(GetParam() + L".exe");
-@@ -104,8 +61,6 @@ class SecureDLLLoadingTest : public testing::TestWithParam<base::string16> {
-         base::NumberToString16(
-             base::win::HandleToUint32(init_done_notifier->handle())));
-     command_line.AppendSwitch(chrome_cleaner::kLoadEmptyDLLSwitch);
--    command_line.AppendSwitchPath(chrome_cleaner::kTestLoggingPathSwitch,
--                                  log_dir.GetPath());
- 
- #if !BUILDFLAG(IS_OFFICIAL_CHROME_CLEANER_BUILD)
-     if (disable_secure_dll_loading)
-@@ -121,7 +76,12 @@ class SecureDLLLoadingTest : public testing::TestWithParam<base::string16> {
- 
-     base::LaunchOptions options;
-     options.handles_to_inherit.push_back(init_done_notifier->handle());
-+    child_process_logger_.UpdateLaunchOptions(&options);
-     base::Process process = base::LaunchProcess(command_line, options);
-+    if (!process.IsValid()) {
-+      child_process_logger_.DumpLogs();
-+      return process;
-+    }
- 
-     // Make sure the process has finished its initialization (including loading
-     // DLLs). Also check the process handle in case it exits with an error.
-@@ -136,7 +96,7 @@ class SecureDLLLoadingTest : public testing::TestWithParam<base::string16> {
-       PLOG_IF(ERROR, !::GetExitCodeProcess(process.Handle(), &exit_code));
-       ADD_FAILURE() << "Process exited with " << exit_code
-                     << " before signalling init_done_notifier";
--      PrintChildProcessLogs(log_dir.GetPath(), GetParam());
-+      child_process_logger_.DumpLogs();
-     } else {
-       EXPECT_EQ(wait_result, WAIT_OBJECT_0);
-     }
-@@ -157,6 +117,7 @@ class SecureDLLLoadingTest : public testing::TestWithParam<base::string16> {
-   }
- 
-  private:
-+  chrome_cleaner::ChildProcessLogger child_process_logger_;
-   base::FilePath exe_path_;
-   base::FilePath empty_dll_path_;
- };
diff --git a/srcpkgs/electron7/files/patches/chromium-004-upstream_use_childprocesslogger.patch.patch b/srcpkgs/electron7/files/patches/chromium-004-upstream_use_childprocesslogger.patch.patch
deleted file mode 100644
index 6a2a4893d445..000000000000
--- a/srcpkgs/electron7/files/patches/chromium-004-upstream_use_childprocesslogger.patch.patch
+++ /dev/null
@@ -1,186 +0,0 @@
-From 890956be1496b625967df0bbf620e8fc4aefb390 Mon Sep 17 00:00:00 2001
-From: Joe Mason <joenotcharles@google.com>
-Date: Wed, 4 Dec 2019 18:22:34 +0000
-Subject: [PATCH] Use ChildProcessLogger in FileRemoverQuarantineTest and
- SandboxedShortcutParserTest
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-R=​proberge
-
-(cherry picked from commit 814583834ebf35ede5dad0ba3574343851b1a8bd)
-
-Bug: 1030333
-Change-Id: I66b9b3dc73980e8ed03ee37d89eb172b5330c913
-Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1948235
-Commit-Queue: Joe Mason <joenotcharles@chromium.org>
-Reviewed-by: proberge <proberge@chromium.org>
-Cr-Original-Commit-Position: refs/heads/master@{#721193}
-Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1948102
-Reviewed-by: Joe Mason <joenotcharles@chromium.org>
-Cr-Commit-Position: refs/branch-heads/3904@{#915}
-Cr-Branched-From: 675968a8c657a3bd9c1c2c20c5d2935577bbc5e6-refs/heads/master@{#693954}
----
- .../os/file_remover_unittest.cc               | 39 ++++++++++++++++---
- .../parsers/shortcut_parser/broker/BUILD.gn   |  1 +
- .../sandboxed_shortcut_parser_unittest.cc     | 35 +++++++++++++++--
- 3 files changed, 67 insertions(+), 8 deletions(-)
-
-diff --git a/chrome/chrome_cleaner/os/file_remover_unittest.cc b/chrome/chrome_cleaner/os/file_remover_unittest.cc
-index 52c9b4f1c5089..c57983e83c6b9 100644
---- a/chrome/chrome_cleaner/os/file_remover_unittest.cc
-+++ b/chrome/chrome_cleaner/os/file_remover_unittest.cc
-@@ -30,6 +30,7 @@
- #include "chrome/chrome_cleaner/os/pre_fetched_paths.h"
- #include "chrome/chrome_cleaner/os/system_util.h"
- #include "chrome/chrome_cleaner/os/whitelisted_directory.h"
-+#include "chrome/chrome_cleaner/test/child_process_logger.h"
- #include "chrome/chrome_cleaner/test/file_remover_test_util.h"
- #include "chrome/chrome_cleaner/test/reboot_deletion_helper.h"
- #include "chrome/chrome_cleaner/test/resources/grit/test_resources.h"
-@@ -398,20 +399,47 @@ constexpr wchar_t kTestExpectArchiveName[] =
-     L"temp_file.exe_"
-     L"A591A6D40BF420404A011733CFB7B190D62C65BF0BCDA32B57B277D9AD9F146E.zip";
- 
-+class LoggedZipArchiverSandboxSetupHooks : public ZipArchiverSandboxSetupHooks {
-+ public:
-+  explicit LoggedZipArchiverSandboxSetupHooks(
-+      scoped_refptr<MojoTaskRunner> mojo_task_runner,
-+      base::OnceClosure connection_error_handler,
-+      chrome_cleaner::ChildProcessLogger* child_process_logger)
-+      : ZipArchiverSandboxSetupHooks(std::move(mojo_task_runner),
-+                                     std::move(connection_error_handler)),
-+        child_process_logger_(child_process_logger) {}
-+
-+  ResultCode UpdateSandboxPolicy(sandbox::TargetPolicy* policy,
-+                                 base::CommandLine* command_line) override {
-+    child_process_logger_->UpdateSandboxPolicy(policy);
-+    return ZipArchiverSandboxSetupHooks::UpdateSandboxPolicy(policy,
-+                                                             command_line);
-+  }
-+
-+ private:
-+  chrome_cleaner::ChildProcessLogger* child_process_logger_;
-+};
-+
- class FileRemoverQuarantineTest : public base::MultiProcessTest,
-                                   public ::testing::WithParamInterface<bool> {
-  public:
-   void SetUp() override {
-     use_reboot_removal_ = GetParam();
- 
-+    ASSERT_TRUE(child_process_logger_.Initialize());
-+
-     scoped_refptr<MojoTaskRunner> mojo_task_runner = MojoTaskRunner::Create();
--    ZipArchiverSandboxSetupHooks setup_hooks(
-+    LoggedZipArchiverSandboxSetupHooks setup_hooks(
-         mojo_task_runner.get(), base::BindOnce([] {
-           FAIL() << "ZipArchiver sandbox connection error";
--        }));
--    ASSERT_EQ(RESULT_CODE_SUCCESS,
--              StartSandboxTarget(MakeCmdLine("FileRemoverQuarantineTargetMain"),
--                                 &setup_hooks, SandboxType::kTest));
-+        }),
-+        &child_process_logger_);
-+    ResultCode result_code =
-+        StartSandboxTarget(MakeCmdLine("FileRemoverQuarantineTargetMain"),
-+                           &setup_hooks, SandboxType::kTest);
-+    if (result_code != RESULT_CODE_SUCCESS)
-+      child_process_logger_.DumpLogs();
-+    ASSERT_EQ(RESULT_CODE_SUCCESS, result_code);
- 
-     ASSERT_TRUE(temp_dir_.CreateUniqueTempDir());
- 
-@@ -447,6 +475,7 @@ class FileRemoverQuarantineTest : public base::MultiProcessTest,
-   base::test::SingleThreadTaskEnvironment task_environment_;
-   base::ScopedTempDir temp_dir_;
-   std::unique_ptr<FileRemover> file_remover_;
-+  chrome_cleaner::ChildProcessLogger child_process_logger_;
- };
- 
- }  // namespace
-diff --git a/chrome/chrome_cleaner/parsers/shortcut_parser/broker/BUILD.gn b/chrome/chrome_cleaner/parsers/shortcut_parser/broker/BUILD.gn
-index bc7ba8188c83b..09ed07b761a4e 100644
---- a/chrome/chrome_cleaner/parsers/shortcut_parser/broker/BUILD.gn
-+++ b/chrome/chrome_cleaner/parsers/shortcut_parser/broker/BUILD.gn
-@@ -67,6 +67,7 @@ source_set("unittest_sources") {
-     "//chrome/chrome_cleaner/parsers/shortcut_parser:sandboxed_lnk_parser_test_util",
-     "//chrome/chrome_cleaner/parsers/shortcut_parser/target:lnk_parser",
-     "//chrome/chrome_cleaner/parsers/target:parser_sandbox_target",
-+    "//chrome/chrome_cleaner/test:test_util",
-     "//mojo/public/cpp/bindings:bindings",
-     "//sandbox/win:sandbox",
-     "//testing/gtest",
-diff --git a/chrome/chrome_cleaner/parsers/shortcut_parser/broker/sandboxed_shortcut_parser_unittest.cc b/chrome/chrome_cleaner/parsers/shortcut_parser/broker/sandboxed_shortcut_parser_unittest.cc
-index 64ac91ed92016..4c033f21c77c3 100644
---- a/chrome/chrome_cleaner/parsers/shortcut_parser/broker/sandboxed_shortcut_parser_unittest.cc
-+++ b/chrome/chrome_cleaner/parsers/shortcut_parser/broker/sandboxed_shortcut_parser_unittest.cc
-@@ -18,6 +18,7 @@
- #include "chrome/chrome_cleaner/parsers/broker/sandbox_setup_hooks.h"
- #include "chrome/chrome_cleaner/parsers/shortcut_parser/sandboxed_lnk_parser_test_util.h"
- #include "chrome/chrome_cleaner/parsers/target/sandbox_setup.h"
-+#include "chrome/chrome_cleaner/test/child_process_logger.h"
- #include "mojo/public/cpp/bindings/interface_request.h"
- #include "mojo/public/cpp/system/platform_handle.h"
- #include "sandbox/win/src/sandbox_factory.h"
-@@ -31,6 +32,26 @@ constexpr unsigned int kDirQuantity = 5;
- 
- const base::string16 kLnkArguments = L"-a -b -c -d GenericExample";
- 
-+class LoggedParserSandboxSetupHooks : public ParserSandboxSetupHooks {
-+ public:
-+  explicit LoggedParserSandboxSetupHooks(
-+      scoped_refptr<MojoTaskRunner> mojo_task_runner,
-+      base::OnceClosure connection_error_handler,
-+      chrome_cleaner::ChildProcessLogger* child_process_logger)
-+      : ParserSandboxSetupHooks(std::move(mojo_task_runner),
-+                                std::move(connection_error_handler)),
-+        child_process_logger_(child_process_logger) {}
-+
-+  ResultCode UpdateSandboxPolicy(sandbox::TargetPolicy* policy,
-+                                 base::CommandLine* command_line) override {
-+    child_process_logger_->UpdateSandboxPolicy(policy);
-+    return ParserSandboxSetupHooks::UpdateSandboxPolicy(policy, command_line);
-+  }
-+
-+ private:
-+  chrome_cleaner::ChildProcessLogger* child_process_logger_;
-+};
-+
- }  // namespace
- 
- class SandboxedShortcutParserTest : public base::MultiProcessTest {
-@@ -40,14 +61,20 @@ class SandboxedShortcutParserTest : public base::MultiProcessTest {
-         temp_dirs_with_chrome_lnk_(kDirQuantity) {}
- 
-   void SetUp() override {
-+    ASSERT_TRUE(child_process_logger_.Initialize());
-+
-     mojo_task_runner_ = MojoTaskRunner::Create();
-     ParserSandboxSetupHooks setup_hooks(
-         mojo_task_runner_.get(),
-         base::BindOnce([] { FAIL() << "Parser sandbox connection error"; }));
--    ASSERT_EQ(
--        RESULT_CODE_SUCCESS,
-+
-+    ResultCode result_code =
-         StartSandboxTarget(MakeCmdLine("SandboxedShortcutParserTargetMain"),
--                           &setup_hooks, SandboxType::kTest));
-+                           &setup_hooks, SandboxType::kTest);
-+    if (result_code != RESULT_CODE_SUCCESS)
-+      child_process_logger_.DumpLogs();
-+    ASSERT_EQ(RESULT_CODE_SUCCESS, result_code);
-+
-     parser_ptr_ = setup_hooks.TakeParserPtr();
-     shortcut_parser_ = std::make_unique<SandboxedShortcutParser>(
-         mojo_task_runner_.get(), parser_ptr_.get());
-@@ -98,6 +125,8 @@ class SandboxedShortcutParserTest : public base::MultiProcessTest {
-   base::FilePath not_lnk_file_path_;
- 
-   base::test::TaskEnvironment task_environment_;
-+
-+  chrome_cleaner::ChildProcessLogger child_process_logger_;
- };
- 
- MULTIPROCESS_TEST_MAIN(SandboxedShortcutParserTargetMain) {
diff --git a/srcpkgs/electron7/files/patches/chromium-005-upstream-chromium_version.patch.patch b/srcpkgs/electron7/files/patches/chromium-005-upstream-chromium_version.patch.patch
deleted file mode 100644
index 65b8ef4df0a5..000000000000
--- a/srcpkgs/electron7/files/patches/chromium-005-upstream-chromium_version.patch.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From c1109b707b1eda5d98eb2ed6bd74083bc352f482 Mon Sep 17 00:00:00 2001
-From: chrome-release-bot <chrome-release-bot@chromium.org>
-Date: Fri, 6 Dec 2019 01:09:50 +0000
-Subject: [PATCH] Incrementing VERSION to 78.0.3904.130
-
-TBR=govind@chromium.org
-
-Change-Id: Ib675653e2605cf2c15ebdbd1320465b08a49994d
-Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1954709
-Reviewed-by: Chrome Release Bot (LUCI) <chrome-official-brancher@chops-service-accounts.iam.gserviceaccount.com>
-Cr-Commit-Position: refs/branch-heads/3904@{#917}
-Cr-Branched-From: 675968a8c657a3bd9c1c2c20c5d2935577bbc5e6-refs/heads/master@{#693954}
----
- chrome/VERSION | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/chrome/VERSION b/chrome/VERSION
-index 7a4383a1ccb7f..50f887f746227 100644
---- a/chrome/VERSION
-+++ b/chrome/VERSION
-@@ -1,4 +1,4 @@
- MAJOR=78
- MINOR=0
- BUILD=3904
--PATCH=108
-+PATCH=130
diff --git a/srcpkgs/electron7/files/patches/chromium-77-clang.patch b/srcpkgs/electron7/files/patches/chromium-77-clang.patch
deleted file mode 100644
index a57b5a458a4d..000000000000
--- a/srcpkgs/electron7/files/patches/chromium-77-clang.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/base/location.h b/base/location.h
-index c07e747..924db1c 100644
---- a/base/location.h
-+++ b/base/location.h
-@@ -18,7 +18,7 @@
- 
- namespace base {
- 
--#if defined(__has_builtin)
-+#if defined(__clang__)
- // Clang allows detection of these builtins.
- #define SUPPORTS_LOCATION_BUILTINS                                       \
-   (__has_builtin(__builtin_FUNCTION) && __has_builtin(__builtin_FILE) && \
diff --git a/srcpkgs/electron7/files/patches/chromium-77-pulseaudio-13.patch b/srcpkgs/electron7/files/patches/chromium-77-pulseaudio-13.patch
deleted file mode 100644
index 892a3183c9da..000000000000
--- a/srcpkgs/electron7/files/patches/chromium-77-pulseaudio-13.patch
+++ /dev/null
@@ -1,82 +0,0 @@
-From 7ac85fb4cc6f44a21761a591ac497ae3d6bf966d Mon Sep 17 00:00:00 2001
-From: Allan Sandfeld Jensen <allan.jensen@qt.io>
-Date: Mon, 23 Sep 2019 13:49:53 +0200
-Subject: [PATCH] Fix building with pulseaudio 13
-
-The function signature changed though the ABI stayed the same.
-
-(Modified to apply on chromium sources too)
-
-Change-Id: I86ca361b5e4f0c523e1031910df438c23beee876
-Fixes: QTBUG-77037
-Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
----
-
-diff --git a/media/audio/pulse/pulse.sigs b/media/audio/pulse/pulse.sigs
-index 8b58887..daaeb14 100644
---- a/media/audio/pulse/pulse.sigs
-+++ b/media/audio/pulse/pulse.sigs
-@@ -24,11 +24,11 @@
- pa_operation* pa_context_get_source_info_by_name(pa_context* c, const char* name, pa_source_info_cb_t cb, void *userdata);
- pa_operation* pa_context_get_source_info_list(pa_context* c, pa_source_info_cb_t cb, void* userdata);
- pa_operation* pa_context_get_sink_info_list(pa_context* c, pa_sink_info_cb_t cb, void* userdata);
--pa_context_state_t pa_context_get_state(pa_context* c);
-+pa_context_state_t pa_context_get_state(const_pa_context_ptr c);
- pa_context* pa_context_new(pa_mainloop_api* mainloop, const char* name);
- pa_operation* pa_context_set_source_volume_by_index(pa_context* c, uint32_t idx, const pa_cvolume* volume, pa_context_success_cb_t cb, void* userdata);
- void pa_context_set_state_callback(pa_context* c, pa_context_notify_cb_t cb, void* userdata);
--pa_operation_state_t pa_operation_get_state(pa_operation* o);
-+pa_operation_state_t pa_operation_get_state(const_pa_operation_ptr o);
- void pa_context_unref(pa_context* c);
- void pa_operation_unref(pa_operation* o);
- int pa_stream_begin_write(pa_stream* p, void** data, size_t* nbytes);
-@@ -38,23 +38,23 @@
- int pa_stream_disconnect(pa_stream* s);
- int pa_stream_drop(pa_stream *p);
- pa_operation* pa_stream_flush(pa_stream* s, pa_stream_success_cb_t cb, void* userdata);
--uint32_t pa_stream_get_device_index(pa_stream* s);
-+uint32_t pa_stream_get_device_index(const_pa_stream_ptr s);
- int pa_stream_get_latency(pa_stream* s, pa_usec_t* r_usec, int* negative);
--pa_stream_state_t pa_stream_get_state(pa_stream* p);
-+pa_stream_state_t pa_stream_get_state(const_pa_stream_ptr p);
- pa_stream* pa_stream_new(pa_context*  c, const char*  name, const pa_sample_spec*  ss, const pa_channel_map *  map);
- pa_stream* pa_stream_new_with_proplist(pa_context* c, const char* name, const pa_sample_spec* ss, const pa_channel_map* map, pa_proplist* p);
- pa_proplist* pa_proplist_new(void);
--int pa_proplist_contains(pa_proplist* p, const char* key);
-+int pa_proplist_contains(const_pa_proplist_ptr p, const char* key);
- void pa_proplist_free(pa_proplist* p);
--const char* pa_proplist_gets(pa_proplist* p, const char* key);
-+const char* pa_proplist_gets(const_pa_proplist_ptr p, const char* key);
- int pa_proplist_sets(pa_proplist* p, const char* key, const char* value);
--size_t pa_stream_readable_size(pa_stream *p);
-+size_t pa_stream_readable_size(const_pa_stream_ptr p);
- int pa_stream_peek(pa_stream* p, const void** data, size_t* nbytes);
- void pa_stream_set_read_callback(pa_stream* p, pa_stream_request_cb_t cb, void* userdata);
- void pa_stream_set_state_callback(pa_stream* s, pa_stream_notify_cb_t cb, void* userdata);
- int pa_stream_write(pa_stream* p, const void* data, size_t nbytes, pa_free_cb_t free_cb, int64_t offset, pa_seek_mode_t seek);
- void pa_stream_set_write_callback(pa_stream *p, pa_stream_request_cb_t cb, void *userdata);
- void pa_stream_unref(pa_stream* s);
--int pa_context_errno(pa_context *c);
-+int pa_context_errno(const_pa_context_ptr c);
- const char* pa_strerror(int error);
- pa_cvolume* pa_cvolume_set(pa_cvolume* a, unsigned  channels, pa_volume_t v);
-diff --git a/chromium/media/audio/pulse/pulse_stub_header.fragment b/chromium/media/audio/pulse/pulse_stub_header.fragment
-index 2a2d3e7..cdaa841 100644
---- a/media/audio/pulse/pulse_stub_header.fragment
-+++ b/media/audio/pulse/pulse_stub_header.fragment
-@@ -5,4 +5,15 @@
- 
- #include <pulse/pulseaudio.h>
- 
-+#if PA_MAJOR > 12
-+typedef const pa_context* const_pa_context_ptr;
-+typedef const pa_operation* const_pa_operation_ptr;
-+typedef const pa_proplist* const_pa_proplist_ptr;
-+typedef const pa_stream* const_pa_stream_ptr;
-+#else
-+typedef pa_context* const_pa_context_ptr;
-+typedef pa_operation* const_pa_operation_ptr;
-+typedef pa_proplist* const_pa_proplist_ptr;
-+typedef pa_stream* const_pa_stream_ptr;
-+#endif
- }
diff --git a/srcpkgs/electron7/files/patches/chromium-77-system-icu.patch b/srcpkgs/electron7/files/patches/chromium-77-system-icu.patch
deleted file mode 100644
index 1f848d7ee2be..000000000000
--- a/srcpkgs/electron7/files/patches/chromium-77-system-icu.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-diff --git a/build/linux/unbundle/icu.gn b/build/linux/unbundle/icu.gn
-index 4450e40..9ca36dd 100644
---- a/build/linux/unbundle/icu.gn
-+++ b/build/linux/unbundle/icu.gn
-@@ -96,6 +96,7 @@ shim_headers("icui18n_shim") {
-     "unicode/fpositer.h",
-     "unicode/gender.h",
-     "unicode/gregocal.h",
-+    "unicode/listformatter.h",
-     "unicode/measfmt.h",
-     "unicode/measunit.h",
-     "unicode/measure.h",
-@@ -178,7 +179,6 @@ shim_headers("icuuc_shim") {
-     "unicode/icudataver.h",
-     "unicode/icuplug.h",
-     "unicode/idna.h",
--    "unicode/listformatter.h",
-     "unicode/localpointer.h",
-     "unicode/locdspnm.h",
-     "unicode/locid.h",
diff --git a/srcpkgs/electron7/files/patches/chromium-78-gcc-alignas.patch b/srcpkgs/electron7/files/patches/chromium-78-gcc-alignas.patch
deleted file mode 100644
index bce4118596bf..000000000000
--- a/srcpkgs/electron7/files/patches/chromium-78-gcc-alignas.patch
+++ /dev/null
@@ -1,102 +0,0 @@
-From 6b633c4b14850df376d5cec571699018772f358e Mon Sep 17 00:00:00 2001
-From: Tomas Popela <tomas.popela@gmail.com>
-Date: Tue, 17 Sep 2019 19:48:48 +0000
-Subject: [PATCH] GCC: Can't use alignas() together with __attribute__()
-
-It's because GCC has problems when mixing the alignas() together with
-__attribute__() (that is used to export the symbols). The best
-solution is to use ALIGNAS() macro from //base/compiler_specific.h
-together with alignof() to have the equal functionality that compiles on
-GCC as well as on clang.
-
-Bug: 819294
-Change-Id: Ieb169592a2965f17a18bfc88d28418eb723a4e5a
-Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1806735
-Auto-Submit: Tom     Popela <tomas.popela@gmail.com>
-Commit-Queue: Alex Clarke <alexclarke@chromium.org>
-Reviewed-by: Alex Clarke <alexclarke@chromium.org>
-Cr-Commit-Position: refs/heads/master@{#697330}
----
-
-diff --git a/base/task/promise/dependent_list.h b/base/task/promise/dependent_list.h
-index 020bdbfc..3245c1c 100644
---- a/base/task/promise/dependent_list.h
-+++ b/base/task/promise/dependent_list.h
-@@ -59,7 +59,7 @@
- 
-   // Align Node on an 8-byte boundary to ensure the first 3 bits are 0 and can
-   // be used to store additional state (see static_asserts below).
--  class BASE_EXPORT alignas(8) Node {
-+  class BASE_EXPORT ALIGNAS(8) Node {
-    public:
-     Node();
-     explicit Node(Node&& other) noexcept;
-
-Re-use chromium alignas workaround in protobuf.
----
-
-diff --git a/third_party/protobuf/src/google/protobuf/port_def.inc b/third_party/protobuf/src/google/protobuf/port_def.inc
-index f1bd85d..9c204a1 100644
---- a/third_party/protobuf/src/google/protobuf/port_def.inc
-+++ b/third_party/protobuf/src/google/protobuf/port_def.inc
-@@ -528,6 +528,35 @@ PROTOBUF_EXPORT_TEMPLATE_TEST(DEFAULT, __declspec(dllimport));
- #undef IN
- #endif  // _MSC_VER
- 
-+// Specify memory alignment for structs, classes, etc.
-+// Use like:
-+//   class PROTOBUF_ALIGNAS(16) MyClass { ... }
-+//   PROTOBUF_ALIGNAS(16) int array[4];
-+//
-+// In most places you can use the C++11 keyword "alignas", which is preferred.
-+//
-+// But compilers have trouble mixing __attribute__((...)) syntax with
-+// alignas(...) syntax.
-+//
-+// Doesn't work in clang or gcc:
-+//   struct alignas(16) __attribute__((packed)) S { char c; };
-+// Works in clang but not gcc:
-+//   struct __attribute__((packed)) alignas(16) S2 { char c; };
-+// Works in clang and gcc:
-+//   struct alignas(16) S3 { char c; } __attribute__((packed));
-+//
-+// There are also some attributes that must be specified *before* a class
-+// definition: visibility (used for exporting functions/classes) is one of
-+// these attributes. This means that it is not possible to use alignas() with a
-+// class that is marked as exported.
-+#if defined(_MSC_VER)
-+#define PROTOBUF_ALIGNAS(byte_alignment) __declspec(align(byte_alignment))
-+#elif defined(__GNUC__)
-+#define PROTOBUF_ALIGNAS(byte_alignment) __attribute__((aligned(byte_alignment)))
-+#else
-+#define PROTOBUF_ALIGNAS(byte_alignment) alignas(byte_alignment)
-+#endif
-+
- #if defined(__clang__)
- #pragma clang diagnostic push
- // TODO(gerbens) ideally we cleanup the code. But a cursory try shows many
-diff --git a/third_party/protobuf/src/google/protobuf/arena.h b/third_party/protobuf/src/google/protobuf/arena.h
-index dedc221..a8515ce 100644
---- a/third_party/protobuf/src/google/protobuf/arena.h
-+++ b/third_party/protobuf/src/google/protobuf/arena.h
-@@ -245,7 +245,7 @@ struct ArenaOptions {
- // well as protobuf container types like RepeatedPtrField and Map. The protocol
- // is internal to protobuf and is not guaranteed to be stable. Non-proto types
- // should not rely on this protocol.
--class PROTOBUF_EXPORT alignas(8) Arena final {
-+class PROTOBUF_EXPORT PROTOBUF_ALIGNAS(8) Arena final {
-  public:
-   // Arena constructor taking custom options. See ArenaOptions below for
-   // descriptions of the options available.
-diff --git a/third_party/protobuf/src/google/protobuf/port_undef.inc b/third_party/protobuf/src/google/protobuf/port_undef.inc
-index b7e67fe..ba1fffc 100644
---- a/third_party/protobuf/src/google/protobuf/port_undef.inc
-+++ b/third_party/protobuf/src/google/protobuf/port_undef.inc
-@@ -80,6 +80,7 @@
- #undef PROTOBUF_EXPORT_TEMPLATE_STYLE_MATCH_foj3FJo5StF0OvIzl7oMxA__declspec
- #undef PROTOBUF_EXPORT_TEMPLATE_STYLE_MATCH_DECLSPEC_dllexport
- #undef PROTOBUF_EXPORT_TEMPLATE_STYLE_MATCH_DECLSPEC_dllimport
-+#undef PROTOBUF_ALIGNAS
- 
- 
- 
diff --git a/srcpkgs/electron7/files/patches/chromium-78-gcc-enum-range.patch b/srcpkgs/electron7/files/patches/chromium-78-gcc-enum-range.patch
deleted file mode 100644
index 9c15e954b4ea..000000000000
--- a/srcpkgs/electron7/files/patches/chromium-78-gcc-enum-range.patch
+++ /dev/null
@@ -1,46 +0,0 @@
-From 9662ec844017690d5fd56bf0f05ef6a540dd29c1 Mon Sep 17 00:00:00 2001
-From: Tom Anderson <thomasanderson@chromium.org>
-Date: Mon, 09 Sep 2019 19:06:01 +0000
-Subject: [PATCH] Fix GCC build error
-
-Fixes this error:
-[  375s] In file included from ../../base/task/common/intrusive_heap.h:8,
-[  375s]                  from ../../base/task/thread_pool/task_source.h:17,
-[  375s]                  from ../../base/task/thread_pool/task_tracker.h:27,
-[  375s]                  from ./../../base/task/thread_pool/service_thread.cc:14,
-[  375s]                  from gen/base/base_jumbo_28.cc:5:
-[  375s] ../../base/containers/intrusive_heap.h:152:36: error: enumerator value
-         '-1' is outside the range of underlying type 'size_t' {aka 'long unsigned int'}
-[  375s]   152 |   enum : size_t { kInvalidIndex = -1 };
-[  375s]       |
-
-Change-Id: I6044fb704931b2f8416f6b19a247ae297cd7b0d6
-Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1792763
-Commit-Queue: Thomas Anderson <thomasanderson@chromium.org>
-Commit-Queue: Lei Zhang <thestig@chromium.org>
-Reviewed-by: Lei Zhang <thestig@chromium.org>
-Auto-Submit: Thomas Anderson <thomasanderson@chromium.org>
-Cr-Commit-Position: refs/heads/master@{#694853}
----
-
-diff --git a/base/containers/intrusive_heap.h b/base/containers/intrusive_heap.h
-index 53d3909..d7626bb 100644
---- a/base/containers/intrusive_heap.h
-+++ b/base/containers/intrusive_heap.h
-@@ -131,6 +131,7 @@
- 
- #include <algorithm>
- #include <functional>
-+#include <limits>
- #include <type_traits>
- #include <utility>
- #include <vector>
-@@ -149,7 +150,7 @@
- // in place.
- class BASE_EXPORT HeapHandle {
-  public:
--  enum : size_t { kInvalidIndex = -1 };
-+  enum : size_t { kInvalidIndex = std::numeric_limits<size_t>::max() };
- 
-   constexpr HeapHandle() = default;
-   constexpr HeapHandle(const HeapHandle& other) = default;
diff --git a/srcpkgs/electron7/files/patches/chromium-78-gcc-noexcept.patch b/srcpkgs/electron7/files/patches/chromium-78-gcc-noexcept.patch
deleted file mode 100644
index 8ddb53fe82d2..000000000000
--- a/srcpkgs/electron7/files/patches/chromium-78-gcc-noexcept.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From d16cda8fc3476cc534a756873cc8aa2692a57054 Mon Sep 17 00:00:00 2001
-From: Jose Dapena Paz <jose.dapena@lge.com>
-Date: Thu, 22 Aug 2019 13:13:36 +0200
-Subject: [PATCH] GCC: declare noexcept move constructor/assign operators of V8StackTraceId
-
-blink::BlinkCloneableMessage declares default implementation of
-move operator/assign operator that requires v8_inspector::V8StackTraceId
-to declare its move constructor/assign operator too.
-
-Bug: chromium:819294
-Change-Id: Iaf626ee8245efcba372a17cdf2de448e691d41d6
-Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1796062
-Commit-Queue: José Dapena Paz <jose.dapena@lge.com>
-Reviewed-by: Yang Guo <yangguo@chromium.org>
-Cr-Commit-Position: refs/heads/master@{#63799}
----
-
-diff --git a/v8/include/v8-inspector.h b/v8/include/v8-inspector.h
-index ce5b777..ed4cdec 100644
---- a/v8/include/v8-inspector.h
-+++ b/v8/include/v8-inspector.h
-@@ -231,7 +231,10 @@ struct V8_EXPORT V8StackTraceId {
-   std::pair<int64_t, int64_t> debugger_id;
- 
-   V8StackTraceId();
-+  V8StackTraceId(const V8StackTraceId&) = default;
-   V8StackTraceId(uintptr_t id, const std::pair<int64_t, int64_t> debugger_id);
-+  V8StackTraceId& operator=(const V8StackTraceId&) = default;
-+  V8StackTraceId& operator=(V8StackTraceId&&) noexcept = default;
-   ~V8StackTraceId() = default;
- 
-   bool IsInvalid() const;
diff --git a/srcpkgs/electron7/files/patches/chromium-78-icon.patch b/srcpkgs/electron7/files/patches/chromium-78-icon.patch
deleted file mode 100644
index 2cca7f10d19c..000000000000
--- a/srcpkgs/electron7/files/patches/chromium-78-icon.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/ui/platform_window/x11/x11_window.cc b/ui/platform_window/x11/x11_window.cc
-index 7a3a6eb..7c01534 100644
---- a/ui/platform_window/x11/x11_window.cc
-+++ b/ui/platform_window/x11/x11_window.cc
-@@ -67,6 +67,7 @@ ui::XWindow::Configuration ConvertInitPropertiesToXWindowConfig(
-   config.wm_role_name = properties.wm_role_name;
-   config.activatable = properties.activatable;
-   config.visual_id = properties.x_visual_id;
-+  config.icon = properties.icon;
-   return config;
- }
- 
diff --git a/srcpkgs/electron7/files/patches/chromium-78-include.patch b/srcpkgs/electron7/files/patches/chromium-78-include.patch
deleted file mode 100644
index 3db38eac1c96..000000000000
--- a/srcpkgs/electron7/files/patches/chromium-78-include.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-From bbfe2665923225b4a7c436ba2b6c7e5f695f2e52 Mon Sep 17 00:00:00 2001
-From: David Landell <landell@vewd.com>
-Date: Fri, 13 Sep 2019 12:24:13 +0000
-Subject: [PATCH] Add missing include for unique_ptr
-
-Change-Id: I614d2f42868d563eb6a92dfb2aae08286e20d687
-Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1803137
-Reviewed-by: Henrik Boström <hbos@chromium.org>
-Commit-Queue: Henrik Boström <hbos@chromium.org>
-Cr-Commit-Position: refs/heads/master@{#696355}
----
-
-diff --git a/third_party/blink/public/platform/web_rtc_rtp_source.h b/third_party/blink/public/platform/web_rtc_rtp_source.h
-index 959440f..c3fd542 100644
---- a/third_party/blink/public/platform/web_rtc_rtp_source.h
-+++ b/third_party/blink/public/platform/web_rtc_rtp_source.h
-@@ -5,6 +5,8 @@
- #ifndef THIRD_PARTY_BLINK_PUBLIC_PLATFORM_WEB_RTC_RTP_SOURCE_H_
- #define THIRD_PARTY_BLINK_PUBLIC_PLATFORM_WEB_RTC_RTP_SOURCE_H_
- 
-+#include <memory>
-+
- #include "base/optional.h"
- #include "third_party/blink/public/platform/web_common.h"
- 
-Missing include due to reverting ProfileManagerObserver
----
-
-diff --git a/chrome/browser/web_applications/extensions/bookmark_app_util.cc b/chrome/browser/web_applications/extensions/bookmark_app_util.cc
-index ee4b70a..b31e5f5 100644
---- a/chrome/browser/web_applications/extensions/bookmark_app_util.cc
-+++ b/chrome/browser/web_applications/extensions/bookmark_app_util.cc
-@@ -7,6 +7,7 @@
- #include "base/strings/string_piece.h"
- #include "base/values.h"
- #include "chrome/browser/extensions/extension_service.h"
-+#include "chrome/browser/profiles/profile.h"
- #include "chrome/browser/web_applications/components/app_registrar.h"
- #include "chrome/browser/web_applications/components/web_app_provider_base.h"
- #include "chrome/common/chrome_features.h"
diff --git a/srcpkgs/electron7/files/patches/chromium-78-pm-crash.patch b/srcpkgs/electron7/files/patches/chromium-78-pm-crash.patch
deleted file mode 100644
index ada266120dc4..000000000000
--- a/srcpkgs/electron7/files/patches/chromium-78-pm-crash.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-From e73aed9a5ef15102f29ac31b70290faf5c90f9fe Mon Sep 17 00:00:00 2001
-From: Evan Stade <estade@chromium.org>
-Date: Wed, 16 Oct 2019 16:01:32 +0000
-Subject: [PATCH] Fix shutdown crash in ProfileManager.
-
-OnProfileMarkedForPermanentDeletion should move from
-ProfileManagerObserver to ProfileObserver, which would also
-fix this bug. However, changing the order of members is the
-quickest and most cherry-pick-able way to avoid the crash.
-
-Bug: 1005244
-Change-Id: If2db68c846dd418cd02864b57b9b543687fa1e03
-Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1863518
-Auto-Submit: Evan Stade <estade@chromium.org>
-Reviewed-by: David Roger <droger@chromium.org>
-Commit-Queue: Evan Stade <estade@chromium.org>
-Cr-Commit-Position: refs/heads/master@{#706467}
----
-
-diff --git a/chrome/browser/profiles/profile_manager.h b/chrome/browser/profiles/profile_manager.h
-index b60df76d..7d02af7 100644
---- a/chrome/browser/profiles/profile_manager.h
-+++ b/chrome/browser/profiles/profile_manager.h
-@@ -409,6 +409,10 @@ class ProfileManager : public content::NotificationObserver,
-       const base::FilePath& profile_dir);
- #endif  // !defined(OS_ANDROID)
- 
-+  // Destroy after |profile_info_cache_| since Profile destruction may trigger
-+  // some observers to unregister themselves.
-+  base::ObserverList<ProfileManagerObserver> observers_;
-+
-   // Object to cache various information about profiles. Contains information
-   // about every profile which has been created for this instance of Chrome,
-   // if it has not been explicitly deleted. It must be destroyed after
-@@ -450,8 +454,6 @@ class ProfileManager : public content::NotificationObserver,
-   // Controls whether to initialize some services. Only disabled for testing.
-   bool do_final_services_init_ = true;
- 
--  base::ObserverList<ProfileManagerObserver> observers_;
--
-   // TODO(chrome/browser/profiles/OWNERS): Usage of this in profile_manager.cc
-   // should likely be turned into DCHECK_CURRENTLY_ON(BrowserThread::UI) for
-   // consistency with surrounding code in the same file but that wasn't trivial
diff --git a/srcpkgs/electron7/files/patches/chromium-78-protobuf-export.patch b/srcpkgs/electron7/files/patches/chromium-78-protobuf-export.patch
deleted file mode 100644
index ddb9e80eefe4..000000000000
--- a/srcpkgs/electron7/files/patches/chromium-78-protobuf-export.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/third_party/protobuf/src/google/protobuf/repeated_field.h b/third_party/protobuf/src/google/protobuf/repeated_field.h
-index b5b193c..4434854 100644
---- a/third_party/protobuf/src/google/protobuf/repeated_field.h
-+++ b/third_party/protobuf/src/google/protobuf/repeated_field.h
-@@ -804,7 +804,7 @@ class StringTypeHandler {
- // RepeatedPtrField is like RepeatedField, but used for repeated strings or
- // Messages.
- template <typename Element>
--class RepeatedPtrField final : private internal::RepeatedPtrFieldBase {
-+class PROTOBUF_EXPORT RepeatedPtrField final : private internal::RepeatedPtrFieldBase {
-  public:
-   RepeatedPtrField();
-   explicit RepeatedPtrField(Arena* arena);
diff --git a/srcpkgs/electron7/files/patches/chromium-78-revert-noexcept-r1.patch b/srcpkgs/electron7/files/patches/chromium-78-revert-noexcept-r1.patch
deleted file mode 100644
index 408d618b5419..000000000000
--- a/srcpkgs/electron7/files/patches/chromium-78-revert-noexcept-r1.patch
+++ /dev/null
@@ -1,1471 +0,0 @@
-From 37a95dd93e553888c00cf9443a5ec738ce658e65 Mon Sep 17 00:00:00 2001
-From: Zinovy Nis <zynis@yandex-team.ru>
-Date: Mon, 16 Sep 2019 13:08:17 +0000
-Subject: [PATCH] Revert "[clang-tidy] add noexcept for move ctors and operator= in blink"
-
-This reverts commit 8f3eea10fe63a64ac67dc21542ebee6b896156a3.
-
-Reason for revert: code bloating
-
-Original change's description:
-> [clang-tidy] add noexcept for move ctors and operator= in blink
->
-> Bug: 994915
-> Change-Id: I2e1bcf286a2d2fa6613e18b5268098a0d258fb2e
-> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1759163
-> Commit-Queue: Zinovy Nis <zynis@yandex-team.ru>
-> Reviewed-by: Jeremy Roman <jbroman@chromium.org>
-> Reviewed-by: Mike West <mkwst@chromium.org>
-> Cr-Commit-Position: refs/heads/master@{#688676}
-
-TBR=jbroman@chromium.org,foolip@chromium.org,mkwst@chromium.org,zynis@yandex-team.ru
-
-# Not skipping CQ checks because original CL landed > 1 day ago.
-
-Bug: 994915
-Change-Id: I12b3ecc1186e27809082dc399c6d6864109ce307
----
-
-diff --git a/third_party/blink/common/indexeddb/indexeddb_key_path.cc b/third_party/blink/common/indexeddb/indexeddb_key_path.cc
-index ec2b618..552d541 100644
---- a/third_party/blink/common/indexeddb/indexeddb_key_path.cc
-+++ b/third_party/blink/common/indexeddb/indexeddb_key_path.cc
-@@ -18,12 +18,12 @@
-     : type_(mojom::IDBKeyPathType::Array), array_(array) {}
- 
- IndexedDBKeyPath::IndexedDBKeyPath(const IndexedDBKeyPath& other) = default;
--IndexedDBKeyPath::IndexedDBKeyPath(IndexedDBKeyPath&& other) noexcept = default;
-+IndexedDBKeyPath::IndexedDBKeyPath(IndexedDBKeyPath&& other) = default;
- IndexedDBKeyPath::~IndexedDBKeyPath() = default;
- IndexedDBKeyPath& IndexedDBKeyPath::operator=(const IndexedDBKeyPath& other) =
-     default;
--IndexedDBKeyPath& IndexedDBKeyPath::operator=(
--    IndexedDBKeyPath&& other) noexcept = default;
-+IndexedDBKeyPath& IndexedDBKeyPath::operator=(IndexedDBKeyPath&& other) =
-+    default;
- 
- const std::vector<base::string16>& IndexedDBKeyPath::array() const {
-   DCHECK(type_ == blink::mojom::IDBKeyPathType::Array);
-diff --git a/third_party/blink/common/indexeddb/indexeddb_metadata.cc b/third_party/blink/common/indexeddb/indexeddb_metadata.cc
-index 50d5845..9349732 100644
---- a/third_party/blink/common/indexeddb/indexeddb_metadata.cc
-+++ b/third_party/blink/common/indexeddb/indexeddb_metadata.cc
-@@ -23,15 +23,15 @@
- 
- IndexedDBIndexMetadata::IndexedDBIndexMetadata(
-     const IndexedDBIndexMetadata& other) = default;
--IndexedDBIndexMetadata::IndexedDBIndexMetadata(
--    IndexedDBIndexMetadata&& other) noexcept = default;
-+IndexedDBIndexMetadata::IndexedDBIndexMetadata(IndexedDBIndexMetadata&& other) =
-+    default;
- 
- IndexedDBIndexMetadata::~IndexedDBIndexMetadata() = default;
- 
- IndexedDBIndexMetadata& IndexedDBIndexMetadata::operator=(
-     const IndexedDBIndexMetadata& other) = default;
- IndexedDBIndexMetadata& IndexedDBIndexMetadata::operator=(
--    IndexedDBIndexMetadata&& other) noexcept = default;
-+    IndexedDBIndexMetadata&& other) = default;
- 
- bool IndexedDBIndexMetadata::operator==(
-     const IndexedDBIndexMetadata& other) const {
-@@ -56,14 +56,14 @@
- IndexedDBObjectStoreMetadata::IndexedDBObjectStoreMetadata(
-     const IndexedDBObjectStoreMetadata& other) = default;
- IndexedDBObjectStoreMetadata::IndexedDBObjectStoreMetadata(
--    IndexedDBObjectStoreMetadata&& other) noexcept = default;
-+    IndexedDBObjectStoreMetadata&& other) = default;
- 
- IndexedDBObjectStoreMetadata::~IndexedDBObjectStoreMetadata() = default;
- 
- IndexedDBObjectStoreMetadata& IndexedDBObjectStoreMetadata::operator=(
-     const IndexedDBObjectStoreMetadata& other) = default;
- IndexedDBObjectStoreMetadata& IndexedDBObjectStoreMetadata::operator=(
--    IndexedDBObjectStoreMetadata&& other) noexcept = default;
-+    IndexedDBObjectStoreMetadata&& other) = default;
- 
- bool IndexedDBObjectStoreMetadata::operator==(
-     const IndexedDBObjectStoreMetadata& other) const {
-@@ -87,14 +87,14 @@
- IndexedDBDatabaseMetadata::IndexedDBDatabaseMetadata(
-     const IndexedDBDatabaseMetadata& other) = default;
- IndexedDBDatabaseMetadata::IndexedDBDatabaseMetadata(
--    IndexedDBDatabaseMetadata&& other) noexcept = default;
-+    IndexedDBDatabaseMetadata&& other) = default;
- 
- IndexedDBDatabaseMetadata::~IndexedDBDatabaseMetadata() = default;
- 
- IndexedDBDatabaseMetadata& IndexedDBDatabaseMetadata::operator=(
-     const IndexedDBDatabaseMetadata& other) = default;
- IndexedDBDatabaseMetadata& IndexedDBDatabaseMetadata::operator=(
--    IndexedDBDatabaseMetadata&& other) noexcept = default;
-+    IndexedDBDatabaseMetadata&& other) = default;
- 
- bool IndexedDBDatabaseMetadata::operator==(
-     const IndexedDBDatabaseMetadata& other) const {
-diff --git a/third_party/blink/common/mediastream/media_devices.cc b/third_party/blink/common/mediastream/media_devices.cc
-index 93df201..3661b4b 100644
---- a/third_party/blink/common/mediastream/media_devices.cc
-+++ b/third_party/blink/common/mediastream/media_devices.cc
-@@ -13,8 +13,7 @@
- WebMediaDeviceInfo::WebMediaDeviceInfo(const WebMediaDeviceInfo& other) =
-     default;
- 
--WebMediaDeviceInfo::WebMediaDeviceInfo(WebMediaDeviceInfo&& other) noexcept =
--    default;
-+WebMediaDeviceInfo::WebMediaDeviceInfo(WebMediaDeviceInfo&& other) = default;
- 
- WebMediaDeviceInfo::WebMediaDeviceInfo(const std::string& device_id,
-                                        const std::string& label,
-@@ -36,8 +35,8 @@
- WebMediaDeviceInfo& WebMediaDeviceInfo::operator=(
-     const WebMediaDeviceInfo& other) = default;
- 
--WebMediaDeviceInfo& WebMediaDeviceInfo::operator=(
--    WebMediaDeviceInfo&& other) noexcept = default;
-+WebMediaDeviceInfo& WebMediaDeviceInfo::operator=(WebMediaDeviceInfo&& other) =
-+    default;
- 
- bool operator==(const WebMediaDeviceInfo& first,
-                 const WebMediaDeviceInfo& second) {
-diff --git a/third_party/blink/common/messaging/cloneable_message.cc b/third_party/blink/common/messaging/cloneable_message.cc
-index 2984fd1..5c3ee7e 100644
---- a/third_party/blink/common/messaging/cloneable_message.cc
-+++ b/third_party/blink/common/messaging/cloneable_message.cc
-@@ -12,9 +12,8 @@
- namespace blink {
- 
- CloneableMessage::CloneableMessage() = default;
--CloneableMessage::CloneableMessage(CloneableMessage&&) noexcept = default;
--CloneableMessage& CloneableMessage::operator=(CloneableMessage&&) noexcept =
--    default;
-+CloneableMessage::CloneableMessage(CloneableMessage&&) = default;
-+CloneableMessage& CloneableMessage::operator=(CloneableMessage&&) = default;
- CloneableMessage::~CloneableMessage() = default;
- 
- CloneableMessage CloneableMessage::ShallowClone() const {
-diff --git a/third_party/blink/common/messaging/transferable_message.cc b/third_party/blink/common/messaging/transferable_message.cc
-index 07ac9bb..4a69d0a 100644
---- a/third_party/blink/common/messaging/transferable_message.cc
-+++ b/third_party/blink/common/messaging/transferable_message.cc
-@@ -9,10 +9,9 @@
- namespace blink {
- 
- TransferableMessage::TransferableMessage() = default;
--TransferableMessage::TransferableMessage(TransferableMessage&&) noexcept =
-+TransferableMessage::TransferableMessage(TransferableMessage&&) = default;
-+TransferableMessage& TransferableMessage::operator=(TransferableMessage&&) =
-     default;
--TransferableMessage& TransferableMessage::operator=(
--    TransferableMessage&&) noexcept = default;
- TransferableMessage::~TransferableMessage() = default;
- 
- }  // namespace blink
-diff --git a/third_party/blink/public/common/indexeddb/indexeddb_key_path.h b/third_party/blink/public/common/indexeddb/indexeddb_key_path.h
-index 8ebe10c..9f5422c 100644
---- a/third_party/blink/public/common/indexeddb/indexeddb_key_path.h
-+++ b/third_party/blink/public/common/indexeddb/indexeddb_key_path.h
-@@ -22,10 +22,10 @@
-   explicit IndexedDBKeyPath(const base::string16&);
-   explicit IndexedDBKeyPath(const std::vector<base::string16>&);
-   IndexedDBKeyPath(const IndexedDBKeyPath& other);
--  IndexedDBKeyPath(IndexedDBKeyPath&& other) noexcept;
-+  IndexedDBKeyPath(IndexedDBKeyPath&& other);
-   ~IndexedDBKeyPath();
-   IndexedDBKeyPath& operator=(const IndexedDBKeyPath& other);
--  IndexedDBKeyPath& operator=(IndexedDBKeyPath&& other) noexcept;
-+  IndexedDBKeyPath& operator=(IndexedDBKeyPath&& other);
- 
-   bool IsNull() const { return type_ == blink::mojom::IDBKeyPathType::Null; }
-   bool operator==(const IndexedDBKeyPath& other) const;
-diff --git a/third_party/blink/public/common/indexeddb/indexeddb_metadata.h b/third_party/blink/public/common/indexeddb/indexeddb_metadata.h
-index 15663f6..7bb37c9 100644
---- a/third_party/blink/public/common/indexeddb/indexeddb_metadata.h
-+++ b/third_party/blink/public/common/indexeddb/indexeddb_metadata.h
-@@ -26,10 +26,10 @@
-                          bool unique,
-                          bool multi_entry);
-   IndexedDBIndexMetadata(const IndexedDBIndexMetadata& other);
--  IndexedDBIndexMetadata(IndexedDBIndexMetadata&& other) noexcept;
-+  IndexedDBIndexMetadata(IndexedDBIndexMetadata&& other);
-   ~IndexedDBIndexMetadata();
-   IndexedDBIndexMetadata& operator=(const IndexedDBIndexMetadata& other);
--  IndexedDBIndexMetadata& operator=(IndexedDBIndexMetadata&& other) noexcept;
-+  IndexedDBIndexMetadata& operator=(IndexedDBIndexMetadata&& other);
-   bool operator==(const IndexedDBIndexMetadata& other) const;
- 
-   base::string16 name;
-@@ -50,12 +50,11 @@
-                                bool auto_increment,
-                                int64_t max_index_id);
-   IndexedDBObjectStoreMetadata(const IndexedDBObjectStoreMetadata& other);
--  IndexedDBObjectStoreMetadata(IndexedDBObjectStoreMetadata&& other) noexcept;
-+  IndexedDBObjectStoreMetadata(IndexedDBObjectStoreMetadata&& other);
-   ~IndexedDBObjectStoreMetadata();
-   IndexedDBObjectStoreMetadata& operator=(
-       const IndexedDBObjectStoreMetadata& other);
--  IndexedDBObjectStoreMetadata& operator=(
--      IndexedDBObjectStoreMetadata&& other) noexcept;
-+  IndexedDBObjectStoreMetadata& operator=(IndexedDBObjectStoreMetadata&& other);
-   bool operator==(const IndexedDBObjectStoreMetadata& other) const;
- 
-   base::string16 name;
-@@ -77,11 +76,10 @@
-                             int64_t version,
-                             int64_t max_object_store_id);
-   IndexedDBDatabaseMetadata(const IndexedDBDatabaseMetadata& other);
--  IndexedDBDatabaseMetadata(IndexedDBDatabaseMetadata&& other) noexcept;
-+  IndexedDBDatabaseMetadata(IndexedDBDatabaseMetadata&& other);
-   ~IndexedDBDatabaseMetadata();
-   IndexedDBDatabaseMetadata& operator=(const IndexedDBDatabaseMetadata& other);
--  IndexedDBDatabaseMetadata& operator=(
--      IndexedDBDatabaseMetadata&& other) noexcept;
-+  IndexedDBDatabaseMetadata& operator=(IndexedDBDatabaseMetadata&& other);
-   bool operator==(const IndexedDBDatabaseMetadata& other) const;
- 
-   base::string16 name;
-diff --git a/third_party/blink/public/common/mediastream/media_devices.h b/third_party/blink/public/common/mediastream/media_devices.h
-index 0d63e575..d87affe 100644
---- a/third_party/blink/public/common/mediastream/media_devices.h
-+++ b/third_party/blink/public/common/mediastream/media_devices.h
-@@ -27,7 +27,7 @@
- struct BLINK_COMMON_EXPORT WebMediaDeviceInfo {
-   WebMediaDeviceInfo();
-   WebMediaDeviceInfo(const WebMediaDeviceInfo& other);
--  WebMediaDeviceInfo(WebMediaDeviceInfo&& other) noexcept;
-+  WebMediaDeviceInfo(WebMediaDeviceInfo&& other);
-   WebMediaDeviceInfo(
-       const std::string& device_id,
-       const std::string& label,
-@@ -37,7 +37,7 @@
-       const media::VideoCaptureDeviceDescriptor& descriptor);
-   ~WebMediaDeviceInfo();
-   WebMediaDeviceInfo& operator=(const WebMediaDeviceInfo& other);
--  WebMediaDeviceInfo& operator=(WebMediaDeviceInfo&& other) noexcept;
-+  WebMediaDeviceInfo& operator=(WebMediaDeviceInfo&& other);
- 
-   std::string device_id;
-   std::string label;
-diff --git a/third_party/blink/public/common/messaging/cloneable_message.h b/third_party/blink/public/common/messaging/cloneable_message.h
-index de9952d..8dbd910 100644
---- a/third_party/blink/public/common/messaging/cloneable_message.h
-+++ b/third_party/blink/public/common/messaging/cloneable_message.h
-@@ -21,8 +21,8 @@
- // This type can be serialized as a blink::mojom::CloneableMessage struct.
- struct BLINK_COMMON_EXPORT CloneableMessage {
-   CloneableMessage();
--  CloneableMessage(CloneableMessage&&) noexcept;
--  CloneableMessage& operator=(CloneableMessage&&) noexcept;
-+  CloneableMessage(CloneableMessage&&);
-+  CloneableMessage& operator=(CloneableMessage&&);
-   ~CloneableMessage();
- 
-   // Returns a shallow clone of this message. |encoded_message| in the clone
-diff --git a/third_party/blink/public/common/messaging/transferable_message.h b/third_party/blink/public/common/messaging/transferable_message.h
-index 5eef63c..2d87363 100644
---- a/third_party/blink/public/common/messaging/transferable_message.h
-+++ b/third_party/blink/public/common/messaging/transferable_message.h
-@@ -22,8 +22,8 @@
- // type can be serialized as a blink::mojom::TransferableMessage struct.
- struct BLINK_COMMON_EXPORT TransferableMessage : public CloneableMessage {
-   TransferableMessage();
--  TransferableMessage(TransferableMessage&&) noexcept;
--  TransferableMessage& operator=(TransferableMessage&&) noexcept;
-+  TransferableMessage(TransferableMessage&&);
-+  TransferableMessage& operator=(TransferableMessage&&);
-   ~TransferableMessage();
- 
-   // Any ports being transferred as part of this message.
-diff --git a/third_party/blink/public/platform/scheduler/web_scoped_virtual_time_pauser.h b/third_party/blink/public/platform/scheduler/web_scoped_virtual_time_pauser.h
-index 75f3ae16..81edd69 100644
---- a/third_party/blink/public/platform/scheduler/web_scoped_virtual_time_pauser.h
-+++ b/third_party/blink/public/platform/scheduler/web_scoped_virtual_time_pauser.h
-@@ -42,9 +42,8 @@
-   WebScopedVirtualTimePauser();
-   ~WebScopedVirtualTimePauser();
- 
--  WebScopedVirtualTimePauser(WebScopedVirtualTimePauser&& other) noexcept;
--  WebScopedVirtualTimePauser& operator=(
--      WebScopedVirtualTimePauser&& other) noexcept;
-+  WebScopedVirtualTimePauser(WebScopedVirtualTimePauser&& other);
-+  WebScopedVirtualTimePauser& operator=(WebScopedVirtualTimePauser&& other);
- 
-   WebScopedVirtualTimePauser(const WebScopedVirtualTimePauser&) = delete;
-   WebScopedVirtualTimePauser& operator=(const WebScopedVirtualTimePauser&) =
-diff --git a/third_party/blink/public/platform/web_string.h b/third_party/blink/public/platform/web_string.h
-index e4fda4f..ffd1da0 100644
---- a/third_party/blink/public/platform/web_string.h
-+++ b/third_party/blink/public/platform/web_string.h
-@@ -102,10 +102,10 @@
-   BLINK_PLATFORM_EXPORT WebString(const WebUChar* data, size_t len);
- 
-   BLINK_PLATFORM_EXPORT WebString(const WebString&);
--  BLINK_PLATFORM_EXPORT WebString(WebString&&) noexcept;
-+  BLINK_PLATFORM_EXPORT WebString(WebString&&);
- 
-   BLINK_PLATFORM_EXPORT WebString& operator=(const WebString&);
--  BLINK_PLATFORM_EXPORT WebString& operator=(WebString&&) noexcept;
-+  BLINK_PLATFORM_EXPORT WebString& operator=(WebString&&);
- 
-   BLINK_PLATFORM_EXPORT void Reset();
- 
-diff --git a/third_party/blink/public/web/modules/mediastream/media_stream_constraints_util.h b/third_party/blink/public/web/modules/mediastream/media_stream_constraints_util.h
-index 99f47f5..8451b86 100644
---- a/third_party/blink/public/web/modules/mediastream/media_stream_constraints_util.h
-+++ b/third_party/blink/public/web/modules/mediastream/media_stream_constraints_util.h
-@@ -73,8 +73,8 @@
- 
-   VideoCaptureSettings(const VideoCaptureSettings& other);
-   VideoCaptureSettings& operator=(const VideoCaptureSettings& other);
--  VideoCaptureSettings(VideoCaptureSettings&& other) noexcept;
--  VideoCaptureSettings& operator=(VideoCaptureSettings&& other) noexcept;
-+  VideoCaptureSettings(VideoCaptureSettings&& other);
-+  VideoCaptureSettings& operator=(VideoCaptureSettings&& other);
-   ~VideoCaptureSettings();
- 
-   bool HasValue() const { return !failed_constraint_name_; }
-@@ -193,8 +193,8 @@
-       const AudioProcessingProperties& audio_processing_properties);
-   AudioCaptureSettings(const AudioCaptureSettings& other);
-   AudioCaptureSettings& operator=(const AudioCaptureSettings& other);
--  AudioCaptureSettings(AudioCaptureSettings&& other) noexcept;
--  AudioCaptureSettings& operator=(AudioCaptureSettings&& other) noexcept;
-+  AudioCaptureSettings(AudioCaptureSettings&& other);
-+  AudioCaptureSettings& operator=(AudioCaptureSettings&& other);
- 
-   bool HasValue() const { return !failed_constraint_name_; }
- 
-diff --git a/third_party/blink/public/web/modules/mediastream/media_stream_constraints_util_sets.h b/third_party/blink/public/web/modules/mediastream/media_stream_constraints_util_sets.h
-index 199bdeb..c89e6e9 100644
---- a/third_party/blink/public/web/modules/mediastream/media_stream_constraints_util_sets.h
-+++ b/third_party/blink/public/web/modules/mediastream/media_stream_constraints_util_sets.h
-@@ -159,8 +159,8 @@
- 
-   DiscreteSet(const DiscreteSet& other) = default;
-   DiscreteSet& operator=(const DiscreteSet& other) = default;
--  DiscreteSet(DiscreteSet&& other) noexcept = default;
--  DiscreteSet& operator=(DiscreteSet&& other) noexcept = default;
-+  DiscreteSet(DiscreteSet&& other) = default;
-+  DiscreteSet& operator=(DiscreteSet&& other) = default;
-   ~DiscreteSet() = default;
- 
-   bool Contains(const T& value) const {
-diff --git a/third_party/blink/public/web/modules/mediastream/media_stream_video_source.h b/third_party/blink/public/web/modules/mediastream/media_stream_video_source.h
-index 5e50d1b..ed5967f 100644
---- a/third_party/blink/public/web/modules/mediastream/media_stream_video_source.h
-+++ b/third_party/blink/public/web/modules/mediastream/media_stream_video_source.h
-@@ -285,8 +285,8 @@
-         const VideoTrackFormatCallback& format_callback,
-         std::unique_ptr<VideoTrackAdapterSettings> adapter_settings,
-         const ConstraintsCallback& callback);
--    PendingTrackInfo(PendingTrackInfo&& other) noexcept;
--    PendingTrackInfo& operator=(PendingTrackInfo&& other) noexcept;
-+    PendingTrackInfo(PendingTrackInfo&& other);
-+    PendingTrackInfo& operator=(PendingTrackInfo&& other);
-     ~PendingTrackInfo();
- 
-     MediaStreamVideoTrack* track;
-diff --git a/third_party/blink/renderer/core/animation/interpolation_value.h b/third_party/blink/renderer/core/animation/interpolation_value.h
-index 75c5d35..17ccf02 100644
---- a/third_party/blink/renderer/core/animation/interpolation_value.h
-+++ b/third_party/blink/renderer/core/animation/interpolation_value.h
-@@ -27,11 +27,11 @@
- 
-   InterpolationValue(std::nullptr_t) {}
- 
--  InterpolationValue(InterpolationValue&& other) noexcept
-+  InterpolationValue(InterpolationValue&& other)
-       : interpolable_value(std::move(other.interpolable_value)),
-         non_interpolable_value(std::move(other.non_interpolable_value)) {}
- 
--  void operator=(InterpolationValue&& other) noexcept {
-+  void operator=(InterpolationValue&& other) {
-     interpolable_value = std::move(other.interpolable_value);
-     non_interpolable_value = std::move(other.non_interpolable_value);
-   }
-diff --git a/third_party/blink/renderer/core/animation/pairwise_interpolation_value.h b/third_party/blink/renderer/core/animation/pairwise_interpolation_value.h
-index 39e6c57..87bb431 100644
---- a/third_party/blink/renderer/core/animation/pairwise_interpolation_value.h
-+++ b/third_party/blink/renderer/core/animation/pairwise_interpolation_value.h
-@@ -28,7 +28,7 @@
- 
-   PairwiseInterpolationValue(std::nullptr_t) {}
- 
--  PairwiseInterpolationValue(PairwiseInterpolationValue&& other) noexcept
-+  PairwiseInterpolationValue(PairwiseInterpolationValue&& other)
-       : start_interpolable_value(std::move(other.start_interpolable_value)),
-         end_interpolable_value(std::move(other.end_interpolable_value)),
-         non_interpolable_value(std::move(other.non_interpolable_value)) {}
-diff --git a/third_party/blink/renderer/core/css/css_selector_list.h b/third_party/blink/renderer/core/css/css_selector_list.h
-index 4d38b09..51f354b 100644
---- a/third_party/blink/renderer/core/css/css_selector_list.h
-+++ b/third_party/blink/renderer/core/css/css_selector_list.h
-@@ -67,8 +67,7 @@
-  public:
-   CSSSelectorList() : selector_array_(nullptr) {}
- 
--  CSSSelectorList(CSSSelectorList&& o) noexcept
--      : selector_array_(o.selector_array_) {
-+  CSSSelectorList(CSSSelectorList&& o) : selector_array_(o.selector_array_) {
-     o.selector_array_ = nullptr;
-   }
- 
-@@ -82,7 +81,7 @@
-   bool HasPseudoWhere() const;
-   bool RequiresExpansion() const;
- 
--  CSSSelectorList& operator=(CSSSelectorList&& o) noexcept {
-+  CSSSelectorList& operator=(CSSSelectorList&& o) {
-     DCHECK(this != &o);
-     DeleteSelectorsIfNeeded();
-     selector_array_ = o.selector_array_;
-diff --git a/third_party/blink/renderer/core/display_lock/display_lock_context.cc b/third_party/blink/renderer/core/display_lock/display_lock_context.cc
-index 0e6b6cb..79f281a 100644
---- a/third_party/blink/renderer/core/display_lock/display_lock_context.cc
-+++ b/third_party/blink/renderer/core/display_lock/display_lock_context.cc
-@@ -1033,7 +1033,7 @@
-     : context_(context) {}
- 
- DisplayLockContext::ScopedForcedUpdate::ScopedForcedUpdate(
--    ScopedForcedUpdate&& other) noexcept
-+    ScopedForcedUpdate&& other)
-     : context_(other.context_) {
-   other.context_ = nullptr;
- }
-diff --git a/third_party/blink/renderer/core/display_lock/display_lock_context.h b/third_party/blink/renderer/core/display_lock/display_lock_context.h
-index 1a38b2af..f890b432 100644
---- a/third_party/blink/renderer/core/display_lock/display_lock_context.h
-+++ b/third_party/blink/renderer/core/display_lock/display_lock_context.h
-@@ -76,7 +76,7 @@
-     DISALLOW_NEW();
- 
-    public:
--    ScopedForcedUpdate(ScopedForcedUpdate&&) noexcept;
-+    ScopedForcedUpdate(ScopedForcedUpdate&&);
-     ~ScopedForcedUpdate();
- 
-    private:
-diff --git a/third_party/blink/renderer/core/editing/layout_selection.cc b/third_party/blink/renderer/core/editing/layout_selection.cc
-index 00040d2..73cfe0f 100644
---- a/third_party/blink/renderer/core/editing/layout_selection.cc
-+++ b/third_party/blink/renderer/core/editing/layout_selection.cc
-@@ -178,7 +178,7 @@
-  public:
-   OldSelectedNodes()
-       : paint_range(MakeGarbageCollected<SelectionPaintRange>()) {}
--  OldSelectedNodes(OldSelectedNodes&& other) noexcept {
-+  OldSelectedNodes(OldSelectedNodes&& other) {
-     paint_range = other.paint_range;
-     selected_map = std::move(other.selected_map);
-   }
-@@ -205,8 +205,7 @@
-       HeapHashSet<Member<const Node>>&& passed_selected_objects)
-       : paint_range(passed_paint_range),
-         selected_objects(std::move(passed_selected_objects)) {}
--  NewPaintRangeAndSelectedNodes(
--      NewPaintRangeAndSelectedNodes&& other) noexcept {
-+  NewPaintRangeAndSelectedNodes(NewPaintRangeAndSelectedNodes&& other) {
-     paint_range = other.paint_range;
-     selected_objects = std::move(other.selected_objects);
-   }
-diff --git a/third_party/blink/renderer/core/frame/local_frame_ukm_aggregator.cc b/third_party/blink/renderer/core/frame/local_frame_ukm_aggregator.cc
-index f0ac3c4..81f47ab 100644
---- a/third_party/blink/renderer/core/frame/local_frame_ukm_aggregator.cc
-+++ b/third_party/blink/renderer/core/frame/local_frame_ukm_aggregator.cc
-@@ -24,7 +24,7 @@
-       start_time_(clock_->NowTicks()) {}
- 
- LocalFrameUkmAggregator::ScopedUkmHierarchicalTimer::ScopedUkmHierarchicalTimer(
--    ScopedUkmHierarchicalTimer&& other) noexcept
-+    ScopedUkmHierarchicalTimer&& other)
-     : aggregator_(other.aggregator_),
-       metric_index_(other.metric_index_),
-       clock_(other.clock_),
-diff --git a/third_party/blink/renderer/core/frame/local_frame_ukm_aggregator.h b/third_party/blink/renderer/core/frame/local_frame_ukm_aggregator.h
-index 44c3f87..dc06091 100644
---- a/third_party/blink/renderer/core/frame/local_frame_ukm_aggregator.h
-+++ b/third_party/blink/renderer/core/frame/local_frame_ukm_aggregator.h
-@@ -195,7 +195,7 @@
-     STACK_ALLOCATED();
- 
-    public:
--    ScopedUkmHierarchicalTimer(ScopedUkmHierarchicalTimer&&) noexcept;
-+    ScopedUkmHierarchicalTimer(ScopedUkmHierarchicalTimer&&);
-     ~ScopedUkmHierarchicalTimer();
- 
-    private:
-diff --git a/third_party/blink/renderer/core/layout/ng/inline/ng_line_box_fragment_builder.h b/third_party/blink/renderer/core/layout/ng/inline/ng_line_box_fragment_builder.h
-index 2af19ca..498e42e 100644
---- a/third_party/blink/renderer/core/layout/ng/inline/ng_line_box_fragment_builder.h
-+++ b/third_party/blink/renderer/core/layout/ng/inline/ng_line_box_fragment_builder.h
-@@ -181,7 +181,7 @@
- 
-    public:
-     ChildList() = default;
--    void operator=(ChildList&& other) noexcept {
-+    void operator=(ChildList&& other) {
-       children_ = std::move(other.children_);
-     }
- 
-diff --git a/third_party/blink/renderer/core/layout/ng/ng_constraint_space.h b/third_party/blink/renderer/core/layout/ng/ng_constraint_space.h
-index 8f77b90..833b0d2 100644
---- a/third_party/blink/renderer/core/layout/ng/ng_constraint_space.h
-+++ b/third_party/blink/renderer/core/layout/ng/ng_constraint_space.h
-@@ -86,7 +86,7 @@
-     else
-       bfc_offset_ = other.bfc_offset_;
-   }
--  NGConstraintSpace(NGConstraintSpace&& other) noexcept
-+  NGConstraintSpace(NGConstraintSpace&& other)
-       : available_size_(other.available_size_),
-         exclusion_space_(std::move(other.exclusion_space_)),
-         bitfields_(other.bitfields_) {
-@@ -110,7 +110,7 @@
-     bitfields_ = other.bitfields_;
-     return *this;
-   }
--  NGConstraintSpace& operator=(NGConstraintSpace&& other) noexcept {
-+  NGConstraintSpace& operator=(NGConstraintSpace&& other) {
-     available_size_ = other.available_size_;
-     if (HasRareData())
-       delete rare_data_;
-diff --git a/third_party/blink/renderer/core/messaging/blink_cloneable_message.cc b/third_party/blink/renderer/core/messaging/blink_cloneable_message.cc
-index b6c8768..7423930 100644
---- a/third_party/blink/renderer/core/messaging/blink_cloneable_message.cc
-+++ b/third_party/blink/renderer/core/messaging/blink_cloneable_message.cc
-@@ -9,9 +9,8 @@
- BlinkCloneableMessage::BlinkCloneableMessage() = default;
- BlinkCloneableMessage::~BlinkCloneableMessage() = default;
- 
--BlinkCloneableMessage::BlinkCloneableMessage(BlinkCloneableMessage&&) noexcept =
--    default;
-+BlinkCloneableMessage::BlinkCloneableMessage(BlinkCloneableMessage&&) = default;
- BlinkCloneableMessage& BlinkCloneableMessage::operator=(
--    BlinkCloneableMessage&&) noexcept = default;
-+    BlinkCloneableMessage&&) = default;
- 
- }  // namespace blink
-diff --git a/third_party/blink/renderer/core/messaging/blink_cloneable_message.h b/third_party/blink/renderer/core/messaging/blink_cloneable_message.h
-index 337b0f8..a51e888 100644
---- a/third_party/blink/renderer/core/messaging/blink_cloneable_message.h
-+++ b/third_party/blink/renderer/core/messaging/blink_cloneable_message.h
-@@ -21,8 +21,8 @@
-   BlinkCloneableMessage();
-   ~BlinkCloneableMessage();
- 
--  BlinkCloneableMessage(BlinkCloneableMessage&&) noexcept;
--  BlinkCloneableMessage& operator=(BlinkCloneableMessage&&) noexcept;
-+  BlinkCloneableMessage(BlinkCloneableMessage&&);
-+  BlinkCloneableMessage& operator=(BlinkCloneableMessage&&);
- 
-   scoped_refptr<blink::SerializedScriptValue> message;
-   v8_inspector::V8StackTraceId sender_stack_trace_id;
-diff --git a/third_party/blink/renderer/core/messaging/blink_transferable_message.cc b/third_party/blink/renderer/core/messaging/blink_transferable_message.cc
-index 909ddb0..b5cdfda 100644
---- a/third_party/blink/renderer/core/messaging/blink_transferable_message.cc
-+++ b/third_party/blink/renderer/core/messaging/blink_transferable_message.cc
-@@ -16,10 +16,10 @@
- BlinkTransferableMessage::BlinkTransferableMessage() = default;
- BlinkTransferableMessage::~BlinkTransferableMessage() = default;
- 
--BlinkTransferableMessage::BlinkTransferableMessage(
--    BlinkTransferableMessage&&) noexcept = default;
-+BlinkTransferableMessage::BlinkTransferableMessage(BlinkTransferableMessage&&) =
-+    default;
- BlinkTransferableMessage& BlinkTransferableMessage::operator=(
--    BlinkTransferableMessage&&) noexcept = default;
-+    BlinkTransferableMessage&&) = default;
- 
- scoped_refptr<blink::StaticBitmapImage> ToStaticBitmapImage(
-     const SkBitmap& sk_bitmap) {
-diff --git a/third_party/blink/renderer/core/messaging/blink_transferable_message.h b/third_party/blink/renderer/core/messaging/blink_transferable_message.h
-index edf4fab..3957bed 100644
---- a/third_party/blink/renderer/core/messaging/blink_transferable_message.h
-+++ b/third_party/blink/renderer/core/messaging/blink_transferable_message.h
-@@ -24,8 +24,8 @@
-   BlinkTransferableMessage();
-   ~BlinkTransferableMessage();
- 
--  BlinkTransferableMessage(BlinkTransferableMessage&&) noexcept;
--  BlinkTransferableMessage& operator=(BlinkTransferableMessage&&) noexcept;
-+  BlinkTransferableMessage(BlinkTransferableMessage&&);
-+  BlinkTransferableMessage& operator=(BlinkTransferableMessage&&);
- 
-   Vector<MessagePortChannel> ports;
- 
-diff --git a/third_party/blink/renderer/modules/imagecapture/image_capture_frame_grabber.h b/third_party/blink/renderer/modules/imagecapture/image_capture_frame_grabber.h
-index 85b46e1..f050a85 100644
---- a/third_party/blink/renderer/modules/imagecapture/image_capture_frame_grabber.h
-+++ b/third_party/blink/renderer/modules/imagecapture/image_capture_frame_grabber.h
-@@ -92,10 +92,10 @@
-       std::move(destruction_callback_).Run(std::move(callbacks_));
-   }
- 
--  ScopedWebCallbacks(ScopedWebCallbacks&& other) noexcept = default;
-+  ScopedWebCallbacks(ScopedWebCallbacks&& other) = default;
-   ScopedWebCallbacks(const ScopedWebCallbacks& other) = delete;
- 
--  ScopedWebCallbacks& operator=(ScopedWebCallbacks&& other) noexcept = default;
-+  ScopedWebCallbacks& operator=(ScopedWebCallbacks&& other) = default;
-   ScopedWebCallbacks& operator=(const ScopedWebCallbacks& other) = delete;
- 
-   std::unique_ptr<CallbacksType> PassCallbacks() {
-diff --git a/third_party/blink/renderer/modules/indexeddb/idb_request.h b/third_party/blink/renderer/modules/indexeddb/idb_request.h
-index f85b864..d3f1132 100644
---- a/third_party/blink/renderer/modules/indexeddb/idb_request.h
-+++ b/third_party/blink/renderer/modules/indexeddb/idb_request.h
-@@ -110,13 +110,13 @@
-     ~AsyncTraceState();
- 
-     // Used to transfer the trace end event state to an IDBRequest.
--    AsyncTraceState(AsyncTraceState&& other) noexcept {
-+    AsyncTraceState(AsyncTraceState&& other) {
-       DCHECK(IsEmpty());
-       this->trace_event_name_ = other.trace_event_name_;
-       this->id_ = other.id_;
-       other.trace_event_name_ = nullptr;
-     }
--    AsyncTraceState& operator=(AsyncTraceState&& rhs) noexcept {
-+    AsyncTraceState& operator=(AsyncTraceState&& rhs) {
-       DCHECK(IsEmpty());
-       this->trace_event_name_ = rhs.trace_event_name_;
-       this->id_ = rhs.id_;
-diff --git a/third_party/blink/renderer/modules/indexeddb/idb_request_test.cc b/third_party/blink/renderer/modules/indexeddb/idb_request_test.cc
-index 84de726..2d3d4de5 100644
---- a/third_party/blink/renderer/modules/indexeddb/idb_request_test.cc
-+++ b/third_party/blink/renderer/modules/indexeddb/idb_request_test.cc
-@@ -434,10 +434,9 @@
- class AsyncTraceStateForTesting : public IDBRequest::AsyncTraceState {
-  public:
-   AsyncTraceStateForTesting() : IDBRequest::AsyncTraceState() {}
--  AsyncTraceStateForTesting(AsyncTraceStateForTesting&& other) noexcept
-+  AsyncTraceStateForTesting(AsyncTraceStateForTesting&& other)
-       : IDBRequest::AsyncTraceState(std::move(other)) {}
--  AsyncTraceStateForTesting& operator=(
--      AsyncTraceStateForTesting&& rhs) noexcept {
-+  AsyncTraceStateForTesting& operator=(AsyncTraceStateForTesting&& rhs) {
-     AsyncTraceState::operator=(std::move(rhs));
-     return *this;
-   }
-diff --git a/third_party/blink/renderer/modules/mediastream/media_stream_constraints_util.cc b/third_party/blink/renderer/modules/mediastream/media_stream_constraints_util.cc
-index 24499bd..3bf00e9 100644
---- a/third_party/blink/renderer/modules/mediastream/media_stream_constraints_util.cc
-+++ b/third_party/blink/renderer/modules/mediastream/media_stream_constraints_util.cc
-@@ -134,13 +134,13 @@
- 
- VideoCaptureSettings::VideoCaptureSettings(const VideoCaptureSettings& other) =
-     default;
--VideoCaptureSettings::VideoCaptureSettings(
--    VideoCaptureSettings&& other) noexcept = default;
-+VideoCaptureSettings::VideoCaptureSettings(VideoCaptureSettings&& other) =
-+    default;
- VideoCaptureSettings::~VideoCaptureSettings() = default;
- VideoCaptureSettings& VideoCaptureSettings::operator=(
-     const VideoCaptureSettings& other) = default;
- VideoCaptureSettings& VideoCaptureSettings::operator=(
--    VideoCaptureSettings&& other) noexcept = default;
-+    VideoCaptureSettings&& other) = default;
- 
- AudioCaptureSettings::AudioCaptureSettings() : AudioCaptureSettings("") {}
- 
-@@ -166,10 +166,10 @@
-     default;
- AudioCaptureSettings& AudioCaptureSettings::operator=(
-     const AudioCaptureSettings& other) = default;
--AudioCaptureSettings::AudioCaptureSettings(
--    AudioCaptureSettings&& other) noexcept = default;
-+AudioCaptureSettings::AudioCaptureSettings(AudioCaptureSettings&& other) =
-+    default;
- AudioCaptureSettings& AudioCaptureSettings::operator=(
--    AudioCaptureSettings&& other) noexcept = default;
-+    AudioCaptureSettings&& other) = default;
- 
- bool GetConstraintValueAsBoolean(
-     const WebMediaConstraints& constraints,
-diff --git a/third_party/blink/renderer/modules/mediastream/media_stream_constraints_util_video_device.cc b/third_party/blink/renderer/modules/mediastream/media_stream_constraints_util_video_device.cc
-index 96992217..67c8bab 100644
---- a/third_party/blink/renderer/modules/mediastream/media_stream_constraints_util_video_device.cc
-+++ b/third_party/blink/renderer/modules/mediastream/media_stream_constraints_util_video_device.cc
-@@ -529,9 +529,9 @@
-       facing_mode(facing_mode) {}
- 
- VideoInputDeviceCapabilities::VideoInputDeviceCapabilities(
--    VideoInputDeviceCapabilities&& other) noexcept = default;
-+    VideoInputDeviceCapabilities&& other) = default;
- VideoInputDeviceCapabilities& VideoInputDeviceCapabilities::operator=(
--    VideoInputDeviceCapabilities&& other) noexcept = default;
-+    VideoInputDeviceCapabilities&& other) = default;
- 
- VideoInputDeviceCapabilities::~VideoInputDeviceCapabilities() = default;
- 
-@@ -557,10 +557,10 @@
- 
- VideoDeviceCaptureCapabilities::VideoDeviceCaptureCapabilities() = default;
- VideoDeviceCaptureCapabilities::VideoDeviceCaptureCapabilities(
--    VideoDeviceCaptureCapabilities&& other) noexcept = default;
-+    VideoDeviceCaptureCapabilities&& other) = default;
- VideoDeviceCaptureCapabilities::~VideoDeviceCaptureCapabilities() = default;
- VideoDeviceCaptureCapabilities& VideoDeviceCaptureCapabilities::operator=(
--    VideoDeviceCaptureCapabilities&& other) noexcept = default;
-+    VideoDeviceCaptureCapabilities&& other) = default;
- 
- VideoCaptureSettings SelectSettingsVideoDeviceCapture(
-     const VideoDeviceCaptureCapabilities& capabilities,
-diff --git a/third_party/blink/renderer/modules/mediastream/media_stream_constraints_util_video_device.h b/third_party/blink/renderer/modules/mediastream/media_stream_constraints_util_video_device.h
-index 66ae103..94d8ed9 100644
---- a/third_party/blink/renderer/modules/mediastream/media_stream_constraints_util_video_device.h
-+++ b/third_party/blink/renderer/modules/mediastream/media_stream_constraints_util_video_device.h
-@@ -34,9 +34,8 @@
-                                Vector<media::VideoCaptureFormat> formats,
-                                media::VideoFacingMode facing_mode);
-   VideoInputDeviceCapabilities();
--  VideoInputDeviceCapabilities(VideoInputDeviceCapabilities&& other) noexcept;
--  VideoInputDeviceCapabilities& operator=(
--      VideoInputDeviceCapabilities&& other) noexcept;
-+  VideoInputDeviceCapabilities(VideoInputDeviceCapabilities&& other);
-+  VideoInputDeviceCapabilities& operator=(VideoInputDeviceCapabilities&& other);
-   ~VideoInputDeviceCapabilities();
- 
-   String device_id;
-@@ -47,11 +46,10 @@
- 
- struct MODULES_EXPORT VideoDeviceCaptureCapabilities {
-   VideoDeviceCaptureCapabilities();
--  VideoDeviceCaptureCapabilities(
--      VideoDeviceCaptureCapabilities&& other) noexcept;
-+  VideoDeviceCaptureCapabilities(VideoDeviceCaptureCapabilities&& other);
-   ~VideoDeviceCaptureCapabilities();
-   VideoDeviceCaptureCapabilities& operator=(
--      VideoDeviceCaptureCapabilities&& other) noexcept;
-+      VideoDeviceCaptureCapabilities&& other);
- 
-   // Each capabilities field is independent of each other.
-   // TODO(crbug.com/704136): Replace VideoInputDeviceCapabilities in the
-diff --git a/third_party/blink/renderer/modules/mediastream/media_stream_video_source.cc b/third_party/blink/renderer/modules/mediastream/media_stream_video_source.cc
-index 7651e47..99759c1 100644
---- a/third_party/blink/renderer/modules/mediastream/media_stream_video_source.cc
-+++ b/third_party/blink/renderer/modules/mediastream/media_stream_video_source.cc
-@@ -461,10 +461,10 @@
-       callback(callback) {}
- 
- MediaStreamVideoSource::PendingTrackInfo::PendingTrackInfo(
--    PendingTrackInfo&& other) noexcept = default;
-+    PendingTrackInfo&& other) = default;
- MediaStreamVideoSource::PendingTrackInfo&
- MediaStreamVideoSource::PendingTrackInfo::operator=(
--    MediaStreamVideoSource::PendingTrackInfo&& other) noexcept = default;
-+    MediaStreamVideoSource::PendingTrackInfo&& other) = default;
- 
- MediaStreamVideoSource::PendingTrackInfo::~PendingTrackInfo() {}
- 
-diff --git a/third_party/blink/renderer/platform/bindings/dom_data_store.h b/third_party/blink/renderer/platform/bindings/dom_data_store.h
-index d660b67..0660dd18 100644
---- a/third_party/blink/renderer/platform/bindings/dom_data_store.h
-+++ b/third_party/blink/renderer/platform/bindings/dom_data_store.h
-@@ -230,12 +230,11 @@
-         : TraceWrapperV8Reference(isolate, handle) {}
- 
-     // Move support without write barrier.
--    DOMWorldWrapperReference(DOMWorldWrapperReference&& other) noexcept
-+    DOMWorldWrapperReference(DOMWorldWrapperReference&& other)
-         : TraceWrapperV8Reference() {
-       handle_ = std::move(other.handle_);
-     }
--    DOMWorldWrapperReference& operator=(
--        DOMWorldWrapperReference&& rhs) noexcept {
-+    DOMWorldWrapperReference& operator=(DOMWorldWrapperReference&& rhs) {
-       handle_ = std::move(rhs.handle_);
-       return *this;
-     }
-diff --git a/third_party/blink/renderer/platform/exported/web_string.cc b/third_party/blink/renderer/platform/exported/web_string.cc
-index 71d4c07..fbe4828 100644
---- a/third_party/blink/renderer/platform/exported/web_string.cc
-+++ b/third_party/blink/renderer/platform/exported/web_string.cc
-@@ -51,9 +51,9 @@
- WebString::~WebString() = default;
- WebString::WebString() = default;
- WebString::WebString(const WebString&) = default;
--WebString::WebString(WebString&&) noexcept = default;
-+WebString::WebString(WebString&&) = default;
- WebString& WebString::operator=(const WebString&) = default;
--WebString& WebString::operator=(WebString&&) noexcept = default;
-+WebString& WebString::operator=(WebString&&) = default;
- 
- WebString::WebString(const WebUChar* data, size_t len)
-     : impl_(StringImpl::Create8BitIfPossible(data, len)) {}
-diff --git a/third_party/blink/renderer/platform/graphics/contiguous_container.cc b/third_party/blink/renderer/platform/graphics/contiguous_container.cc
-index fd01c00..19cb6f2 100644
---- a/third_party/blink/renderer/platform/graphics/contiguous_container.cc
-+++ b/third_party/blink/renderer/platform/graphics/contiguous_container.cc
-@@ -69,7 +69,7 @@
-     : end_index_(0), max_object_size_(max_object_size) {}
- 
- ContiguousContainerBase::ContiguousContainerBase(
--    ContiguousContainerBase&& source) noexcept
-+    ContiguousContainerBase&& source)
-     : ContiguousContainerBase(source.max_object_size_) {
-   Swap(source);
- }
-@@ -77,7 +77,7 @@
- ContiguousContainerBase::~ContiguousContainerBase() = default;
- 
- ContiguousContainerBase& ContiguousContainerBase::operator=(
--    ContiguousContainerBase&& source) noexcept {
-+    ContiguousContainerBase&& source) {
-   Swap(source);
-   return *this;
- }
-diff --git a/third_party/blink/renderer/platform/graphics/contiguous_container.h b/third_party/blink/renderer/platform/graphics/contiguous_container.h
-index 867e59c..3eee558 100644
---- a/third_party/blink/renderer/platform/graphics/contiguous_container.h
-+++ b/third_party/blink/renderer/platform/graphics/contiguous_container.h
-@@ -42,10 +42,10 @@
- 
-  protected:
-   explicit ContiguousContainerBase(size_t max_object_size);
--  ContiguousContainerBase(ContiguousContainerBase&&) noexcept;
-+  ContiguousContainerBase(ContiguousContainerBase&&);
-   ~ContiguousContainerBase();
- 
--  ContiguousContainerBase& operator=(ContiguousContainerBase&&) noexcept;
-+  ContiguousContainerBase& operator=(ContiguousContainerBase&&);
- 
-   size_t size() const { return elements_.size(); }
-   bool IsEmpty() const { return !size(); }
-@@ -147,7 +147,7 @@
-                            WTF_HEAP_PROFILER_TYPE_NAME(BaseElementType));
-   }
- 
--  ContiguousContainer(ContiguousContainer&& source) noexcept
-+  ContiguousContainer(ContiguousContainer&& source)
-       : ContiguousContainerBase(std::move(source)) {}
- 
-   ~ContiguousContainer() {
-@@ -157,7 +157,7 @@
-     }
-   }
- 
--  ContiguousContainer& operator=(ContiguousContainer&& source) noexcept {
-+  ContiguousContainer& operator=(ContiguousContainer&& source) {
-     // Must clear in the derived class to ensure that element destructors
-     // care called.
-     Clear();
-diff --git a/third_party/blink/renderer/platform/graphics/gpu/image_layer_bridge.cc b/third_party/blink/renderer/platform/graphics/gpu/image_layer_bridge.cc
-index ad10c54..4edbf7f 100644
---- a/third_party/blink/renderer/platform/graphics/gpu/image_layer_bridge.cc
-+++ b/third_party/blink/renderer/platform/graphics/gpu/image_layer_bridge.cc
-@@ -247,9 +247,9 @@
- }
- 
- ImageLayerBridge::RegisteredBitmap::RegisteredBitmap() = default;
--ImageLayerBridge::RegisteredBitmap::RegisteredBitmap(
--    RegisteredBitmap&& other) noexcept = default;
-+ImageLayerBridge::RegisteredBitmap::RegisteredBitmap(RegisteredBitmap&& other) =
-+    default;
- ImageLayerBridge::RegisteredBitmap& ImageLayerBridge::RegisteredBitmap::
--operator=(RegisteredBitmap&& other) noexcept = default;
-+operator=(RegisteredBitmap&& other) = default;
- 
- }  // namespace blink
-diff --git a/third_party/blink/renderer/platform/graphics/gpu/image_layer_bridge.h b/third_party/blink/renderer/platform/graphics/gpu/image_layer_bridge.h
-index bea81dfb..b6879f9 100644
---- a/third_party/blink/renderer/platform/graphics/gpu/image_layer_bridge.h
-+++ b/third_party/blink/renderer/platform/graphics/gpu/image_layer_bridge.h
-@@ -65,8 +65,8 @@
-   // only with software compositing.
-   struct RegisteredBitmap {
-     RegisteredBitmap();
--    RegisteredBitmap(RegisteredBitmap&& other) noexcept;
--    RegisteredBitmap& operator=(RegisteredBitmap&& other) noexcept;
-+    RegisteredBitmap(RegisteredBitmap&& other);
-+    RegisteredBitmap& operator=(RegisteredBitmap&& other);
- 
-     scoped_refptr<cc::CrossThreadSharedBitmap> bitmap;
-     cc::SharedBitmapIdRegistration registration;
-diff --git a/third_party/blink/renderer/platform/graphics/paint/display_item_list.h b/third_party/blink/renderer/platform/graphics/paint/display_item_list.h
-index cd3ed2f..9ee2571 100644
---- a/third_party/blink/renderer/platform/graphics/paint/display_item_list.h
-+++ b/third_party/blink/renderer/platform/graphics/paint/display_item_list.h
-@@ -28,10 +28,10 @@
-  public:
-   DisplayItemList(size_t initial_size_bytes)
-       : ContiguousContainer(kMaximumDisplayItemSize, initial_size_bytes) {}
--  DisplayItemList(DisplayItemList&& source) noexcept
-+  DisplayItemList(DisplayItemList&& source)
-       : ContiguousContainer(std::move(source)) {}
- 
--  DisplayItemList& operator=(DisplayItemList&& source) noexcept {
-+  DisplayItemList& operator=(DisplayItemList&& source) {
-     ContiguousContainer::operator=(std::move(source));
-     return *this;
-   }
-diff --git a/third_party/blink/renderer/platform/heap/heap_test.cc b/third_party/blink/renderer/platform/heap/heap_test.cc
-index dad0ca0..e94cbc95 100644
---- a/third_party/blink/renderer/platform/heap/heap_test.cc
-+++ b/third_party/blink/renderer/platform/heap/heap_test.cc
-@@ -145,7 +145,7 @@
-   }
-   KeyWithCopyingMoveConstructor(const KeyWithCopyingMoveConstructor&) = default;
-   // The move constructor delegates to the copy constructor intentionally.
--  KeyWithCopyingMoveConstructor(KeyWithCopyingMoveConstructor&& x) noexcept
-+  KeyWithCopyingMoveConstructor(KeyWithCopyingMoveConstructor&& x)
-       : KeyWithCopyingMoveConstructor(x) {}
-   KeyWithCopyingMoveConstructor& operator=(
-       const KeyWithCopyingMoveConstructor&) = default;
-diff --git a/third_party/blink/renderer/platform/image-decoders/segment_stream.cc b/third_party/blink/renderer/platform/image-decoders/segment_stream.cc
-index 4024f9c..5a98701 100644
---- a/third_party/blink/renderer/platform/image-decoders/segment_stream.cc
-+++ b/third_party/blink/renderer/platform/image-decoders/segment_stream.cc
-@@ -10,10 +10,10 @@
- 
- SegmentStream::SegmentStream() = default;
- 
--SegmentStream::SegmentStream(SegmentStream&& rhs) noexcept
-+SegmentStream::SegmentStream(SegmentStream&& rhs)
-     : reader_(std::move(rhs.reader_)), position_(rhs.position_) {}
- 
--SegmentStream& SegmentStream::operator=(SegmentStream&& rhs) noexcept {
-+SegmentStream& SegmentStream::operator=(SegmentStream&& rhs) {
-   reader_ = std::move(rhs.reader_);
-   position_ = rhs.position_;
- 
-diff --git a/third_party/blink/renderer/platform/image-decoders/segment_stream.h b/third_party/blink/renderer/platform/image-decoders/segment_stream.h
-index f49f551..fa1ccf2 100644
---- a/third_party/blink/renderer/platform/image-decoders/segment_stream.h
-+++ b/third_party/blink/renderer/platform/image-decoders/segment_stream.h
-@@ -19,8 +19,8 @@
-   SegmentStream();
-   SegmentStream(const SegmentStream&) = delete;
-   SegmentStream& operator=(const SegmentStream&) = delete;
--  SegmentStream(SegmentStream&&) noexcept;
--  SegmentStream& operator=(SegmentStream&&) noexcept;
-+  SegmentStream(SegmentStream&&);
-+  SegmentStream& operator=(SegmentStream&&);
- 
-   ~SegmentStream() override;
- 
-diff --git a/third_party/blink/renderer/platform/mojo/revocable_interface_ptr.h b/third_party/blink/renderer/platform/mojo/revocable_interface_ptr.h
-index 555be28..34bad3f 100644
---- a/third_party/blink/renderer/platform/mojo/revocable_interface_ptr.h
-+++ b/third_party/blink/renderer/platform/mojo/revocable_interface_ptr.h
-@@ -41,7 +41,7 @@
-   RevocableInterfacePtr(std::nullptr_t) {}
- 
-   // Takes over the binding of another RevocableInterfacePtr.
--  RevocableInterfacePtr(RevocableInterfacePtr&& other) noexcept {
-+  RevocableInterfacePtr(RevocableInterfacePtr&& other) {
-     interface_ptr_ = std::move(other.interface_ptr_);
-     SetInvalidator(other.invalidator_.get());
-     // Reset the other interface ptr to remove it as an observer of the
-@@ -58,7 +58,7 @@
- 
-   // Takes over the binding of another RevocableInterfacePtr, and closes any
-   // message pipe already bound to this pointer.
--  RevocableInterfacePtr& operator=(RevocableInterfacePtr&& other) noexcept {
-+  RevocableInterfacePtr& operator=(RevocableInterfacePtr&& other) {
-     reset();
-     interface_ptr_ = std::move(other.interface_ptr_);
-     SetInvalidator(other.invalidator_.get());
-diff --git a/third_party/blink/renderer/platform/network/encoded_form_data.cc b/third_party/blink/renderer/platform/network/encoded_form_data.cc
-index bc4ec14..1b660e6 100644
---- a/third_party/blink/renderer/platform/network/encoded_form_data.cc
-+++ b/third_party/blink/renderer/platform/network/encoded_form_data.cc
-@@ -61,11 +61,10 @@
-     : type_(kDataPipe), data_pipe_getter_(std::move(data_pipe_getter)) {}
- 
- FormDataElement::FormDataElement(const FormDataElement&) = default;
--FormDataElement::FormDataElement(FormDataElement&&) noexcept = default;
-+FormDataElement::FormDataElement(FormDataElement&&) = default;
- FormDataElement::~FormDataElement() = default;
- FormDataElement& FormDataElement::operator=(const FormDataElement&) = default;
--FormDataElement& FormDataElement::operator=(FormDataElement&&) noexcept =
--    default;
-+FormDataElement& FormDataElement::operator=(FormDataElement&&) = default;
- 
- bool operator==(const FormDataElement& a, const FormDataElement& b) {
-   if (&a == &b)
-diff --git a/third_party/blink/renderer/platform/network/encoded_form_data.h b/third_party/blink/renderer/platform/network/encoded_form_data.h
-index 48f84c8..865f664 100644
---- a/third_party/blink/renderer/platform/network/encoded_form_data.h
-+++ b/third_party/blink/renderer/platform/network/encoded_form_data.h
-@@ -61,12 +61,12 @@
-   explicit FormDataElement(scoped_refptr<WrappedDataPipeGetter>);
- 
-   FormDataElement(const FormDataElement&);
--  FormDataElement(FormDataElement&&) noexcept;
-+  FormDataElement(FormDataElement&&);
- 
-   ~FormDataElement();
- 
-   FormDataElement& operator=(const FormDataElement&);
--  FormDataElement& operator=(FormDataElement&&) noexcept;
-+  FormDataElement& operator=(FormDataElement&&);
- 
-   bool IsSafeToSendToAnotherThread() const;
- 
-diff --git a/third_party/blink/renderer/platform/scheduler/common/frame_or_worker_scheduler.cc b/third_party/blink/renderer/platform/scheduler/common/frame_or_worker_scheduler.cc
-index ebe99ff..e971856 100644
---- a/third_party/blink/renderer/platform/scheduler/common/frame_or_worker_scheduler.cc
-+++ b/third_party/blink/renderer/platform/scheduler/common/frame_or_worker_scheduler.cc
-@@ -28,15 +28,14 @@
- }
- 
- FrameOrWorkerScheduler::SchedulingAffectingFeatureHandle::
--    SchedulingAffectingFeatureHandle(
--        SchedulingAffectingFeatureHandle&& other) noexcept
-+    SchedulingAffectingFeatureHandle(SchedulingAffectingFeatureHandle&& other)
-     : feature_(other.feature_), scheduler_(std::move(other.scheduler_)) {
-   other.scheduler_ = nullptr;
- }
- 
- FrameOrWorkerScheduler::SchedulingAffectingFeatureHandle&
- FrameOrWorkerScheduler::SchedulingAffectingFeatureHandle::operator=(
--    SchedulingAffectingFeatureHandle&& other) noexcept {
-+    SchedulingAffectingFeatureHandle&& other) {
-   feature_ = other.feature_;
-   policy_ = std::move(other.policy_);
-   scheduler_ = std::move(other.scheduler_);
-diff --git a/third_party/blink/renderer/platform/scheduler/common/post_cancellable_task.cc b/third_party/blink/renderer/platform/scheduler/common/post_cancellable_task.cc
-index 2c84d70..fad56ee1 100644
---- a/third_party/blink/renderer/platform/scheduler/common/post_cancellable_task.cc
-+++ b/third_party/blink/renderer/platform/scheduler/common/post_cancellable_task.cc
-@@ -103,9 +103,9 @@
-   Cancel();
- }
- 
--TaskHandle::TaskHandle(TaskHandle&&) noexcept = default;
-+TaskHandle::TaskHandle(TaskHandle&&) = default;
- 
--TaskHandle& TaskHandle::operator=(TaskHandle&& other) noexcept {
-+TaskHandle& TaskHandle::operator=(TaskHandle&& other) {
-   TaskHandle tmp(std::move(other));
-   runner_.swap(tmp.runner_);
-   return *this;
-diff --git a/third_party/blink/renderer/platform/scheduler/main_thread/web_scoped_virtual_time_pauser.cc b/third_party/blink/renderer/platform/scheduler/main_thread/web_scoped_virtual_time_pauser.cc
-index f55730a..b64ec9d 100644
---- a/third_party/blink/renderer/platform/scheduler/main_thread/web_scoped_virtual_time_pauser.cc
-+++ b/third_party/blink/renderer/platform/scheduler/main_thread/web_scoped_virtual_time_pauser.cc
-@@ -28,7 +28,7 @@
- }
- 
- WebScopedVirtualTimePauser::WebScopedVirtualTimePauser(
--    WebScopedVirtualTimePauser&& other) noexcept {
-+    WebScopedVirtualTimePauser&& other) {
-   virtual_time_when_paused_ = other.virtual_time_when_paused_;
-   paused_ = other.paused_;
-   duration_ = other.duration_;
-@@ -39,7 +39,7 @@
- }
- 
- WebScopedVirtualTimePauser& WebScopedVirtualTimePauser::operator=(
--    WebScopedVirtualTimePauser&& other) noexcept {
-+    WebScopedVirtualTimePauser&& other) {
-   if (scheduler_ && paused_)
-     DecrementVirtualTimePauseCount();
-   virtual_time_when_paused_ = other.virtual_time_when_paused_;
-diff --git a/third_party/blink/renderer/platform/scheduler/public/frame_or_worker_scheduler.h b/third_party/blink/renderer/platform/scheduler/public/frame_or_worker_scheduler.h
-index 56915ee..3fdb8cf 100644
---- a/third_party/blink/renderer/platform/scheduler/public/frame_or_worker_scheduler.h
-+++ b/third_party/blink/renderer/platform/scheduler/public/frame_or_worker_scheduler.h
-@@ -57,12 +57,11 @@
- 
-    public:
-     SchedulingAffectingFeatureHandle() = default;
--    SchedulingAffectingFeatureHandle(
--        SchedulingAffectingFeatureHandle&&) noexcept;
-+    SchedulingAffectingFeatureHandle(SchedulingAffectingFeatureHandle&&);
-     inline ~SchedulingAffectingFeatureHandle() { reset(); }
- 
-     SchedulingAffectingFeatureHandle& operator=(
--        SchedulingAffectingFeatureHandle&&) noexcept;
-+        SchedulingAffectingFeatureHandle&&);
- 
-     inline void reset() {
-       if (scheduler_)
-diff --git a/third_party/blink/renderer/platform/scheduler/public/post_cancellable_task.h b/third_party/blink/renderer/platform/scheduler/public/post_cancellable_task.h
-index 38cbf63..ae66c73 100644
---- a/third_party/blink/renderer/platform/scheduler/public/post_cancellable_task.h
-+++ b/third_party/blink/renderer/platform/scheduler/public/post_cancellable_task.h
-@@ -28,8 +28,8 @@
-   TaskHandle();
-   ~TaskHandle();
- 
--  TaskHandle(TaskHandle&&) noexcept;
--  TaskHandle& operator=(TaskHandle&&) noexcept;
-+  TaskHandle(TaskHandle&&);
-+  TaskHandle& operator=(TaskHandle&&);
- 
-   // Returns true if the task will run later. Returns false if the task is
-   // cancelled or the task is run already.
-diff --git a/third_party/blink/renderer/platform/weborigin/origin_access_entry.cc b/third_party/blink/renderer/platform/weborigin/origin_access_entry.cc
-index 2e9a9d1..c9d777e7 100644
---- a/third_party/blink/renderer/platform/weborigin/origin_access_entry.cc
-+++ b/third_party/blink/renderer/platform/weborigin/origin_access_entry.cc
-@@ -59,8 +59,7 @@
-                network::mojom::CorsPortMatchMode::kAllowOnlySpecifiedPort,
-                priority) {}
- 
--OriginAccessEntry::OriginAccessEntry(OriginAccessEntry&& from) noexcept =
--    default;
-+OriginAccessEntry::OriginAccessEntry(OriginAccessEntry&& from) = default;
- 
- network::cors::OriginAccessEntry::MatchResult OriginAccessEntry::MatchesOrigin(
-     const SecurityOrigin& origin) const {
-diff --git a/third_party/blink/renderer/platform/weborigin/origin_access_entry.h b/third_party/blink/renderer/platform/weborigin/origin_access_entry.h
-index b3e5674..5113a40 100644
---- a/third_party/blink/renderer/platform/weborigin/origin_access_entry.h
-+++ b/third_party/blink/renderer/platform/weborigin/origin_access_entry.h
-@@ -58,7 +58,7 @@
-       network::mojom::CorsDomainMatchMode,
-       network::mojom::CorsOriginAccessMatchPriority priority =
-           network::mojom::CorsOriginAccessMatchPriority::kDefaultPriority);
--  OriginAccessEntry(OriginAccessEntry&& from) noexcept;
-+  OriginAccessEntry(OriginAccessEntry&& from);
- 
-   network::cors::OriginAccessEntry::MatchResult MatchesOrigin(
-       const SecurityOrigin&) const;
-diff --git a/third_party/blink/renderer/platform/wtf/deque.h b/third_party/blink/renderer/platform/wtf/deque.h
-index c6fe1b9..4a98ffb 100644
---- a/third_party/blink/renderer/platform/wtf/deque.h
-+++ b/third_party/blink/renderer/platform/wtf/deque.h
-@@ -64,8 +64,8 @@ class Deque {
-   Deque();
-   Deque(const Deque&);
-   Deque& operator=(const Deque&);
--  Deque(Deque&&) noexcept;
--  Deque& operator=(Deque&&) noexcept;
-+  Deque(Deque&&);
-+  Deque& operator=(Deque&&);
-   ~Deque();
- 
-   void FinalizeGarbageCollectedObject() { NOTREACHED(); }
-@@ -343,14 +343,14 @@
- }
- 
- template <typename T, wtf_size_t inlineCapacity, typename Allocator>
--inline Deque<T, inlineCapacity, Allocator>::Deque(Deque&& other) noexcept
-+inline Deque<T, inlineCapacity, Allocator>::Deque(Deque&& other)
-     : start_(0), end_(0) {
-   Swap(other);
- }
- 
- template <typename T, wtf_size_t inlineCapacity, typename Allocator>
- inline Deque<T, inlineCapacity, Allocator>&
--Deque<T, inlineCapacity, Allocator>::operator=(Deque&& other) noexcept {
-+Deque<T, inlineCapacity, Allocator>::operator=(Deque&& other) {
-   Swap(other);
-   return *this;
- }
-diff --git a/third_party/blink/renderer/platform/wtf/functional.h b/third_party/blink/renderer/platform/wtf/functional.h
-index 2c5aeea..5e4b373 100644
---- a/third_party/blink/renderer/platform/wtf/functional.h
-+++ b/third_party/blink/renderer/platform/wtf/functional.h
-@@ -117,8 +117,7 @@
- class PassedWrapper final {
-  public:
-   explicit PassedWrapper(T&& scoper) : scoper_(std::move(scoper)) {}
--  PassedWrapper(PassedWrapper&& other) noexcept
--      : scoper_(std::move(other.scoper_)) {}
-+  PassedWrapper(PassedWrapper&& other) : scoper_(std::move(other.scoper_)) {}
-   T MoveOut() const { return std::move(scoper_); }
- 
-  private:
-@@ -319,9 +318,8 @@
-   CrossThreadFunction(const CrossThreadFunction&) = delete;
-   CrossThreadFunction& operator=(const CrossThreadFunction&) = delete;
- 
--  CrossThreadFunction(CrossThreadFunction&& other) noexcept = default;
--  CrossThreadFunction& operator=(CrossThreadFunction&& other) noexcept =
--      default;
-+  CrossThreadFunction(CrossThreadFunction&& other) = default;
-+  CrossThreadFunction& operator=(CrossThreadFunction&& other) = default;
- 
-   R Run(Args... args) const & {
-     return callback_.Run(std::forward<Args>(args)...);
-@@ -356,9 +354,8 @@
-   CrossThreadOnceFunction(const CrossThreadOnceFunction&) = delete;
-   CrossThreadOnceFunction& operator=(const CrossThreadOnceFunction&) = delete;
- 
--  CrossThreadOnceFunction(CrossThreadOnceFunction&& other) noexcept = default;
--  CrossThreadOnceFunction& operator=(CrossThreadOnceFunction&& other) noexcept =
--      default;
-+  CrossThreadOnceFunction(CrossThreadOnceFunction&& other) = default;
-+  CrossThreadOnceFunction& operator=(CrossThreadOnceFunction&& other) = default;
- 
-   R Run(Args... args) && {
-     return std::move(callback_).Run(std::forward<Args>(args)...);
-diff --git a/third_party/blink/renderer/platform/wtf/hash_map.h b/third_party/blink/renderer/platform/wtf/hash_map.h
-index 8a002a8..46b39e0 100644
---- a/third_party/blink/renderer/platform/wtf/hash_map.h
-+++ b/third_party/blink/renderer/platform/wtf/hash_map.h
-@@ -106,8 +106,8 @@
- #endif
-   HashMap(const HashMap&) = default;
-   HashMap& operator=(const HashMap&) = default;
--  HashMap(HashMap&&) noexcept = default;
--  HashMap& operator=(HashMap&&) noexcept = default;
-+  HashMap(HashMap&&) = default;
-+  HashMap& operator=(HashMap&&) = default;
- 
-   // For example, HashMap<int, int>({{1, 11}, {2, 22}, {3, 33}}) will give you
-   // a HashMap containing a mapping {1 -> 11, 2 -> 22, 3 -> 33}.
-diff --git a/third_party/blink/renderer/platform/wtf/hash_set.h b/third_party/blink/renderer/platform/wtf/hash_set.h
-index c79e45f1..d7cdeed 100644
---- a/third_party/blink/renderer/platform/wtf/hash_set.h
-+++ b/third_party/blink/renderer/platform/wtf/hash_set.h
-@@ -74,8 +74,8 @@
-   }
-   HashSet(const HashSet&) = default;
-   HashSet& operator=(const HashSet&) = default;
--  HashSet(HashSet&&) noexcept = default;
--  HashSet& operator=(HashSet&&) noexcept = default;
-+  HashSet(HashSet&&) = default;
-+  HashSet& operator=(HashSet&&) = default;
- 
-   HashSet(std::initializer_list<ValueType> elements);
-   HashSet& operator=(std::initializer_list<ValueType> elements);
-diff --git a/third_party/blink/renderer/platform/wtf/hash_table.h b/third_party/blink/renderer/platform/wtf/hash_table.h
-index 373280f..52483ec5 100644
---- a/third_party/blink/renderer/platform/wtf/hash_table.h
-+++ b/third_party/blink/renderer/platform/wtf/hash_table.h
-@@ -747,10 +747,10 @@
-   }
- 
-   HashTable(const HashTable&);
--  HashTable(HashTable&&) noexcept;
-+  HashTable(HashTable&&);
-   void swap(HashTable&);
-   HashTable& operator=(const HashTable&);
--  HashTable& operator=(HashTable&&) noexcept;
-+  HashTable& operator=(HashTable&&);
- 
-   // When the hash table is empty, just return the same iterator for end as
-   // for begin.  This is more efficient because we don't have to skip all the
-@@ -1929,7 +1929,7 @@
-           typename KeyTraits,
-           typename Allocator>
- HashTable<Key, Value, Extractor, HashFunctions, Traits, KeyTraits, Allocator>::
--    HashTable(HashTable&& other) noexcept
-+    HashTable(HashTable&& other)
-     : table_(nullptr),
-       table_size_(0),
-       key_count_(0),
-@@ -2008,7 +2008,7 @@
-           typename Allocator>
- HashTable<Key, Value, Extractor, HashFunctions, Traits, KeyTraits, Allocator>&
- HashTable<Key, Value, Extractor, HashFunctions, Traits, KeyTraits, Allocator>::
--operator=(HashTable&& other) noexcept {
-+operator=(HashTable&& other) {
-   swap(other);
-   return *this;
- }
-diff --git a/third_party/blink/renderer/platform/wtf/linked_hash_set.h b/third_party/blink/renderer/platform/wtf/linked_hash_set.h
-index 79c3d76d..71ef37a 100644
---- a/third_party/blink/renderer/platform/wtf/linked_hash_set.h
-+++ b/third_party/blink/renderer/platform/wtf/linked_hash_set.h
-@@ -121,7 +121,7 @@
-   LinkedHashSetNodeBase(const LinkedHashSetNodeBase& other)
-       : prev_(nullptr), next_(nullptr) {}
- 
--  LinkedHashSetNodeBase(LinkedHashSetNodeBase&& other) noexcept
-+  LinkedHashSetNodeBase(LinkedHashSetNodeBase&& other)
-       : prev_(other.prev_), next_(other.next_) {
-     other.prev_ = nullptr;
-     other.next_ = nullptr;
-@@ -151,7 +151,7 @@
-                     LinkedHashSetNodeBase* next)
-       : LinkedHashSetNodeBase(prev, next), value_(std::move(value)) {}
- 
--  LinkedHashSetNode(LinkedHashSetNode&& other) noexcept
-+  LinkedHashSetNode(LinkedHashSetNode&& other)
-       : LinkedHashSetNodeBase(std::move(other)),
-         value_(std::move(other.value_)) {}
- 
-@@ -214,9 +214,9 @@
- 
-   LinkedHashSet();
-   LinkedHashSet(const LinkedHashSet&);
--  LinkedHashSet(LinkedHashSet&&) noexcept;
-+  LinkedHashSet(LinkedHashSet&&);
-   LinkedHashSet& operator=(const LinkedHashSet&);
--  LinkedHashSet& operator=(LinkedHashSet&&) noexcept;
-+  LinkedHashSet& operator=(LinkedHashSet&&);
- 
-   // Needs finalization. The anchor needs to unlink itself from the chain.
-   ~LinkedHashSet();
-@@ -748,7 +748,7 @@
- }
- 
- template <typename T, typename U, typename V, typename W>
--inline LinkedHashSet<T, U, V, W>::LinkedHashSet(LinkedHashSet&& other) noexcept
-+inline LinkedHashSet<T, U, V, W>::LinkedHashSet(LinkedHashSet&& other)
-     : anchor_() {
-   Swap(other);
- }
-@@ -763,7 +763,7 @@
- 
- template <typename T, typename U, typename V, typename W>
- inline LinkedHashSet<T, U, V, W>& LinkedHashSet<T, U, V, W>::operator=(
--    LinkedHashSet&& other) noexcept {
-+    LinkedHashSet&& other) {
-   Swap(other);
-   return *this;
- }
-diff --git a/third_party/blink/renderer/platform/wtf/list_hash_set.h b/third_party/blink/renderer/platform/wtf/list_hash_set.h
-index ead6a87..78bd279 100644
---- a/third_party/blink/renderer/platform/wtf/list_hash_set.h
-+++ b/third_party/blink/renderer/platform/wtf/list_hash_set.h
-@@ -145,9 +145,9 @@ class ListHashSet {
- 
-   ListHashSet();
-   ListHashSet(const ListHashSet&);
--  ListHashSet(ListHashSet&&) noexcept;
-+  ListHashSet(ListHashSet&&);
-   ListHashSet& operator=(const ListHashSet&);
--  ListHashSet& operator=(ListHashSet&&) noexcept;
-+  ListHashSet& operator=(ListHashSet&&);
-   ~ListHashSet();
- 
-   void Swap(ListHashSet&);
-@@ -780,8 +780,7 @@
- }
- 
- template <typename T, size_t inlineCapacity, typename U, typename V>
--inline ListHashSet<T, inlineCapacity, U, V>::ListHashSet(
--    ListHashSet&& other) noexcept
-+inline ListHashSet<T, inlineCapacity, U, V>::ListHashSet(ListHashSet&& other)
-     : head_(nullptr), tail_(nullptr) {
-   Swap(other);
- }
-@@ -796,7 +795,7 @@
- 
- template <typename T, size_t inlineCapacity, typename U, typename V>
- inline ListHashSet<T, inlineCapacity, U, V>&
--ListHashSet<T, inlineCapacity, U, V>::operator=(ListHashSet&& other) noexcept {
-+ListHashSet<T, inlineCapacity, U, V>::operator=(ListHashSet&& other) {
-   Swap(other);
-   return *this;
- }
-diff --git a/third_party/blink/renderer/platform/wtf/type_traits_test.cc b/third_party/blink/renderer/platform/wtf/type_traits_test.cc
-index 0930b73..1b45d55 100644
---- a/third_party/blink/renderer/platform/wtf/type_traits_test.cc
-+++ b/third_party/blink/renderer/platform/wtf/type_traits_test.cc
-@@ -158,7 +158,7 @@
-   STACK_ALLOCATED();
- 
-  public:
--  CopyAssignmentDeleted& operator=(CopyAssignmentDeleted&&) noexcept;
-+  CopyAssignmentDeleted& operator=(CopyAssignmentDeleted&&);
- 
-  private:
-   CopyAssignmentDeleted& operator=(const CopyAssignmentDeleted&) = delete;
-@@ -173,7 +173,7 @@
-   STACK_ALLOCATED();
- 
-  public:
--  CopyAssignmentPrivate& operator=(CopyAssignmentPrivate&&) noexcept;
-+  CopyAssignmentPrivate& operator=(CopyAssignmentPrivate&&);
- 
-  private:
-   CopyAssignmentPrivate& operator=(const CopyAssignmentPrivate&);
-@@ -188,7 +188,7 @@
-   STACK_ALLOCATED();
- 
-  public:
--  CopyAssignmentUndeclared& operator=(CopyAssignmentUndeclared&&) noexcept;
-+  CopyAssignmentUndeclared& operator=(CopyAssignmentUndeclared&&);
- };
- 
- static_assert(!std::is_copy_assignable<CopyAssignmentUndeclared>::value,
-diff --git a/third_party/blink/renderer/platform/wtf/typed_arrays/array_buffer_contents.h b/third_party/blink/renderer/platform/wtf/typed_arrays/array_buffer_contents.h
-index 3f44cd2..ee7c89a 100644
---- a/third_party/blink/renderer/platform/wtf/typed_arrays/array_buffer_contents.h
-+++ b/third_party/blink/renderer/platform/wtf/typed_arrays/array_buffer_contents.h
-@@ -68,7 +68,7 @@
-           deleter_(deleter),
-           deleter_info_(deleter_info) {}
-     // Move constructor
--    DataHandle(DataHandle&& other) noexcept { *this = std::move(other); }
-+    DataHandle(DataHandle&& other) { *this = std::move(other); }
-     ~DataHandle() {
-       if (!data_)
-         return;
-diff --git a/third_party/blink/renderer/platform/wtf/vector.h b/third_party/blink/renderer/platform/wtf/vector.h
-index 2783c2b..43a27f7 100644
---- a/third_party/blink/renderer/platform/wtf/vector.h
-+++ b/third_party/blink/renderer/platform/wtf/vector.h
-@@ -1018,8 +1018,8 @@
-   Vector& operator=(const Vector<T, otherCapacity, Allocator>&);
- 
-   // Moving.
--  Vector(Vector&&) noexcept;
--  Vector& operator=(Vector&&) noexcept;
-+  Vector(Vector&&);
-+  Vector& operator=(Vector&&);
- 
-   // Construct with an initializer list. You can do e.g.
-   //     Vector<int> v({1, 2, 3});
-@@ -1459,7 +1459,7 @@
- 
- template <typename T, wtf_size_t inlineCapacity, typename Allocator>
- Vector<T, inlineCapacity, Allocator>::Vector(
--    Vector<T, inlineCapacity, Allocator>&& other) noexcept {
-+    Vector<T, inlineCapacity, Allocator>&& other) {
-   size_ = 0;
-   // It's a little weird to implement a move constructor using swap but this
-   // way we don't have to add a move constructor to VectorBuffer.
-@@ -1468,7 +1468,7 @@
- 
- template <typename T, wtf_size_t inlineCapacity, typename Allocator>
- Vector<T, inlineCapacity, Allocator>& Vector<T, inlineCapacity, Allocator>::
--operator=(Vector<T, inlineCapacity, Allocator>&& other) noexcept {
-+operator=(Vector<T, inlineCapacity, Allocator>&& other) {
-   swap(other);
-   return *this;
- }
-diff --git a/third_party/blink/renderer/platform/wtf/vector_test.cc b/third_party/blink/renderer/platform/wtf/vector_test.cc
-index aa8a138..788cc2bb 100644
---- a/third_party/blink/renderer/platform/wtf/vector_test.cc
-+++ b/third_party/blink/renderer/platform/wtf/vector_test.cc
-@@ -420,8 +420,8 @@
- class MojoMoveOnlyType final {
-  public:
-   MojoMoveOnlyType();
--  MojoMoveOnlyType(MojoMoveOnlyType&&) noexcept;
--  MojoMoveOnlyType& operator=(MojoMoveOnlyType&&) noexcept;
-+  MojoMoveOnlyType(MojoMoveOnlyType&&);
-+  MojoMoveOnlyType& operator=(MojoMoveOnlyType&&);
-   ~MojoMoveOnlyType();
- 
-  private:
-diff --git a/third_party/blink/renderer/platform/wtf/wtf_test_helper.h b/third_party/blink/renderer/platform/wtf/wtf_test_helper.h
-index e797445..8f31365 100644
---- a/third_party/blink/renderer/platform/wtf/wtf_test_helper.h
-+++ b/third_party/blink/renderer/platform/wtf/wtf_test_helper.h
-@@ -36,9 +36,9 @@
-  public:
-   explicit MoveOnly(int i = 0) : i_(i) {}
- 
--  MoveOnly(MoveOnly&& other) noexcept : i_(other.i_) { other.i_ = 0; }
-+  MoveOnly(MoveOnly&& other) : i_(other.i_) { other.i_ = 0; }
- 
--  MoveOnly& operator=(MoveOnly&& other) noexcept {
-+  MoveOnly& operator=(MoveOnly&& other) {
-     if (this != &other) {
-       i_ = other.i_;
-       other.i_ = 0;
-@@ -62,12 +62,12 @@
- 
-   explicit MoveOnlyHashValue(int value = kEmpty, int id = 0)
-       : value_(value), id_(id) {}
--  MoveOnlyHashValue(MoveOnlyHashValue&& other) noexcept
-+  MoveOnlyHashValue(MoveOnlyHashValue&& other)
-       : value_(other.value_), id_(other.id_) {
-     other.value_ = kMovedOut;
-     other.id_ = 0;
-   }
--  MoveOnlyHashValue& operator=(MoveOnlyHashValue&& other) noexcept {
-+  MoveOnlyHashValue& operator=(MoveOnlyHashValue&& other) {
-     value_ = other.value_;
-     id_ = other.id_;
-     other.value_ = kMovedOut;
diff --git a/srcpkgs/electron7/files/patches/chromium-79-gcc-ambiguous-nodestructor.patch b/srcpkgs/electron7/files/patches/chromium-79-gcc-ambiguous-nodestructor.patch
deleted file mode 100644
index d43a091b9718..000000000000
--- a/srcpkgs/electron7/files/patches/chromium-79-gcc-ambiguous-nodestructor.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-From af77dc4014ead3d898fdc8a7a70fe5063ac9b102 Mon Sep 17 00:00:00 2001
-From: Jose Dapena Paz <jose.dapena@lge.com>
-Date: Fri, 25 Oct 2019 19:01:29 +0000
-Subject: [PATCH] GCC: use brace-initializer for DohUpgrade vector
-
-Constructing NoDestructor with parenthesis constructor is ambiguous
-in GCC. Use brace-initializer to avoid that problem. This fixes this
-build error:
-
-Bug: 819294
-Change-Id: I00dda42daa1794d11e022f26ac07f92e599d106d
-Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1879910
-Reviewed-by: Eric Orth <ericorth@chromium.org>
-Commit-Queue: José Dapena Paz <jose.dapena@lge.com>
-Cr-Commit-Position: refs/heads/master@{#709569}
----
-
-diff --git a/net/dns/dns_util.cc b/net/dns/dns_util.cc
-index 14997c4..637b6f2 100644
---- a/net/dns/dns_util.cc
-+++ b/net/dns/dns_util.cc
-@@ -144,7 +144,7 @@
-   // DohProviderId histogram suffix list in
-   // tools/metrics/histograms/histograms.xml.
-   static const base::NoDestructor<std::vector<DohUpgradeEntry>>
--      upgradable_servers({
-+      upgradable_servers{{
-           DohUpgradeEntry(
-               "CleanBrowsingAdult",
-               {"185.228.168.10", "185.228.169.11", "2a0d:2a00:1::1",
-@@ -215,7 +215,7 @@
-               {"9.9.9.9", "149.112.112.112", "2620:fe::fe", "2620:fe::9"},
-               {"dns.quad9.net", "dns9.quad9.net"} /* DoT hostname */,
-               {"https://dns.quad9.net/dns-query", true /* use_post */}),
--      });
-+      }};
-   return *upgradable_servers;
- }
- 
diff --git a/srcpkgs/electron7/files/patches/chromium-79-gcc-includes.patch b/srcpkgs/electron7/files/patches/chromium-79-gcc-includes.patch
deleted file mode 100644
index 05cb1e9b6345..000000000000
--- a/srcpkgs/electron7/files/patches/chromium-79-gcc-includes.patch
+++ /dev/null
@@ -1,102 +0,0 @@
-From cf2022b11cd3e28f1f3777b060fd509f665ff8e1 Mon Sep 17 00:00:00 2001
-From: Elvis Pranskevichus <elvis@magic.io>
-Date: Mon, 6 Jul 2020 10:21:27 -0700
-Subject: [PATCH] GCC 10 Fixes
-
----
- base/trace_event/trace_event_memory_overhead.h           | 1 +
- third_party/angle/include/platform/Platform.h            | 1 +
- third_party/perfetto/include/perfetto/base/task_runner.h | 2 ++
- third_party/webrtc/call/rtx_receive_stream.h             | 1 +
- 4 files changed, 5 insertions(+)
-
-diff --git a/base/trace_event/trace_event_memory_overhead.h b/base/trace_event/trace_event_memory_overhead.h
-index 69468d4..e10a3ec 100644
---- a/base/trace_event/trace_event_memory_overhead.h
-+++ b/base/trace_event/trace_event_memory_overhead.h
-@@ -8,6 +8,7 @@
- #include <stddef.h>
- #include <stdint.h>
- 
-+#include <string>
- #include <unordered_map>
- 
- #include "base/base_export.h"
-diff --git a/third_party/angle/include/platform/Platform.h b/third_party/angle/include/platform/Platform.h
-index cea6070..0fbd64f 100644
---- a/third_party/angle/include/platform/Platform.h
-+++ b/third_party/angle/include/platform/Platform.h
-@@ -9,6 +9,7 @@
- #ifndef ANGLE_PLATFORM_H
- #define ANGLE_PLATFORM_H
- 
-+#include <stddef.h>
- #include <stdint.h>
- #include <array>
- 
-diff --git a/third_party/perfetto/include/perfetto/base/task_runner.h b/third_party/perfetto/include/perfetto/base/task_runner.h
-index cf60401..040aab2 100644
---- a/third_party/perfetto/include/perfetto/base/task_runner.h
-+++ b/third_party/perfetto/include/perfetto/base/task_runner.h
-@@ -17,6 +17,8 @@
- #ifndef INCLUDE_PERFETTO_BASE_TASK_RUNNER_H_
- #define INCLUDE_PERFETTO_BASE_TASK_RUNNER_H_
- 
-+#include <stdint.h>
-+
- #include <functional>
- 
- #include "perfetto/base/export.h"
-diff --git a/third_party/webrtc/call/rtx_receive_stream.h b/third_party/webrtc/call/rtx_receive_stream.h
-index 8ffa440..fb2f9f4 100644
---- a/third_party/webrtc/call/rtx_receive_stream.h
-+++ b/third_party/webrtc/call/rtx_receive_stream.h
-@@ -11,6 +11,8 @@
- #ifndef CALL_RTX_RECEIVE_STREAM_H_
- #define CALL_RTX_RECEIVE_STREAM_H_
-
-+#include <stdint.h>
-+
- #include <map>
-
- #include "call/rtp_packet_sink_interface.h"
-diff --git a/third_party/webrtc/modules/audio_processing/aec3/clockdrift_detector.h b/third_party/webrtc/modules/audio_processing/aec3/clockdrift_detector.h
-index 22528c9..2ba90bb 100644
---- a/third_party/webrtc/modules/audio_processing/aec3/clockdrift_detector.h
-+++ b/third_party/webrtc/modules/audio_processing/aec3/clockdrift_detector.h
-@@ -11,6 +11,8 @@
- #ifndef MODULES_AUDIO_PROCESSING_AEC3_CLOCKDRIFT_DETECTOR_H_
- #define MODULES_AUDIO_PROCESSING_AEC3_CLOCKDRIFT_DETECTOR_H_
-
-+#include <stddef.h>
-+
- #include <array>
-
- namespace webrtc {
-diff --git a/media/cdm/supported_cdm_versions.h b/media/cdm/supported_cdm_versions.h
-index 3f220da..c54e3bb 100644
---- a/media/cdm/supported_cdm_versions.h
-+++ b/media/cdm/supported_cdm_versions.h
-@@ -6,6 +6,7 @@
- #define MEDIA_CDM_SUPPORTED_CDM_VERSIONS_H_
-
- #include <array>
-+#include <cstddef>
-
- #include "media/base/media_export.h"
- #include "media/cdm/api/content_decryption_module.h"
-diff --git a/third_party/webrtc/modules/video_coding/decoding_state.h b/third_party/webrtc/modules/video_coding/decoding_state.h
-index b87fb2d..ec97294 100644
---- a/third_party/webrtc/modules/video_coding/decoding_state.h
-+++ b/third_party/webrtc/modules/video_coding/decoding_state.h
-@@ -11,6 +11,7 @@
- #ifndef MODULES_VIDEO_CODING_DECODING_STATE_H_
- #define MODULES_VIDEO_CODING_DECODING_STATE_H_
-
-+#include <cstdint>
- #include <map>
- #include <set>
- #include <vector>
--- 
-2.26.2
-
diff --git a/srcpkgs/electron7/files/patches/chromium-79-gcc-status-enum.patch b/srcpkgs/electron7/files/patches/chromium-79-gcc-status-enum.patch
deleted file mode 100644
index ef57ce774a96..000000000000
--- a/srcpkgs/electron7/files/patches/chromium-79-gcc-status-enum.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From d48486507d6b4ed130696721a758e2a231066cf7 Mon Sep 17 00:00:00 2001
-From: Elvis Pranskevichus <elvis@magic.io>
-Date: Mon, 6 Jul 2020 16:33:14 -0700
-Subject: [PATCH] GCC-X11-Success-enum
-
----
- components/viz/host/host_display_client.h | 7 +++++++
- 1 file changed, 7 insertions(+)
-
-diff --git a/components/viz/host/host_display_client.h b/components/viz/host/host_display_client.h
-index 72a807e..257bc86 100644
---- a/components/viz/host/host_display_client.h
-+++ b/components/viz/host/host_display_client.h
-@@ -13,7 +13,14 @@
- #include "build/build_config.h"
- #include "components/viz/host/viz_host_export.h"
- #include "mojo/public/cpp/bindings/binding.h"
-+#ifdef Success
-+#undef Success
-+#define __X11_SUCCESS
-+#endif
- #include "services/viz/privileged/mojom/compositing/display_private.mojom.h"
-+#ifdef __X11_SUCCESS
-+#define Success 0
-+#endif
- #include "ui/gfx/native_widget_types.h"
- 
- namespace viz {
--- 
-2.26.2
-
diff --git a/srcpkgs/electron7/files/patches/chromium-79-icu-65.patch b/srcpkgs/electron7/files/patches/chromium-79-icu-65.patch
deleted file mode 100644
index e0732b6ace24..000000000000
--- a/srcpkgs/electron7/files/patches/chromium-79-icu-65.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/third_party/blink/renderer/core/dom/document.cc b/third_party/blink/renderer/core/dom/document.cc
-index 5a62770..1fae2aa 100644
---- a/third_party/blink/renderer/core/dom/document.cc
-+++ b/third_party/blink/renderer/core/dom/document.cc
-@@ -6192,7 +6192,7 @@ static ParseQualifiedNameResult ParseQualifiedNameInternal(
- 
-   for (unsigned i = 0; i < length;) {
-     UChar32 c;
--    U16_NEXT(characters, i, length, c)
-+    U16_NEXT(characters, i, length, c);
-     if (c == ':') {
-       if (saw_colon)
-         return ParseQualifiedNameResult(kQNMultipleColons);
diff --git a/srcpkgs/electron7/files/patches/chromium-79-icu-67.patch b/srcpkgs/electron7/files/patches/chromium-79-icu-67.patch
deleted file mode 100644
index c18b3ed5c511..000000000000
--- a/srcpkgs/electron7/files/patches/chromium-79-icu-67.patch
+++ /dev/null
@@ -1,167 +0,0 @@
-From 64b8ee6fc65bcce07bcaa4bba5f61f29c5495253 Mon Sep 17 00:00:00 2001
-From: Frank Tang <ftang@chromium.org>
-Date: Fri, 3 Apr 2020 23:13:54 -0700
-Subject: [PATCH] [intl] Remove soon-to-be removed getAllFieldPositions
-
-Needed to land ICU67.1 soon.
-
-Bug: v8:10393
-Change-Id: I3c7737ca600d6ccfdc46ffaddfb318ce60bc7618
-Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2136489
-Reviewed-by: Jakob Kummerow <jkummerow@chromium.org>
-Commit-Queue: Frank Tang <ftang@chromium.org>
-Cr-Commit-Position: refs/heads/master@{#67027}
----
- v8/src/objects/js-number-format.cc | 76 +++++++++++++++++----------------
- 1 file changed, 40 insertions(+), 36 deletions(-)
-
-diff --git a/v8/src/objects/js-number-format.cc b/v8/src/objects/js-number-format.cc
-index ff564975d6..ad8e173b59 100644
---- a/v8/src/objects/js-number-format.cc
-+++ b/v8/src/objects/js-number-format.cc
-@@ -1257,42 +1257,33 @@ MaybeHandle<JSNumberFormat> JSNumberFormat::New(Isolate* isolate,
- }
-
- namespace {
--Maybe<icu::UnicodeString> IcuFormatNumber(
-+Maybe<bool> IcuFormatNumber(
-     Isolate* isolate,
-     const icu::number::LocalizedNumberFormatter& number_format,
--    Handle<Object> numeric_obj, icu::FieldPositionIterator* fp_iter) {
-+    Handle<Object> numeric_obj, icu::number::FormattedNumber* formatted) {
-   // If it is BigInt, handle it differently.
-   UErrorCode status = U_ZERO_ERROR;
--  icu::number::FormattedNumber formatted;
-   if (numeric_obj->IsBigInt()) {
-     Handle<BigInt> big_int = Handle<BigInt>::cast(numeric_obj);
-     Handle<String> big_int_string;
-     ASSIGN_RETURN_ON_EXCEPTION_VALUE(isolate, big_int_string,
-                                      BigInt::ToString(isolate, big_int),
--                                     Nothing<icu::UnicodeString>());
--    formatted = number_format.formatDecimal(
-+                                     Nothing<bool>());
-+    *formatted = number_format.formatDecimal(
-         {big_int_string->ToCString().get(), big_int_string->length()}, status);
-   } else {
--    double number = numeric_obj->Number();
--    formatted = number_format.formatDouble(number, status);
-+    double number = numeric_obj->IsNaN()
-+                        ? std::numeric_limits<double>::quiet_NaN()
-+                        : numeric_obj->Number();
-+    *formatted = number_format.formatDouble(number, status);
-   }
-   if (U_FAILURE(status)) {
-     // This happen because of icu data trimming trim out "unit".
-     // See https://bugs.chromium.org/p/v8/issues/detail?id=8641
--    THROW_NEW_ERROR_RETURN_VALUE(isolate,
--                                 NewTypeError(MessageTemplate::kIcuError),
--                                 Nothing<icu::UnicodeString>());
--  }
--  if (fp_iter) {
--    formatted.getAllFieldPositions(*fp_iter, status);
-+    THROW_NEW_ERROR_RETURN_VALUE(
-+        isolate, NewTypeError(MessageTemplate::kIcuError), Nothing<bool>());
-   }
--  icu::UnicodeString result = formatted.toString(status);
--  if (U_FAILURE(status)) {
--    THROW_NEW_ERROR_RETURN_VALUE(isolate,
--                                 NewTypeError(MessageTemplate::kIcuError),
--                                 Nothing<icu::UnicodeString>());
--  }
--  return Just(result);
-+  return Just(true);
- }
-
- }  // namespace
-@@ -1303,10 +1294,16 @@ MaybeHandle<String> JSNumberFormat::FormatNumeric(
-     Handle<Object> numeric_obj) {
-   DCHECK(numeric_obj->IsNumeric());
-
--  Maybe<icu::UnicodeString> maybe_format =
--      IcuFormatNumber(isolate, number_format, numeric_obj, nullptr);
-+  icu::number::FormattedNumber formatted;
-+  Maybe<bool> maybe_format =
-+      IcuFormatNumber(isolate, number_format, numeric_obj, &formatted);
-   MAYBE_RETURN(maybe_format, Handle<String>());
--  return Intl::ToString(isolate, maybe_format.FromJust());
-+  UErrorCode status = U_ZERO_ERROR;
-+  icu::UnicodeString result = formatted.toString(status);
-+  if (U_FAILURE(status)) {
-+    THROW_NEW_ERROR(isolate, NewTypeError(MessageTemplate::kIcuError), String);
-+  }
-+  return Intl::ToString(isolate, result);
- }
-
- namespace {
-@@ -1419,12 +1416,18 @@ std::vector<NumberFormatSpan> FlattenRegionsToParts(
- }
-
- namespace {
--Maybe<int> ConstructParts(Isolate* isolate, const icu::UnicodeString& formatted,
--                          icu::FieldPositionIterator* fp_iter,
-+Maybe<int> ConstructParts(Isolate* isolate,
-+                          icu::number::FormattedNumber* formatted,
-                           Handle<JSArray> result, int start_index,
-                           Handle<Object> numeric_obj, bool style_is_unit) {
-+  UErrorCode status = U_ZERO_ERROR;
-+  icu::UnicodeString formatted_text = formatted->toString(status);
-+  if (U_FAILURE(status)) {
-+    THROW_NEW_ERROR_RETURN_VALUE(
-+        isolate, NewTypeError(MessageTemplate::kIcuError), Nothing<int>());
-+  }
-   DCHECK(numeric_obj->IsNumeric());
--  int32_t length = formatted.length();
-+  int32_t length = formatted_text.length();
-   int index = start_index;
-   if (length == 0) return Just(index);
-
-@@ -1433,13 +1436,14 @@ Maybe<int> ConstructParts(Isolate* isolate, const icu::UnicodeString& formatted,
-   // other region covers some part of the formatted string. It's possible
-   // there's another field with exactly the same begin and end as this backdrop,
-   // in which case the backdrop's field_id of -1 will give it lower priority.
--  regions.push_back(NumberFormatSpan(-1, 0, formatted.length()));
-+  regions.push_back(NumberFormatSpan(-1, 0, formatted_text.length()));
-
-   {
--    icu::FieldPosition fp;
--    while (fp_iter->next(fp)) {
--      regions.push_back(NumberFormatSpan(fp.getField(), fp.getBeginIndex(),
--                                         fp.getEndIndex()));
-+    icu::ConstrainedFieldPosition cfp;
-+    cfp.constrainCategory(UFIELD_CATEGORY_NUMBER);
-+    while (formatted->nextPosition(cfp, status)) {
-+      regions.push_back(
-+          NumberFormatSpan(cfp.getField(), cfp.getStart(), cfp.getLimit()));
-     }
-   }
-
-@@ -1461,7 +1465,7 @@ Maybe<int> ConstructParts(Isolate* isolate, const icu::UnicodeString& formatted,
-     Handle<String> substring;
-     ASSIGN_RETURN_ON_EXCEPTION_VALUE(
-         isolate, substring,
--        Intl::ToString(isolate, formatted, part.begin_pos, part.end_pos),
-+        Intl::ToString(isolate, formatted_text, part.begin_pos, part.end_pos),
-         Nothing<int>());
-     Intl::AddElement(isolate, result, index, field_type_string, substring);
-     ++index;
-@@ -1481,14 +1485,14 @@ MaybeHandle<JSArray> JSNumberFormat::FormatToParts(
-       number_format->icu_number_formatter().raw();
-   CHECK_NOT_NULL(fmt);
-
--  icu::FieldPositionIterator fp_iter;
--  Maybe<icu::UnicodeString> maybe_format =
--      IcuFormatNumber(isolate, *fmt, numeric_obj, &fp_iter);
-+  icu::number::FormattedNumber formatted;
-+  Maybe<bool> maybe_format =
-+      IcuFormatNumber(isolate, *fmt, numeric_obj, &formatted);
-   MAYBE_RETURN(maybe_format, Handle<JSArray>());
-
-   Handle<JSArray> result = factory->NewJSArray(0);
-   Maybe<int> maybe_format_to_parts = ConstructParts(
--      isolate, maybe_format.FromJust(), &fp_iter, result, 0, numeric_obj,
-+      isolate, &formatted, result, 0, numeric_obj,
-       number_format->style() == JSNumberFormat::Style::UNIT);
-   MAYBE_RETURN(maybe_format_to_parts, Handle<JSArray>());
-
---
-2.26.2
diff --git a/srcpkgs/electron7/files/patches/chromium-chromium_atk_optional.patch.patch b/srcpkgs/electron7/files/patches/chromium-chromium_atk_optional.patch.patch
deleted file mode 100644
index 27b56251ec38..000000000000
--- a/srcpkgs/electron7/files/patches/chromium-chromium_atk_optional.patch.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-diff --git a/build/config/ui.gni b/build/config/ui.gni
-index 547b42f..966b00c 100644
---- a/build/config/ui.gni
-+++ b/build/config/ui.gni
-@@ -51,8 +51,10 @@ if (use_ozone) {
-   use_glib = false
- }
-
--# Whether to use atk, the Accessibility ToolKit library
--use_atk = is_desktop_linux && use_x11
-+declare_args() {
-+  # Whether to use atk, the Accessibility ToolKit library
-+  use_atk = is_desktop_linux && use_x11
-+}
- # =============================================
- #   PLEASE DO NOT ADD MORE FLAGS TO THIS FILE
- # =============================================
diff --git a/srcpkgs/electron7/files/patches/chromium-clang10_glslang.patch.patch b/srcpkgs/electron7/files/patches/chromium-clang10_glslang.patch.patch
deleted file mode 100644
index 91ef84ca7e61..000000000000
--- a/srcpkgs/electron7/files/patches/chromium-clang10_glslang.patch.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From 24b3e8384e93f3e73b6aa14ea00a30574112f9ba Mon Sep 17 00:00:00 2001
-From: Reid Kleckner <rnk@google.com>
-Date: Wed, 4 Dec 2019 14:09:03 -0800
-Subject: [PATCH] Remove glslang::pool_allocator::setAllocator
-
-TPoolAllocator is not copy assignable, so this setter could never have
-been used. After a recent change (878a24ee2), new versions of Clang
-reject this code outright.
----
- glslang/Include/PoolAlloc.h | 1 -
- 1 file changed, 1 deletion(-)
-
-diff --git a/glslang/Include/PoolAlloc.h b/glslang/Include/PoolAlloc.h
-index 0e237a6a2..b8eccb883 100644
---- a/third_party/glslang/src/glslang/Include/PoolAlloc.h
-+++ b/third_party/glslang/src/glslang/Include/PoolAlloc.h
-@@ -304,7 +304,6 @@ class pool_allocator {
-     size_type max_size() const { return static_cast<size_type>(-1) / sizeof(T); }
-     size_type max_size(int size) const { return static_cast<size_type>(-1) / size; }
- 
--    void setAllocator(TPoolAllocator* a) { allocator = *a; }
-     TPoolAllocator& getAllocator() const { return allocator; }
- 
- protected:
-
diff --git a/srcpkgs/electron7/files/patches/chromium-compiler-r10.patch b/srcpkgs/electron7/files/patches/chromium-compiler-r10.patch
deleted file mode 100644
index f2ecdc3f32b4..000000000000
--- a/srcpkgs/electron7/files/patches/chromium-compiler-r10.patch
+++ /dev/null
@@ -1,185 +0,0 @@
-From a1207cc75454e653030716948d27ec27412f6fe8 Mon Sep 17 00:00:00 2001
-From: Mike Gilbert <floppym@gentoo.org>
-Date: Sat, 16 Jun 2019 15:43:27 +0100
-Subject: [PATCH] Disable various compiler configs
-
----
- build/config/compiler/BUILD.gn | 64 +++++++++++++---------------------
- 1 file changed, 25 insertions(+), 39 deletions(-)
-
-diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
-index a3f21b7..0a7bec6 100644
---- a/build/config/compiler/BUILD.gn
-+++ b/build/config/compiler/BUILD.gn
-@@ -230,8 +230,6 @@ config("compiler") {
- 
-   configs += [
-     # See the definitions below.
--    ":clang_revision",
--    ":compiler_cpu_abi",
-     ":compiler_codegen",
-     ":compiler_deterministic",
-   ]
-@@ -471,20 +469,6 @@ config("compiler") {
-     }
-   }
- 
--  if (is_clang && !is_nacl && !use_xcode_clang) {
--    cflags += [ "-fcrash-diagnostics-dir=" +
--                rebase_path("//tools/clang/crashreports", root_build_dir) ]
--
--    cflags += [
--      # TODO(hans): Remove this once Clang generates better optimized debug info
--      # by default. https://crbug.com/765793
--      "-Xclang",
--      "-mllvm",
--      "-Xclang",
--      "-instcombine-lower-dbg-declare=0",
--    ]
--  }
--
-   # C11/C++11 compiler flags setup.
-   # ---------------------------
-   if (is_linux || is_android || (is_nacl && is_clang) || current_os == "aix") {
-@@ -1431,6 +1415,12 @@ config("default_warnings") {
-         "-Wno-narrowing",
-       ]
- 
-+      # -Wno-class-memaccess warns about hash table and vector in blink.
-+      # But the violation is intentional.
-+      if (!is_nacl) {
-+        cflags_cc += [ "-Wno-class-memaccess" ]
-+      }
-+
-       # -Wunused-local-typedefs is broken in gcc,
-       # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63872
-       cflags += [ "-Wno-unused-local-typedefs" ]
-@@ -1525,7 +1515,7 @@ config("chromium_code") {
-       defines = [ "_HAS_NODISCARD" ]
-     }
-   } else {
--    cflags = [ "-Wall" ]
-+    cflags = []
-     if (treat_warnings_as_errors) {
-       cflags += [ "-Werror" ]
- 
-@@ -1534,10 +1524,6 @@ config("chromium_code") {
-       # well.
-       ldflags = [ "-Werror" ]
-     }
--    if (is_clang) {
--      # Enable extra warnings for chromium_code when we control the compiler.
--      cflags += [ "-Wextra" ]
--    }
- 
-     # In Chromium code, we define __STDC_foo_MACROS in order to get the
-     # C99 macros on Mac and Linux.
-@@ -1546,15 +1532,6 @@ config("chromium_code") {
-       "__STDC_FORMAT_MACROS",
-     ]
- 
--    if (!is_debug && !using_sanitizer && current_cpu != "s390x" &&
--        current_cpu != "s390" && current_cpu != "ppc64" &&
--        current_cpu != "mips" && current_cpu != "mips64") {
--      # Non-chromium code is not guaranteed to compile cleanly with
--      # _FORTIFY_SOURCE. Also, fortified build may fail when optimizations are
--      # disabled, so only do that for Release build.
--      defines += [ "_FORTIFY_SOURCE=2" ]
--    }
--
-     if (is_mac) {
-       cflags_objc = [ "-Wobjc-missing-property-synthesis" ]
-       cflags_objcc = [ "-Wobjc-missing-property-synthesis" ]
-@@ -1943,7 +1920,8 @@ config("default_stack_frames") {
- }
- 
- # Default "optimization on" config.
--config("optimize") {
-+config("optimize") { }
-+config("xoptimize") {
-   if (is_win) {
-     # TODO(thakis): Remove is_clang here, https://crbug.com/598772
-     if (is_official_build && full_wpo_on_official && !is_clang) {
-@@ -1977,7 +1955,8 @@ config("optimize") {
- }
- 
- # Same config as 'optimize' but without the WPO flag.
--config("optimize_no_wpo") {
-+config("optimize_no_wpo") { }
-+config("xoptimize_no_wpo") {
-   if (is_win) {
-     # Favor size over speed, /O1 must be before the common flags. The GYP
-     # build also specifies /Os and /GF but these are implied by /O1.
-@@ -2000,7 +1979,8 @@ config("optimize_no_wpo") {
- }
- 
- # Turn off optimizations.
--config("no_optimize") {
-+config("no_optimize") { }
-+config("xno_optimize") {
-   if (is_win) {
-     cflags = [
-       "/Od",  # Disable optimization.
-@@ -2028,7 +2008,8 @@ config("no_optimize") {
- # Turns up the optimization level. On Windows, this implies whole program
- # optimization and link-time code generation which is very expensive and should
- # be used sparingly.
--config("optimize_max") {
-+config("optimize_max") { }
-+config("xoptimize_max") {
-   if (is_nacl && is_nacl_irt) {
-     # The NaCl IRT is a special case and always wants its own config.
-     # Various components do:
-@@ -2075,7 +2056,8 @@ config("optimize_max") {
- #
- # TODO(crbug.com/621335) - rework how all of these configs are related
- # so that we don't need this disclaimer.
--config("optimize_speed") {
-+config("optimize_speed") { }
-+config("xoptimize_speed") {
-   if (is_nacl && is_nacl_irt) {
-     # The NaCl IRT is a special case and always wants its own config.
-     # Various components do:
-@@ -2113,7 +2095,8 @@ config("optimize_speed") {
-   }
- }
- 
--config("optimize_fuzzing") {
-+config("optimize_fuzzing") { }
-+config("xoptimize_fuzzing") {
-   cflags = [ "-O1" ] + common_optimize_on_cflags
-   ldflags = common_optimize_on_ldflags
-   visibility = [ ":default_optimization" ]
-@@ -2215,7 +2198,8 @@ config("win_pdbaltpath") {
- }
- 
- # Full symbols.
--config("symbols") {
-+config("symbols") { }
-+config("xsymbols") {
-   if (is_win) {
-     if (use_goma || is_clang) {
-       # Note that with VC++ this requires is_win_fastlink, enforced elsewhere.
-@@ -2325,7 +2309,8 @@ config("symbols") {
- # Minimal symbols.
- # This config guarantees to hold symbol for stack trace which are shown to user
- # when crash happens in unittests running on buildbot.
--config("minimal_symbols") {
-+config("minimal_symbols") { }
-+config("xminimal_symbols") {
-   if (is_win) {
-     # Linker symbols for backtraces only.
-     cflags = []
-@@ -2382,7 +2367,8 @@ config("minimal_symbols") {
- }
- 
- # No symbols.
--config("no_symbols") {
-+config("no_symbols") { }
-+config("xno_symbols") {
-   if (!is_win) {
-     cflags = [ "-g0" ]
-     asmflags = cflags
--- 
-2.21.0
-
diff --git a/srcpkgs/electron7/files/patches/chromium-fix-char_traits.patch b/srcpkgs/electron7/files/patches/chromium-fix-char_traits.patch
deleted file mode 100644
index 4cb9503a93f4..000000000000
--- a/srcpkgs/electron7/files/patches/chromium-fix-char_traits.patch
+++ /dev/null
@@ -1,14 +0,0 @@
---- a/base/strings/char_traits.h
-+++ b/base/strings/char_traits.h
-@@ -67,9 +67,9 @@
-   return __builtin_memcmp(s1, s2, n);
- #else
-   for (; n; --n, ++s1, ++s2) {
--    if (*s1 < *s2)
-+    if ((unsigned char)*s1 < (unsigned char)*s2)
-       return -1;
--    if (*s1 > *s2)
-+    if ((unsigned char)*s1 > (unsigned char)*s2)
-       return 1;
-   }
-   return 0;
diff --git a/srcpkgs/electron7/files/patches/chromium-fix-commandline-include.patch b/srcpkgs/electron7/files/patches/chromium-fix-commandline-include.patch
deleted file mode 100644
index 15da794cbba7..000000000000
--- a/srcpkgs/electron7/files/patches/chromium-fix-commandline-include.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-Electron patches the file to use base::CommandLine, but forgot to include
-the necessary header for it.
---- a/third_party/blink/renderer/platform/graphics/canvas_color_params.cc.orig	2020-04-27 13:49:41.408592941 +0200
-+++ b/third_party/blink/renderer/platform/graphics/canvas_color_params.cc	2020-04-27 13:49:53.841071830 +0200
-@@ -4,6 +4,7 @@
- 
- #include "third_party/blink/renderer/platform/graphics/canvas_color_params.h"
- 
-+#include "base/command_line.h"
- #include "cc/paint/skia_paint_canvas.h"
- #include "components/viz/common/resources/resource_format_utils.h"
- #include "third_party/blink/renderer/platform/runtime_enabled_features.h"
---- a/third_party/blink/public/platform/web_rtc_rtp_source.h.orig	2020-04-27 14:16:05.323085814 +0200
-+++ b/third_party/blink/public/platform/web_rtc_rtp_source.h	2020-04-27 14:16:17.279480838 +0200
-@@ -7,6 +7,7 @@
- 
- #include "base/optional.h"
- #include "third_party/blink/public/platform/web_common.h"
-+#include <memory>
- 
- namespace base {
- class TimeTicks;
---- a/chrome/browser/chrome_content_browser_client.cc.orig	2020-04-27 16:16:27.291208394 +0200
-+++ b/chrome/browser/chrome_content_browser_client.cc	2020-04-27 16:16:49.283984217 +0200
-@@ -2896,6 +2896,8 @@
-     const std::string& frame_name,
-     WindowOpenDisposition disposition,
-     const blink::mojom::WindowFeatures& features,
-+    const std::vector<std::string>& additional_features,
-+    const scoped_refptr<network::ResourceRequestBody>& body,
-     bool user_gesture,
-     bool opener_suppressed,
-     bool* no_javascript_access) {
---- a/chrome/browser/chrome_content_browser_client.h.orig	2020-04-27 16:15:41.932359753 +0200
-+++ b/chrome/browser/chrome_content_browser_client.h	2020-04-27 16:16:09.798318845 +0200
-@@ -303,6 +303,8 @@
-                        const std::string& frame_name,
-                        WindowOpenDisposition disposition,
-                        const blink::mojom::WindowFeatures& features,
-+                       const std::vector<std::string>& additional_features,
-+                       const scoped_refptr<network::ResourceRequestBody>& body,
-                        bool user_gesture,
-                        bool opener_suppressed,
-                        bool* no_javascript_access) override;
diff --git a/srcpkgs/electron7/files/patches/chromium-fix-sucess-definition.patch b/srcpkgs/electron7/files/patches/chromium-fix-sucess-definition.patch
deleted file mode 100644
index 4dc024693e68..000000000000
--- a/srcpkgs/electron7/files/patches/chromium-fix-sucess-definition.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-X11.h defines a macro called "Success", which is 0. This breaks an enum
-that is generated in Chromium that has a member "Success", so undefine
-it.
---- a/chrome/browser/ui/libgtkui/select_file_dialog_impl_kde.cc.orig	2020-04-27 18:42:15.457297544 +0200
-+++ b/chrome/browser/ui/libgtkui/select_file_dialog_impl_kde.cc	2020-04-27 18:42:21.760454304 +0200
-@@ -24,7 +24,9 @@
- #include "base/task/post_task.h"
- #include "base/task/task_traits.h"
- #include "base/threading/thread_restrictions.h"
-+#undef Success
- #include "chrome/browser/ui/libgtkui/select_file_dialog_impl.h"
-+#define Success 0
- #include "content/public/browser/browser_thread.h"
- #include "ui/aura/window_tree_host.h"
- #include "ui/base/l10n/l10n_util.h"
diff --git a/srcpkgs/electron7/files/patches/chromium-gcc-lto.patch b/srcpkgs/electron7/files/patches/chromium-gcc-lto.patch
deleted file mode 100644
index 1e09cb8044c2..000000000000
--- a/srcpkgs/electron7/files/patches/chromium-gcc-lto.patch
+++ /dev/null
@@ -1,131 +0,0 @@
-From 15d9b2515631cedcbd427e4c6de2dd4e7a0bfa36 Mon Sep 17 00:00:00 2001
-From: Elvis Pranskevichus <elvis@magic.io>
-Date: Sat, 4 Jan 2020 16:03:03 -0500
-Subject: [PATCH] GCC LTO Support
-
----
- build/config/BUILD.gn              |  6 +++++-
- build/config/compiler/BUILD.gn     | 30 ++++++++++++++++++++++--------
- build/config/compiler/compiler.gni |  2 +-
- sandbox/linux/BUILD.gn             |  3 +++
- 4 files changed, 31 insertions(+), 10 deletions(-)
-
-diff --git a/build/config/BUILD.gn b/build/config/BUILD.gn
-index 514ab7b..f8d36fe 100644
---- a/build/config/BUILD.gn
-+++ b/build/config/BUILD.gn
-@@ -260,9 +260,13 @@ config("default_libs") {
-   } else if (is_linux) {
-     libs = [
-       "dl",
--      "pthread",
-       "rt",
-     ]
-+    ldflags = [
-+      "-Wl,--no-as-needed",
-+      "-lpthread",
-+      "-Wl,--as-needed"
-+    ]
-   }
- }
- 
-diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
-index a3f21b7..48747f7 100644
---- a/build/config/compiler/BUILD.gn
-+++ b/build/config/compiler/BUILD.gn
-@@ -558,12 +558,13 @@ config("compiler") {
-   # TODO(pcc): Make this conditional on is_official_build rather than on gn
-   # flags for specific features.
-   if (!is_debug && use_thin_lto && is_a_target_toolchain) {
--    assert(use_lld || target_os == "chromeos",
--           "gold plugin only supported with ChromeOS")
--
--    cflags += [ "-flto=thin" ]
-+    if (is_clang) {
-+      cflags += [ "-flto=thin" ]
-+    } else {
-+      cflags += [ "-flto=2", "-fno-fat-lto-objects", "-fuse-linker-plugin" ]
-+    }
- 
--    if (target_os != "chromeos") {
-+    if (target_os != "chromeos" && is_clang) {
-       cflags += [ "-fsplit-lto-unit" ]
-     }
- 
-@@ -586,7 +587,11 @@ config("compiler") {
-         "-mllvm:-import-instr-limit=10",
-       ]
-     } else {
--      ldflags += [ "-flto=thin" ]
-+      if (is_clang) {
-+        ldflags += [ "-flto=thin" ]
-+      } else {
-+        ldflags += [ "-flto=8", "-fno-fat-lto-objects", "-fuse-linker-plugin" ]
-+      }
- 
-       # Limit the parallelism to avoid too aggressive competition between
-       # linker jobs. This is still suboptimal to a potential dynamic
-@@ -607,7 +612,7 @@ config("compiler") {
-             "-Wl,--thinlto-cache-policy,$cache_policy",
-           ]
-         }
--      } else {
-+      } else if (is_clang) {
-         ldflags += [ "-Wl,-plugin-opt,jobs=8" ]
-       }
- 
-@@ -630,7 +635,7 @@ config("compiler") {
- 
-     # TODO(pcc): Re-enable this flag on Android. This will require libc++ to be
-     # built with ThinLTO (see https://crbug.com/767901) as well as the GVR shim.
--    if (!is_android) {
-+    if (!is_android && is_clang) {
-       cflags += [ "-fwhole-program-vtables" ]
-       if (!is_win) {
-         ldflags += [ "-fwhole-program-vtables" ]
-@@ -697,6 +702,15 @@ config("compiler") {
-   }
- }
- 
-+config("compiler_no_lto") {
-+  cflags = []
-+  ldflags = []
-+  if (!is_debug && use_thin_lto && is_a_target_toolchain) {
-+    cflags += ["-fno-lto"]
-+    ldflags += ["-fno-lto"]
-+  }
-+}
-+
- # This provides the basic options to select the target CPU and ABI.
- # It is factored out of "compiler" so that special cases can use this
- # without using everything that "compiler" brings in.  Options that
-diff --git a/build/config/compiler/compiler.gni b/build/config/compiler/compiler.gni
-index c351d6b..e567372 100644
---- a/build/config/compiler/compiler.gni
-+++ b/build/config/compiler/compiler.gni
-@@ -57,7 +57,7 @@ declare_args() {
- 
-   # Enables support for ThinLTO, which links 3x-10x faster than full LTO. See
-   # also http://blog.llvm.org/2016/06/thinlto-scalable-and-incremental-lto.html
--  use_thin_lto = is_cfi || (is_android && is_official_build)
-+  use_thin_lto = false
- 
-   # Tell VS to create a PDB that references information in .obj files rather
-   # than copying it all. This should improve linker performance. mspdbcmf.exe
-diff --git a/sandbox/linux/BUILD.gn b/sandbox/linux/BUILD.gn
-index b00a88c..e4615c0 100644
---- a/sandbox/linux/BUILD.gn
-+++ b/sandbox/linux/BUILD.gn
-@@ -256,6 +256,9 @@ component("seccomp_bpf") {
-     "//base",
-     "//base/third_party/dynamic_annotations",
-   ]
-+  configs += [
-+    "//build/config/compiler:compiler_no_lto"
-+  ]
- 
-   if (is_nacl_nonsfi) {
-     cflags = [ "-fgnu-inline-asm" ]
--- 
-2.24.1
-
diff --git a/srcpkgs/electron7/files/patches/chromium-gcc-shared.patch b/srcpkgs/electron7/files/patches/chromium-gcc-shared.patch
deleted file mode 100644
index 098b68322422..000000000000
--- a/srcpkgs/electron7/files/patches/chromium-gcc-shared.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- a/build/toolchain/gcc_toolchain.gni	2019-11-19 02:27:43.000000000 +0100
-+++ -	2020-07-21 00:59:09.201421469 +0200
-@@ -371,7 +371,7 @@
-       # .TOC file, overwrite it, otherwise, don't change it.
-       tocfile = sofile + ".TOC"
- 
--      link_command = "$ld -shared -Wl,-soname=\"$soname\" {{ldflags}}${extra_ldflags} -o \"$unstripped_sofile\" @\"$rspfile\""
-+      link_command = "$ld -shared -Wl,-soname=\"$soname\" {{ldflags}}${extra_ldflags} -o \"$unstripped_sofile\" -shared @\"$rspfile\""
- 
-       # Generate a map file to be used for binary size analysis.
-       # Map file adds ~10% to the link time on a z620.
-@@ -450,7 +450,7 @@
-         unstripped_sofile = sofile
-       }
- 
--      command = "$ld -shared {{ldflags}}${extra_ldflags} -o \"$unstripped_sofile\" -Wl,-soname=\"$soname\" @\"$rspfile\""
-+      command = "$ld -shared {{ldflags}}${extra_ldflags} -o \"$unstripped_sofile\" -Wl,-soname=\"$soname\" -shared @\"$rspfile\""
- 
-       if (defined(invoker.strip)) {
-         strip_command = "${invoker.strip} -o \"$sofile\" \"$unstripped_sofile\""
diff --git a/srcpkgs/electron7/files/patches/chromium-gn_bootstrap_ninja.patch b/srcpkgs/electron7/files/patches/chromium-gn_bootstrap_ninja.patch
deleted file mode 100644
index e9f95f09cae9..000000000000
--- a/srcpkgs/electron7/files/patches/chromium-gn_bootstrap_ninja.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-Patch by Michael Forney <mforney@mforney.org>
-
-Already merged https://chromium-review.googlesource.com/c/chromium/src/+/1975453
-
---- a/tools/gn/bootstrap/bootstrap.py
-+++ b/tools/gn/bootstrap/bootstrap.py
-@@ -70,6 +70,7 @@
-   out_dir = os.path.join(SRC_ROOT, build_rel)
-   gn_path = options.output or os.path.join(out_dir, 'gn')
-   gn_build_dir = os.path.join(out_dir, 'gn_build')
-+  ninja_binary = os.environ.get('NINJA', 'ninja')
- 
-   # TODO(thomasanderson): Remove this once Ubuntu Trusty reaches EOL, or when
-   # Chromium's infrastructure is upgraded from Trusty to Xenial, whichever comes
-@@ -90,7 +91,7 @@
-               os.environ.get('CFLAGS', '').split() +
-               os.environ.get('CXXFLAGS', '').split()),
-       ]) + '\n')
--    subprocess.check_call(['ninja', '-C', libcxx_dir])
-+    subprocess.check_call([ninja_binary, '-C', libcxx_dir])
-     shutil.copy2(os.path.join(gn_build_dir, 'libc++.gn.so'), out_dir)
- 
-     def append_to_env(var, vals):
-@@ -120,7 +121,7 @@
-   shutil.copy2(
-       os.path.join(BOOTSTRAP_DIR, 'last_commit_position.h'), gn_build_dir)
-   subprocess.check_call(
--      ['ninja', '-C', gn_build_dir, 'gn', '-w', 'dupbuild=err'])
-+      [ninja_binary, '-C', gn_build_dir, '-w', 'dupbuild=err', 'gn'])
-   shutil.copy2(os.path.join(gn_build_dir, 'gn'), gn_path)
- 
-   if not options.skip_generate_buildfiles:
diff --git a/srcpkgs/electron7/files/patches/chromium-libc_malloc.patch b/srcpkgs/electron7/files/patches/chromium-libc_malloc.patch
deleted file mode 100644
index 27cd2cefc46d..000000000000
--- a/srcpkgs/electron7/files/patches/chromium-libc_malloc.patch
+++ /dev/null
@@ -1,26 +0,0 @@
---- a/base/process/memory_linux.cc.orig	2017-09-15 08:41:43.000000000 +0000
-+++ b/base/process/memory_linux.cc	2017-09-15 08:44:39.804995469 +0000
-@@ -21,6 +21,12 @@
- #include "third_party/tcmalloc/chromium/src/gperftools/tcmalloc.h"
- #endif
- 
-+#if defined(LIBC_GLIBC)
-+extern "C" {
-+extern void *__libc_malloc(size_t size);
-+}
-+#endif
-+
- namespace base {
- 
- size_t g_oom_size = 0U;
---- a/base/process/memory_linux.cc.orig	2017-09-15 08:46:55.000000000 +0000
-+++ b/base/process/memory_linux.cc	2017-09-15 08:51:34.422016858 +0000
-@@ -107,7 +107,7 @@
-     (!defined(LIBC_GLIBC) && !defined(USE_TCMALLOC))
-   *result = malloc(size);
- #elif defined(LIBC_GLIBC) && !defined(USE_TCMALLOC)
--  *result = __libc_malloc(size);
-+  *result = ::__libc_malloc(size);
- #elif defined(USE_TCMALLOC)
-   *result = tc_malloc_skip_new_handler(size);
- #endif
diff --git a/srcpkgs/electron7/files/patches/chromium-toolchain-host.patch b/srcpkgs/electron7/files/patches/chromium-toolchain-host.patch
deleted file mode 100644
index 0dace261a08c..000000000000
--- a/srcpkgs/electron7/files/patches/chromium-toolchain-host.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- src/build/toolchain/linux/unbundle/BUILD.gn	2020-07-21 17:36:34.064748261 +0200
-+++ -	2020-07-21 17:39:03.115740522 +0200
-@@ -35,7 +35,7 @@
-   extra_ldflags = getenv("BUILD_LDFLAGS")
- 
-   toolchain_args = {
--    current_cpu = current_cpu
-+    current_cpu = host_cpu
-     current_os = current_os
-   }
- }
diff --git a/srcpkgs/electron7/files/patches/chromium-unbundle-zlib-r1.patch b/srcpkgs/electron7/files/patches/chromium-unbundle-zlib-r1.patch
deleted file mode 100644
index 951a2adb196a..000000000000
--- a/srcpkgs/electron7/files/patches/chromium-unbundle-zlib-r1.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/third_party/perfetto/gn/BUILD.gn b/third_party/perfetto/gn/BUILD.gn
-index 3bc618a..e0ddf6d 100644
---- a/third_party/perfetto/gn/BUILD.gn
-+++ b/third_party/perfetto/gn/BUILD.gn
-@@ -244,7 +244,7 @@ if (enable_perfetto_trace_processor || perfetto_build_standalone ||
-         "//buildtools:zlib",
-       ]
-     } else {
--      public_configs = [ "//third_party/zlib:zlib_config" ]
-+      public_configs = [ "//third_party/zlib:system_zlib" ]
-       public_deps = [
-         "//third_party/zlib",
-       ]
diff --git a/srcpkgs/electron7/files/patches/chromium-upstream-force-mp3-files-to-have-a-start-time-of-zero.patch b/srcpkgs/electron7/files/patches/chromium-upstream-force-mp3-files-to-have-a-start-time-of-zero.patch
deleted file mode 100644
index d018a87094dc..000000000000
--- a/srcpkgs/electron7/files/patches/chromium-upstream-force-mp3-files-to-have-a-start-time-of-zero.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-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/srcpkgs/electron7/files/patches/chromium-xxx-ppc64le.patch b/srcpkgs/electron7/files/patches/chromium-xxx-ppc64le.patch
deleted file mode 100644
index 2bd500257153..000000000000
--- a/srcpkgs/electron7/files/patches/chromium-xxx-ppc64le.patch
+++ /dev/null
@@ -1,4141 +0,0 @@
-From 240f0be5fdf851bd1256a30d4af1a7127b2bf47a Mon Sep 17 00:00:00 2001
-From: Daniel Kolesa <daniel@octaforge.org>
-Date: Sat, 12 Sep 2020 05:52:04 +0200
-Subject: [PATCH] ppc64le support
-
----
- build/download_nacl_toolchains.py             |   4 +
- chrome/installer/linux/BUILD.gn               |   3 -
- sandbox/features.gni                          |   2 +-
- sandbox/linux/BUILD.gn                        |   2 +
- sandbox/linux/bpf_dsl/linux_syscall_ranges.h  |   7 +
- sandbox/linux/bpf_dsl/seccomp_macros.h        |  48 ++++
- .../seccomp-bpf-helpers/baseline_policy.cc    |  10 +-
- .../baseline_policy_unittest.cc               |   2 +
- .../syscall_parameters_restrictions.cc        |  36 ++-
- .../syscall_parameters_restrictions.h         |   2 +-
- .../linux/seccomp-bpf-helpers/syscall_sets.cc | 140 +++++++-----
- .../linux/seccomp-bpf-helpers/syscall_sets.h  |  11 +-
- sandbox/linux/seccomp-bpf/syscall.cc          |  62 ++++-
- sandbox/linux/seccomp-bpf/trap.cc             |  14 ++
- sandbox/linux/services/credentials.cc         |   2 +-
- sandbox/linux/services/syscall_wrappers.cc    |   2 +-
- .../linux/syscall_broker/broker_process.cc    |   2 +-
- sandbox/linux/system_headers/linux_seccomp.h  |   9 +
- sandbox/linux/system_headers/linux_signal.h   |   2 +-
- sandbox/linux/system_headers/linux_syscalls.h |   4 +
- sandbox/linux/system_headers/linux_ucontext.h |   2 +
- .../system_headers/ppc64_linux_syscalls.h     |  12 +
- .../system_headers/ppc64_linux_ucontext.h     |  12 +
- script/list_patch_targets.py                  |  23 ++
- .../linux/bpf_renderer_policy_linux.cc        |   5 +
- .../angle/src/compiler/translator/InfoSink.h  |  11 +-
- third_party/angle/src/libANGLE/Constants.h    |   1 +
- third_party/boringssl/BUILD.gn                |   7 +
- .../dump_writer_common/raw_context_cpu.h      |   2 +
- .../linux/dump_writer_common/thread_info.cc   |  56 ++++-
- .../linux/dump_writer_common/thread_info.h    |   9 +
- .../dump_writer_common/ucontext_reader.cc     |  42 ++++
- .../dump_writer_common/ucontext_reader.h      |   3 +
- .../client/linux/handler/exception_handler.cc |  22 +-
- .../client/linux/handler/exception_handler.h  |   6 +-
- .../handler/exception_handler_unittest.cc     |   8 +-
- .../microdump_writer/microdump_writer.cc      |  14 +-
- .../microdump_writer_unittest.cc              |  15 +-
- .../minidump_writer/linux_core_dumper.cc      |   8 +-
- .../linux/minidump_writer/linux_dumper.cc     |   4 +-
- .../linux/minidump_writer/linux_dumper.h      |   3 +-
- .../linux_dumper_unittest_helper.cc           |   2 +
- .../minidump_writer/linux_ptrace_dumper.cc    |  19 +-
- .../linux_ptrace_dumper_unittest.cc           |   5 +
- .../linux/minidump_writer/minidump_writer.cc  |  18 +-
- .../linux/minidump_writer/minidump_writer.h   |   2 +
- .../minidump_writer_unittest.cc               |   3 +
- .../src/common/linux/memory_mapped_file.cc    |   3 +-
- .../linux/memory_mapped_file_unittest.cc      |   7 +-
- .../src/processor/exploitability_linux.cc     |   2 +
- .../src/processor/exploitability_unittest.cc  |  15 +-
- .../tools/linux/md2core/minidump-2-core.cc    |  45 ++++
- third_party/crashpad/crashpad/CONTRIBUTORS    |   1 +
- .../crashpad/crashpad/compat/linux/sys/user.h |   1 +
- .../crashpad/minidump/minidump_context.h      |  64 ++++++
- .../minidump/minidump_context_writer.cc       |  50 +++++
- .../minidump/minidump_context_writer.h        |  39 ++++
- .../minidump/minidump_context_writer_test.cc  |  15 ++
- .../minidump/minidump_misc_info_writer.cc     |   2 +
- .../crashpad/snapshot/capture_memory.cc       |   5 +
- .../crashpad/snapshot/cpu_architecture.h      |   5 +-
- .../crashpad/crashpad/snapshot/cpu_context.cc |   5 +
- .../crashpad/crashpad/snapshot/cpu_context.h  |  19 ++
- .../snapshot/linux/cpu_context_linux.h        |  73 ++++++
- .../snapshot/linux/debug_rendezvous_test.cc   |   4 +-
- .../linux/exception_snapshot_linux.cc         |  63 ++++++
- .../snapshot/linux/exception_snapshot_linux.h |   2 +
- .../linux/exception_snapshot_linux_test.cc    |  21 ++
- .../snapshot/linux/process_reader_linux.cc    |   2 +
- .../linux/process_reader_linux_test.cc        |   2 +
- .../crashpad/snapshot/linux/signal_context.h  |  83 +++++++
- .../snapshot/linux/system_snapshot_linux.cc   |  11 +
- .../snapshot/linux/thread_snapshot_linux.cc   |   8 +
- .../snapshot/linux/thread_snapshot_linux.h    |   2 +
- .../crashpad/util/linux/auxiliary_vector.cc   |   5 +
- .../crashpad/util/linux/ptrace_broker.cc      |   4 +-
- .../crashpad/crashpad/util/linux/ptracer.cc   |  61 +++++
- .../crashpad/util/linux/thread_info.h         |  55 +++++
- .../crashpad/util/misc/capture_context.h      |   1 +
- .../util/misc/capture_context_linux.S         | 212 +++++++++++++++++-
- .../util/misc/capture_context_test.cc         |   2 +-
- .../misc/capture_context_test_util_linux.cc   |   6 +
- .../crashpad/util/posix/signals_test.cc       |  12 +-
- third_party/dav1d/BUILD.gn                    |  17 ++
- third_party/dav1d/config/linux/ppc64/config.h |  35 +++
- third_party/libvpx/BUILD.gn                   |   4 +
- third_party/lss/linux_syscall_support.h       |   4 +-
- third_party/pffft/src/pffft.c                 |   1 +
- third_party/skia/src/sksl/SkSLString.cpp      |   7 +-
- third_party/sqlite/amalgamation/sqlite3.c     |   3 +-
- third_party/sqlite/patched/ext/rtree/rtree.c  |   2 +-
- third_party/sqlite/patched/src/sqliteInt.h    |   3 +-
- .../sqlite-src-3290000/ext/rtree/rtree.c      |   2 +-
- .../sqlite/sqlite-src-3290000/src/sqliteInt.h |   3 +-
- third_party/swiftshader/src/Yarn/BUILD.gn     |   3 +
- .../swiftshader/src/Yarn/OSFiber_asm.hpp      |   2 +
- .../swiftshader/src/Yarn/OSFiber_asm_ppc64.S  | 196 ++++++++++++++++
- .../swiftshader/src/Yarn/OSFiber_asm_ppc64.h  | 133 +++++++++++
- .../swiftshader/src/Yarn/OSFiber_ppc64.c      |  42 ++++
- .../modules/desktop_capture/differ_block.cc   |  10 +-
- third_party/webrtc/rtc_base/system/arch.h     |  12 +
- ui/gl/BUILD.gn                                |   3 +-
- v8/BUILD.gn                                   |   6 +
- v8/test/BUILD.gn                              |   6 +-
- 104 files changed, 1941 insertions(+), 138 deletions(-)
- create mode 100644 sandbox/linux/system_headers/ppc64_linux_syscalls.h
- create mode 100644 sandbox/linux/system_headers/ppc64_linux_ucontext.h
- create mode 100755 script/list_patch_targets.py
- create mode 100644 third_party/dav1d/config/linux/ppc64/config.h
- create mode 100644 third_party/swiftshader/src/Yarn/OSFiber_asm_ppc64.S
- create mode 100644 third_party/swiftshader/src/Yarn/OSFiber_asm_ppc64.h
- create mode 100644 third_party/swiftshader/src/Yarn/OSFiber_ppc64.c
-
-diff --git a/build/download_nacl_toolchains.py b/build/download_nacl_toolchains.py
-index 286a92a27e..ec36a85d31 100755
---- a/build/download_nacl_toolchains.py
-+++ b/build/download_nacl_toolchains.py
-@@ -13,6 +13,10 @@ import sys
- 
- 
- def Main(args):
-+  # If `disable_nacl=1` is in GYP_DEFINES, exit
-+  if 'disable_nacl=1' in os.environ.get('GYP_DEFINES', ''):
-+    return 0
-+
-   script_dir = os.path.dirname(os.path.abspath(__file__))
-   src_dir = os.path.dirname(script_dir)
-   nacl_dir = os.path.join(src_dir, 'native_client')
-diff --git a/chrome/installer/linux/BUILD.gn b/chrome/installer/linux/BUILD.gn
-index 709552f186..c3cbed6a84 100644
---- a/chrome/installer/linux/BUILD.gn
-+++ b/chrome/installer/linux/BUILD.gn
-@@ -62,8 +62,6 @@ packaging_files = packaging_files_binaries + [
-                     "$root_out_dir/xdg-mime",
-                     "$root_out_dir/xdg-settings",
-                     "$root_out_dir/locales/en-US.pak",
--                    "$root_out_dir/MEIPreload/manifest.json",
--                    "$root_out_dir/MEIPreload/preloaded_data.pb",
-                   ]
- 
- action_foreach("calculate_deb_dependencies") {
-@@ -350,7 +348,6 @@ group("installer_deps") {
-     ":theme_files",
-     "//chrome",
-     "//chrome:packed_resources",
--    "//chrome/browser/resources/media/mei_preload:component",
-     "//sandbox/linux:chrome_sandbox",
-   ]
-   if (enable_nacl) {
-diff --git a/sandbox/features.gni b/sandbox/features.gni
-index 89693c54c4..6017c7eea9 100644
---- a/sandbox/features.gni
-+++ b/sandbox/features.gni
-@@ -12,6 +12,6 @@ use_seccomp_bpf =
-     (is_linux || is_android) &&
-     (current_cpu == "x86" || current_cpu == "x64" || current_cpu == "arm" ||
-      current_cpu == "arm64" || current_cpu == "mipsel" ||
--     current_cpu == "mips64el")
-+     current_cpu == "mips64el" || current_cpu == "ppc64")
- 
- use_seccomp_bpf = use_seccomp_bpf || is_nacl_nonsfi
-diff --git a/sandbox/linux/BUILD.gn b/sandbox/linux/BUILD.gn
-index e4615c0fee..1b021a8720 100644
---- a/sandbox/linux/BUILD.gn
-+++ b/sandbox/linux/BUILD.gn
-@@ -419,6 +419,8 @@ component("sandbox_services") {
- 
- source_set("sandbox_services_headers") {
-   sources = [
-+    "system_headers/ppc64_linux_syscalls.h",
-+    "system_headers/ppc64_linux_ucontext.h",
-     "system_headers/arm64_linux_syscalls.h",
-     "system_headers/arm_linux_syscalls.h",
-     "system_headers/arm_linux_ucontext.h",
-diff --git a/sandbox/linux/bpf_dsl/linux_syscall_ranges.h b/sandbox/linux/bpf_dsl/linux_syscall_ranges.h
-index 73c26c4ba6..e312589dcd 100644
---- a/sandbox/linux/bpf_dsl/linux_syscall_ranges.h
-+++ b/sandbox/linux/bpf_dsl/linux_syscall_ranges.h
-@@ -55,6 +55,13 @@
- #define MAX_PUBLIC_SYSCALL 279u
- #define MAX_SYSCALL MAX_PUBLIC_SYSCALL
- 
-+#elif defined(__powerpc64__)
-+
-+#include <asm/unistd.h>
-+#define MIN_SYSCALL 0u
-+#define MAX_PUBLIC_SYSCALL 386u
-+#define MAX_SYSCALL MAX_PUBLIC_SYSCALL
-+
- #else
- #error "Unsupported architecture"
- #endif
-diff --git a/sandbox/linux/bpf_dsl/seccomp_macros.h b/sandbox/linux/bpf_dsl/seccomp_macros.h
-index 1a407b9523..a6aec544e0 100644
---- a/sandbox/linux/bpf_dsl/seccomp_macros.h
-+++ b/sandbox/linux/bpf_dsl/seccomp_macros.h
-@@ -16,6 +16,9 @@
- #if defined(__mips__)
- // sys/user.h in eglibc misses size_t definition
- #include <stddef.h>
-+#elif defined(__powerpc64__)
-+// Manually define greg_t on ppc64
-+typedef unsigned long long greg_t;
- #endif
- #endif
- 
-@@ -346,6 +349,51 @@ struct regs_struct {
- #define SECCOMP_PT_PARM4(_regs) (_regs).regs[3]
- #define SECCOMP_PT_PARM5(_regs) (_regs).regs[4]
- #define SECCOMP_PT_PARM6(_regs) (_regs).regs[5]
-+
-+#elif defined(__powerpc64__)
-+#include <asm/ptrace.h>
-+
-+typedef struct pt_regs regs_struct;
-+
-+#ifdef ARCH_CPU_LITTLE_ENDIAN
-+#define SECCOMP_ARCH AUDIT_ARCH_PPC64LE
-+#else
-+#define SECCOMP_ARCH AUDIT_ARCH_PPC64
-+#endif
-+
-+#define SECCOMP_REG(_ctx, _reg) ((_ctx)->uc_mcontext.regs->gpr[_reg])
-+
-+#define SECCOMP_RESULT(_ctx) SECCOMP_REG(_ctx, 3)
-+#define SECCOMP_SYSCALL(_ctx) SECCOMP_REG(_ctx, 0)
-+#define SECCOMP_IP(_ctx) (_ctx)->uc_mcontext.regs->nip
-+#define SECCOMP_PARM1(_ctx) SECCOMP_REG(_ctx, 3)
-+#define SECCOMP_PARM2(_ctx) SECCOMP_REG(_ctx, 4)
-+#define SECCOMP_PARM3(_ctx) SECCOMP_REG(_ctx, 5)
-+#define SECCOMP_PARM4(_ctx) SECCOMP_REG(_ctx, 6)
-+#define SECCOMP_PARM5(_ctx) SECCOMP_REG(_ctx, 7)
-+#define SECCOMP_PARM6(_ctx) SECCOMP_REG(_ctx, 8)
-+
-+#define SECCOMP_NR_IDX (offsetof(struct arch_seccomp_data, nr))
-+#define SECCOMP_ARCH_IDX (offsetof(struct arch_seccomp_data, arch))
-+#define SECCOMP_IP_MSB_IDX \
-+  (offsetof(struct arch_seccomp_data, instruction_pointer) + 4)
-+#define SECCOMP_IP_LSB_IDX \
-+  (offsetof(struct arch_seccomp_data, instruction_pointer) + 0)
-+#define SECCOMP_ARG_MSB_IDX(nr) \
-+  (offsetof(struct arch_seccomp_data, args) + 8 * (nr) + 4)
-+#define SECCOMP_ARG_LSB_IDX(nr) \
-+  (offsetof(struct arch_seccomp_data, args) + 8 * (nr) + 0)
-+
-+#define SECCOMP_PT_RESULT(_regs) (_regs).gpr[3]
-+#define SECCOMP_PT_SYSCALL(_regs) (_regs).gpr[0]
-+#define SECCOMP_PT_IP(_regs) (_regs).nip
-+#define SECCOMP_PT_PARM1(_regs) (_regs).gpr[3]
-+#define SECCOMP_PT_PARM2(_regs) (_regs).gpr[4]
-+#define SECCOMP_PT_PARM3(_regs) (_regs).gpr[5]
-+#define SECCOMP_PT_PARM4(_regs) (_regs).gpr[6]
-+#define SECCOMP_PT_PARM5(_regs) (_regs).gpr[7]
-+#define SECCOMP_PT_PARM6(_regs) (_regs).gpr[8]
-+
- #else
- #error Unsupported target platform
- 
-diff --git a/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc b/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc
-index 806d13c1a8..f7f59621a3 100644
---- a/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc
-+++ b/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc
-@@ -88,7 +88,8 @@ bool IsBaselinePolicyWatched(int sysno) {
-          SyscallSets::IsPrctl(sysno) ||
-          SyscallSets::IsProcessGroupOrSession(sysno) ||
- #if defined(__i386__) || \
--    (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_32_BITS))
-+    (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_32_BITS)) || \
-+    defined(__powerpc64__)
-          SyscallSets::IsSocketCall(sysno) ||
- #endif
- #if defined(__arm__)
-@@ -210,7 +211,7 @@ ResultExpr EvaluateSyscallImpl(int fs_denied_errno,
-   }
- 
- #if defined(__i386__) || defined(__x86_64__) || defined(__mips__) || \
--    defined(__aarch64__)
-+    defined(__aarch64__) || defined(__powerpc64__)
-   if (sysno == __NR_mmap)
-     return RestrictMmapFlags();
- #endif
-@@ -228,7 +229,7 @@ ResultExpr EvaluateSyscallImpl(int fs_denied_errno,
-     return RestrictPrctl();
- 
- #if defined(__x86_64__) || defined(__arm__) || defined(__mips__) || \
--    defined(__aarch64__)
-+    defined(__aarch64__) || defined(__powerpc64__)
-   if (sysno == __NR_socketpair) {
-     // Only allow AF_UNIX, PF_UNIX. Crash if anything else is seen.
-     static_assert(AF_UNIX == PF_UNIX,
-@@ -268,7 +269,8 @@ ResultExpr EvaluateSyscallImpl(int fs_denied_errno,
-   }
- 
- #if defined(__i386__) || \
--    (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_32_BITS))
-+    (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_32_BITS)) || \
-+    defined(__powerpc64__)
-   if (SyscallSets::IsSocketCall(sysno))
-     return RestrictSocketcallCommand();
- #endif
-diff --git a/sandbox/linux/seccomp-bpf-helpers/baseline_policy_unittest.cc b/sandbox/linux/seccomp-bpf-helpers/baseline_policy_unittest.cc
-index 060181bd42..5b5b7913b5 100644
---- a/sandbox/linux/seccomp-bpf-helpers/baseline_policy_unittest.cc
-+++ b/sandbox/linux/seccomp-bpf-helpers/baseline_policy_unittest.cc
-@@ -290,8 +290,10 @@ TEST_BASELINE_SIGSYS(__NR_timer_create)
- #if !defined(__aarch64__)
- TEST_BASELINE_SIGSYS(__NR_eventfd)
- TEST_BASELINE_SIGSYS(__NR_inotify_init)
-+#if !defined(__powerpc64__)
- TEST_BASELINE_SIGSYS(__NR_vserver)
- #endif
-+#endif
- 
- #if defined(LIBC_GLIBC) && !defined(OS_CHROMEOS)
- BPF_TEST_C(BaselinePolicy, FutexEINVAL, BaselinePolicy) {
-diff --git a/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc b/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc
-index 348ab6e8c5..f3555ba3bd 100644
---- a/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc
-+++ b/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc
-@@ -36,7 +36,8 @@
- #include <sys/ioctl.h>
- #include <sys/ptrace.h>
- #if defined(OS_LINUX) && !defined(OS_CHROMEOS) && !defined(__arm__) && \
--    !defined(__aarch64__) && !defined(PTRACE_GET_THREAD_AREA)
-+    !defined(__aarch64__) && !defined(PTRACE_GET_THREAD_AREA) && \
-+    !defined(__powerpc64__)
- // Also include asm/ptrace-abi.h since ptrace.h in older libc (for instance
- // the one in Ubuntu 16.04 LTS) is missing PTRACE_GET_THREAD_AREA.
- // asm/ptrace-abi.h doesn't exist on arm32 and PTRACE_GET_THREAD_AREA isn't
-@@ -45,6 +46,11 @@
- #endif
- #endif  // !OS_NACL_NONSFI
- 
-+// On PPC64, TCGETS is defined in terms of struct termios, so we must include termios.h
-+#ifdef __powerpc64__
-+#include <termios.h>
-+#endif
-+
- #if defined(OS_ANDROID)
- 
- #if !defined(F_DUPFD_CLOEXEC)
-@@ -107,6 +113,15 @@ inline bool IsArchitectureMips() {
- #endif
- }
- 
-+inline bool IsArchitecturePPC64() {
-+#if defined(__powerpc64__)
-+  return true;
-+#else
-+  return false;
-+#endif
-+}
-+
-+
- // Ubuntu's version of glibc has a race condition in sem_post that can cause
- // it to call futex(2) with bogus op arguments. To workaround this, we need
- // to allow those futex(2) calls to fail with EINVAL, instead of crashing the
-@@ -248,6 +263,8 @@ ResultExpr RestrictFcntlCommands() {
-   uint64_t kOLargeFileFlag = O_LARGEFILE;
-   if (IsArchitectureX86_64() || IsArchitectureI386() || IsArchitectureMips())
-     kOLargeFileFlag = 0100000;
-+  else if (IsArchitecturePPC64())
-+    kOLargeFileFlag = 0200000;
- 
-   const Arg<int> cmd(1);
-   const Arg<long> long_arg(2);
-@@ -262,14 +279,23 @@ ResultExpr RestrictFcntlCommands() {
-               F_SETLKW,
-               F_GETLK,
-               F_DUPFD,
--              F_DUPFD_CLOEXEC),
--             Allow())
-+              F_DUPFD_CLOEXEC
-+#if defined(__powerpc64__)
-+// On PPC64, F_SETLK, F_GETLK, F_SETLKW are defined as the 64-bit variants
-+// but glibc will sometimes still use the 32-bit versions. Allow both.
-+              ,
-+              5, /* F_GETLK (32) */
-+              6, /* F_SETLK (32) */
-+              7  /* F_SETLKW (32) */
-+#endif
-+              ),
-+            Allow())
-       .Case(F_SETFL,
-             If((long_arg & ~kAllowedMask) == 0, Allow()).Else(CrashSIGSYS()))
-       .Default(CrashSIGSYS());
- }
- 
--#if defined(__i386__) || defined(__mips__)
-+#if defined(__i386__) || defined(__mips__) || defined(__powerpc64__)
- ResultExpr RestrictSocketcallCommand() {
-   // Unfortunately, we are unable to restrict the first parameter to
-   // socketpair(2). Whilst initially sounding bad, it's noteworthy that very
-@@ -410,7 +436,7 @@ ResultExpr RestrictPrlimit(pid_t target_pid) {
- ResultExpr RestrictPtrace() {
-   const Arg<int> request(0);
-   return Switch(request).CASES((
--#if !defined(__aarch64__)
-+#if !defined(__aarch64__) && !defined(__powerpc64__)
-         PTRACE_GETREGS,
-         PTRACE_GETFPREGS,
-         PTRACE_GET_THREAD_AREA,
-diff --git a/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.h b/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.h
-index cb563dfc55..2b17800d4f 100644
---- a/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.h
-+++ b/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.h
-@@ -48,7 +48,7 @@ SANDBOX_EXPORT bpf_dsl::ResultExpr RestrictMprotectFlags();
- // O_NONBLOCK | O_SYNC | O_LARGEFILE | O_CLOEXEC | O_NOATIME.
- SANDBOX_EXPORT bpf_dsl::ResultExpr RestrictFcntlCommands();
- 
--#if defined(__i386__) || defined(__mips__)
-+#if defined(__i386__) || defined(__mips__) || defined(__powerpc64__)
- // Restrict socketcall(2) to only allow socketpair(2), send(2), recv(2),
- // sendto(2), recvfrom(2), shutdown(2), sendmsg(2) and recvmsg(2).
- SANDBOX_EXPORT bpf_dsl::ResultExpr RestrictSocketcallCommand();
-diff --git a/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc b/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc
-index 816c0d63de..70a5873434 100644
---- a/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc
-+++ b/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc
-@@ -29,7 +29,8 @@ bool SyscallSets::IsAllowedGettime(int sysno) {
-   switch (sysno) {
-     case __NR_gettimeofday:
- #if defined(__i386__) || defined(__x86_64__) || \
--    (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_32_BITS))
-+    (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_32_BITS)) || \
-+    defined(__powerpc64__)
-     case __NR_time:
- #endif
-       return true;
-@@ -40,12 +41,14 @@ bool SyscallSets::IsAllowedGettime(int sysno) {
-     case __NR_clock_nanosleep:  // Could be allowed.
-     case __NR_clock_settime:    // Privileged.
- #if defined(__i386__) || \
--    (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_32_BITS))
-+    (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_32_BITS)) || \
-+    defined(__powerpc64__)
-     case __NR_ftime:  // Obsolete.
- #endif
-     case __NR_settimeofday:  // Privileged.
- #if defined(__i386__) || \
--    (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_32_BITS))
-+    (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_32_BITS)) || \
-+    defined(__powerpc64__)
-     case __NR_stime:
- #endif
-     default:
-@@ -111,7 +114,7 @@ bool SyscallSets::IsFileSystem(int sysno) {
-     case __NR_faccessat:  // EPERM not a valid errno.
-     case __NR_fchmodat:
-     case __NR_fchownat:  // Should be called chownat ?
--#if defined(__x86_64__) || defined(__aarch64__)
-+#if defined(__x86_64__) || defined(__aarch64__) || defined(__powerpc64__)
-     case __NR_newfstatat:  // fstatat(). EPERM not a valid errno.
- #elif defined(__i386__) || defined(__arm__) || \
-     (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_32_BITS))
-@@ -130,7 +133,7 @@ bool SyscallSets::IsFileSystem(int sysno) {
-     case __NR_memfd_create:
-     case __NR_mkdirat:
-     case __NR_mknodat:
--#if defined(__i386__)
-+#if defined(__i386__) || defined(__powerpc64__)
-     case __NR_oldlstat:
-     case __NR_oldstat:
- #endif
-@@ -144,7 +147,8 @@ bool SyscallSets::IsFileSystem(int sysno) {
- #endif
-     case __NR_statfs:  // EPERM not a valid errno.
- #if defined(__i386__) || defined(__arm__) || \
--    (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_32_BITS))
-+    (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_32_BITS)) || \
-+    defined(__powerpc64__)
-     case __NR_statfs64:
- #endif
-     case __NR_symlinkat:
-@@ -154,7 +158,8 @@ bool SyscallSets::IsFileSystem(int sysno) {
-     case __NR_truncate64:
- #endif
-     case __NR_unlinkat:
--#if defined(__i386__) || defined(__x86_64__) || defined(__mips__)
-+#if defined(__i386__) || defined(__x86_64__) || defined(__mips__) || \
-+    defined(__powerpc64__)
-     case __NR_utime:
- #endif
-     case __NR_utimensat:  // New.
-@@ -173,7 +178,8 @@ bool SyscallSets::IsAllowedFileSystemAccessViaFd(int sysno) {
- #endif
-       return true;
- // TODO(jln): these should be denied gracefully as well (moved below).
--#if defined(__i386__) || defined(__x86_64__) || defined(__mips__)
-+#if defined(__i386__) || defined(__x86_64__) || defined(__mips__) || \
-+    defined(__powerpc64__)
-     case __NR_fadvise64:  // EPERM not a valid errno.
- #endif
- #if defined(__i386__)
-@@ -186,11 +192,12 @@ bool SyscallSets::IsAllowedFileSystemAccessViaFd(int sysno) {
-     case __NR_flock:      // EPERM not a valid errno.
-     case __NR_fstatfs:    // Give information about the whole filesystem.
- #if defined(__i386__) || defined(__arm__) || \
--    (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_32_BITS))
-+    (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_32_BITS)) || \
-+    defined(__powerpc64__)
-     case __NR_fstatfs64:
- #endif
-     case __NR_fsync:  // EPERM not a valid errno.
--#if defined(__i386__)
-+#if defined(__i386__) || defined(__powerpc64__)
-     case __NR_oldfstat:
- #endif
- #if defined(__i386__) || defined(__x86_64__) || defined(__mips__) || \
-@@ -198,6 +205,8 @@ bool SyscallSets::IsAllowedFileSystemAccessViaFd(int sysno) {
-     case __NR_sync_file_range:  // EPERM not a valid errno.
- #elif defined(__arm__)
-     case __NR_arm_sync_file_range:  // EPERM not a valid errno.
-+#elif defined(__powerpc64__)
-+    case __NR_sync_file_range2: // EPERM not a valid errno.
- #endif
-     default:
-       return false;
-@@ -223,7 +232,8 @@ bool SyscallSets::IsDeniedFileSystemAccessViaFd(int sysno) {
- #endif
-     case __NR_getdents64:  // EPERM not a valid errno.
- #if defined(__i386__) || \
--    (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_32_BITS))
-+    (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_32_BITS)) || \
-+    defined(__powerpc64__)
-     case __NR_readdir:
- #endif
-       return true;
-@@ -264,7 +274,7 @@ bool SyscallSets::IsGetSimpleId(int sysno) {
- bool SyscallSets::IsProcessPrivilegeChange(int sysno) {
-   switch (sysno) {
-     case __NR_capset:
--#if defined(__i386__) || defined(__x86_64__)
-+#if defined(__i386__) || defined(__x86_64__) || defined(__powerpc64__)
-     case __NR_ioperm:  // Intel privilege.
-     case __NR_iopl:    // Intel privilege.
- #endif
-@@ -315,7 +325,8 @@ bool SyscallSets::IsAllowedSignalHandling(int sysno) {
-     case __NR_rt_sigreturn:
-     case __NR_rt_sigtimedwait:
- #if defined(__i386__) || defined(__arm__) || \
--    (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_32_BITS))
-+    (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_32_BITS)) || \
-+    defined(__powerpc64__)
-     case __NR_sigaction:
-     case __NR_sigprocmask:
-     case __NR_sigreturn:
-@@ -331,7 +342,8 @@ bool SyscallSets::IsAllowedSignalHandling(int sysno) {
- #endif
-     case __NR_signalfd4:
- #if defined(__i386__) || defined(__arm__) || \
--    (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_32_BITS))
-+    (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_32_BITS)) || \
-+    defined(__powerpc64__)
-     case __NR_sigpending:
-     case __NR_sigsuspend:
- #endif
-@@ -355,7 +367,7 @@ bool SyscallSets::IsAllowedOperationOnFd(int sysno) {
- #endif
-     case __NR_dup3:
- #if defined(__x86_64__) || defined(__arm__) || defined(__mips__) || \
--    defined(__aarch64__)
-+    defined(__aarch64__) || defined(__powerpc64__)
-     case __NR_shutdown:
- #endif
-       return true;
-@@ -388,7 +400,7 @@ bool SyscallSets::IsAllowedProcessStartOrDeath(int sysno) {
-     case __NR_exit_group:
-     case __NR_wait4:
-     case __NR_waitid:
--#if defined(__i386__)
-+#if defined(__i386__) || defined(__powerpc64__)
-     case __NR_waitpid:
- #endif
-       return true;
-@@ -405,7 +417,7 @@ bool SyscallSets::IsAllowedProcessStartOrDeath(int sysno) {
- #endif
-     case __NR_set_tid_address:
-     case __NR_unshare:
--#if !defined(__mips__) && !defined(__aarch64__)
-+#if !defined(__mips__) && !defined(__aarch64__) || defined(__powerpc64__)
-     case __NR_vfork:
- #endif
-     default:
-@@ -454,7 +466,7 @@ bool SyscallSets::IsAllowedGetOrModifySocket(int sysno) {
-       return true;
-     default:
- #if defined(__x86_64__) || defined(__arm__) || defined(__mips__) || \
--    defined(__aarch64__)
-+    defined(__aarch64__) || defined(__powerpc64__)
-     case __NR_socketpair:  // We will want to inspect its argument.
- #endif
-       return false;
-@@ -464,7 +476,7 @@ bool SyscallSets::IsAllowedGetOrModifySocket(int sysno) {
- bool SyscallSets::IsDeniedGetOrModifySocket(int sysno) {
-   switch (sysno) {
- #if defined(__x86_64__) || defined(__arm__) || defined(__mips__) || \
--    defined(__aarch64__)
-+    defined(__aarch64__) || defined(__powerpc64__)
-     case __NR_accept:
-     case __NR_accept4:
-     case __NR_bind:
-@@ -479,7 +491,8 @@ bool SyscallSets::IsDeniedGetOrModifySocket(int sysno) {
- }
- 
- #if defined(__i386__) || \
--    (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_32_BITS))
-+    (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_32_BITS)) || \
-+    defined(__powerpc64__)
- // Big multiplexing system call for sockets.
- bool SyscallSets::IsSocketCall(int sysno) {
-   switch (sysno) {
-@@ -493,7 +506,8 @@ bool SyscallSets::IsSocketCall(int sysno) {
- }
- #endif
- 
--#if defined(__x86_64__) || defined(__arm__) || defined(__mips__)
-+#if defined(__x86_64__) || defined(__arm__) || defined(__mips__) || \
-+    defined(__powerpc64__)
- bool SyscallSets::IsNetworkSocketInformation(int sysno) {
-   switch (sysno) {
-     case __NR_getpeername:
-@@ -518,7 +532,7 @@ bool SyscallSets::IsAllowedAddressSpaceAccess(int sysno) {
-     case __NR_mincore:
-     case __NR_mlockall:
- #if defined(__i386__) || defined(__x86_64__) || defined(__mips__) || \
--    defined(__aarch64__)
-+    defined(__aarch64__) || defined(__powerpc64__)
-     case __NR_mmap:
- #endif
- #if defined(__i386__) || defined(__arm__) || \
-@@ -548,7 +562,8 @@ bool SyscallSets::IsAllowedGeneralIo(int sysno) {
-   switch (sysno) {
-     case __NR_lseek:
- #if defined(__i386__) || defined(__arm__) || \
--    (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_32_BITS))
-+    (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_32_BITS)) || \
-+    defined(__powerpc64__)
-     case __NR__llseek:
- #endif
- #if !defined(__aarch64__)
-@@ -560,26 +575,28 @@ bool SyscallSets::IsAllowedGeneralIo(int sysno) {
-     case __NR_readv:
-     case __NR_pread64:
- #if defined(__arm__) || \
--    (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_32_BITS))
-+    (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_32_BITS)) || \
-+    defined(__powerpc64__)
-     case __NR_recv:
- #endif
- #if defined(__x86_64__) || defined(__arm__) || defined(__mips__) || \
--    defined(__aarch64__)
-+    defined(__aarch64__) || defined(__powerpc64__)
-     case __NR_recvfrom:  // Could specify source.
-     case __NR_recvmsg:   // Could specify source.
- #endif
--#if defined(__i386__) || defined(__x86_64__)
-+#if defined(__i386__) || defined(__x86_64__) || defined(__powerpc64__)
-     case __NR_select:
- #endif
--#if defined(__i386__) || defined(__arm__) || defined(__mips__)
-+#if defined(__i386__) || defined(__arm__) || defined(__mips__) || defined(__powerpc64__)
-     case __NR__newselect:
- #endif
- #if defined(__arm__) || \
--    (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_32_BITS))
-+    (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_32_BITS)) || \
-+    defined(__powerpc64__)
-     case __NR_send:
- #endif
- #if defined(__x86_64__) || defined(__arm__) || defined(__mips__) || \
--    defined(__aarch64__)
-+    defined(__aarch64__) || defined(__powerpc64__)
-     case __NR_sendmsg:  // Could specify destination.
-     case __NR_sendto:   // Could specify destination.
- #endif
-@@ -636,7 +653,8 @@ bool SyscallSets::IsAllowedBasicScheduler(int sysno) {
-       return true;
-     case __NR_getpriority:
- #if defined(__i386__) || defined(__arm__) || \
--    (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_32_BITS))
-+    (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_32_BITS)) || \
-+    defined(__powerpc64__)
-     case __NR_nice:
- #endif
-     case __NR_setpriority:
-@@ -648,7 +666,8 @@ bool SyscallSets::IsAllowedBasicScheduler(int sysno) {
- bool SyscallSets::IsAdminOperation(int sysno) {
-   switch (sysno) {
- #if defined(__i386__) || defined(__arm__) || \
--    (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_32_BITS))
-+    (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_32_BITS)) || \
-+    defined(__powerpc64__)
-     case __NR_bdflush:
- #endif
-     case __NR_kexec_load:
-@@ -664,7 +683,8 @@ bool SyscallSets::IsAdminOperation(int sysno) {
- 
- bool SyscallSets::IsKernelModule(int sysno) {
-   switch (sysno) {
--#if defined(__i386__) || defined(__x86_64__) || defined(__mips__)
-+#if defined(__i386__) || defined(__x86_64__) || defined(__mips__) || \
-+    defined(__powerpc64__)
-     case __NR_create_module:
-     case __NR_get_kernel_syms:  // Should ENOSYS.
-     case __NR_query_module:
-@@ -697,7 +717,8 @@ bool SyscallSets::IsFsControl(int sysno) {
-     case __NR_swapoff:
-     case __NR_swapon:
- #if defined(__i386__) || \
--    (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_32_BITS))
-+    (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_32_BITS)) || \
-+    defined(__powerpc64__)
-     case __NR_umount:
- #endif
-     case __NR_umount2:
-@@ -713,7 +734,7 @@ bool SyscallSets::IsNuma(int sysno) {
-     case __NR_getcpu:
-     case __NR_mbind:
- #if defined(__i386__) || defined(__x86_64__) || defined(__mips__) || \
--    defined(__aarch64__)
-+    defined(__aarch64__) || defined(__powerpc64__)
-     case __NR_migrate_pages:
- #endif
-     case __NR_move_pages:
-@@ -742,14 +763,15 @@ bool SyscallSets::IsGlobalProcessEnvironment(int sysno) {
-   switch (sysno) {
-     case __NR_acct:  // Privileged.
- #if defined(__i386__) || defined(__x86_64__) || defined(__mips__) || \
--    defined(__aarch64__)
-+    defined(__aarch64__) || defined(__powerpc64__)
-     case __NR_getrlimit:
- #endif
--#if defined(__i386__) || defined(__arm__)
-+#if defined(__i386__) || defined(__arm__) || defined(__powerpc64__)
-     case __NR_ugetrlimit:
- #endif
- #if defined(__i386__) || \
--    (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_32_BITS))
-+    (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_32_BITS)) || \
-+    defined(__powerpc64__)
-     case __NR_ulimit:
- #endif
-     case __NR_getrusage:
-@@ -783,7 +805,7 @@ bool SyscallSets::IsGlobalSystemStatus(int sysno) {
- #endif
-     case __NR_sysinfo:
-     case __NR_uname:
--#if defined(__i386__)
-+#if defined(__i386__) || defined(__powerpc64__)
-     case __NR_olduname:
-     case __NR_oldolduname:
- #endif
-@@ -845,8 +867,17 @@ bool SyscallSets::IsSystemVSemaphores(int sysno) {
- }
- #endif
- 
-+/* shitty hack around Void's 4.19 kernel headers missing those numbers */
-+#if defined(__powerpc64__) && !defined(__NR_shmget)
-+#define __NR_shmget 395
-+#define __NR_shmctl 396
-+#define __NR_shmat 397
-+#define __NR_shmdt 398
-+#endif
-+
- #if defined(__x86_64__) || defined(__arm__) || defined(__aarch64__) || \
--    (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_64_BITS))
-+    (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_64_BITS)) || \
-+    defined(__powerpc64__)
- // These give a lot of ambient authority and bypass the setuid sandbox.
- bool SyscallSets::IsSystemVSharedMemory(int sysno) {
-   switch (sysno) {
-@@ -877,7 +908,8 @@ bool SyscallSets::IsSystemVMessageQueue(int sysno) {
- #endif
- 
- #if defined(__i386__) || \
--    (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_32_BITS))
-+    (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_32_BITS)) || \
-+    defined(__powerpc64__)
- // Big system V multiplexing system call.
- bool SyscallSets::IsSystemVIpc(int sysno) {
-   switch (sysno) {
-@@ -897,7 +929,8 @@ bool SyscallSets::IsAnySystemV(int sysno) {
-   return IsSystemVMessageQueue(sysno) || IsSystemVSemaphores(sysno) ||
-          IsSystemVSharedMemory(sysno);
- #elif defined(__i386__) || \
--    (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_32_BITS))
-+    (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_32_BITS)) || \
-+    defined(__powerpc64__)
-   return IsSystemVIpc(sysno);
- #endif
- }
-@@ -950,7 +983,8 @@ bool SyscallSets::IsFaNotify(int sysno) {
- bool SyscallSets::IsTimer(int sysno) {
-   switch (sysno) {
-     case __NR_getitimer:
--#if defined(__i386__) || defined(__x86_64__) || defined(__mips__)
-+#if defined(__i386__) || defined(__x86_64__) || defined(__mips__) || \
-+    defined(__powerpc64__)
-     case __NR_alarm:
- #endif
-     case __NR_setitimer:
-@@ -1009,18 +1043,22 @@ bool SyscallSets::IsMisc(int sysno) {
-     case __NR_syncfs:
-     case __NR_vhangup:
- // The system calls below are not implemented.
--#if defined(__i386__) || defined(__x86_64__) || defined(__mips__)
-+#if defined(__i386__) || defined(__x86_64__) || defined(__mips__) || \
-+    defined(__powerpc64__)
-     case __NR_afs_syscall:
- #endif
- #if defined(__i386__) || \
--    (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_32_BITS))
-+    (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_32_BITS)) || \
-+    defined(__powerpc64__)
-     case __NR_break:
- #endif
--#if defined(__i386__) || defined(__x86_64__) || defined(__mips__)
-+#if defined(__i386__) || defined(__x86_64__) || defined(__mips__) || \
-+    defined(__powerpc64__)
-     case __NR_getpmsg:
- #endif
- #if defined(__i386__) || \
--    (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_32_BITS))
-+    (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_32_BITS)) || \
-+    defined(__powerpc64__)
-     case __NR_gtty:
-     case __NR_idle:
-     case __NR_lock:
-@@ -1028,20 +1066,22 @@ bool SyscallSets::IsMisc(int sysno) {
-     case __NR_prof:
-     case __NR_profil:
- #endif
--#if defined(__i386__) || defined(__x86_64__) || defined(__mips__)
-+#if defined(__i386__) || defined(__x86_64__) || defined(__mips__) || \
-+    defined(__powerpc64__)
-     case __NR_putpmsg:
- #endif
- #if defined(__x86_64__)
-     case __NR_security:
- #endif
- #if defined(__i386__) || \
--    (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_32_BITS))
-+    (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_32_BITS)) || \
-+    defined(__powerpc64__)
-     case __NR_stty:
- #endif
--#if defined(__x86_64__)
-+#if defined(__x86_64__) || defined(__powerpc64__)
-     case __NR_tuxcall:
- #endif
--#if !defined(__aarch64__)
-+#if !defined(__aarch64__) && !defined(__powerpc64__)
-     case __NR_vserver:
- #endif
-       return true;
-diff --git a/sandbox/linux/seccomp-bpf-helpers/syscall_sets.h b/sandbox/linux/seccomp-bpf-helpers/syscall_sets.h
-index acd92da395..3412873d07 100644
---- a/sandbox/linux/seccomp-bpf-helpers/syscall_sets.h
-+++ b/sandbox/linux/seccomp-bpf-helpers/syscall_sets.h
-@@ -43,13 +43,14 @@ class SANDBOX_EXPORT SyscallSets {
-   static bool IsDeniedGetOrModifySocket(int sysno);
- 
- #if defined(__i386__) || \
--    (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_32_BITS))
-+    (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_32_BITS)) || \
-+    defined(__powerpc64__)
-   // Big multiplexing system call for sockets.
-   static bool IsSocketCall(int sysno);
- #endif
- 
- #if defined(__x86_64__) || defined(__arm__) || defined(__mips__) || \
--    defined(__aarch64__)
-+    defined(__aarch64__) || defined(__powerpc64__)
-   static bool IsNetworkSocketInformation(int sysno);
- #endif
- 
-@@ -76,7 +77,8 @@ class SANDBOX_EXPORT SyscallSets {
-   static bool IsSystemVSemaphores(int sysno);
- #endif
- #if defined(__x86_64__) || defined(__arm__) || defined(__aarch64__) || \
--    (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_64_BITS))
-+    (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_64_BITS)) || \
-+    defined(__powerpc64__)
-   // These give a lot of ambient authority and bypass the setuid sandbox.
-   static bool IsSystemVSharedMemory(int sysno);
- #endif
-@@ -87,7 +89,8 @@ class SANDBOX_EXPORT SyscallSets {
- #endif
- 
- #if defined(__i386__) || \
--    (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_32_BITS))
-+    (defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_32_BITS)) || \
-+    defined(__powerpc64__)
-   // Big system V multiplexing system call.
-   static bool IsSystemVIpc(int sysno);
- #endif
-diff --git a/sandbox/linux/seccomp-bpf/syscall.cc b/sandbox/linux/seccomp-bpf/syscall.cc
-index 34edabd2b8..10fa5fd070 100644
---- a/sandbox/linux/seccomp-bpf/syscall.cc
-+++ b/sandbox/linux/seccomp-bpf/syscall.cc
-@@ -16,7 +16,7 @@ namespace sandbox {
- namespace {
- 
- #if defined(ARCH_CPU_X86_FAMILY) || defined(ARCH_CPU_ARM_FAMILY) || \
--    defined(ARCH_CPU_MIPS_FAMILY)
-+    defined(ARCH_CPU_MIPS_FAMILY) || defined (ARCH_CPU_PPC64_FAMILY)
- // Number that's not currently used by any Linux kernel ABIs.
- const int kInvalidSyscallNumber = 0x351d3;
- #else
-@@ -308,12 +308,56 @@ asm(// We need to be able to tell the kernel exactly where we made a
-     // Enter the kernel
-     "svc 0\n"
-     "2:ret\n"
-+    ".cfi_endproc\n"
-+    ".size SyscallAsm, .-SyscallAsm\n"
-+#elif defined(__powerpc64__)
-+    ".text\n"
-+    ".align 4\n"
-+    ".type SyscallAsm @function\n"
-+    "SyscallAsm:\n"
-+    ".cfi_startproc\n"
-+
-+    // Check if r3 is negative
-+    "cmpdi 3, 0\n"
-+    "bgt 2f\n"
-+
-+    // Load address of 3f into r3 and return
-+    "mflr 10\n"
-+    "bl 1f\n"
-+    "1: mflr 3\n"
-+    "mtlr 10\n"
-+    "addi 3, 3, 4*13\n"
-+    "blr\n"
-+
-+    // Load arguments from array into r3-8
-+    // save param 3 in r10
-+    "2:\n"
-+    "mr 0, 3\n"
-+    "ld 3, 0(4)\n"
-+    "ld 5, 16(4)\n"
-+    "ld 6, 24(4)\n"
-+    "ld 7, 32(4)\n"
-+    "ld 8, 40(4)\n"
-+    "ld 4, 8(4)\n"
-+    "li 9, 0\n"
-+
-+    // Enter kernel
-+    "sc\n"
-+
-+    // Magic return address
-+    "3:\n"
-+    // Like MIPS, ppc64 return values are always positive.
-+    // Check for error in cr0.SO and negate upon error
-+    "bc 4, 3, 4f\n"
-+    "neg 3, 3\n"
-+    "4: blr\n"
-+
-     ".cfi_endproc\n"
-     ".size SyscallAsm, .-SyscallAsm\n"
- #endif
-     );  // asm
- 
--#if defined(__x86_64__)
-+#if defined(__x86_64__) || defined(__powerpc64__)
- extern "C" {
- intptr_t SyscallAsm(intptr_t nr, const intptr_t args[6]);
- }
-@@ -427,6 +471,8 @@ intptr_t Syscall::Call(int nr,
-     ret = inout;
-   }
- 
-+#elif defined(__powerpc64__)
-+  intptr_t ret = SyscallAsm(nr, args);
- #else
- #error "Unimplemented architecture"
- #endif
-@@ -443,8 +489,18 @@ void Syscall::PutValueInUcontext(intptr_t ret_val, ucontext_t* ctx) {
-     // needs to be changed back.
-     ret_val = -ret_val;
-     SECCOMP_PARM4(ctx) = 1;
--  } else
-+  } else {
-     SECCOMP_PARM4(ctx) = 0;
-+  }
-+#endif
-+#if defined(__powerpc64__)
-+  // Same as MIPS, need to invert ret and set error register (cr0.SO)
-+  if (ret_val <= -1 && ret_val >= -4095) {
-+    ret_val = -ret_val;
-+    ctx->uc_mcontext.regs->ccr |= (1 << 28);
-+  } else {
-+    ctx->uc_mcontext.regs->ccr &= ~(1 << 28);
-+  }
- #endif
-   SECCOMP_RESULT(ctx) = static_cast<greg_t>(ret_val);
- }
-diff --git a/sandbox/linux/seccomp-bpf/trap.cc b/sandbox/linux/seccomp-bpf/trap.cc
-index 003708d2c8..8f9b3af4e2 100644
---- a/sandbox/linux/seccomp-bpf/trap.cc
-+++ b/sandbox/linux/seccomp-bpf/trap.cc
-@@ -225,6 +225,20 @@ void Trap::SigSys(int nr, LinuxSigInfo* info, ucontext_t* ctx) {
-       SetIsInSigHandler();
-     }
- 
-+#if defined(__powerpc64__)
-+    // On ppc64+glibc, some syscalls seem to accidentally negate the first
-+    // parameter which causes checks against it to fail. For now, manually
-+    // negate them back.
-+    // TODO(shawn@anastas.io): investigate this issue further
-+    auto nr = SECCOMP_SYSCALL(ctx);
-+    if (nr == __NR_openat || nr == __NR_mkdirat || nr == __NR_faccessat || nr == __NR_readlinkat ||
-+        nr == __NR_renameat || nr == __NR_renameat2 || nr == __NR_newfstatat || nr == __NR_unlinkat) {
-+        if (static_cast<int>(SECCOMP_PARM1(ctx)) > 0) {
-+            SECCOMP_PARM1(ctx) = -SECCOMP_PARM1(ctx);
-+        }
-+    }
-+#endif
-+
-     // Copy the seccomp-specific data into a arch_seccomp_data structure. This
-     // is what we are showing to TrapFnc callbacks that the system call
-     // evaluator registered with the sandbox.
-diff --git a/sandbox/linux/services/credentials.cc b/sandbox/linux/services/credentials.cc
-index 542567f3ee..31d493c264 100644
---- a/sandbox/linux/services/credentials.cc
-+++ b/sandbox/linux/services/credentials.cc
-@@ -79,7 +79,7 @@ bool ChrootToSafeEmptyDir() {
-   pid_t pid = -1;
-   alignas(16) char stack_buf[PTHREAD_STACK_MIN];
- #if defined(ARCH_CPU_X86_FAMILY) || defined(ARCH_CPU_ARM_FAMILY) || \
--    defined(ARCH_CPU_MIPS_FAMILY)
-+    defined(ARCH_CPU_MIPS_FAMILY) || defined(ARCH_CPU_PPC64_FAMILY)
-   // The stack grows downward.
-   void* stack = stack_buf + sizeof(stack_buf);
- #else
-diff --git a/sandbox/linux/services/syscall_wrappers.cc b/sandbox/linux/services/syscall_wrappers.cc
-index fcfd2aa129..f6eb32fb76 100644
---- a/sandbox/linux/services/syscall_wrappers.cc
-+++ b/sandbox/linux/services/syscall_wrappers.cc
-@@ -58,7 +58,7 @@ long sys_clone(unsigned long flags,
- #if defined(ARCH_CPU_X86_64)
-   return syscall(__NR_clone, flags, child_stack, ptid, ctid, tls);
- #elif defined(ARCH_CPU_X86) || defined(ARCH_CPU_ARM_FAMILY) || \
--    defined(ARCH_CPU_MIPS_FAMILY)
-+    defined(ARCH_CPU_MIPS_FAMILY) || defined(ARCH_CPU_PPC64_FAMILY)
-   // CONFIG_CLONE_BACKWARDS defined.
-   return syscall(__NR_clone, flags, child_stack, ptid, tls, ctid);
- #endif
-diff --git a/sandbox/linux/syscall_broker/broker_process.cc b/sandbox/linux/syscall_broker/broker_process.cc
-index 56d4964cfd..a2e94eada5 100644
---- a/sandbox/linux/syscall_broker/broker_process.cc
-+++ b/sandbox/linux/syscall_broker/broker_process.cc
-@@ -151,7 +151,7 @@ bool BrokerProcess::IsSyscallAllowed(int sysno) const {
- #if defined(__NR_fstatat)
-     case __NR_fstatat:
- #endif
--#if defined(__x86_64__) || defined(__aarch64__)
-+#if defined(__x86_64__) || defined(__aarch64__) || defined(__powerpc64__)
-     case __NR_newfstatat:
- #endif
-       return !fast_check_in_client_ || allowed_command_set_.test(COMMAND_STAT);
-diff --git a/sandbox/linux/system_headers/linux_seccomp.h b/sandbox/linux/system_headers/linux_seccomp.h
-index a60fe2ad3d..9dccdb51d0 100644
---- a/sandbox/linux/system_headers/linux_seccomp.h
-+++ b/sandbox/linux/system_headers/linux_seccomp.h
-@@ -29,6 +29,9 @@
- #ifndef EM_AARCH64
- #define EM_AARCH64 183
- #endif
-+#ifndef EM_PPC64
-+#define EM_PPC64 21
-+#endif
- 
- #ifndef __AUDIT_ARCH_64BIT
- #define __AUDIT_ARCH_64BIT 0x80000000
-@@ -54,6 +57,12 @@
- #ifndef AUDIT_ARCH_AARCH64
- #define AUDIT_ARCH_AARCH64 (EM_AARCH64 | __AUDIT_ARCH_64BIT | __AUDIT_ARCH_LE)
- #endif
-+#ifndef AUDIT_ARCH_PPC64
-+#define AUDIT_ARCH_PPC64 (EM_PPC64 | __AUDIT_ARCH_64BIT)
-+#endif
-+#ifndef AUDIT_ARCH_PPC64LE
-+#define AUDIT_ARCH_PPC64LE (EM_PPC64 | __AUDIT_ARCH_64BIT | __AUDIT_ARCH_LE)
-+#endif
- 
- // For prctl.h
- #ifndef PR_SET_SECCOMP
-diff --git a/sandbox/linux/system_headers/linux_signal.h b/sandbox/linux/system_headers/linux_signal.h
-index f5a7367617..515b21a5fd 100644
---- a/sandbox/linux/system_headers/linux_signal.h
-+++ b/sandbox/linux/system_headers/linux_signal.h
-@@ -13,7 +13,7 @@
- // (not undefined, but defined different values and in different memory
- // layouts). So, fill the gap here.
- #if defined(__i386__) || defined(__x86_64__) || defined(__arm__) || \
--    defined(__aarch64__)
-+    defined(__aarch64__) || defined(__powerpc64__)
- 
- #define LINUX_SIGHUP 1
- #define LINUX_SIGINT 2
-diff --git a/sandbox/linux/system_headers/linux_syscalls.h b/sandbox/linux/system_headers/linux_syscalls.h
-index 2b78a0cc3b..0a70f5ea58 100644
---- a/sandbox/linux/system_headers/linux_syscalls.h
-+++ b/sandbox/linux/system_headers/linux_syscalls.h
-@@ -35,5 +35,9 @@
- #include "sandbox/linux/system_headers/arm64_linux_syscalls.h"
- #endif
- 
-+#if defined(__powerpc64__)
-+#include "sandbox/linux/system_headers/ppc64_linux_syscalls.h"
-+#endif
-+
- #endif  // SANDBOX_LINUX_SYSTEM_HEADERS_LINUX_SYSCALLS_H_
- 
-diff --git a/sandbox/linux/system_headers/linux_ucontext.h b/sandbox/linux/system_headers/linux_ucontext.h
-index 22ce780274..a69b024c2f 100644
---- a/sandbox/linux/system_headers/linux_ucontext.h
-+++ b/sandbox/linux/system_headers/linux_ucontext.h
-@@ -11,6 +11,8 @@
- #include "sandbox/linux/system_headers/arm_linux_ucontext.h"
- #elif defined(__i386__)
- #include "sandbox/linux/system_headers/i386_linux_ucontext.h"
-+#elif defined(__powerpc64__)
-+#include "sandbox/linux/system_headers/ppc64_linux_ucontext.h"
- #else
- #error "No support for your architecture in PNaCl header"
- #endif
-diff --git a/sandbox/linux/system_headers/ppc64_linux_syscalls.h b/sandbox/linux/system_headers/ppc64_linux_syscalls.h
-new file mode 100644
-index 0000000000..ccacffe22e
---- /dev/null
-+++ b/sandbox/linux/system_headers/ppc64_linux_syscalls.h
-@@ -0,0 +1,12 @@
-+// Copyright 2014 The Chromium Authors. All rights reserved.
-+// Use of this source code is governed by a BSD-style license that can be
-+// found in the LICENSE file.
-+
-+#ifndef SANDBOX_LINUX_SYSTEM_HEADERS_PPC64_LINUX_SYSCALLS_H_
-+#define SANDBOX_LINUX_SYSTEM_HEADERS_PPC64_LINUX_SYSCALLS_H_
-+
-+#include <asm/unistd.h>
-+
-+//TODO: is it necessary to redefine syscall numbers for PPC64?
-+
-+#endif  // SANDBOX_LINUX_SYSTEM_HEADERS_PPC64_LINUX_SYSCALLS_H_
-diff --git a/sandbox/linux/system_headers/ppc64_linux_ucontext.h b/sandbox/linux/system_headers/ppc64_linux_ucontext.h
-new file mode 100644
-index 0000000000..07728e0879
---- /dev/null
-+++ b/sandbox/linux/system_headers/ppc64_linux_ucontext.h
-@@ -0,0 +1,12 @@
-+// Copyright 2014 The Chromium Authors. All rights reserved.
-+// Use of this source code is governed by a BSD-style license that can be
-+// found in the LICENSE file.
-+
-+#ifndef SANDBOX_LINUX_SYSTEM_HEADERS_PPC64_LINUX_UCONTEXT_H_
-+#define SANDBOX_LINUX_SYSTEM_HEADERS_PPC64_LINUX_UCONTEXT_H_
-+
-+#include <sys/ucontext.h>
-+
-+//TODO: is it necessary to redefine ucontext on PPC64?
-+
-+#endif  // SANDBOX_LINUX_SYSTEM_HEADERS_PPC64_LINUX_UCONTEXT_H_
-diff --git a/script/list_patch_targets.py b/script/list_patch_targets.py
-new file mode 100755
-index 0000000000..55173bac99
---- /dev/null
-+++ b/script/list_patch_targets.py
-@@ -0,0 +1,23 @@
-+#!/usr/bin/env python
-+
-+import argparse
-+import json
-+
-+
-+def parse_args():
-+  parser = argparse.ArgumentParser(description='Apply Electron patches')
-+  parser.add_argument('config', nargs='+',
-+                      type=argparse.FileType('r'),
-+                      help='patches\' config(s) in the JSON format')
-+  return parser.parse_args()
-+
-+
-+def main():
-+  configs = parse_args().config
-+  for config_json in configs:
-+    for patch_dir, repo in json.load(config_json).iteritems():
-+      print(repo)
-+
-+
-+if __name__ == '__main__':
-+  main()
-diff --git a/services/service_manager/sandbox/linux/bpf_renderer_policy_linux.cc b/services/service_manager/sandbox/linux/bpf_renderer_policy_linux.cc
-index 017f13cf7b..a76e579b7b 100644
---- a/services/service_manager/sandbox/linux/bpf_renderer_policy_linux.cc
-+++ b/services/service_manager/sandbox/linux/bpf_renderer_policy_linux.cc
-@@ -15,6 +15,11 @@
- #include "sandbox/linux/system_headers/linux_syscalls.h"
- #include "services/service_manager/sandbox/linux/sandbox_linux.h"
- 
-+// On PPC64, TCGETS is defined in terms of struct termios, so we must include termios.h
-+#ifdef __powerpc64__
-+#include <termios.h>
-+#endif
-+
- // TODO(vignatti): replace the local definitions below with #include
- // <linux/dma-buf.h> once kernel version 4.6 becomes widely used.
- #include <linux/types.h>
-diff --git a/third_party/angle/src/compiler/translator/InfoSink.h b/third_party/angle/src/compiler/translator/InfoSink.h
-index 3a807e1e3d..5258617a7e 100644
---- a/third_party/angle/src/compiler/translator/InfoSink.h
-+++ b/third_party/angle/src/compiler/translator/InfoSink.h
-@@ -92,7 +92,16 @@ class TInfoSinkBase
-             stream.precision(8);
-             stream << f;
-         }
--        sink.append(stream.str());
-+
-+        // Hack to work around a bug where negative floating point values
-+        // are rendered like '.0.5' instead of '-0.5'
-+        std::string res(stream.str());
-+
-+        if (signbit(f)) { // test if f is negative
-+            res[0] = '-';
-+        }
-+
-+        sink.append(res);
-         return *this;
-     }
-     // Write boolean values as their names instead of integral value.
-diff --git a/third_party/angle/src/libANGLE/Constants.h b/third_party/angle/src/libANGLE/Constants.h
-index 5a2f9875d7..47e66f2262 100644
---- a/third_party/angle/src/libANGLE/Constants.h
-+++ b/third_party/angle/src/libANGLE/Constants.h
-@@ -9,6 +9,7 @@
- #ifndef LIBANGLE_CONSTANTS_H_
- #define LIBANGLE_CONSTANTS_H_
- 
-+#include <cstddef>
- #include "common/platform.h"
- 
- #include <stdint.h>
-diff --git a/third_party/boringssl/BUILD.gn b/third_party/boringssl/BUILD.gn
-index 250ed85424..c75f4e0c21 100644
---- a/third_party/boringssl/BUILD.gn
-+++ b/third_party/boringssl/BUILD.gn
-@@ -103,6 +103,13 @@ if (is_win && !is_msan && current_cpu != "arm64") {
-       } else {
-         public_configs = [ ":no_asm_config" ]
-       }
-+    } else if (current_cpu == "ppc64") {
-+      if (is_linux) {
-+        # TODO: ppc64 (be) check
-+        sources += crypto_sources_linux_ppc64le
-+      } else {
-+        public_configs = [ ":no_asm_config" ]
-+      }
-     } else {
-       public_configs = [ ":no_asm_config" ]
-     }
-diff --git a/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/raw_context_cpu.h b/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/raw_context_cpu.h
-index 07d9171a0a..9aed4cb369 100644
---- a/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/raw_context_cpu.h
-+++ b/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/raw_context_cpu.h
-@@ -44,6 +44,8 @@ typedef MDRawContextARM RawContextCPU;
- typedef MDRawContextARM64_Old RawContextCPU;
- #elif defined(__mips__)
- typedef MDRawContextMIPS RawContextCPU;
-+#elif defined(__powerpc64__)
-+typedef MDRawContextPPC64 RawContextCPU;
- #else
- #error "This code has not been ported to your platform yet."
- #endif
-diff --git a/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/thread_info.cc b/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/thread_info.cc
-index aae1dc13b2..03afec7a58 100644
---- a/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/thread_info.cc
-+++ b/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/thread_info.cc
-@@ -270,7 +270,42 @@ void ThreadInfo::FillCPUContext(RawContextCPU* out) const {
-   out->float_save.fir = mcontext.fpc_eir;
- #endif
- }
--#endif  // __mips__
-+
-+#elif defined(__powerpc64__)
-+
-+uintptr_t ThreadInfo::GetInstructionPointer() const {
-+    return mcontext.gp_regs[PT_NIP];
-+}
-+
-+void ThreadInfo::FillCPUContext(RawContextCPU* out) const {
-+    out->context_flags = MD_CONTEXT_PPC64_FULL;
-+    for (int i = 0; i < MD_CONTEXT_PPC64_GPR_COUNT; i++)
-+        out->gpr[i] = mcontext.gp_regs[i];
-+
-+    out->lr = mcontext.gp_regs[PT_LNK];
-+    out->srr0 = mcontext.gp_regs[PT_NIP];
-+    out->srr1 = mcontext.gp_regs[PT_MSR];
-+    out->cr = mcontext.gp_regs[PT_CCR];
-+    out->xer = mcontext.gp_regs[PT_XER];
-+    out->ctr = mcontext.gp_regs[PT_CTR];
-+    
-+    for (int i = 0; i < MD_FLOATINGSAVEAREA_PPC_FPR_COUNT; i++)
-+        out->float_save.fpregs[i] = mcontext.fp_regs[i];
-+
-+    out->float_save.fpscr = mcontext.fp_regs[NFPREG-1];
-+
-+    for (int i = 0; i < MD_VECTORSAVEAREA_PPC_VR_COUNT; i++)
-+        out->vector_save.save_vr[i] = \
-+            {(((uint64_t)vregs.vrregs[i][0]) << 32) 
-+                          | vregs.vrregs[i][1], 
-+            (((uint64_t)vregs.vrregs[i][2]) << 32)
-+                         | vregs.vrregs[i][3]};
-+
-+    out->vrsave = vregs.vrsave;
-+    out->vector_save.save_vscr = {0, vregs.vscr.vscr_word};
-+    out->vector_save.save_vrvalid = 0xFFFFFFFF; 
-+}
-+#endif  // __powerpc64__
- 
- void ThreadInfo::GetGeneralPurposeRegisters(void** gp_regs, size_t* size) {
-   assert(gp_regs || size);
-@@ -279,6 +314,11 @@ void ThreadInfo::GetGeneralPurposeRegisters(void** gp_regs, size_t* size) {
-     *gp_regs = mcontext.gregs;
-   if (size)
-     *size = sizeof(mcontext.gregs);
-+#elif defined(__powerpc64__)
-+  if (gp_regs)
-+    *gp_regs = mcontext.gp_regs;
-+  if (size)
-+    *size = sizeof(mcontext.gp_regs);
- #else
-   if (gp_regs)
-     *gp_regs = &regs;
-@@ -294,6 +334,11 @@ void ThreadInfo::GetFloatingPointRegisters(void** fp_regs, size_t* size) {
-     *fp_regs = &mcontext.fpregs;
-   if (size)
-     *size = sizeof(mcontext.fpregs);
-+#elif defined(__powerpc64__)
-+  if (fp_regs)
-+    *fp_regs = &mcontext.fp_regs;
-+  if (size)
-+    *size = sizeof(mcontext.fp_regs);
- #else
-   if (fp_regs)
-     *fp_regs = &fpregs;
-@@ -302,4 +347,13 @@ void ThreadInfo::GetFloatingPointRegisters(void** fp_regs, size_t* size) {
- #endif
- }
- 
-+#if defined(__powerpc64__)
-+void ThreadInfo::GetVectorRegisters(void** v_regs, size_t* size) {
-+    if (v_regs)
-+        *v_regs = &vregs;
-+    if (size)
-+        *size = sizeof(vregs);
-+}
-+#endif
-+
- }  // namespace google_breakpad
-diff --git a/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/thread_info.h b/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/thread_info.h
-index fb216fa6d7..593aac8225 100644
---- a/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/thread_info.h
-+++ b/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/thread_info.h
-@@ -68,6 +68,10 @@ struct ThreadInfo {
-   // Use the structures defined in <sys/user.h>
-   struct user_regs_struct regs;
-   struct user_fpsimd_struct fpregs;
-+#elif defined(__powerpc64__)
-+  // Use the structures defined in <sys/ucontext.h>.
-+  mcontext_t mcontext;
-+  vrregset_t vregs;
- #elif defined(__mips__)
-   // Use the structure defined in <sys/ucontext.h>.
-   mcontext_t mcontext;
-@@ -84,6 +88,11 @@ struct ThreadInfo {
- 
-   // Returns the pointer and size of float point register area.
-   void GetFloatingPointRegisters(void** fp_regs, size_t* size);
-+
-+#if defined(__powerpc64__)
-+  // Returns the pointer and size of the vector register area. (PPC64 only)
-+  void GetVectorRegisters(void** v_regs, size_t* size);
-+#endif
- };
- 
- }  // namespace google_breakpad
-diff --git a/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/ucontext_reader.cc b/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/ucontext_reader.cc
-index 6ee6cc1e4c..44fee5ba06 100644
---- a/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/ucontext_reader.cc
-+++ b/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/ucontext_reader.cc
-@@ -254,6 +254,48 @@ void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc) {
-   out->float_save.fir = uc->uc_mcontext.fpc_eir;  // Unused.
- #endif
- }
-+
-+#elif defined(__powerpc64__)
-+
-+uintptr_t UContextReader::GetStackPointer(const ucontext_t* uc) {
-+    return uc->uc_mcontext.gp_regs[MD_CONTEXT_PPC64_REG_SP];
-+}
-+
-+uintptr_t UContextReader::GetInstructionPointer(const ucontext_t* uc) {
-+    return uc->uc_mcontext.gp_regs[PT_NIP];
-+}
-+
-+void UContextReader::FillCPUContext(RawContextCPU* out, const ucontext_t* uc,
-+                                    const vrregset_t* vregs) {
-+    out->context_flags = MD_CONTEXT_PPC64_FULL;
-+
-+    for (int i = 0; i < MD_CONTEXT_PPC64_GPR_COUNT; i++)
-+        out->gpr[i] = uc->uc_mcontext.gp_regs[i];
-+
-+    out->lr = uc->uc_mcontext.gp_regs[PT_LNK];    
-+    out->srr0 = uc->uc_mcontext.gp_regs[PT_NIP];
-+    out->srr1 = uc->uc_mcontext.gp_regs[PT_MSR];
-+    out->cr = uc->uc_mcontext.gp_regs[PT_CCR];
-+    out->xer = uc->uc_mcontext.gp_regs[PT_XER];
-+    out->ctr = uc->uc_mcontext.gp_regs[PT_CTR];
-+    
-+    for (int i = 0; i < MD_FLOATINGSAVEAREA_PPC_FPR_COUNT; i++)
-+        out->float_save.fpregs[i] = uc->uc_mcontext.fp_regs[i];
-+
-+    out->float_save.fpscr = uc->uc_mcontext.fp_regs[NFPREG-1];
-+
-+    for (int i = 0; i < MD_VECTORSAVEAREA_PPC_VR_COUNT; i++)
-+        out->vector_save.save_vr[i] =
-+            {(((uint64_t)vregs->vrregs[i][0]) << 32) 
-+                         | vregs->vrregs[i][1], 
-+             (((uint64_t)vregs->vrregs[i][2]) << 32)
-+                         | vregs->vrregs[i][3]};
-+
-+    out->vrsave = vregs->vrsave;
-+    out->vector_save.save_vscr = {0, vregs->vscr.vscr_word};
-+    out->vector_save.save_vrvalid = 0xFFFFFFFF; 
-+}
-+
- #endif
- 
- }  // namespace google_breakpad
-diff --git a/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/ucontext_reader.h b/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/ucontext_reader.h
-index f830618f24..24d996380f 100644
---- a/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/ucontext_reader.h
-+++ b/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/ucontext_reader.h
-@@ -54,6 +54,9 @@ struct UContextReader {
- #elif defined(__aarch64__)
-   static void FillCPUContext(RawContextCPU *out, const ucontext_t *uc,
-                              const struct fpsimd_context* fpregs);
-+#elif defined(__powerpc64__)
-+  static void FillCPUContext(RawContextCPU *out, const ucontext_t *uc,
-+                             const vrregset_t* vregs);
- #else
-   static void FillCPUContext(RawContextCPU *out, const ucontext_t *uc);
- #endif
-diff --git a/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc b/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc
-index b895f6d7ad..901cd68fbd 100644
---- a/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc
-+++ b/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc
-@@ -461,9 +461,16 @@ bool ExceptionHandler::HandleSignal(int /*sig*/, siginfo_t* info, void* uc) {
-     memcpy(&g_crash_context_.float_state, fp_ptr,
-            sizeof(g_crash_context_.float_state));
-   }
-+#elif defined(__powerpc64__)
-+  // On PPC64, we must copy VR state
-+  ucontext_t* uc_ptr = (ucontext_t*)uc;
-+  if (uc_ptr->uc_mcontext.v_regs) {
-+    memcpy(&g_crash_context_.vector_state, uc_ptr->uc_mcontext.v_regs,
-+           sizeof(g_crash_context_.vector_state));
-+  }
- #elif !defined(__ARM_EABI__) && !defined(__mips__)
-   // FP state is not part of user ABI on ARM Linux.
--  // In case of MIPS Linux FP state is already part of ucontext_t
-+  // In case of MIPS, Linux FP state is already part of ucontext_t
-   // and 'float_state' is not a member of CrashContext.
-   ucontext_t* uc_ptr = (ucontext_t*)uc;
-   if (uc_ptr->uc_mcontext.fpregs) {
-@@ -701,11 +708,19 @@ bool ExceptionHandler::WriteMinidump() {
-   }
- #endif
- 
--#if !defined(__ARM_EABI__) && !defined(__aarch64__) && !defined(__mips__)
-+#if !defined(__ARM_EABI__) && !defined(__aarch64__) && !defined(__mips__) \
-+    && !defined(__powerpc64__)
-   // FPU state is not part of ARM EABI ucontext_t.
-   memcpy(&context.float_state, context.context.uc_mcontext.fpregs,
-          sizeof(context.float_state));
- #endif
-+
-+#if defined(__powerpc64__)
-+  // Vector registers must be copied on PPC64
-+  memcpy(&context.vector_state, context.context.uc_mcontext.v_regs,
-+         sizeof(context.vector_state));
-+#endif
-+
-   context.tid = sys_gettid();
- 
-   // Add an exception stream to the minidump for better reporting.
-@@ -726,6 +741,9 @@ bool ExceptionHandler::WriteMinidump() {
- #elif defined(__mips__)
-   context.siginfo.si_addr =
-       reinterpret_cast<void*>(context.context.uc_mcontext.pc);
-+#elif defined(__powerpc64__)
-+  context.siginfo.si_addr =
-+      reinterpret_cast<void*>(context.context.uc_mcontext.gp_regs[PT_NIP]);
- #else
- #error "This code has not been ported to your platform yet."
- #endif
-diff --git a/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.h b/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.h
-index f44483ff0f..36ce6d6ce4 100644
---- a/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.h
-+++ b/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.h
-@@ -192,7 +192,11 @@ class ExceptionHandler {
-     siginfo_t siginfo;
-     pid_t tid;  // the crashing thread.
-     ucontext_t context;
--#if !defined(__ARM_EABI__) && !defined(__mips__)
-+#if defined(__powerpc64__)
-+    // PPC64's FP state is a part of ucontext_t like MIPS but the vector
-+    // state is not, so a struct is needed.
-+    vstate_t vector_state;
-+#elif !defined(__ARM_EABI__) && !defined(__mips__)
-     // #ifdef this out because FP state is not part of user ABI for Linux ARM.
-     // In case of MIPS Linux FP state is already part of ucontext_t so
-     // 'float_state' is not required.
-diff --git a/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler_unittest.cc b/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler_unittest.cc
-index bcbf9c26f1..2c36ed41f2 100644
---- a/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler_unittest.cc
-+++ b/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler_unittest.cc
-@@ -307,7 +307,7 @@ TEST(ExceptionHandlerTest, ParallelChildCrashesDontHang) {
-   }
- 
-   // Wait a while until the child should have crashed.
--  usleep(1000000);
-+  usleep(2000000);
-   // Kill the child if it is still running.
-   kill(child, SIGKILL);
- 
-@@ -559,6 +559,8 @@ const unsigned char kIllegalInstruction[] = {
- #if defined(__mips__)
-   // mfc2 zero,Impl - usually illegal in userspace.
-   0x48, 0x00, 0x00, 0x48
-+#elif defined(__powerpc64__)
-+  0x01, 0x01, 0x01, 0x01 // Crashes on a tested POWER9 cpu
- #else
-   // This crashes with SIGILL on x86/x86-64/arm.
-   0xff, 0xff, 0xff, 0xff
-@@ -754,10 +756,10 @@ TEST(ExceptionHandlerTest, InstructionPointerMemoryMaxBound) {
- 
-   // These are defined here so the parent can use them to check the
-   // data from the minidump afterwards.
--  // Use 4k here because the OS will hand out a single page even
-+  // Use the page size here because the OS will hand out a single page even
-   // if a smaller size is requested, and this test wants to
-   // test the upper bound of the memory range.
--  const uint32_t kMemorySize = 4096;  // bytes
-+  const uint32_t kMemorySize = getpagesize();  // bytes
-   const int kOffset = kMemorySize - sizeof(kIllegalInstruction);
- 
-   const pid_t child = fork();
-diff --git a/third_party/breakpad/breakpad/src/client/linux/microdump_writer/microdump_writer.cc b/third_party/breakpad/breakpad/src/client/linux/microdump_writer/microdump_writer.cc
-index fa3c1713a5..6ce709e2f0 100644
---- a/third_party/breakpad/breakpad/src/client/linux/microdump_writer/microdump_writer.cc
-+++ b/third_party/breakpad/breakpad/src/client/linux/microdump_writer/microdump_writer.cc
-@@ -138,7 +138,9 @@ class MicrodumpWriter {
-                   const MicrodumpExtraInfo& microdump_extra_info,
-                   LinuxDumper* dumper)
-       : ucontext_(context ? &context->context : NULL),
--#if !defined(__ARM_EABI__) && !defined(__mips__)
-+#if defined(__powerpc64__)
-+        vector_state_(context ? &context->vector_state : NULL),
-+#elif !defined(__ARM_EABI__) && !defined(__mips__)
-         float_state_(context ? &context->float_state : NULL),
- #endif
-         dumper_(dumper),
-@@ -337,6 +339,8 @@ class MicrodumpWriter {
- # else
- #  error "This mips ABI is currently not supported (n32)"
- #endif
-+#elif defined(__powerpc64__)
-+    const char kArch[] = "ppc64";
- #else
- #error "This code has not been ported to your platform yet"
- #endif
-@@ -409,7 +413,9 @@ class MicrodumpWriter {
-   void DumpCPUState() {
-     RawContextCPU cpu;
-     my_memset(&cpu, 0, sizeof(RawContextCPU));
--#if !defined(__ARM_EABI__) && !defined(__mips__)
-+#if defined(__powerpc64__)
-+    UContextReader::FillCPUContext(&cpu, ucontext_, vector_state_);
-+#elif !defined(__ARM_EABI__) && !defined(__mips__)
-     UContextReader::FillCPUContext(&cpu, ucontext_, float_state_);
- #else
-     UContextReader::FillCPUContext(&cpu, ucontext_);
-@@ -605,7 +611,9 @@ class MicrodumpWriter {
-   void* Alloc(unsigned bytes) { return dumper_->allocator()->Alloc(bytes); }
- 
-   const ucontext_t* const ucontext_;
--#if !defined(__ARM_EABI__) && !defined(__mips__)
-+#if defined(__powerpc64__)
-+  const google_breakpad::vstate_t* const vector_state_;
-+#elif !defined(__ARM_EABI__) && !defined(__mips__)
-   const google_breakpad::fpstate_t* const float_state_;
- #endif
-   LinuxDumper* dumper_;
-diff --git a/third_party/breakpad/breakpad/src/client/linux/microdump_writer/microdump_writer_unittest.cc b/third_party/breakpad/breakpad/src/client/linux/microdump_writer/microdump_writer_unittest.cc
-index c2fea0225e..8c62c524a2 100644
---- a/third_party/breakpad/breakpad/src/client/linux/microdump_writer/microdump_writer_unittest.cc
-+++ b/third_party/breakpad/breakpad/src/client/linux/microdump_writer/microdump_writer_unittest.cc
-@@ -278,10 +278,19 @@ TEST(MicrodumpWriterTest, BasicWithMappings) {
-   CrashAndGetMicrodump(mappings, MicrodumpExtraInfo(), &buf);
-   ASSERT_TRUE(ContainsMicrodump(buf));
- 
-+  int page_size = getpagesize();
- #ifdef __LP64__
--  ASSERT_NE(std::string::npos,
--            buf.find("M 0000000000001000 000000000000002A 0000000000001000 "
--                     "33221100554477668899AABBCCDDEEFF0 libfoo.so"));
-+  // This test is only available for the following page sizes
-+  ASSERT_TRUE((page_size == 4096) || (page_size == 65536));
-+  if (page_size == 4096) { 
-+    ASSERT_NE(std::string::npos,
-+              buf.find("M 0000000000001000 000000000000002A 0000000000001000 "
-+                       "33221100554477668899AABBCCDDEEFF0 libfoo.so"));
-+  } else {
-+    ASSERT_NE(std::string::npos,
-+              buf.find("M 0000000000010000 000000000000002A 0000000000010000 "
-+                       "33221100554477668899AABBCCDDEEFF0 libfoo.so"));
-+  }
- #else
-   ASSERT_NE(std::string::npos,
-             buf.find("M 00001000 0000002A 00001000 "
-diff --git a/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_core_dumper.cc b/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_core_dumper.cc
-index 4150689839..b93e4afcff 100644
---- a/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_core_dumper.cc
-+++ b/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_core_dumper.cc
-@@ -112,6 +112,9 @@ bool LinuxCoreDumper::GetThreadInfoByIndex(size_t index, ThreadInfo* info) {
- #elif defined(__mips__)
-   stack_pointer =
-       reinterpret_cast<uint8_t*>(info->mcontext.gregs[MD_CONTEXT_MIPS_REG_SP]);
-+#elif defined(__powerpc64__)
-+  stack_pointer =
-+      reinterpret_cast<uint8_t*>(info->mcontext.gp_regs[MD_CONTEXT_PPC64_REG_SP]);
- #else
- #error "This code hasn't been ported to your platform yet."
- #endif
-@@ -197,7 +200,10 @@ bool LinuxCoreDumper::EnumerateThreads() {
-         memset(&info, 0, sizeof(ThreadInfo));
-         info.tgid = status->pr_pgrp;
-         info.ppid = status->pr_ppid;
--#if defined(__mips__)
-+#if defined(__powerpc64__)
-+        for (int i = 0; i < 31; i++)
-+            info.mcontext.gp_regs[i] = status->pr_reg[i];
-+#elif defined(__mips__)
- #if defined(__ANDROID__)
-         for (int i = EF_R0; i <= EF_R31; i++)
-           info.mcontext.gregs[i - EF_R0] = status->pr_reg[i];
-diff --git a/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_dumper.cc b/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_dumper.cc
-index dbedecd530..f91f7f9940 100644
---- a/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_dumper.cc
-+++ b/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_dumper.cc
-@@ -798,7 +798,9 @@ bool LinuxDumper::GetStackInfo(const void** stack, size_t* stack_len,
-       reinterpret_cast<uint8_t*>(int_stack_pointer & ~(page_size - 1));
- 
-   // The number of bytes of stack which we try to capture.
--  static const ptrdiff_t kStackToCapture = 32 * 1024;
-+  // This now depends on page_size to avoid missing data
-+  // on systems with larger page sizes.
-+  static const ptrdiff_t kStackToCapture = 8 * page_size;
- 
-   const MappingInfo* mapping = FindMapping(stack_pointer);
-   if (!mapping)
-diff --git a/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_dumper.h b/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_dumper.h
-index f4a75d9060..020981f57e 100644
---- a/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_dumper.h
-+++ b/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_dumper.h
-@@ -63,7 +63,8 @@ namespace google_breakpad {
-  (defined(__mips__) && _MIPS_SIM == _ABIO32)
- typedef Elf32_auxv_t elf_aux_entry;
- #elif defined(__x86_64) || defined(__aarch64__) || \
--     (defined(__mips__) && _MIPS_SIM != _ABIO32)
-+     (defined(__mips__) && _MIPS_SIM != _ABIO32) || \
-+     defined(__powerpc64__)
- typedef Elf64_auxv_t elf_aux_entry;
- #endif
- 
-diff --git a/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_dumper_unittest_helper.cc b/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_dumper_unittest_helper.cc
-index 3ad48e5015..1688c365ef 100644
---- a/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_dumper_unittest_helper.cc
-+++ b/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_dumper_unittest_helper.cc
-@@ -51,6 +51,8 @@
- #define TID_PTR_REGISTER "rcx"
- #elif defined(__mips__)
- #define TID_PTR_REGISTER "$1"
-+#elif defined(__powerpc64__)
-+#define TID_PTR_REGISTER "r8"
- #else
- #error This test has not been ported to this platform.
- #endif
-diff --git a/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_ptrace_dumper.cc b/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_ptrace_dumper.cc
-index e3ddb81a65..fa28575ef5 100644
---- a/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_ptrace_dumper.cc
-+++ b/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_ptrace_dumper.cc
-@@ -149,19 +149,27 @@ bool LinuxPtraceDumper::CopyFromProcess(void* dest, pid_t child,
-   return true;
- }
- 
--bool LinuxPtraceDumper::ReadRegisterSet(ThreadInfo* info, pid_t tid)
--{
-+bool LinuxPtraceDumper::ReadRegisterSet(ThreadInfo* info, pid_t tid) {
- #ifdef PTRACE_GETREGSET
-   struct iovec io;
-   info->GetGeneralPurposeRegisters(&io.iov_base, &io.iov_len);
--  if (sys_ptrace(PTRACE_GETREGSET, tid, (void*)NT_PRSTATUS, (void*)&io) == -1) {
-+  if (ptrace(PTRACE_GETREGSET, tid, (void*)NT_PRSTATUS, (void*)&io) == -1) {
-     return false;
-   }
- 
-   info->GetFloatingPointRegisters(&io.iov_base, &io.iov_len);
--  if (sys_ptrace(PTRACE_GETREGSET, tid, (void*)NT_FPREGSET, (void*)&io) == -1) {
-+  if (ptrace(PTRACE_GETREGSET, tid, (void*)NT_FPREGSET, (void*)&io) == -1) {
-     return false;
-   }
-+
-+#if defined(__powerpc64__)
-+  // Grab the vector registers on PPC64 too
-+  info->GetVectorRegisters(&io.iov_base, &io.iov_len);
-+  if (ptrace(PTRACE_GETREGSET, tid, (void*)NT_PPC_VMX, (void*)&io) == -1) {
-+    return false;
-+  }
-+#endif // defined(__powerpc64__)
-+
-   return true;
- #else
-   return false;
-@@ -298,6 +306,9 @@ bool LinuxPtraceDumper::GetThreadInfoByIndex(size_t index, ThreadInfo* info) {
- #elif defined(__mips__)
-   stack_pointer =
-       reinterpret_cast<uint8_t*>(info->mcontext.gregs[MD_CONTEXT_MIPS_REG_SP]);
-+#elif defined(__powerpc64__)
-+  stack_pointer =
-+      reinterpret_cast<uint8_t*>(info->mcontext.gp_regs[MD_CONTEXT_PPC64_REG_SP]);
- #else
- #error "This code hasn't been ported to your platform yet."
- #endif
-diff --git a/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_ptrace_dumper_unittest.cc b/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_ptrace_dumper_unittest.cc
-index a41dafce04..31743940de 100644
---- a/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_ptrace_dumper_unittest.cc
-+++ b/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_ptrace_dumper_unittest.cc
-@@ -462,6 +462,9 @@ TEST(LinuxPtraceDumperTest, VerifyStackReadWithMultipleThreads) {
- #elif defined(__mips__)
-     pid_t* process_tid_location =
-         reinterpret_cast<pid_t*>(one_thread.mcontext.gregs[1]);
-+#elif defined(__powerpc64__)
-+    pid_t* process_tid_location =
-+        reinterpret_cast<pid_t*>(one_thread.mcontext.gp_regs[8]);
- #else
- #error This test has not been ported to this platform.
- #endif
-@@ -559,6 +562,8 @@ TEST_F(LinuxPtraceDumperTest, SanitizeStackCopy) {
-   uintptr_t heap_addr = thread_info.regs.rcx;
- #elif defined(__mips__)
-   uintptr_t heap_addr = thread_info.mcontext.gregs[1];
-+#elif defined(__powerpc64__)
-+  uintptr_t heap_addr = thread_info.mcontext.gp_regs[8];
- #else
- #error This test has not been ported to this platform.
- #endif
-diff --git a/third_party/breakpad/breakpad/src/client/linux/minidump_writer/minidump_writer.cc b/third_party/breakpad/breakpad/src/client/linux/minidump_writer/minidump_writer.cc
-index f8cdf2a1c6..cb808c151f 100644
---- a/third_party/breakpad/breakpad/src/client/linux/minidump_writer/minidump_writer.cc
-+++ b/third_party/breakpad/breakpad/src/client/linux/minidump_writer/minidump_writer.cc
-@@ -136,7 +136,9 @@ class MinidumpWriter {
-       : fd_(minidump_fd),
-         path_(minidump_path),
-         ucontext_(context ? &context->context : NULL),
--#if !defined(__ARM_EABI__) && !defined(__mips__)
-+#if defined(__powerpc64__)
-+        vector_state_(context ? &context->vector_state : NULL),
-+#elif !defined(__ARM_EABI__) && !defined(__mips__)
-         float_state_(context ? &context->float_state : NULL),
- #endif
-         dumper_(dumper),
-@@ -468,7 +470,9 @@ class MinidumpWriter {
-         if (!cpu.Allocate())
-           return false;
-         my_memset(cpu.get(), 0, sizeof(RawContextCPU));
--#if !defined(__ARM_EABI__) && !defined(__mips__)
-+#if defined(__powerpc64__)
-+        UContextReader::FillCPUContext(cpu.get(), ucontext_, vector_state_);
-+#elif !defined(__ARM_EABI__) && !defined(__mips__)
-         UContextReader::FillCPUContext(cpu.get(), ucontext_, float_state_);
- #else
-         UContextReader::FillCPUContext(cpu.get(), ucontext_);
-@@ -897,7 +901,7 @@ class MinidumpWriter {
-     dirent->location.rva = 0;
-   }
- 
--#if defined(__i386__) || defined(__x86_64__) || defined(__mips__)
-+#if defined(__i386__) || defined(__x86_64__) || defined(__mips__) || defined(__powerpc64__)
-   bool WriteCPUInformation(MDRawSystemInfo* sys_info) {
-     char vendor_id[sizeof(sys_info->cpu.x86_cpu_info.vendor_id) + 1] = {0};
-     static const char vendor_id_name[] = "vendor_id";
-@@ -917,7 +921,9 @@ class MinidumpWriter {
- 
-     // processor_architecture should always be set, do this first
-     sys_info->processor_architecture =
--#if defined(__mips__)
-+#if defined(__powerpc64__)
-+        MD_CPU_ARCHITECTURE_PPC64;
-+#elif defined(__mips__)
- # if _MIPS_SIM == _ABIO32
-         MD_CPU_ARCHITECTURE_MIPS;
- # elif _MIPS_SIM == _ABI64
-@@ -1333,7 +1339,9 @@ class MinidumpWriter {
-   const char* path_;  // Path to the file where the minidum should be written.
- 
-   const ucontext_t* const ucontext_;  // also from the signal handler
--#if !defined(__ARM_EABI__) && !defined(__mips__)
-+#if defined(__powerpc64__)
-+  const google_breakpad::vstate_t* const vector_state_;
-+#elif !defined(__ARM_EABI__) && !defined(__mips__)
-   const google_breakpad::fpstate_t* const float_state_;  // ditto
- #endif
-   LinuxDumper* dumper_;
-diff --git a/third_party/breakpad/breakpad/src/client/linux/minidump_writer/minidump_writer.h b/third_party/breakpad/breakpad/src/client/linux/minidump_writer/minidump_writer.h
-index d1dc331215..c344621df1 100644
---- a/third_party/breakpad/breakpad/src/client/linux/minidump_writer/minidump_writer.h
-+++ b/third_party/breakpad/breakpad/src/client/linux/minidump_writer/minidump_writer.h
-@@ -47,6 +47,8 @@ class ExceptionHandler;
- 
- #if defined(__aarch64__)
- typedef struct fpsimd_context fpstate_t;
-+#elif defined(__powerpc64__)
-+typedef vrregset_t vstate_t;
- #elif !defined(__ARM_EABI__) && !defined(__mips__)
- typedef struct _libc_fpstate fpstate_t;
- #endif
-diff --git a/third_party/breakpad/breakpad/src/client/linux/minidump_writer/minidump_writer_unittest.cc b/third_party/breakpad/breakpad/src/client/linux/minidump_writer/minidump_writer_unittest.cc
-index c951e69d8f..e1d6e40d67 100644
---- a/third_party/breakpad/breakpad/src/client/linux/minidump_writer/minidump_writer_unittest.cc
-+++ b/third_party/breakpad/breakpad/src/client/linux/minidump_writer/minidump_writer_unittest.cc
-@@ -714,6 +714,9 @@ TEST(MinidumpWriterTest, InvalidStackPointer) {
- #elif defined(__mips__)
-   context.context.uc_mcontext.gregs[MD_CONTEXT_MIPS_REG_SP] =
-       invalid_stack_pointer;
-+#elif defined(__powerpc64__)
-+  context.context.uc_mcontext.gp_regs[MD_CONTEXT_PPC64_REG_SP] =
-+      invalid_stack_pointer;
- #else
- # error "This code has not been ported to your platform yet."
- #endif
-diff --git a/third_party/breakpad/breakpad/src/common/linux/memory_mapped_file.cc b/third_party/breakpad/breakpad/src/common/linux/memory_mapped_file.cc
-index 4e938269f2..f0ff15d967 100644
---- a/third_party/breakpad/breakpad/src/common/linux/memory_mapped_file.cc
-+++ b/third_party/breakpad/breakpad/src/common/linux/memory_mapped_file.cc
-@@ -65,8 +65,7 @@ bool MemoryMappedFile::Map(const char* path, size_t offset) {
-   }
- 
- #if defined(__x86_64__) || defined(__aarch64__) || \
--   (defined(__mips__) && _MIPS_SIM == _ABI64)
--
-+   (defined(__mips__) && _MIPS_SIM == _ABI64) || defined(__powerpc64__)
-   struct kernel_stat st;
-   if (sys_fstat(fd, &st) == -1 || st.st_size < 0) {
- #else
-diff --git a/third_party/breakpad/breakpad/src/common/linux/memory_mapped_file_unittest.cc b/third_party/breakpad/breakpad/src/common/linux/memory_mapped_file_unittest.cc
-index fad59f40cd..616496d672 100644
---- a/third_party/breakpad/breakpad/src/common/linux/memory_mapped_file_unittest.cc
-+++ b/third_party/breakpad/breakpad/src/common/linux/memory_mapped_file_unittest.cc
-@@ -176,9 +176,10 @@ TEST_F(MemoryMappedFileTest, RemapAfterMap) {
- TEST_F(MemoryMappedFileTest, MapWithOffset) {
-   // Put more data in the test file this time. Offsets can only be
-   // done on page boundaries, so we need a two page file to test this.
--  const int page_size = 4096;
--  char data1[2 * page_size];
--  size_t data1_size = sizeof(data1);
-+  const int page_size = getpagesize();
-+  char *data1 = static_cast<char*>(malloc(2 * page_size));
-+  EXPECT_TRUE(data1 != NULL);
-+  size_t data1_size = (2 * page_size);
-   for (size_t i = 0; i < data1_size; ++i) {
-     data1[i] = i & 0x7f;
-   }
-diff --git a/third_party/breakpad/breakpad/src/processor/exploitability_linux.cc b/third_party/breakpad/breakpad/src/processor/exploitability_linux.cc
-index ccc9f1459c..debaed4d6e 100644
---- a/third_party/breakpad/breakpad/src/processor/exploitability_linux.cc
-+++ b/third_party/breakpad/breakpad/src/processor/exploitability_linux.cc
-@@ -202,12 +202,14 @@ bool ExploitabilityLinux::EndedOnIllegalWrite(uint64_t instruction_ptr) {
-   // Check architecture and set architecture variable to corresponding flag
-   // in objdump.
-   switch (context->GetContextCPU()) {
-+#if defined(__i386) || defined(__x86_64)
-     case MD_CONTEXT_X86:
-       architecture = "i386";
-       break;
-     case MD_CONTEXT_AMD64:
-       architecture = "i386:x86-64";
-       break;
-+#endif
-     default:
-       // Unsupported architecture. Note that ARM architectures are not
-       // supported because objdump does not support ARM.
-diff --git a/third_party/breakpad/breakpad/src/processor/exploitability_unittest.cc b/third_party/breakpad/breakpad/src/processor/exploitability_unittest.cc
-index 528ee5f213..72764d6c1e 100644
---- a/third_party/breakpad/breakpad/src/processor/exploitability_unittest.cc
-+++ b/third_party/breakpad/breakpad/src/processor/exploitability_unittest.cc
-@@ -104,6 +104,8 @@ ExploitabilityFor(const string& filename) {
- }
- 
- TEST(ExploitabilityTest, TestWindowsEngine) {
-+// The following tests are only executable on an x86-class linux machine.
-+#if !defined(_WIN32) && (defined(__i386) || defined(__x86_64))
-   ASSERT_EQ(google_breakpad::EXPLOITABILITY_HIGH,
-             ExploitabilityFor("ascii_read_av.dmp"));
-   ASSERT_EQ(google_breakpad::EXPLOITABILITY_HIGH,
-@@ -136,9 +138,12 @@ TEST(ExploitabilityTest, TestWindowsEngine) {
-             ExploitabilityFor("read_av_clobber_write.dmp"));
-   ASSERT_EQ(google_breakpad::EXPLOITABILITY_LOW,
-             ExploitabilityFor("read_av_conditional.dmp"));
-+#endif
- }
- 
- TEST(ExploitabilityTest, TestLinuxEngine) {
-+// The following tests are only executable on an x86-class linux machine.
-+#if defined(__i386) || defined(__x86_64)
-   ASSERT_EQ(google_breakpad::EXPLOITABILITY_INTERESTING,
-             ExploitabilityFor("linux_null_read_av.dmp"));
-   ASSERT_EQ(google_breakpad::EXPLOITABILITY_HIGH,
-@@ -171,7 +176,8 @@ TEST(ExploitabilityTest, TestLinuxEngine) {
-             ExploitabilityFor("linux_executable_heap.dmp"));
-   ASSERT_EQ(google_breakpad::EXPLOITABILITY_HIGH,
-             ExploitabilityFor("linux_jmp_to_module_not_exe_region.dmp"));
--#ifndef _WIN32
-+#endif
-+#if !defined(_WIN32) && (defined(__i386) || defined(__x86_64))
-   ASSERT_EQ(google_breakpad::EXPLOITABILITY_HIGH,
-             ExploitabilityFor("linux_write_to_nonwritable_module.dmp"));
-   ASSERT_EQ(google_breakpad::EXPLOITABILITY_HIGH,
-@@ -182,10 +188,10 @@ TEST(ExploitabilityTest, TestLinuxEngine) {
-             ExploitabilityFor("linux_write_to_outside_module_via_math.dmp"));
-   ASSERT_EQ(google_breakpad::EXPLOITABILITY_INTERESTING,
-             ExploitabilityFor("linux_write_to_under_4k.dmp"));
--#endif  // _WIN32
-+#endif  // !defined(_WIN32) && (!defined(__i386) && !defined(__x86_64))
- }
- 
--#ifndef _WIN32
-+#if !defined(_WIN32) && (defined(__i386) || defined(__x86_64))
- TEST(ExploitabilityLinuxUtilsTest, DisassembleBytesTest) {
-   ASSERT_FALSE(ExploitabilityLinuxTest::DisassembleBytes("", NULL, 5, NULL));
-   uint8_t bytes[6] = {0xc7, 0x0, 0x5, 0x0, 0x0, 0x0};
-@@ -301,6 +307,7 @@ TEST(ExploitabilityLinuxUtilsTest, CalculateAddressTest) {
-                                                          context,
-                                                          &write_address));
- }
--#endif  // _WIN32
-+#endif  // !defined(_WIN32) && (defined(__i386) || defined(__x86_64))
-+
- 
- }  // namespace
-diff --git a/third_party/breakpad/breakpad/src/tools/linux/md2core/minidump-2-core.cc b/third_party/breakpad/breakpad/src/tools/linux/md2core/minidump-2-core.cc
-index 941586e9f6..49cdc3fc28 100644
---- a/third_party/breakpad/breakpad/src/tools/linux/md2core/minidump-2-core.cc
-+++ b/third_party/breakpad/breakpad/src/tools/linux/md2core/minidump-2-core.cc
-@@ -76,6 +76,8 @@
-   #define ELF_ARCH  EM_MIPS
- #elif defined(__aarch64__)
-   #define ELF_ARCH  EM_AARCH64
-+#elif defined(__powerpc64__)
-+  #define ELF_ARCH  EM_PPC64
- #endif
- 
- #if defined(__arm__)
-@@ -86,6 +88,8 @@ typedef user_regs user_regs_struct;
- #elif defined (__mips__)
- // This file-local typedef simplifies the source code.
- typedef gregset_t user_regs_struct;
-+#elif defined(__powerpc64__)
-+typedef struct pt_regs user_regs_struct;
- #endif
- 
- using google_breakpad::MDTypeHelper;
-@@ -320,6 +324,9 @@ struct CrashedProcess {
- #endif
- #if defined(__aarch64__)
-     user_fpsimd_struct fpregs;
-+#endif
-+#if defined(__powerpc64__)
-+    mcontext_t mcontext;
- #endif
-     uintptr_t stack_addr;
-     const uint8_t* stack;
-@@ -534,6 +541,38 @@ ParseThreadRegisters(CrashedProcess::Thread* thread,
-   thread->mcontext.fpc_eir = rawregs->float_save.fir;
- #endif
- }
-+#elif defined(__powerpc64__)
-+static void
-+ParseThreadRegisters(CrashedProcess::Thread* thread,
-+                     const MinidumpMemoryRange& range) {
-+  const MDRawContextPPC64* rawregs = range.GetData<MDRawContextPPC64>(0);
-+
-+  for (int i = 0; i < MD_CONTEXT_PPC64_GPR_COUNT; i++)
-+    thread->mcontext.gp_regs[i] = rawregs->gpr[i];
-+
-+  thread->mcontext.gp_regs[PT_LNK] = rawregs->lr;
-+  thread->mcontext.gp_regs[PT_NIP] = rawregs->srr0;
-+  thread->mcontext.gp_regs[PT_MSR] = rawregs->srr1;
-+  thread->mcontext.gp_regs[PT_CCR] = rawregs->cr;
-+  thread->mcontext.gp_regs[PT_XER] = rawregs->xer;
-+  thread->mcontext.gp_regs[PT_CTR] = rawregs->ctr;
-+  thread->mcontext.v_regs->vrsave = rawregs->vrsave;
-+
-+  for (int i = 0; i < MD_FLOATINGSAVEAREA_PPC_FPR_COUNT; i++)
-+      thread->mcontext.fp_regs[i] = rawregs->float_save.fpregs[i];
-+
-+  thread->mcontext.fp_regs[NFPREG-1] = rawregs->float_save.fpscr;
-+
-+  for (int i = 0; i < MD_VECTORSAVEAREA_PPC_VR_COUNT; i++) {
-+      thread->mcontext.v_regs->vrregs[i][0] = rawregs->vector_save.save_vr[i].high >> 32;
-+      thread->mcontext.v_regs->vrregs[i][1] = rawregs->vector_save.save_vr[i].high;
-+      thread->mcontext.v_regs->vrregs[i][2] = rawregs->vector_save.save_vr[i].low >> 32;
-+      thread->mcontext.v_regs->vrregs[i][3] = rawregs->vector_save.save_vr[i].low;
-+  }
-+
-+  thread->mcontext.v_regs->vscr.vscr_word = rawregs->vector_save.save_vscr.low & 0xFFFFFFFF;
-+}
-+
- #else
- #error "This code has not been ported to your platform yet"
- #endif
-@@ -622,6 +661,12 @@ ParseSystemInfo(const Options& options, CrashedProcess* crashinfo,
- # else
- #  error "This mips ABI is currently not supported (n32)"
- # endif
-+#elif defined(__powerpc64__)
-+  if (sysinfo->processor_architecture != MD_CPU_ARCHITECTURE_PPC64) {
-+    fprintf(stderr,
-+            "This version of minidump-2-core only supports PPC64.\n");
-+    exit(1);
-+  }
- #else
- #error "This code has not been ported to your platform yet"
- #endif
-diff --git a/third_party/crashpad/crashpad/CONTRIBUTORS b/third_party/crashpad/crashpad/CONTRIBUTORS
-index 8724b7f32f..8e29424ef6 100644
---- a/third_party/crashpad/crashpad/CONTRIBUTORS
-+++ b/third_party/crashpad/crashpad/CONTRIBUTORS
-@@ -13,3 +13,4 @@ Mark Mentovai <mark@chromium.org>
- Robert Sesek <rsesek@chromium.org>
- Scott Graham <scottmg@chromium.org>
- Joshua Peraza <jperaza@chromium.org>
-+Shawn Anastasio <shawn@anastas.io>
-diff --git a/third_party/crashpad/crashpad/compat/linux/sys/user.h b/third_party/crashpad/crashpad/compat/linux/sys/user.h
-index 6ed77a98e1..1fd83469a0 100644
---- a/third_party/crashpad/crashpad/compat/linux/sys/user.h
-+++ b/third_party/crashpad/crashpad/compat/linux/sys/user.h
-@@ -15,6 +15,7 @@
- #ifndef CRASHPAD_COMPAT_LINUX_SYS_USER_H_
- #define CRASHPAD_COMPAT_LINUX_SYS_USER_H_
- 
-+#include <cstddef>
- #include_next <sys/user.h>
- 
- #include <features.h>
-diff --git a/third_party/crashpad/crashpad/minidump/minidump_context.h b/third_party/crashpad/crashpad/minidump/minidump_context.h
-index 3a3e603cb0..3118d9e9f9 100644
---- a/third_party/crashpad/crashpad/minidump/minidump_context.h
-+++ b/third_party/crashpad/crashpad/minidump/minidump_context.h
-@@ -592,6 +592,70 @@ struct MinidumpContextMIPS64 {
-   uint64_t fir;
- };
- 
-+//! \brief ppc64-specific flags for MinidumpPPC64::context_flags
-+//! Based on minidump_cpu_ppc64.h from breakpad
-+enum MinidumpContextPPC64Flags : uint32_t {
-+  //! \brief Identifies the context as PPC64.
-+  kMinidumpContextPPC64 = 0x01000000,
-+
-+  //! \brief Indicates the validity of general purpose registers.
-+  //!
-+  //! Registers `r0`-`r31`, `nip`, `msr`, `lr`, etc. are valid.
-+  kMinidumpContextPPC64Base = kMinidumpContextPPC64 | 0x00000001,
-+
-+  //! \brief Indicates the validity of floating point registers.
-+  //!
-+  //! Registers `fp0`-`fp31`, `fpscr` are valid.
-+  kMinidumpContextPPC64Floating = kMinidumpContextPPC64 | 0x00000008,
-+
-+  //! \brief Indicates the validity of Altivec/VMX registers.
-+  //!
-+  //! Registers `v0`-`v31`, `vscr`, `vrsave`.
-+  kMinidumpContextPPC64Vector = kMinidumpContextPPC64 | 0x00000020,
-+
-+  //! \brief Indicates the validity of all registers
-+  kMinidumpContextPPC64All = kMinidumpContextPPC64Base     |
-+                             kMinidumpContextPPC64Floating |
-+                             kMinidumpContextPPC64Vector
-+};
-+
-+//! \brief A PPC64 CPU context carried in a minidump file.
-+//! Based on minidump_cpu_ppc64.h from breakpad.
-+struct MinidumpContextPPC64 {
-+  uint64_t context_flags;
-+
-+  //! \brief General purpose registers.
-+  uint64_t nip;
-+  uint64_t msr;
-+  uint64_t regs[32];
-+  uint64_t ccr;
-+  uint64_t xer;
-+  uint64_t lnk;
-+  uint64_t ctr;
-+
-+  //! \brief Floating point registers.
-+  double fpregs[32];
-+
-+  //! \brief FPU status register.
-+  double fpscr;
-+
-+  //! \brief Altivec/VMX vector registers.
-+  struct {
-+      //! \brief Vector registers are 128bits.
-+      uint128_struct save_vr[32];
-+      uint128_struct save_vscr;
-+
-+      //! \brief Padding included for breakpad compatibiltiy.
-+      uint32_t save_pad5[4];
-+
-+      //! \brief VRSAVE register.
-+      uint32_t save_vrsave;
-+
-+      //! \brief Padding included for breakpad compatibiltiy.
-+      uint32_t save_pad6[7];
-+  } vregs;
-+};
-+
- }  // namespace crashpad
- 
- #endif  // CRASHPAD_MINIDUMP_MINIDUMP_CONTEXT_H_
-diff --git a/third_party/crashpad/crashpad/minidump/minidump_context_writer.cc b/third_party/crashpad/crashpad/minidump/minidump_context_writer.cc
-index d7e53a4932..d89eb9e013 100644
---- a/third_party/crashpad/crashpad/minidump/minidump_context_writer.cc
-+++ b/third_party/crashpad/crashpad/minidump/minidump_context_writer.cc
-@@ -101,6 +101,13 @@ MinidumpContextWriter::CreateFromSnapshot(const CPUContext* context_snapshot) {
-       break;
-     }
- 
-+    case kCPUArchitecturePPC64: {
-+      context = std::make_unique<MinidumpContextPPC64Writer>();
-+      reinterpret_cast<MinidumpContextPPC64Writer*>(context.get())
-+          ->InitalizeFromSnapshot(context_snapshot->ppc64);
-+      break;
-+    }
-+
-     default: {
-       LOG(ERROR) << "unknown context architecture "
-                  << context_snapshot->architecture;
-@@ -453,4 +460,47 @@ size_t MinidumpContextMIPS64Writer::ContextSize() const {
-   return sizeof(context_);
- }
- 
-+MinidumpContextPPC64Writer::MinidumpContextPPC64Writer()
-+  : MinidumpContextWriter(), context_() {
-+    context_.context_flags = kMinidumpContextPPC64;
-+}
-+
-+MinidumpContextPPC64Writer::~MinidumpContextPPC64Writer() = default;
-+
-+void MinidumpContextPPC64Writer::InitalizeFromSnapshot(
-+    const CPUContextPPC64* context_snapshot) {
-+  DCHECK_EQ(state(), kStateMutable);
-+  DCHECK_EQ(context_.context_flags, kMinidumpContextPPC64);
-+
-+  context_.context_flags = kMinidumpContextPPC64All;
-+
-+  memcpy(context_.regs, context_snapshot->regs, sizeof(context_.regs));
-+  context_.nip = context_snapshot->nip;
-+  context_.msr = context_snapshot->msr;
-+  context_.ccr = context_snapshot->ccr;
-+  context_.xer = context_snapshot->xer;
-+  context_.lnk = context_snapshot->lnk;
-+  context_.ctr = context_snapshot->ctr;
-+
-+  memcpy(context_.fpregs, context_snapshot->fpregs, sizeof(context_.fpregs));
-+  context_.fpscr = context_snapshot->fpscr;
-+
-+  memcpy(context_.vregs.save_vr, context_snapshot->vregs.save_vr,
-+         sizeof(context_.vregs.save_vr));
-+  memcpy(&context_.vregs.save_vscr, &context_snapshot->vregs.save_vscr,
-+         sizeof(context_.vregs.save_vscr));
-+  context_.vregs.save_vrsave = context_snapshot->vregs.save_vrsave;
-+}
-+
-+bool MinidumpContextPPC64Writer::WriteObject(
-+    FileWriterInterface* file_writer) {
-+  DCHECK_EQ(state(), kStateWritable);
-+  return file_writer->Write(&context_, sizeof(context_));
-+}
-+
-+size_t MinidumpContextPPC64Writer::ContextSize() const {
-+  DCHECK_GE(state(), kStateFrozen);
-+  return sizeof(context_);
-+}
-+
- }  // namespace crashpad
-diff --git a/third_party/crashpad/crashpad/minidump/minidump_context_writer.h b/third_party/crashpad/crashpad/minidump/minidump_context_writer.h
-index d4ab936ee7..1d22fc59c9 100644
---- a/third_party/crashpad/crashpad/minidump/minidump_context_writer.h
-+++ b/third_party/crashpad/crashpad/minidump/minidump_context_writer.h
-@@ -315,6 +315,45 @@ class MinidumpContextMIPS64Writer final : public MinidumpContextWriter {
-   DISALLOW_COPY_AND_ASSIGN(MinidumpContextMIPS64Writer);
- };
- 
-+class MinidumpContextPPC64Writer final : public MinidumpContextWriter {
-+ public:
-+  MinidumpContextPPC64Writer();
-+  ~MinidumpContextPPC64Writer() override;
-+
-+  //! \brief Initalizes the MinidumpContextPPC64 based on \a context_snapshot.
-+  //!
-+  //! \param[in] context_snapshot The context snapshot to use as source data.
-+  //!
-+  //! \note Valid in #kStateMutable. No mutation of context() may be done before
-+  //!     calling this method, and it is not normally necessary to alter
-+  //!     context() after calling this method.
-+  void InitalizeFromSnapshot(const CPUContextPPC64* context_snapshot);
-+
-+  //! \brief Returns a pointer to the context structure that this object will
-+  //!     write.
-+  //!
-+  //! \attention This returns a non-`const` pointer to this object’s private
-+  //!     data so that a caller can populate the context structure directly.
-+  //!     This is done because providing setter interfaces to each field in the
-+  //!     context structure would be unwieldy and cumbersome. Care must be taken
-+  //!     to populate the context structure correctly. The context structure
-+  //!     must only be modified while this object is in the #kStateMutable
-+  //!     state.
-+  MinidumpContextPPC64* context() { return &context_; }
-+
-+ protected:
-+  // MinidumpWritable:
-+  bool WriteObject(FileWriterInterface* file_writer) override;
-+
-+  // MinidumpContextWriter:
-+  size_t ContextSize() const override;
-+
-+ private:
-+  MinidumpContextPPC64 context_;
-+
-+  DISALLOW_COPY_AND_ASSIGN(MinidumpContextPPC64Writer);
-+};
-+
- }  // namespace crashpad
- 
- #endif  // CRASHPAD_MINIDUMP_MINIDUMP_CONTEXT_WRITER_H_
-diff --git a/third_party/crashpad/crashpad/minidump/minidump_context_writer_test.cc b/third_party/crashpad/crashpad/minidump/minidump_context_writer_test.cc
-index 3216a906ba..a9fcbe9d8e 100644
---- a/third_party/crashpad/crashpad/minidump/minidump_context_writer_test.cc
-+++ b/third_party/crashpad/crashpad/minidump/minidump_context_writer_test.cc
-@@ -213,6 +213,21 @@ TEST(MinidumpContextWriter, MIPS64_FromSnapshot) {
-       context, ExpectMinidumpContextMIPS64, kSeed);
- }
- 
-+TEST(MinidumpContextWriter, PPC64_Zeros) {
-+  EmptyContextTest<MinidumpContextPPC64Writer, MinidumpContextPPC64>(
-+    ExpectMinidumpContextPPC64);
-+}
-+
-+TEST(MinidumpContextWriter, PPC64_FromSnapshot) {
-+  constexpr uint32_t kSeed = 64;
-+  CPUContextPPC64 context_ppc64;
-+  CPUContext context;
-+  context.ppc64 = &context_ppc64;
-+  InitializeCPUContextPPC64(&context, kSeed);
-+  FromSnapshotTest<MinidumpContextPPC64Writer, MinidumpContextPPC64>(
-+      context, ExpectMinidumpContextPPC64, kSeed);
-+}
-+
- }  // namespace
- }  // namespace test
- }  // namespace crashpad
-diff --git a/third_party/crashpad/crashpad/minidump/minidump_misc_info_writer.cc b/third_party/crashpad/crashpad/minidump/minidump_misc_info_writer.cc
-index a13407605f..95dc925240 100644
---- a/third_party/crashpad/crashpad/minidump/minidump_misc_info_writer.cc
-+++ b/third_party/crashpad/crashpad/minidump/minidump_misc_info_writer.cc
-@@ -126,6 +126,8 @@ std::string MinidumpMiscInfoDebugBuildString() {
-   static constexpr char kCPU[] = "mips";
- #elif defined(ARCH_CPU_MIPS64EL)
-   static constexpr char kCPU[] = "mips64";
-+#elif defined(ARCH_CPU_PPC64)
-+  static constexpr char kCPU[] = "ppc64";
- #else
- #error define kCPU for this CPU
- #endif
-diff --git a/third_party/crashpad/crashpad/snapshot/capture_memory.cc b/third_party/crashpad/crashpad/snapshot/capture_memory.cc
-index a51626ccdc..61e0b20a17 100644
---- a/third_party/crashpad/crashpad/snapshot/capture_memory.cc
-+++ b/third_party/crashpad/crashpad/snapshot/capture_memory.cc
-@@ -111,6 +111,11 @@ void CaptureMemory::PointedToByContext(const CPUContext& context,
-   for (size_t i = 0; i < base::size(context.mipsel->regs); ++i) {
-     MaybeCaptureMemoryAround(delegate, context.mipsel->regs[i]);
-   }
-+#elif defined(ARCH_CPU_PPC64_FAMILY)
-+  MaybeCaptureMemoryAround(delegate, context.ppc64->nip);
-+  for (size_t i = 0; i < base::size(context.ppc64->regs); ++i) {
-+    MaybeCaptureMemoryAround(delegate, context.ppc64->regs[i]);
-+  }
- #else
- #error Port.
- #endif
-diff --git a/third_party/crashpad/crashpad/snapshot/cpu_architecture.h b/third_party/crashpad/crashpad/snapshot/cpu_architecture.h
-index 811a720958..f4f83981df 100644
---- a/third_party/crashpad/crashpad/snapshot/cpu_architecture.h
-+++ b/third_party/crashpad/crashpad/snapshot/cpu_architecture.h
-@@ -43,7 +43,10 @@ enum CPUArchitecture {
-   kCPUArchitectureMIPSEL,
- 
-   //! \brief 64-bit MIPSEL.
--  kCPUArchitectureMIPS64EL
-+  kCPUArchitectureMIPS64EL,
-+
-+  //! \brief 64-bit PPC64.
-+  kCPUArchitecturePPC64
- };
- 
- }  // namespace crashpad
-diff --git a/third_party/crashpad/crashpad/snapshot/cpu_context.cc b/third_party/crashpad/crashpad/snapshot/cpu_context.cc
-index 6fb8d7e719..b01f7cad11 100644
---- a/third_party/crashpad/crashpad/snapshot/cpu_context.cc
-+++ b/third_party/crashpad/crashpad/snapshot/cpu_context.cc
-@@ -169,6 +169,8 @@ uint64_t CPUContext::InstructionPointer() const {
-       return arm->pc;
-     case kCPUArchitectureARM64:
-       return arm64->pc;
-+    case kCPUArchitecturePPC64:
-+      return ppc64->nip;
-     default:
-       NOTREACHED();
-       return ~0ull;
-@@ -185,6 +187,8 @@ uint64_t CPUContext::StackPointer() const {
-       return arm->sp;
-     case kCPUArchitectureARM64:
-       return arm64->sp;
-+    case kCPUArchitecturePPC64:
-+      return ppc64->regs[1];
-     default:
-       NOTREACHED();
-       return ~0ull;
-@@ -196,6 +200,7 @@ bool CPUContext::Is64Bit() const {
-     case kCPUArchitectureX86_64:
-     case kCPUArchitectureARM64:
-     case kCPUArchitectureMIPS64EL:
-+    case kCPUArchitecturePPC64:
-       return true;
-     case kCPUArchitectureX86:
-     case kCPUArchitectureARM:
-diff --git a/third_party/crashpad/crashpad/snapshot/cpu_context.h b/third_party/crashpad/crashpad/snapshot/cpu_context.h
-index fb23c4679f..eebede63c6 100644
---- a/third_party/crashpad/crashpad/snapshot/cpu_context.h
-+++ b/third_party/crashpad/crashpad/snapshot/cpu_context.h
-@@ -352,6 +352,24 @@ struct CPUContextMIPS64 {
-   uint64_t fir;
- };
- 
-+//! \brief A context structure carrying PPC64 CPU state.
-+struct CPUContextPPC64 {
-+  uint64_t nip;
-+  uint64_t msr;
-+  uint64_t regs[32];
-+  uint64_t ccr;
-+  uint64_t xer;
-+  uint64_t lnk;
-+  uint64_t ctr;
-+  double fpregs[32];
-+  double fpscr;
-+  struct {
-+    uint128_struct save_vr[32];
-+    uint128_struct save_vscr;
-+    uint32_t save_vrsave;
-+  } vregs;
-+};
-+
- //! \brief A context structure capable of carrying the context of any supported
- //!     CPU architecture.
- struct CPUContext {
-@@ -382,6 +400,7 @@ struct CPUContext {
-     CPUContextARM64* arm64;
-     CPUContextMIPS* mipsel;
-     CPUContextMIPS64* mips64;
-+    CPUContextPPC64* ppc64;
-   };
- };
- 
-diff --git a/third_party/crashpad/crashpad/snapshot/linux/cpu_context_linux.h b/third_party/crashpad/crashpad/snapshot/linux/cpu_context_linux.h
-index 37fbc4325c..cf4ef7ef96 100644
---- a/third_party/crashpad/crashpad/snapshot/linux/cpu_context_linux.h
-+++ b/third_party/crashpad/crashpad/snapshot/linux/cpu_context_linux.h
-@@ -15,6 +15,7 @@
- #ifndef CRASHPAD_SNAPSHOT_LINUX_CPU_CONTEXT_LINUX_H_
- #define CRASHPAD_SNAPSHOT_LINUX_CPU_CONTEXT_LINUX_H_
- 
-+#include <cstring>
- #include "build/build_config.h"
- #include "snapshot/cpu_context.h"
- #include "snapshot/linux/signal_context.h"
-@@ -174,6 +175,78 @@ void InitializeCPUContextMIPS(
- 
- #endif  // ARCH_CPU_MIPS_FAMILY || DOXYGEN
- 
-+#if defined(ARCH_CPU_PPC64_FAMILY) || DOXYGEN
-+
-+//! \brief Initalizes a CPUContextPPC64 structure from native context
-+//!     structures on Linux.
-+//!
-+//! \param[in] thread_context The native thread context.
-+//! \param[in] float_context The native float context.
-+//! \param[in] vector_context The native vector context.
-+//! \param[out] context The CPUContextPPC64 structure to initalize.
-+template <typename Traits>
-+void InitializeCPUContextPPC64(
-+    const ThreadContext::t64_t& thread_context,
-+    const FloatContext::f64_t& float_context,
-+    const VectorContext::v64_t& vector_context,
-+    typename Traits::CPUContext* context) {
-+
-+  memcpy(context->regs, thread_context.gpr, sizeof(context->regs));
-+  context->nip = thread_context.nip;
-+  context->msr = thread_context.msr;
-+  context->ccr = thread_context.ccr;
-+  context->xer = thread_context.xer;
-+  context->lnk = thread_context.lnk;
-+  context->ctr = thread_context.ctr;
-+
-+  memcpy(context->fpregs, float_context.fpregs, sizeof(context->fpregs));
-+  context->fpscr = float_context.fpscr;
-+
-+  for (uint8_t i = 0; i < 32; i++) {
-+    context->vregs.save_vr[i] = {
-+      (((uint64_t)vector_context.vrregs[i][0]) << 32) |
-+        vector_context.vrregs[i][1],
-+      (((uint64_t)vector_context.vrregs[i][2]) << 32) |
-+        vector_context.vrregs[i][3]
-+    };
-+  }
-+  context->vregs.save_vrsave = vector_context.vrsave;
-+  context->vregs.save_vscr = {0, (uint64_t)vector_context.vscr.vscr_word};
-+}
-+
-+template <typename Traits>
-+void InitializeCPUContextPPC64(
-+    const SignalThreadContext64 &thread_context,
-+    const SignalFloatContext64 &float_context,
-+    const SignalVectorContext64 &vector_context,
-+    typename Traits::CPUContext* context) {
-+
-+  memcpy(context->regs, thread_context.regs, sizeof(context->regs));
-+  context->nip = thread_context.nip;
-+  context->msr = thread_context.msr;
-+  context->ccr = thread_context.ccr;
-+  context->xer = thread_context.xer;
-+  context->lnk = thread_context.lnk;
-+  context->ctr = thread_context.ctr;
-+
-+  memcpy(context->fpregs, float_context.regs, sizeof(context->fpregs));
-+  context->fpscr = float_context.fpscr;
-+
-+  for (uint8_t i = 0; i < 32; i++) {
-+    context->vregs.save_vr[i] = {
-+      (((uint64_t)vector_context.vrregs[i][0]) << 32) |
-+        vector_context.vrregs[i][1],
-+      (((uint64_t)vector_context.vrregs[i][2]) << 32) |
-+        vector_context.vrregs[i][3]
-+    };
-+  }
-+  context->vregs.save_vrsave = vector_context.vrsave;
-+  context->vregs.save_vscr = {0, (uint64_t)vector_context.vscr.vscr_word};
-+}
-+
-+
-+#endif
-+
- }  // namespace internal
- }  // namespace crashpad
- 
-diff --git a/third_party/crashpad/crashpad/snapshot/linux/debug_rendezvous_test.cc b/third_party/crashpad/crashpad/snapshot/linux/debug_rendezvous_test.cc
-index be22c90313..c5df23d1b4 100644
---- a/third_party/crashpad/crashpad/snapshot/linux/debug_rendezvous_test.cc
-+++ b/third_party/crashpad/crashpad/snapshot/linux/debug_rendezvous_test.cc
-@@ -159,9 +159,11 @@ void TestAgainstTarget(PtraceConnection* connection) {
-           const bool is_vdso_mapping =
-               device == 0 && inode == 0 && mapping_name == "[vdso]";
-           static constexpr char kPrefix[] = "linux-vdso.so.";
-+          static constexpr char kPrefix64[] = "linux-vdso64.so.";
-           return is_vdso_mapping ==
-                  (module_name.empty() ||
--                  module_name.compare(0, strlen(kPrefix), kPrefix) == 0);
-+                  module_name.compare(0, strlen(kPrefix), kPrefix) == 0 ||
-+                  module_name.compare(0, strlen(kPrefix64), kPrefix64) == 0);
-         },
-         module_mapping->name,
-         module_mapping->device,
-diff --git a/third_party/crashpad/crashpad/snapshot/linux/exception_snapshot_linux.cc b/third_party/crashpad/crashpad/snapshot/linux/exception_snapshot_linux.cc
-index cd40b3b12d..6bcf23b6ff 100644
---- a/third_party/crashpad/crashpad/snapshot/linux/exception_snapshot_linux.cc
-+++ b/third_party/crashpad/crashpad/snapshot/linux/exception_snapshot_linux.cc
-@@ -323,6 +323,69 @@ bool ExceptionSnapshotLinux::ReadContext<ContextTraits64>(
-       reader, context_address, context_.mips64);
- }
- 
-+#elif defined(ARCH_CPU_PPC64_FAMILY)
-+
-+template <typename Traits>
-+static bool ReadContext(ProcessReaderLinux* reader,
-+                        LinuxVMAddress context_address,
-+                        typename Traits::CPUContext* dest_context) {
-+  const ProcessMemory* memory = reader->Memory();
-+
-+  LinuxVMAddress gp_regs_address = context_address +
-+                                   offsetof(UContext, mcontext) +
-+                                   offsetof(typename Traits::MContext, gp_regs);
-+
-+  typename Traits::SignalThreadContext thread_context;
-+  if (!memory->Read(gp_regs_address, sizeof(thread_context), &thread_context)) {
-+    LOG(ERROR) << "Couldn't read gp_regs!";
-+    return false;
-+  }
-+
-+  LinuxVMAddress fp_regs_address = context_address +
-+                                   offsetof(UContext, mcontext) +
-+                                   offsetof(typename Traits::MContext, fp_regs);
-+
-+  typename Traits::SignalFloatContext fp_context;
-+  if (!memory->Read(fp_regs_address, sizeof(fp_context), &fp_context)) {
-+    LOG(ERROR) << "Couldn't read fp_regs!";
-+    return false;
-+  }
-+
-+  LinuxVMAddress v_regs_ptr_address = context_address +
-+                                  offsetof(UContext, mcontext) +
-+                                  offsetof(typename Traits::MContext, vmx_reserve) + 8;
-+
-+  typename Traits::SignalVectorContext v_context;
-+  if (!memory->Read(v_regs_ptr_address, sizeof(v_context), &v_context)) {
-+    LOG(ERROR) << "Couldn't read v_regs!";
-+    return false;
-+  }
-+
-+  InitializeCPUContextPPC64<ContextTraits64>(thread_context, fp_context,
-+                            v_context, dest_context);
-+
-+  return true;
-+}
-+
-+template<>
-+bool ExceptionSnapshotLinux::ReadContext<ContextTraits64>(
-+    ProcessReaderLinux* reader,
-+    LinuxVMAddress context_address) {
-+  context_.architecture = kCPUArchitecturePPC64;
-+  context_.ppc64 = &context_union_.ppc64;
-+
-+  return internal::ReadContext<ContextTraits64>(
-+      reader, context_address, context_.ppc64);
-+}
-+
-+template<>
-+bool ExceptionSnapshotLinux::ReadContext<ContextTraits32>(
-+    ProcessReaderLinux* reader,
-+    LinuxVMAddress context_address) {
-+  // PPC64 is 64-bit
-+  return false;
-+}
-+
- #endif  // ARCH_CPU_X86_FAMILY
- 
- bool ExceptionSnapshotLinux::Initialize(ProcessReaderLinux* process_reader,
-diff --git a/third_party/crashpad/crashpad/snapshot/linux/exception_snapshot_linux.h b/third_party/crashpad/crashpad/snapshot/linux/exception_snapshot_linux.h
-index ea0cd21066..e42df520ff 100644
---- a/third_party/crashpad/crashpad/snapshot/linux/exception_snapshot_linux.h
-+++ b/third_party/crashpad/crashpad/snapshot/linux/exception_snapshot_linux.h
-@@ -84,6 +84,8 @@ class ExceptionSnapshotLinux final : public ExceptionSnapshot {
- #elif defined(ARCH_CPU_MIPS_FAMILY)
-     CPUContextMIPS mipsel;
-     CPUContextMIPS64 mips64;
-+#elif defined(ARCH_CPU_PPC64_FAMILY)
-+    CPUContextPPC64 ppc64;
- #endif
-   } context_union_;
-   CPUContext context_;
-diff --git a/third_party/crashpad/crashpad/snapshot/linux/exception_snapshot_linux_test.cc b/third_party/crashpad/crashpad/snapshot/linux/exception_snapshot_linux_test.cc
-index e4ff1ab79f..25534dd087 100644
---- a/third_party/crashpad/crashpad/snapshot/linux/exception_snapshot_linux_test.cc
-+++ b/third_party/crashpad/crashpad/snapshot/linux/exception_snapshot_linux_test.cc
-@@ -296,7 +296,28 @@ void ExpectContext(const CPUContext& actual, const NativeCPUContext& expected) {
-             0);
- #undef CPU_ARCH_NAME
- }
-+#elif defined(ARCH_CPU_PPC64_FAMILY)
-+using NativeCPUContext = ucontext_t;
-+
-+void InitializeContext(NativeCPUContext* context) {
-+  for (size_t reg = 0; reg < 32; ++reg) {
-+    context->uc_mcontext.gp_regs[reg] = reg;
-+  }
-+
-+  memset(&context->uc_mcontext.fp_regs, 44,
-+      sizeof(context->uc_mcontext.fp_regs));
-+}
- 
-+void ExpectContext(const CPUContext& actual, const NativeCPUContext& expected) {
-+  EXPECT_EQ(actual.architecture, kCPUArchitecturePPC64);
-+
-+  for (size_t reg = 0; reg < 32; ++reg) {
-+    EXPECT_EQ(actual.ppc64->regs[reg], expected.uc_mcontext.gp_regs[reg]);
-+  }
-+
-+  EXPECT_EQ(memcmp(actual.ppc64->fpregs, expected.uc_mcontext.fp_regs,
-+            sizeof(actual.ppc64->fpregs)), 0);
-+}
- #else
- #error Port.
- #endif
-diff --git a/third_party/crashpad/crashpad/snapshot/linux/process_reader_linux.cc b/third_party/crashpad/crashpad/snapshot/linux/process_reader_linux.cc
-index b96abfe74f..df12ca5669 100644
---- a/third_party/crashpad/crashpad/snapshot/linux/process_reader_linux.cc
-+++ b/third_party/crashpad/crashpad/snapshot/linux/process_reader_linux.cc
-@@ -108,6 +108,8 @@ void ProcessReaderLinux::Thread::InitializeStack(ProcessReaderLinux* reader) {
- #elif defined(ARCH_CPU_MIPS_FAMILY)
-   stack_pointer = reader->Is64Bit() ? thread_info.thread_context.t64.regs[29]
-                                     : thread_info.thread_context.t32.regs[29];
-+#elif defined(ARCH_CPU_PPC64_FAMILY)
-+  stack_pointer = thread_info.thread_context.t64.gpr[1];
- #else
- #error Port.
- #endif
-diff --git a/third_party/crashpad/crashpad/snapshot/linux/process_reader_linux_test.cc b/third_party/crashpad/crashpad/snapshot/linux/process_reader_linux_test.cc
-index d767700205..40ad41d74f 100644
---- a/third_party/crashpad/crashpad/snapshot/linux/process_reader_linux_test.cc
-+++ b/third_party/crashpad/crashpad/snapshot/linux/process_reader_linux_test.cc
-@@ -613,6 +613,8 @@ bool WriteTestModule(const base::FilePath& module_path) {
-   module.ehdr.e_machine = EM_AARCH64;
- #elif defined(ARCH_CPU_MIPSEL) || defined(ARCH_CPU_MIPS64EL)
-   module.ehdr.e_machine = EM_MIPS;
-+#elif defined(ARCH_CPU_PPC64)
-+  module.ehdr.e_machine = EM_PPC64;
- #endif
- 
-   module.ehdr.e_version = EV_CURRENT;
-diff --git a/third_party/crashpad/crashpad/snapshot/linux/signal_context.h b/third_party/crashpad/crashpad/snapshot/linux/signal_context.h
-index 110024680b..a1f2da2591 100644
---- a/third_party/crashpad/crashpad/snapshot/linux/signal_context.h
-+++ b/third_party/crashpad/crashpad/snapshot/linux/signal_context.h
-@@ -422,6 +422,89 @@ static_assert(offsetof(UContext<ContextTraits64>, mcontext.fpregs) ==
-               "context offset mismatch");
- #endif
- 
-+#elif defined(ARCH_CPU_PPC64_FAMILY)
-+
-+struct SignalThreadContext64 {
-+  uint64_t regs[32];
-+  uint64_t nip;
-+  uint64_t msr;
-+  uint64_t orig_r3;
-+  uint64_t ctr;
-+  uint64_t lnk;
-+  uint64_t xer;
-+  uint64_t ccr;
-+  uint64_t softe;
-+  uint64_t trap;
-+  uint64_t dar;
-+  uint64_t dsisr;
-+  uint64_t result;
-+  uint64_t dscr;
-+  uint64_t fpr0[3];
-+};
-+
-+struct SignalFloatContext64 {
-+  double regs[32];
-+  double fpscr;
-+};
-+
-+struct SignalVectorContext64 {
-+  int32_t vrregs[32][4];
-+  struct {
-+    int32_t __pad[3];
-+    int32_t vscr_word;
-+  } vscr;
-+  int32_t vrsave;
-+  int32_t __pad[3];
-+} __attribute__((__aligned__(16)));
-+
-+
-+#pragma pack(pop)
-+struct MContext64 {
-+  uint64_t reserved[4];
-+  int32_t signal;
-+  int32_t __pad0;
-+  uint64_t handler;
-+  uint64_t oldmask;
-+  uint64_t pt_regs_ptr;
-+  SignalThreadContext64 gp_regs;
-+  SignalFloatContext64  fp_regs;
-+  SignalVectorContext64 *v_regs;
-+  int64_t vmx_reserve[69];
-+};
-+
-+struct ContextTraits64 : public Traits64 {
-+  using MContext = MContext64;
-+  using SignalThreadContext = SignalThreadContext64;
-+  using SignalFloatContext = SignalFloatContext64;
-+  using SignalVectorContext = SignalVectorContext64;
-+  using CPUContext = CPUContextPPC64;
-+};
-+
-+struct ContextTraits32 : public Traits32 {};
-+
-+struct UContext {
-+  uint64_t flags;
-+  uint64_t link;
-+  SignalStack<ContextTraits64> stack;
-+  Sigset<ContextTraits64> sigmask;
-+  MContext64 mcontext;
-+};
-+#pragma pack(push, 1)
-+
-+static_assert(sizeof(UContext) == sizeof(ucontext_t),
-+              "ucontext_t size mismatch");
-+static_assert(sizeof(MContext64) == sizeof(mcontext_t),
-+              "mcontext_t size mismatch");
-+static_assert(sizeof(SignalThreadContext64) == sizeof(gregset_t),
-+              "gregset_t size mismatch");
-+static_assert(sizeof(SignalFloatContext64) == sizeof(fpregset_t),
-+              "fpregset_t size mismatch");
-+static_assert(sizeof(SignalVectorContext64) == sizeof(vrregset_t),
-+              "vrregset_t size mismatch");
-+static_assert(offsetof(UContext, mcontext) ==
-+              offsetof(ucontext_t, uc_mcontext), "mcontext offset mismatch");
-+static_assert(offsetof(MContext64, gp_regs) ==
-+              offsetof(mcontext_t, gp_regs), "gp_regs offset mismatch");
- #else
- #error Port.
- #endif  // ARCH_CPU_X86_FAMILY
-diff --git a/third_party/crashpad/crashpad/snapshot/linux/system_snapshot_linux.cc b/third_party/crashpad/crashpad/snapshot/linux/system_snapshot_linux.cc
-index 8564d3d455..b690ecd48f 100644
---- a/third_party/crashpad/crashpad/snapshot/linux/system_snapshot_linux.cc
-+++ b/third_party/crashpad/crashpad/snapshot/linux/system_snapshot_linux.cc
-@@ -203,6 +203,8 @@ CPUArchitecture SystemSnapshotLinux::GetCPUArchitecture() const {
- #elif defined(ARCH_CPU_MIPS_FAMILY)
-   return process_reader_->Is64Bit() ? kCPUArchitectureMIPS64EL
-                                     : kCPUArchitectureMIPSEL;
-+#elif defined(ARCH_CPU_PPC64_FAMILY)
-+  return kCPUArchitecturePPC64;
- #else
- #error port to your architecture
- #endif
-@@ -218,6 +220,9 @@ uint32_t SystemSnapshotLinux::CPURevision() const {
- #elif defined(ARCH_CPU_MIPS_FAMILY)
-   // Not implementable on MIPS
-   return 0;
-+#elif defined(ARCH_CPU_PPC64_FAMILY)
-+  // Not yet implemented on PPC64
-+  return 0;
- #else
- #error port to your architecture
- #endif
-@@ -238,6 +243,9 @@ std::string SystemSnapshotLinux::CPUVendor() const {
- #elif defined(ARCH_CPU_MIPS_FAMILY)
-   // Not implementable on MIPS
-   return std::string();
-+#elif defined(ARCH_CPU_PPC64_FAMILY)
-+  // Not yet implemented on PPC64
-+  return std::string();
- #else
- #error port to your architecture
- #endif
-@@ -371,6 +379,9 @@ bool SystemSnapshotLinux::NXEnabled() const {
- #elif defined(ARCH_CPU_MIPS_FAMILY)
-   // Not implementable on MIPS
-   return false;
-+#elif defined(ARCH_CPU_PPC64_FAMILY)
-+  // Not yet implemented on PPC64
-+  return false;
- #else
- #error Port.
- #endif  // ARCH_CPU_X86_FAMILY
-diff --git a/third_party/crashpad/crashpad/snapshot/linux/thread_snapshot_linux.cc b/third_party/crashpad/crashpad/snapshot/linux/thread_snapshot_linux.cc
-index e3e2bebddb..8ef43752eb 100644
---- a/third_party/crashpad/crashpad/snapshot/linux/thread_snapshot_linux.cc
-+++ b/third_party/crashpad/crashpad/snapshot/linux/thread_snapshot_linux.cc
-@@ -186,6 +186,14 @@ bool ThreadSnapshotLinux::Initialize(ProcessReaderLinux* process_reader,
-         thread.thread_info.float_context.f32,
-         context_.mipsel);
-   }
-+#elif defined(ARCH_CPU_PPC64_FAMILY)
-+  context_.architecture = kCPUArchitecturePPC64;
-+  context_.ppc64 = &context_union_.ppc64;
-+  InitializeCPUContextPPC64<ContextTraits64>(
-+      thread.thread_info.thread_context.t64,
-+      thread.thread_info.float_context.f64,
-+      thread.thread_info.vector_context.v64,
-+      context_.ppc64);
- #else
- #error Port.
- #endif
-diff --git a/third_party/crashpad/crashpad/snapshot/linux/thread_snapshot_linux.h b/third_party/crashpad/crashpad/snapshot/linux/thread_snapshot_linux.h
-index 44cc6f6d97..d4136461e2 100644
---- a/third_party/crashpad/crashpad/snapshot/linux/thread_snapshot_linux.h
-+++ b/third_party/crashpad/crashpad/snapshot/linux/thread_snapshot_linux.h
-@@ -68,6 +68,8 @@ class ThreadSnapshotLinux final : public ThreadSnapshot {
- #elif defined(ARCH_CPU_MIPS_FAMILY)
-     CPUContextMIPS mipsel;
-     CPUContextMIPS64 mips64;
-+#elif defined(ARCH_CPU_PPC64_FAMILY)
-+    CPUContextPPC64 ppc64;
- #else
- #error Port.
- #endif  // ARCH_CPU_X86_FAMILY
-diff --git a/third_party/crashpad/crashpad/util/linux/auxiliary_vector.cc b/third_party/crashpad/crashpad/util/linux/auxiliary_vector.cc
-index d3d5ebdfb9..3fd730cb52 100644
---- a/third_party/crashpad/crashpad/util/linux/auxiliary_vector.cc
-+++ b/third_party/crashpad/crashpad/util/linux/auxiliary_vector.cc
-@@ -56,6 +56,11 @@ bool AuxiliaryVector::Read(PtraceConnection* connection) {
-     if (type == AT_IGNORE) {
-       continue;
-     }
-+#if defined(ARCH_CPU_PPC64_FAMILY)
-+    if (type == AT_IGNOREPPC) {
-+      continue;
-+    }
-+#endif
-     if (!MapInsertOrReplace(&values_, type, value, nullptr)) {
-       LOG(ERROR) << "duplicate auxv entry";
-       return false;
-diff --git a/third_party/crashpad/crashpad/util/linux/ptrace_broker.cc b/third_party/crashpad/crashpad/util/linux/ptrace_broker.cc
-index 155a1e0c6f..5e50ceb5f8 100644
---- a/third_party/crashpad/crashpad/util/linux/ptrace_broker.cc
-+++ b/third_party/crashpad/crashpad/util/linux/ptrace_broker.cc
-@@ -94,8 +94,8 @@ int PtraceBroker::Run() {
- }
- 
- bool PtraceBroker::AllocateAttachments() {
--  constexpr size_t page_size = 4096;
--  constexpr size_t alloc_size =
-+  static size_t page_size = getpagesize();
-+  size_t alloc_size =
-       (sizeof(ScopedPtraceAttach) + page_size - 1) & ~(page_size - 1);
-   void* alloc = sbrk(alloc_size);
-   if (reinterpret_cast<intptr_t>(alloc) == -1) {
-diff --git a/third_party/crashpad/crashpad/util/linux/ptracer.cc b/third_party/crashpad/crashpad/util/linux/ptracer.cc
-index c6c9229946..c770b6b6fe 100644
---- a/third_party/crashpad/crashpad/util/linux/ptracer.cc
-+++ b/third_party/crashpad/crashpad/util/linux/ptracer.cc
-@@ -394,6 +394,64 @@ bool GetThreadArea64(pid_t tid,
-   return true;
- }
- 
-+#elif defined(ARCH_CPU_PPC64_FAMILY)
-+// PPC64 has had HAVE_ARCH_TRACEHOOK set since 2.6.27 (even before x86 had it).
-+// That means we can simply use PTRACE_GETREGESET.
-+
-+template <typename Destination>
-+bool GetRegisterSet(pid_t tid, int set, Destination* dest, bool can_log) {
-+  iovec iov;
-+  iov.iov_base = reinterpret_cast<void*>(dest);
-+  iov.iov_len = sizeof(*dest);
-+  if (ptrace(PTRACE_GETREGSET, tid, reinterpret_cast<void*>(set), &iov) != 0) {
-+    PLOG_IF(ERROR, can_log) << "ptrace";
-+    return false;
-+  }
-+  if (iov.iov_len != sizeof(*dest)) {
-+    LOG_IF(ERROR, can_log) << "Unexpected registers size";
-+    return false;
-+  }
-+  return true;
-+}
-+
-+bool GetVectorRegisters64(pid_t tid,
-+                          VectorContext* context,
-+                          bool can_log) {
-+  return GetRegisterSet(tid, NT_PPC_VMX, &context->v64, can_log);
-+}
-+
-+bool GetFloatingPointRegisters64(pid_t tid,
-+                                 FloatContext* context,
-+                                 bool can_log) {
-+  return GetRegisterSet(tid, NT_PRFPREG, &context->f64, can_log);
-+}
-+
-+bool GetThreadArea64(pid_t tid,
-+                     const ThreadContext& context,
-+                     LinuxVMAddress* address,
-+                     bool can_log) {
-+  // PPC64 doesn't have PTRACE_GET_THREAD_AREA since the thread pointer
-+  // is stored in GPR 13.
-+  ThreadContext::t64_t tc;
-+  if (!GetRegisterSet(tid, NT_PRSTATUS, &tc, can_log)) {
-+    LOG_IF(ERROR, can_log) << "Unable to get thread pointer!";
-+    return false;
-+  }
-+
-+  *address = tc.gpr[13];
-+
-+  return true;
-+}
-+
-+// Stubs for 32-bit functions not applicable on PPC64
-+bool GetFloatingPointRegisters32(pid_t tid,
-+                                 FloatContext* context,
-+                                 bool can_log) { return false; }
-+bool GetThreadArea32(pid_t tid,
-+                     const ThreadContext &context,
-+                     LinuxVMAddress *address,
-+                     bool can_log) { return false; }
-+
- #else
- #error Port.
- #endif  // ARCH_CPU_X86_FAMILY
-@@ -486,6 +544,9 @@ bool Ptracer::GetThreadInfo(pid_t tid, ThreadInfo* info) {
-   if (is_64_bit_) {
-     return GetGeneralPurposeRegisters64(tid, &info->thread_context, can_log_) &&
-            GetFloatingPointRegisters64(tid, &info->float_context, can_log_) &&
-+#if defined(ARCH_CPU_PPC64_FAMILY)
-+           GetVectorRegisters64(tid, &info->vector_context, can_log_) &&
-+#endif
-            GetThreadArea64(tid,
-                            info->thread_context,
-                            &info->thread_specific_data_address,
-diff --git a/third_party/crashpad/crashpad/util/linux/thread_info.h b/third_party/crashpad/crashpad/util/linux/thread_info.h
-index 5b55c24a76..dea0d1f39e 100644
---- a/third_party/crashpad/crashpad/util/linux/thread_info.h
-+++ b/third_party/crashpad/crashpad/util/linux/thread_info.h
-@@ -28,6 +28,10 @@
- #include <android/api-level.h>
- #endif
- 
-+#if defined(ARCH_CPU_PPC64_FAMILY)
-+#include <sys/ucontext.h>
-+#endif
-+
- namespace crashpad {
- 
- //! \brief The set of general purpose registers for an architecture family.
-@@ -79,6 +83,8 @@ union ThreadContext {
-     uint32_t cp0_status;
-     uint32_t cp0_cause;
-     uint32_t padding1_;
-+#elif defined(ARCH_CPU_PPC64_FAMILY)
-+    // PPC64 is 64-bit
- #else
- #error Port.
- #endif  // ARCH_CPU_X86_FAMILY
-@@ -132,6 +138,21 @@ union ThreadContext {
-     uint64_t cp0_badvaddr;
-     uint64_t cp0_status;
-     uint64_t cp0_cause;
-+#elif defined(ARCH_CPU_PPC64_FAMILY)
-+    // Reflects struct pt_regs in asm/ptrace.h.
-+    uint64_t gpr[32];
-+    uint64_t nip;
-+    uint64_t msr;
-+    uint64_t orig_gpr3;
-+    uint64_t ctr;
-+    uint64_t lnk;
-+    uint64_t xer;
-+    uint64_t ccr;
-+    uint64_t softe;
-+    uint64_t trap;
-+    uint64_t dar;
-+    uint64_t dsisr;
-+    uint64_t result;
- #else
- #error Port.
- #endif  // ARCH_CPU_X86_FAMILY
-@@ -143,6 +164,8 @@ union ThreadContext {
-   using NativeThreadContext = user_regs;
- #elif defined(ARCH_CPU_MIPS_FAMILY)
- // No appropriate NativeThreadsContext type available for MIPS
-+#elif defined(ARCH_CPU_PPC64_FAMILY)
-+  using NativeThreadContext = struct pt_regs;
- #else
- #error Port.
- #endif  // ARCH_CPU_X86_FAMILY || ARCH_CPU_ARM64
-@@ -218,6 +241,9 @@ union FloatContext {
-     } fpregs[32];
-     uint32_t fpcsr;
-     uint32_t fpu_id;
-+#elif defined(ARCH_CPU_PPC64_FAMILY)
-+    // Crashpad's PPC support is 64-bit only, so this
-+    // 32bit-only struct is declared as empty.
- #else
- #error Port.
- #endif  // ARCH_CPU_X86_FAMILY
-@@ -252,6 +278,10 @@ union FloatContext {
-     double fpregs[32];
-     uint32_t fpcsr;
-     uint32_t fpu_id;
-+#elif defined(ARCH_CPU_PPC64_FAMILY)
-+    // Reflects fpregset_t in sys/ucontext.h
-+    double fpregs[32];
-+    double fpscr;
- #else
- #error Port.
- #endif  // ARCH_CPU_X86_FAMILY
-@@ -280,6 +310,8 @@ union FloatContext {
-   static_assert(sizeof(f64) == sizeof(user_fpsimd_struct), "Size mismatch");
- #elif defined(ARCH_CPU_MIPS_FAMILY)
- // No appropriate floating point context native type for available MIPS.
-+#elif defined(ARCH_CPU_PPC64_FAMILY)
-+  static_assert(sizeof(f64) == sizeof(fpregset_t), "Size mismatch");
- #else
- #error Port.
- #endif  // ARCH_CPU_X86
-@@ -287,6 +319,26 @@ union FloatContext {
- static_assert(std::is_standard_layout<FloatContext>::value,
-               "Not standard layout");
- 
-+//! \brief The vector registers used for an architecture family
-+union VectorContext {
-+  struct v32_t {} v32;
-+#if defined(ARCH_CPU_PPC64_FAMILY)
-+  __attribute__((__aligned__(16))) // Vector context must be doubleword aligned.
-+#endif
-+  struct v64_t {
-+#if defined(ARCH_CPU_PPC64_FAMILY)
-+    // Reflects vrregset_t in sys/ucontext.h
-+    uint32_t vrregs[32][4];
-+    struct {
-+      uint32_t __pad[3];
-+      uint32_t vscr_word;
-+    } vscr;
-+    uint32_t vrsave;
-+    uint32_t __pad[3];
-+#endif
-+  } v64;
-+};
-+
- //! \brief A collection of `ptrace`-able information about a thread.
- struct ThreadInfo {
-   ThreadInfo();
-@@ -298,6 +350,9 @@ struct ThreadInfo {
-   //! \brief The floating point registers for the thread.
-   FloatContext float_context;
- 
-+  //! \brief (Optional) The vector registers used for the thread.
-+  VectorContext vector_context;
-+
-   //! \brief The thread-local storage address for the thread.
-   LinuxVMAddress thread_specific_data_address;
- };
-diff --git a/third_party/crashpad/crashpad/util/misc/capture_context.h b/third_party/crashpad/crashpad/util/misc/capture_context.h
-index 541589dfde..5b0fc8218c 100644
---- a/third_party/crashpad/crashpad/util/misc/capture_context.h
-+++ b/third_party/crashpad/crashpad/util/misc/capture_context.h
-@@ -66,6 +66,7 @@ using NativeCPUContext = ucontext_t;
- //!     macOS/Linux/Fuchsia | x86_64       | `%%rdi`
- //!     Linux               | ARM/ARM64    | `r0`/`x0`
- //!     Linux               | MIPS/MIPS64  | `$a0`
-+//!     Linux               | PPC64        | `r3`
- //!
- //!     Additionally, the value `LR` on ARM/ARM64 will be the return address of
- //!     this function.
-diff --git a/third_party/crashpad/crashpad/util/misc/capture_context_linux.S b/third_party/crashpad/crashpad/util/misc/capture_context_linux.S
-index de71e72312..af0ffff392 100644
---- a/third_party/crashpad/crashpad/util/misc/capture_context_linux.S
-+++ b/third_party/crashpad/crashpad/util/misc/capture_context_linux.S
-@@ -28,7 +28,7 @@
-   .globl CAPTURECONTEXT_SYMBOL2
- #if defined(__i386__) || defined(__x86_64__)
-   .balign 16, 0x90
--#elif defined(__arm__) || defined(__aarch64__) || defined(__mips__)
-+#elif defined(__arm__) || defined(__aarch64__) || defined(__mips__) || defined(__powerpc64__)
-   .balign 4, 0x0
- #endif
- 
-@@ -419,4 +419,214 @@ CAPTURECONTEXT_SYMBOL2:
-   jr $ra
- 
-   .set at
-+#elif defined(__powerpc64__)
-+  // Store r0-r31
-+  std 0, 0xe8(3)   // context->uc_mcontext.gp_regs[0]
-+  std 1, 0xf0(3)   // context->uc_mcontext.gp_regs[1]
-+  std 2, 0xf8(3)   // context->uc_mcontext.gp_regs[2]
-+  // note that r3's original value was lost
-+  std 3, 0x100(3)  // context->uc_mcontext.gp_regs[3]
-+  std 4, 0x108(3)  // context->uc_mcontext.gp_regs[4]
-+  std 5, 0x110(3)  // context->uc_mcontext.gp_regs[5]
-+  std 6, 0x118(3)  // context->uc_mcontext.gp_regs[6]
-+  std 7, 0x120(3)  // context->uc_mcontext.gp_regs[7]
-+  std 8, 0x128(3)  // context->uc_mcontext.gp_regs[8]
-+  std 9, 0x130(3)  // context->uc_mcontext.gp_regs[9]
-+  std 10, 0x138(3) // context->uc_mcontext.gp_regs[10]
-+  std 11, 0x140(3) // context->uc_mcontext.gp_regs[11]
-+  std 12, 0x148(3) // context->uc_mcontext.gp_regs[12]
-+  std 13, 0x150(3) // context->uc_mcontext.gp_regs[13]
-+  std 14, 0x158(3) // context->uc_mcontext.gp_regs[14]
-+  std 15, 0x160(3) // context->uc_mcontext.gp_regs[15]
-+  std 16, 0x168(3) // context->uc_mcontext.gp_regs[16]
-+  std 17, 0x170(3) // context->uc_mcontext.gp_regs[17]
-+  std 18, 0x178(3) // context->uc_mcontext.gp_regs[18]
-+  std 19, 0x180(3) // context->uc_mcontext.gp_regs[19]
-+  std 20, 0x188(3) // context->uc_mcontext.gp_regs[20]
-+  std 21, 0x190(3) // context->uc_mcontext.gp_regs[21]
-+  std 22, 0x198(3) // context->uc_mcontext.gp_regs[22]
-+  std 23, 0x1a0(3) // context->uc_mcontext.gp_regs[23]
-+  std 24, 0x1a8(3) // context->uc_mcontext.gp_regs[24]
-+  std 25, 0x1b0(3) // context->uc_mcontext.gp_regs[25]
-+  std 26, 0x1b8(3) // context->uc_mcontext.gp_regs[26]
-+  std 27, 0x1c0(3) // context->uc_mcontext.gp_regs[27]
-+  std 28, 0x1c8(3) // context->uc_mcontext.gp_regs[28]
-+  std 29, 0x1d0(3) // context->uc_mcontext.gp_regs[29]
-+  std 30, 0x1d8(3) // context->uc_mcontext.gp_regs[30]
-+  std 31, 0x1e0(3) // context->uc_mcontext.gp_regs[31]
-+
-+  // For NIP, we can use the value in the link register
-+  mflr 0
-+  std 0, 0x1e8(3) // context->uc_mcontext.gp_regs[PT_NIP]
-+
-+  // CTR
-+  mfctr 0
-+  std 0, 0x200(3) // context->uc_mcontext.gp_regs[PT_CTR]
-+
-+  // For LNK, we'll use the caller's LR save area (2 stack frames up).
-+  // r4 can be used as a scratch register since it has already been saved.
-+  ld 4, 0(1)
-+  ld 4, 16(4)
-+  std 4, 0x208(3) // context->uc_mcontext.gp_regs[PT_LNK]
-+
-+  // XER
-+  mfxer 0
-+  std 0, 0x210(3) // context->uc_mcontext.gp_regs[PT_XER]
-+
-+  // CCR
-+  mfcr 0
-+  std 0, 0x218(3) // context->uc_mcontext.gp_regs[PT_CCR]
-+
-+  // MSR, orig_r3, MQ, TRAP, DAR, DSISR, RESULT, DSCR,
-+  // not used or not relevant,  zero them out.
-+  li 4, 0
-+  std 4, 0x1f0(3) // context->uc_mcontext.gp_regs[PT_MSR]
-+  std 4, 0x1f8(3) // context->uc_mcontext.gp_regs[PT_ORIG_R3]
-+  std 4, 0x220(3) // context->uc_mcontext.gp_regs[PT_MQ]
-+  std 4, 0x228(3) // context->uc_mcontext.gp_regs[PT_TRAP]
-+  std 4, 0x230(3) // context->uc_mcontext.gp_regs[PT_DAR]
-+  std 4, 0x238(3) // context->uc_mcontext.gp_regs[PT_DSISR]
-+  std 4, 0x240(3) // context->uc_mcontext.gp_regs[PT_RESULT]
-+  std 4, 0x248(3) // context->uc_mcontext.gp_regs[PT_DSCR]
-+
-+  // Update context->uc_mcontext.regs to point to gp_regs
-+  addi 0, 3, 0xe8
-+  std 0, 0xe0(3)
-+
-+  // Save floating point registers 0-31
-+  stfd 0, 0x268(3)  // context->uc_mcontext.fp_regs[0]
-+  stfd 1, 0x270(3)  // context->uc_mcontext.fp_regs[1]
-+  stfd 2, 0x278(3)  // context->uc_mcontext.fp_regs[2]
-+  stfd 3, 0x280(3)  // context->uc_mcontext.fp_regs[3]
-+  stfd 4, 0x288(3)  // context->uc_mcontext.fp_regs[4]
-+  stfd 5, 0x290(3)  // context->uc_mcontext.fp_regs[5]
-+  stfd 6, 0x298(3)  // context->uc_mcontext.fp_regs[6]
-+  stfd 7, 0x2a0(3)  // context->uc_mcontext.fp_regs[7]
-+  stfd 8, 0x2a8(3)  // context->uc_mcontext.fp_regs[8]
-+  stfd 9, 0x2b0(3)  // context->uc_mcontext.fp_regs[9]
-+  stfd 10, 0x2b8(3) // context->uc_mcontext.fp_regs[10]
-+  stfd 11, 0x2c0(3) // context->uc_mcontext.fp_regs[11]
-+  stfd 12, 0x2c8(3) // context->uc_mcontext.fp_regs[12]
-+  stfd 13, 0x2d0(3) // context->uc_mcontext.fp_regs[13]
-+  stfd 14, 0x2d8(3) // context->uc_mcontext.fp_regs[14]
-+  stfd 15, 0x2e0(3) // context->uc_mcontext.fp_regs[15]
-+  stfd 16, 0x2e8(3) // context->uc_mcontext.fp_regs[16]
-+  stfd 17, 0x2f0(3) // context->uc_mcontext.fp_regs[17]
-+  stfd 18, 0x2f8(3) // context->uc_mcontext.fp_regs[18]
-+  stfd 19, 0x300(3) // context->uc_mcontext.fp_regs[19]
-+  stfd 20, 0x308(3) // context->uc_mcontext.fp_regs[20]
-+  stfd 21, 0x310(3) // context->uc_mcontext.fp_regs[21]
-+  stfd 22, 0x318(3) // context->uc_mcontext.fp_regs[22]
-+  stfd 23, 0x320(3) // context->uc_mcontext.fp_regs[23]
-+  stfd 24, 0x328(3) // context->uc_mcontext.fp_regs[24]
-+  stfd 25, 0x330(3) // context->uc_mcontext.fp_regs[25]
-+  stfd 26, 0x338(3) // context->uc_mcontext.fp_regs[26]
-+  stfd 27, 0x340(3) // context->uc_mcontext.fp_regs[27]
-+  stfd 28, 0x348(3) // context->uc_mcontext.fp_regs[28]
-+  stfd 29, 0x350(3) // context->uc_mcontext.fp_regs[29]
-+  stfd 30, 0x358(3) // context->uc_mcontext.fp_regs[30]
-+  stfd 31, 0x360(3) // context->uc_mcontext.fp_regs[31]
-+
-+  // FPSCR
-+  mffs 0
-+  stfd 0, 0x368(3) // context->uc_mcontext.fp_regs[32]
-+
-+  // Save VMX Vector registers
-+  // Update r4 to contain the base address of vmx_reserve
-+  addi 4, 3, 0x378
-+  // Ensure that it is quadword aligned
-+  andi. 5, 4, 0xF
-+  beq 1f // No alignment is necessary
-+  // Address is doubleword aligned and not quadword aligned, add 8
-+  addi 4, 4, 8
-+
-+1:
-+  // Store VMX registers 0-31
-+  // r4 will contain the base address
-+  // r5 will contain the index
-+  li 5, 0
-+  stvx 0, 4, 5   // context->uc_mcontext.vmx_reserve[(align) + 0]
-+  addi 5, 5, 16
-+  stvx 1, 4, 5   // context->uc_mcontext.vmx_reserve[(align) + 1]
-+  addi 5, 5, 16
-+  stvx 2, 4, 5   // context->uc_mcontext.vmx_reserve[(align) + 2]
-+  addi 5, 5, 16
-+  stvx 3, 4, 5   // context->uc_mcontext.vmx_reserve[(align) + 3]
-+  addi 5, 5, 16
-+  stvx 4, 4, 5   // context->uc_mcontext.vmx_reserve[(align) + 4]
-+  addi 5, 5, 16
-+  stvx 5, 4, 5   // context->uc_mcontext.vmx_reserve[(align) + 5]
-+  addi 5, 5, 16
-+  stvx 6, 4, 5   // context->uc_mcontext.vmx_reserve[(align) + 6]
-+  addi 5, 5, 16
-+  stvx 7, 4, 5   // context->uc_mcontext.vmx_reserve[(align) + 7]
-+  addi 5, 5, 16
-+  stvx 8, 4, 5   // context->uc_mcontext.vmx_reserve[(align) + 8]
-+  addi 5, 5, 16
-+  stvx 9, 4, 5   // context->uc_mcontext.vmx_reserve[(align) + 9]
-+  addi 5, 5, 16
-+  stvx 10, 4, 5  // context->uc_mcontext.vmx_reserve[(align) + 10]
-+  addi 5, 5, 16
-+  stvx 11, 4, 5  // context->uc_mcontext.vmx_reserve[(align) + 11]
-+  addi 5, 5, 16
-+  stvx 12, 4, 5  // context->uc_mcontext.vmx_reserve[(align) + 12]
-+  addi 5, 5, 16
-+  stvx 13, 4, 5  // context->uc_mcontext.vmx_reserve[(align) + 13]
-+  addi 5, 5, 16
-+  stvx 14, 4, 5  // context->uc_mcontext.vmx_reserve[(align) + 14]
-+  addi 5, 5, 16
-+  stvx 15, 4, 5  // context->uc_mcontext.vmx_reserve[(align) + 15]
-+  addi 5, 5, 16
-+  stvx 16, 4, 5  // context->uc_mcontext.vmx_reserve[(align) + 16]
-+  addi 5, 5, 16
-+  stvx 17, 4, 5  // context->uc_mcontext.vmx_reserve[(align) + 17]
-+  addi 5, 5, 16
-+  stvx 18, 4, 5  // context->uc_mcontext.vmx_reserve[(align) + 18]
-+  addi 5, 5, 16
-+  stvx 19, 4, 5  // context->uc_mcontext.vmx_reserve[(align) + 19]
-+  addi 5, 5, 16
-+  stvx 20, 4, 5  // context->uc_mcontext.vmx_reserve[(align) + 20]
-+  addi 5, 5, 16
-+  stvx 21, 4, 5  // context->uc_mcontext.vmx_reserve[(align) + 21]
-+  addi 5, 5, 16
-+  stvx 22, 4, 5  // context->uc_mcontext.vmx_reserve[(align) + 22]
-+  addi 5, 5, 16
-+  stvx 23, 4, 5  // context->uc_mcontext.vmx_reserve[(align) + 23]
-+  addi 5, 5, 16
-+  stvx 24, 4, 5  // context->uc_mcontext.vmx_reserve[(align) + 24]
-+  addi 5, 5, 16
-+  stvx 25, 4, 5  // context->uc_mcontext.vmx_reserve[(align) + 25]
-+  addi 5, 5, 16
-+  stvx 26, 4, 5  // context->uc_mcontext.vmx_reserve[(align) + 26]
-+  addi 5, 5, 16
-+  stvx 27, 4, 5  // context->uc_mcontext.vmx_reserve[(align) + 27]
-+  addi 5, 5, 16
-+  stvx 28, 4, 5  // context->uc_mcontext.vmx_reserve[(align) + 28]
-+  addi 5, 5, 16
-+  stvx 29, 4, 5  // context->uc_mcontext.vmx_reserve[(align) + 29]
-+  addi 5, 5, 16
-+  stvx 30, 4, 5  // context->uc_mcontext.vmx_reserve[(align) + 30]
-+  addi 5, 5, 16
-+  stvx 31, 4, 5  // context->uc_mcontext.vmx_reserve[(align) + 31]
-+  addi 5, 5, 16
-+
-+  // VSCR
-+  mfvscr 0
-+  stvx 0, 4, 5
-+  addi 5, 5, 16
-+
-+  // VRSAVE
-+  mfvrsave 0
-+  stwx 0, 4, 5
-+
-+  // Update context->uc_mcontext.v_regs to point to vmx_reserve + alignment.
-+  std 4, 0x370(3)
-+
-+  // Zero out all unused fields
-+  li 4, 0
-+  std 4, 0xc8(3) // context->uc_mcontext.signal
-+  std 4, 0xd0(3) // context->uc_mcontext.handler
-+  std 4, 0xd8(3) // context->uc_mcontext.oldmask
-+
-+  blr
- #endif  // __i386__
-diff --git a/third_party/crashpad/crashpad/util/misc/capture_context_test.cc b/third_party/crashpad/crashpad/util/misc/capture_context_test.cc
-index cf23c2deff..5f264bc923 100644
---- a/third_party/crashpad/crashpad/util/misc/capture_context_test.cc
-+++ b/third_party/crashpad/crashpad/util/misc/capture_context_test.cc
-@@ -57,7 +57,7 @@ void TestCaptureContext() {
-   uintptr_t pc = ProgramCounterFromContext(context_1);
- 
- #if !defined(ADDRESS_SANITIZER) && !defined(ARCH_CPU_MIPS_FAMILY) && \
--    !defined(MEMORY_SANITIZER)
-+    !defined(MEMORY_SANITIZER) && !defined(ARCH_CPU_PPC64_FAMILY)
-   // Sanitizers can cause enough code bloat that the “nearby” check would
-   // likely fail.
-   const uintptr_t kReferencePC =
-diff --git a/third_party/crashpad/crashpad/util/misc/capture_context_test_util_linux.cc b/third_party/crashpad/crashpad/util/misc/capture_context_test_util_linux.cc
-index 9fc5db28c4..5f69f8dced 100644
---- a/third_party/crashpad/crashpad/util/misc/capture_context_test_util_linux.cc
-+++ b/third_party/crashpad/crashpad/util/misc/capture_context_test_util_linux.cc
-@@ -36,6 +36,8 @@ void SanityCheckContext(const NativeCPUContext& context) {
-   EXPECT_EQ(context.uc_mcontext.regs[0], FromPointerCast<uintptr_t>(&context));
- #elif defined(ARCH_CPU_MIPS_FAMILY)
-   EXPECT_EQ(context.uc_mcontext.gregs[4], FromPointerCast<uintptr_t>(&context));
-+#elif defined(ARCH_CPU_PPC64_FAMILY)
-+  EXPECT_EQ(context.uc_mcontext.gp_regs[3], FromPointerCast<uintptr_t>(&context));
- #endif
- }
- 
-@@ -50,6 +52,8 @@ uintptr_t ProgramCounterFromContext(const NativeCPUContext& context) {
-   return context.uc_mcontext.pc;
- #elif defined(ARCH_CPU_MIPS_FAMILY)
-   return context.uc_mcontext.pc;
-+#elif defined(ARCH_CPU_PPC64_FAMILY)
-+  return context.uc_mcontext.gp_regs[PT_NIP];
- #endif
- }
- 
-@@ -64,6 +68,8 @@ uintptr_t StackPointerFromContext(const NativeCPUContext& context) {
-   return context.uc_mcontext.sp;
- #elif defined(ARCH_CPU_MIPS_FAMILY)
-   return context.uc_mcontext.gregs[29];
-+#elif defined(ARCH_CPU_PPC64_FAMILY)
-+  return context.uc_mcontext.gp_regs[1];
- #endif
- }
- 
-diff --git a/third_party/crashpad/crashpad/util/posix/signals_test.cc b/third_party/crashpad/crashpad/util/posix/signals_test.cc
-index d91e3cc662..b1ffc7b15a 100644
---- a/third_party/crashpad/crashpad/util/posix/signals_test.cc
-+++ b/third_party/crashpad/crashpad/util/posix/signals_test.cc
-@@ -46,12 +46,12 @@ bool CanCauseSignal(int sig) {
-   return sig == SIGABRT ||
-          sig == SIGALRM ||
-          sig == SIGBUS ||
--#if !defined(ARCH_CPU_ARM64)
-+#if !defined(ARCH_CPU_ARM64) && !defined(ARCH_CPU_PPC64)
-          sig == SIGFPE ||
--#endif  // !defined(ARCH_CPU_ARM64)
-+#endif  // !defined(ARCH_CPU_ARM64) && !defined(ARCH_CPU_PPC64)
- #if defined(ARCH_CPU_X86_FAMILY) || defined(ARCH_CPU_ARMEL)
-          sig == SIGILL ||
--#endif  // defined(ARCH_CPU_X86_FAMILY) || defined(ARCH_CPU_ARMEL
-+#endif  // defined(ARCH_CPU_X86_FAMILY) || defined(ARCH_CPU_ARMEL)
-          sig == SIGPIPE ||
-          sig == SIGSEGV ||
- #if defined(OS_MACOSX)
-@@ -117,9 +117,11 @@ void CauseSignal(int sig) {
-       break;
-     }
- 
--#if !defined(ARCH_CPU_ARM64)
-+#if !defined(ARCH_CPU_ARM64) && !defined(ARCH_CPU_PPC64)
-     // ARM64 has hardware integer division instructions that don’t generate a
-     // trap for divide-by-zero, so this doesn’t produce SIGFPE.
-+    //
-+    // PPC64 fixed-point division by zero also doesn't produce a SIGFPE.
-     case SIGFPE: {
-       // Optimization makes this tricky, so get zero from a system call likely
-       // to succeed, and try to do something with the result.
-@@ -137,7 +139,7 @@ void CauseSignal(int sig) {
-       fstat(quotient, &stat_buf);
-       break;
-     }
--#endif  // ARCH_CPU_ARM64
-+#endif  // !defined(ARCH_CPU_ARM64) && !defined(ARCH_CPU_PPC64)
- 
- #if defined(ARCH_CPU_X86_FAMILY) || defined(ARCH_CPU_ARMEL)
-     case SIGILL: {
-diff --git a/third_party/dav1d/BUILD.gn b/third_party/dav1d/BUILD.gn
-index 37ced877cb..be8ae8304e 100644
---- a/third_party/dav1d/BUILD.gn
-+++ b/third_party/dav1d/BUILD.gn
-@@ -233,6 +233,21 @@ if (current_cpu == "x86" || current_cpu == "x64") {
-       ":dav1d_config",
-     ]
- 
-+    cflags = dav1d_copts
-+  }
-+} else if (current_cpu == "ppc64") {
-+  static_library("dav1d_ppc") {
-+    sources = [
-+      "libdav1d/src/ppc/cpu.c",
-+      "libdav1d/src/ppc/cpu.h",
-+    ]
-+
-+    configs -= [ "//build/config/compiler:chromium_code" ]
-+    configs += [
-+      "//build/config/compiler:no_chromium_code",
-+      ":dav1d_config",
-+    ]
-+
-     cflags = dav1d_copts
-   }
- }
-@@ -262,5 +277,7 @@ static_library("dav1d") {
-     }
-   } else if (current_cpu == "arm" || current_cpu == "arm64") {
-     deps += [ ":dav1d_arm" ]
-+  } else if (current_cpu == "ppc64") {
-+    deps += [ ":dav1d_ppc" ]
-   }
- }
-diff --git a/third_party/dav1d/config/linux/ppc64/config.h b/third_party/dav1d/config/linux/ppc64/config.h
-new file mode 100644
-index 0000000000..f6ca57f7f0
---- /dev/null
-+++ b/third_party/dav1d/config/linux/ppc64/config.h
-@@ -0,0 +1,35 @@
-+/*
-+ * Autogenerated by the Meson build system.
-+ * Do not edit, your changes will be lost.
-+ */
-+
-+#pragma once
-+
-+#define ARCH_AARCH64 0
-+
-+#define ARCH_ARM 0
-+
-+#define ARCH_PPC64LE 1
-+
-+#define ARCH_X86 0
-+
-+#define ARCH_X86_32 0
-+
-+#define ARCH_X86_64 0
-+
-+#define CONFIG_16BPC 1
-+
-+#define CONFIG_8BPC 1
-+
-+#define CONFIG_LOG 1
-+
-+#define ENDIANNESS_BIG 0
-+
-+#define HAVE_ASM 1
-+
-+#define HAVE_GETAUXVAL 1
-+
-+#define HAVE_POSIX_MEMALIGN 1
-+
-+#define HAVE_UNISTD_H 1
-+
-diff --git a/third_party/libvpx/BUILD.gn b/third_party/libvpx/BUILD.gn
-index 599b9d1fe4..a98acb9b58 100644
---- a/third_party/libvpx/BUILD.gn
-+++ b/third_party/libvpx/BUILD.gn
-@@ -38,6 +38,8 @@ if (current_cpu == "x86") {
- 
- if (is_nacl) {
-   platform_include_dir = "source/config/nacl"
-+} else if (current_cpu == "ppc64") {
-+  platform_include_dir = "source/config/linux/generic"
- } else {
-   # The mac configurations are currently a relic. They were useful when
-   # x86inc.asm did not work for MACH_O but now the build is identical to the
-@@ -340,6 +342,8 @@ static_library("libvpx") {
-     } else {
-       sources = libvpx_srcs_arm64
-     }
-+  } else if (current_cpu == "ppc64") {
-+    sources = libvpx_srcs_generic
-   }
- 
-   configs -= [ "//build/config/compiler:chromium_code" ]
-diff --git a/third_party/lss/linux_syscall_support.h b/third_party/lss/linux_syscall_support.h
-index 9276f5627a..bc317ca33a 100644
---- a/third_party/lss/linux_syscall_support.h
-+++ b/third_party/lss/linux_syscall_support.h
-@@ -3905,7 +3905,7 @@ struct kernel_statfs {
-       LSS_REG(2, buf);
-       LSS_BODY(void*, mmap2, "0"(__r2));
-     }
--#else
-+#elif !defined(__powerpc64__) /* ppc64 doesn't have mmap2 */
-     #define __NR__mmap2 __NR_mmap2
-     LSS_INLINE _syscall6(void*, _mmap2,            void*, s,
-                          size_t,                   l, int,               p,
-@@ -4036,7 +4036,7 @@ struct kernel_statfs {
-   #if defined(__i386__) ||                                                    \
-       defined(__ARM_ARCH_3__) || defined(__ARM_EABI__) ||                     \
-      (defined(__mips__) && _MIPS_SIM == _MIPS_SIM_ABI32) ||                   \
--      defined(__PPC__) ||                                                     \
-+     (defined(__PPC__) && !defined(__powerpc64__)) ||                                                     \
-      (defined(__s390__) && !defined(__s390x__))
-     /* On these architectures, implement mmap() with mmap2(). */
-     LSS_INLINE void* LSS_NAME(mmap)(void *s, size_t l, int p, int f, int d,
-diff --git a/third_party/pffft/src/pffft.c b/third_party/pffft/src/pffft.c
-index bdac4d7849..51e0f2cacc 100644
---- a/third_party/pffft/src/pffft.c
-+++ b/third_party/pffft/src/pffft.c
-@@ -100,6 +100,7 @@
-    Altivec support macros 
- */
- #if !defined(PFFFT_SIMD_DISABLE) && (defined(__ppc__) || defined(__ppc64__))
-+#include <altivec.h>
- typedef vector float v4sf;
- #  define SIMD_SZ 4
- #  define VZERO() ((vector float) vec_splat_u8(0))
-diff --git a/third_party/skia/src/sksl/SkSLString.cpp b/third_party/skia/src/sksl/SkSLString.cpp
-index 88eb1c7d3b..4be33fa5bd 100644
---- a/third_party/skia/src/sksl/SkSLString.cpp
-+++ b/third_party/skia/src/sksl/SkSLString.cpp
-@@ -240,7 +240,12 @@ String to_string(double value) {
-     if (needsDotZero) {
-         buffer << ".0";
-     }
--    return String(buffer.str().c_str());
-+
-+    std::string ret(buffer.str());
-+    if (signbit(value) && ret[0] == '.') {
-+        ret[0] = '-';
-+    }
-+    return String(ret.c_str());
- }
- 
- SKSL_INT stoi(const String& s) {
-diff --git a/third_party/sqlite/amalgamation/sqlite3.c b/third_party/sqlite/amalgamation/sqlite3.c
-index 110a1a7112..5eb339844a 100644
---- a/third_party/sqlite/amalgamation/sqlite3.c
-+++ b/third_party/sqlite/amalgamation/sqlite3.c
-@@ -13986,7 +13986,8 @@ typedef INT16_TYPE LogEst;
- # if defined(i386)      || defined(__i386__)      || defined(_M_IX86) ||    \
-      defined(__x86_64)  || defined(__x86_64__)    || defined(_M_X64)  ||    \
-      defined(_M_AMD64)  || defined(_M_ARM)        || defined(__x86)   ||    \
--     defined(__ARMEL__) || defined(__AARCH64EL__) || defined(_M_ARM64)
-+     defined(__ARMEL__) || defined(__AARCH64EL__) || defined(_M_ARM64) ||   \
-+     defined(__powerpc64__) && (__BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__)
- #   define SQLITE_BYTEORDER    1234
- # elif defined(sparc)     || defined(__ppc__) || \
-        defined(__ARMEB__) || defined(__AARCH64EB__)
-diff --git a/third_party/sqlite/patched/ext/rtree/rtree.c b/third_party/sqlite/patched/ext/rtree/rtree.c
-index bd8b08eec0..a26801fa95 100644
---- a/third_party/sqlite/patched/ext/rtree/rtree.c
-+++ b/third_party/sqlite/patched/ext/rtree/rtree.c
-@@ -425,7 +425,7 @@ struct RtreeMatchArg {
- #if defined(i386)     || defined(__i386__)   || defined(_M_IX86) ||    \
-     defined(__x86_64) || defined(__x86_64__) || defined(_M_X64)  ||    \
-     defined(_M_AMD64) || defined(_M_ARM)     || defined(__x86)   ||    \
--    defined(__arm__)
-+    defined(__arm__) || defined(__powerpc64__) && (__BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__)
- # define SQLITE_BYTEORDER    1234
- #elif defined(sparc)    || defined(__ppc__)
- # define SQLITE_BYTEORDER    4321
-diff --git a/third_party/sqlite/patched/src/sqliteInt.h b/third_party/sqlite/patched/src/sqliteInt.h
-index 0178092955..d3ed564863 100644
---- a/third_party/sqlite/patched/src/sqliteInt.h
-+++ b/third_party/sqlite/patched/src/sqliteInt.h
-@@ -833,7 +833,8 @@ typedef INT16_TYPE LogEst;
- # if defined(i386)      || defined(__i386__)      || defined(_M_IX86) ||    \
-      defined(__x86_64)  || defined(__x86_64__)    || defined(_M_X64)  ||    \
-      defined(_M_AMD64)  || defined(_M_ARM)        || defined(__x86)   ||    \
--     defined(__ARMEL__) || defined(__AARCH64EL__) || defined(_M_ARM64)
-+     defined(__ARMEL__) || defined(__AARCH64EL__) || defined(_M_ARM64) ||   \
-+     defined(__powerpc64__) && (__BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__)
- #   define SQLITE_BYTEORDER    1234
- # elif defined(sparc)     || defined(__ppc__) || \
-        defined(__ARMEB__) || defined(__AARCH64EB__)
-diff --git a/third_party/sqlite/sqlite-src-3290000/ext/rtree/rtree.c b/third_party/sqlite/sqlite-src-3290000/ext/rtree/rtree.c
-index ea5e737aa3..03b92e3a9d 100644
---- a/third_party/sqlite/sqlite-src-3290000/ext/rtree/rtree.c
-+++ b/third_party/sqlite/sqlite-src-3290000/ext/rtree/rtree.c
-@@ -425,7 +425,7 @@ struct RtreeMatchArg {
- #if defined(i386)     || defined(__i386__)   || defined(_M_IX86) ||    \
-     defined(__x86_64) || defined(__x86_64__) || defined(_M_X64)  ||    \
-     defined(_M_AMD64) || defined(_M_ARM)     || defined(__x86)   ||    \
--    defined(__arm__)
-+    defined(__arm__) || defined(__powerpc64__) && (__BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__)
- # define SQLITE_BYTEORDER    1234
- #elif defined(sparc)    || defined(__ppc__)
- # define SQLITE_BYTEORDER    4321
-diff --git a/third_party/sqlite/sqlite-src-3290000/src/sqliteInt.h b/third_party/sqlite/sqlite-src-3290000/src/sqliteInt.h
-index 1c46183312..b732d97e05 100644
---- a/third_party/sqlite/sqlite-src-3290000/src/sqliteInt.h
-+++ b/third_party/sqlite/sqlite-src-3290000/src/sqliteInt.h
-@@ -833,7 +833,8 @@ typedef INT16_TYPE LogEst;
- # if defined(i386)      || defined(__i386__)      || defined(_M_IX86) ||    \
-      defined(__x86_64)  || defined(__x86_64__)    || defined(_M_X64)  ||    \
-      defined(_M_AMD64)  || defined(_M_ARM)        || defined(__x86)   ||    \
--     defined(__ARMEL__) || defined(__AARCH64EL__) || defined(_M_ARM64)
-+     defined(__ARMEL__) || defined(__AARCH64EL__) || defined(_M_ARM64) ||   \
-+     defined(__powerpc64__) && (__BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__)
- #   define SQLITE_BYTEORDER    1234
- # elif defined(sparc)     || defined(__ppc__) || \
-        defined(__ARMEB__) || defined(__AARCH64EB__)
-diff --git a/third_party/swiftshader/src/Yarn/BUILD.gn b/third_party/swiftshader/src/Yarn/BUILD.gn
-index 2718ad182e..05885eb7db 100644
---- a/third_party/swiftshader/src/Yarn/BUILD.gn
-+++ b/third_party/swiftshader/src/Yarn/BUILD.gn
-@@ -49,6 +49,7 @@ swiftshader_source_set("Yarn_headers") {
-       "OSFiber_asm_arm.h",
-       "OSFiber_asm_x64.h",
-       "OSFiber_asm_x86.h",
-+      "OSFiber_asm_ppc64.h",
-     ]
-   }
- 
-@@ -73,8 +74,10 @@ swiftshader_source_set("Yarn") {
-       "OSFiber_asm_arm.S",
-       "OSFiber_asm_x64.S",
-       "OSFiber_asm_x86.S",
-+      "OSFiber_asm_ppc64.S",
-       "OSFiber_x64.c",
-       "OSFiber_x86.c",
-+      "OSFiber_ppc64.c",
-     ]
-   }
- 
-diff --git a/third_party/swiftshader/src/Yarn/OSFiber_asm.hpp b/third_party/swiftshader/src/Yarn/OSFiber_asm.hpp
-index e0fa508a9e..7d6f961248 100644
---- a/third_party/swiftshader/src/Yarn/OSFiber_asm.hpp
-+++ b/third_party/swiftshader/src/Yarn/OSFiber_asm.hpp
-@@ -30,6 +30,8 @@
- #include "OSFiber_asm_aarch64.h"
- #elif defined(__arm__)
- #include "OSFiber_asm_arm.h"
-+#elif defined(__powerpc64__) && (_CALL_ELF == 2)
-+#include "OSFiber_asm_ppc64.h"
- #else
- #error "Unsupported target"
- #endif
-diff --git a/third_party/swiftshader/src/Yarn/OSFiber_asm_ppc64.S b/third_party/swiftshader/src/Yarn/OSFiber_asm_ppc64.S
-new file mode 100644
-index 0000000000..7d464fc12b
---- /dev/null
-+++ b/third_party/swiftshader/src/Yarn/OSFiber_asm_ppc64.S
-@@ -0,0 +1,196 @@
-+// Copyright 2019 The SwiftShader Authors. All Rights Reserved.
-+//
-+// Licensed under the Apache License, Version 2.0 (the "License");
-+// you may not use this file except in compliance with the License.
-+// You may obtain a copy of the License at
-+//
-+//    http://www.apache.org/licenses/LICENSE-2.0
-+//
-+// Unless required by applicable law or agreed to in writing, software
-+// distributed under the License is distributed on an "AS IS" BASIS,
-+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-+// See the License for the specific language governing permissions and
-+// limitations under the License.
-+
-+#if defined(__powerpc64__)
-+
-+#define YARN_BUILD_ASM 1
-+#include "OSFiber_asm_ppc64.h"
-+
-+// void yarn_fiber_swap(yarn_fiber_context* from, const yarn_fiber_context* to)
-+// r3: from
-+// r4: to
-+.text
-+.global yarn_fiber_swap
-+.align 4
-+.type yarn_fiber_swap @function
-+yarn_fiber_swap:
-+
-+    // Save context 'from'
-+
-+    // Store non-volatile registers
-+    std 1, YARN_REG_R1(4)
-+    std 2, YARN_REG_R2(4)
-+    std 13, YARN_REG_R13(4)
-+    std 14, YARN_REG_R14(4)
-+    std 15, YARN_REG_R15(4)
-+    std 16, YARN_REG_R16(4)
-+    std 17, YARN_REG_R17(4)
-+    std 18, YARN_REG_R18(4)
-+    std 19, YARN_REG_R19(4)
-+    std 20, YARN_REG_R20(4)
-+    std 21, YARN_REG_R21(4)
-+    std 22, YARN_REG_R22(4)
-+    std 23, YARN_REG_R23(4)
-+    std 24, YARN_REG_R24(4)
-+    std 25, YARN_REG_R25(4)
-+    std 26, YARN_REG_R26(4)
-+    std 27, YARN_REG_R27(4)
-+    std 28, YARN_REG_R28(4)
-+    std 29, YARN_REG_R29(4)
-+    std 30, YARN_REG_R30(4)
-+    std 31, YARN_REG_R31(4)
-+
-+    // Store special registers
-+    mflr 5
-+    std 5, YARN_REG_LR(4)
-+    mfcr 5
-+    std 5, YARN_REG_CCR(4)
-+
-+    // Store non-volatile floating point registers
-+    stfd 14, YARN_REG_FPRS+0x10(4)
-+    stfd 15, YARN_REG_FPRS+0x18(4)
-+    stfd 16, YARN_REG_FPRS+0x20(4)
-+    stfd 17, YARN_REG_FPRS+0x28(4)
-+    stfd 18, YARN_REG_FPRS+0x30(4)
-+    stfd 19, YARN_REG_FPRS+0x38(4)
-+    stfd 20, YARN_REG_FPRS+0x40(4)
-+    stfd 21, YARN_REG_FPRS+0x48(4)
-+    stfd 22, YARN_REG_FPRS+0x50(4)
-+    stfd 23, YARN_REG_FPRS+0x58(4)
-+    stfd 24, YARN_REG_FPRS+0x60(4)
-+    stfd 25, YARN_REG_FPRS+0x68(4)
-+    stfd 26, YARN_REG_FPRS+0x70(4)
-+    stfd 27, YARN_REG_FPRS+0x78(4)
-+    stfd 28, YARN_REG_FPRS+0x80(4)
-+    stfd 29, YARN_REG_FPRS+0x88(4)
-+    stfd 30, YARN_REG_FPRS+0x90(4)
-+    stfd 31, YARN_REG_FPRS+0x98(4)
-+
-+    // Store non-volatile altivec registers
-+#ifdef __ALTIVEC__
-+    li 5, YARN_REG_VMX
-+    stvxl 20, 4, 5
-+    addi 5, 5, 16
-+    stvxl 21, 4, 5
-+    addi 5, 5, 16
-+    stvxl 22, 4, 5
-+    addi 5, 5, 16
-+    stvxl 23, 4, 5
-+    addi 5, 5, 16
-+    stvxl 24, 4, 5
-+    addi 5, 5, 16
-+    stvxl 25, 4, 5
-+    addi 5, 5, 16
-+    stvxl 26, 4, 5
-+    addi 5, 5, 16
-+    stvxl 27, 4, 5
-+    addi 5, 5, 16
-+    stvxl 28, 4, 5
-+    addi 5, 5, 16
-+    stvxl 29, 4, 5
-+    addi 5, 5, 16
-+    stvxl 30, 4, 5
-+    addi 5, 5, 16
-+    stvxl 31, 4, 5
-+    addi 5, 5, 16
-+
-+    mfvrsave 5
-+    stw 5, YARN_REG_VRSAVE(4)
-+#endif // __ALTIVEC__
-+
-+    // Load non-volatile registers
-+    ld 1, YARN_REG_R1(3)
-+    ld 2, YARN_REG_R2(3)
-+    ld 13, YARN_REG_R13(3)
-+    ld 14, YARN_REG_R14(3)
-+    ld 15, YARN_REG_R15(3)
-+    ld 16, YARN_REG_R16(3)
-+    ld 17, YARN_REG_R17(3)
-+    ld 18, YARN_REG_R18(3)
-+    ld 19, YARN_REG_R19(3)
-+    ld 20, YARN_REG_R20(3)
-+    ld 21, YARN_REG_R21(3)
-+    ld 22, YARN_REG_R22(3)
-+    ld 23, YARN_REG_R23(3)
-+    ld 24, YARN_REG_R24(3)
-+    ld 25, YARN_REG_R25(3)
-+    ld 26, YARN_REG_R26(3)
-+    ld 27, YARN_REG_R27(3)
-+    ld 28, YARN_REG_R28(3)
-+    ld 29, YARN_REG_R29(3)
-+    ld 30, YARN_REG_R30(3)
-+    ld 31, YARN_REG_R31(3)
-+
-+    // Load non-volatile floating point registers
-+    lfd 14, YARN_REG_FPRS+0x10(3)
-+    lfd 15, YARN_REG_FPRS+0x18(3)
-+    lfd 16, YARN_REG_FPRS+0x20(3)
-+    lfd 17, YARN_REG_FPRS+0x28(3)
-+    lfd 18, YARN_REG_FPRS+0x30(3)
-+    lfd 19, YARN_REG_FPRS+0x38(3)
-+    lfd 20, YARN_REG_FPRS+0x40(3)
-+    lfd 21, YARN_REG_FPRS+0x48(3)
-+    lfd 22, YARN_REG_FPRS+0x50(3)
-+    lfd 23, YARN_REG_FPRS+0x58(3)
-+    lfd 24, YARN_REG_FPRS+0x60(3)
-+    lfd 25, YARN_REG_FPRS+0x68(3)
-+    lfd 26, YARN_REG_FPRS+0x70(3)
-+    lfd 27, YARN_REG_FPRS+0x78(3)
-+    lfd 28, YARN_REG_FPRS+0x80(3)
-+    lfd 29, YARN_REG_FPRS+0x88(3)
-+    lfd 30, YARN_REG_FPRS+0x90(3)
-+    lfd 31, YARN_REG_FPRS+0x98(3)
-+
-+    // Load non-volatile altivec registers
-+#ifdef __ALTIVEC__
-+    li 5, YARN_REG_VMX
-+    lvxl 20, 3, 5
-+    addi 5, 5, 16
-+    lvxl 21, 3, 5
-+    addi 5, 5, 16
-+    lvxl 22, 3, 5
-+    addi 5, 5, 16
-+    lvxl 23, 3, 5
-+    addi 5, 5, 16
-+    lvxl 24, 3, 5
-+    addi 5, 5, 16
-+    lvxl 25, 3, 5
-+    addi 5, 5, 16
-+    lvxl 26, 3, 5
-+    addi 5, 5, 16
-+    lvxl 27, 3, 5
-+    addi 5, 5, 16
-+    lvxl 28, 3, 5
-+    addi 5, 5, 16
-+    lvxl 29, 3, 5
-+    addi 5, 5, 16
-+    lvxl 30, 3, 5
-+    addi 5, 5, 16
-+    lvxl 31, 3, 5
-+    addi 5, 5, 16
-+
-+    lwz 5, YARN_REG_VRSAVE(3)
-+    mtvrsave 5
-+#endif // __ALTIVEC__
-+
-+    // Load parameters and entrypoint
-+    ld 12, YARN_REG_LR(3)
-+    ld 4, YARN_REG_R4(3)
-+    ld 3, YARN_REG_R3(3)
-+    mtlr 12
-+
-+    // Branch to entrypoint
-+    blr
-+
-+#endif // defined(__powerpc64__)
-diff --git a/third_party/swiftshader/src/Yarn/OSFiber_asm_ppc64.h b/third_party/swiftshader/src/Yarn/OSFiber_asm_ppc64.h
-new file mode 100644
-index 0000000000..5f9b108229
---- /dev/null
-+++ b/third_party/swiftshader/src/Yarn/OSFiber_asm_ppc64.h
-@@ -0,0 +1,133 @@
-+// Copyright 2019 The SwiftShader Authors. All Rights Reserved.
-+//
-+// Licensed under the Apache License, Version 2.0 (the "License");
-+// you may not use this file except in compliance with the License.
-+// You may obtain a copy of the License at
-+//
-+//    http://www.apache.org/licenses/LICENSE-2.0
-+//
-+// Unless required by applicable law or agreed to in writing, software
-+// distributed under the License is distributed on an "AS IS" BASIS,
-+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-+// See the License for the specific language governing permissions and
-+// limitations under the License.
-+
-+#define YARN_REG_R1  0x00
-+#define YARN_REG_R2  0x08
-+#define YARN_REG_R13 0x10
-+#define YARN_REG_R14 0x18
-+#define YARN_REG_R15 0x20
-+#define YARN_REG_R16 0x28
-+#define YARN_REG_R17 0x30
-+#define YARN_REG_R18 0x38
-+#define YARN_REG_R19 0x40
-+#define YARN_REG_R20 0x48
-+#define YARN_REG_R21 0x50
-+#define YARN_REG_R22 0x58
-+#define YARN_REG_R23 0x60
-+#define YARN_REG_R24 0x68
-+#define YARN_REG_R25 0x70
-+#define YARN_REG_R26 0x78
-+#define YARN_REG_R27 0x80
-+#define YARN_REG_R28 0x88
-+#define YARN_REG_R29 0x90
-+#define YARN_REG_R30 0x98
-+#define YARN_REG_R31 0xa0
-+
-+#define YARN_REG_R12 0xa8
-+
-+#define YARN_REG_R3  0xb0
-+#define YARN_REG_R4  0xb8
-+
-+#define YARN_REG_LR  0xc0
-+#define YARN_REG_CCR 0xc8
-+
-+#define YARN_REG_FPRS 0xd0
-+#define YARN_REG_VMX  0x160
-+#define YARN_REG_VRSAVE 0x220
-+
-+#ifndef YARN_BUILD_ASM
-+
-+#include <stdint.h>
-+
-+struct yarn_fiber_context
-+{
-+    // non-volatile registers
-+    uintptr_t r1;
-+    uintptr_t r2;
-+    uintptr_t r13;
-+    uintptr_t r14;
-+    uintptr_t r15;
-+    uintptr_t r16;
-+    uintptr_t r17;
-+    uintptr_t r18;
-+    uintptr_t r19;
-+    uintptr_t r20;
-+    uintptr_t r21;
-+    uintptr_t r22;
-+    uintptr_t r23;
-+    uintptr_t r24;
-+    uintptr_t r25;
-+    uintptr_t r26;
-+    uintptr_t r27;
-+    uintptr_t r28;
-+    uintptr_t r29;
-+    uintptr_t r30;
-+    uintptr_t r31;
-+
-+    // function entrypoint register (r12)
-+    uintptr_t r12;
-+
-+    // first two parameter registers (r3, r4)
-+    uintptr_t r3;
-+    uintptr_t r4;
-+
-+    // special registers
-+    uintptr_t lr;
-+    uintptr_t ccr;
-+
-+    // non-volatile floating-point registers (f14-f31)
-+    uintptr_t fprs[18];
-+
-+    // non-volatile altivec registers
-+    uintptr_t vmx[12 * 2];
-+    uint32_t vrsave;
-+};
-+
-+// Only the ELFv2 ABI is supported for now
-+#if !defined(_CALL_ELF) || (_CALL_ELF != 2)
-+#error "Only the ppc64 ELFv2 ABI is supported."
-+#endif
-+
-+#ifdef __cplusplus
-+#include <cstddef>
-+static_assert(offsetof(yarn_fiber_context, r1) == YARN_REG_R1, "Bad register offset");
-+static_assert(offsetof(yarn_fiber_context, r2) == YARN_REG_R2, "Bad register offset");
-+static_assert(offsetof(yarn_fiber_context, r12) == YARN_REG_R12, "Bad register offset");
-+static_assert(offsetof(yarn_fiber_context, r13) == YARN_REG_R13, "Bad register offset");
-+static_assert(offsetof(yarn_fiber_context, r15) == YARN_REG_R15, "Bad register offset");
-+static_assert(offsetof(yarn_fiber_context, r16) == YARN_REG_R16, "Bad register offset");
-+static_assert(offsetof(yarn_fiber_context, r17) == YARN_REG_R17, "Bad register offset");
-+static_assert(offsetof(yarn_fiber_context, r18) == YARN_REG_R18, "Bad register offset");
-+static_assert(offsetof(yarn_fiber_context, r19) == YARN_REG_R19, "Bad register offset");
-+static_assert(offsetof(yarn_fiber_context, r20) == YARN_REG_R20, "Bad register offset");
-+static_assert(offsetof(yarn_fiber_context, r21) == YARN_REG_R21, "Bad register offset");
-+static_assert(offsetof(yarn_fiber_context, r22) == YARN_REG_R22, "Bad register offset");
-+static_assert(offsetof(yarn_fiber_context, r23) == YARN_REG_R23, "Bad register offset");
-+static_assert(offsetof(yarn_fiber_context, r24) == YARN_REG_R24, "Bad register offset");
-+static_assert(offsetof(yarn_fiber_context, r25) == YARN_REG_R25, "Bad register offset");
-+static_assert(offsetof(yarn_fiber_context, r26) == YARN_REG_R26, "Bad register offset");
-+static_assert(offsetof(yarn_fiber_context, r27) == YARN_REG_R27, "Bad register offset");
-+static_assert(offsetof(yarn_fiber_context, r28) == YARN_REG_R28, "Bad register offset");
-+static_assert(offsetof(yarn_fiber_context, r29) == YARN_REG_R29, "Bad register offset");
-+static_assert(offsetof(yarn_fiber_context, r30) == YARN_REG_R30, "Bad register offset");
-+static_assert(offsetof(yarn_fiber_context, r31) == YARN_REG_R31, "Bad register offset");
-+static_assert(offsetof(yarn_fiber_context, r14) == YARN_REG_R14, "Bad register offset");
-+static_assert(offsetof(yarn_fiber_context, lr) == YARN_REG_LR, "Bad register offset");
-+static_assert(offsetof(yarn_fiber_context, ccr) == YARN_REG_CCR, "Bad register offset");
-+static_assert(offsetof(yarn_fiber_context, fprs) == YARN_REG_FPRS, "Bad register offset");
-+static_assert(offsetof(yarn_fiber_context, vmx) == YARN_REG_VMX, "Bad register offset");
-+static_assert(offsetof(yarn_fiber_context, vrsave) == YARN_REG_VRSAVE, "Bad register offset");
-+#endif // __cplusplus
-+
-+#endif // YARN_BUILD_ASM
-diff --git a/third_party/swiftshader/src/Yarn/OSFiber_ppc64.c b/third_party/swiftshader/src/Yarn/OSFiber_ppc64.c
-new file mode 100644
-index 0000000000..b0efeaf01a
---- /dev/null
-+++ b/third_party/swiftshader/src/Yarn/OSFiber_ppc64.c
-@@ -0,0 +1,42 @@
-+// Copyright 2019 The SwiftShader Authors. All Rights Reserved.
-+//
-+// Licensed under the Apache License, Version 2.0 (the "License");
-+// you may not use this file except in compliance with the License.
-+// You may obtain a copy of the License at
-+//
-+//    http://www.apache.org/licenses/LICENSE-2.0
-+//
-+// Unless required by applicable law or agreed to in writing, software
-+// distributed under the License is distributed on an "AS IS" BASIS,
-+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-+// See the License for the specific language governing permissions and
-+// limitations under the License.
-+
-+#if defined(__powerpc64__)
-+
-+#include "OSFiber_asm_ppc64.h"
-+
-+void yarn_fiber_trampoline(void(*target)(void*), void* arg)
-+{
-+    target(arg);
-+}
-+
-+void yarn_fiber_set_target(struct yarn_fiber_context* ctx, void* stack, uint32_t stack_size, void(*target)(void*), void* arg)
-+{
-+    uintptr_t stack_top = (uintptr_t)((uint8_t*)(stack) + stack_size);
-+    if ((stack_top % 16) != 0)
-+        stack_top -= (stack_top % 16);
-+
-+    // Write a NULL backchain and subtract a minimum stack frame size (32)
-+    *(uintptr_t *)stack_top = 0;
-+    stack_top -= 32;
-+    *(uintptr_t *)stack_top = stack_top + 32;
-+
-+    // Load registers
-+    ctx->r1 = stack_top;
-+    ctx->lr = (uintptr_t)yarn_fiber_trampoline;
-+    ctx->r3 = (uintptr_t)target;
-+    ctx->r4 = (uintptr_t)arg;
-+}
-+
-+#endif // __powerpc64__
-diff --git a/third_party/webrtc/modules/desktop_capture/differ_block.cc b/third_party/webrtc/modules/desktop_capture/differ_block.cc
-index dd9ab457e0..c005d95990 100644
---- a/third_party/webrtc/modules/desktop_capture/differ_block.cc
-+++ b/third_party/webrtc/modules/desktop_capture/differ_block.cc
-@@ -30,11 +30,7 @@ bool VectorDifference(const uint8_t* image1, const uint8_t* image2) {
-   static bool (*diff_proc)(const uint8_t*, const uint8_t*) = nullptr;
- 
-   if (!diff_proc) {
--#if defined(WEBRTC_ARCH_ARM_FAMILY) || defined(WEBRTC_ARCH_MIPS_FAMILY)
--    // For ARM and MIPS processors, always use C version.
--    // TODO(hclam): Implement a NEON version.
--    diff_proc = &VectorDifference_C;
--#else
-+#if defined(WEBRTC_ARCH_X86_FAMILY)
-     bool have_sse2 = WebRtc_GetCPUInfo(kSSE2) != 0;
-     // For x86 processors, check if SSE2 is supported.
-     if (have_sse2 && kBlockSize == 32) {
-@@ -44,6 +40,10 @@ bool VectorDifference(const uint8_t* image1, const uint8_t* image2) {
-     } else {
-       diff_proc = &VectorDifference_C;
-     }
-+#else
-+    // For other processors, always use C version.
-+    // TODO(hclam): Implement a NEON version.
-+    diff_proc = &VectorDifference_C;
- #endif
-   }
- 
-diff --git a/third_party/webrtc/rtc_base/system/arch.h b/third_party/webrtc/rtc_base/system/arch.h
-index eb77ffa8f4..e60b81a057 100644
---- a/third_party/webrtc/rtc_base/system/arch.h
-+++ b/third_party/webrtc/rtc_base/system/arch.h
-@@ -50,6 +50,18 @@
- #elif defined(__EMSCRIPTEN__)
- #define WEBRTC_ARCH_32_BITS
- #define WEBRTC_ARCH_LITTLE_ENDIAN
-+#elif defined(__PPC__)
-+#define WEBRTC_ARCH_PPC_FAMILY
-+#if __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__
-+#define WEBRTC_ARCH_LITTLE_ENDIAN
-+#else
-+#define WEBRTC_ARCH_BIG_ENDIAN
-+#endif
-+#if defined(__LP64__)
-+#define WEBRTC_ARCH_64_BITS
-+#else
-+#define WEBRTC_ARCH_32_BITS
-+#endif
- #else
- #error Please add support for your architecture in rtc_base/system/arch.h
- #endif
-diff --git a/ui/gl/BUILD.gn b/ui/gl/BUILD.gn
-index 4657246ecf..fd0cb00dac 100644
---- a/ui/gl/BUILD.gn
-+++ b/ui/gl/BUILD.gn
-@@ -16,7 +16,8 @@ declare_args() {
-                         is_chromeos || is_fuchsia) &&
-                        (target_cpu == "x86" || target_cpu == "x64" ||
-                         target_cpu == "arm" || target_cpu == "arm64" ||
--                        target_cpu == "mipsel" || target_cpu == "mips64el")
-+                        target_cpu == "mipsel" || target_cpu == "mips64el" ||
-+                        target_cpu == "ppc64")
- 
-   # Whether service side logging (actual calls into the GL driver) is enabled
-   # or not.
-diff --git a/v8/BUILD.gn b/v8/BUILD.gn
-index c486f1a1c8..90199198c5 100644
---- a/v8/BUILD.gn
-+++ b/v8/BUILD.gn
-@@ -609,6 +609,12 @@ config("toolchain") {
-     }
-     if (host_byteorder == "little") {
-       defines += [ "V8_TARGET_ARCH_PPC_LE" ]
-+        cflags += [
-+        # Enable usage of AltiVec, VSX, and other POWER8 and higher features
-+        "-mcpu=power8",
-+        "-maltivec",
-+        "-mvsx",
-+      ]
-     } else if (host_byteorder == "big") {
-       defines += [ "V8_TARGET_ARCH_PPC_BE" ]
-       if (current_os == "aix") {
-diff --git a/v8/test/BUILD.gn b/v8/test/BUILD.gn
-index 6bf9ca643d..422a34b913 100644
---- a/v8/test/BUILD.gn
-+++ b/v8/test/BUILD.gn
-@@ -32,7 +32,7 @@ group("gn_all") {
-     deps += [
-       "cctest:cctest",
-       "cctest:generate-bytecode-expectations",
--      "unittests:unittests",
-+      #"unittests:unittests",
-     ]
-   }
- }
-@@ -82,7 +82,7 @@ group("v8_bot_default") {
-     "mjsunit:v8_mjsunit",
-     "mkgrokdump:mkgrokdump",
-     "preparser:v8_preparser",
--    "unittests:unittests",
-+    #"unittests:unittests",
-     "wasm-api-tests:wasm_api_tests",
-     "wasm-js:v8_wasm_js",
-     "wasm-spec-tests:v8_wasm_spec_tests",
-@@ -103,7 +103,7 @@ group("v8_default") {
-     "mjsunit:v8_mjsunit",
-     "mkgrokdump:mkgrokdump",
-     "preparser:v8_preparser",
--    "unittests:unittests",
-+    #"unittests:unittests",
-     "wasm-api-tests:wasm_api_tests",
-     "wasm-js:v8_wasm_js",
-     "wasm-spec-tests:v8_wasm_spec_tests",
--- 
-2.28.0
-
diff --git a/srcpkgs/electron7/files/patches/electron-Add-a-script-to-list-patch-targets.patch.patch b/srcpkgs/electron7/files/patches/electron-Add-a-script-to-list-patch-targets.patch.patch
deleted file mode 100644
index 916dba9dc3bc..000000000000
--- a/srcpkgs/electron7/files/patches/electron-Add-a-script-to-list-patch-targets.patch.patch
+++ /dev/null
@@ -1,42 +0,0 @@
-From ff4122f236b70c272c746d0c336cdbd588d78cd1 Mon Sep 17 00:00:00 2001
-From: Elvis Pranskevichus <elvis@magic.io>
-Date: Thu, 12 Dec 2019 16:12:18 -0500
-Subject: [PATCH] Add a script to list patch targets
-
----
- script/list_patch_targets.py | 23 +++++++++++++++++++++++
- 1 file changed, 23 insertions(+)
- create mode 100755 script/list_patch_targets.py
-
-diff --git a/script/list_patch_targets.py b/script/list_patch_targets.py
-new file mode 100755
-index 000000000..55173bac9
---- /dev/null
-+++ b/script/list_patch_targets.py
-@@ -0,0 +1,23 @@
-+#!/usr/bin/env python
-+
-+import argparse
-+import json
-+
-+
-+def parse_args():
-+  parser = argparse.ArgumentParser(description='Apply Electron patches')
-+  parser.add_argument('config', nargs='+',
-+                      type=argparse.FileType('r'),
-+                      help='patches\' config(s) in the JSON format')
-+  return parser.parse_args()
-+
-+
-+def main():
-+  configs = parse_args().config
-+  for config_json in configs:
-+    for patch_dir, repo in json.load(config_json).iteritems():
-+      print(repo)
-+
-+
-+if __name__ == '__main__':
-+  main()
--- 
-2.23.0
-
diff --git a/srcpkgs/electron7/files/patches/electron-Build-fixes.patch.patch b/srcpkgs/electron7/files/patches/electron-Build-fixes.patch.patch
deleted file mode 100644
index a591c2edf620..000000000000
--- a/srcpkgs/electron7/files/patches/electron-Build-fixes.patch.patch
+++ /dev/null
@@ -1,57 +0,0 @@
-diff --git a/build/args/all.gn b/build/args/all.gn
-index 8bbb86e28..8476d09ea 100644
---- a/build/args/all.gn
-+++ b/build/args/all.gn
-@@ -1,5 +1,4 @@
- is_electron_build = true
--use_jumbo_build = true
- root_extra_deps = [ "//electron" ]
- 
- # Registry of NMVs --> https://github.com/nodejs/node/blob/master/doc/abi_version_registry.json
-diff --git a/build/args/release.gn b/build/args/release.gn
-index e5017f6e1..59207b389 100644
---- a/build/args/release.gn
-+++ b/build/args/release.gn
-@@ -1,6 +1,4 @@
- import("all.gn")
--is_component_build = false
--is_official_build = true
- 
- # This may be guarded behind is_chrome_branded alongside
- # proprietary_codecs https://webrtc-review.googlesource.com/c/src/+/36321,
-@@ -8,9 +6,3 @@ is_official_build = true
- # The initialization of the decoder depends on whether ffmpeg has
- # been built with H.264 support.
- rtc_use_h264 = proprietary_codecs
--
--# By default, Electron builds ffmpeg with proprietary codecs enabled. In order
--# to facilitate users who don't want to ship proprietary codecs in ffmpeg, or
--# who have an LGPL requirement to ship ffmpeg as a dynamically linked library,
--# we build ffmpeg as a shared library.
--is_component_ffmpeg = true
-diff --git a/build/npm.gni b/build/npm.gni
-index a1987d095..fb33a14c3 100644
---- a/build/npm.gni
-+++ b/build/npm.gni
-@@ -35,7 +35,6 @@ template("npm_action") {
-     if (!defined(deps)) {
-       deps = []
-     }
--    deps += [ ":npm_pre_flight_" + target_name ]
- 
-     script = "//electron/build/npm-run.py"
-     args = [
-diff --git a/patches/node/fix_add_default_values_for_enable_lto_and_build_v8_with_gn_in.patch b/patches/node/fix_add_default_values_for_enable_lto_and_build_v8_with_gn_in.patch
-index 0dc9916be..7eaa46bf5 100644
---- a/patches/node/fix_add_default_values_for_enable_lto_and_build_v8_with_gn_in.patch
-+++ b/patches/node/fix_add_default_values_for_enable_lto_and_build_v8_with_gn_in.patch
-@@ -30,7 +30,7 @@
- +    # these values being accurate.
- +    'build_v8_with_gn': 'false',
- +    'enable_lto%': 'false',
--+
-++    'openssl_fips': '',
-      'conditions': [
-        ['target_arch=="arm64"', {
-          # Disabled pending https://github.com/nodejs/node/issues/23913.
-
diff --git a/srcpkgs/electron7/files/patches/electron-dont-assume-python-is-python2.patch b/srcpkgs/electron7/files/patches/electron-dont-assume-python-is-python2.patch
deleted file mode 100644
index fb134748025b..000000000000
--- a/srcpkgs/electron7/files/patches/electron-dont-assume-python-is-python2.patch
+++ /dev/null
@@ -1,17 +0,0 @@
---- a/build/zip.py.orig	2020-04-27 17:59:53.499281667 +0200
-+++ b/build/zip.py	2020-04-27 17:59:57.655839143 +0200
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python2
- from __future__ import print_function
- import os
- import subprocess
-
---- a/build/npm-run.py.orig	2020-04-27 17:59:50.829351807 +0200
-+++ b/build/npm-run.py	2020-04-27 18:00:02.702373256 +0200
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python2
- from __future__ import print_function
- import os
- import subprocess
diff --git a/srcpkgs/electron7/files/patches/electron-fix-includes.patch b/srcpkgs/electron7/files/patches/electron-fix-includes.patch
deleted file mode 100644
index 9df1fd6946d9..000000000000
--- a/srcpkgs/electron7/files/patches/electron-fix-includes.patch
+++ /dev/null
@@ -1,19 +0,0 @@
---- a/patches/chromium/feat_offscreen_rendering_with_viz_compositor.patch.orig	2020-04-27 16:37:09.934271227 +0200
-+++ b/patches/chromium/feat_offscreen_rendering_with_viz_compositor.patch	2020-04-27 16:37:50.903207166 +0200
-@@ -350,7 +350,7 @@
- index 0000000000000000000000000000000000000000..3865939d0445a23a468770f57207ba5ef23277ed
- --- /dev/null
- +++ b/components/viz/service/display_embedder/software_output_device_proxy.h
--@@ -0,0 +1,88 @@
-+@@ -0,0 +1,89 @@
- +// Copyright 2014 The Chromium Authors. All rights reserved.
- +// Use of this source code is governed by a BSD-style license that can be
- +// found in the LICENSE file.
-@@ -364,6 +364,7 @@
- +
- +#include <memory>
- +
-++#include "base/threading/thread_checker.h"
- +#include "components/viz/host/host_display_client.h"
- +#include "components/viz/service/display/software_output_device.h"
- +#include "components/viz/service/viz_service_export.h"
diff --git a/srcpkgs/electron7/files/patches/electron-mjsunit-not-exsit.patch.patch b/srcpkgs/electron7/files/patches/electron-mjsunit-not-exsit.patch.patch
deleted file mode 100644
index 2567540869c9..000000000000
--- a/srcpkgs/electron7/files/patches/electron-mjsunit-not-exsit.patch.patch
+++ /dev/null
@@ -1,47 +0,0 @@
-diff --git a/patches/v8/make_createdynamicfunction_throw_if_disallowed.patch b/patches/v8/make_createdynamicfunction_throw_if_disallowed.patch
-index bafd0b0..949cb2d 100644
---- a/patches/v8/make_createdynamicfunction_throw_if_disallowed.patch
-+++ b/patches/v8/make_createdynamicfunction_throw_if_disallowed.patch
-@@ -25,42 +25,3 @@ index f75014d034626643ae83dc8f167a473b7291522c..b5c2e8b25f10f2fff9011a0a1bd1aeef
-    }
-  
-    // Build the source string.
--diff --git a/test/mjsunit/mjsunit.status b/test/mjsunit/mjsunit.status
--index 134a49f7480c87acbb08133a2d6a4d028bbdd090..7dcaa412199770d7c4f688d7f8a66d887130bf82 100644
----- a/test/mjsunit/mjsunit.status
--+++ b/test/mjsunit/mjsunit.status
--@@ -232,6 +232,9 @@
--   # BUG(v8:6306).
--   'wasm/huge-memory': [SKIP],
-- 
--+  # Needs to be adapted after changes to Function constructor. chromium:1065094
--+  'cross-realm-filtering': [SKIP],
--+
--   # Allocates a huge string and then flattens it, very slow in debug mode.
--   'regress/regress-752764': [PASS, ['mode == debug', SLOW]],
-- 
--diff --git a/test/mjsunit/regress-1065094.js b/test/mjsunit/regress-1065094.js
--new file mode 100644
--index 0000000000000000000000000000000000000000..365e20285bb0505dec3f84c4df57db0525e7acc3
----- /dev/null
--+++ b/test/mjsunit/regress-1065094.js
--@@ -0,0 +1,19 @@
--+// Copyright 2020 the V8 project authors. All rights reserved.
--+// Use of this source code is governed by a BSD-style license that can be
--+// found in the LICENSE file.
--+
--+// Flags: --allow-natives-syntax
--+
--+function f(fnConstructor) {
--+    return Object.is(new fnConstructor(), undefined);
--+}
--+
--+const realmIndex = Realm.createAllowCrossRealmAccess();
--+const otherFunction = Realm.global(realmIndex).Function;
--+Realm.detachGlobal(realmIndex);
--+
--+%PrepareFunctionForOptimization(f);
--+assertFalse(f(Function));
--+assertThrows(_ => f(otherFunction));
--+%OptimizeFunctionOnNextCall(f);
--+assertThrows(_ => f(otherFunction));
diff --git a/srcpkgs/electron7/template b/srcpkgs/electron7/template
deleted file mode 100644
index 653f183aba75..000000000000
--- a/srcpkgs/electron7/template
+++ /dev/null
@@ -1,341 +0,0 @@
-# Template file for 'electron7'
-pkgname=electron7
-version=7.3.3
-revision=1
-_nodever=12.8.1
-_chromiumver=78.0.3904.108
-archs="x86_64* aarch64* ppc64le* i686*"
-create_wrksrc=yes
-build_wrksrc="src"
-hostmakedepends="$(vopt_if clang clang) yasm python pkgconf perl gperf bison ninja nodejs hwids
- libwebp-devel freetype-devel harfbuzz-devel libpng-devel nss-devel which git libevent-devel
- pciutils-devel libatomic-devel ffmpeg-devel libxml2-devel libglib-devel yarn openjdk libxslt-devel
- opus-devel libXcursor-devel libXcomposite-devel libXtst-devel libXrandr-devel libXScrnSaver-devel
- alsa-lib-devel re2-devel snappy-devel mit-krb5-devel"
-makedepends="libpng-devel gtk+-devel gtk+3-devel nss-devel pciutils-devel
- libXi-devel libgcrypt-devel libgnome-keyring-devel cups-devel elfutils-devel
- libXcomposite-devel speech-dispatcher-devel libXrandr-devel mit-krb5-devel
- libXScrnSaver-devel alsa-lib-devel snappy-devel libdrm-devel
- libxml2-devel libxslt-devel $(vopt_if pulseaudio pulseaudio-devel) libexif-devel
- libXcursor-devel libflac-devel speex-devel libmtp-devel libwebp-devel
- libjpeg-turbo-devel libevent-devel json-c-devel harfbuzz-devel
- minizip-devel jsoncpp-devel zlib-devel libcap-devel libXdamage-devel
- re2-devel fontconfig-devel freetype-devel opus-devel libatomic-devel
- ffmpeg-devel libva-devel libuv-devel c-ares-devel libnotify-devel"
-short_desc="Application development framework based on web technologies"
-maintainer="John <me@johnnynator.dev>"
-license="BSD-3-Clause"
-homepage="https://electronjs.org"
-distfiles="https://github.com/electron/electron/archive/v$version.tar.gz>electron-${version}.tar.gz
- https://commondatastorage.googleapis.com/chromium-browser-official/chromium-$_chromiumver.tar.xz
- https://github.com/nodejs/node/archive/v$_nodever.tar.gz>node-$_nodever.tar.gz"
-checksum="cd216520c38d9669d37704a401e85a88eb5c9e4811cfc1fee37e92acbb54a180
- f9c53839f306d2973de27723360024f7904101d426b9e7e9cdb56e8bcc775b0e
- 11648d586f68ee5fc38e4cadf3974541aac4a67709fa028e9075aff42e28d9b9"
-
-no_generic_pkgconfig_link=yes
-lib32disabled=yes
-nodebug=yes
-nopie=yes  # contains tools that are not PIE, enables PIE itself
-
-# XXX: pulseaudio broken at compile time
-build_options="pulseaudio clang"
-build_options_default="pulseaudio"
-
-if [ -z "$CROSS_BUILD" ]; then
-	build_options_default+=" clang"
-fi
-
-if [ "$build_option_clang" ]; then
-	nocross="No proper setup for using clang as cross compiler in void yet"
-elif [ "$CROSS_BUILD" ] && [ "${XBPS_TARGET_MACHINE%%-musl}" = "aarch64" ]; then
-	broken="{standard input}: Error: unaligned opcodes detected in executable segment"
-	# This might also happen with non-cross gcc?
-fi
-
-_buildtype=Release
-_is_debug=false
-
-CFLAGS="-Wno-unknown-warning-option -fPIC"
-CXXFLAGS="-Wno-unknown-warning-option -fPIC"
-
-_apply_patch() {
-	local args="$1" pname="$(basename $2)"
-
-	if [ ! -f ".${pname}_done" ]; then
-		msg_normal "$pkgver: patching: ${pname}.\n"
-		patch -N $args -i $2
-		touch .${pname}_done
-	fi
-}
-
-_get_chromium_arch() {
-	case "$1" in
-		x86_64*) echo x64 ;;
-		i686*) echo x86 ;;
-		arm*) echo arm ;;
-		aarch64*) echo arm64 ;;
-		ppc64*) echo ppc64 ;;
-		ppc*) echo ppc ;;
-		mipsel*) echo mipsel ;;
-		mips*) echo mips ;;
-		*) msg_error "$pkgver: cannot be compiled for ${XBPS_TARGET_MACHINE}.\n" ;;
-	esac
-}
-
-post_extract() {
-	ln -s chromium-$_chromiumver src
-	mkdir -p src/third_party/
-	ln -s ../../node-$_nodever src/third_party/electron_node
-	ln -s ../electron-${version} src/electron
-
-}
-
-post_patch() {
-	cd $wrksrc
-	for x in $FILESDIR/patches/*; do
-		case "${x##*/}" in
-			electron*.patch)
-				cd src/electron
-				_apply_patch -p1 "$x"
-				cd "$wrksrc";;
-		esac
-	done
-
-	# Sigh, electron uses git am...
-	python2 src/electron/script/list_patch_targets.py src/electron/patches/config.json | while read -r repopath; do
-		cd "$wrksrc"/"$repopath"
-		git init -q
-		git config "gc.auto" 0
-		if [ "$repopath" != "src" ]; then
-			echo "/${repopath#src/}" >> "$wrksrc/$build_wrksrc/.gitignore"
-		fi
-		git add .
-		git -c 'user.name=Electron build' -c 'user.email=electron@ebuild' \
-			commit -q -m "." || true
-	done
-	cd $wrksrc
-	python2 src/electron/script/apply_all_patches.py src/electron/patches/config.json
-
-	for x in $FILESDIR/patches/*; do
-		case "${x##*/}" in
-			chromium*.patch)
-				cd src
-				_apply_patch -p1 "$x"
-				cd "$wrksrc";;
-		esac
-	done
-
-	if [ "$XBPS_TARGET_LIBC" = "musl" ]; then
-	for x in $FILESDIR/musl-patches/*; do
-		case "${x##*/}" in
-			chromium*.patch)
-				cd src
-				_apply_patch -p1 "$x"
-				cd "$wrksrc";;
-			electron*.patch)
-				cd src/electron
-				_apply_patch -p1 "$x"
-				cd "$wrksrc";;
-		esac
-	done
-	fi
-}
-
-pre_configure() {
-	cd "$wrksrc/$build_wrksrc"
-
-	# https://groups.google.com/a/chromium.org/d/topic/chromium-packagers/9JX1N2nf4PU/discussion
-	touch chrome/test/data/webui/i18n_process_css_test.html
-	# Use the file at run time instead of effectively compiling it in
-	sed 's|//third_party/usb_ids/usb.ids|/usr/share/hwdata/usb.ids|g' \
-		-i services/device/public/cpp/usb/BUILD.gn
-
-	mkdir -p third_party/node/linux/node-linux-x64/bin
-	ln -s /usr/bin/node third_party/node/linux/node-linux-x64/bin/
-
-	# reusable system library settings
-	local use_system="
-		ffmpeg
-		flac
-		fontconfig
-		freetype
-		harfbuzz-ng
-		libdrm
-		libevent
-		libjpeg
-		libpng
-		libwebp
-		libxml
-		libxslt
-		opus
-		re2
-		snappy
-		yasm
-		zlib
-		"
-	for _lib in $use_system libjpeg_turbo; do
-		msg_normal "Removing buildscripts for system provided $_lib\n"
-		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/yasm/run_yasm.py' \
-			\! -regex '.*\.\(gn\|gni\|isolate\|py\)' \
-			-delete
-	done
-
-
-	msg_normal "Replacing gn files\n"
-	python2 build/linux/unbundle/replace_gn_files.py --system-libraries \
-		$use_system
-	third_party/libaddressinput/chromium/tools/update-strings.py
-}
-
-do_configure() {
-	local target_arch="$(_get_chromium_arch ${XBPS_TARGET_MACHINE})"
-	local host_arch="$(_get_chromium_arch ${XBPS_MACHINE})"
-	# the build system will set march for use, adding it to cflags will break builds
-	export CXXFLAGS=$( shopt -s extglob; echo ${CXXFLAGS/-march=*([^ ])} )
-	export CFLAGS=$( shopt -s extglob; echo ${CFLAGS/-march=*([^ ])} )
-	local conf=()
-	cd third_party/electron_node
-	if [ "$CROSS_BUILD" ]; then
-		conf_args=" --dest-cpu=${target_arch} --cross-compiling"
-	fi
-	./configure --prefix=/usr \
-		--shared-zlib \
-		--shared-libuv \
-		--shared-openssl \
-		--shared-cares \
-		--openssl-use-def-ca-store \
-		--without-npm \
-		--without-dtrace \
-		--without-bundled-v8 \
-		${conf_args}
-
-	cd "$wrksrc/$build_wrksrc"/electron
-	yarn install
-	cd "$wrksrc/$build_wrksrc"
-
-	if [ "$build_option_clang" ]; then
-		export CC=clang
-		export CXX=clang++
-		export HOST_CC=clang
-		export HOST_CXX=clang++
-	else
-		export CXXFLAGS="$CXXFLAGS -fpermissive"
-		export BUILD_CXXFLAGS="$BUILD_CXXFLAGS -fpermissive"
-		export BUILD_AR="$AR_host"
-		export BUILD_NM="$NM_host"
-	fi
-
-	# Google API keys (see http://www.chromium.org/developers/how-tos/api-keys)
-	# Note: These are for Void Linux use ONLY.
-	conf+=(
-		'google_api_key="AIzaSyA9gWazKaHaNIPPg2hrMj6_ZSG8AFmq738"'
-		'google_default_client_id="126659149423-hoo6ickbk3p1u2qjsdsp0ddciurfvb4t.apps.googleusercontent.com"'
-		'google_default_client_secret="_ozIx2D-DKm_se_2NPwV4l5b"'
-	)
-
-	conf+=(
-		'blink_symbol_level=0'
-		'clang_use_chrome_plugins=false'
-		'closure_compile=true'
-		'custom_toolchain="//build/toolchain/linux/unbundle:default"'
-	)
-	if [ "$CROSS_BUILD" ]; then
-		conf+=(
-			'host_toolchain="//build/toolchain/linux/unbundle:host"'
-			'v8_snapshot_toolchain="//build/toolchain/linux/unbundle:host"'
-			"host_pkg_config=\"$PKG_CONFIG_FOR_BUILD\""
-			"pkg_config=\"$PKG_CONFIG\""
-		)
-	else
-		conf+=(
-			'host_toolchain="//build/toolchain/linux/unbundle:default"'
-			'v8_snapshot_toolchain="//build/toolchain/linux/unbundle:default"'
-		)
-	fi
-	conf+=(
-		'enable_hangout_services_extension=true'
-		'enable_nacl_nonsfi=false'
-		'enable_nacl=false'
-		'enable_precompiled_headers=false'
-		'fatal_linker_warnings=false'
-		'ffmpeg_branding="Chrome"'
-		'fieldtrial_testing_like_official_build=true'
-		'gold_path="/usr/bin/ld.gold"'
-		'icu_use_data_file=true'
-		"is_clang=$(vopt_if clang true false)"
-		'is_component_build=false'
-		"is_debug=$_is_debug"
-		'is_desktop_linux=true'
-		'linux_use_bundled_binutils=false'
-		'proprietary_codecs=true'
-		'symbol_level=0'
-		'treat_warnings_as_errors=false'
-		'use_allocator_shim=false'
-		'use_allocator="none"'
-		'use_cups=true'
-		'use_custom_libcxx=false'
-		'use_gnome_keyring=false'
-		'use_gold=false'
-		'use_lld=false'
-		"use_pulseaudio=$(vopt_if pulseaudio 'true' 'false')"
-		'use_sysroot=false'
-		'use_system_harfbuzz=true'
-		"target_cpu=\"$target_arch\""
-		"host_cpu=\"$host_arch\""
-		'import("//electron/build/args/release.gn")'
-	)
-
-	msg_normal "Bootstrapping GN\n"
-	CC="${CC_FOR_BUILD:-$CC}" CXX="${CXX_FOR_BUILD:-$CXX}" LD="${LD_FOR_BUILD:-$LD}" \
-	CFLAGS="${CFLAGS_FOR_BUILD:-$CFLAGS}" CXXFLAGS="${CXXFLAGS_FOR_BUILD:-$CXXFLAGS}" \
-	LDFLAGS="${XBPS_LDFLAGS}" \
-		python2 tools/gn/bootstrap/bootstrap.py -s -v --skip-generate-buildfiles
-
-	msg_normal "Configuring build\n"
-	out/Release/gn gen out/$_buildtype --args="${conf[*]}"
-}
-
-do_build() {
-	export CXXFLAGS=$( shopt -s extglob; echo ${CXXFLAGS/-march=*([^ ])} )
-	export CFLAGS=$( shopt -s extglob; echo ${CFLAGS/-march=*([^ ])} )
-	if [ "$build_option_clang" ]; then
-		export CC=clang
-		export CXX=clang++
-		export HOST_CC=clang
-		export HOST_CXX=clang++
-	else
-		export BUILD_CXXFLAGS="$BUILD_CXXFLAGS -fpermissive"
-		export CXXFLAGS="$CXXFLAGS -fpermissive"
-		export BUILD_AR="$AR_host"
-		export BUILD_NM="$NM_host"
-	fi
-	msg_normal "Ninja turtles GO!\n"
-	ninja ${makejobs} -C out/$_buildtype electron third_party/electron_node:headers
-	# finish rest of the build
-	strip -s out/$_buildtype/electron
-	ninja ${makejobs} -C out/$_buildtype electron_dist_zip
-}
-
-do_install() {
-	vmkdir /usr/lib/$pkgname
-	vmkdir /usr/include/$pkgname
-	bsdtar -xf out/$_buildtype/dist.zip -C "$DESTDIR/usr/lib/$pkgname"
-
-	chmod u+s "$DESTDIR/usr/lib/$pkgname/chrome-sandbox"
-
-	cp out/$_buildtype/gen/node_headers.tar.gz "$DESTDIR"/usr/include/$pkgname
-
-	vlicense ${wrksrc}/src/LICENSE chromium.LICENSE
-	vlicense ${wrksrc}/src/electron/LICENSE electron.LICENSE
-	vlicense ${wrksrc}/src/third_party/electron_node/LICENSE node.LICENSE
-
-	vmkdir /usr/bin
-	ln -s ../lib/$pkgname/electron "$DESTDIR"/usr/bin/$pkgname
-}
diff --git a/srcpkgs/electron7/update b/srcpkgs/electron7/update
deleted file mode 100644
index 3af8e58b5358..000000000000
--- a/srcpkgs/electron7/update
+++ /dev/null
@@ -1,2 +0,0 @@
-site=https://www.electronjs.org/releases/stable?version=${version%%.*}
-pattern='tag/v\K[\d\.]+(?=")'

From e5332af5cef1580fad28e1886c28c4f74f3b850d Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Wed, 20 Jan 2021 01:35:30 +0100
Subject: [PATCH 0165/3482] removed-packages: drop mattermost-desktop and
 electron7

electron7 has been EOL for half a year and mattermost still uses
it even in git, with no compatibility with newer versions in sight
---
 srcpkgs/removed-packages/template | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/srcpkgs/removed-packages/template b/srcpkgs/removed-packages/template
index 3afdfe988051..56110cb4d738 100644
--- a/srcpkgs/removed-packages/template
+++ b/srcpkgs/removed-packages/template
@@ -1,7 +1,7 @@
 # Template file for 'removed-packages'
 pkgname=removed-packages
 version=0.1
-revision=11
+revision=12
 build_style=meta
 short_desc="Uninstalls packages removed from repository"
 maintainer="Piotr Wójcik <chocimier@tlen.pl>"
@@ -24,6 +24,7 @@ replaces="
  dleyna-server<=0.6.0_2
  ebtables<=2.0.10.4_8
  eclipse-ecj<=4.9_3
+ electron7<=7.3.3_1
  enventor<=1.0.0_2
  epstopdf<=2.27_3
  fontmatrix<=0.6.0.20171228_2
@@ -45,6 +46,7 @@ replaces="
  llvm3.9<=3.9.1_5
  ls++-git<=20140919_3
  mac<=3.99u4b5s7_3
+ mattermost-desktop<=4.6.0_1
  mdds0<=0.12.1_3
  mongroup<=0.4.1_2
  phonon-backend-gstreamer<=4.9.0_2

From 2d186b167969ece4cafd4cfdf9bf41aa1fb5c1c9 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Wed, 2 Dec 2020 19:47:39 +0700
Subject: [PATCH 0166/3482] grub: build grub-x86_64-efi for i686, build
 manpages

Close #25267
---
 srcpkgs/grub/template | 39 ++++++++++++++++++++-------------------
 1 file changed, 20 insertions(+), 19 deletions(-)

diff --git a/srcpkgs/grub/template b/srcpkgs/grub/template
index 76f9ce3f3686..21321d001c9c 100644
--- a/srcpkgs/grub/template
+++ b/srcpkgs/grub/template
@@ -1,8 +1,8 @@
 # Template file for 'grub'
 pkgname=grub
 version=2.04
-revision=3
-hostmakedepends="python3 pkg-config flex freetype-devel font-unifont-bdf"
+revision=4
+hostmakedepends="python3 pkg-config flex freetype-devel font-unifont-bdf help2man"
 makedepends="libusb-compat-devel ncurses-devel freetype-devel
  liblzma-devel device-mapper-devel fuse-devel"
 depends="os-prober"
@@ -27,10 +27,11 @@ case "$XBPS_TARGET_MACHINE" in
 		;;
 	i686*)
 		CFLAGS="-D_FILE_OFFSET_BITS=64"
+		hostmakedepends+=" cross-x86_64-linux-musl"
 		configure_args+=" ac_cv_sizeof_off_t=8"
 		_NATIVE_PLATFORM=pc
-		_SUPPLEMENTARY_BUILDS="i386-efi i386-coreboot i386-xen"
-		subpackages+=" grub-i386-efi grub-i386-coreboot grub-xen"
+		_SUPPLEMENTARY_BUILDS="i386-efi x86_64-efi i386-coreboot i386-xen"
+		subpackages+=" grub-i386-efi grub-x86_64-efi grub-i386-coreboot grub-xen"
 		;;
 	aarch64*)
 		_NATIVE_PLATFORM=efi
@@ -48,12 +49,13 @@ post_extract() {
 
 do_configure() {
 	unset CC AS LD RANLIB CPP
-	CFLAGS="$CFLAGS -fno-stack-protector"
+	local freestanding_cflags="-fno-stack-protector"
 
 	# building with altivec generates broken grub core
 	case "$XBPS_TARGET_MACHINE" in
-		ppc*) CFLAGS="$CFLAGS -mno-altivec" ;;
+		ppc*) freestanding_cflags+=" -mno-altivec" ;;
 	esac
+	CFLAGS+=" $freestanding_cflags"
 
 	configure_args+=" --enable-device-mapper --enable-cache-stats --enable-nls
 		--enable-grub-mkfont --enable-grub-mount --disable-werror
@@ -63,14 +65,11 @@ do_configure() {
 	sed -i 's|/usr/share/fonts/unifont|/usr/share/fonts/misc|' configure
 
 	# build tools
-	_configure_args=${configure_args}
-	if [ -n "${_NATIVE_PLATFORM}" ]; then
-		_configure_args="--with-platform=${_NATIVE_PLATFORM} ${_configure_args}"
-	fi
 	msg_normal "Configuring grub tools...\n"
 	mkdir $wrksrc/build
 	cd $wrksrc/build
-	../configure --host=${XBPS_TARGET_MACHINE} ${_configure_args}
+	../configure --host=${XBPS_TARGET_MACHINE} ${configure_args} \
+		${_NATIVE_PLATFORM:+--with-platform=${_NATIVE_PLATFORM}}
 
 	for _SUPP_BUILD in ${_SUPPLEMENTARY_BUILDS}; do
 		_TARGET=${_SUPP_BUILD%%-*}
@@ -78,7 +77,14 @@ do_configure() {
 		msg_normal "Configuring ${_TARGET} ${_PLATFORM} grub...\n"
 		mkdir $wrksrc/${_PLATFORM}_${_TARGET}_build
 		cd $wrksrc/${_PLATFORM}_${_TARGET}_build
-		../configure --host=${XBPS_TARGET_MACHINE} --target=${_TARGET} --with-platform=${_PLATFORM} ${configure_args} \
+		if [ "$_TARGET" = x86_64 ] &&
+			[ "${XBPS_TARGET_MACHINE%-musl}" = i686 ]; then
+			_TARGET=x86_64-linux-musl
+		fi
+		CFLAGS="$freestanding_cflags" \
+		../configure --host=${XBPS_TARGET_MACHINE} \
+			--target=${_TARGET} \
+			--with-platform=${_PLATFORM} ${configure_args} \
 			--disable-efiemu \
 			--libdir=/usr/lib
 	done
@@ -90,14 +96,14 @@ do_build() {
 
 	msg_normal "Building grub tools...\n"
 	cd $wrksrc/build
-	make ${makejobs} &> make.log || tail -n100 make.log
+	make ${makejobs}
 
 	for _SUPP_BUILD in ${_SUPPLEMENTARY_BUILDS}; do
 		_TARGET=${_SUPP_BUILD%%-*}
 		_PLATFORM=${_SUPP_BUILD##*-}
 		msg_normal "Building ${_TARGET} ${_PLATFORM} grub...\n"
 		cd $wrksrc/${_PLATFORM}_${_TARGET}_build
-		make ${makejobs} &> make.log || tail -n100 make.log
+		make ${makejobs}
 	done
 }
 
@@ -162,7 +168,6 @@ grub-utils_package() {
 	}
 }
 grub-x86_64-efi_package() {
-	archs=noarch
 	depends="grub>=$version dosfstools efibootmgr"
 	short_desc+=" - x86_64 EFI support"
 	pkg_install() {
@@ -170,7 +175,6 @@ grub-x86_64-efi_package() {
 	}
 }
 grub-i386-efi_package() {
-	archs=noarch
 	depends="grub>=$version dosfstools efibootmgr"
 	short_desc+=" - i386 EFI support"
 	pkg_install() {
@@ -178,7 +182,6 @@ grub-i386-efi_package() {
 	}
 }
 grub-i386-coreboot_package() {
-	archs=noarch
 	depends="grub>=$version"
 	short_desc+=" - i386 coreboot support"
 	pkg_install() {
@@ -200,7 +203,6 @@ grub-xen_package() {
 	}
 }
 grub-arm64-efi_package() {
-	archs=noarch
 	depends="grub>=$version dosfstools efibootmgr"
 	short_desc+=" - arm64 EFI support"
 	pkg_install() {
@@ -208,7 +210,6 @@ grub-arm64-efi_package() {
 	}
 }
 grub-powerpc-ieee1275_package() {
-	archs=noarch
 	depends="grub>=$version powerpc-utils"
 	short_desc+=" - powerpc Open Firmware support"
 	pkg_install() {

From 0a49b95a1e6bcd90a9f63f66c396c2fb06d1c6e0 Mon Sep 17 00:00:00 2001
From: UsernameRandomlyGenerated <unknown>
Date: Wed, 13 Jan 2021 15:26:53 +0100
Subject: [PATCH 0167/3482] buku: update to 4.5

---
 srcpkgs/buku/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/buku/template b/srcpkgs/buku/template
index 08ba6c8f8743..6912f42091e4 100644
--- a/srcpkgs/buku/template
+++ b/srcpkgs/buku/template
@@ -1,6 +1,6 @@
 # Template file for 'buku'
 pkgname=buku
-version=4.4
+version=4.5
 revision=1
 depends="python3-urllib3 python3-BeautifulSoup4 python3-cryptography
  python3-html5lib"
@@ -9,7 +9,7 @@ maintainer="Diogo Leal <diogo@diogoleal.com>"
 license="GPL-3.0-or-later"
 homepage="https://github.com/jarun/Buku"
 distfiles="https://github.com/jarun/Buku/archive/v${version}.tar.gz"
-checksum=c7d755569117ceb85fdda734dcca657e01f6d5252d7d3b9f757faeedfdcac741
+checksum=68c7bb77ba579ce69543e17d7dacaa31164a6662bb183463e8f1ffec2f9d6785
 
 do_install() {
 	vbin buku

From c8b59cc0e9ba696d93f240f8923b91fcf85cd962 Mon Sep 17 00:00:00 2001
From: Nathan Owens <ndowens@artixlinux.org>
Date: Sat, 9 Jan 2021 13:58:11 -0600
Subject: [PATCH 0168/3482] lxcfs: update to 4.0.7.

---
 srcpkgs/lxcfs/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/lxcfs/template b/srcpkgs/lxcfs/template
index 187295579e22..5ca756e46501 100644
--- a/srcpkgs/lxcfs/template
+++ b/srcpkgs/lxcfs/template
@@ -1,6 +1,6 @@
 # Template file for 'lxcfs'
 pkgname=lxcfs
-version=4.0.6
+version=4.0.7
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config"
@@ -10,7 +10,7 @@ maintainer="Nathan <ndowens@artixlinux.org>"
 license="Apache-2.0"
 homepage="https://linuxcontainers.org/lxcfs/"
 distfiles="https://linuxcontainers.org/downloads/lxcfs/lxcfs-${version}.tar.gz"
-checksum=8bc4dbd3b0bd14379766993b4d5fa34c5331c0c2cc253c4d30797249f6a0096d
+checksum=3f28e2f4b04c0090aaf88b72666505f0313768a5254dd48a14c43cf78c543ec8
 
 make_dirs="/var/lib/lxcfs 0755 root root"
 

From cf39ebf7c6a011b54ae5ab61d18207f151cf2b31 Mon Sep 17 00:00:00 2001
From: mobinmob <mobinmob@disroot.org>
Date: Sat, 9 Jan 2021 22:51:19 +0200
Subject: [PATCH 0169/3482] tcl: update to 8.6.11.

---
 srcpkgs/tcl/template | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/tcl/template b/srcpkgs/tcl/template
index 191acaf46c36..d36663d8b1fa 100644
--- a/srcpkgs/tcl/template
+++ b/srcpkgs/tcl/template
@@ -1,7 +1,7 @@
 # Template file for 'tcl'
 pkgname=tcl
-version=8.6.10
-revision=3
+version=8.6.11
+revision=1
 wrksrc="tcl${version}"
 build_wrksrc=unix
 build_style=gnu-configure
@@ -15,7 +15,7 @@ maintainer="Orphaned <orphan@voidlinux.org>"
 license="TCL"
 homepage="http://www.tcl.tk"
 distfiles="${SOURCEFORGE_SITE}/${pkgname}/${pkgname}${version}-src.tar.gz"
-checksum=5196dbf6638e3df8d5c87b5815c8c2b758496eb6f0e41446596c9a4e638d87ed
+checksum=8c0486668586672c5693d7d95817cb05a18c5ecca2f40e2836b9578064088258
 
 shlib_provides="libtcl${version%.*}.so"
 
@@ -37,5 +37,6 @@ tcl-devel_package() {
 		vmove usr/include
 		vmove usr/lib/pkgconfig
 		vmove usr/share/man/man3
+		vmove "usr/lib/*.a"
 	}
 }

From a1ffd3dbe4d128b014d8b72188eeb4f178d58d0e Mon Sep 17 00:00:00 2001
From: mobinmob <mobinmob@disroot.org>
Date: Sat, 9 Jan 2021 22:51:23 +0200
Subject: [PATCH 0170/3482] tk: update to 8.6.11.

---
 srcpkgs/tk/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/tk/template b/srcpkgs/tk/template
index e8c4f79b460f..d09a878d6256 100644
--- a/srcpkgs/tk/template
+++ b/srcpkgs/tk/template
@@ -1,7 +1,7 @@
 # Template file for 'tk'
 pkgname=tk
-version=8.6.10
-revision=3
+version=8.6.11
+revision=1
 wrksrc="tk${version}"
 build_wrksrc=unix
 build_style=gnu-configure
@@ -15,7 +15,7 @@ maintainer="Orphaned <orphan@voidlinux.org>"
 license="custom:TCL"
 homepage="http://www.tcl.tk"
 distfiles="${SOURCEFORGE_SITE}/tcl/${pkgname}${version}-src.tar.gz"
-checksum=63df418a859d0a463347f95ded5cd88a3dd3aaa1ceecaeee362194bc30f3e386
+checksum=5228a8187a7f70fa0791ef0f975270f068ba9557f57456f51eb02d9d4ea31282
 
 shlib_provides="libtk8.6.so"
 

From 5655a0bb975328835f7098e6c3eeb3068c8c0e71 Mon Sep 17 00:00:00 2001
From: travankor <travankor@tuta.io>
Date: Fri, 8 Jan 2021 15:43:46 -0700
Subject: [PATCH 0171/3482] python3-txaio: update to 20.12.1.

---
 srcpkgs/python3-txaio/template | 11 ++++++++---
 1 file changed, 8 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/python3-txaio/template b/srcpkgs/python3-txaio/template
index 47dadfa68ed0..e9b27b0a6886 100644
--- a/srcpkgs/python3-txaio/template
+++ b/srcpkgs/python3-txaio/template
@@ -1,7 +1,7 @@
 # Template file for 'python3-txaio'
 pkgname=python3-txaio
-version=20.4.1
-revision=2
+version=20.12.1
+revision=1
 wrksrc="txaio-${version}"
 build_style=python3-module
 hostmakedepends="python3 python3-setuptools"
@@ -10,7 +10,12 @@ maintainer="travankor <travankor@tuta.io>"
 license="MIT"
 homepage="https://github.com/crossbario/txaio"
 distfiles="https://github.com/crossbario/txaio/archive/v${version}.tar.gz"
-checksum=85eb85196c4b566c1b3ada3a1ce06728f0387bb054514d629d3156558a910f21
+checksum=51796ed894c7fca3f15d60f2e42aec0bd933112073de748e4fe67faf62a03387
+
+do_check() {
+	# Depends on deprecated and unmaintained trollius package
+	:
+}
 
 post-install() {
 	vlicense LICENSE

From 0de73c6e6bca2f04f55e63b21719c0348b7512c5 Mon Sep 17 00:00:00 2001
From: newbluemoon <blaumolch@mailbox.org>
Date: Tue, 12 Jan 2021 07:27:44 +0100
Subject: [PATCH 0172/3482] lilypond: update to 2.22.0

---
 srcpkgs/lilypond/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/lilypond/template b/srcpkgs/lilypond/template
index 9d400b673cb2..c3be0ae65c02 100644
--- a/srcpkgs/lilypond/template
+++ b/srcpkgs/lilypond/template
@@ -1,6 +1,6 @@
 # Template file for 'lilypond'
 pkgname=lilypond
-version=2.21.82
+version=2.22.0
 revision=1
 build_wrksrc="build"
 build_style="gnu-configure"
@@ -16,8 +16,8 @@ short_desc="Music engraving program"
 maintainer="newbluemoon <blaumolch@mailbox.org>"
 license="GPL-3.0-or-later, GFDL-1.3-or-later"
 homepage="https://lilypond.org/"
-distfiles="https://lilypond.org/downloads/sources/v2.21/lilypond-${version}.tar.gz"
-checksum=f0bd17cccee771ed4a2e0db1ec81c98d9f52e47090e5dcc085de65dd8cc4bdd9
+distfiles="https://lilypond.org/downloads/sources/v2.22/lilypond-${version}.tar.gz"
+checksum=64ddd03171d247adc243e01a3be3ec2610d97c62b893c253ad02ac50694b0f4e
 python_version=3
 
 if [ -n "${CROSS_BUILD}" ]; then

From f60b617c3a5cb7822892e86892a7c162289566af Mon Sep 17 00:00:00 2001
From: newbluemoon <blaumolch@mailbox.org>
Date: Tue, 12 Jan 2021 07:28:31 +0100
Subject: [PATCH 0173/3482] lilypond-doc: update to 2.22.0

---
 srcpkgs/lilypond-doc/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/lilypond-doc/template b/srcpkgs/lilypond-doc/template
index 7c1184d99648..3d5a809a9618 100644
--- a/srcpkgs/lilypond-doc/template
+++ b/srcpkgs/lilypond-doc/template
@@ -1,6 +1,6 @@
 # Template file for 'lilypond-doc'
 pkgname=lilypond-doc
-version=2.21.82
+version=2.22.0
 revision=1
 create_wrksrc=yes
 short_desc="Documentation for the lilypond music engraving program"
@@ -8,7 +8,7 @@ maintainer="newbluemoon <blaumolch@mailbox.org>"
 license="GPL-3.0-or-later, GFDL-1.3-or-later"
 homepage="http://lilypond.org/"
 distfiles="http://lilypond.org/downloads/binaries/documentation/lilypond-${version}-1.documentation.tar.bz2"
-checksum=f8cb74f452472b38fd1e67a09405efd0f52d38b3b85a62c5e998a698dd82c2b7
+checksum=2698a407424e29abf834d12376fb33aa1bfa2afa8b7f3537120b0817b982bd8f
 
 do_install() {
 	vmkdir usr

From 0d8589f1931992642affef669a889d659551a627 Mon Sep 17 00:00:00 2001
From: Olaf Mersmann <olafm@p-value.net>
Date: Sun, 10 Jan 2021 09:24:40 +0100
Subject: [PATCH 0174/3482] shutils/chroot.sh: create symlink for
 /etc/localtime

Currently /etc/localtime is copied from the host to the chroot. Some
software expects /etc/localtime to be a symbolic link it can read to
determine the name of the time zone, so set up the expected link
structure.
---
 common/xbps-src/shutils/chroot.sh | 16 +++++++++++-----
 1 file changed, 11 insertions(+), 5 deletions(-)

diff --git a/common/xbps-src/shutils/chroot.sh b/common/xbps-src/shutils/chroot.sh
index 8646d7585492..73b98bc7200e 100644
--- a/common/xbps-src/shutils/chroot.sh
+++ b/common/xbps-src/shutils/chroot.sh
@@ -106,11 +106,17 @@ chroot_prepare() {
         msg_error "Bootstrap not installed in $XBPS_MASTERDIR, can't continue.\n"
     fi
 
-    # Create some required files.
-    if [ -f /etc/localtime ]; then
-        cp -f /etc/localtime $XBPS_MASTERDIR/etc
-    elif [ -f /usr/share/zoneinfo/UTC ]; then
-        cp -f /usr/share/zoneinfo/UTC $XBPS_MASTERDIR/etc/localtime
+    # Some software expects /etc/localtime to be a symbolic link it can read to
+    # determine the name of the time zone, so set up the expected link
+    # structure.
+    if [ -f /usr/share/zoneinfo/UTC ]; then
+        tzfile=/usr/share/zoneinfo/UTC
+        mkdir -p $XBPS_MASTERDIR/usr/share/zoneinfo
+        cp /usr/share/zoneinfo/UTC $XBPS_MASTERDIR/usr/share/zoneinfo/UTC
+        ln -sf ../usr/share/zoneinfo/UTC $XBPS_MASTERDIR/etc/localtime
+    else
+        # Should never happen.
+        msg_warn "No local timezone configuration file created."
     fi
 
     for f in dev sys proc host boot; do

From 217031dc0749bcfd9190861907ba533e68f072c8 Mon Sep 17 00:00:00 2001
From: teldra <teldra@rotce.de>
Date: Wed, 20 Jan 2021 01:03:05 +0100
Subject: [PATCH 0175/3482] portage: update to 3.0.14.

---
 srcpkgs/portage/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/portage/template b/srcpkgs/portage/template
index 3f44cd3d6c3e..4fa784964fe8 100644
--- a/srcpkgs/portage/template
+++ b/srcpkgs/portage/template
@@ -1,6 +1,6 @@
 # Template file for 'portage'
 pkgname=portage
-version=3.0.12
+version=3.0.14
 revision=1
 wrksrc="${pkgname}-${pkgname}-${version}"
 build_style=python3-module
@@ -13,7 +13,7 @@ maintainer="teldra <teldra@rotce.de>"
 license="GPL-2.0-only"
 homepage="https://wiki.gentoo.org/wiki/Portage"
 distfiles="https://github.com/gentoo/${pkgname}/archive/${pkgname}-${version}.tar.gz"
-checksum=4f8f4e1547d903f020eedceab6119a640ff2b331da33dc5e07b1634a63859d59
+checksum=59bebfa0aa1ff2ae3f27383f0b6c7f5d271050c080f6bfd3da86c2dcf7395aaf
 
 conf_files="
 	/etc/dispatch-conf.conf

From 767a31d5bb4870814ed09da240641f10db66808c Mon Sep 17 00:00:00 2001
From: whoizit <whoami@systemli.org>
Date: Sat, 9 Jan 2021 10:32:39 +0300
Subject: [PATCH 0176/3482] guitarix2: update to 0.42.1.

---
 srcpkgs/guitarix2/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/guitarix2/template b/srcpkgs/guitarix2/template
index 3aabb9c8ff91..2d066a454c33 100644
--- a/srcpkgs/guitarix2/template
+++ b/srcpkgs/guitarix2/template
@@ -1,6 +1,6 @@
 # Template file for 'guitarix2'
 pkgname=guitarix2
-version=0.42.0
+version=0.42.1
 revision=1
 wrksrc="guitarix-${version}"
 build_style=waf3
@@ -18,7 +18,7 @@ maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-3.0-or-later"
 homepage="http://guitarix.org"
 distfiles="${SOURCEFORGE_SITE}/guitarix/guitarix/guitarix2-${version}.tar.xz"
-checksum=fb1b75b7ea9f140c2b2df50982e14616dcaffaf65425ca531fcf6f27dd956405
+checksum=797e46e07148fba89e46fac4efe73a5b3a98f070bca85db3d143de781b142c80
 
 build_options="avahi bluez"
 desc_option_avahi="Build with avahi support"

From f8ccc0ad17c7bedad85db5c5b055d2add7a4c744 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C3=89rico=20Rolim?= <erico.erc@gmail.com>
Date: Tue, 19 Jan 2021 23:07:01 -0300
Subject: [PATCH 0177/3482] gnuchess: fix segfault on musl.

musl's default thread stack size was too small for gnuchess.

Fixes #28044
---
 srcpkgs/gnuchess/template | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/srcpkgs/gnuchess/template b/srcpkgs/gnuchess/template
index 914272150db9..9a279566ad5b 100644
--- a/srcpkgs/gnuchess/template
+++ b/srcpkgs/gnuchess/template
@@ -1,7 +1,7 @@
 # Template file for 'gnuchess'
 pkgname=gnuchess
 version=6.2.7
-revision=1
+revision=2
 build_style=gnu-configure
 makedepends="readline-devel"
 short_desc="GNU Chess"
@@ -10,3 +10,5 @@ license="GPL-3.0-or-later"
 homepage="http://www.gnu.org/software/chess/chess.html"
 distfiles="${GNU_SITE}/chess/${pkgname}-${version}.tar.gz"
 checksum=e536675a61abe82e61b919f6b786755441d9fcd4c21e1c82fb9e5340dd229846
+
+LDFLAGS="-Wl,-z,stack-size=2097152"

From 8d4a3dc0784c892b088384eaa3c6c4ec015aec12 Mon Sep 17 00:00:00 2001
From: Neel Chotai <neel@chot.ai>
Date: Wed, 20 Jan 2021 02:43:15 +0000
Subject: [PATCH 0178/3482] dust: update to 0.5.4

---
 srcpkgs/dust/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/dust/template b/srcpkgs/dust/template
index 62590a742864..080b439e3237 100644
--- a/srcpkgs/dust/template
+++ b/srcpkgs/dust/template
@@ -1,6 +1,6 @@
 # Template file for 'dust'
 pkgname=dust
-version=0.5.3
+version=0.5.4
 revision=1
 build_style=cargo
 short_desc="More intuitive version of du"
@@ -8,7 +8,7 @@ maintainer="Neel <neel@chot.ai>"
 license="Apache-2.0"
 homepage="https://github.com/bootandy/dust"
 distfiles="https://github.com/bootandy/dust/archive/v${version}.tar.gz"
-checksum=f8401257e1cae721019da05a11dd00c2f114121ccd525452b783d472da59b6e8
+checksum=395f0d5f44d5000468dc51a195e4b8e8c0b710a1c75956fb1f9ad08f2fbbc935
 
 post_install() {
 	vdoc README.md

From 41093a600c0f45105e6025d8c1eddcbbfc94352e Mon Sep 17 00:00:00 2001
From: gt7-void <40529120+gt7-void@users.noreply.github.com>
Date: Mon, 18 Jan 2021 14:42:15 -0300
Subject: [PATCH 0179/3482] keepassxc: enable fdosecrets by default

This allows one to use `keepassxc` as a secrets storage via `libsecret`.

Closes: #28020 [via git-merge-pr]
Signed-off-by: Piraty <piraty1@inbox.ru>
---
 srcpkgs/keepassxc/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/keepassxc/template b/srcpkgs/keepassxc/template
index 7778193f5fb2..d110e2fd0431 100644
--- a/srcpkgs/keepassxc/template
+++ b/srcpkgs/keepassxc/template
@@ -1,7 +1,7 @@
 # Template file for 'keepassxc'
 pkgname=keepassxc
 version=2.6.3
-revision=1
+revision=2
 build_style=cmake
 configure_args="-DWITH_TESTS=ON -DWITH_XC_UPDATECHECK=OFF -DWITH_XC_DOCS=ON
  -DWITH_XC_AUTOTYPE=$(vopt_if autotype ON OFF)
@@ -36,7 +36,7 @@ desc_option_keeshare="Include sharing integration with KeeShare"
 desc_option_network="Include networking code (favicon download)"
 desc_option_sshagent="Include SSH agent support"
 desc_option_yubikey="Include YubiKey support"
-build_options_default="autotype browser keeshare network sshagent yubikey"
+build_options_default="autotype browser fdosecrets keeshare network sshagent yubikey"
 
 post_install() {
 	vlicense COPYING

From e5c1272883e2e8c460f9ff7253f9fdf95833cb4f Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Wed, 20 Jan 2021 01:46:54 +0100
Subject: [PATCH 0180/3482] mirrorbits: remove

depends on geoip-data, which is long broken
---
 srcpkgs/mirrorbits/template | 43 -------------------------------------
 srcpkgs/mirrorbits/update   |  2 --
 2 files changed, 45 deletions(-)
 delete mode 100644 srcpkgs/mirrorbits/template
 delete mode 100644 srcpkgs/mirrorbits/update

diff --git a/srcpkgs/mirrorbits/template b/srcpkgs/mirrorbits/template
deleted file mode 100644
index d1d76406f86e..000000000000
--- a/srcpkgs/mirrorbits/template
+++ /dev/null
@@ -1,43 +0,0 @@
-# Template file for 'mirrorbits'
-pkgname=mirrorbits
-version=0.5.1
-revision=1
-build_style=go
-go_import_path="github.com/etix/mirrorbits"
-go_ldflags="-X ${go_import_path}/core.VERSION=${VERSION}"
-_go_protobuf_version=52132540909e117f2b98b0694383dc0ab1e1deca
-hostmakedepends="govendor git pkg-config protobuf-devel protobuf"
-makedepends="geoip-devel"
-depends="geoip-data redis"
-short_desc="Geographical download redirector"
-maintainer="lemmi <lemmi@nerd2nerd.org>"
-license="MIT"
-homepage="https://github.com/etix/mirrorbits"
-distfiles="
- https://github.com/etix/mirrorbits/archive/v${version}.tar.gz
- https://github.com/golang/protobuf/archive/${_go_protobuf_version}.tar.gz"
-checksum="
- c713c312877aa039415b1f336bf8ca456aa3089a5759c9e6aa9aac8853e165fb
- 5ef8723453af0aeea20f7b6f322345c009560ec23b85d430838bfb5d2f1cde4a"
-patch_args="-Np1"
-
-pre_build() {
-	# Build the protoc-gen-go Protobuf plugin.
-	mkdir -p "${GOPATH}/src/github.com/golang"
-	ln -s "${XBPS_BUILDDIR}/protobuf-${_go_protobuf_version}" "${GOPATH}/src/github.com/golang/protobuf"
-	GOOS= GOARCH= go install github.com/golang/protobuf/protoc-gen-go
-	# Generate mirrorbits RPC code.
-	PATH="${GOPATH}/bin:${PATH}" protoc -I rpc rpc/rpc.proto --go_out=plugins=grpc:rpc
-	# Clean up protoc-gen-go so do_install doesn't package it.
-	rm "${GOPATH}/bin/protoc-gen-go"
-
-	cd "${GOPATH}/src/${go_import_path}"
-	govendor sync
-}
-
-post_install() {
-	vlicense LICENSE.txt
-	vmkdir usr/share/mirrorbits/templates
-	vcopy templates usr/share/mirrorbits/
-	vsconf mirrorbits.conf
-}
diff --git a/srcpkgs/mirrorbits/update b/srcpkgs/mirrorbits/update
deleted file mode 100644
index 1f6df0642491..000000000000
--- a/srcpkgs/mirrorbits/update
+++ /dev/null
@@ -1,2 +0,0 @@
-site="https://github.com/etix/mirrorbits/releases"
-pattern='mirrorbits-v\K[\d.]+\d'

From f313f482d48f3f2fc6c69bf338195a8c7c132b7b Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Wed, 20 Jan 2021 12:28:38 +0100
Subject: [PATCH 0181/3482] qomui: drop geoip dependency

---
 srcpkgs/qomui/patches/remove-geoip-dep.patch | 13 +++++++++++++
 srcpkgs/qomui/template                       |  4 ++--
 2 files changed, 15 insertions(+), 2 deletions(-)
 create mode 100644 srcpkgs/qomui/patches/remove-geoip-dep.patch

diff --git a/srcpkgs/qomui/patches/remove-geoip-dep.patch b/srcpkgs/qomui/patches/remove-geoip-dep.patch
new file mode 100644
index 000000000000..662ba3f9ff6e
--- /dev/null
+++ b/srcpkgs/qomui/patches/remove-geoip-dep.patch
@@ -0,0 +1,13 @@
+--- qomui/update.py
++++ qomui/update.py
+@@ -991,9 +991,7 @@
+ 
+                 if ip != 0:
+ 
+-                    country_check = check_output(["geoiplookup", "{}".format(ip)]).decode("utf-8")
+-                    cc = country_check.split(" ")[3].split(",")[0]
+-                    country = country_translate(cc)
++                    country = "Unknown"
+                     self.log.emit(("debug", "importing {}".format(name)))
+                     custom_servers[name] = {
+                                                 "name": name,
diff --git a/srcpkgs/qomui/template b/srcpkgs/qomui/template
index 9d832bd2387c..b74138381bef 100644
--- a/srcpkgs/qomui/template
+++ b/srcpkgs/qomui/template
@@ -1,13 +1,13 @@
 # Template file for 'qomui'
 pkgname=qomui
 version=0.8.2
-revision=3
+revision=4
 build_style=python3-module
 pycompile_module="qomui"
 hostmakedepends="python3 python3-setuptools"
 depends="python python3 python3-PyQt5 python3-dbus python3-psutil
  python3-requests python3-BeautifulSoup4 python3-lxml python3-pexpect openvpn
- python3-PyQt5-dbus stunnel geoip geoip-data dnsmasq libcgroup libcgroup-utils
+ python3-PyQt5-dbus stunnel dnsmasq libcgroup libcgroup-utils
  iptables wireguard wireguard-tools openresolv"
 short_desc="OpenVPN Qt management ui"
 maintainer="Young Jin Park <youngjinpark20@gmail.com>"

From 4291fc576ddc6ab6bd010b58094824a89dc30c71 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Wed, 20 Jan 2021 01:47:08 +0100
Subject: [PATCH 0182/3482] geoip-data: remove

this has failed to fetch distfiles for ages
---
 srcpkgs/geoip-data/template | 30 ------------------------------
 1 file changed, 30 deletions(-)
 delete mode 100644 srcpkgs/geoip-data/template

diff --git a/srcpkgs/geoip-data/template b/srcpkgs/geoip-data/template
deleted file mode 100644
index 2a1991ebf9bb..000000000000
--- a/srcpkgs/geoip-data/template
+++ /dev/null
@@ -1,30 +0,0 @@
-# Template file for 'geoip-data'
-pkgname=geoip-data
-version=20171002
-revision=2
-create_wrksrc=yes
-short_desc="Non-DNS IP-to-country resolver C library and utilities (data files)"
-maintainer="Enno Boland <gottox@voidlinux.org>"
-license="CC-BY-SA-4.0"
-homepage="https://dev.maxmind.com/geoip/legacy/geolite/"
-archs=noarch
-broken="broken URLs, downloads unversioned files that change daily!"
-
-do_fetch() {
-	$XBPS_FETCH_CMD http://geolite.maxmind.com/download/geoip/database/GeoLiteCountry/GeoIP.dat.gz
-	$XBPS_FETCH_CMD http://geolite.maxmind.com/download/geoip/database/GeoIPv6.dat.gz
-	$XBPS_FETCH_CMD http://geolite.maxmind.com/download/geoip/database/GeoLiteCity.dat.gz
-	$XBPS_FETCH_CMD http://geolite.maxmind.com/download/geoip/database/GeoLiteCityv6-beta/GeoLiteCityv6.dat.gz
-	$XBPS_FETCH_CMD http://download.maxmind.com/download/geoip/database/asnum/GeoIPASNum.dat.gz
-	$XBPS_FETCH_CMD http://download.maxmind.com/download/geoip/database/asnum/GeoIPASNumv6.dat.gz
-}
-
-do_install() {
-	local f
-	vmkdir usr/share/GeoIP
-	for f in GeoIP GeoIPv6 GeoLiteCity GeoLiteCityv6 GeoIPASNum GeoIPASNumv6; do
-		zcat ../${f}.dat.gz > ${f}.dat
-		rm -f ../${f}.dat.gz
-		vinstall ${f}.dat 644 usr/share/GeoIP
-	done
-}

From 06d3472acdf8ca2777415d2d9301b5dd97126d1a Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Wed, 20 Jan 2021 12:34:45 +0100
Subject: [PATCH 0183/3482] removed-packages: drop mirrorbits and geoip-data

---
 srcpkgs/removed-packages/template | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/srcpkgs/removed-packages/template b/srcpkgs/removed-packages/template
index 56110cb4d738..e5e08f74170c 100644
--- a/srcpkgs/removed-packages/template
+++ b/srcpkgs/removed-packages/template
@@ -1,7 +1,7 @@
 # Template file for 'removed-packages'
 pkgname=removed-packages
 version=0.1
-revision=12
+revision=13
 build_style=meta
 short_desc="Uninstalls packages removed from repository"
 maintainer="Piotr Wójcik <chocimier@tlen.pl>"
@@ -28,6 +28,7 @@ replaces="
  enventor<=1.0.0_2
  epstopdf<=2.27_3
  fontmatrix<=0.6.0.20171228_2
+ geoip-data<=20171002_2
  gksu<=2.0.2_4
  go1.4-bootstrap<=20171003_2
  goffice0.8<=0.8.17_6
@@ -48,6 +49,7 @@ replaces="
  mac<=3.99u4b5s7_3
  mattermost-desktop<=4.6.0_1
  mdds0<=0.12.1_3
+ mirrorbits<=0.5.1_1
  mongroup<=0.4.1_2
  phonon-backend-gstreamer<=4.9.0_2
  phonon-backend-vlc<=0.9.1_3

From cb804fbf85db4bed610d0eed41d1812a0cb40016 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Wed, 20 Jan 2021 12:55:11 +0100
Subject: [PATCH 0184/3482] xbps-src: remove noarch

---
 Manual.md                                           |  2 +-
 common/hooks/do-pkg/00-gen-pkg.sh                   |  6 ++----
 .../hooks/post-install/06-strip-and-debug-pkgs.sh   |  2 +-
 common/hooks/post-pkg/00-register-pkg.sh            |  6 ++----
 common/hooks/pre-pkg/04-generate-runtime-deps.sh    |  2 +-
 common/hooks/pre-pkg/05-prepare-32bit.sh            | 13 +------------
 common/hooks/pre-pkg/06-shlib-provides.sh           |  2 +-
 common/xbps-src/shutils/common.sh                   |  9 +--------
 common/xbps-src/shutils/pkgtarget.sh                |  2 +-
 9 files changed, 11 insertions(+), 33 deletions(-)

diff --git a/Manual.md b/Manual.md
index 386daa243621..9c0d094c0fef 100644
--- a/Manual.md
+++ b/Manual.md
@@ -733,7 +733,7 @@ Examples:
 	# Default value (all arches)
 	archs="*"
 	```
-Do not use noarch. It is deprecated and being removed.
+A special value `noarch` used to be available, but has since been removed.
 
 <a id="explain_depends"></a>
 #### About the many types of `depends` variables
diff --git a/common/hooks/do-pkg/00-gen-pkg.sh b/common/hooks/do-pkg/00-gen-pkg.sh
index b809a6dc5eba..f0b70c8eebb8 100644
--- a/common/hooks/do-pkg/00-gen-pkg.sh
+++ b/common/hooks/do-pkg/00-gen-pkg.sh
@@ -104,14 +104,12 @@ hook() {
 	local arch= binpkg= repo= _pkgver= _desc= _pkgn= _pkgv= _provides= \
 		_replaces= _reverts= f= found_dbg_subpkg=
 
-	if [ "${archs// /}" = "noarch" ]; then
-		arch=noarch
-	elif [ -n "$XBPS_TARGET_MACHINE" ]; then
+	if [ -n "$XBPS_TARGET_MACHINE" ]; then
 		arch=$XBPS_TARGET_MACHINE
 	else
 		arch=$XBPS_MACHINE
 	fi
-	if [ "${archs// /}" != "noarch" -a -z "$XBPS_CROSS_BUILD" -a -n "$XBPS_ARCH" -a "$XBPS_ARCH" != "$XBPS_TARGET_MACHINE" ]; then
+	if [ -z "$XBPS_CROSS_BUILD" -a -n "$XBPS_ARCH" -a "$XBPS_ARCH" != "$XBPS_TARGET_MACHINE" ]; then
 		arch=${XBPS_ARCH}
 	fi
 
diff --git a/common/hooks/post-install/06-strip-and-debug-pkgs.sh b/common/hooks/post-install/06-strip-and-debug-pkgs.sh
index 44d8a51fe939..b59dde5ab3cd 100644
--- a/common/hooks/post-install/06-strip-and-debug-pkgs.sh
+++ b/common/hooks/post-install/06-strip-and-debug-pkgs.sh
@@ -59,7 +59,7 @@ create_debug_pkg() {
 hook() {
 	local fname= x= f= _soname= STRIPCMD=
 
-	if [ -n "$nostrip" -o "${archs// /}" = "noarch" ]; then
+	if [ -n "$nostrip" ]; then
 		return 0
 	fi
 
diff --git a/common/hooks/post-pkg/00-register-pkg.sh b/common/hooks/post-pkg/00-register-pkg.sh
index 5dc28c999c9d..ce641cfc850c 100644
--- a/common/hooks/post-pkg/00-register-pkg.sh
+++ b/common/hooks/post-pkg/00-register-pkg.sh
@@ -13,14 +13,12 @@ registerpkg() {
 hook() {
 	local arch= binpkg= pkgdir=
 
-	if [ "${archs// /}" = "noarch" ]; then
-		arch=noarch
-	elif [ -n "$XBPS_TARGET_MACHINE" ]; then
+	if [ -n "$XBPS_TARGET_MACHINE" ]; then
 		arch=$XBPS_TARGET_MACHINE
 	else
 		arch=$XBPS_MACHINE
 	fi
-	if [ "${archs// /}" != "noarch" -a -z "$XBPS_CROSS_BUILD" -a -n "$XBPS_ARCH" -a "$XBPS_ARCH" != "$XBPS_TARGET_MACHINE" ]; then
+	if [ -z "$XBPS_CROSS_BUILD" -a -n "$XBPS_ARCH" -a "$XBPS_ARCH" != "$XBPS_TARGET_MACHINE" ]; then
 		arch=${XBPS_ARCH}
 	fi
 	if [ -n "$repository" ]; then
diff --git a/common/hooks/pre-pkg/04-generate-runtime-deps.sh b/common/hooks/pre-pkg/04-generate-runtime-deps.sh
index 6e45b7dd3c3d..8ffd3a71d8eb 100644
--- a/common/hooks/pre-pkg/04-generate-runtime-deps.sh
+++ b/common/hooks/pre-pkg/04-generate-runtime-deps.sh
@@ -56,7 +56,7 @@ hook() {
 
     mapshlibs=$XBPS_COMMONDIR/shlibs
 
-    if [ "${archs// /}" = "noarch" -o -n "$noverifyrdeps" ]; then
+    if [ -n "$noverifyrdeps" ]; then
         store_pkgdestdir_rundeps
         return 0
     fi
diff --git a/common/hooks/pre-pkg/05-prepare-32bit.sh b/common/hooks/pre-pkg/05-prepare-32bit.sh
index fd6fdf882171..c293222586fd 100644
--- a/common/hooks/pre-pkg/05-prepare-32bit.sh
+++ b/common/hooks/pre-pkg/05-prepare-32bit.sh
@@ -19,10 +19,6 @@ hook() {
 	# This hook will only work when building for x86.
 	if [ "$XBPS_TARGET_MACHINE" != "i686" ]; then
 		return
-	fi 
-	# Ignore noarch pkgs.
-	if [ "${archs// /}" = "noarch" ]; then
-		return
 	fi
 	if [ -z "$lib32mode" ]; then
 		# Library mode, copy only relevant files to new destdir.
@@ -88,7 +84,7 @@ hook() {
 			_deps="$(<${PKGDESTDIR}/rdeps)"
 		fi
 		for f in ${_deps}; do
-			unset found pkgn pkgv _arch _shprovides
+			unset found pkgn pkgv _shprovides
 
 			pkgn="$($XBPS_UHELPER_CMD getpkgdepname $f)"
 			if [ -z "${pkgn}" ]; then
@@ -106,13 +102,6 @@ hook() {
 				printf "${pkgn}-32bit${pkgv} " >> ${destdir32}/rdeps
 				continue
 			fi
-			# If dependency is noarch do not change it to 32bit.
-			_arch=$($XBPS_QUERY_CMD -R --property=architecture "$f")
-			if [ "${_arch}" = "noarch" ]; then
-				echo "   RDEP: $f -> ${pkgn}${pkgv} (noarch)"
-				printf "${pkgn}${pkgv} " >> ${destdir32}/rdeps
-				continue
-			fi
 			# If dependency does not have "shlib-provides" do not
 			# change it to 32bit.
 			for x in ${subpackages}; do
diff --git a/common/hooks/pre-pkg/06-shlib-provides.sh b/common/hooks/pre-pkg/06-shlib-provides.sh
index cdc94de3bc93..fc39f6bfbe48 100644
--- a/common/hooks/pre-pkg/06-shlib-provides.sh
+++ b/common/hooks/pre-pkg/06-shlib-provides.sh
@@ -45,7 +45,7 @@ collect_sonames() {
 hook() {
 	local _destdir32=${XBPS_DESTDIR}/${pkgname}-32bit-${version}
 
-	if [ -z "$shlib_provides" -a "${archs// /}" = "noarch" -o -n "$noshlibprovides" ]; then
+	if [ -n "$noshlibprovides" ]; then
 		return 0
 	fi
 
diff --git a/common/xbps-src/shutils/common.sh b/common/xbps-src/shutils/common.sh
index be75d31e6229..1739124050f7 100644
--- a/common/xbps-src/shutils/common.sh
+++ b/common/xbps-src/shutils/common.sh
@@ -328,7 +328,7 @@ get_subpkgs() {
 
 setup_pkg() {
     local pkg="$1" cross="$2" show_problems="$3"
-    local basepkg val _vars f dbgflags arch extrarepo
+    local basepkg val _vars f dbgflags extrarepo
 
     [ -z "$pkg" ] && return 1
     basepkg=${pkg%-32bit}
@@ -469,13 +469,6 @@ setup_pkg() {
         XBPS_MAKEJOBS=1
     fi
     makejobs="-j$XBPS_MAKEJOBS"
-
-    # strip whitespaces to make "  noarch  " valid too.
-    if [ "${archs// /}" = "noarch" ]; then
-        arch="noarch"
-    else
-        arch="$XBPS_TARGET_MACHINE"
-    fi
     if [ -n "$XBPS_BINPKG_EXISTS" ]; then
         local _binpkgver="$($XBPS_QUERY_XCMD -R -ppkgver $pkgver 2>/dev/null)"
         if [ "$_binpkgver" = "$pkgver" ]; then
diff --git a/common/xbps-src/shutils/pkgtarget.sh b/common/xbps-src/shutils/pkgtarget.sh
index e064b7c29116..6c6f03ff726f 100644
--- a/common/xbps-src/shutils/pkgtarget.sh
+++ b/common/xbps-src/shutils/pkgtarget.sh
@@ -3,7 +3,7 @@
 check_pkg_arch() {
     local cross="$1" _arch f match nonegation
 
-    if [ -n "$archs" -a "${archs// /}" != "noarch" ]; then
+    if [ -n "$archs" ]; then
         if [ -n "$cross" ]; then
             _arch="$XBPS_TARGET_MACHINE"
         elif [ -n "$XBPS_ARCH" ]; then

From d4ba149f7c34c091985135dcb8d599e71a884773 Mon Sep 17 00:00:00 2001
From: Alex Lohr <alex.lohr@logmein.com>
Date: Wed, 20 Jan 2021 10:09:45 +0100
Subject: [PATCH 0185/3482] google-chrome: update to 88.0.4324.96

---
 srcpkgs/google-chrome/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/google-chrome/template b/srcpkgs/google-chrome/template
index c42eaa649c9e..b182d2ce65e4 100644
--- a/srcpkgs/google-chrome/template
+++ b/srcpkgs/google-chrome/template
@@ -1,5 +1,5 @@
 # Template file for 'google-chrome'
-_chromeVersion=87.0.4280.141
+_chromeVersion=88.0.4324.96
 _chromeRevision=1
 _channel=stable
 
@@ -22,7 +22,7 @@ _chromeUrl="${_baseUrl}/${_filename}"
 _licenseUrl="https://www.google.com/intl/en/chrome/terms/"
 
 distfiles="$_chromeUrl"
-checksum=b7edb7cd5c166bf3c0a1d245baa5924e242c3b81b97090468bec778f41f40373
+checksum=4c3fca6ba917db4635368c99df61cd811c5138daa1ad890d4dc4271dd0014124
 
 do_extract() {
 	mkdir -p ${DESTDIR}

From 8024e2936456bac1020a1f463adbfbc99eca863b Mon Sep 17 00:00:00 2001
From: John <me@johnnynator.dev>
Date: Sun, 9 Aug 2020 22:36:02 +0200
Subject: [PATCH 0186/3482] gcc: update to 10.2.1pre1.

Changed by q66:

we're now using an upstream snapshot from alpine; this should
allow us to get an assortment of regression fixes without having
to patch them in

also libssp fixes for musl, and typo fixes for libstdc++-devel
pkg function

also drop gccgo on 32-bit powerpc

Co-authored-by: q66 <daniel@octaforge.org>
---
 common/shlibs                                 |  8 +-
 srcpkgs/gcc/files/gccgo-musl.patch            | 40 +++++-----
 srcpkgs/gcc/files/libssp-musl.patch           | 29 ++++++-
 srcpkgs/gcc/patches/0010-ldbl128-config.patch | 76 -------------------
 srcpkgs/gcc/patches/invalid_tls_model.patch   | 26 -------
 srcpkgs/gcc/patches/musl-ada.patch            | 22 +++---
 srcpkgs/gcc/template                          | 55 ++++++++------
 7 files changed, 96 insertions(+), 160 deletions(-)
 delete mode 100644 srcpkgs/gcc/patches/0010-ldbl128-config.patch
 delete mode 100644 srcpkgs/gcc/patches/invalid_tls_model.patch

diff --git a/common/shlibs b/common/shlibs
index e98f088266bd..e030495fd63d 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -57,7 +57,7 @@ libcc1plugin.so.0 gcc-6.2.1_1
 libitm.so.1 libitm-4.7.3_1
 liblto_plugin.so.0 gcc-4.7.3_1
 libgcc_s.so.1 libgcc-4.4.0_1
-libgo.so.14 libgo-9.1.0_1
+libgo.so.16 libgo-10.2.0_1
 libmpx.so.2 libmpx-6.2.1_1
 libmpxwrappers.so.2 libmpx-6.2.1_1
 libperl.so.5.32 perl-5.32.0_1
@@ -863,8 +863,8 @@ libgdkmm-2.4.so.1 gtkmm2-2.24.0_1
 libgtkmm-2.4.so.1 gtkmm2-2.24.0_1
 libquadmath.so.0 libquadmath-4.4.0_1
 libgfortran.so.5 libgfortran-8.2.0_1
-libgnarl-9.so libada-9.1.0_1
-libgnat-9.so libada-9.1.0_1
+libgnarl-10.so libada-10.2.0_1
+libgnat-10.so libada-10.2.0_1
 libmozjs185.so.1.0 js-1.8.5_1
 libwebp.so.7 libwebp-0.6.0_1
 libwebpmux.so.3 libwebp-0.6.0_1
@@ -1732,7 +1732,7 @@ libextractor_common.so.1 libextractor-1.1_1
 libpano13.so.3 libpano13-2.9.19_1
 libubsan.so.1 libsanitizer-8.2.0_1
 libtsan.so.0 libsanitizer-6.3.0_1
-libasan.so.5 libsanitizer-8.2.0_1
+libasan.so.6 libsanitizer-10.2.0_1
 liblsan.so.0 libsanitizer-6.3.0_1
 libvtv.so.0 libvtv-6.3.0_1
 libatomic.so.1 libatomic-4.9.0_1
diff --git a/srcpkgs/gcc/files/gccgo-musl.patch b/srcpkgs/gcc/files/gccgo-musl.patch
index cc3ed7d17ae6..9b3f3af9b7fb 100644
--- a/srcpkgs/gcc/files/gccgo-musl.patch
+++ b/srcpkgs/gcc/files/gccgo-musl.patch
@@ -162,30 +162,30 @@ URL: https://code.foxkit.us/adelie/packages/tree/master/system/gcc
  fi
  
  if test "${GOOS}" = "aix"; then
---- libgo/runtime/go-signal.c
-+++ libgo/runtime/go-signal.c
-@@ -222,7 +222,11 @@ getSiginfo(siginfo_t *info, void *context __attribute__((unused)))
- #endif
- #ifdef __PPC__
-   #ifdef __linux__
+--- libgo/runtime/go-signal.c	2020-07-23 08:35:19.004402840 +0200
++++ -	2020-08-09 21:35:54.352886232 +0200
+@@ -224,7 +224,11 @@
+ #elif defined(__alpha__) && defined(__linux__)
+ 	ret.sigpc = ((ucontext_t*)(context))->uc_mcontext.sc_pc;
+ #elif defined(__PPC__) && defined(__linux__)
 -	ret.sigpc = ((ucontext_t*)(context))->uc_mcontext.regs->nip;
-+    #ifdef __PPC64__
-+	ret.sigpc = ((ucontext_t*)(context))->uc_mcontext.gp_regs[32];
-+    #else
-+	ret.sigpc = ((ucontext_t*)(context))->uc_mcontext.gregs[32];
-+    #endif
-   #endif
-   #ifdef _AIX
++	#ifdef __PPC64__
++		ret.sigpc = ((ucontext_t*)(context))->uc_mcontext.gp_regs[32];
++	#else
++		ret.sigpc = ((ucontext_t*)(context))->uc_mcontext.gregs[32];
++	#endif
+ #elif defined(__PPC__) && defined(_AIX)
  	ret.sigpc = ((ucontext_t*)(context))->uc_mcontext.jmp_context.iar;
-@@ -343,7 +343,7 @@ dumpregs(siginfo_t *info __attribute__((unused)), void *context __attribute__((u
-   #endif
- #endif
- 
--#if defined(__PPC__) && defined(__LITTLE_ENDIAN__)
-+#if defined(__PPC__) && defined(__LITTLE_ENDIAN__) && defined(__GLIBC__)
-   #ifdef __linux__
+ #elif defined(__aarch64__) && defined(__linux__)
+@@ -333,7 +337,7 @@
+ 		runtime_printf("sp  %X\n", m->sc_regs[30]);
+ 		runtime_printf("pc  %X\n", m->sc_pc);
+ 	  }
+-#elif defined(__PPC__) && defined(__LITTLE_ENDIAN__) && defined(__linux__)
++#elif defined(__PPC__) && defined(__LITTLE_ENDIAN__) && defined(__linux__) && defined(__GLIBC__)
  	  {
  		mcontext_t *m = &((ucontext_t*)(context))->uc_mcontext;
+ 		int i;
 --- libgo/sysinfo.c
 +++ libgo/sysinfo.c
 @@ -73,9 +73,6 @@
diff --git a/srcpkgs/gcc/files/libssp-musl.patch b/srcpkgs/gcc/files/libssp-musl.patch
index 8d47b442aa1a..e0b84f9acc97 100644
--- a/srcpkgs/gcc/files/libssp-musl.patch
+++ b/srcpkgs/gcc/files/libssp-musl.patch
@@ -4,9 +4,16 @@ Second part added to prevent gccgo from thinking it can -fsplit-stack on musl.
 
 --- gcc/gcc.c
 +++ gcc/gcc.c
-@@ -876,9 +876,8 @@
+@@ -874,10 +874,15 @@ proper position among the other output files.  */
+ #define LINK_GCC_C_SEQUENCE_SPEC "%G %{!nolibc:%L %G}"
  #endif
  
++#ifdef ENABLE_DEFAULT_SSP
++#define NO_SSP_SPEC "%{nostdlib|nodefaultlibs|ffreestanding:-fno-stack-protector} "
++#else
++#define NO_SSP_SPEC ""
++#endif
++
  #ifndef LINK_SSP_SPEC
  #ifdef TARGET_LIBC_PROVIDES_SSP
 -#define LINK_SSP_SPEC "%{fstack-protector|fstack-protector-all" \
@@ -15,6 +22,26 @@ Second part added to prevent gccgo from thinking it can -fsplit-stack on musl.
  #else
  #define LINK_SSP_SPEC "%{fstack-protector|fstack-protector-all" \
  		       "|fstack-protector-strong|fstack-protector-explicit" \
+@@ -1155,7 +1160,7 @@ static const char *cc1_options =
+  %{-version:--version}\
+  %{-help=*:--help=%*}\
+  %{!fsyntax-only:%{S:%W{o*}%{!o*:-o %b.s}}}\
+- %{fsyntax-only:-o %j} %{-param*}\
++ %{fsyntax-only:-o %j} %{-param*} " NO_SSP_SPEC "\
+  %{coverage:-fprofile-arcs -ftest-coverage}\
+  %{fprofile-arcs|fprofile-generate*|coverage:\
+    %{!fprofile-update=single:\
+--- gcc/params.opt
++++ gcc/params.opt
+@@ -853,7 +853,7 @@ Common Joined UInteger Var(param_ssa_name_def_chain_limit) Init(512) Param Optim
+ The maximum number of SSA_NAME assignments to follow in determining a value.
+ 
+ -param=ssp-buffer-size=
+-Common Joined UInteger Var(param_ssp_buffer_size) Init(8) IntegerRange(1, 65536) Param Optimization
++Common Joined UInteger Var(param_ssp_buffer_size) Init(4) IntegerRange(1, 65536) Param Optimization
+ The lower bound for a buffer to be considered for stack smashing protection.
+ 
+ -param=stack-clash-protection-guard-size=
 --- gcc/config/i386/gnu-user-common.h
 +++ gcc/config/i386/gnu-user-common.h
 @@ -64,9 +64,3 @@ along with GCC; see the file COPYING3.  If not see
diff --git a/srcpkgs/gcc/patches/0010-ldbl128-config.patch b/srcpkgs/gcc/patches/0010-ldbl128-config.patch
deleted file mode 100644
index 35869dd5d0fa..000000000000
--- a/srcpkgs/gcc/patches/0010-ldbl128-config.patch
+++ /dev/null
@@ -1,76 +0,0 @@
-From 47467f3ab0fb2f2fcede81060fe8bb339d0909eb Mon Sep 17 00:00:00 2001
-From: Szabolcs Nagy <nsz@port70.net>
-Date: Wed, 28 Feb 2018 00:54:05 +0000
-Subject: [PATCH 10/12] ldbl128 config
-
----
- gcc/configure    | 13 +++++++++++++
- gcc/configure.ac | 16 ++++++++++++++--
- 2 files changed, 27 insertions(+), 2 deletions(-)
-
-diff --git gcc/configure gcc/configure
-index 6121e163259..07ff8597d48 100755
---- gcc/configure
-+++ gcc/configure
-@@ -29309,6 +29309,15 @@ if test "${with_long_double_128+set}" = set; then :
-   withval=$with_long_double_128; gcc_cv_target_ldbl128="$with_long_double_128"
- else
- 
-+      case "$target" in
-+	s390*-*-linux-musl*)
-+	  gcc_cv_target_ldbl128=yes
-+	  ;;
-+	powerpc*-*-linux-musl*)
-+	  gcc_cv_target_ldbl128=no
-+	  ;;
-+	*)
-+
- if test $glibc_version_major -gt 2 \
-   || ( test $glibc_version_major -eq 2 && test $glibc_version_minor -ge 4 ); then :
-   gcc_cv_target_ldbl128=yes
-@@ -29320,6 +29329,10 @@ else
-       && gcc_cv_target_ldbl128=yes
- 
- fi
-+
-+	  ;;
-+      esac
-+
- fi
- 
-     ;;
-diff --git gcc/configure.ac gcc/configure.ac
-index b066cc609e1..6c15ed898c0 100644
---- gcc/configure.ac
-+++ gcc/configure.ac
-@@ -5971,13 +5971,25 @@ case "$target" in
-     AC_ARG_WITH(long-double-128,
-       [AS_HELP_STRING([--with-long-double-128],
- 		      [use 128-bit long double by default])],
--      gcc_cv_target_ldbl128="$with_long_double_128",
-+      gcc_cv_target_ldbl128="$with_long_double_128", [
-+      case "$target" in
-+	s390*-*-linux-musl*)
-+	  gcc_cv_target_ldbl128=yes
-+	  ;;
-+	powerpc*-*-linux-musl*)
-+	  gcc_cv_target_ldbl128=no
-+	  ;;
-+	*)]
-       [GCC_GLIBC_VERSION_GTE_IFELSE([2], [4], [gcc_cv_target_ldbl128=yes], [
-       [gcc_cv_target_ldbl128=no
-       grep '^[ 	]*#[ 	]*define[ 	][ 	]*__LONG_DOUBLE_MATH_OPTIONAL' \
-         $target_header_dir/bits/wordsize.h > /dev/null 2>&1 \
-       && gcc_cv_target_ldbl128=yes
--      ]])])
-+      ]])]
-+      [
-+	  ;;
-+      esac
-+      ])
-     ;;
- esac
- if test x$gcc_cv_target_ldbl128 = xyes; then
--- 
-2.17.1
-
diff --git a/srcpkgs/gcc/patches/invalid_tls_model.patch b/srcpkgs/gcc/patches/invalid_tls_model.patch
deleted file mode 100644
index 598cde5cb3ad..000000000000
--- a/srcpkgs/gcc/patches/invalid_tls_model.patch
+++ /dev/null
@@ -1,26 +0,0 @@
---- libgomp/configure.tgt	2018-11-08 18:13:04.000000000 +0100
-+++ libgomp/configure.tgt	2019-06-29 20:06:31.972950350 +0200
-@@ -10,23 +10,6 @@
- #  XCFLAGS		Add extra compile flags to use.
- #  XLDFLAGS		Add extra link flags to use.
- 
--# Optimize TLS usage by avoiding the overhead of dynamic allocation.
--if test $gcc_cv_have_tls = yes ; then
--  case "${target}" in
--
--    *-*-k*bsd*-gnu*)
--	;;
--
--    *-*-linux* | *-*-gnu*)
--	XCFLAGS="${XCFLAGS} -ftls-model=initial-exec -DUSING_INITIAL_EXEC_TLS"
--	;;
--
--    *-*-rtems*)
--	XCFLAGS="${XCFLAGS} -ftls-model=local-exec"
--	;;
--  esac
--fi
--
- # Since we require POSIX threads, assume a POSIX system by default.
- config_path="posix"
- 
diff --git a/srcpkgs/gcc/patches/musl-ada.patch b/srcpkgs/gcc/patches/musl-ada.patch
index 5e91b0476a38..61823684da5a 100644
--- a/srcpkgs/gcc/patches/musl-ada.patch
+++ b/srcpkgs/gcc/patches/musl-ada.patch
@@ -124,27 +124,27 @@ index 0d12f7e..a063b47 100644
  #endif
  
  #if defined (_WIN32)
---- gcc/ada/Makefile.rtl	2019-05-14 21:18:45.217455681 +0200
-+++ gcc/ada/Makefile.rtl	2019-05-14 21:21:30.686464218 +0200
-@@ -1521,7 +1521,7 @@
+--- gcc/ada/Makefile.rtl	2020-07-23 08:35:17.052381336 +0200
++++ -	2020-08-09 19:38:24.230351406 +0200
+@@ -1533,7 +1533,7 @@
+   s-intman.adb<libgnarl/s-intman__posix.adb \
    s-tpopsp.adb<libgnarl/s-tpopsp__tls.adb \
    $(TRASYM_DWARF_UNIX_PAIRS) \
-   g-sercom.adb<libgnat/g-sercom__linux.adb \
 -  s-tsmona.adb<libgnat/s-tsmona__linux.adb \
 +  s-tsmona.adb<libgnat/s-tsmona.adb \
    a-exetim.adb<libgnarl/a-exetim__posix.adb \
    a-exetim.ads<libgnarl/a-exetim__default.ads \
    s-linux.ads<libgnarl/s-linux.ads \
-@@ -2073,7 +2073,7 @@
+@@ -2083,7 +2083,7 @@
+   s-osinte.adb<libgnarl/s-osinte__posix.adb \
    s-tpopsp.adb<libgnarl/s-tpopsp__tls.adb \
-   g-sercom.adb<libgnat/g-sercom__linux.adb \
    $(TRASYM_DWARF_UNIX_PAIRS) \
 -  s-tsmona.adb<libgnat/s-tsmona__linux.adb \
 +  s-tsmona.adb<libgnat/s-tsmona.adb \
    $(ATOMICS_TARGET_PAIRS) \
    $(ATOMICS_BUILTINS_TARGET_PAIRS) \
    system.ads<libgnat/system-linux-ppc.ads
-@@ -2102,7 +2102,7 @@
+@@ -2112,7 +2112,7 @@
  endif
  
  # ARM linux, GNU eabi
@@ -153,18 +153,18 @@ index 0d12f7e..a063b47 100644
    LIBGNAT_TARGET_PAIRS = \
    a-intnam.ads<libgnarl/a-intnam__linux.ads \
    s-inmaop.adb<libgnarl/s-inmaop__posix.adb \
-@@ -2297,7 +2297,7 @@
+@@ -2305,7 +2305,7 @@
+   s-tpopsp.adb<libgnarl/s-tpopsp__tls.adb \
    s-taspri.ads<libgnarl/s-taspri__posix-noaltstack.ads \
-   g-sercom.adb<libgnat/g-sercom__linux.adb \
    $(TRASYM_DWARF_UNIX_PAIRS) \
 -  s-tsmona.adb<libgnat/s-tsmona__linux.adb \
 +  s-tsmona.adb<libgnat/s-tsmona.adb \
    $(ATOMICS_TARGET_PAIRS) \
    $(ATOMICS_BUILTINS_TARGET_PAIRS) \
    system.ads<libgnat/system-linux-ia64.ads
-@@ -2394,7 +2394,7 @@
+@@ -2401,7 +2401,7 @@
+   s-tpopsp.adb<libgnarl/s-tpopsp__tls.adb \
    s-taspri.ads<libgnarl/s-taspri__posix.ads \
-   g-sercom.adb<libgnat/g-sercom__linux.adb \
    $(TRASYM_DWARF_UNIX_PAIRS) \
 -  s-tsmona.adb<libgnat/s-tsmona__linux.adb \
 +  s-tsmona.adb<libgnat/s-tsmona.adb \
diff --git a/srcpkgs/gcc/template b/srcpkgs/gcc/template
index 4ebca58e89ed..f7fa99383b13 100644
--- a/srcpkgs/gcc/template
+++ b/srcpkgs/gcc/template
@@ -1,28 +1,33 @@
 # Template file for 'gcc'
-_majorver=9
-_minorver=${_majorver}.3
+_majorver=10
+_minorver=${_majorver}.2
+_patchver=${_minorver}.1
 _gmp_version=6.2.0
-_mpfr_version=4.0.2
+_mpfr_version=4.1.0
 _mpc_version=1.1.0
 _isl_version=0.21
 
 pkgname=gcc
-version=${_minorver}.0
-revision=9
+# we are using a 10-stable git snapshot alpine is using in order
+# to get regression fixes not yet incorporate into a stable release
+# it should be possible to switch back to stable with 10.3 or 11
+version=${_patchver}pre1
+wrksrc=gcc-${version/pre/_pre}
+revision=1
 short_desc="GNU Compiler Collection"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 homepage="http://gcc.gnu.org"
 license="GFDL-1.2-or-later, GPL-3.0-or-later, LGPL-2.1-or-later"
 # *-musl builders have issues fetching https://ftp.gnu.org/gnu/mpc/mpc-1.1.0.tar.gz
 distfiles="
- ${GNU_SITE}/gcc/gcc-${version}/gcc-${version}.tar.xz
+ https://dev.alpinelinux.org/~nenolod/gcc-${version/pre/_pre}.tar.xz
  https://gmplib.org/download/gmp/gmp-${_gmp_version}.tar.xz
- https://www.mpfr.org/mpfr-${_mpfr_version}/mpfr-${_mpfr_version}.tar.xz
+ ${GNU_SITE}/mpfr/mpfr-${_mpfr_version}.tar.xz
  ${GNU_SITE}/mpc/mpc-${_mpc_version}.tar.gz
  http://isl.gforge.inria.fr/isl-${_isl_version}.tar.bz2"
-checksum="71e197867611f6054aa1119b13a0c0abac12834765fe2d81f35ac57f84f742d1
+checksum="772cfd5d30eb9cc5a996fec9ba8cdcb45d37df1c9b5770610103b814b732c590
  258e6cd51b3fbdfc185c716d55f82c08aff57df0c6fbd143cf6ed561267a1526
- 1d3be708604eae0e42d578ba93b390c2a145f17743a744d8f3f8c2ad5855a38a
+ 0c98a3f1732ff6ca4ea690552079da9c597872d30e96ec28414ee23c95558a7f
  6985c538143c1208dcb1ac42cedad6ff52e267b47e5f970183a3e75125b43c2e
  d18ca11f8ad1a39ab6d03d3dcb3365ab416720fcb65b42d69f34f51bf0a0e859"
 
@@ -33,10 +38,12 @@ replaces="gcc-gcj<7.2.0 gcc-gcj-jdk-compat<7.2.0 libmpx>=0 libmpx-devel>=0"
 
 _have_gccgo=yes
 
-# MIPS does not have libucontext yet
-# no support for ppcle in gccgo (missing GOARCH and stuff)
+# MIPS is untested and does not have go in crosstoolchains
+# 32-bit PowerPC seems weirdly broken since the 10.x release
+# 32-bit little endian PowerPC has no support at all (no GOARCH)
 case "$XBPS_TARGET_MACHINE" in
-	mips*-musl|ppcle*) _have_gccgo=no ;;
+	ppc64*) ;;
+	mips*-musl|ppc*) _have_gccgo=no ;;
 esac
 
 if [ "$CHROOT_READY" ]; then
@@ -171,6 +178,10 @@ post_extract() {
 pre_configure() {
 	# _FORTIFY_SOURCE needs an optimization level.
 	sed -i "/ac_cpp=/s/\$CPPFLAGS/\$CPPFLAGS -O2/" {gcc,libiberty}/configure
+
+	# Do not run fixincludes
+	sed -i 's@\./fixinc\.sh@-c true@' gcc/Makefile.in
+
 	case "$XBPS_TARGET_MACHINE" in
 		*-musl)
 			patch -p0 -i ${FILESDIR}/libgnarl-musl.patch
@@ -331,16 +342,16 @@ do_install() {
 
 	# Make version a symlink of major version to make all versions
 	# from the same series work automagically.
-	mv ${DESTDIR}/usr/lib/gcc/${_triplet}/${version} \
+	mv ${DESTDIR}/usr/lib/gcc/${_triplet}/${_patchver} \
 		${DESTDIR}/usr/lib/gcc/${_triplet}/${_minorver}
 	ln -sfr ${DESTDIR}/usr/lib/gcc/${_triplet}/${_minorver} \
-		${DESTDIR}/usr/lib/gcc/${_triplet}/${version}
+		${DESTDIR}/usr/lib/gcc/${_triplet}/${_patchver}
 
 	# Ditto for c++ headers.
-	mv ${DESTDIR}/usr/include/c++/${version} \
+	mv ${DESTDIR}/usr/include/c++/${_patchver} \
 		${DESTDIR}/usr/include/c++/${_minorver}
 	ln -sfr ${DESTDIR}/usr/include/c++/${_minorver} \
-		${DESTDIR}/usr/include/c++/${version}
+		${DESTDIR}/usr/include/c++/${_patchver}
 
 	# cc symlink
 	ln -sfr ${DESTDIR}/usr/bin/gcc ${DESTDIR}/usr/bin/cc
@@ -349,7 +360,7 @@ do_install() {
 
 	# lto plugin symlink
 	vmkdir usr/lib/bfd-plugins
-	ln -sfr ${DESTDIR}/usr/lib/gcc/${_triplet}/${version}/liblto_plugin.so \
+	ln -sfr ${DESTDIR}/usr/lib/gcc/${_triplet}/${_patchver}/liblto_plugin.so \
 		${DESTDIR}/usr/lib/bfd-plugins
 
 	# Remove "fixed" header
@@ -364,8 +375,8 @@ do_install() {
 	rm -f ${DESTDIR}/usr/lib/*.py
 
 	# Remove more python stuff.
-	if [ -d ${DESTDIR}/usr/share/gcc-${version}/python ]; then
-		rm -rf ${DESTDIR}/usr/share/gcc-${version}/python
+	if [ -d ${DESTDIR}/usr/share/gcc-${_patchver}/python ]; then
+		rm -rf ${DESTDIR}/usr/share/gcc-${_patchver}/python
 	fi
 
 	# Install c89 and c99 wrappers and its manpages, from NetBSD.
@@ -438,7 +449,7 @@ gcc-fortran_package() {
 		if [ "$CROSS_BUILD" ]; then
 			# A number of OMP modules are not built when cross
 			# compiling gcc. Copy them from the cross compiler.
-			local src="/usr/lib/gcc/${_triplet}/${version}/finclude"
+			local src="/usr/lib/gcc/${_triplet}/${_patchver}/finclude"
 			local dst="usr/lib/gcc/${_triplet}/${_minorver}/finclude"
 			for f in omp_lib.f90 omp_lib.h omp_lib.mod omp_lib_kinds.mod \
 				openacc.f90 openacc.mod openacc_kinds.mod openacc_lib.h; do
@@ -697,8 +708,8 @@ libstdc++-devel_package() {
 	depends="libstdc++>=${_minorver}"
 	short_desc+=" - Standard C++ Library - development files"
 	pkg_install() {
-		vmove "usr/lib/libstdc++.*a"
-		vmove "usr/lib/libsupc++.*"
+		vmove "usr/lib/libstdc++*.a"
+		vmove "usr/lib/libsupc++.a"
 		vmove usr/include/c++
 	}
 }

From 761b3788546b141f818706210a9ce5f6042f5414 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 17 Jan 2021 15:46:26 +0100
Subject: [PATCH 0187/3482] build-style/go: drop 32-bit ppc from gccgo

this will always give us trouble, and probably is not worth
supporting
---
 common/environment/build-style/go.sh | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/common/environment/build-style/go.sh b/common/environment/build-style/go.sh
index f3b4514d4578..337b5279d0eb 100644
--- a/common/environment/build-style/go.sh
+++ b/common/environment/build-style/go.sh
@@ -9,8 +9,7 @@ else
 	# gccgo compiler
 	if [ -z "$archs" ]; then
 		# we have support for these in our gcc
-		# ppcle is missing, and mips doesn't have go in cross yet
-		archs="aarch64* armv[567]* i686* x86_64* ppc64* ppc ppc-musl"
+		archs="aarch64* armv[567]* i686* x86_64* ppc64*"
 	fi
 	if [ "$CROSS_BUILD" ]; then
 		# target compiler to use; otherwise it'll just call gccgo

From 6ae6e7f02680b10f0b56e82ac2dabd0a9c466548 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 17 Jan 2021 15:57:14 +0100
Subject: [PATCH 0188/3482] gcc: nocross for now

---
 srcpkgs/gcc/template | 1 +
 1 file changed, 1 insertion(+)

diff --git a/srcpkgs/gcc/template b/srcpkgs/gcc/template
index f7fa99383b13..183451d352df 100644
--- a/srcpkgs/gcc/template
+++ b/srcpkgs/gcc/template
@@ -35,6 +35,7 @@ nopie=yes
 lib32disabled=yes
 bootstrap=yes
 replaces="gcc-gcj<7.2.0 gcc-gcj-jdk-compat<7.2.0 libmpx>=0 libmpx-devel>=0"
+nocross=yes
 
 _have_gccgo=yes
 

From 2d80cf4c4987308afaa1a197115e38b86ee7e342 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 17 Jan 2021 16:00:28 +0100
Subject: [PATCH 0189/3482] build-style/void-cross: enable patching binutils

---
 common/build-style/void-cross.sh | 11 +++++------
 1 file changed, 5 insertions(+), 6 deletions(-)

diff --git a/common/build-style/void-cross.sh b/common/build-style/void-cross.sh
index e923c8460254..e1a808369e47 100644
--- a/common/build-style/void-cross.sh
+++ b/common/build-style/void-cross.sh
@@ -41,12 +41,11 @@ _void_cross_build_binutils() {
 	msg_normal "Patching binutils for ${cross_triplet}\n"
 
 	cd ${wrksrc}/binutils-${ver}
-	# enable when crosstoolchains are updated to latest binutils
-	#if [ -d "${XBPS_SRCPKGDIR}/binutils/patches" ]; then
-	#	for f in ${XBPS_SRCPKGDIR}/binutils/patches/*.patch; do
-	#		_void_cross_apply_patch -p1 "$f"
-	#	done
-	#fi
+	if [ -d "${XBPS_SRCPKGDIR}/binutils/patches" ]; then
+		for f in ${XBPS_SRCPKGDIR}/binutils/patches/*.patch; do
+			_void_cross_apply_patch -p1 "$f"
+		done
+	fi
 	cd ..
 
 	msg_normal "Building binutils for ${cross_triplet}\n"

From 0caccad4ccbb1d79ba16f9d056028a79e703d680 Mon Sep 17 00:00:00 2001
From: John <me@johnnynator.dev>
Date: Tue, 5 Jan 2021 21:46:22 +0100
Subject: [PATCH 0190/3482] build-style/void-cross: fix build with 5.10 kernel
 headers

---
 common/build-style/void-cross.sh | 15 ++++++---------
 1 file changed, 6 insertions(+), 9 deletions(-)

diff --git a/common/build-style/void-cross.sh b/common/build-style/void-cross.sh
index e1a808369e47..a0783559b239 100644
--- a/common/build-style/void-cross.sh
+++ b/common/build-style/void-cross.sh
@@ -174,10 +174,11 @@ _void_cross_build_kernel_headers() {
 
 	cd linux-${ver}
 
-	make ARCH=$cross_linux_arch headers_check
-	make ARCH=$cross_linux_arch \
-		INSTALL_HDR_PATH=${wrksrc}/build_root/usr/${cross_triplet}/usr \
-		headers_install
+	make ARCH=${cross_linux_arch} headers
+	find usr/include -name '.*' -delete
+	rm usr/include/Makefile
+	rm -r usr/include/drm
+	cp -a usr/include ${wrksrc}/build_root/usr/${cross_triplet}/usr
 
 	touch ${wrksrc}/.linux_headers_done
 }
@@ -533,11 +534,7 @@ do_install() {
 
 	# Install Linux headers
 	cd ${wrksrc}/linux-$(cat ${wrksrc}/.linux_version)
-	make ARCH=${cross_linux_arch} \
-		INSTALL_HDR_PATH=${DESTDIR}/${sysroot}/usr headers_install
-	rm -f $(find ${DESTDIR}/${sysroot}/usr/include \
-		-name .install -or -name ..install.cmd)
-	rm -rf ${DESTDIR}/${sysroot}/usr/include/drm
+	cp -a usr/include ${DESTDIR}/${sysroot}/usr
 
 	# Install binutils
 	cd ${wrksrc}/binutils_build

From a40f4cd82b8418fd718846ac69078347dabda5b6 Mon Sep 17 00:00:00 2001
From: John <me@johnnynator.dev>
Date: Fri, 1 Jan 2021 22:13:51 +0100
Subject: [PATCH 0191/3482] build-style/void-cross: disable usage of fixincl,
 it breaks glibc and does nothing for musl

---
 common/build-style/void-cross.sh | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/common/build-style/void-cross.sh b/common/build-style/void-cross.sh
index a0783559b239..5408bd9ef205 100644
--- a/common/build-style/void-cross.sh
+++ b/common/build-style/void-cross.sh
@@ -91,6 +91,10 @@ _void_cross_build_bootstrap_gcc() {
 	msg_normal "Patching GCC for ${cross_triplet}\n"
 
 	cd ${wrksrc}/gcc-${ver}
+
+	# Do not run fixincludes
+	sed -i 's@./fixinc.sh@-c true@' Makefile.in
+
 	for f in ${XBPS_SRCPKGDIR}/gcc/patches/*.patch; do
 		_void_cross_apply_patch -p0 "$f"
 	done

From 599b7fef670cc9700edd2a8ffc7983c0c79672ee Mon Sep 17 00:00:00 2001
From: John <me@johnnynator.dev>
Date: Fri, 1 Jan 2021 17:29:22 +0100
Subject: [PATCH 0192/3482] build-style/void-cross: remove
 enable-obsolete-{rpc,nsl} from glibc

also enable glibc cross toolchains on musl
---
 common/build-style/void-cross.sh             | 4 ----
 common/environment/build-style/void-cross.sh | 7 -------
 2 files changed, 11 deletions(-)

diff --git a/common/build-style/void-cross.sh b/common/build-style/void-cross.sh
index 5408bd9ef205..10c89e681c9d 100644
--- a/common/build-style/void-cross.sh
+++ b/common/build-style/void-cross.sh
@@ -220,8 +220,6 @@ _void_cross_build_glibc_headers() {
 		--host=${tgt} \
 		--with-headers=${wrksrc}/build_root/usr/${tgt}/usr/include \
 		--config-cache \
-		--enable-obsolete-rpc \
-		--enable-obsolete-nsl \
 		--enable-kernel=2.6.27 \
 		${cross_glibc_configure_args}
 
@@ -262,8 +260,6 @@ _void_cross_build_glibc() {
 		--host=${tgt} \
 		--with-headers=${wrksrc}/build_root/usr/${tgt}/usr/include \
 		--config-cache \
-		--enable-obsolete-rpc \
-		--enable-obsolete-nsl \
 		--disable-profile \
 		--disable-werror \
 		--enable-kernel=2.6.27 \
diff --git a/common/environment/build-style/void-cross.sh b/common/environment/build-style/void-cross.sh
index 08d1585e95c3..62ce9eaa2e4a 100644
--- a/common/environment/build-style/void-cross.sh
+++ b/common/environment/build-style/void-cross.sh
@@ -4,10 +4,3 @@ create_wrksrc=yes
 
 nostrip_files+=" libcaf_single.a libgcc.a libgcov.a libgcc_eh.a
  libgnarl_pic.a libgnarl.a libgnat_pic.a libgnat.a libgmem.a"
-
-# glibc crosstoolchains not available on musl hosts yet
-if [ -z "$archs" -a "${cross_triplet/-musl}" = "${cross_triplet}" ]; then
-	if [ "$XBPS_TARGET_LIBC" != "glibc" ]; then
-		archs="~*-musl"
-	fi
-fi

From dd50c1905d5c1839f870b01a96dcc0360a0198bf Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 17 Jan 2021 16:04:01 +0100
Subject: [PATCH 0193/3482] build-style/void-cross: fix for newer libucontext +
 autoguess arch

---
 common/build-style/void-cross.sh | 23 +++++++++++++++++++++--
 1 file changed, 21 insertions(+), 2 deletions(-)

diff --git a/common/build-style/void-cross.sh b/common/build-style/void-cross.sh
index 10c89e681c9d..6d57c288676d 100644
--- a/common/build-style/void-cross.sh
+++ b/common/build-style/void-cross.sh
@@ -312,14 +312,33 @@ _void_cross_build_libucontext() {
 	[ -f ${wrksrc}/.libucontext_build_done ] && return 0
 
 	local ver=$1
+	local arch incpath
 
 	msg_normal "Building libucontext for ${cross_triplet}\n"
 
+	case "$cross_triplet" in
+		x86_64*) arch=x86_64 ;;
+		i686*) arch=x86 ;;
+		powerpc64*) arch=ppc64 ;;
+		powerpc*) arch=ppc ;;
+		mips*64*) arch=mips64 ;;
+		mips*) arch=mips ;;
+		aarch64*) arch=aarch64 ;;
+		arm*) arch=arm ;;
+		riscv64*) arch=riscv64 ;;
+		s390x*) arch=s390x ;;
+		*) msg_error "Unknown libucontext arch for ${cross_triplet}\n" ;;
+	esac
+
 	cd ${wrksrc}/libucontext-${ver}
 	# a terrible hack but seems to work for now
+	# we build a static-only library to prevent linking to a runtime
+	# since it's tiny it can be linked into libgo and we don't have
+	# to keep it around (which would possibly conflict with crossdeps)
+	incpath="${wrksrc}/build_root/usr/${cross_triplet}/usr/include"
 	CC="${cross_triplet}-gcc" AS="${cross_triplet}-as" AR="${cross_triplet}-ar" \
-	CPPFLAGS="-pipe ${cross_musl_cflags} -g0 -Os -nostdinc -isystem ${wrksrc}/build_root/usr/${cross_triplet}/usr/include" \
-	make ARCH=${cross_libucontext_arch} libucontext.a
+	make ARCH=$arch libucontext.a \
+		CFLAGS="${cross_musl_cflags} -g0 -nostdinc -isystem ${incpath}"
 
 	cp libucontext.a ${wrksrc}/build_root/usr/${cross_triplet}/usr/lib
 

From 76f3a1d0b7b4bfe1b7e032ca25cdb4c7333fbdd4 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 17 Jan 2021 16:07:24 +0100
Subject: [PATCH 0194/3482] build-style/void-cross: remove linux and
 libucontext arch vars

---
 Manual.md                        |  4 +---
 common/build-style/void-cross.sh | 28 ++++++++++++++--------------
 2 files changed, 15 insertions(+), 17 deletions(-)

diff --git a/Manual.md b/Manual.md
index 9c0d094c0fef..ed73ec338fa5 100644
--- a/Manual.md
+++ b/Manual.md
@@ -963,9 +963,7 @@ the out of source build by `meson_builddir`
 
 - `void-cross` For cross-toolchain packages used to build Void systems. You will need to
 specify `cross_triplet` (corresponds to the target triplet specified in the cross profile
-for the target arch), `cross_linux_arch` (the architecture name in the Linux kernel source)
-and when building Go support for musl targets, also `cross_libucontext_arch` (see `libucontext`
-for available ones). Optionally, `cross_gcc_skip_go` can be specified. Individual subproject
+for the target arch). Optionally, `cross_gcc_skip_go` can be specified. Individual subproject
 configure arguments can be specified via `cross_*_configure_args` where `*` is `binutils`,
 `gcc_bootstrap` (early gcc), `gcc` (final gcc), `glibc` (or `musl`), `configure_args` is
 additionally passed to both early and final `gcc`. You can also specify custom `CFLAGS`
diff --git a/common/build-style/void-cross.sh b/common/build-style/void-cross.sh
index 6d57c288676d..2f6e6370762d 100644
--- a/common/build-style/void-cross.sh
+++ b/common/build-style/void-cross.sh
@@ -4,8 +4,6 @@
 # Mandatory variables:
 #
 # - cross_triplet - the target triplet (e.g. aarch64-linux-gnu)
-# - cross_linux_arch - the source ARCH of the kernel (e.g. arm64)
-# - cross_libucontext_arch - only on musl without cross_gcc_skip_go
 #
 # Optional variables:
 #
@@ -165,6 +163,7 @@ _void_cross_build_kernel_headers() {
 	[ -f ${wrksrc}/.linux_headers_done ] && return 0
 
 	local ver=$1
+	local arch
 
 	msg_normal "Patching Linux headers for ${cross_triplet}\n"
 
@@ -178,7 +177,18 @@ _void_cross_build_kernel_headers() {
 
 	cd linux-${ver}
 
-	make ARCH=${cross_linux_arch} headers
+	case "$cross_triplet" in
+		x86_64*|i686*) arch=x86 ;;
+		powerpc*) arch=powerpc ;;
+		mips*) arch=mips ;;
+		aarch64*) arch=arm64 ;;
+		arm*) arch=arm ;;
+		riscv*) arch=riscv ;;
+		s390*) arch=s390 ;;
+		*) msg_error "Unknown Linux arch for ${cross_triplet}\n" ;;
+	esac
+
+	make ARCH=${arch} headers
 	find usr/include -name '.*' -delete
 	rm usr/include/Makefile
 	rm -r usr/include/drm
@@ -421,13 +431,6 @@ _void_cross_build_gcc() {
 	touch ${wrksrc}/.gcc_build_done
 }
 
-_void_cross_check_var() {
-	local var="cross_${1}"
-	if [ -z "${!var}" ]; then
-		msg_error "cross_${1} not defined in template"
-	fi
-}
-
 _void_cross_test_ver() {
 	local proj=$1
 	local noerr=$2
@@ -470,14 +473,11 @@ do_build() {
 		libc_ver=$(cat .musl_version)
 		if [ -z "$cross_gcc_skip_go" ]; then
 			_void_cross_test_ver libucontext
-			_void_cross_check_var libucontext_arch
 			libucontext_ver=$(cat .libucontext_version)
 		fi
 	fi
 
-	# Verify triplet
-	_void_cross_check_var triplet
-	_void_cross_check_var linux_arch
+	[ "${cross_triplet}" ] || msg_error "cross_triplet not defined in template\n"
 
 	local sysroot="/usr/${cross_triplet}"
 

From 3cee024b0d9ad93ff954cc072425fadf22b48d1c Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 17 Jan 2021 17:28:29 +0100
Subject: [PATCH 0195/3482] build-style/void-cross: add minor-versioned gcc
 sylinks

---
 common/build-style/void-cross.sh | 31 +++++++++++++++++++++++--------
 1 file changed, 23 insertions(+), 8 deletions(-)

diff --git a/common/build-style/void-cross.sh b/common/build-style/void-cross.sh
index 2f6e6370762d..5ce5a0d43603 100644
--- a/common/build-style/void-cross.sh
+++ b/common/build-style/void-cross.sh
@@ -550,6 +550,7 @@ do_install() {
 	ln -sf usr/lib ${DESTDIR}/${sysroot}/lib
 	ln -sf usr/lib ${DESTDIR}/${sysroot}/lib${ws}
 	ln -sf lib ${DESTDIR}/${sysroot}/usr/lib${ws}
+	ln -sf usr/include ${DESTDIR}/${sysroot}/include
 
 	# Install Linux headers
 	cd ${wrksrc}/linux-$(cat ${wrksrc}/.linux_version)
@@ -566,6 +567,11 @@ do_install() {
 	# Move libcc1.so* to the sysroot
 	mv ${DESTDIR}/usr/lib/libcc1.so* ${DESTDIR}/${sysroot}/usr/lib
 
+	local gcc_ver=$(cat ${wrksrc}/.gcc_version)
+	local gcc_patch=${gcc_ver/_*}
+	local gcc_minor=${gcc_patch%.*}
+	local gcc_major=${gcc_minor%.*}
+
 	if [ -f ${wrksrc}/.musl_version ]; then
 		# Install musl
 		cd ${wrksrc}/musl_build
@@ -584,20 +590,29 @@ do_install() {
 		make install_root=${DESTDIR}/${sysroot} install install-headers
 
 		# Remove bad header
-		rm -f ${DESTDIR}/usr/lib/gcc/${cross__triplet}/*/include-fixed/bits/statx.h
+		rm -f ${DESTDIR}/usr/lib/gcc/${cross_triplet}/${gcc_patch}/include-fixed/bits/statx.h
 	fi
 
-	local gcc_ver=$(cat ${wrksrc}/.gcc_version)
+	# minor-versioned symlinks
+	mv ${DESTDIR}/usr/lib/gcc/${cross_triplet}/${gcc_patch} \
+		${DESTDIR}/usr/lib/gcc/${cross_triplet}/${gcc_minor}
+	ln -sfr ${DESTDIR}/usr/lib/gcc/${cross_triplet}/${gcc_minor} \
+		${DESTDIR}/usr/lib/gcc/${cross_triplet}/${gcc_patch}
+
+	# ditto for c++ headers
+	mv ${DESTDIR}/${sysroot}/usr/include/c++/${gcc_patch} \
+		${DESTDIR}/${sysroot}/usr/include/c++/${gcc_minor}
+	ln -sfr ${DESTDIR}/${sysroot}/usr/include/c++/${gcc_minor} \
+		${DESTDIR}/${sysroot}/usr/include/c++/${gcc_patch}
 
 	# Symlinks for gnarl and gnat shared libraries
-	local majorver=${gcc_ver%.*.*}
-	local adalib=usr/lib/gcc/${_triplet}/${gcc_ver}/adalib
-	mv ${DESTDIR}/${adalib}/libgnarl-${majorver}.so \
+	local adalib=usr/lib/gcc/${_triplet}/${gcc_patch}/adalib
+	mv ${DESTDIR}/${adalib}/libgnarl-${gcc_major}.so \
 		${DESTDIR}/${sysroot}/usr/lib
-	mv ${DESTDIR}/${adalib}/libgnat-${majorver}.so \
+	mv ${DESTDIR}/${adalib}/libgnat-${gcc_major}.so \
 		${DESTDIR}/${sysroot}/usr/lib
-	ln -sf libgnarl-${majorver}.so ${DESTDIR}/${sysroot}/usr/lib/libgnarl.so
-	ln -sf libgnat-${majorver}.so ${DESTDIR}/${sysroot}/usr/lib/libgnat.so
+	ln -sf libgnarl-${gcc_major}.so ${DESTDIR}/${sysroot}/usr/lib/libgnarl.so
+	ln -sf libgnat-${gcc_major}.so ${DESTDIR}/${sysroot}/usr/lib/libgnat.so
 	rm -vf ${DESTDIR}/${adalib}/libgna{rl,t}.so
 
 	# Remove unnecessary libatomic which is only built for gccgo

From 886a5e77ec13b418cf7f55b977f4bfd8cb12936a Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 17 Jan 2021 16:42:04 +0100
Subject: [PATCH 0196/3482] cross-aarch64-linux-gnu: update to gcc 10.2.1pre1

---
 srcpkgs/cross-aarch64-linux-gnu/template | 32 +++++++++++++-----------
 1 file changed, 18 insertions(+), 14 deletions(-)

diff --git a/srcpkgs/cross-aarch64-linux-gnu/template b/srcpkgs/cross-aarch64-linux-gnu/template
index bd1625c09fcb..3d43f58afcbe 100644
--- a/srcpkgs/cross-aarch64-linux-gnu/template
+++ b/srcpkgs/cross-aarch64-linux-gnu/template
@@ -1,15 +1,15 @@
 # Template file for 'cross-aarch64-linux-gnu'
 _triplet=aarch64-linux-gnu
-_binutils_version=2.32
-_gcc_version=9.3.0
-_glibc_version=2.30
-_linux_version=4.19
+_binutils_version=2.35.1
+_gcc_version=10.2.1_pre1
+_glibc_version=2.32
+_linux_version=5.10.4
 pkgname=cross-${_triplet}
-version=0.33
-revision=3
+version=0.34
+revision=1
 build_style=void-cross
 configure_args="--with-arch=armv8-a"
-hostmakedepends="tar gcc-objc gcc-go flex perl python3"
+hostmakedepends="texinfo tar gcc-objc gcc-go flex perl python3"
 makedepends="isl15-devel libmpc-devel zlib-devel gmp-devel mpfr-devel"
 depends="${pkgname}-libc-${version}_${revision}"
 short_desc="Void cross toolchain for ${_triplet}"
@@ -18,23 +18,27 @@ license="GPL-2.0-or-later, GPL-3.0-or-later, LGPL-2.1-or-later"
 homepage="https://www.voidlinux.org/"
 distfiles="
  ${GNU_SITE}/binutils/binutils-${_binutils_version}.tar.xz
- ${GNU_SITE}/gcc/gcc-${_gcc_version}/gcc-${_gcc_version}.tar.xz
+ https://dev.alpinelinux.org/~nenolod/gcc-${_gcc_version}.tar.xz
  ${GNU_SITE}/glibc/glibc-${_glibc_version}.tar.xz
- ${KERNEL_SITE}/kernel/v4.x/linux-${_linux_version}.tar.xz"
-checksum="0ab6c55dd86a92ed561972ba15b9b70a8b9f75557f896446c82e8b36e473ee04
- 71e197867611f6054aa1119b13a0c0abac12834765fe2d81f35ac57f84f742d1
- e2c4114e569afbe7edbc29131a43be833850ab9a459d81beb2588016d2bbb8af
- 0c68f5655528aed4f99dae71a5b259edc93239fa899e2df79c055275c21749a1"
+ ${KERNEL_SITE}/kernel/v5.x/linux-${_linux_version}.tar.xz"
+checksum="3ced91db9bf01182b7e420eab68039f2083aed0a214c0424e257eae3ddee8607
+ 772cfd5d30eb9cc5a996fec9ba8cdcb45d37df1c9b5770610103b814b732c590
+ 1627ea54f5a1a8467032563393e0901077626dc66f37f10ee6363bb722222836
+ 904e396c26e9992a16cd1cc989460171536bed7739bf36049f6eb020ee5d56ec"
 nocross=yes
 
 cross_triplet=${_triplet}
-cross_linux_arch=arm64
 cross_glibc_cflags="-O2 -march=armv8-a"
 
 if [ "$XBPS_TARGET_MACHINE" = "aarch64" ]; then
 	broken="Can't build crosstoolchain to itself"
 fi
 
+case "$XBPS_MACHINE" in
+	ppc64*) ;;
+	ppc*|mips*) broken="no gccgo support";;
+esac
+
 cross-aarch64-linux-gnu-libc_package() {
 	short_desc+=" - glibc files"
 	nostrip=yes

From 25bf559096a74e019a9f14374cd0fb2b0a2b3089 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 17 Jan 2021 16:42:04 +0100
Subject: [PATCH 0197/3482] cross-aarch64-linux-musl: update to gcc 10.2.1pre1

---
 srcpkgs/cross-aarch64-linux-musl/template | 37 ++++++++++++-----------
 1 file changed, 20 insertions(+), 17 deletions(-)

diff --git a/srcpkgs/cross-aarch64-linux-musl/template b/srcpkgs/cross-aarch64-linux-musl/template
index 4a85364ee1f4..e5c31cb6583e 100644
--- a/srcpkgs/cross-aarch64-linux-musl/template
+++ b/srcpkgs/cross-aarch64-linux-musl/template
@@ -1,16 +1,16 @@
 # Template file for 'cross-aarch64-linux-musl'
 _triplet=aarch64-linux-musl
-_binutils_version=2.32
-_gcc_version=9.3.0
+_binutils_version=2.35.1
+_gcc_version=10.2.1_pre1
 _musl_version=1.1.24
-_linux_version=4.19
-_libucontext_version=0.9.0
+_linux_version=5.10.4
+_libucontext_version=1.0
 pkgname=cross-${_triplet}
-version=0.33
-revision=4
+version=0.34
+revision=1
 build_style=void-cross
 configure_args="--with-arch=armv8-a"
-hostmakedepends="tar gcc-objc gcc-go flex perl python3"
+hostmakedepends="texinfo tar gcc-objc gcc-go flex perl python3"
 makedepends="isl15-devel libmpc-devel zlib-devel gmp-devel mpfr-devel"
 depends="${pkgname}-libc-${version}_${revision}"
 short_desc="Void cross toolchain for ${_triplet}"
@@ -19,26 +19,29 @@ homepage="https://www.voidlinux.org/"
 license="GPL-2.0-or-later, GPL-3.0-or-later, MIT"
 distfiles="
  ${GNU_SITE}/binutils/binutils-${_binutils_version}.tar.xz
- ${GNU_SITE}/gcc/gcc-${_gcc_version}/gcc-${_gcc_version}.tar.xz
- http://www.musl-libc.org/releases/musl-${_musl_version}.tar.gz
- ${KERNEL_SITE}/kernel/v4.x/linux-${_linux_version}.tar.xz
- https://distfiles.adelielinux.org/source/libucontext/libucontext-${_libucontext_version}.tar.xz"
-checksum="0ab6c55dd86a92ed561972ba15b9b70a8b9f75557f896446c82e8b36e473ee04
- 71e197867611f6054aa1119b13a0c0abac12834765fe2d81f35ac57f84f742d1
+ https://dev.alpinelinux.org/~nenolod/gcc-${_gcc_version}.tar.xz
+ https://musl.libc.org/releases/musl-${_musl_version}.tar.gz
+ ${KERNEL_SITE}/kernel/v5.x/linux-${_linux_version}.tar.xz
+ https://github.com/kaniini/libucontext/archive/libucontext-${_libucontext_version}.tar.gz"
+checksum="3ced91db9bf01182b7e420eab68039f2083aed0a214c0424e257eae3ddee8607
+ 772cfd5d30eb9cc5a996fec9ba8cdcb45d37df1c9b5770610103b814b732c590
  1370c9a812b2cf2a7d92802510cca0058cc37e66a7bedd70051f0a34015022a3
- 0c68f5655528aed4f99dae71a5b259edc93239fa899e2df79c055275c21749a1
- 0d53a415a307ef175153bbe60a572c940a922cb736ce13530b666e7ec2795d68"
+ 904e396c26e9992a16cd1cc989460171536bed7739bf36049f6eb020ee5d56ec
+ 23714e99a87f6dea82e8a073c526325161dd65462459820b16a6162be91955bb"
 nocross=yes
 
 cross_triplet=${_triplet}
-cross_libucontext_arch=aarch64
-cross_linux_arch=arm64
 cross_musl_cflags="-O2 -march=armv8-a"
 
 if [ "$XBPS_TARGET_MACHINE" = "aarch64-musl" ]; then
 	broken="Can't build crosstoolchain to itself"
 fi
 
+case "$XBPS_MACHINE" in
+	ppc64*) ;;
+	ppc*|mips*) broken="no gccgo support";;
+esac
+
 cross-aarch64-linux-musl-libc_package() {
 	short_desc+=" - libc files"
 	nostrip=yes

From 827b804a539a5281242397cb98320a696484281f Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 17 Jan 2021 16:42:04 +0100
Subject: [PATCH 0198/3482] cross-arm-linux-gnueabihf: update to gcc 10.2.1pre1

---
 srcpkgs/cross-arm-linux-gnueabi/template   |  5 ++++
 srcpkgs/cross-arm-linux-gnueabihf/template | 32 ++++++++++++----------
 2 files changed, 23 insertions(+), 14 deletions(-)

diff --git a/srcpkgs/cross-arm-linux-gnueabi/template b/srcpkgs/cross-arm-linux-gnueabi/template
index b327949889b7..08839289c49d 100644
--- a/srcpkgs/cross-arm-linux-gnueabi/template
+++ b/srcpkgs/cross-arm-linux-gnueabi/template
@@ -37,6 +37,11 @@ if [ "$XBPS_TARGET_MACHINE" = "armv5tel" ]; then
 	broken="Can't build crosstoolchain to itself"
 fi
 
+case "$XBPS_MACHINE" in
+	ppc64*) ;;
+	ppc*|mips*) broken="no gccgo support";;
+esac
+
 cross-arm-linux-gnueabi-libc_package() {
 	short_desc+=" - glibc files"
 	nostrip=yes
diff --git a/srcpkgs/cross-arm-linux-gnueabihf/template b/srcpkgs/cross-arm-linux-gnueabihf/template
index af95b141ae83..19f29bc2790f 100644
--- a/srcpkgs/cross-arm-linux-gnueabihf/template
+++ b/srcpkgs/cross-arm-linux-gnueabihf/template
@@ -1,15 +1,15 @@
 # Template file for 'cross-arm-linux-gnueabihf'
 _triplet=arm-linux-gnueabihf
-_binutils_version=2.32
-_gcc_version=9.3.0
-_glibc_version=2.30
-_linux_version=4.19
+_binutils_version=2.35.1
+_gcc_version=10.2.1_pre1
+_glibc_version=2.32
+_linux_version=5.10.4
 pkgname=cross-${_triplet}
-version=0.33
-revision=2
+version=0.34
+revision=1
 build_style=void-cross
 configure_args="--with-arch=armv6 --with-fpu=vfp --with-float=hard"
-hostmakedepends="tar gcc-objc gcc-go flex perl python3"
+hostmakedepends="texinfo tar gcc-objc gcc-go flex perl python3"
 makedepends="isl15-devel libmpc-devel zlib-devel gmp-devel mpfr-devel"
 depends="${pkgname}-libc-${version}_${revision}"
 short_desc="Void cross toolchain for ${_triplet}"
@@ -18,23 +18,27 @@ license="GPL-2.0-or-later, GPL-3.0-or-later, LGPL-2.1-or-later"
 homepage="https://www.voidlinux.org/"
 distfiles="
  ${GNU_SITE}/binutils/binutils-${_binutils_version}.tar.xz
- ${GNU_SITE}/gcc/gcc-${_gcc_version}/gcc-${_gcc_version}.tar.xz
+ https://dev.alpinelinux.org/~nenolod/gcc-${_gcc_version}.tar.xz
  ${GNU_SITE}/glibc/glibc-${_glibc_version}.tar.xz
- ${KERNEL_SITE}/kernel/v4.x/linux-${_linux_version}.tar.xz"
-checksum="0ab6c55dd86a92ed561972ba15b9b70a8b9f75557f896446c82e8b36e473ee04
- 71e197867611f6054aa1119b13a0c0abac12834765fe2d81f35ac57f84f742d1
- e2c4114e569afbe7edbc29131a43be833850ab9a459d81beb2588016d2bbb8af
- 0c68f5655528aed4f99dae71a5b259edc93239fa899e2df79c055275c21749a1"
+ ${KERNEL_SITE}/kernel/v5.x/linux-${_linux_version}.tar.xz"
+checksum="3ced91db9bf01182b7e420eab68039f2083aed0a214c0424e257eae3ddee8607
+ 772cfd5d30eb9cc5a996fec9ba8cdcb45d37df1c9b5770610103b814b732c590
+ 1627ea54f5a1a8467032563393e0901077626dc66f37f10ee6363bb722222836
+ 904e396c26e9992a16cd1cc989460171536bed7739bf36049f6eb020ee5d56ec"
 nocross=yes
 
 cross_triplet=${_triplet}
-cross_linux_arch=arm
 cross_glibc_cflags="-Os -march=armv6 -mfpu=vfp -mfloat-abi=hard"
 
 if [ "$XBPS_TARGET_MACHINE" = "armv6l" ]; then
 	broken="Can't build crosstoolchain to itself"
 fi
 
+case "$XBPS_MACHINE" in
+	ppc64*) ;;
+	ppc*|mips*) broken="no gccgo support";;
+esac
+
 cross-arm-linux-gnueabihf-libc_package() {
 	short_desc+=" - glibc files"
 	nostrip=yes

From 620b9eca12a76112cc5bea6b08e0aa1bb932578a Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 17 Jan 2021 16:42:04 +0100
Subject: [PATCH 0199/3482] cross-arm-linux-gnueabi: update to gcc 10.2.1pre1

---
 srcpkgs/cross-arm-linux-gnueabi/template | 27 ++++++++++++------------
 1 file changed, 13 insertions(+), 14 deletions(-)

diff --git a/srcpkgs/cross-arm-linux-gnueabi/template b/srcpkgs/cross-arm-linux-gnueabi/template
index 08839289c49d..5b046ff94b9f 100644
--- a/srcpkgs/cross-arm-linux-gnueabi/template
+++ b/srcpkgs/cross-arm-linux-gnueabi/template
@@ -1,15 +1,15 @@
 # Template file for 'cross-arm-linux-gnueabi'
 _triplet=arm-linux-gnueabi
-_binutils_version=2.32
-_gcc_version=9.3.0
-_glibc_version=2.30
-_linux_version=4.19
+_binutils_version=2.35.1
+_gcc_version=10.2.1_pre1
+_glibc_version=2.32
+_linux_version=5.10.4
 pkgname=cross-${_triplet}
-version=0.33
-revision=2
+version=0.34
+revision=1
 build_style=void-cross
 configure_args="--with-arch=armv5te --with-float=soft"
-hostmakedepends="tar gcc-objc gcc-go flex perl python3"
+hostmakedepends="texinfo tar gcc-objc gcc-go flex perl python3"
 makedepends="isl15-devel libmpc-devel zlib-devel gmp-devel mpfr-devel"
 depends="${pkgname}-libc-${version}_${revision}"
 short_desc="Void cross toolchain for ${_triplet}"
@@ -18,17 +18,16 @@ license="GPL-2.0-or-later, GPL-3.0-or-later, LGPL-2.1-or-later"
 homepage="https://www.voidlinux.org/"
 distfiles="
  ${GNU_SITE}/binutils/binutils-${_binutils_version}.tar.xz
- ${GNU_SITE}/gcc/gcc-${_gcc_version}/gcc-${_gcc_version}.tar.xz
+ https://dev.alpinelinux.org/~nenolod/gcc-${_gcc_version}.tar.xz
  ${GNU_SITE}/glibc/glibc-${_glibc_version}.tar.xz
- ${KERNEL_SITE}/kernel/v4.x/linux-${_linux_version}.tar.xz"
-checksum="0ab6c55dd86a92ed561972ba15b9b70a8b9f75557f896446c82e8b36e473ee04
- 71e197867611f6054aa1119b13a0c0abac12834765fe2d81f35ac57f84f742d1
- e2c4114e569afbe7edbc29131a43be833850ab9a459d81beb2588016d2bbb8af
- 0c68f5655528aed4f99dae71a5b259edc93239fa899e2df79c055275c21749a1"
+ ${KERNEL_SITE}/kernel/v5.x/linux-${_linux_version}.tar.xz"
+checksum="3ced91db9bf01182b7e420eab68039f2083aed0a214c0424e257eae3ddee8607
+ 772cfd5d30eb9cc5a996fec9ba8cdcb45d37df1c9b5770610103b814b732c590
+ 1627ea54f5a1a8467032563393e0901077626dc66f37f10ee6363bb722222836
+ 904e396c26e9992a16cd1cc989460171536bed7739bf36049f6eb020ee5d56ec"
 nocross=yes
 
 cross_triplet=${_triplet}
-cross_linux_arch=arm
 cross_binutils_configure_args="--without-fp"
 cross_glibc_configure_args="--without-fp"
 cross_glibc_cflags="-Os -march=armv5te -msoft-float -mfloat-abi=soft"

From 1b463dda61e063c6c2def30359edd6724fda719d Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 17 Jan 2021 16:42:04 +0100
Subject: [PATCH 0200/3482] cross-arm-linux-musleabihf: update to gcc
 10.2.1pre1

---
 srcpkgs/cross-arm-linux-musleabi/template   |  5 +++
 srcpkgs/cross-arm-linux-musleabihf/template | 37 +++++++++++----------
 2 files changed, 25 insertions(+), 17 deletions(-)

diff --git a/srcpkgs/cross-arm-linux-musleabi/template b/srcpkgs/cross-arm-linux-musleabi/template
index 02d7dcc85c86..467ec8582adc 100644
--- a/srcpkgs/cross-arm-linux-musleabi/template
+++ b/srcpkgs/cross-arm-linux-musleabi/template
@@ -40,6 +40,11 @@ if [ "$XBPS_TARGET_MACHINE" = "armv5tel-musl" ]; then
 	broken="Can't build crosstoolchain to itself"
 fi
 
+case "$XBPS_MACHINE" in
+	ppc64*) ;;
+	ppc*|mips*) broken="no gccgo support";;
+esac
+
 cross-arm-linux-musleabi-libc_package() {
 	short_desc+=" - libc files"
 	nostrip=yes
diff --git a/srcpkgs/cross-arm-linux-musleabihf/template b/srcpkgs/cross-arm-linux-musleabihf/template
index 3a02bd7c5964..2722c5b2feab 100644
--- a/srcpkgs/cross-arm-linux-musleabihf/template
+++ b/srcpkgs/cross-arm-linux-musleabihf/template
@@ -1,16 +1,16 @@
 # Template file for 'cross-arm-linux-musleabihf'
 _triplet=arm-linux-musleabihf
-_binutils_version=2.32
-_gcc_version=9.3.0
+_binutils_version=2.35.1
+_gcc_version=10.2.1_pre1
 _musl_version=1.1.24
-_linux_version=4.19
-_libucontext_version=0.9.0
+_linux_version=5.10.4
+_libucontext_version=1.0
 pkgname=cross-${_triplet}
-version=0.33
-revision=3
+version=0.34
+revision=1
 build_style=void-cross
 configure_args="--with-arch=armv6 --with-fpu=vfp --with-float=hard"
-hostmakedepends="tar gcc-objc gcc-go flex perl python3"
+hostmakedepends="texinfo tar gcc-objc gcc-go flex perl python3"
 makedepends="isl15-devel libmpc-devel zlib-devel gmp-devel mpfr-devel"
 depends="${pkgname}-libc-${version}_${revision}"
 short_desc="Void cross toolchain for ${_triplet}"
@@ -19,26 +19,29 @@ homepage="https://www.voidlinux.org/"
 license="GPL-2.0-or-later, GPL-3.0-or-later, MIT"
 distfiles="
  ${GNU_SITE}/binutils/binutils-${_binutils_version}.tar.xz
- ${GNU_SITE}/gcc/gcc-${_gcc_version}/gcc-${_gcc_version}.tar.xz
- http://www.musl-libc.org/releases/musl-${_musl_version}.tar.gz
- ${KERNEL_SITE}/kernel/v4.x/linux-${_linux_version}.tar.xz
- https://distfiles.adelielinux.org/source/libucontext/libucontext-${_libucontext_version}.tar.xz"
-checksum="0ab6c55dd86a92ed561972ba15b9b70a8b9f75557f896446c82e8b36e473ee04
- 71e197867611f6054aa1119b13a0c0abac12834765fe2d81f35ac57f84f742d1
+ https://dev.alpinelinux.org/~nenolod/gcc-${_gcc_version}.tar.xz
+ https://musl.libc.org/releases/musl-${_musl_version}.tar.gz
+ ${KERNEL_SITE}/kernel/v5.x/linux-${_linux_version}.tar.xz
+ https://github.com/kaniini/libucontext/archive/libucontext-${_libucontext_version}.tar.gz"
+checksum="3ced91db9bf01182b7e420eab68039f2083aed0a214c0424e257eae3ddee8607
+ 772cfd5d30eb9cc5a996fec9ba8cdcb45d37df1c9b5770610103b814b732c590
  1370c9a812b2cf2a7d92802510cca0058cc37e66a7bedd70051f0a34015022a3
- 0c68f5655528aed4f99dae71a5b259edc93239fa899e2df79c055275c21749a1
- 0d53a415a307ef175153bbe60a572c940a922cb736ce13530b666e7ec2795d68"
+ 904e396c26e9992a16cd1cc989460171536bed7739bf36049f6eb020ee5d56ec
+ 23714e99a87f6dea82e8a073c526325161dd65462459820b16a6162be91955bb"
 nocross=yes
 
 cross_triplet=${_triplet}
-cross_libucontext_arch=arm
-cross_linux_arch=arm
 cross_musl_cflags="-Os -march=armv6 -mfpu=vfp -mfloat-abi=hard"
 
 if [ "$XBPS_TARGET_MACHINE" = "armv6l-musl" ]; then
 	broken="Can't build crosstoolchain to itself"
 fi
 
+case "$XBPS_MACHINE" in
+	ppc64*) ;;
+	ppc*|mips*) broken="no gccgo support";;
+esac
+
 cross-arm-linux-musleabihf-libc_package() {
 	short_desc+=" - libc files"
 	nostrip=yes

From cc8e5a9b055e8880755597665ea662ef307eb01d Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 17 Jan 2021 16:42:04 +0100
Subject: [PATCH 0201/3482] cross-arm-linux-musleabi: update to gcc 10.2.1pre1

---
 srcpkgs/cross-arm-linux-musleabi/template | 32 +++++++++++------------
 1 file changed, 15 insertions(+), 17 deletions(-)

diff --git a/srcpkgs/cross-arm-linux-musleabi/template b/srcpkgs/cross-arm-linux-musleabi/template
index 467ec8582adc..21225952689d 100644
--- a/srcpkgs/cross-arm-linux-musleabi/template
+++ b/srcpkgs/cross-arm-linux-musleabi/template
@@ -1,16 +1,16 @@
 # Template file for 'cross-arm-linux-musleabi'
 _triplet=arm-linux-musleabi
-_binutils_version=2.32
-_gcc_version=9.3.0
+_binutils_version=2.35.1
+_gcc_version=10.2.1_pre1
 _musl_version=1.1.24
-_linux_version=4.19
-_libucontext_version=0.9.0
+_linux_version=5.10.4
+_libucontext_version=1.0
 pkgname=cross-${_triplet}
-version=0.33
-revision=3
+version=0.34
+revision=1
 build_style=void-cross
 configure_args="--with-arch=armv5te --with-float=soft"
-hostmakedepends="tar gcc-objc gcc-go flex perl python3"
+hostmakedepends="texinfo tar gcc-objc gcc-go flex perl python3"
 makedepends="isl15-devel libmpc-devel zlib-devel gmp-devel mpfr-devel"
 depends="${pkgname}-libc-${version}_${revision}"
 short_desc="Void cross toolchain for ${_triplet}"
@@ -19,20 +19,18 @@ homepage="https://www.voidlinux.org/"
 license="GPL-2.0-or-later, GPL-3.0-or-later, MIT"
 distfiles="
  ${GNU_SITE}/binutils/binutils-${_binutils_version}.tar.xz
- ${GNU_SITE}/gcc/gcc-${_gcc_version}/gcc-${_gcc_version}.tar.xz
- http://www.musl-libc.org/releases/musl-${_musl_version}.tar.gz
- ${KERNEL_SITE}/kernel/v4.x/linux-${_linux_version}.tar.xz
- https://distfiles.adelielinux.org/source/libucontext/libucontext-${_libucontext_version}.tar.xz"
-checksum="0ab6c55dd86a92ed561972ba15b9b70a8b9f75557f896446c82e8b36e473ee04
- 71e197867611f6054aa1119b13a0c0abac12834765fe2d81f35ac57f84f742d1
+ https://dev.alpinelinux.org/~nenolod/gcc-${_gcc_version}.tar.xz
+ https://musl.libc.org/releases/musl-${_musl_version}.tar.gz
+ ${KERNEL_SITE}/kernel/v5.x/linux-${_linux_version}.tar.xz
+ https://github.com/kaniini/libucontext/archive/libucontext-${_libucontext_version}.tar.gz"
+checksum="3ced91db9bf01182b7e420eab68039f2083aed0a214c0424e257eae3ddee8607
+ 772cfd5d30eb9cc5a996fec9ba8cdcb45d37df1c9b5770610103b814b732c590
  1370c9a812b2cf2a7d92802510cca0058cc37e66a7bedd70051f0a34015022a3
- 0c68f5655528aed4f99dae71a5b259edc93239fa899e2df79c055275c21749a1
- 0d53a415a307ef175153bbe60a572c940a922cb736ce13530b666e7ec2795d68"
+ 904e396c26e9992a16cd1cc989460171536bed7739bf36049f6eb020ee5d56ec
+ 23714e99a87f6dea82e8a073c526325161dd65462459820b16a6162be91955bb"
 nocross=yes
 
 cross_triplet=${_triplet}
-cross_libucontext_arch=arm
-cross_linux_arch=arm
 cross_binutils_configure_args="--without-fp"
 cross_musl_cflags="-Os -march=armv5te -msoft-float -mfloat-abi=soft"
 

From 175076c9d0d723e01c31e2a5a51f8522a81eb511 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 17 Jan 2021 16:42:05 +0100
Subject: [PATCH 0202/3482] cross-armv7l-linux-gnueabihf: update to gcc
 10.2.1pre1

---
 srcpkgs/cross-armv7l-linux-gnueabihf/template | 32 +++++++++++--------
 1 file changed, 18 insertions(+), 14 deletions(-)

diff --git a/srcpkgs/cross-armv7l-linux-gnueabihf/template b/srcpkgs/cross-armv7l-linux-gnueabihf/template
index d59d9d11929e..abe150f2a27b 100644
--- a/srcpkgs/cross-armv7l-linux-gnueabihf/template
+++ b/srcpkgs/cross-armv7l-linux-gnueabihf/template
@@ -1,15 +1,15 @@
 # Template file for 'cross-armv7l-linux-gnueabihf'
 _triplet=armv7l-linux-gnueabihf
-_binutils_version=2.32
-_gcc_version=9.3.0
-_glibc_version=2.30
-_linux_version=4.19
+_binutils_version=2.35.1
+_gcc_version=10.2.1_pre1
+_glibc_version=2.32
+_linux_version=5.10.4
 pkgname=cross-${_triplet}
-version=0.33
-revision=2
+version=0.34
+revision=1
 build_style=void-cross
 configure_args="--with-arch=armv7-a --with-fpu=vfpv3 --with-float=hard"
-hostmakedepends="tar gcc-objc gcc-go flex perl python3"
+hostmakedepends="texinfo tar gcc-objc gcc-go flex perl python3"
 makedepends="isl15-devel libmpc-devel zlib-devel gmp-devel mpfr-devel"
 depends="${pkgname}-libc-${version}_${revision}"
 short_desc="Void cross toolchain for ${_triplet}"
@@ -18,23 +18,27 @@ license="GPL-2.0-or-later, GPL-3.0-or-later, LGPL-2.1-or-later"
 homepage="https://www.voidlinux.org/"
 distfiles="
  ${GNU_SITE}/binutils/binutils-${_binutils_version}.tar.xz
- ${GNU_SITE}/gcc/gcc-${_gcc_version}/gcc-${_gcc_version}.tar.xz
+ https://dev.alpinelinux.org/~nenolod/gcc-${_gcc_version}.tar.xz
  ${GNU_SITE}/glibc/glibc-${_glibc_version}.tar.xz
- ${KERNEL_SITE}/kernel/v4.x/linux-${_linux_version}.tar.xz"
-checksum="0ab6c55dd86a92ed561972ba15b9b70a8b9f75557f896446c82e8b36e473ee04
- 71e197867611f6054aa1119b13a0c0abac12834765fe2d81f35ac57f84f742d1
- e2c4114e569afbe7edbc29131a43be833850ab9a459d81beb2588016d2bbb8af
- 0c68f5655528aed4f99dae71a5b259edc93239fa899e2df79c055275c21749a1"
+ ${KERNEL_SITE}/kernel/v5.x/linux-${_linux_version}.tar.xz"
+checksum="3ced91db9bf01182b7e420eab68039f2083aed0a214c0424e257eae3ddee8607
+ 772cfd5d30eb9cc5a996fec9ba8cdcb45d37df1c9b5770610103b814b732c590
+ 1627ea54f5a1a8467032563393e0901077626dc66f37f10ee6363bb722222836
+ 904e396c26e9992a16cd1cc989460171536bed7739bf36049f6eb020ee5d56ec"
 nocross=yes
 
 cross_triplet=${_triplet}
-cross_linux_arch=arm
 cross_glibc_cflags="-O2 -march=armv7-a -mfpu=vfpv3 -mfloat-abi=hard"
 
 if [ "$XBPS_TARGET_MACHINE" = "armv7l" ]; then
 	broken="Can't build crosstoolchain to itself"
 fi
 
+case "$XBPS_MACHINE" in
+	ppc64*) ;;
+	ppc*|mips*) broken="no gccgo support";;
+esac
+
 cross-armv7l-linux-gnueabihf-libc_package() {
 	short_desc+=" - glibc files"
 	nostrip=yes

From 08abd0e1fb2312e3f28800d38cd5f9016ae868a4 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 17 Jan 2021 16:42:05 +0100
Subject: [PATCH 0203/3482] cross-armv7l-linux-musleabihf: update to gcc
 10.2.1pre1

---
 .../cross-armv7l-linux-musleabihf/template    | 37 ++++++++++---------
 1 file changed, 20 insertions(+), 17 deletions(-)

diff --git a/srcpkgs/cross-armv7l-linux-musleabihf/template b/srcpkgs/cross-armv7l-linux-musleabihf/template
index fedf616d8b1e..9a54186e9143 100644
--- a/srcpkgs/cross-armv7l-linux-musleabihf/template
+++ b/srcpkgs/cross-armv7l-linux-musleabihf/template
@@ -1,16 +1,16 @@
 # Template file for 'cross-armv7l-linux-musleabihf'
 _triplet=armv7l-linux-musleabihf
-_binutils_version=2.32
-_gcc_version=9.3.0
+_binutils_version=2.35.1
+_gcc_version=10.2.1_pre1
 _musl_version=1.1.24
-_linux_version=4.19
-_libucontext_version=0.9.0
+_linux_version=5.10.4
+_libucontext_version=1.0
 pkgname=cross-${_triplet}
-version=0.33
-revision=3
+version=0.34
+revision=1
 build_style=void-cross
 configure_args="--with-arch=armv7-a --with-fpu=vfpv3 --with-float=hard"
-hostmakedepends="tar gcc-objc gcc-go flex perl python3"
+hostmakedepends="texinfo tar gcc-objc gcc-go flex perl python3"
 makedepends="isl15-devel libmpc-devel zlib-devel gmp-devel mpfr-devel"
 depends="${pkgname}-libc-${version}_${revision}"
 short_desc="Void cross toolchain for ${_triplet}"
@@ -19,26 +19,29 @@ homepage="https://www.voidlinux.org/"
 license="GPL-2.0-or-later, GPL-3.0-or-later, MIT"
 distfiles="
  ${GNU_SITE}/binutils/binutils-${_binutils_version}.tar.xz
- ${GNU_SITE}/gcc/gcc-${_gcc_version}/gcc-${_gcc_version}.tar.xz
- http://www.musl-libc.org/releases/musl-${_musl_version}.tar.gz
- ${KERNEL_SITE}/kernel/v4.x/linux-${_linux_version}.tar.xz
- https://distfiles.adelielinux.org/source/libucontext/libucontext-${_libucontext_version}.tar.xz"
-checksum="0ab6c55dd86a92ed561972ba15b9b70a8b9f75557f896446c82e8b36e473ee04
- 71e197867611f6054aa1119b13a0c0abac12834765fe2d81f35ac57f84f742d1
+ https://dev.alpinelinux.org/~nenolod/gcc-${_gcc_version}.tar.xz
+ https://musl.libc.org/releases/musl-${_musl_version}.tar.gz
+ ${KERNEL_SITE}/kernel/v5.x/linux-${_linux_version}.tar.xz
+ https://github.com/kaniini/libucontext/archive/libucontext-${_libucontext_version}.tar.gz"
+checksum="3ced91db9bf01182b7e420eab68039f2083aed0a214c0424e257eae3ddee8607
+ 772cfd5d30eb9cc5a996fec9ba8cdcb45d37df1c9b5770610103b814b732c590
  1370c9a812b2cf2a7d92802510cca0058cc37e66a7bedd70051f0a34015022a3
- 0c68f5655528aed4f99dae71a5b259edc93239fa899e2df79c055275c21749a1
- 0d53a415a307ef175153bbe60a572c940a922cb736ce13530b666e7ec2795d68"
+ 904e396c26e9992a16cd1cc989460171536bed7739bf36049f6eb020ee5d56ec
+ 23714e99a87f6dea82e8a073c526325161dd65462459820b16a6162be91955bb"
 nocross=yes
 
 cross_triplet=${_triplet}
-cross_libucontext_arch=arm
-cross_linux_arch=arm
 cross_musl_cflags="-O2 -march=armv7-a -mfpu=vfpv3 -mfloat-abi=hard"
 
 if [ "$XBPS_TARGET_MACHINE" = "armv7l-musl" ]; then
 	broken="Can't build crosstoolchain to itself"
 fi
 
+case "$XBPS_MACHINE" in
+	ppc64*) ;;
+	ppc*|mips*) broken="no gccgo support";;
+esac
+
 cross-armv7l-linux-musleabihf-libc_package() {
 	short_desc+=" - libc files"
 	nostrip=yes

From e20fe175710ad538e0890aa77c691c441e7c5cff Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 17 Jan 2021 16:42:05 +0100
Subject: [PATCH 0204/3482] cross-i686-linux-musl: update to gcc 10.2.1pre1

---
 srcpkgs/cross-i686-linux-musl/template | 40 ++++++++++++--------------
 1 file changed, 19 insertions(+), 21 deletions(-)

diff --git a/srcpkgs/cross-i686-linux-musl/template b/srcpkgs/cross-i686-linux-musl/template
index 3d889855aceb..19e37dd835c6 100644
--- a/srcpkgs/cross-i686-linux-musl/template
+++ b/srcpkgs/cross-i686-linux-musl/template
@@ -1,15 +1,15 @@
 # Template file for 'cross-i686-linux-musl'
 _triplet=i686-linux-musl
-_binutils_version=2.32
-_gcc_version=9.3.0
+_binutils_version=2.35.1
+_gcc_version=10.2.1_pre1
 _musl_version=1.1.24
-_linux_version=4.19
-_libucontext_version=0.9.0
+_linux_version=5.10.4
+_libucontext_version=1.0
 pkgname=cross-${_triplet}
-version=0.33
-revision=3
+version=0.34
+revision=1
 build_style=void-cross
-hostmakedepends="tar gcc-objc gcc-go flex perl python3"
+hostmakedepends="texinfo tar gcc-objc gcc-go flex perl python3"
 makedepends="isl15-devel libmpc-devel zlib-devel gmp-devel mpfr-devel"
 depends="${pkgname}-libc-${version}_${revision}"
 short_desc="Void cross toolchain for ${_triplet}"
@@ -18,20 +18,18 @@ homepage="https://www.voidlinux.org/"
 license="GPL-2.0-or-later, GPL-3.0-or-later, MIT"
 distfiles="
  ${GNU_SITE}/binutils/binutils-${_binutils_version}.tar.xz
- ${GNU_SITE}/gcc/gcc-${_gcc_version}/gcc-${_gcc_version}.tar.xz
- http://www.musl-libc.org/releases/musl-${_musl_version}.tar.gz
- ${KERNEL_SITE}/kernel/v4.x/linux-${_linux_version}.tar.xz
- https://distfiles.adelielinux.org/source/libucontext/libucontext-${_libucontext_version}.tar.xz"
-checksum="0ab6c55dd86a92ed561972ba15b9b70a8b9f75557f896446c82e8b36e473ee04
- 71e197867611f6054aa1119b13a0c0abac12834765fe2d81f35ac57f84f742d1
+ https://dev.alpinelinux.org/~nenolod/gcc-${_gcc_version}.tar.xz
+ https://musl.libc.org/releases/musl-${_musl_version}.tar.gz
+ ${KERNEL_SITE}/kernel/v5.x/linux-${_linux_version}.tar.xz
+ https://github.com/kaniini/libucontext/archive/libucontext-${_libucontext_version}.tar.gz"
+checksum="3ced91db9bf01182b7e420eab68039f2083aed0a214c0424e257eae3ddee8607
+ 772cfd5d30eb9cc5a996fec9ba8cdcb45d37df1c9b5770610103b814b732c590
  1370c9a812b2cf2a7d92802510cca0058cc37e66a7bedd70051f0a34015022a3
- 0c68f5655528aed4f99dae71a5b259edc93239fa899e2df79c055275c21749a1
- 0d53a415a307ef175153bbe60a572c940a922cb736ce13530b666e7ec2795d68"
+ 904e396c26e9992a16cd1cc989460171536bed7739bf36049f6eb020ee5d56ec
+ 23714e99a87f6dea82e8a073c526325161dd65462459820b16a6162be91955bb"
 nocross=yes
 
 cross_triplet=${_triplet}
-cross_libucontext_arch=x86
-cross_linux_arch=x86
 # explicitly enable for final gcc, as gfortran does not build without on x86
 cross_gcc_configure_args="--enable-libquadmath"
 cross_musl_cflags="-O2 -march=i686 -mtune=generic"
@@ -40,10 +38,10 @@ if [ "$XBPS_TARGET_MACHINE" = "i686-musl" ]; then
 	broken="Can't build crosstoolchain to itself"
 fi
 
-post_patch() {
-	vsed -i libucontext-${_libucontext_version}/arch/x86/startcontext.S \
-		-e "s;__i686.get_pc_thunk.bx;i686_get_pc_thunk_bx;g"
-}
+case "$XBPS_MACHINE" in
+	ppc64*) ;;
+	ppc*|mips*) broken="no gccgo support";;
+esac
 
 cross-i686-linux-musl-libc_package() {
 	short_desc+=" - libc files"

From 6e5dac676f3e3fbf08305dcc6dd281076bde15ff Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 17 Jan 2021 16:42:05 +0100
Subject: [PATCH 0205/3482] cross-i686-pc-linux-gnu: update to gcc 10.2.1pre1

---
 srcpkgs/cross-i686-pc-linux-gnu/template | 32 +++++++++++++-----------
 1 file changed, 18 insertions(+), 14 deletions(-)

diff --git a/srcpkgs/cross-i686-pc-linux-gnu/template b/srcpkgs/cross-i686-pc-linux-gnu/template
index 7500d9dad73f..7fa37de528fd 100644
--- a/srcpkgs/cross-i686-pc-linux-gnu/template
+++ b/srcpkgs/cross-i686-pc-linux-gnu/template
@@ -1,14 +1,14 @@
 # Template file for 'cross-i686-pc-linux-gnu'
 _triplet=i686-pc-linux-gnu
-_binutils_version=2.32
-_gcc_version=9.3.0
-_glibc_version=2.30
-_linux_version=4.19
+_binutils_version=2.35.1
+_gcc_version=10.2.1_pre1
+_glibc_version=2.32
+_linux_version=5.10.4
 pkgname=cross-${_triplet}
-version=0.33
-revision=4
+version=0.34
+revision=1
 build_style=void-cross
-hostmakedepends="tar gcc-objc gcc-go flex perl python3"
+hostmakedepends="texinfo tar gcc-objc gcc-go flex perl python3"
 makedepends="isl15-devel libmpc-devel zlib-devel gmp-devel mpfr-devel"
 depends="${pkgname}-libc-${version}_${revision}"
 short_desc="Void cross toolchain for ${_triplet}"
@@ -17,17 +17,16 @@ license="GPL-2.0-or-later, GPL-3.0-or-later, LGPL-2.1-or-later"
 homepage="https://www.voidlinux.org/"
 distfiles="
  ${GNU_SITE}/binutils/binutils-${_binutils_version}.tar.xz
- ${GNU_SITE}/gcc/gcc-${_gcc_version}/gcc-${_gcc_version}.tar.xz
+ https://dev.alpinelinux.org/~nenolod/gcc-${_gcc_version}.tar.xz
  ${GNU_SITE}/glibc/glibc-${_glibc_version}.tar.xz
- ${KERNEL_SITE}/kernel/v4.x/linux-${_linux_version}.tar.xz"
-checksum="0ab6c55dd86a92ed561972ba15b9b70a8b9f75557f896446c82e8b36e473ee04
- 71e197867611f6054aa1119b13a0c0abac12834765fe2d81f35ac57f84f742d1
- e2c4114e569afbe7edbc29131a43be833850ab9a459d81beb2588016d2bbb8af
- 0c68f5655528aed4f99dae71a5b259edc93239fa899e2df79c055275c21749a1"
+ ${KERNEL_SITE}/kernel/v5.x/linux-${_linux_version}.tar.xz"
+checksum="3ced91db9bf01182b7e420eab68039f2083aed0a214c0424e257eae3ddee8607
+ 772cfd5d30eb9cc5a996fec9ba8cdcb45d37df1c9b5770610103b814b732c590
+ 1627ea54f5a1a8467032563393e0901077626dc66f37f10ee6363bb722222836
+ 904e396c26e9992a16cd1cc989460171536bed7739bf36049f6eb020ee5d56ec"
 nocross=yes
 
 cross_triplet=${_triplet}
-cross_linux_arch=x86
 # explicitly enable for final gcc, as gfortran does not build without on x86
 cross_gcc_configure_args="--enable-libquadmath"
 cross_glibc_cflags="-O2 -Wno-error -march=i686 -mtune=generic"
@@ -36,6 +35,11 @@ if [ "$XBPS_TARGET_MACHINE" = "i686" ]; then
 	broken="Can't build crosstoolchain to itself"
 fi
 
+case "$XBPS_MACHINE" in
+	ppc64*) ;;
+	ppc*|mips*) broken="no gccgo support";;
+esac
+
 cross-i686-pc-linux-gnu-libc_package() {
 	short_desc+=" - glibc files"
 	nostrip=yes

From 94dee69d907af3d1988a88e1a03c9f3f6a1c279b Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 17 Jan 2021 16:42:05 +0100
Subject: [PATCH 0206/3482] cross-mipsel-linux-muslhf: update to gcc 10.2.1pre1

---
 srcpkgs/cross-mipsel-linux-muslhf/template | 23 +++++++++++-----------
 1 file changed, 11 insertions(+), 12 deletions(-)

diff --git a/srcpkgs/cross-mipsel-linux-muslhf/template b/srcpkgs/cross-mipsel-linux-muslhf/template
index e2109e06187e..82f902532f1c 100644
--- a/srcpkgs/cross-mipsel-linux-muslhf/template
+++ b/srcpkgs/cross-mipsel-linux-muslhf/template
@@ -1,16 +1,16 @@
 # Template file for 'cross-mipsel-linux-muslhf'
 _triplet=mipsel-linux-muslhf
-_binutils_version=2.32
-_gcc_version=9.3.0
+_binutils_version=2.35.1
+_gcc_version=10.2.1_pre1
 _musl_version=1.1.24
-_linux_version=4.19
+_linux_version=5.10.4
 pkgname=cross-${_triplet}
-version=0.33
-revision=3
+version=0.34
+revision=1
 build_style=void-cross
 configure_args="--with-arch=mips32r2 --with-float=hard
  --with-linker-hash-style=sysv"
-hostmakedepends="tar gcc-objc flex perl python3"
+hostmakedepends="texinfo tar gcc-objc flex perl python3"
 makedepends="isl15-devel libmpc-devel zlib-devel gmp-devel mpfr-devel"
 depends="${pkgname}-libc-${version}_${revision}"
 short_desc="Void cross toolchain for ${_triplet}"
@@ -19,17 +19,16 @@ homepage="https://www.voidlinux.org/"
 license="GPL-2.0-or-later, GPL-3.0-or-later, MIT"
 distfiles="
  ${GNU_SITE}/binutils/binutils-${_binutils_version}.tar.xz
- ${GNU_SITE}/gcc/gcc-${_gcc_version}/gcc-${_gcc_version}.tar.xz
+ https://dev.alpinelinux.org/~nenolod/gcc-${_gcc_version}.tar.xz
  https://www.musl-libc.org/releases/musl-${_musl_version}.tar.gz
- ${KERNEL_SITE}/kernel/v4.x/linux-${_linux_version}.tar.xz"
-checksum="0ab6c55dd86a92ed561972ba15b9b70a8b9f75557f896446c82e8b36e473ee04
- 71e197867611f6054aa1119b13a0c0abac12834765fe2d81f35ac57f84f742d1
+ ${KERNEL_SITE}/kernel/v5.x/linux-${_linux_version}.tar.xz"
+checksum="3ced91db9bf01182b7e420eab68039f2083aed0a214c0424e257eae3ddee8607
+ 772cfd5d30eb9cc5a996fec9ba8cdcb45d37df1c9b5770610103b814b732c590
  1370c9a812b2cf2a7d92802510cca0058cc37e66a7bedd70051f0a34015022a3
- 0c68f5655528aed4f99dae71a5b259edc93239fa899e2df79c055275c21749a1"
+ 904e396c26e9992a16cd1cc989460171536bed7739bf36049f6eb020ee5d56ec"
 nocross=yes
 
 cross_triplet=${_triplet}
-cross_linux_arch=mips
 cross_gcc_skip_go=yes
 cross_binutils_configure_args="--enable-default-hash-style=sysv"
 cross_musl_cflags="-Os -march=mips32r2 -mhard-float"

From 3a73c1632b6121e9c50105f40f33171f06fb6cab Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 17 Jan 2021 16:42:05 +0100
Subject: [PATCH 0207/3482] cross-mipsel-linux-musl: update to gcc 10.2.1pre1

---
 srcpkgs/cross-mipsel-linux-musl/template | 23 +++++++++++------------
 1 file changed, 11 insertions(+), 12 deletions(-)

diff --git a/srcpkgs/cross-mipsel-linux-musl/template b/srcpkgs/cross-mipsel-linux-musl/template
index 7aaa4a75b4a6..b233f9a23d24 100644
--- a/srcpkgs/cross-mipsel-linux-musl/template
+++ b/srcpkgs/cross-mipsel-linux-musl/template
@@ -1,16 +1,16 @@
 # Template file for 'cross-mipsel-linux-musl'
 _triplet=mipsel-linux-musl
-_binutils_version=2.32
-_gcc_version=9.3.0
+_binutils_version=2.35.1
+_gcc_version=10.2.1_pre1
 _musl_version=1.1.24
-_linux_version=4.19
+_linux_version=5.10.4
 pkgname=cross-${_triplet}
-version=0.33
-revision=3
+version=0.34
+revision=1
 build_style=void-cross
 configure_args="--with-arch=mips32r2 --with-float=soft
  --with-linker-hash-style=sysv"
-hostmakedepends="tar gcc-objc flex perl python3"
+hostmakedepends="texinfo tar gcc-objc flex perl python3"
 makedepends="isl15-devel libmpc-devel zlib-devel gmp-devel mpfr-devel"
 depends="${pkgname}-libc-${version}_${revision}"
 short_desc="Void cross toolchain for ${_triplet}"
@@ -19,17 +19,16 @@ homepage="https://www.voidlinux.org/"
 license="GPL-2.0-or-later, GPL-3.0-or-later, MIT"
 distfiles="
  ${GNU_SITE}/binutils/binutils-${_binutils_version}.tar.xz
- ${GNU_SITE}/gcc/gcc-${_gcc_version}/gcc-${_gcc_version}.tar.xz
+ https://dev.alpinelinux.org/~nenolod/gcc-${_gcc_version}.tar.xz
  https://www.musl-libc.org/releases/musl-${_musl_version}.tar.gz
- ${KERNEL_SITE}/kernel/v4.x/linux-${_linux_version}.tar.xz"
-checksum="0ab6c55dd86a92ed561972ba15b9b70a8b9f75557f896446c82e8b36e473ee04
- 71e197867611f6054aa1119b13a0c0abac12834765fe2d81f35ac57f84f742d1
+ ${KERNEL_SITE}/kernel/v5.x/linux-${_linux_version}.tar.xz"
+checksum="3ced91db9bf01182b7e420eab68039f2083aed0a214c0424e257eae3ddee8607
+ 772cfd5d30eb9cc5a996fec9ba8cdcb45d37df1c9b5770610103b814b732c590
  1370c9a812b2cf2a7d92802510cca0058cc37e66a7bedd70051f0a34015022a3
- 0c68f5655528aed4f99dae71a5b259edc93239fa899e2df79c055275c21749a1"
+ 904e396c26e9992a16cd1cc989460171536bed7739bf36049f6eb020ee5d56ec"
 nocross=yes
 
 cross_triplet=${_triplet}
-cross_linux_arch=mips
 cross_gcc_skip_go=yes
 cross_binutils_configure_args="--without-fp --enable-default-hash-style=sysv"
 cross_musl_cflags="-Os -march=mips32r2 -msoft-float"

From 01fa7f66eb2ad8444bf09b54c9a2545b6b0ef354 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 17 Jan 2021 16:42:05 +0100
Subject: [PATCH 0208/3482] cross-mips-linux-muslhf: update to gcc 10.2.1pre1

---
 srcpkgs/cross-mips-linux-muslhf/template | 23 +++++++++++------------
 1 file changed, 11 insertions(+), 12 deletions(-)

diff --git a/srcpkgs/cross-mips-linux-muslhf/template b/srcpkgs/cross-mips-linux-muslhf/template
index 64e90e245a6b..cbf1a772b7cf 100644
--- a/srcpkgs/cross-mips-linux-muslhf/template
+++ b/srcpkgs/cross-mips-linux-muslhf/template
@@ -1,16 +1,16 @@
 # Template file for 'cross-mips-linux-muslhf'
 _triplet=mips-linux-muslhf
-_binutils_version=2.32
-_gcc_version=9.3.0
+_binutils_version=2.35.1
+_gcc_version=10.2.1_pre1
 _musl_version=1.1.24
-_linux_version=4.19
+_linux_version=5.10.4
 pkgname=cross-${_triplet}
-version=0.33
-revision=3
+version=0.34
+revision=1
 build_style=void-cross
 configure_args="--with-arch=mips32r2 --with-float=hard
  --with-linker-hash-style=sysv"
-hostmakedepends="tar gcc-objc flex perl python3"
+hostmakedepends="texinfo tar gcc-objc flex perl python3"
 makedepends="isl15-devel libmpc-devel zlib-devel gmp-devel mpfr-devel"
 depends="${pkgname}-libc-${version}_${revision}"
 short_desc="Void cross toolchain for ${_triplet}"
@@ -19,17 +19,16 @@ homepage="https://www.voidlinux.org/"
 license="GPL-2.0-or-later, GPL-3.0-or-later, MIT"
 distfiles="
  ${GNU_SITE}/binutils/binutils-${_binutils_version}.tar.xz
- ${GNU_SITE}/gcc/gcc-${_gcc_version}/gcc-${_gcc_version}.tar.xz
+ https://dev.alpinelinux.org/~nenolod/gcc-${_gcc_version}.tar.xz
  https://www.musl-libc.org/releases/musl-${_musl_version}.tar.gz
- ${KERNEL_SITE}/kernel/v4.x/linux-${_linux_version}.tar.xz"
-checksum="0ab6c55dd86a92ed561972ba15b9b70a8b9f75557f896446c82e8b36e473ee04
- 71e197867611f6054aa1119b13a0c0abac12834765fe2d81f35ac57f84f742d1
+ ${KERNEL_SITE}/kernel/v5.x/linux-${_linux_version}.tar.xz"
+checksum="3ced91db9bf01182b7e420eab68039f2083aed0a214c0424e257eae3ddee8607
+ 772cfd5d30eb9cc5a996fec9ba8cdcb45d37df1c9b5770610103b814b732c590
  1370c9a812b2cf2a7d92802510cca0058cc37e66a7bedd70051f0a34015022a3
- 0c68f5655528aed4f99dae71a5b259edc93239fa899e2df79c055275c21749a1"
+ 904e396c26e9992a16cd1cc989460171536bed7739bf36049f6eb020ee5d56ec"
 nocross=yes
 
 cross_triplet=${_triplet}
-cross_linux_arch=mips
 cross_gcc_skip_go=yes
 cross_binutils_configure_args="--enable-default-hash-style=sysv"
 cross_musl_cflags="-Os -march=mips32r2 -mhard-float"

From e0c2314aa8f3d15a1732642ae03524306bc40e14 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 17 Jan 2021 16:42:06 +0100
Subject: [PATCH 0209/3482] cross-mips-linux-musl: update to gcc 10.2.1pre1

---
 srcpkgs/cross-mips-linux-musl/template | 23 +++++++++++------------
 1 file changed, 11 insertions(+), 12 deletions(-)

diff --git a/srcpkgs/cross-mips-linux-musl/template b/srcpkgs/cross-mips-linux-musl/template
index 430f248c4f7a..fb671e54c2ee 100644
--- a/srcpkgs/cross-mips-linux-musl/template
+++ b/srcpkgs/cross-mips-linux-musl/template
@@ -1,16 +1,16 @@
 # Template file for 'cross-mips-linux-musl'
 _triplet=mips-linux-musl
-_binutils_version=2.32
-_gcc_version=9.3.0
+_binutils_version=2.35.1
+_gcc_version=10.2.1_pre1
 _musl_version=1.1.24
-_linux_version=4.19
+_linux_version=5.10.4
 pkgname=cross-${_triplet}
-version=0.33
-revision=3
+version=0.34
+revision=1
 build_style=void-cross
 configure_args="--with-arch=mips32r2 --with-float=soft
  --with-linker-hash-style=sysv"
-hostmakedepends="tar gcc-objc flex perl python3"
+hostmakedepends="texinfo tar gcc-objc flex perl python3"
 makedepends="isl15-devel libmpc-devel zlib-devel gmp-devel mpfr-devel"
 depends="${pkgname}-libc-${version}_${revision}"
 short_desc="Void cross toolchain for ${_triplet}"
@@ -19,17 +19,16 @@ homepage="https://www.voidlinux.org/"
 license="GPL-2.0-or-later, GPL-3.0-or-later, MIT"
 distfiles="
  ${GNU_SITE}/binutils/binutils-${_binutils_version}.tar.xz
- ${GNU_SITE}/gcc/gcc-${_gcc_version}/gcc-${_gcc_version}.tar.xz
+ https://dev.alpinelinux.org/~nenolod/gcc-${_gcc_version}.tar.xz
  https://www.musl-libc.org/releases/musl-${_musl_version}.tar.gz
- ${KERNEL_SITE}/kernel/v4.x/linux-${_linux_version}.tar.xz"
-checksum="0ab6c55dd86a92ed561972ba15b9b70a8b9f75557f896446c82e8b36e473ee04
- 71e197867611f6054aa1119b13a0c0abac12834765fe2d81f35ac57f84f742d1
+ ${KERNEL_SITE}/kernel/v5.x/linux-${_linux_version}.tar.xz"
+checksum="3ced91db9bf01182b7e420eab68039f2083aed0a214c0424e257eae3ddee8607
+ 772cfd5d30eb9cc5a996fec9ba8cdcb45d37df1c9b5770610103b814b732c590
  1370c9a812b2cf2a7d92802510cca0058cc37e66a7bedd70051f0a34015022a3
- 0c68f5655528aed4f99dae71a5b259edc93239fa899e2df79c055275c21749a1"
+ 904e396c26e9992a16cd1cc989460171536bed7739bf36049f6eb020ee5d56ec"
 nocross=yes
 
 cross_triplet=${_triplet}
-cross_linux_arch=mips
 cross_gcc_skip_go=yes
 cross_binutils_configure_args="--without-fp --enable-default-hash-style=sysv"
 cross_musl_cflags="-Os -march=mips32r2 -msoft-float"

From b51a8ad77733a543c0dc73ef30cec8c6c0060722 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 17 Jan 2021 16:42:06 +0100
Subject: [PATCH 0210/3482] cross-powerpc64le-linux-gnu: update to gcc
 10.2.1pre1

---
 srcpkgs/cross-powerpc64le-linux-gnu/template | 31 ++++++++++++--------
 1 file changed, 18 insertions(+), 13 deletions(-)

diff --git a/srcpkgs/cross-powerpc64le-linux-gnu/template b/srcpkgs/cross-powerpc64le-linux-gnu/template
index 05c5f381b75f..4dfb40ce3919 100644
--- a/srcpkgs/cross-powerpc64le-linux-gnu/template
+++ b/srcpkgs/cross-powerpc64le-linux-gnu/template
@@ -1,16 +1,16 @@
 # Template file for 'cross-powerpc64le-linux-gnu'
 _triplet=powerpc64le-linux-gnu
-_binutils_version=2.32
-_gcc_version=9.3.0
-_glibc_version=2.30
-_linux_version=4.19
+_binutils_version=2.35.1
+_gcc_version=10.2.1_pre1
+_glibc_version=2.32
+_linux_version=5.10.4
 pkgname=cross-${_triplet}
-version=0.33
+version=0.34
 revision=1
 build_style=void-cross
 configure_args="--enable-secureplt --disable-vtable-verify --with-abi=elfv2
  --enable-targets=powerpcle-linux"
-hostmakedepends="tar gcc-objc gcc-go flex perl python3"
+hostmakedepends="texinfo tar gcc-objc gcc-go flex perl python3"
 makedepends="isl15-devel libmpc-devel zlib-devel gmp-devel mpfr-devel"
 depends="${pkgname}-libc-${version}_${revision}"
 short_desc="Void cross toolchain for ${_triplet}"
@@ -19,18 +19,18 @@ license="GPL-2.0-or-later, GPL-3.0-or-later, LGPL-2.1-or-later"
 homepage="https://www.voidlinux.org/"
 distfiles="
  ${GNU_SITE}/binutils/binutils-${_binutils_version}.tar.xz
- ${GNU_SITE}/gcc/gcc-${_gcc_version}/gcc-${_gcc_version}.tar.xz
+ https://dev.alpinelinux.org/~nenolod/gcc-${_gcc_version}.tar.xz
  ${GNU_SITE}/glibc/glibc-${_glibc_version}.tar.xz
- ${KERNEL_SITE}/kernel/v4.x/linux-${_linux_version}.tar.xz"
-checksum="0ab6c55dd86a92ed561972ba15b9b70a8b9f75557f896446c82e8b36e473ee04
- 71e197867611f6054aa1119b13a0c0abac12834765fe2d81f35ac57f84f742d1
- e2c4114e569afbe7edbc29131a43be833850ab9a459d81beb2588016d2bbb8af
- 0c68f5655528aed4f99dae71a5b259edc93239fa899e2df79c055275c21749a1"
+ ${KERNEL_SITE}/kernel/v5.x/linux-${_linux_version}.tar.xz"
+checksum="3ced91db9bf01182b7e420eab68039f2083aed0a214c0424e257eae3ddee8607
+ 772cfd5d30eb9cc5a996fec9ba8cdcb45d37df1c9b5770610103b814b732c590
+ 1627ea54f5a1a8467032563393e0901077626dc66f37f10ee6363bb722222836
+ 904e396c26e9992a16cd1cc989460171536bed7739bf36049f6eb020ee5d56ec"
 nocross=yes
 
 cross_triplet=${_triplet}
-cross_linux_arch=powerpc
 cross_binutils_configure_args="--enable-secureplt"
+cross_gcc_bootstrap_configure_args="--with-long-double-128"
 # explicitly enable for final gcc, gfortran does not build without on ppc64le
 cross_gcc_configure_args="--enable-libquadmath"
 cross_glibc_cflags="-O2"
@@ -39,6 +39,11 @@ if [ "$XBPS_TARGET_MACHINE" = "ppc64le" ]; then
 	broken="Can't build crosstoolchain to itself"
 fi
 
+case "$XBPS_MACHINE" in
+	ppc64*) ;;
+	ppc*|mips*) broken="no gccgo support";;
+esac
+
 cross-powerpc64le-linux-gnu-libc_package() {
 	short_desc+=" - glibc files"
 	nostrip=yes

From 6a6343d6f51e296343b86777aeef1217607baf4c Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 17 Jan 2021 16:42:06 +0100
Subject: [PATCH 0211/3482] cross-powerpc64le-linux-musl: update to gcc
 10.2.1pre1

---
 srcpkgs/cross-powerpc64le-linux-musl/template | 37 ++++++++++---------
 1 file changed, 20 insertions(+), 17 deletions(-)

diff --git a/srcpkgs/cross-powerpc64le-linux-musl/template b/srcpkgs/cross-powerpc64le-linux-musl/template
index 0e32fc952d96..5401f15542fe 100644
--- a/srcpkgs/cross-powerpc64le-linux-musl/template
+++ b/srcpkgs/cross-powerpc64le-linux-musl/template
@@ -1,17 +1,17 @@
 # Template file for 'cross-powerpc64le-linux-musl'
 _triplet=powerpc64le-linux-musl
-_binutils_version=2.32
-_gcc_version=9.3.0
+_binutils_version=2.35.1
+_gcc_version=10.2.1_pre1
 _musl_version=1.1.24
-_linux_version=4.19
-_libucontext_version=0.9.0
+_linux_version=5.10.4
+_libucontext_version=1.0
 pkgname=cross-${_triplet}
-version=0.33
-revision=2
+version=0.34
+revision=1
 build_style=void-cross
 configure_args="--enable-secureplt --disable-vtable-verify
  --disable-decimal-float --with-abi=elfv2 --enable-targets=powerpcle-linux"
-hostmakedepends="tar gcc-objc gcc-go flex perl python3"
+hostmakedepends="texinfo tar gcc-objc gcc-go flex perl python3"
 makedepends="isl15-devel libmpc-devel zlib-devel gmp-devel mpfr-devel"
 depends="${pkgname}-libc-${version}_${revision}"
 short_desc="Void cross toolchain for ${_triplet}"
@@ -20,20 +20,18 @@ homepage="https://www.voidlinux.org/"
 license="GPL-2.0-or-later, GPL-3.0-or-later, MIT"
 distfiles="
  ${GNU_SITE}/binutils/binutils-${_binutils_version}.tar.xz
- ${GNU_SITE}/gcc/gcc-${_gcc_version}/gcc-${_gcc_version}.tar.xz
- http://www.musl-libc.org/releases/musl-${_musl_version}.tar.gz
- ${KERNEL_SITE}/kernel/v4.x/linux-${_linux_version}.tar.xz
- https://distfiles.adelielinux.org/source/libucontext/libucontext-${_libucontext_version}.tar.xz"
-checksum="0ab6c55dd86a92ed561972ba15b9b70a8b9f75557f896446c82e8b36e473ee04
- 71e197867611f6054aa1119b13a0c0abac12834765fe2d81f35ac57f84f742d1
+ https://dev.alpinelinux.org/~nenolod/gcc-${_gcc_version}.tar.xz
+ https://musl.libc.org/releases/musl-${_musl_version}.tar.gz
+ ${KERNEL_SITE}/kernel/v5.x/linux-${_linux_version}.tar.xz
+ https://github.com/kaniini/libucontext/archive/libucontext-${_libucontext_version}.tar.gz"
+checksum="3ced91db9bf01182b7e420eab68039f2083aed0a214c0424e257eae3ddee8607
+ 772cfd5d30eb9cc5a996fec9ba8cdcb45d37df1c9b5770610103b814b732c590
  1370c9a812b2cf2a7d92802510cca0058cc37e66a7bedd70051f0a34015022a3
- 0c68f5655528aed4f99dae71a5b259edc93239fa899e2df79c055275c21749a1
- 0d53a415a307ef175153bbe60a572c940a922cb736ce13530b666e7ec2795d68"
+ 904e396c26e9992a16cd1cc989460171536bed7739bf36049f6eb020ee5d56ec
+ 23714e99a87f6dea82e8a073c526325161dd65462459820b16a6162be91955bb"
 nocross=yes
 
 cross_triplet=${_triplet}
-cross_libucontext_arch=ppc64
-cross_linux_arch=powerpc
 cross_binutils_configure_args="--enable-secureplt"
 cross_musl_cflags="-O2"
 
@@ -41,6 +39,11 @@ if [ "$XBPS_TARGET_MACHINE" = "ppc64le-musl" ]; then
 	broken="Can't build crosstoolchain to itself"
 fi
 
+case "$XBPS_MACHINE" in
+	ppc64*) ;;
+	ppc*|mips*) broken="no gccgo support";;
+esac
+
 cross-powerpc64le-linux-musl-libc_package() {
 	short_desc+=" - libc files"
 	nostrip=yes

From e9715d1b4085df16a034ca61085152086be46d24 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 17 Jan 2021 16:42:06 +0100
Subject: [PATCH 0212/3482] cross-powerpc64-linux-gnu: update to gcc 10.2.1pre1

---
 srcpkgs/cross-powerpc64-linux-gnu/template | 31 +++++++++++++---------
 1 file changed, 18 insertions(+), 13 deletions(-)

diff --git a/srcpkgs/cross-powerpc64-linux-gnu/template b/srcpkgs/cross-powerpc64-linux-gnu/template
index 46514ae1e17b..720e3859d10f 100644
--- a/srcpkgs/cross-powerpc64-linux-gnu/template
+++ b/srcpkgs/cross-powerpc64-linux-gnu/template
@@ -1,16 +1,16 @@
 # Template file for 'cross-powerpc64-linux-gnu'
 _triplet=powerpc64-linux-gnu
-_binutils_version=2.32
-_gcc_version=9.3.0
-_glibc_version=2.30
-_linux_version=4.19
+_binutils_version=2.35.1
+_gcc_version=10.2.1_pre1
+_glibc_version=2.32
+_linux_version=5.10.4
 pkgname=cross-${_triplet}
-version=0.33
+version=0.34
 revision=1
 build_style=void-cross
 configure_args="--enable-secureplt --disable-vtable-verify --with-abi=elfv2
  --enable-targets=powerpc-linux"
-hostmakedepends="tar gcc-objc gcc-go flex perl python3"
+hostmakedepends="texinfo tar gcc-objc gcc-go flex perl python3"
 makedepends="isl15-devel libmpc-devel zlib-devel gmp-devel mpfr-devel"
 depends="${pkgname}-libc-${version}_${revision}"
 short_desc="Void cross toolchain for ${_triplet}"
@@ -19,24 +19,29 @@ license="GPL-2.0-or-later, GPL-3.0-or-later, LGPL-2.1-or-later"
 homepage="https://www.voidlinux.org/"
 distfiles="
  ${GNU_SITE}/binutils/binutils-${_binutils_version}.tar.xz
- ${GNU_SITE}/gcc/gcc-${_gcc_version}/gcc-${_gcc_version}.tar.xz
+ https://dev.alpinelinux.org/~nenolod/gcc-${_gcc_version}.tar.xz
  ${GNU_SITE}/glibc/glibc-${_glibc_version}.tar.xz
- ${KERNEL_SITE}/kernel/v4.x/linux-${_linux_version}.tar.xz"
-checksum="0ab6c55dd86a92ed561972ba15b9b70a8b9f75557f896446c82e8b36e473ee04
- 71e197867611f6054aa1119b13a0c0abac12834765fe2d81f35ac57f84f742d1
- e2c4114e569afbe7edbc29131a43be833850ab9a459d81beb2588016d2bbb8af
- 0c68f5655528aed4f99dae71a5b259edc93239fa899e2df79c055275c21749a1"
+ ${KERNEL_SITE}/kernel/v5.x/linux-${_linux_version}.tar.xz"
+checksum="3ced91db9bf01182b7e420eab68039f2083aed0a214c0424e257eae3ddee8607
+ 772cfd5d30eb9cc5a996fec9ba8cdcb45d37df1c9b5770610103b814b732c590
+ 1627ea54f5a1a8467032563393e0901077626dc66f37f10ee6363bb722222836
+ 904e396c26e9992a16cd1cc989460171536bed7739bf36049f6eb020ee5d56ec"
 nocross=yes
 
 cross_triplet=${_triplet}
-cross_linux_arch=powerpc
 cross_binutils_configure_args="--enable-secureplt"
+cross_gcc_bootstrap_configure_args="--with-long-double-128"
 cross_glibc_cflags="-O2"
 
 if [ "$XBPS_TARGET_MACHINE" = "ppc64" ]; then
 	broken="Can't build crosstoolchain to itself"
 fi
 
+case "$XBPS_MACHINE" in
+	ppc64*) ;;
+	ppc*|mips*) broken="no gccgo support";;
+esac
+
 cross-powerpc64-linux-gnu-libc_package() {
 	short_desc+=" - glibc files"
 	nostrip=yes

From def5713bac533b3de22daf700c7fa1fb99b5abc9 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 17 Jan 2021 16:42:06 +0100
Subject: [PATCH 0213/3482] cross-powerpc64-linux-musl: update to gcc
 10.2.1pre1

---
 srcpkgs/cross-powerpc64-linux-musl/template | 37 +++++++++++----------
 1 file changed, 20 insertions(+), 17 deletions(-)

diff --git a/srcpkgs/cross-powerpc64-linux-musl/template b/srcpkgs/cross-powerpc64-linux-musl/template
index b7c09d7f1ae7..ce0caee811f1 100644
--- a/srcpkgs/cross-powerpc64-linux-musl/template
+++ b/srcpkgs/cross-powerpc64-linux-musl/template
@@ -1,17 +1,17 @@
 # Template file for 'cross-powerpc64-linux-musl'
 _triplet=powerpc64-linux-musl
-_binutils_version=2.32
-_gcc_version=9.3.0
+_binutils_version=2.35.1
+_gcc_version=10.2.1_pre1
 _musl_version=1.1.24
-_linux_version=4.19
-_libucontext_version=0.9.0
+_linux_version=5.10.4
+_libucontext_version=1.0
 pkgname=cross-${_triplet}
-version=0.33
-revision=2
+version=0.34
+revision=1
 build_style=void-cross
 configure_args="--enable-secureplt --disable-vtable-verify
  --disable-decimal-float --with-abi=elfv2 --enable-targets=powerpc-linux"
-hostmakedepends="tar gcc-objc gcc-go flex perl python3"
+hostmakedepends="texinfo tar gcc-objc gcc-go flex perl python3"
 makedepends="isl15-devel libmpc-devel zlib-devel gmp-devel mpfr-devel"
 depends="${pkgname}-libc-${version}_${revision}"
 short_desc="Void cross toolchain for ${_triplet}"
@@ -20,20 +20,18 @@ homepage="https://www.voidlinux.org/"
 license="GPL-2.0-or-later, GPL-3.0-or-later, MIT"
 distfiles="
  ${GNU_SITE}/binutils/binutils-${_binutils_version}.tar.xz
- ${GNU_SITE}/gcc/gcc-${_gcc_version}/gcc-${_gcc_version}.tar.xz
- http://www.musl-libc.org/releases/musl-${_musl_version}.tar.gz
- ${KERNEL_SITE}/kernel/v4.x/linux-${_linux_version}.tar.xz
- https://distfiles.adelielinux.org/source/libucontext/libucontext-${_libucontext_version}.tar.xz"
-checksum="0ab6c55dd86a92ed561972ba15b9b70a8b9f75557f896446c82e8b36e473ee04
- 71e197867611f6054aa1119b13a0c0abac12834765fe2d81f35ac57f84f742d1
+ https://dev.alpinelinux.org/~nenolod/gcc-${_gcc_version}.tar.xz
+ https://musl.libc.org/releases/musl-${_musl_version}.tar.gz
+ ${KERNEL_SITE}/kernel/v5.x/linux-${_linux_version}.tar.xz
+ https://github.com/kaniini/libucontext/archive/libucontext-${_libucontext_version}.tar.gz"
+checksum="3ced91db9bf01182b7e420eab68039f2083aed0a214c0424e257eae3ddee8607
+ 772cfd5d30eb9cc5a996fec9ba8cdcb45d37df1c9b5770610103b814b732c590
  1370c9a812b2cf2a7d92802510cca0058cc37e66a7bedd70051f0a34015022a3
- 0c68f5655528aed4f99dae71a5b259edc93239fa899e2df79c055275c21749a1
- 0d53a415a307ef175153bbe60a572c940a922cb736ce13530b666e7ec2795d68"
+ 904e396c26e9992a16cd1cc989460171536bed7739bf36049f6eb020ee5d56ec
+ 23714e99a87f6dea82e8a073c526325161dd65462459820b16a6162be91955bb"
 nocross=yes
 
 cross_triplet=${_triplet}
-cross_libucontext_arch=ppc64
-cross_linux_arch=powerpc
 cross_binutils_configure_args="--enable-secureplt"
 cross_musl_cflags="-O2"
 
@@ -41,6 +39,11 @@ if [ "$XBPS_TARGET_MACHINE" = "ppc64-musl" ]; then
 	broken="Can't build crosstoolchain to itself"
 fi
 
+case "$XBPS_MACHINE" in
+	ppc64*) ;;
+	ppc*|mips*) broken="no gccgo support";;
+esac
+
 cross-powerpc64-linux-musl-libc_package() {
 	short_desc+=" - libc files"
 	nostrip=yes

From c3f22c565a36ede512d9317598c367e1dd870e9b Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 17 Jan 2021 16:42:06 +0100
Subject: [PATCH 0214/3482] cross-powerpcle-linux-gnu: update to gcc 10.2.1pre1

---
 srcpkgs/cross-powerpcle-linux-gnu/template | 26 +++++++++++-----------
 1 file changed, 13 insertions(+), 13 deletions(-)

diff --git a/srcpkgs/cross-powerpcle-linux-gnu/template b/srcpkgs/cross-powerpcle-linux-gnu/template
index d071581bfb1a..9b081500e3d3 100644
--- a/srcpkgs/cross-powerpcle-linux-gnu/template
+++ b/srcpkgs/cross-powerpcle-linux-gnu/template
@@ -1,15 +1,15 @@
 # Template file for 'cross-powerpcle-linux-gnu'
 _triplet=powerpcle-linux-gnu
-_binutils_version=2.32
-_gcc_version=9.3.0
-_glibc_version=2.30
-_linux_version=4.19
+_binutils_version=2.35.1
+_gcc_version=10.2.1_pre1
+_glibc_version=2.32
+_linux_version=5.10.4
 pkgname=cross-${_triplet}
-version=0.33
+version=0.34
 revision=1
 build_style=void-cross
 configure_args="--enable-secureplt --disable-vtable-verify"
-hostmakedepends="tar gcc-objc flex perl python3"
+hostmakedepends="texinfo tar gcc-objc flex perl python3"
 makedepends="isl15-devel libmpc-devel zlib-devel gmp-devel mpfr-devel"
 depends="${pkgname}-libc-${version}_${revision}"
 short_desc="Void cross toolchain for ${_triplet}"
@@ -18,19 +18,19 @@ license="GPL-2.0-or-later, GPL-3.0-or-later, LGPL-2.1-or-later"
 homepage="https://www.voidlinux.org/"
 distfiles="
  ${GNU_SITE}/binutils/binutils-${_binutils_version}.tar.xz
- ${GNU_SITE}/gcc/gcc-${_gcc_version}/gcc-${_gcc_version}.tar.xz
+ https://dev.alpinelinux.org/~nenolod/gcc-${_gcc_version}.tar.xz
  ${GNU_SITE}/glibc/glibc-${_glibc_version}.tar.xz
- ${KERNEL_SITE}/kernel/v4.x/linux-${_linux_version}.tar.xz"
-checksum="0ab6c55dd86a92ed561972ba15b9b70a8b9f75557f896446c82e8b36e473ee04
- 71e197867611f6054aa1119b13a0c0abac12834765fe2d81f35ac57f84f742d1
- e2c4114e569afbe7edbc29131a43be833850ab9a459d81beb2588016d2bbb8af
- 0c68f5655528aed4f99dae71a5b259edc93239fa899e2df79c055275c21749a1"
+ ${KERNEL_SITE}/kernel/v5.x/linux-${_linux_version}.tar.xz"
+checksum="3ced91db9bf01182b7e420eab68039f2083aed0a214c0424e257eae3ddee8607
+ 772cfd5d30eb9cc5a996fec9ba8cdcb45d37df1c9b5770610103b814b732c590
+ 1627ea54f5a1a8467032563393e0901077626dc66f37f10ee6363bb722222836
+ 904e396c26e9992a16cd1cc989460171536bed7739bf36049f6eb020ee5d56ec"
 nocross=yes
 
 cross_triplet=${_triplet}
-cross_linux_arch=powerpc
 cross_gcc_skip_go=yes
 cross_binutils_configure_args="--enable-secureplt"
+cross_gcc_bootstrap_configure_args="--with-long-double-128"
 cross_glibc_cflags="-O2"
 
 if [ "$XBPS_TARGET_MACHINE" = "ppcle" ]; then

From ffa1bbb780829e001b142d70cfa9b54eece95bcc Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 17 Jan 2021 16:42:06 +0100
Subject: [PATCH 0215/3482] cross-powerpcle-linux-musl: update to gcc
 10.2.1pre1

---
 srcpkgs/cross-powerpcle-linux-musl/template | 23 ++++++++++-----------
 1 file changed, 11 insertions(+), 12 deletions(-)

diff --git a/srcpkgs/cross-powerpcle-linux-musl/template b/srcpkgs/cross-powerpcle-linux-musl/template
index 864adb978cc8..42500f043eae 100644
--- a/srcpkgs/cross-powerpcle-linux-musl/template
+++ b/srcpkgs/cross-powerpcle-linux-musl/template
@@ -1,16 +1,16 @@
 # Template file for 'cross-powerpcle-linux-musl'
 _triplet=powerpcle-linux-musl
-_binutils_version=2.32
-_gcc_version=9.3.0
+_binutils_version=2.35.1
+_gcc_version=10.2.1_pre1
 _musl_version=1.1.24
-_linux_version=4.19
+_linux_version=5.10.4
 pkgname=cross-${_triplet}
-version=0.33
+version=0.34
 revision=1
 build_style=void-cross
 configure_args="--enable-secureplt --disable-vtable-verify
  --disable-decimal-float"
-hostmakedepends="tar gcc-objc flex perl python3"
+hostmakedepends="texinfo tar gcc-objc flex perl python3"
 makedepends="isl15-devel libmpc-devel zlib-devel gmp-devel mpfr-devel"
 depends="${pkgname}-libc-${version}_${revision}"
 short_desc="Void cross toolchain for ${_triplet}"
@@ -19,17 +19,16 @@ homepage="https://www.voidlinux.org/"
 license="GPL-2.0-or-later, GPL-3.0-or-later, MIT"
 distfiles="
  ${GNU_SITE}/binutils/binutils-${_binutils_version}.tar.xz
- ${GNU_SITE}/gcc/gcc-${_gcc_version}/gcc-${_gcc_version}.tar.xz
- http://www.musl-libc.org/releases/musl-${_musl_version}.tar.gz
- ${KERNEL_SITE}/kernel/v4.x/linux-${_linux_version}.tar.xz"
-checksum="0ab6c55dd86a92ed561972ba15b9b70a8b9f75557f896446c82e8b36e473ee04
- 71e197867611f6054aa1119b13a0c0abac12834765fe2d81f35ac57f84f742d1
+ https://dev.alpinelinux.org/~nenolod/gcc-${_gcc_version}.tar.xz
+ https://musl.libc.org/releases/musl-${_musl_version}.tar.gz
+ ${KERNEL_SITE}/kernel/v5.x/linux-${_linux_version}.tar.xz"
+checksum="3ced91db9bf01182b7e420eab68039f2083aed0a214c0424e257eae3ddee8607
+ 772cfd5d30eb9cc5a996fec9ba8cdcb45d37df1c9b5770610103b814b732c590
  1370c9a812b2cf2a7d92802510cca0058cc37e66a7bedd70051f0a34015022a3
- 0c68f5655528aed4f99dae71a5b259edc93239fa899e2df79c055275c21749a1"
+ 904e396c26e9992a16cd1cc989460171536bed7739bf36049f6eb020ee5d56ec"
 nocross=yes
 
 cross_triplet=${_triplet}
-cross_linux_arch=powerpc
 cross_gcc_skip_go=yes
 cross_binutils_configure_args="--enable-secureplt"
 cross_musl_cflags="-O2"

From 221064e5e68f433461d7d6edf4767a907a18f1f4 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 17 Jan 2021 16:42:07 +0100
Subject: [PATCH 0216/3482] cross-powerpc-linux-gnu: update to gcc 10.2.1pre1

---
 srcpkgs/cross-powerpc-linux-gnu/template | 29 ++++++++++++------------
 1 file changed, 15 insertions(+), 14 deletions(-)

diff --git a/srcpkgs/cross-powerpc-linux-gnu/template b/srcpkgs/cross-powerpc-linux-gnu/template
index 30f0c31bf97c..98c8d18bba81 100644
--- a/srcpkgs/cross-powerpc-linux-gnu/template
+++ b/srcpkgs/cross-powerpc-linux-gnu/template
@@ -1,15 +1,15 @@
 # Template file for 'cross-powerpc-linux-gnu'
 _triplet=powerpc-linux-gnu
-_binutils_version=2.32
-_gcc_version=9.3.0
-_glibc_version=2.30
-_linux_version=4.19
+_binutils_version=2.35.1
+_gcc_version=10.2.1_pre1
+_glibc_version=2.32
+_linux_version=5.10.4
 pkgname=cross-${_triplet}
-version=0.33
-revision=3
+version=0.34
+revision=1
 build_style=void-cross
 configure_args="--enable-secureplt --disable-vtable-verify"
-hostmakedepends="tar gcc-objc gcc-go flex perl python3"
+hostmakedepends="texinfo tar gcc-objc flex perl python3"
 makedepends="isl15-devel libmpc-devel zlib-devel gmp-devel mpfr-devel"
 depends="${pkgname}-libc-${version}_${revision}"
 short_desc="Void cross toolchain for ${_triplet}"
@@ -18,18 +18,19 @@ license="GPL-2.0-or-later, GPL-3.0-or-later, LGPL-2.1-or-later"
 homepage="https://www.voidlinux.org/"
 distfiles="
  ${GNU_SITE}/binutils/binutils-${_binutils_version}.tar.xz
- ${GNU_SITE}/gcc/gcc-${_gcc_version}/gcc-${_gcc_version}.tar.xz
+ https://dev.alpinelinux.org/~nenolod/gcc-${_gcc_version}.tar.xz
  ${GNU_SITE}/glibc/glibc-${_glibc_version}.tar.xz
- ${KERNEL_SITE}/kernel/v4.x/linux-${_linux_version}.tar.xz"
-checksum="0ab6c55dd86a92ed561972ba15b9b70a8b9f75557f896446c82e8b36e473ee04
- 71e197867611f6054aa1119b13a0c0abac12834765fe2d81f35ac57f84f742d1
- e2c4114e569afbe7edbc29131a43be833850ab9a459d81beb2588016d2bbb8af
- 0c68f5655528aed4f99dae71a5b259edc93239fa899e2df79c055275c21749a1"
+ ${KERNEL_SITE}/kernel/v5.x/linux-${_linux_version}.tar.xz"
+checksum="3ced91db9bf01182b7e420eab68039f2083aed0a214c0424e257eae3ddee8607
+ 772cfd5d30eb9cc5a996fec9ba8cdcb45d37df1c9b5770610103b814b732c590
+ 1627ea54f5a1a8467032563393e0901077626dc66f37f10ee6363bb722222836
+ 904e396c26e9992a16cd1cc989460171536bed7739bf36049f6eb020ee5d56ec"
 nocross=yes
 
 cross_triplet=${_triplet}
-cross_linux_arch=powerpc
+cross_gcc_skip_go=yes
 cross_binutils_configure_args="--enable-secureplt"
+cross_gcc_bootstrap_configure_args="--with-long-double-128"
 cross_glibc_cflags="-O2"
 
 if [ "$XBPS_TARGET_MACHINE" = "ppc" ]; then

From c6ef2151803cc261be2362f739c5819691388894 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 17 Jan 2021 16:42:07 +0100
Subject: [PATCH 0217/3482] cross-powerpc-linux-musl: update to gcc 10.2.1pre1

---
 srcpkgs/cross-powerpc-linux-musl/template | 30 ++++++++++-------------
 1 file changed, 13 insertions(+), 17 deletions(-)

diff --git a/srcpkgs/cross-powerpc-linux-musl/template b/srcpkgs/cross-powerpc-linux-musl/template
index 4d52b396f23b..d2861b10e122 100644
--- a/srcpkgs/cross-powerpc-linux-musl/template
+++ b/srcpkgs/cross-powerpc-linux-musl/template
@@ -1,17 +1,16 @@
 # Template file for 'cross-powerpc-linux-musl'
 _triplet=powerpc-linux-musl
-_binutils_version=2.32
-_gcc_version=9.3.0
+_binutils_version=2.35.1
+_gcc_version=10.2.1_pre1
 _musl_version=1.1.24
-_linux_version=4.19
-_libucontext_version=0.9.0
+_linux_version=5.10.4
 pkgname=cross-${_triplet}
-version=0.33
-revision=2
+version=0.34
+revision=1
 build_style=void-cross
 configure_args="--enable-secureplt --disable-vtable-verify
  --disable-decimal-float"
-hostmakedepends="tar gcc-objc gcc-go flex perl python3"
+hostmakedepends="texinfo tar gcc-objc flex perl python3"
 makedepends="isl15-devel libmpc-devel zlib-devel gmp-devel mpfr-devel"
 depends="${pkgname}-libc-${version}_${revision}"
 short_desc="Void cross toolchain for ${_triplet}"
@@ -20,20 +19,17 @@ homepage="https://www.voidlinux.org/"
 license="GPL-2.0-or-later, GPL-3.0-or-later, MIT"
 distfiles="
  ${GNU_SITE}/binutils/binutils-${_binutils_version}.tar.xz
- ${GNU_SITE}/gcc/gcc-${_gcc_version}/gcc-${_gcc_version}.tar.xz
- http://www.musl-libc.org/releases/musl-${_musl_version}.tar.gz
- ${KERNEL_SITE}/kernel/v4.x/linux-${_linux_version}.tar.xz
- https://distfiles.adelielinux.org/source/libucontext/libucontext-${_libucontext_version}.tar.xz"
-checksum="0ab6c55dd86a92ed561972ba15b9b70a8b9f75557f896446c82e8b36e473ee04
- 71e197867611f6054aa1119b13a0c0abac12834765fe2d81f35ac57f84f742d1
+ https://dev.alpinelinux.org/~nenolod/gcc-${_gcc_version}.tar.xz
+ https://musl.libc.org/releases/musl-${_musl_version}.tar.gz
+ ${KERNEL_SITE}/kernel/v5.x/linux-${_linux_version}.tar.xz"
+checksum="3ced91db9bf01182b7e420eab68039f2083aed0a214c0424e257eae3ddee8607
+ 772cfd5d30eb9cc5a996fec9ba8cdcb45d37df1c9b5770610103b814b732c590
  1370c9a812b2cf2a7d92802510cca0058cc37e66a7bedd70051f0a34015022a3
- 0c68f5655528aed4f99dae71a5b259edc93239fa899e2df79c055275c21749a1
- 0d53a415a307ef175153bbe60a572c940a922cb736ce13530b666e7ec2795d68"
+ 904e396c26e9992a16cd1cc989460171536bed7739bf36049f6eb020ee5d56ec"
 nocross=yes
 
 cross_triplet=${_triplet}
-cross_libucontext_arch=ppc
-cross_linux_arch=powerpc
+cross_gcc_skip_go=yes
 cross_binutils_configure_args="--enable-secureplt"
 cross_musl_cflags="-O2"
 

From 3776ae39ce2348e0b1b537d861639ae7c3400e37 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 17 Jan 2021 16:42:07 +0100
Subject: [PATCH 0218/3482] cross-x86_64-linux-gnu: update to gcc 10.2.1pre1

---
 srcpkgs/cross-x86_64-linux-gnu/template | 30 ++++++++++++++-----------
 1 file changed, 17 insertions(+), 13 deletions(-)

diff --git a/srcpkgs/cross-x86_64-linux-gnu/template b/srcpkgs/cross-x86_64-linux-gnu/template
index d35f742f8847..e71b403dbbc0 100644
--- a/srcpkgs/cross-x86_64-linux-gnu/template
+++ b/srcpkgs/cross-x86_64-linux-gnu/template
@@ -1,14 +1,14 @@
 # Template file for 'cross-x86_64-linux-gnu'
 _triplet=x86_64-linux-gnu
-_binutils_version=2.32
-_gcc_version=9.3.0
-_glibc_version=2.30
-_linux_version=4.19
+_binutils_version=2.35.1
+_gcc_version=10.2.1_pre1
+_glibc_version=2.32
+_linux_version=5.10.4
 pkgname=cross-${_triplet}
-version=0.33
+version=0.34
 revision=1
 build_style=void-cross
-hostmakedepends="tar gcc-objc gcc-go flex perl python3"
+hostmakedepends="texinfo tar gcc-objc gcc-go flex perl python3"
 makedepends="isl15-devel libmpc-devel zlib-devel gmp-devel mpfr-devel"
 depends="${pkgname}-libc-${version}_${revision}"
 short_desc="Void cross toolchain for ${_triplet}"
@@ -17,17 +17,16 @@ license="GPL-2.0-or-later, GPL-3.0-or-later, LGPL-2.1-or-later"
 homepage="https://www.voidlinux.org/"
 distfiles="
  ${GNU_SITE}/binutils/binutils-${_binutils_version}.tar.xz
- ${GNU_SITE}/gcc/gcc-${_gcc_version}/gcc-${_gcc_version}.tar.xz
+ https://dev.alpinelinux.org/~nenolod/gcc-${_gcc_version}.tar.xz
  ${GNU_SITE}/glibc/glibc-${_glibc_version}.tar.xz
- ${KERNEL_SITE}/kernel/v4.x/linux-${_linux_version}.tar.xz"
-checksum="0ab6c55dd86a92ed561972ba15b9b70a8b9f75557f896446c82e8b36e473ee04
- 71e197867611f6054aa1119b13a0c0abac12834765fe2d81f35ac57f84f742d1
- e2c4114e569afbe7edbc29131a43be833850ab9a459d81beb2588016d2bbb8af
- 0c68f5655528aed4f99dae71a5b259edc93239fa899e2df79c055275c21749a1"
+ ${KERNEL_SITE}/kernel/v5.x/linux-${_linux_version}.tar.xz"
+checksum="3ced91db9bf01182b7e420eab68039f2083aed0a214c0424e257eae3ddee8607
+ 772cfd5d30eb9cc5a996fec9ba8cdcb45d37df1c9b5770610103b814b732c590
+ 1627ea54f5a1a8467032563393e0901077626dc66f37f10ee6363bb722222836
+ 904e396c26e9992a16cd1cc989460171536bed7739bf36049f6eb020ee5d56ec"
 nocross=yes
 
 cross_triplet=${_triplet}
-cross_linux_arch=x86
 # explicitly enable for final gcc, gfortran does not build without on x86
 cross_gcc_configure_args="--enable-libquadmath"
 cross_glibc_cflags="-O2"
@@ -36,6 +35,11 @@ if [ "$XBPS_TARGET_MACHINE" = "x86_64" ]; then
 	broken="Can't build crosstoolchain to itself"
 fi
 
+case "$XBPS_MACHINE" in
+	ppc64*) ;;
+	ppc*|mips*) broken="no gccgo support";;
+esac
+
 cross-x86_64-linux-gnu-libc_package() {
 	short_desc+=" - glibc files"
 	nostrip=yes

From ecbdc26d3482d12943ea0fa0bb8c8cb0cd6a3e1b Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 17 Jan 2021 16:42:07 +0100
Subject: [PATCH 0219/3482] cross-x86_64-linux-musl: update to gcc 10.2.1pre1

---
 srcpkgs/cross-x86_64-linux-musl/template | 37 +++++++++++++-----------
 1 file changed, 20 insertions(+), 17 deletions(-)

diff --git a/srcpkgs/cross-x86_64-linux-musl/template b/srcpkgs/cross-x86_64-linux-musl/template
index 65e3501c8d1a..892526793efb 100644
--- a/srcpkgs/cross-x86_64-linux-musl/template
+++ b/srcpkgs/cross-x86_64-linux-musl/template
@@ -1,15 +1,15 @@
 # Template file for 'cross-x86_64-linux-musl'
 _triplet=x86_64-linux-musl
-_binutils_version=2.32
-_gcc_version=9.3.0
+_binutils_version=2.35.1
+_gcc_version=10.2.1_pre1
 _musl_version=1.1.24
-_linux_version=4.19
-_libucontext_version=0.9.0
+_linux_version=5.10.4
+_libucontext_version=1.0
 pkgname=cross-${_triplet}
-version=0.33
-revision=4
+version=0.34
+revision=1
 build_style=void-cross
-hostmakedepends="tar gcc-objc gcc-go flex perl python3"
+hostmakedepends="texinfo tar gcc-objc gcc-go flex perl python3"
 makedepends="isl15-devel libmpc-devel zlib-devel gmp-devel mpfr-devel"
 depends="${pkgname}-libc-${version}_${revision}"
 short_desc="Void cross toolchain for ${_triplet}"
@@ -18,20 +18,18 @@ homepage="https://www.voidlinux.org/"
 license="GPL-2.0-or-later, GPL-3.0-or-later, MIT"
 distfiles="
  ${GNU_SITE}/binutils/binutils-${_binutils_version}.tar.xz
- ${GNU_SITE}/gcc/gcc-${_gcc_version}/gcc-${_gcc_version}.tar.xz
- http://www.musl-libc.org/releases/musl-${_musl_version}.tar.gz
- ${KERNEL_SITE}/kernel/v4.x/linux-${_linux_version}.tar.xz
- https://distfiles.adelielinux.org/source/libucontext/libucontext-${_libucontext_version}.tar.xz"
-checksum="0ab6c55dd86a92ed561972ba15b9b70a8b9f75557f896446c82e8b36e473ee04
- 71e197867611f6054aa1119b13a0c0abac12834765fe2d81f35ac57f84f742d1
+ https://dev.alpinelinux.org/~nenolod/gcc-${_gcc_version}.tar.xz
+ https://musl.libc.org/releases/musl-${_musl_version}.tar.gz
+ ${KERNEL_SITE}/kernel/v5.x/linux-${_linux_version}.tar.xz
+ https://github.com/kaniini/libucontext/archive/libucontext-${_libucontext_version}.tar.gz"
+checksum="3ced91db9bf01182b7e420eab68039f2083aed0a214c0424e257eae3ddee8607
+ 772cfd5d30eb9cc5a996fec9ba8cdcb45d37df1c9b5770610103b814b732c590
  1370c9a812b2cf2a7d92802510cca0058cc37e66a7bedd70051f0a34015022a3
- 0c68f5655528aed4f99dae71a5b259edc93239fa899e2df79c055275c21749a1
- 0d53a415a307ef175153bbe60a572c940a922cb736ce13530b666e7ec2795d68"
+ 904e396c26e9992a16cd1cc989460171536bed7739bf36049f6eb020ee5d56ec
+ 23714e99a87f6dea82e8a073c526325161dd65462459820b16a6162be91955bb"
 nocross=yes
 
 cross_triplet=${_triplet}
-cross_libucontext_arch=x86_64
-cross_linux_arch=x86
 # explicitly enable for final gcc, gfortran does not build without on x86
 cross_gcc_configure_args="--enable-libquadmath"
 cross_musl_cflags="-O2"
@@ -40,6 +38,11 @@ if [ "$XBPS_TARGET_MACHINE" = "x86_64-musl" ]; then
 	broken="Can't build crosstoolchain to itself"
 fi
 
+case "$XBPS_MACHINE" in
+	ppc64*) ;;
+	ppc*|mips*) broken="no gccgo support";;
+esac
+
 cross-x86_64-linux-musl-libc_package() {
 	short_desc+=" - libc files"
 	nostrip=yes

From f42dae75f5ca9be69c5713220d2089742566882d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?J=C3=BCrgen=20Buchm=C3=BCller?= <pullmoll@t-online.de>
Date: Wed, 20 Jan 2021 22:10:40 +0100
Subject: [PATCH 0220/3482] musl-nscd: fix build w/ gcc10

---
 srcpkgs/musl-nscd/template | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/srcpkgs/musl-nscd/template b/srcpkgs/musl-nscd/template
index 131d1e91f285..6a9440c96498 100644
--- a/srcpkgs/musl-nscd/template
+++ b/srcpkgs/musl-nscd/template
@@ -12,6 +12,8 @@ homepage="https://github.com/pikhq/musl-nscd"
 distfiles="https://github.com/pikhq/musl-nscd/archive/v$version.tar.gz"
 checksum=d0aae668bf2b5d0dd1e22fd00feec6cb0e0a6801c63a13827d4f407c33d8933a
 
+CFLAGS="-fcommon"
+
 post_install() {
 	vlicense COPYRIGHT
 	vsv nscd

From 5b7ed9c985b8a006aa808db51d2237c71fcc0d3e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Lucas=20Treffenst=C3=A4dt?=
 <lucas.treffenstaedt@tngtech.com>
Date: Thu, 7 Jan 2021 09:59:10 +0100
Subject: [PATCH 0221/3482] intellij-idea-ultimate-edition: update to 2020.3.1.

---
 srcpkgs/intellij-idea-ultimate-edition/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/intellij-idea-ultimate-edition/template b/srcpkgs/intellij-idea-ultimate-edition/template
index f60a71bb2df4..c8a9ae55c553 100644
--- a/srcpkgs/intellij-idea-ultimate-edition/template
+++ b/srcpkgs/intellij-idea-ultimate-edition/template
@@ -1,16 +1,16 @@
 # Template file for 'intellij-idea-ultimate-edition'
 pkgname=intellij-idea-ultimate-edition
-version=2020.3
+version=2020.3.1
 revision=1
 archs="i686 x86_64"
-wrksrc="idea-IU-203.5981.155"
+wrksrc="idea-IU-203.6682.168"
 depends="giflib libXtst jetbrains-jdk-bin"
 short_desc="Most intelligent Java IDE"
 maintainer="Anton Afanasyev <anton@doubleasoftware.com>"
 license="custom:Commercial"
 homepage="https://www.jetbrains.com/idea"
 distfiles="https://download.jetbrains.com/idea/ideaIU-${version}-no-jbr.tar.gz"
-checksum=43a10e1be8075ebd07bafcbe65ef431db304ee96c3072ff308e188fb9fdbcbd0
+checksum=50352d1ed9690e750f7b96ecceadb7288879afd7444e752f57c49845b0029fcf
 repository=nonfree
 restricted=yes
 nopie=yes

From 7a9dcec601a5ffc2b4d5f47ba036c716b3741274 Mon Sep 17 00:00:00 2001
From: lemmi <lemmi@nerd2nerd.org>
Date: Thu, 21 Jan 2021 06:40:49 +0100
Subject: [PATCH 0222/3482] compsize: update to 1.4.

---
 srcpkgs/compsize/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/compsize/template b/srcpkgs/compsize/template
index 79e1194efb57..9a37a59f8c89 100644
--- a/srcpkgs/compsize/template
+++ b/srcpkgs/compsize/template
@@ -1,6 +1,6 @@
 # Template file for 'compsize'
 pkgname=compsize
-version=1.3
+version=1.4
 revision=1
 build_style=gnu-makefile
 makedepends="libbtrfs-devel"
@@ -9,7 +9,7 @@ maintainer="lemmi <lemmi@nerd2nerd.org>"
 license="GPL-2.0-or-later"
 homepage="https://github.com/kilobyte/compsize"
 distfiles="https://github.com/kilobyte/compsize/archive/v${version}.tar.gz"
-checksum=c10823c940641404cd6eb9c801d43b307e87e9252e8eded66eed8be750c4f884
+checksum=4c6dd5812c8809cbe645b815ceefbd81a1a9c2c6da383d827b4d6457ecbb2c03
 
 do_install() {
 	vbin compsize

From b5adb99cb25704fe84e6555b267909b91f1eaed8 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 17 Jan 2021 06:39:12 +0100
Subject: [PATCH 0223/3482] PopCorn: rebuild for gcc10

---
 srcpkgs/PopCorn/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/PopCorn/template b/srcpkgs/PopCorn/template
index 6fab1a242d85..47abb044004f 100644
--- a/srcpkgs/PopCorn/template
+++ b/srcpkgs/PopCorn/template
@@ -1,7 +1,7 @@
 # Template file for 'PopCorn'
 pkgname=PopCorn
 version=0.4
-revision=3
+revision=4
 build_style=go
 go_import_path=github.com/the-maldridge/popcorn
 go_package="${go_import_path}/cmd/popcorn

From 2acdbd373cfc9ba4f2ef4e8bb17e0664b55e1e69 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 17 Jan 2021 15:57:40 +0100
Subject: [PATCH 0224/3482] PopCorn: nocross for now

---
 srcpkgs/PopCorn/template | 1 +
 1 file changed, 1 insertion(+)

diff --git a/srcpkgs/PopCorn/template b/srcpkgs/PopCorn/template
index 47abb044004f..4fefa7e320b6 100644
--- a/srcpkgs/PopCorn/template
+++ b/srcpkgs/PopCorn/template
@@ -16,6 +16,7 @@ license="MIT"
 homepage="https://github.com/the-maldridge/PopCorn"
 distfiles="https://github.com/the-maldridge/PopCorn/archive/v${version}.tar.gz"
 checksum=b25589802c5e1c277d2e9536add44704a012359b02d7fb4be1b4b0f11eb10d93
+nocross=yes
 
 system_accounts="_popcorn"
 _popcorn_homedir="/var/lib/popcorn"

From 33644a33a947a285659cd8959fde5b1c381e8439 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Sun, 17 Jan 2021 15:55:52 +0100
Subject: [PATCH 0225/3482] ghdl: rebuild for gcc10

---
 srcpkgs/ghdl/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/ghdl/template b/srcpkgs/ghdl/template
index b89aaf924538..9e4baf3b68a5 100644
--- a/srcpkgs/ghdl/template
+++ b/srcpkgs/ghdl/template
@@ -2,7 +2,7 @@
 pkgname=ghdl
 reverts="20181129_1"
 version=0.37
-revision=1
+revision=2
 archs="i686* x86_64*"
 build_style=configure
 configure_args="--prefix=/usr"

From 7011ed2292137a434b212022e71a19d323cb76b1 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Mon, 18 Jan 2021 23:04:58 +0100
Subject: [PATCH 0226/3482] openssh: rebuild for time64

---
 srcpkgs/openssh/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/openssh/template b/srcpkgs/openssh/template
index 8878dd9ca65c..119ba23a2a13 100644
--- a/srcpkgs/openssh/template
+++ b/srcpkgs/openssh/template
@@ -1,7 +1,7 @@
 # Template file for 'openssh'
 pkgname=openssh
 version=8.4p1
-revision=3
+revision=4
 build_style=gnu-configure
 configure_args="--datadir=/usr/share/openssh
  --sysconfdir=/etc/ssh --without-selinux --with-privsep-user=nobody

From 3c6e5489ab73bb0b71daeeddcba540a21174b954 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Thu, 21 Jan 2021 11:13:53 +0100
Subject: [PATCH 0227/3482] Revert "gcc: nocross for now"

This reverts commit 6ae6e7f02680b10f0b56e82ac2dabd0a9c466548.
---
 srcpkgs/gcc/template | 1 -
 1 file changed, 1 deletion(-)

diff --git a/srcpkgs/gcc/template b/srcpkgs/gcc/template
index 183451d352df..f7fa99383b13 100644
--- a/srcpkgs/gcc/template
+++ b/srcpkgs/gcc/template
@@ -35,7 +35,6 @@ nopie=yes
 lib32disabled=yes
 bootstrap=yes
 replaces="gcc-gcj<7.2.0 gcc-gcj-jdk-compat<7.2.0 libmpx>=0 libmpx-devel>=0"
-nocross=yes
 
 _have_gccgo=yes
 

From 0b13497597c54c2e939ac38b476a8c25c49c7320 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Thu, 21 Jan 2021 12:13:15 +0100
Subject: [PATCH 0228/3482] gcc: disable gccgo on cross+musl for now

we'll have to figure this out...
---
 srcpkgs/gcc/template | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/srcpkgs/gcc/template b/srcpkgs/gcc/template
index f7fa99383b13..a346b50d56dc 100644
--- a/srcpkgs/gcc/template
+++ b/srcpkgs/gcc/template
@@ -46,6 +46,11 @@ case "$XBPS_TARGET_MACHINE" in
 	mips*-musl|ppc*) _have_gccgo=no ;;
 esac
 
+# FIXME
+if [ -n "$CROSS_BUILD" -a "$XBPS_TARGET_LIBC" = "musl" ]; then
+	_have_gccgo=no
+fi
+
 if [ "$CHROOT_READY" ]; then
 	hostmakedepends="tar texinfo perl flex"
 else

From 86b7c62b9bd399e1f84014d10dabe284fc406422 Mon Sep 17 00:00:00 2001
From: q66 <daniel@octaforge.org>
Date: Thu, 21 Jan 2021 12:16:46 +0100
Subject: [PATCH 0229/3482] PopCorn: remove nocross and use go on musl
 crosstargets

---
 srcpkgs/PopCorn/template | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/PopCorn/template b/srcpkgs/PopCorn/template
index 4fefa7e320b6..fe84490de6b5 100644
--- a/srcpkgs/PopCorn/template
+++ b/srcpkgs/PopCorn/template
@@ -8,7 +8,7 @@ go_package="${go_import_path}/cmd/popcorn
  ${go_import_path}/cmd/popcornctl
  ${go_import_path}/cmd/statrepo
  ${go_import_path}/cmd/pqueryd"
-hostmakedepends="gcc-go-tools git"
+hostmakedepends="git"
 depends="snooze"
 short_desc="Package statistics system"
 maintainer="Michael Aldridge <maldridge@voidlinux.org>"
@@ -16,7 +16,10 @@ license="MIT"
 homepage="https://github.com/the-maldridge/PopCorn"
 distfiles="https://github.com/the-maldridge/PopCorn/archive/v${version}.tar.gz"
 checksum=b25589802c5e1c277d2e9536add44704a012359b02d7fb4be1b4b0f11eb10d93
-nocross=yes
+
+if [ -z "$CROSS_BUILD" -o "$XBPS_TARGET_LIBC" != "musl" ]; then
+	hostmakedepends+=" gcc-go-tools"
+fi
 
 system_accounts="_popcorn"
 _popcorn_homedir="/var/lib/popcorn"

From b264ea24c2a5579306254ec4a4684259e87fbf74 Mon Sep 17 00:00:00 2001
From: John <me@johnnynator.dev>
Date: Thu, 12 Nov 2020 21:29:37 +0100
Subject: [PATCH 0230/3482] glibc: update to 2.32.

---
 common/shlibs          |  2 --
 srcpkgs/glibc/template | 10 +++++-----
 2 files changed, 5 insertions(+), 7 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index e030495fd63d..670be76ec65a 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -40,8 +40,6 @@ libnss_files.so.2 glibc-2.29_1
 libnss_compat.so.2 glibc-2.29_1
 libnss_dns.so.2 glibc-2.29_1
 libnss_hesiod.so.2 glibc-2.29_1
-libnss_nisplus.so.2 glibc-2.29_1
-libnss_nis.so.2 glibc-2.29_1
 libcrypt.so.1 glibc-2.29_1
 libBrokenLocale.so.1 glibc-2.29_1
 libmemusage.so glibc-2.29_1
diff --git a/srcpkgs/glibc/template b/srcpkgs/glibc/template
index dda99ba608d2..9202e4145453 100644
--- a/srcpkgs/glibc/template
+++ b/srcpkgs/glibc/template
@@ -1,14 +1,14 @@
 # Template file for 'glibc'
 pkgname=glibc
-version=2.30
-revision=2
+version=2.32
+revision=1
 bootstrap=yes
 short_desc="GNU C library"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="GPL-2.0-or-later, LGPL-2.1-or-later, BSD-3-Clause"
 homepage="http://www.gnu.org/software/libc"
 distfiles="${GNU_SITE}/glibc/glibc-${version}.tar.xz"
-checksum=e2c4114e569afbe7edbc29131a43be833850ab9a459d81beb2588016d2bbb8af
+checksum=1627ea54f5a1a8467032563393e0901077626dc66f37f10ee6363bb722222836
 patch_args="-Np1"
 # Do not strip these files, objcopy errors out.
 nostrip_files="
@@ -96,12 +96,12 @@ do_configure() {
 	SHELL=/bin/bash ../configure ${configure_args} \
 		--bindir=/usr/bin --sbindir=/usr/bin \
 		--libdir=${_libdir} --libexecdir=${_libdir} \
-		--enable-add-ons=libidn --enable-obsolete-rpc \
+		--enable-add-ons=libidn \
 		--enable-multi-arch --enable-bind-now \
 		--disable-profile --enable-kernel=3.2.0 \
 		--enable-stack-guard-randomization \
 		--without-selinux --without-cvs --without-gd \
-		--disable-lock-elision --enable-obsolete-nsl \
+		--disable-lock-elision \
 		--enable-stack-protector=strong \
 		--with-headers=${XBPS_CROSS_BASE}/usr/include \
 		--disable-werror \

From a64f3f9c6715e5993db396405e0ddc4a3d45fb93 Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Wed, 20 Jan 2021 00:30:54 +0100
Subject: [PATCH 0231/3482] linux5.10: update to 5.10.9.

---
 srcpkgs/linux5.10/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/linux5.10/template b/srcpkgs/linux5.10/template
index 7c97b77eec96..189e7c87c9d5 100644
--- a/srcpkgs/linux5.10/template
+++ b/srcpkgs/linux5.10/template
@@ -1,6 +1,6 @@
 # Template file for 'linux5.10'
 pkgname=linux5.10
-version=5.10.8
+version=5.10.9
 revision=1
 wrksrc="linux-${version}"
 short_desc="Linux kernel and modules (${version%.*} series)"
@@ -8,7 +8,7 @@ maintainer="Leah Neukirchen <leah@vuxu.org>"
 license="GPL-2.0-only"
 homepage="https://www.kernel.org"
 distfiles="https://cdn.kernel.org/pub/linux/kernel/v5.x/linux-${version}.tar.xz"
-checksum=5cfc829425165d699059a398f5c24cad6e40e8899f2076ecd301c3d551e503ed
+checksum=7f733e0dd8bbb6929aae2191cf6b9dc0b0ec1dad77ab3f5d3aad1b7fe96c4751
 python_version=3
 patch_args="-Np1"
 

From 326da914a51bf27639c181810101b1439c174d15 Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Thu, 21 Jan 2021 10:31:32 +0100
Subject: [PATCH 0232/3482] apk-tools: update to 2.12.1.

---
 srcpkgs/apk-tools/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/apk-tools/template b/srcpkgs/apk-tools/template
index dbdc782a0a90..0703d80b596b 100644
--- a/srcpkgs/apk-tools/template
+++ b/srcpkgs/apk-tools/template
@@ -1,6 +1,6 @@
 # Template file for 'apk-tools'
 pkgname=apk-tools
-version=2.12.0
+version=2.12.1
 revision=1
 build_style=gnu-makefile
 # Link libapk statically
@@ -12,7 +12,7 @@ maintainer="Leah Neukirchen <leah@vuxu.org>"
 license="GPL-2.0-only"
 homepage="http://git.alpinelinux.org/cgit/apk-tools"
 distfiles="http://git.alpinelinux.org/cgit/${pkgname}/snapshot/${pkgname}-${version}.tar.bz2"
-checksum=763ed44a5b33f8cf6054b9ad6de53c355a37dcdf954024bbc59b953c675b78c6
+checksum=c81f6d9efdf0b3b7830b30e9133911c2e7ed68c082260a26dc82dc4553524035
 CFLAGS="-Wno-error"
 
 do_install() {

From cc2182159a341ac0a7ba91a8921bd1b28e7e5c1a Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Thu, 21 Jan 2021 10:32:25 +0100
Subject: [PATCH 0233/3482] minify: update to 2.9.11.

---
 srcpkgs/minify/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/minify/template b/srcpkgs/minify/template
index 3522bda46736..8d12278dfb47 100644
--- a/srcpkgs/minify/template
+++ b/srcpkgs/minify/template
@@ -1,6 +1,6 @@
 # Template file for 'minify'
 pkgname=minify
-version=2.9.10
+version=2.9.11
 revision=1
 build_style=go
 go_import_path="github.com/tdewolff/minify"
@@ -11,7 +11,7 @@ maintainer="Leah Neukirchen <leah@vuxu.org>"
 license="MIT"
 homepage="https://github.com/tdewolff/minify"
 distfiles="https://github.com/tdewolff/${pkgname}/archive/v${version}.tar.gz"
-checksum=f775e92aaefd1d4cce7df8559d35eeec022f281aad350b843610ef8f36531cb1
+checksum=3c1ec8df223b818ae0fa93b0daf3ca750f063238dc458ad373f92556ad324e6e
 
 post_install() {
 	vlicense LICENSE

From a0e7d8cef3a5dd401a5ca6c9c022c31531dfc156 Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Thu, 21 Jan 2021 10:33:31 +0100
Subject: [PATCH 0234/3482] perl-Net-SFTP-Foreign: update to 1.93.

---
 srcpkgs/perl-Net-SFTP-Foreign/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/perl-Net-SFTP-Foreign/template b/srcpkgs/perl-Net-SFTP-Foreign/template
index 058d3e931b52..2d5909fbde40 100644
--- a/srcpkgs/perl-Net-SFTP-Foreign/template
+++ b/srcpkgs/perl-Net-SFTP-Foreign/template
@@ -1,7 +1,7 @@
 # Template file for 'perl-Net-SFTP-Foreign'
 pkgname=perl-Net-SFTP-Foreign
-version=1.91
-revision=2
+version=1.93
+revision=1
 wrksrc="${pkgname/perl-/}-${version}"
 build_style=perl-module
 hostmakedepends="perl"
@@ -13,4 +13,4 @@ maintainer="Leah Neukirchen <leah@vuxu.org>"
 license="Artistic-1.0-Perl, GPL-1.0-or-later"
 homepage="https://metacpan.org/release/Net-SFTP-Foreign"
 distfiles="${CPAN_SITE}/Net/Net-SFTP-Foreign-${version}.tar.gz"
-checksum=b7395081314f26f3b93c857d65e9c80a04a63709df698583f22a360ffce7e178
+checksum=6c7d64250876873da434800e5060a8bef7a46451d81f817e37e43cfda51a0f7a

From 9cc0e93703ea063ec5f2c12c63b3b0d83240b6e6 Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Thu, 21 Jan 2021 10:38:14 +0100
Subject: [PATCH 0235/3482] z3: update to 4.8.10.

---
 srcpkgs/z3/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/z3/template b/srcpkgs/z3/template
index 649650437499..8a58beb6fba3 100644
--- a/srcpkgs/z3/template
+++ b/srcpkgs/z3/template
@@ -1,7 +1,7 @@
 # Template file for 'z3'
 pkgname=z3
-version=4.8.9
-revision=2
+version=4.8.10
+revision=1
 wrksrc="${pkgname}-${pkgname}-${version}"
 build_style=configure
 configure_args="--prefix=/usr -g --python $(vopt_if ocaml --ml)"
@@ -15,7 +15,7 @@ maintainer="Leah Neukirchen <leah@vuxu.org>"
 license="MIT"
 homepage="https://github.com/Z3Prover/z3"
 distfiles="https://github.com/Z3Prover/z3/archive/z3-${version}.tar.gz"
-checksum=c9fd04b9b33be74fffaac3ec2bc2c320d1a4cc32e395203c55126b12a14ff3f4
+checksum=12cce6392b613d3133909ce7f93985d2470f0d00138837de06cf7eb2992886b4
 
 build_options="ocaml"
 desc_option_ocaml="Enable support for OCaml bindings"

From daf828f7a6e1b02974904bb046e8681cfe4cfddb Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Thu, 21 Jan 2021 13:24:35 +0100
Subject: [PATCH 0236/3482] erlang: update to 23.2.3.

---
 srcpkgs/erlang/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/erlang/template b/srcpkgs/erlang/template
index 756bc760effb..69fda3b663cc 100644
--- a/srcpkgs/erlang/template
+++ b/srcpkgs/erlang/template
@@ -1,6 +1,6 @@
 # Template file for 'erlang'
 pkgname=erlang
-version=23.2.2
+version=23.2.3
 revision=1
 create_wrksrc=yes
 build_wrksrc="otp-OTP-${version}"
@@ -14,7 +14,7 @@ license="Apache-2.0"
 homepage="http://www.erlang.org/"
 changelog="https://github.com/erlang/otp/releases"
 distfiles="https://github.com/erlang/otp/archive/OTP-${version}.tar.gz"
-checksum=04994a2dffee0170554797b3d258b4f4727e54c772e721202e9fb22d6827e4de
+checksum=3160912856ba734bd9c17075e72f469b9d4b913f3ab9652ee7e0fb406f0f0f2c
 subpackages="erlang-doc"
 
 if [ -z "$CROSS_BUILD" ]; then

From 1488fddd07ac3ab782c428bc091108995447bc61 Mon Sep 17 00:00:00 2001
From: cinerea0 <cinerea0@protonmail.com>
Date: Thu, 21 Jan 2021 00:03:27 -0500
Subject: [PATCH 0237/3482] x86_64-dotconfig: Add support for SOF on comet lake

---
 srcpkgs/linux5.10/files/x86_64-dotconfig | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/srcpkgs/linux5.10/files/x86_64-dotconfig b/srcpkgs/linux5.10/files/x86_64-dotconfig
index bbd136a1b1e3..26d396246492 100644
--- a/srcpkgs/linux5.10/files/x86_64-dotconfig
+++ b/srcpkgs/linux5.10/files/x86_64-dotconfig
@@ -6482,6 +6482,8 @@ CONFIG_SND_SOC_INTEL_KBL_RT5660_MACH=m
 CONFIG_SND_SOC_INTEL_GLK_DA7219_MAX98357A_MACH=m
 CONFIG_SND_SOC_INTEL_GLK_RT5682_MAX98357A_MACH=m
 CONFIG_SND_SOC_INTEL_SKL_HDA_DSP_GENERIC_MACH=m
+CONFIG_SND_SOC_INTEL_CML_LP_DA7219_MAX98357A_MACH=m
+CONFIG_SND_SOC_INTEL_SOF_CML_RT1011_RT5682_MACH=m
 CONFIG_SND_SOC_INTEL_SOF_RT5682_MACH=m
 CONFIG_SND_SOC_INTEL_SOF_PCM512x_MACH=m
 CONFIG_SND_SOC_INTEL_SOF_DA7219_MAX98373_MACH=m
@@ -6514,7 +6516,7 @@ CONFIG_SND_SOC_SOF_COFFEELAKE_SUPPORT=y
 CONFIG_SND_SOC_SOF_COFFEELAKE=m
 CONFIG_SND_SOC_SOF_ICELAKE_SUPPORT=y
 CONFIG_SND_SOC_SOF_ICELAKE=m
-# CONFIG_SND_SOC_SOF_COMETLAKE_LP_SUPPORT is not set
+CONFIG_SND_SOC_SOF_COMETLAKE_LP_SUPPORT=y
 CONFIG_SND_SOC_SOF_TIGERLAKE_SUPPORT=y
 CONFIG_SND_SOC_SOF_TIGERLAKE=m
 CONFIG_SND_SOC_SOF_ELKHARTLAKE_SUPPORT=y

From 55d4d86b0a41aed42a10ed723d5cbd362848ef5b Mon Sep 17 00:00:00 2001
From: "Andrew J. Hesford" <ajh@sideband.org>
Date: Wed, 20 Jan 2021 08:59:20 -0500
Subject: [PATCH 0238/3482] grpc: update to 1.34.1.

---
 srcpkgs/grpc/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/grpc/template b/srcpkgs/grpc/template
index 4afd2a6dad2f..de0182c3cd60 100644
--- a/srcpkgs/grpc/template
+++ b/srcpkgs/grpc/template
@@ -1,6 +1,6 @@
 # Template file for 'grpc'
 pkgname=grpc
-version=1.34.0
+version=1.34.1
 revision=1
 _abseilver=0f3bb466b868b523cf1dc9b2aaaed65c77b28862
 build_style=cmake
@@ -18,7 +18,7 @@ license="Apache-2.0"
 homepage="https://github.com/grpc/grpc"
 distfiles="${homepage}/archive/v${version}/${pkgname}-${version}.tar.gz
  https://github.com/abseil/abseil-cpp/archive/${_abseilver}/abseil-cpp-${_abseilver}.tar.gz"
-checksum="7372a881122cd85a7224435a1d58bc5e11c88d4fb98a64b83f36f3d1c2f16d39
+checksum="c260a1dcdd26a78a9596494a3f41f9594ab5ec3a4d65cba4658bdee2b55ac844
  3d74cdc98b42fd4257d91f652575206de195e2c824fcd8d6e6d227f85cb143ef"
 
 if [ "$CROSS_BUILD" ]; then

From 758e75eff4172608707d0ff5989380b0c52be439 Mon Sep 17 00:00:00 2001
From: "Andrew J. Hesford" <ajh@sideband.org>
Date: Wed, 20 Jan 2021 08:59:24 -0500
Subject: [PATCH 0239/3482] python3-grpcio: update to 1.34.1.

---
 srcpkgs/python3-grpcio/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/python3-grpcio/template b/srcpkgs/python3-grpcio/template
index d3455b39a76d..73e0bc72cb44 100644
--- a/srcpkgs/python3-grpcio/template
+++ b/srcpkgs/python3-grpcio/template
@@ -1,6 +1,6 @@
 # Template file for 'python3-grpcio'
 pkgname=python3-grpcio
-version=1.34.0
+version=1.34.1
 revision=1
 archs="x86_64* i686* aarch64* armv[67]* ppc64le*"
 wrksrc="${pkgname#*-}-${version}"
@@ -13,7 +13,7 @@ maintainer="Andrew J. Hesford <ajh@sideband.org>"
 license="Apache-2.0"
 homepage="https://grpc.io"
 distfiles="${PYPI_SITE}/g/grpcio/grpcio-${version}.tar.gz"
-checksum=f98f746cacbaa681de0bcd90d7aa77b440e3e1327a9988f6a2b580d54e27d4c3
+checksum=1c746a3cd8a830d8d916a9d0476a786aaa98c5cc2a096344af2be955e439f8ac
 
 if [ "$XBPS_TARGET_NO_ATOMIC8" ]; then
 	makedepends+=" libatomic-devel"

From 0908de25ca76d50725f3142e31cc4d35da04017c Mon Sep 17 00:00:00 2001
From: "Andrew J. Hesford" <ajh@sideband.org>
Date: Wed, 20 Jan 2021 08:59:27 -0500
Subject: [PATCH 0240/3482] python3-grpcio-tools: update to 1.34.1.

---
 srcpkgs/python3-grpcio-tools/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/python3-grpcio-tools/template b/srcpkgs/python3-grpcio-tools/template
index 6be609c50e7f..cd96fdc8305f 100644
--- a/srcpkgs/python3-grpcio-tools/template
+++ b/srcpkgs/python3-grpcio-tools/template
@@ -1,6 +1,6 @@
 # Template file for 'python3-grpcio-tools'
 pkgname=python3-grpcio-tools
-version=1.34.0
+version=1.34.1
 revision=1
 wrksrc="${pkgname#*-}-${version}"
 build_style=python3-module
@@ -12,7 +12,7 @@ maintainer="Andrew J. Hesford <ajh@sideband.org>"
 license="Apache-2.0"
 homepage="https://grpc.io"
 distfiles="${PYPI_SITE}/g/grpcio-tools/grpcio-tools-${version}.tar.gz"
-checksum=db5a6f0130256d534cbe35eab37d37a448d96f4fd736e5051c6be1aee49cea1d
+checksum=b411f36748f4ead33411544d785e37825598bbb8abbe79eca422e395be5a3d08
 
 if [ "$XBPS_TARGET_NO_ATOMIC8" ]; then
 	makedepends+=" libatomic-devel"

From 3dc4c978a88674c17c97ae4b44370ce7ad2ae81b Mon Sep 17 00:00:00 2001
From: "Andrew J. Hesford" <ajh@sideband.org>
Date: Wed, 20 Jan 2021 09:02:24 -0500
Subject: [PATCH 0241/3482] python3-tifffile: update to 2021.1.14.

---
 srcpkgs/python3-tifffile/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/python3-tifffile/template b/srcpkgs/python3-tifffile/template
index caf542069051..ba57570b081a 100644
--- a/srcpkgs/python3-tifffile/template
+++ b/srcpkgs/python3-tifffile/template
@@ -1,6 +1,6 @@
 # Template file for 'python3-tifffile'
 pkgname=python3-tifffile
-version=2021.1.11
+version=2021.1.14
 revision=1
 wrksrc="${pkgname#python3-}-${version}"
 build_style=python3-module
@@ -13,7 +13,7 @@ license="BSD-3-Clause"
 homepage="https://github.com/cgohlke/tifffile"
 changelog="https://raw.githubusercontent.com/cgohlke/tifffile/master/CHANGES.rst"
 distfiles="${homepage}/archive/v${version}.tar.gz"
-checksum=fba3d3718634dd705d8a025421b1a241efad6166533b1be304a3b1a59a68e941
+checksum=5af5c4e49ad2d6f0b04c43937b64a7e8101a9af306b6087181d8785c854792cb
 
 post_install() {
 	vlicense LICENSE

From 2838aa918efd7f535aa900a7f83857fe8d9b2f99 Mon Sep 17 00:00:00 2001
From: "Andrew J. Hesford" <ajh@sideband.org>
Date: Wed, 20 Jan 2021 09:18:24 -0500
Subject: [PATCH 0242/3482] python3-setuptools: update to 51.3.3.

---
 srcpkgs/python3-setuptools/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/python3-setuptools/template b/srcpkgs/python3-setuptools/template
index 58346bb37e87..60a379ef73f6 100644
--- a/srcpkgs/python3-setuptools/template
+++ b/srcpkgs/python3-setuptools/template
@@ -1,6 +1,6 @@
 # Template file for 'python3-setuptools'
 pkgname=python3-setuptools
-version=51.1.2
+version=51.3.3
 revision=1
 wrksrc="setuptools-${version}"
 build_style=python3-module
@@ -14,7 +14,7 @@ license="MIT"
 homepage="https://github.com/pypa/setuptools"
 changelog="https://raw.githubusercontent.com/pypa/setuptools/master/CHANGES.rst"
 distfiles="${PYPI_SITE}/s/setuptools/setuptools-${version}.tar.gz"
-checksum=4fa149145ba5dcd4aaa89912ec92393a31170eaf17fe0268b1429538bad1f85a
+checksum=127ec775c4772bfaf2050557b00c4be6e019e52dc2e171a3fb1cd474783a2497
 alternatives="setuptools:easy_install:/usr/bin/easy_install3"
 provides="python3-distribute-${version}_1"
 replaces="python3-distribute>=0"

From e7de40b56ad723590154114fb6acdf49cf76e718 Mon Sep 17 00:00:00 2001
From: "Andrew J. Hesford" <ajh@sideband.org>
Date: Wed, 20 Jan 2021 09:22:02 -0500
Subject: [PATCH 0243/3482] python-xdg: update to 0.27.

---
 srcpkgs/python-xdg/template | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/python-xdg/template b/srcpkgs/python-xdg/template
index 083f17308d35..f9a1430433e6 100644
--- a/srcpkgs/python-xdg/template
+++ b/srcpkgs/python-xdg/template
@@ -1,11 +1,10 @@
 # Template file for 'python-xdg'
 pkgname=python-xdg
-version=0.26
-revision=4
+version=0.27
+revision=1
 wrksrc="pyxdg-${version}"
 build_style=python-module
-hostmakedepends="python python3"
-makedepends="$hostmakedepends"
+hostmakedepends="python-setuptools python3-setuptools"
 depends="python"
 pycompile_module="xdg"
 short_desc="Python2 library to access freedesktop.org standards"
@@ -13,7 +12,7 @@ maintainer="Orphaned <orphan@voidlinux.org>"
 license="LGPL-2.0-only"
 homepage="https://freedesktop.org/Software/pyxdg"
 distfiles="${PYPI_SITE}/p/pyxdg/pyxdg-${version}.tar.gz"
-checksum=fe2928d3f532ed32b39c32a482b54136fe766d19936afc96c8f00645f9da1a06
+checksum=80bd93aae5ed82435f20462ea0208fb198d8eec262e831ee06ce9ddb6b91c5a5
 
 python3-xdg_package() {
 	depends="python3"

From 2937d5bbdd66e4f32761cc39cc4e6f8a7a6b8cb2 Mon Sep 17 00:00:00 2001
From: "Andrew J. Hesford" <ajh@sideband.org>
Date: Wed, 20 Jan 2021 09:42:13 -0500
Subject: [PATCH 0244/3482] python3-icalendar: update to 4.0.7.

---
 srcpkgs/python3-icalendar/template | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/python3-icalendar/template b/srcpkgs/python3-icalendar/template
index 78d1433b144a..f37ae5f3a02e 100644
--- a/srcpkgs/python3-icalendar/template
+++ b/srcpkgs/python3-icalendar/template
@@ -1,7 +1,7 @@
 # Template file for 'python3-icalendar'
 pkgname=python3-icalendar
-version=4.0.6
-revision=3
+version=4.0.7
+revision=1
 wrksrc="icalendar-${version}"
 build_style=python3-module
 hostmakedepends="python3-setuptools"
@@ -12,9 +12,13 @@ maintainer="Oliver Kiddle <okiddle@yahoo.co.uk>"
 license="BSD-2-Clause"
 homepage="https://github.com/collective/icalendar"
 distfiles="${PYPI_SITE}/i/icalendar/icalendar-${version}.tar.gz"
-checksum=7e6fe7232622abe32d8f54d0936ffcd5a9087198a4c2f1ec1803a7dd9fdd979f
+checksum=0fc18d87f66e0b5da84fa731389496cfe18e4c21304e8f6713556b2e8724a7a4
 conflicts="python-icalendar>=0"
 
+do_check() {
+	PYTHONPATH=src python3 -m pytest src/icalendar/tests
+}
+
 post_install() {
 	vlicense LICENSE.rst LICENSE
 }

From ef9801e76cfcfdf7893917c8cf3d7c4b72d3a255 Mon Sep 17 00:00:00 2001
From: "Andrew J. Hesford" <ajh@sideband.org>
Date: Wed, 20 Jan 2021 09:54:02 -0500
Subject: [PATCH 0245/3482] python3-lz4: update to 3.1.3.

---
 srcpkgs/python3-lz4/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/python3-lz4/template b/srcpkgs/python3-lz4/template
index 9ef8d0abae52..7cb716632cad 100644
--- a/srcpkgs/python3-lz4/template
+++ b/srcpkgs/python3-lz4/template
@@ -1,6 +1,6 @@
 # Template file for 'python3-lz4'
 pkgname=python3-lz4
-version=3.1.1
+version=3.1.3
 revision=1
 wrksrc="lz4-${version}"
 build_style=python3-module
@@ -14,7 +14,7 @@ license="BSD-3-Clause"
 homepage="https://github.com/python-lz4/python-lz4"
 changelog="https://github.com/python-lz4/python-lz4/releases"
 distfiles="${PYPI_SITE}/l/lz4/lz4-${version}.tar.gz"
-checksum=1ac354804cb2d5fb3d213857a6bf8590a301ef051cc16fbb4938bd2d6e524bda
+checksum=081ef0a3b5941cb03127f314229a1c78bd70c9c220bb3f4dd80033e707feaa18
 
 post_install() {
 	vlicense LICENSE

From fd0bb86d8ff8409e8f965b1eac759b59078508e4 Mon Sep 17 00:00:00 2001
From: "Andrew J. Hesford" <ajh@sideband.org>
Date: Wed, 20 Jan 2021 10:04:51 -0500
Subject: [PATCH 0246/3482] zeromq: update to 4.3.4.

---
 srcpkgs/zeromq/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/zeromq/template b/srcpkgs/zeromq/template
index 86e03e9cab57..b4804144ee2a 100644
--- a/srcpkgs/zeromq/template
+++ b/srcpkgs/zeromq/template
@@ -1,6 +1,6 @@
 # Template file for 'zeromq'
 pkgname=zeromq
-version=4.3.3
+version=4.3.4
 revision=1
 build_style=gnu-configure
 configure_args=&