backports/signal-desktop: upgrade to 7.4.0

This commit is contained in:
Antoine Martin 2024-04-13 16:53:49 -04:00
parent 92287e391b
commit ecb929e891
7 changed files with 88 additions and 55 deletions

View file

@ -1,7 +1,7 @@
# Contributor: lauren n. liberda <lauren@selfisekai.rocks>
# Maintainer: lauren n. liberda <lauren@selfisekai.rocks>
pkgname=signal-desktop
pkgver=6.46.0
pkgver=7.4.0
pkgrel=0
pkgdesc="A messaging app for simple private communication with friends"
url="https://github.com/signalapp/Signal-Desktop/"
@ -28,6 +28,7 @@ makedepends="
cmake
crc32c-dev
dav1d-dev
double-conversion-dev
electron-dev
electron-tasje
ffmpeg-dev
@ -39,6 +40,7 @@ makedepends="
libjpeg-turbo-dev
libepoxy-dev
libevent-dev
libsecret-dev
libvpx-dev
libwebp-dev
lld
@ -48,6 +50,7 @@ makedepends="
npm
openh264-dev
openssl-dev
opus-dev
pipewire-dev
protoc
pulseaudio-dev
@ -61,24 +64,24 @@ makedepends="
options="net !check"
# follow signal-desktop package.json -> @signalapp/libsignal-client
_libsignalver=0.39.1
_libsignalver=0.41.2
# follow signal-desktop package.json -> @signalapp/ringrtc
_ringrtcver=2.36.0
_ringrtcver=2.39.2
# follow ringrtc (on version above) -> config/version.properties -> webrtc.version
# downloading tarball generated with abuild snapshot (with gclient dependencies fetched)
_webrtcver=5993d
_webrtcver=6261c
# follow @signalapp/better-sqlite3 (on version in package.json) -> deps/download.js -> TOKENIZER_VERSION
# last bsqlite version: 8.6.0
# last bsqlite version: 8.7.1
_stokenizerver=0.2.1
source="
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/ringrtc/archive/refs/tags/v$_ringrtcver/ringrtc-$_ringrtcver.tar.gz
https://s3.sakamoto.pl/lnl-aports-snapshots/webrtc-$_webrtcver.tar.zst
https://ab-sn.lnl.gay/webrtc-$_webrtcver.tar.zst
https://github.com/signalapp/Signal-FTS5-Extension/archive/refs/tags/v$_stokenizerver/stokenizer-$_stokenizerver.tar.gz
bettersqlite-use-system-sqlcipher.patch
@ -88,21 +91,21 @@ source="
signal-show-window-please.patch
ringrtc-webrtc-renamed.patch
webrtc-shared-like-my-wife.patch
webrtc-use-alpine-target.patch
webrtc-clang-debug-info.patch
webrtc-compiler.patch
webrtc-gcc13.patch
signal-desktop
"
builddir="$srcdir/Signal-Desktop-$pkgver"
export CC=clang
export CXX=clang++
# webrtc broken on clang https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101227
export CC=gcc
export CXX=g++
# required to find the tools
export AR=llvm-ar
export NM=llvm-nm
export LD=clang++
export AR=ar
export NM=nm
export LD=g++
# less log spam, reproducible, allow lto with rust
export CFLAGS="${CFLAGS/-g/} -O2 -Wno-error -Wno-deprecated-builtins -Wno-unknown-warning-option -Wno-builtin-macro-redefined -Wno-deprecated-declarations"
@ -111,7 +114,7 @@ export CPPFLAGS="$CPPFLAGS -D__DATE__= -D__TIME__= -D__TIMESTAMP__="
export CARGO_PROFILE_RELEASE_OPT_LEVEL=2
export CARGO_PROFILE_RELEASE_STRIP="symbols"
export RUSTFLAGS="$RUSTFLAGS -C linker=clang"
#export RUSTFLAGS="$RUSTFLAGS -C linker=clang"
export YARN_CACHE_FOLDER="$srcdir/.yarn"
@ -198,15 +201,17 @@ prepare() {
(
cd "$srcdir"/webrtc-$_webrtcver
# opus - https://github.com/signalapp/opus/commit/593419e833acab4d15b4901fe156177fb7315468
local use_system="
brotli
crc32c
dav1d
double-conversion
ffmpeg
flatbuffers
fontconfig
freetype
harfbuzz-ng
highway
icu
jsoncpp
libaom
@ -215,17 +220,19 @@ prepare() {
libevent
libjpeg
libpng
libsecret
libvpx
libwebp
libxml
libxslt
openh264
opus
re2
snappy
woff2
zlib
"
for _lib in $use_system libjpeg_turbo; do
for _lib in $use_system double_conversion libjpeg_turbo; do
msg "Removing buildscripts for system provided $_lib"
find . -type f -path "*{third_party,ringrtc}/$_lib/*" \
\! -path "*third_party/$_lib/chromium/*" \
@ -318,7 +325,7 @@ build() {
clang_base_path=\"/usr\"
custom_toolchain=\"//build/toolchain/linux/unbundle:default\"
is_cfi=false
is_clang=true
is_clang=false
is_debug=false
is_official_build=true
host_toolchain=\"//build/toolchain/linux/unbundle:default\"
@ -327,6 +334,7 @@ build() {
rtc_use_pipewire=true
symbol_level=0
use_custom_libcxx=false
use_lld=true
use_sysroot=false
"
mkdir -p "$srcdir"/ringrtc-$_ringrtcver/out/release
@ -464,20 +472,19 @@ package() {
}
sha512sums="
111aadf2f2b4972a01a08b14351b9cd6e5fa2691fa687a2671a10c493ea3b8089e30d2d6fafb058cbc547a9fb9e0a220a19d39328e17ba9ff1a26c7b5d86b3ce Signal-Desktop-6.46.0.tar.gz
c55ca3822836a2cce69d8b9b4f2a5e9a7883ca12824e3da56bb2674fa925559cc7e3fb8676526108d413e34e8e6590e5d4497f38b7a355f633c92f008ae98c7a libsignal-0.39.1.tar.gz
f0aae6c33003969064a654948f666223f4380a94e7f96b3d329095a5f0e28189705281b57adc9bcfcab550619bc325faa136f728e6e3a58c32f2118d4759f302 ringrtc-2.36.0.tar.gz
20d4264f7d5b8e258eb3f5c453ca95ad6bb44dd5115c3e9d2b1044354889f364a2ddced15c4b15f17ca51afc9d4603bd5e9e3b20bc37f3c0fb79e4edf15fe078 webrtc-5993d.tar.zst
51edb647832a1f9658abb7fddb4c35e8c84f5ea73c36f52bb02cf3460b871ace5bc6a86b439df738d6fbc418f0753e717962a0edefa95a0d4b2ca846fa11371e Signal-Desktop-7.4.0.tar.gz
a311dd8d61d6c072a76e247bf4e4d752f1fe9dfcf0993d1b14790dc2eeec65d3c1bf8b8288156dee5ff89cbed9e282b73a58fcdd69bda9b49441fc9c443a83ec libsignal-0.41.2.tar.gz
c36eb4f3ab02cfa341ccb42a80d5fed53bf21bf495eb3627712db912c97bd76f4fb8fa1951ecfeff1b64c36fdfe72aec59bf459b27a612da5b4e16a885c225e4 ringrtc-2.39.2.tar.gz
341144563eafbd6e263c46cca5cf4954c9d8c72ba4caea1c9342b5b5311e7f618f3e595051195f9894662928cc5015641303aae2c5d5bbc18b22fb36651ee2e8 webrtc-6261c.tar.zst
84a1f2fc29262a12842e94698d124a85b823128e72a493b0be8ea92fbb72c5c268499f4a6827cdedaae06ec73cce4039a39fe5c5d536cbef330e59ba0183da28 stokenizer-0.2.1.tar.gz
be5b4e823543b79175a12314f10c6326d9f0d59f470136962daed4665887006acc05b48b40dc1b67747396d8f6f7d23be298c1e110ccdd35ff9b09d5e6b80bab bettersqlite-use-system-sqlcipher.patch
90d47914e30f095515c47c9ef7c763a7a2583a281228d6ea7e2a3444be670b3ae506c82b4fcea8a228f88f688a43c23c8dcef52b65805d2105287234550718a5 libsignal-auditable.patch
60a45285d885922f5c21f64b761a10efbee9081baf3efa4c8c13abc6a43dc4d27662ed10e239b0fa2071ab9e3a0dbbb4b11d6e3d26fe2b74a19f39e72b74a5bd signal-disable-updates.patch
92de6fc7cc5f2b6d65bedbd74cc733dd86dafc9cbfb9b727c3267aef63a71a07247cde9b163c68fddfeb9096dcd7f554d36d0b2de078d8905e3825645ddbd6eb libsignal-auditable.patch
f13389dd7a1360022d919fa1350210a92e5b832aa32b0ac278b63b1f41462c7807ac28c7867eecf71dac8f3ca699fd0fb0d87de8d1244c3e65cc4b78304e8ef4 signal-disable-updates.patch
d50eb5724502df9ea4d795db8cfc27af767c25168d7db2af512e615be7cc2ca290210a9ae78e1abb153c0198677e858ad3d74926c958099d0319295e7d9e7f1d signal-update-links.patch
646d303fe58cae3f0896ae0275a66695b902fae6ddde7c568cc9798157dee9f45ceff907bc951fadc4c511d512a73d114b4e4f7c8914e2311c63929d29e1621a signal-show-window-please.patch
ab51b8fdcda1d8811213d2c5d8cb5d8457b478a02e23ce40f36b38ec56d45a3bd7a2d184720c27046f98a27771551cfad93c1290fe93856cc02695d318b33e47 ringrtc-webrtc-renamed.patch
9d92389637cdda83a0a7039fa6c52516d7bc491d0b1e42d5374b9d1f4fa7b9c930642f2dca896da17a2dc3344fa1bb97434c8dddd0539a4fedfd0dec809fc875 webrtc-shared-like-my-wife.patch
354f516a74c5491727afe084ef7688b3e1359d230daa720ffc30b33d3ea7579c9f37a50fbdc5fe2e8dc5322e42a0a39e4ae3449d4cf5b77daed2229bd743028c webrtc-use-alpine-target.patch
679b286d8f9f682d4de41402ffa6834d3085981ca5458cf0e02d3faa0c3c05b17f61b49b07b7fa42d9f91e737dc2f4e6086978332bb4111f8e9d3107736147ef webrtc-clang-debug-info.patch
83fe8a7d8514018f8b5c217d3513345842f6037e6877cd5129479f03d91729b32621e814b4bdb0906df1fe825146bc7f1f72664434985e5e93f6df641a019420 webrtc-gcc13.patch
e07ae8544988d402aaf0fbd95ea36a64c94c59566c561132578aa6dcf8ff11a34058530e64dc204e5cadc2482f1401e74b32384a144e5e08017c663d0cf7c2fc webrtc-compiler.patch
88515d8b8cc82355c9f9b0f44fac83b7ff149b13e9fb102fd46036ec5234cfb2385fa5ad58a0520ee604b93dc4ddd6ae18a7005978ef207841645724ef7a9749 webrtc-gcc13.patch
87534e7b5ad7365509eab75629e6bd1a9ed61ee92f7e358405a0abaf0df57de14623fb3894eb082f8785422e5c087e1c50f9e2e5cafbb2529591fd7bf447f7f5 signal-desktop
"

View file

@ -4,8 +4,8 @@
out_dir = options.out_dir.strip('"') or os.path.join('build', configuration_name)
- cmdline = ['cargo', 'build', '--target', cargo_target, '-p', 'libsignal-node']
+ cmdline = ['cargo', 'auditable', 'build', '--target', cargo_target, '-p', 'libsignal-node']
- 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':
cmdline.append('--release')
print("Running '%s'" % (' '.join(cmdline)))

View file

@ -1,9 +1,9 @@
--- a/config/production.json
+++ b/config/production.json
@@ -11,5 +11,5 @@
},
"serverPublicParams": "AMhf5ywVwITZMsff/eCyudZx9JDmkkkbV6PInzG4p8x3VqVJSFiMvnvlEKWuRob/1eaIetR31IYeAbm0NdOuHH8Qi+Rexi1wLlpzIo1gstHWBfZzy1+qHRV5A4TqPp15YzBPm0WSggW6PbSn+F4lf57VCnHF7p8SvzAA2ZZJPYJURt8X7bbg+H3i+PEjH9DXItNEqs2sNcug37xZQDLm7X36nOoGPs54XsEGzPdEV+itQNGUFEjY6X9Uv+Acuks7NpyGvCoKxGwgKgE5XyJ+nNKlyHHOLb6N1NuHyBrZrgtY/JYJHRooo5CEqYKBqdFnmbTVGEkCvJKxLnjwKWf+fEPoWeQFj5ObDjcKMZf2Jm2Ae69x+ikU5gBXsRmoF94GXQ==",
@@ -15,5 +15,5 @@
"serverPublicParams": "AMhf5ywVwITZMsff/eCyudZx9JDmkkkbV6PInzG4p8x3VqVJSFiMvnvlEKWuRob/1eaIetR31IYeAbm0NdOuHH8Qi+Rexi1wLlpzIo1gstHWBfZzy1+qHRV5A4TqPp15YzBPm0WSggW6PbSn+F4lf57VCnHF7p8SvzAA2ZZJPYJURt8X7bbg+H3i+PEjH9DXItNEqs2sNcug37xZQDLm7X36nOoGPs54XsEGzPdEV+itQNGUFEjY6X9Uv+Acuks7NpyGvCoKxGwgKgE5XyJ+nNKlyHHOLb6N1NuHyBrZrgtY/JYJHRooo5CEqYKBqdFnmbTVGEkCvJKxLnjwKWf+fEPoWeQFj5ObDjcKMZf2Jm2Ae69x+ikU5gBXsRmoF94GXTLfN0/vLt98KDPnxwAQL9j5V1jGOY8jQl6MLxEs56cwXN0dqCnImzVH3TZT1cJ8SW1BRX6qIVxEzjsSGx3yxF3suAilPMqGRp4ffyopjMD1JXiKR2RwLKzizUe5e8XyGOy9fplzhw3jVzTRyUZTRSZKkMLWcQ/gv0E4aONNqs4P+NameAZYOD12qRkxosQQP5uux6B2nRyZ7sAV54DgFyLiRcq1FvwKw2EPQdk4HDoePrO/RNUbyNddnM/mMgj4FW65xCoT1LmjrIjsv/Ggdlx46ueczhMgtBunx1/w8k8V+l8LVZ8gAT6wkU5J+DPQalQguMg12Jzug3q4TbdHiGCmD9EunCwOmsLuLJkz6EcSYXtrlDEnAM+hicw7iergYLLlMXpfTdGxJCWJmP4zqUFeTTmsmhsjGBt7NiEB/9pFFEB3pSbf4iiUukw63Eo8Aqnf4iwob6X1QviCWuc8t0I=",
"serverTrustRoot": "BXu6QIKVz5MA8gstzfOgRQGqyLqOwNKHL6INkv3IHWMF",
"genericServerPublicParams": "AByD873dTilmOSG0TjKrvpeaKEsUmIO8Vx9BeMmftwUs9v7ikPwM8P3OHyT0+X3EUMZrSe9VUp26Wai51Q9I8mdk0hX/yo7CeFGJyzoOqn8e/i4Ygbn5HoAyXJx5eXfIbqpc0bIxzju4H/HOQeOpt6h742qii5u/cbwOhFZCsMIbElZTaeU+BWMBQiZHIGHT5IE0qCordQKZ5iPZom0HeFa8Yq0ShuEyAl0WINBiY6xE3H/9WnvzXBbMuuk//eRxXgzO8ieCeK8FwQNxbfXqZm6Ro1cMhCOF3u7xoX83QhpN",
- "updatesEnabled": true
+ "updatesEnabled": false
}

View file

@ -1,11 +0,0 @@
--- ./build/config/compiler/BUILD.gn.orig
+++ ./build/config/compiler/BUILD.gn
@@ -765,7 +765,7 @@
# toolchain has this flag.
# We only use one version of LLVM within a build so there's no need to
# upgrade debug info, which can be expensive since it runs the verifier.
- ldflags += [ "-Wl,-mllvm,-disable-auto-upgrade-debug-info" ]
+ #ldflags += [ "-Wl,-mllvm,-disable-auto-upgrade-debug-info" ]
}
}

View file

@ -0,0 +1,40 @@
--- ./build/config/compiler/BUILD.gn.orig
+++ ./build/config/compiler/BUILD.gn
@@ -624,14 +624,14 @@
if (default_toolchain != "//build/toolchain/cros:target" &&
!llvm_android_mainline) {
cflags += [
- "-mllvm",
- "-split-threshold-for-reg-with-hint=0",
+ #"-mllvm",
+ #"-split-threshold-for-reg-with-hint=0",
]
if (use_thin_lto && is_a_target_toolchain) {
if (is_win) {
ldflags += [ "-mllvm:-split-threshold-for-reg-with-hint=0" ]
} else {
- ldflags += [ "-Wl,-mllvm,-split-threshold-for-reg-with-hint=0" ]
+ #ldflags += [ "-Wl,-mllvm,-split-threshold-for-reg-with-hint=0" ]
}
}
}
@@ -805,7 +805,7 @@
# We only use one version of LLVM within a build so there's no need to
# upgrade debug info, which can be expensive since it runs the verifier.
- ldflags += [ "-Wl,-mllvm,-disable-auto-upgrade-debug-info" ]
+ #ldflags += [ "-Wl,-mllvm,-disable-auto-upgrade-debug-info" ]
}
# TODO(https://crbug.com/1211155): investigate why this isn't effective on
@@ -1191,8 +1191,8 @@
} else if (current_cpu == "arm64") {
if (is_clang && !is_android && !is_nacl && !is_fuchsia &&
!(is_chromeos_lacros && is_chromeos_device)) {
- cflags += [ "--target=aarch64-linux-gnu" ]
- ldflags += [ "--target=aarch64-linux-gnu" ]
+ cflags += [ "--target=aarch64-alpine-linux-musl" ]
+ ldflags += [ "--target=aarch64-alpine-linux-musl" ]
}
} else if (current_cpu == "mipsel" && !is_nacl) {
ldflags += [ "-Wl,--hash-style=sysv" ]

View file

@ -8,3 +8,13 @@
#include <string>
--- ./modules/audio_coding/neteq/reorder_optimizer.cc.orig
+++ ./modules/audio_coding/neteq/reorder_optimizer.cc
@@ -11,6 +11,7 @@
#include "modules/audio_coding/neteq/reorder_optimizer.h"
#include <algorithm>
+#include <cstdint>
#include <limits>
#include <vector>

View file

@ -1,13 +0,0 @@
--- ./build/config/compiler/BUILD.gn
+++ ./build/config/compiler/BUILD.gn
@@ -937,8 +937,8 @@
} else if (current_cpu == "arm64") {
if (is_clang && !is_android && !is_nacl && !is_fuchsia &&
!(is_chromeos_lacros && is_chromeos_device)) {
- cflags += [ "--target=aarch64-linux-gnu" ]
- ldflags += [ "--target=aarch64-linux-gnu" ]
+ cflags += [ "--target=aarch64-alpine-linux-musl" ]
+ ldflags += [ "--target=aarch64-alpine-linux-musl" ]
}
if (is_android) {
# Outline atomics crash on Exynos 9810. http://crbug.com/1272795