backports/signal-desktop: upgrade to 7.22.2
All checks were successful
/ lint (pull_request) Successful in 38s
/ build-x86_64 (pull_request) Successful in 21m27s
/ deploy-x86_64 (pull_request) Successful in 44s
/ deploy-aarch64 (pull_request) Successful in 1m3s
/ build-aarch64 (pull_request) Successful in 1h3m14s

This commit is contained in:
Antoine Martin 2024-09-05 16:05:34 -04:00
parent 021b81131e
commit 743ceb8dbe
Signed by: forge
GPG key ID: D62A472A4AA7D541
6 changed files with 87 additions and 66 deletions

View file

@ -1,7 +1,7 @@
# Contributor: lauren n. liberda <lauren@selfisekai.rocks> # Contributor: lauren n. liberda <lauren@selfisekai.rocks>
# Maintainer: lauren n. liberda <lauren@selfisekai.rocks> # Maintainer: lauren n. liberda <lauren@selfisekai.rocks>
pkgname=signal-desktop pkgname=signal-desktop
pkgver=7.11.0 pkgver=7.22.2
pkgrel=0 pkgrel=0
pkgdesc="A messaging app for simple private communication with friends" pkgdesc="A messaging app for simple private communication with friends"
url="https://github.com/signalapp/Signal-Desktop/" url="https://github.com/signalapp/Signal-Desktop/"
@ -42,6 +42,7 @@ makedepends="
libsecret-dev libsecret-dev
libvpx-dev libvpx-dev
libwebp-dev libwebp-dev
libxml2-dev
lld lld
llvm-dev llvm-dev
mesa-dev mesa-dev
@ -63,14 +64,14 @@ makedepends="
options="net !check" options="net !check"
# follow signal-desktop package.json -> @signalapp/libsignal-client # follow signal-desktop package.json -> @signalapp/libsignal-client
_libsignalver=0.46.2 _libsignalver=0.55.1
# follow signal-desktop package.json -> @signalapp/ringrtc # follow signal-desktop package.json -> @signalapp/ringrtc
_ringrtcver=2.42.0 _ringrtcver=2.46.1
# follow ringrtc (on version above) -> config/version.properties -> webrtc.version # follow ringrtc (on version above) -> config/version.properties -> webrtc.version
# downloading tarball generated with abuild snapshot (with gclient dependencies fetched) # downloading tarball generated with abuild snapshot (with gclient dependencies fetched)
_webrtcver=6261i _webrtcver=6478j
# follow @signalapp/better-sqlite3 (on version in package.json) -> deps/download.js -> TOKENIZER_VERSION # follow @signalapp/better-sqlite3 (on version in package.json) -> deps/download.js -> TOKENIZER_VERSION
# last bsqlite version: 8.7.1 # last bsqlite version: 8.7.1
@ -80,7 +81,7 @@ source="
https://github.com/signalapp/Signal-Desktop/archive/refs/tags/v$pkgver/Signal-Desktop-$pkgver.tar.gz https://github.com/signalapp/Signal-Desktop/archive/refs/tags/v$pkgver/Signal-Desktop-$pkgver.tar.gz
https://github.com/signalapp/libsignal/archive/refs/tags/v$_libsignalver/libsignal-$_libsignalver.tar.gz https://github.com/signalapp/libsignal/archive/refs/tags/v$_libsignalver/libsignal-$_libsignalver.tar.gz
https://github.com/signalapp/ringrtc/archive/refs/tags/v$_ringrtcver/ringrtc-$_ringrtcver.tar.gz https://github.com/signalapp/ringrtc/archive/refs/tags/v$_ringrtcver/ringrtc-$_ringrtcver.tar.gz
https://ab-sn.lnl.gay/webrtc-$_webrtcver.tar.zst https://ayakael.net/api/packages/mirrors/generic/webrtc/$_webrtcver/webrtc-$_webrtcver.tar.zst
https://github.com/signalapp/Signal-FTS5-Extension/archive/refs/tags/v$_stokenizerver/stokenizer-$_stokenizerver.tar.gz https://github.com/signalapp/Signal-FTS5-Extension/archive/refs/tags/v$_stokenizerver/stokenizer-$_stokenizerver.tar.gz
bettersqlite-use-system-sqlcipher.patch bettersqlite-use-system-sqlcipher.patch
@ -88,11 +89,11 @@ source="
signal-disable-updates.patch signal-disable-updates.patch
signal-update-links.patch signal-update-links.patch
signal-show-window-please.patch signal-show-window-please.patch
signal-fix-dns-fallback.patch
ringrtc-webrtc-renamed.patch ringrtc-webrtc-renamed.patch
webrtc-shared-like-my-wife.patch webrtc-shared-libs.patch
webrtc-compiler.patch webrtc-compiler.patch
webrtc-gcc13.patch webrtc-gcc13.patch
webrtc-boringssl-c7019036-do-not-define-crypto_addc.patch
signal-desktop signal-desktop
" "
@ -195,8 +196,7 @@ prepare() {
done done
msg "Installing signal-desktop JS dependencies" msg "Installing signal-desktop JS dependencies"
echo 'ignore-engines true' > .yarnrc npm ci --ignore-scripts
yarn --ignore-scripts --frozen-lockfile
( (
cd "$srcdir"/webrtc-$_webrtcver cd "$srcdir"/webrtc-$_webrtcver
@ -283,7 +283,7 @@ prepare() {
cd "$srcdir"/ringrtc-$_ringrtcver/src/node cd "$srcdir"/ringrtc-$_ringrtcver/src/node
msg "Installing ringrtc js dependencies" msg "Installing ringrtc js dependencies"
yarn --frozen-lockfile --ignore-scripts npm ci --ignore-scripts
) )
( (
@ -293,7 +293,7 @@ prepare() {
sed -i 's/unknown-linux-gnu/alpine-linux-musl/g' binding.gyp sed -i 's/unknown-linux-gnu/alpine-linux-musl/g' binding.gyp
msg "Installing libsignal js dependencies" msg "Installing libsignal js dependencies"
yarn --ignore-scripts --frozen-lockfile npm install --ignore-scripts
) )
# remove shipped fonts for system-provided (part 1) # remove shipped fonts for system-provided (part 1)
@ -359,10 +359,11 @@ build() {
( (
cd "$srcdir"/ringrtc-$_ringrtcver/src/node cd "$srcdir"/ringrtc-$_ringrtcver/src/node
msg "Building ringrtc JS glue code" msg "Building ringrtc JS glue code"
yarn build npm ci --ignore-scripts
npm run build
msg "Cleaning dev dependencies for ringrtc" msg "Cleaning dev dependencies for ringrtc"
yarn --ignore-scripts --frozen-lockfile --production npm prune --ignore-scripts --omit=dev
) )
# module on npm intentionally unbuildable: https://github.com/signalapp/libsignal/issues/464#issuecomment-1160665052 # module on npm intentionally unbuildable: https://github.com/signalapp/libsignal/issues/464#issuecomment-1160665052
@ -370,17 +371,18 @@ build() {
cd "$srcdir"/libsignal-$_libsignalver/node cd "$srcdir"/libsignal-$_libsignalver/node
msg "Building libsignal" msg "Building libsignal"
yarn node-gyp configure --nodedir=/usr/include/electron/node_headers --build-from-source node-gyp configure --nodedir=/usr/include/electron/node_headers --build-from-source
yarn node-gyp build --nodedir=/usr/include/electron/node_headers --build-from-source node-gyp build --nodedir=/usr/include/electron/node_headers --build-from-source
mkdir -p prebuilds/linux-$chromium_arch mkdir -p prebuilds/linux-$chromium_arch
mv build/Release/libsignal_client_linux_$chromium_arch.node prebuilds/linux-$chromium_arch/node.napi.node mv build/Release/libsignal_client_linux_$chromium_arch.node prebuilds/linux-$chromium_arch/node.napi.node
msg "Building libsignal glue code" msg "Building libsignal glue code"
yarn tsc npm ci --ignore-scripts
npm run tsc
msg "Cleaning dev dependencies for libsignal" msg "Cleaning dev dependencies for libsignal"
yarn --ignore-scripts --frozen-lockfile --production npm prune -ignore-scripts --omit=dev
) )
( (
@ -392,31 +394,21 @@ build() {
) )
# from package.json postinstall # from package.json postinstall
yarn build:acknowledgments npm run build:acknowledgments
yarn patch-package npm exec patch-package
rm -rf node_modules/dtrace-provider rm -rf node_modules/dtrace-provider
# get esbuild installed (needed for next step) # get esbuild installed (needed for next step)
npm rebuild esbuild npm install esbuild
# build front # build front
NODE_ENV=production \ NODE_ENV=production \
SIGNAL_ENV=production \ SIGNAL_ENV=production \
NODE_OPTIONS=--openssl-legacy-provider \ NODE_OPTIONS=--openssl-legacy-provider \
yarn build:dev npm run build:dev
# purge non-production deps # purge non-production deps
yarn install --ignore-scripts --frozen-lockfile --production npm prune --ignore-scripts --omit=dev
# XXX: the previous step undoes the patches. and removes the patch applier.
# please force me to just implement packaging without dev modules in tasje. -lnl
for x in patches/*.patch; do
# some of these patches are made for devDependencies
if [ -d "$(grep -Eo 'node_modules/(@[a-z\d_-]+/)?[a-z\d_-]+/' "$x" | head -n1)" ]; then
msg "$x"
patch -Np1 -i ./"$x"
fi
done
# use our libsignal # use our libsignal
rm -rf node_modules/@signalapp/libsignal-client/ rm -rf node_modules/@signalapp/libsignal-client/
@ -451,7 +443,7 @@ build() {
check() { check() {
# tests run against downloaded build of electron for glibc, probably can be patched # tests run against downloaded build of electron for glibc, probably can be patched
yarn test npm run test
} }
package() { package() {
@ -472,20 +464,20 @@ package() {
} }
sha512sums=" sha512sums="
cebb1c8412089fe6f5faa9d4bfcb8bb4e8c9d2f3e4a13eef15e8f36d97b4bc65eae3c0865af0a7c82a0af2fd0597482b3d7c1f25e7d51465ea2589c817183b19 Signal-Desktop-7.11.0.tar.gz 20d09f64ddb8e42f314aa1538df55e4fa18b1b1b647a1434bd38122fe26cbf18c699f81d415e751dbec1888d0eb5020fb366129bf293cd28e26eaacf456bcbfb Signal-Desktop-7.22.2.tar.gz
6be40fcfbcb9bd20c51dd9ef1c65e7f586fbbee04af66af89a5b8c0ce3fa2ce5efd586e10de1d6d5c579126ed4bb2f31e50a8448ed5390d12e226cd075537007 libsignal-0.46.2.tar.gz 2179eb6862ceb9e3a1df04a4e9b9bb3d64ce84f017d3048f0aaafdd4960843230216443139ff1a8127b6901e9859a2f2ed59e12f2ba9ffc906f79107d7fc161f libsignal-0.55.1.tar.gz
5cb7e88e8c04244a8f4727237dd0662357eb84dfb384de57c6579f01f0c53944d019a2af29efe37c4d30993fdba4be6f9bd9f7975ac24e43207fe814e0b95f95 ringrtc-2.42.0.tar.gz c941e7016e96acbba615a9ba12d91882f83b64656b40b6de26e1dc21abf4aea29ed49459c5bd60e43df65a93103cb6878d3d7bb17c597fd88a807c3f6e71c41e ringrtc-2.46.1.tar.gz
89796d611bd7cda7c0e98318826753b1acc373396d77f2a0a826bf95e9e28d2c0f33181705b50b1afc52fdf12dbf3d35e30ad86b0ce3052ed9131ea20c842d04 webrtc-6261i.tar.zst 0de4999800eea98bd38d785fcf6683a6f431f98483ca91dcf8ca721d5eecd197043db564bacd2dc583442fe3b43affda61c02230b044b4d4c05fbb6e11741ea5 webrtc-6478j.tar.zst
84a1f2fc29262a12842e94698d124a85b823128e72a493b0be8ea92fbb72c5c268499f4a6827cdedaae06ec73cce4039a39fe5c5d536cbef330e59ba0183da28 stokenizer-0.2.1.tar.gz 84a1f2fc29262a12842e94698d124a85b823128e72a493b0be8ea92fbb72c5c268499f4a6827cdedaae06ec73cce4039a39fe5c5d536cbef330e59ba0183da28 stokenizer-0.2.1.tar.gz
be5b4e823543b79175a12314f10c6326d9f0d59f470136962daed4665887006acc05b48b40dc1b67747396d8f6f7d23be298c1e110ccdd35ff9b09d5e6b80bab bettersqlite-use-system-sqlcipher.patch be5b4e823543b79175a12314f10c6326d9f0d59f470136962daed4665887006acc05b48b40dc1b67747396d8f6f7d23be298c1e110ccdd35ff9b09d5e6b80bab bettersqlite-use-system-sqlcipher.patch
92de6fc7cc5f2b6d65bedbd74cc733dd86dafc9cbfb9b727c3267aef63a71a07247cde9b163c68fddfeb9096dcd7f554d36d0b2de078d8905e3825645ddbd6eb libsignal-auditable.patch 2e5fadff725f1d62e7134c8929c672ec88cae602b065480f1b799d34160daa0cb1ad0f5511e60676f81464ae8752c3bec7b3d7bc5a432533be004b4d20ac32c2 libsignal-auditable.patch
152435231cdcf52a17a9e24aadf95d77511258e818172941ba074a73a90a541f0136feb58868674f2bcb19191a6d12933fe6cd5baf3ee99e508915c72523163b signal-disable-updates.patch 152435231cdcf52a17a9e24aadf95d77511258e818172941ba074a73a90a541f0136feb58868674f2bcb19191a6d12933fe6cd5baf3ee99e508915c72523163b signal-disable-updates.patch
d50eb5724502df9ea4d795db8cfc27af767c25168d7db2af512e615be7cc2ca290210a9ae78e1abb153c0198677e858ad3d74926c958099d0319295e7d9e7f1d signal-update-links.patch d50eb5724502df9ea4d795db8cfc27af767c25168d7db2af512e615be7cc2ca290210a9ae78e1abb153c0198677e858ad3d74926c958099d0319295e7d9e7f1d signal-update-links.patch
646d303fe58cae3f0896ae0275a66695b902fae6ddde7c568cc9798157dee9f45ceff907bc951fadc4c511d512a73d114b4e4f7c8914e2311c63929d29e1621a signal-show-window-please.patch bfc8acdd13aa48d29c7657311733cc9d33c4899782efbd1ef6d25ad1698be4de7cc67e829324bc0309715d69ae37ea9f782cf54887317e817213e110d73d68e7 signal-show-window-please.patch
3df878d259cdc12fe116651e9978deb6c15b5bce477d692b2301f17bc660327b29ac4412cfd6966bd0cef15c90675c56ce7c3abd8e2119899cc5d281ab1d9474 signal-fix-dns-fallback.patch
b11fdd930943ca327650e4738ed85cd6b5eea779455a5895bccebba98e449bafc6b0f09bcf4545f2b2e16644355664e9768dd6d4d62f87619207c430367f72c5 ringrtc-webrtc-renamed.patch b11fdd930943ca327650e4738ed85cd6b5eea779455a5895bccebba98e449bafc6b0f09bcf4545f2b2e16644355664e9768dd6d4d62f87619207c430367f72c5 ringrtc-webrtc-renamed.patch
9d92389637cdda83a0a7039fa6c52516d7bc491d0b1e42d5374b9d1f4fa7b9c930642f2dca896da17a2dc3344fa1bb97434c8dddd0539a4fedfd0dec809fc875 webrtc-shared-like-my-wife.patch f4e80ed7e67b98d6988c69ab5025286be17db29dc90f90bf837133cd8ae737f46293e6a2432b02f98c300ed461653b5a66801ff957a418c6a7c33877e3fe0443 webrtc-shared-libs.patch
e07ae8544988d402aaf0fbd95ea36a64c94c59566c561132578aa6dcf8ff11a34058530e64dc204e5cadc2482f1401e74b32384a144e5e08017c663d0cf7c2fc webrtc-compiler.patch e07ae8544988d402aaf0fbd95ea36a64c94c59566c561132578aa6dcf8ff11a34058530e64dc204e5cadc2482f1401e74b32384a144e5e08017c663d0cf7c2fc webrtc-compiler.patch
88515d8b8cc82355c9f9b0f44fac83b7ff149b13e9fb102fd46036ec5234cfb2385fa5ad58a0520ee604b93dc4ddd6ae18a7005978ef207841645724ef7a9749 webrtc-gcc13.patch 88515d8b8cc82355c9f9b0f44fac83b7ff149b13e9fb102fd46036ec5234cfb2385fa5ad58a0520ee604b93dc4ddd6ae18a7005978ef207841645724ef7a9749 webrtc-gcc13.patch
2721dce75ed1b6cd8bff129cd90d05ea07ce61cafd9145913748cb1f4e58d4c042c3c43efc578ad84e15624937b7ed67b8d5fec3d764e7feb26ff28f86cacd77 webrtc-boringssl-c7019036-do-not-define-crypto_addc.patch
87534e7b5ad7365509eab75629e6bd1a9ed61ee92f7e358405a0abaf0df57de14623fb3894eb082f8785422e5c087e1c50f9e2e5cafbb2529591fd7bf447f7f5 signal-desktop 87534e7b5ad7365509eab75629e6bd1a9ed61ee92f7e358405a0abaf0df57de14623fb3894eb082f8785422e5c087e1c50f9e2e5cafbb2529591fd7bf447f7f5 signal-desktop
" "

View file

@ -1,11 +1,13 @@
--- ./node/build_node_bridge.py.orig diff --git a/node/build_node_bridge.py.orig b/node/build_node_bridge.py
+++ ./node/build_node_bridge.py index e75c2d0..3bdb328 100755
@@ -63,7 +63,7 @@ --- a/node/build_node_bridge.py.orig
+++ b/node/build_node_bridge.py
@@ -97,7 +97,7 @@ def main(args: Optional[List[str]] = None) -> int:
if 'npm_config_libsignal_debug_level_logs' not in os.environ:
features.append('log/release_max_level_info')
out_dir = options.out_dir.strip('"') or os.path.join('build', configuration_name) - cmdline = ['cargo', 'build', '--target', cargo_target, '-p', 'libsignal-node', '--features', ','.join(features)]
+ cmdline = ['cargo', 'auditable', 'build', '--target', cargo_target, '-p', 'libsignal-node', '--features', ','.join(features)]
- cmdline = ['cargo', 'build', '--target', cargo_target, '-p', 'libsignal-node', '--features', 'testing-fns']
+ cmdline = ['cargo', 'auditable', 'build', '--target', cargo_target, '-p', 'libsignal-node', '--features', 'testing-fns']
if configuration_name == 'Release': if configuration_name == 'Release':
cmdline.append('--release') cmdline.append('--release')
print("Running '%s'" % (' '.join(cmdline))) print("Running '%s'" % (' '.join(cmdline)))

View file

@ -1,12 +0,0 @@
diff --git a/ts/scripts/generate-dns-fallback.ts.orig b/ts/scripts/generate-dns-fallback.ts
index dec7023..39f442f 100644
--- a/ts/scripts/generate-dns-fallback.ts.orig
+++ b/ts/scripts/generate-dns-fallback.ts
@@ -20,7 +20,6 @@ const FALLBACK_DOMAINS = [
'cdn3.signal.org',
'updates2.signal.org',
'sfu.voip.signal.org',
- 'create.signal.art',
];
async function main() {

View file

@ -1,11 +1,13 @@
--- ./app/main.ts.orig diff --git a/app/main.ts.orig b/app/main.ts
+++ ./app/main.ts index aa1bec8..bd7c1d5 100644
@@ -721,7 +721,7 @@ --- a/app/main.ts.orig
const titleBarOverlay = await getTitleBarOverlay(); +++ b/app/main.ts
@@ -690,7 +690,7 @@ async function createWindow() {
: DEFAULT_HEIGHT;
const windowOptions: Electron.BrowserWindowConstructorOptions = { const windowOptions: Electron.BrowserWindowConstructorOptions = {
- show: false, - show: false,
+ show: true, + show: true,
width: DEFAULT_WIDTH, width,
height: DEFAULT_HEIGHT, height,
minWidth: MIN_WIDTH, minWidth: MIN_WIDTH,

View file

@ -0,0 +1,25 @@
diff --git a/third_party/boringssl/src/crypto/internal.h b/third_party/boringssl/src/crypto/internal.h
index a77102d76..a45f97bcc 100644
--- a/third_party/boringssl/src/crypto/internal.h
+++ b/third_party/boringssl/src/crypto/internal.h
@@ -1174,6 +1174,11 @@ static inline uint64_t CRYPTO_rotr_u64(uint64_t value, int shift) {
// Arithmetic functions.
+// The most efficient versions of these functions on GCC and Clang depend on C11
+// |_Generic|. If we ever need to call these from C++, we'll need to add a
+// variant that uses C++ overloads instead.
+#if !defined(__cplusplus)
+
// CRYPTO_addc_* returns |x + y + carry|, and sets |*out_carry| to the carry
// bit. |carry| must be zero or one.
#if OPENSSL_HAS_BUILTIN(__builtin_addc)
@@ -1275,6 +1280,8 @@ static inline uint64_t CRYPTO_subc_u64(uint64_t x, uint64_t y, uint64_t borrow,
#define CRYPTO_subc_w CRYPTO_subc_u32
#endif
+#endif // !__cplusplus
+
// FIPS functions.

View file

@ -26,3 +26,15 @@
suppressed_configs += [ "//build/config/compiler:thin_archive" ] suppressed_configs += [ "//build/config/compiler:thin_archive" ]
defines = [] defines = []
diff --git a/third_party/googletest/BUILD.gn.orig b/third_party/googletest/BUILD.gn
index 14089f0..b7dc621 100644
--- a/third_party/googletest/BUILD.gn.orig
+++ b/third_party/googletest/BUILD.gn
@@ -48,7 +48,6 @@ config("gtest_config") {
configs = [
"//third_party/abseil-cpp:absl_include_config",
- "//third_party/re2:re2_config",
]
}