backports/signal-desktop: upgrade to 7.35.1
This commit is contained in:
parent
6240471d87
commit
a1e99a3d1b
3 changed files with 87 additions and 9 deletions
|
@ -2,7 +2,7 @@
|
||||||
# Contributor: Antoine Martin (ayakael) <dev@ayakael.net>
|
# Contributor: Antoine Martin (ayakael) <dev@ayakael.net>
|
||||||
# Maintainer: Antoine Martin (ayakael) <dev@ayakael.net>
|
# Maintainer: Antoine Martin (ayakael) <dev@ayakael.net>
|
||||||
pkgname=signal-desktop
|
pkgname=signal-desktop
|
||||||
pkgver=7.34.0
|
pkgver=7.35.1
|
||||||
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/"
|
||||||
|
@ -66,7 +66,7 @@ makedepends="
|
||||||
options="net !check"
|
options="net !check"
|
||||||
|
|
||||||
# use _check_depends to validate this
|
# use _check_depends to validate this
|
||||||
_libsignalver=0.60.2
|
_libsignalver=0.62.0
|
||||||
_ringrtcver=2.48.7
|
_ringrtcver=2.48.7
|
||||||
_webrtcver=6723a
|
_webrtcver=6723a
|
||||||
_stokenizerver=0.2.1
|
_stokenizerver=0.2.1
|
||||||
|
@ -84,6 +84,7 @@ source="
|
||||||
signal-update-links.patch
|
signal-update-links.patch
|
||||||
signal-show-window-please.patch
|
signal-show-window-please.patch
|
||||||
ringrtc-webrtc-renamed.patch
|
ringrtc-webrtc-renamed.patch
|
||||||
|
ringrtc-tsconfig-type-roots.patch
|
||||||
webrtc-shared-libs.patch
|
webrtc-shared-libs.patch
|
||||||
webrtc-compiler.patch
|
webrtc-compiler.patch
|
||||||
webrtc-gcc13.patch
|
webrtc-gcc13.patch
|
||||||
|
@ -112,7 +113,8 @@ export CARGO_PROFILE_RELEASE_STRIP="symbols"
|
||||||
|
|
||||||
export YARN_CACHE_FOLDER="$srcdir/.yarn"
|
export YARN_CACHE_FOLDER="$srcdir/.yarn"
|
||||||
|
|
||||||
_check_depends() {
|
_update_depends() {
|
||||||
|
msg "Updating extra dependencies version information in $APKBUILD..."
|
||||||
# _libsignalver: follow signal-desktop package.json -> @signalapp/libsignal-client
|
# _libsignalver: follow signal-desktop package.json -> @signalapp/libsignal-client
|
||||||
# _ringrtcver: follow signal-desktop package.json -> @signalapp/ringrtc
|
# _ringrtcver: follow signal-desktop package.json -> @signalapp/ringrtc
|
||||||
# _webrtcver: follow ringrtc (on version above) -> config/version.properties -> webrtc.version
|
# _webrtcver: follow ringrtc (on version above) -> config/version.properties -> webrtc.version
|
||||||
|
@ -126,10 +128,12 @@ _check_depends() {
|
||||||
local _extensionver=$(curl --silent https://raw.githubusercontent.com/signalapp/better-sqlite3/v$_bsqlitever/deps/download.js | grep "const EXTENSION_VERSION" | awk '{print $4}' | tr -d "'" | tr -d ';' | head -n 1)
|
local _extensionver=$(curl --silent https://raw.githubusercontent.com/signalapp/better-sqlite3/v$_bsqlitever/deps/download.js | grep "const EXTENSION_VERSION" | awk '{print $4}' | tr -d "'" | tr -d ';' | head -n 1)
|
||||||
local _stokenizerver=$(curl --silent https://raw.githubusercontent.com/signalapp/Signal-Sqlcipher-Extension/refs/tags/v$_extensionver/Cargo.lock | sed -n "/^name = \"signal-tokenizer\"$/,/^$/p" | awk -F ' = ' '{if($1=="version"){print $2}}' | tr -d '"')
|
local _stokenizerver=$(curl --silent https://raw.githubusercontent.com/signalapp/Signal-Sqlcipher-Extension/refs/tags/v$_extensionver/Cargo.lock | sed -n "/^name = \"signal-tokenizer\"$/,/^$/p" | awk -F ' = ' '{if($1=="version"){print $2}}' | tr -d '"')
|
||||||
|
|
||||||
echo _libsignalver=$_libsignalver
|
sed -i \
|
||||||
echo _ringrtcver=$_ringrtcver
|
-e "s|^_libsignalver=.*|_libsignalver=$_libsignalver|" \
|
||||||
echo _webrtcver=$_webrtcver
|
-e "s|^_ringrtcver=.*|_ringrtcver=$_ringrtcver|" \
|
||||||
echo _stokenizerver=$_stokenizerver
|
-e "s|^_webrtcver=.*|_webrtcver=$_webrtcver|" \
|
||||||
|
-e "s|^_stokenizerver=.*|_stokenizerver=$_stokenizerver|" \
|
||||||
|
APKBUILD
|
||||||
}
|
}
|
||||||
|
|
||||||
# webrtc only, the other dependencies are fine with tarballs
|
# webrtc only, the other dependencies are fine with tarballs
|
||||||
|
@ -447,8 +451,8 @@ package() {
|
||||||
}
|
}
|
||||||
|
|
||||||
sha512sums="
|
sha512sums="
|
||||||
30e06721b01e580414c5e57b63350fc42edbe837b0a60a9cd100bc6ab1758fa6fd5744dc3a35d991db62f363eab791c45b43e1d9d5c81af9e67685114ae2e630 Signal-Desktop-7.34.0.tar.gz
|
9e780149b4734c6d9834606b0e15bedc99739ce9c637e69c9d0cedf9e3f870819bba411b7f192920ab4bc8adc9bd0ddccb0ca6790933f701c06b41175e3f7dce Signal-Desktop-7.35.1.tar.gz
|
||||||
26780a0a6a529cee18f5c3b58f0395c6b5b630dbc8d2bbaa345dd7dd319a0e8548575c915dc16de6ac5d421fffdbe898f2dedb1fa3b4eab5d26debdfc1da515b libsignal-0.60.2.tar.gz
|
2a1d171a6bf9f1dfea9fc1fbc4f200c8b9e2ccb30d9d63f29007f252ff79ae7d149ab5707a8e430010da90ad1e3112475bd0eba8efb5cc011d5e3098aa1e26de libsignal-0.62.0.tar.gz
|
||||||
e5e5ab27dc3bd37ef577c248d450e70fa11e72bdfab00fef233aad84d3d8aa3434166c03267f6b95b69d593e9da2f37017b5b7a0913f68499f387354742ba50a ringrtc-2.48.7.tar.gz
|
e5e5ab27dc3bd37ef577c248d450e70fa11e72bdfab00fef233aad84d3d8aa3434166c03267f6b95b69d593e9da2f37017b5b7a0913f68499f387354742ba50a ringrtc-2.48.7.tar.gz
|
||||||
64eed5c2a6f5a505d014bc4fa80e15b21103df1ea27825eaa1dfecc23c269f198a7e98472f29de7cae4ac7fa4fede6e837c27494b8ec4d03e36b85b029c64831 webrtc-6723a.tar.zst
|
64eed5c2a6f5a505d014bc4fa80e15b21103df1ea27825eaa1dfecc23c269f198a7e98472f29de7cae4ac7fa4fede6e837c27494b8ec4d03e36b85b029c64831 webrtc-6723a.tar.zst
|
||||||
84a1f2fc29262a12842e94698d124a85b823128e72a493b0be8ea92fbb72c5c268499f4a6827cdedaae06ec73cce4039a39fe5c5d536cbef330e59ba0183da28 stokenizer-0.2.1.tar.gz
|
84a1f2fc29262a12842e94698d124a85b823128e72a493b0be8ea92fbb72c5c268499f4a6827cdedaae06ec73cce4039a39fe5c5d536cbef330e59ba0183da28 stokenizer-0.2.1.tar.gz
|
||||||
|
@ -458,6 +462,7 @@ cee74edb504ee5ae685e8a449ac35fabf949c33bfee5905778f850c3b18e17f9ae9bd501c89a7fd2
|
||||||
d50eb5724502df9ea4d795db8cfc27af767c25168d7db2af512e615be7cc2ca290210a9ae78e1abb153c0198677e858ad3d74926c958099d0319295e7d9e7f1d signal-update-links.patch
|
d50eb5724502df9ea4d795db8cfc27af767c25168d7db2af512e615be7cc2ca290210a9ae78e1abb153c0198677e858ad3d74926c958099d0319295e7d9e7f1d signal-update-links.patch
|
||||||
bfc8acdd13aa48d29c7657311733cc9d33c4899782efbd1ef6d25ad1698be4de7cc67e829324bc0309715d69ae37ea9f782cf54887317e817213e110d73d68e7 signal-show-window-please.patch
|
bfc8acdd13aa48d29c7657311733cc9d33c4899782efbd1ef6d25ad1698be4de7cc67e829324bc0309715d69ae37ea9f782cf54887317e817213e110d73d68e7 signal-show-window-please.patch
|
||||||
10284e0d86ab88de161ae689871082194f689ce416f3ebada8991d5db707994ea1cb8b4212756dd93ba5a3469964050988220f18afc37e38f3404a6e17ec8caf ringrtc-webrtc-renamed.patch
|
10284e0d86ab88de161ae689871082194f689ce416f3ebada8991d5db707994ea1cb8b4212756dd93ba5a3469964050988220f18afc37e38f3404a6e17ec8caf ringrtc-webrtc-renamed.patch
|
||||||
|
fd0c48de2f9426e901a111d6b8cf9453478b934de17edf321ac408f5a5327ded12ff01f0486b7ff2cc2a4628a75b19c73540ec037fe106a03bcda3f8bdcf6da2 ringrtc-tsconfig-type-roots.patch
|
||||||
98a7e4df27c3ed56c5968ebc3ae8e08bfb54362d0c910f9af1d414079a6d5fe0f18aa570ae3c38042f4691af6a130cb3ff689625e26a3987720dd319a5f587b1 webrtc-shared-libs.patch
|
98a7e4df27c3ed56c5968ebc3ae8e08bfb54362d0c910f9af1d414079a6d5fe0f18aa570ae3c38042f4691af6a130cb3ff689625e26a3987720dd319a5f587b1 webrtc-shared-libs.patch
|
||||||
fe78cdc58c18826fc4227cc8e9377980766229390544578f6a1a6f7322bc3243c066963b589323dbfe4f2bfd37f8859ad84f63cb3783317892e5ae3652270a3a webrtc-compiler.patch
|
fe78cdc58c18826fc4227cc8e9377980766229390544578f6a1a6f7322bc3243c066963b589323dbfe4f2bfd37f8859ad84f63cb3783317892e5ae3652270a3a webrtc-compiler.patch
|
||||||
48ab5c733e643eaff08ccbe839086bebbb68d397984ad7c5c5b68df8071f75d2dfe92c3f52d9fbf9b81754934bdfa8a67c69addd476ce4265b978592fb4ff9bd webrtc-gcc13.patch
|
48ab5c733e643eaff08ccbe839086bebbb68d397984ad7c5c5b68df8071f75d2dfe92c3f52d9fbf9b81754934bdfa8a67c69addd476ce4265b978592fb4ff9bd webrtc-gcc13.patch
|
||||||
|
|
61
backports/signal-desktop/README.md
Normal file
61
backports/signal-desktop/README.md
Normal file
|
@ -0,0 +1,61 @@
|
||||||
|
# signal-desktop
|
||||||
|
|
||||||
|
This is the `signal-desktop` package for Alpine Linux.
|
||||||
|
|
||||||
|
Please report any issues [using Gitlab](https://gitlab.alpinelinux.org/alpine/aports/-/issues/new) and tag @ayakael
|
||||||
|
|
||||||
|
## Building signal-desktop
|
||||||
|
|
||||||
|
Signal-desktop is an electron application that is rather complex to build
|
||||||
|
|
||||||
|
The first layer of complexity is the use of dependencies that are themselves
|
||||||
|
rather complex to build. Some are based on nodejs, others rust. Those
|
||||||
|
dependencies are built before signal-desktop, like ringrtc, webrtc and
|
||||||
|
libsignal. The versions of those dependencies are tracked in different files,
|
||||||
|
which adds complexity when maintaining the package. Executing `abuild
|
||||||
|
_update_depends` automatically fetches the expected versions and updates
|
||||||
|
the relevant variables.
|
||||||
|
|
||||||
|
A second layer of complexity is that webrtc's source code isn't available as a
|
||||||
|
downloadable tarball. It is only fetchable using Google's `gclient` available
|
||||||
|
in `depot_tools` with a reimplemented version in the `teapot` package. By
|
||||||
|
executing, `abuild snapshot`, webrtc tarball can be fetched and packaged, as
|
||||||
|
long as `gclient` is in your path. For ease of maintenance, a workflow on
|
||||||
|
[Ayakael's Forge](https://ayakael.net/mirrors/signal-desktop) automatically
|
||||||
|
fetches and packages the source code and makes it available in a [generic
|
||||||
|
Forgejo repository](https://ayakael.net/mirrors/-/packages/generic/webrtc).
|
||||||
|
|
||||||
|
## Updating signal-desktop
|
||||||
|
|
||||||
|
In a nutshell:
|
||||||
|
|
||||||
|
1. Set `pkgver` to up-to-date version
|
||||||
|
|
||||||
|
2. Update the dependency versions using `abuild _update_depends`
|
||||||
|
|
||||||
|
3. Optional: fetch webrtc using `abuild snapshot`, making sure `client`
|
||||||
|
is in your path
|
||||||
|
|
||||||
|
4. Update source checksum using `abuild checksum`
|
||||||
|
|
||||||
|
## Finding dependency version information
|
||||||
|
|
||||||
|
Here is where the version information is stored. It is different for every
|
||||||
|
extra dependency.
|
||||||
|
|
||||||
|
* _libsignalver: follow signal-desktop package.json ->
|
||||||
|
@signalapp/libsignal-client
|
||||||
|
* _ringrtcver: follow signal-desktop package.json -> @signalapp/ringrtc
|
||||||
|
* _webrtcver: follow ringrtc (on version above) -> config/version.properties ->
|
||||||
|
webrtc.version downloading tarball generated with abuild snapshot (with gclient
|
||||||
|
dependencies fetched)
|
||||||
|
* _stokenizerver: follow @signalapp/better-sqlite3 (on version in package.json)
|
||||||
|
-> deps/download.js -> TOKENIZER_VERSION
|
||||||
|
|
||||||
|
## Why is this package still in testing
|
||||||
|
|
||||||
|
As `electron` is still in testing, this package cannot yet be moved to
|
||||||
|
`community`. Until that changes, this package is also kept-to-date against the
|
||||||
|
latest release of Alpine Linux (along with `electron`) in
|
||||||
|
[Ayakael's Forge](https://ayakael.net/forge/-/packages/alpine/signal-desktop).
|
||||||
|
This is true of all Ayakael's packages still in `testing`.
|
12
backports/signal-desktop/ringrtc-tsconfig-type-roots.patch
Normal file
12
backports/signal-desktop/ringrtc-tsconfig-type-roots.patch
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
diff --git a/ringrtc/src/node/tsconfig.json.orig b/ringrtc/src/node/tsconfig.json
|
||||||
|
index d57b752dc7a..2a82ed127e2 100644
|
||||||
|
--- a/ringrtc/src/node/tsconfig.json.orig
|
||||||
|
+++ b/ringrtc/src/node/tsconfig.json
|
||||||
|
@@ -6,6 +6,7 @@
|
||||||
|
"outDir": "./dist",
|
||||||
|
"strict": true,
|
||||||
|
"esModuleInterop": true,
|
||||||
|
+ "typeRoots": ["./node_modules/@types"],
|
||||||
|
"sourceMap": true
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in a new issue