Compare commits

...

27 commits
edge ... v3.21

Author SHA1 Message Date
ba63055d9e backports/element-desktop: new aport 2025-01-08 01:48:51 +00:00
356723b278 backports/electron: upgrade to 33.3.1 2025-01-07 15:15:38 +00:00
76b40a1069 backports/nb: upgrade to 7.15.1 2025-01-06 00:50:43 +00:00
66d1008340 backports/calibre: upgrade to 7.23.0 2025-01-06 00:45:56 +00:00
ea14ff2f16
backports/py3-pathvalidate: upgrade to 3.2.3 2025-01-05 19:34:13 -05:00
8cd075ebd1
backports/*.patch: cleanup 2025-01-05 19:33:19 -05:00
1d2997ee12
backports/dex: upgrade to 0.10.1 2024-12-29 13:24:55 -05:00
afaf7e2a4e
backports/signal-desktop: upgrade to 7.36.1 2024-12-18 17:31:42 -05:00
e84f1cf23c backports/rapidfuzz: upgrade to 3.2.0 2024-12-18 13:53:09 +00:00
c555209ae8 backports/py3-levenshtein: upgrade to 0.26.1 2024-12-16 15:45:07 +00:00
ea2861a45a backports/py3-apsw: upgrade to 3.47.2.0 2024-12-16 15:41:29 +00:00
3429a21d56 backports/signal-desktop: build against clang-19 2024-12-16 03:56:26 +00:00
31b2a329c9
backports/nb: upgrade to 7.15.0 2024-12-15 17:27:36 -05:00
ddecef58e6
backports/rapidfuzz: upgrade to 3.1.1 2024-12-14 13:24:44 -05:00
158d711adf backports/soqt: upgrade to 1.6.3 2024-12-13 20:57:48 +00:00
8c8131b78c backports/coin: upgrade to 4.0.3 2024-12-13 20:57:42 +00:00
0ccdc8022c backports/py3-colored: upgrade to 2.2.4 2024-12-13 20:46:19 +00:00
3c26b6ecac testing/py3-limits: upgrade to 3.14.1 2024-12-13 18:06:00 +00:00
a2af8821e8 backports/calibre: upgrade to 7.22.0 2024-12-13 17:37:33 +00:00
961d68d2d6 backports/signal-desktop: upgrade to 7.36.0 2024-12-13 16:29:54 +00:00
b94c645942
backports/py3-rapidjson: drop due to orphan dependency 2024-12-13 11:19:55 -05:00
6a4d7776d7
backports/freetube: upgrade to 0.22.1 2024-12-13 10:10:01 -05:00
364345e160 backports/electron: upgrade to 33.3.0 2024-12-08 22:52:23 +00:00
d26837cfc6 backports/signal-desktop: upgrade to 7.35.1 2024-12-07 13:50:12 +00:00
57f44384da
backports/caprine: upgrade to 2.60.3 2024-12-04 09:22:20 -05:00
6240471d87
README: update for 3.21 2024-12-01 14:51:44 -05:00
cdb9e43039
backports/caprine: upgrade to 2.60.2 2024-12-01 13:47:59 -05:00
34 changed files with 674 additions and 168 deletions

View file

@ -18,14 +18,14 @@ Affixed to each repository description is the appropriate link for use in
#### Backports
```
https://ayakael.net/api/packages/forge/alpine/edge/backports
https://ayakael.net/api/packages/forge/alpine/v3.21/backports
```
Aports from the official Alpine repositories backported from edge.
#### User
```
https://ayakael.net/api/packages/forge/alpine/edge/user
https://ayakael.net/api/packages/forge/alpine/v3.21/user
```
Aports that have yet to be (or may never be) upstreamed to the official

58
backports/APKBUILD Normal file
View file

@ -0,0 +1,58 @@
# Contributor: lauren n. liberda <lauren@selfisekai.rocks>
# Maintainer: lauren n. liberda <lauren@selfisekai.rocks>
pkgname=py3-limits
pkgver=3.14.1
pkgrel=0
pkgdesc="Rate limiting using various strategies and storage backends such as redis & memcached"
url="https://github.com/alisaifee/limits"
arch="noarch"
license="MIT"
depends="
py3-deprecated
python3
"
makedepends="py3-setuptools py3-gpep517"
checkdepends="
py3-flaky
py3-mongo
py3-pytest
py3-pytest-asyncio
py3-pytest-benchmark
py3-pytest-cov
py3-pytest-lazy-fixtures
py3-pymemcache
py3-redis
"
subpackages="$pkgname-pyc"
source="
https://github.com/alisaifee/limits/archive/refs/tags/$pkgver/limits-$pkgver.tar.gz
our-std-is-good-enough.patch
tests-drop-etcd3-and-k-argument.patch
"
builddir="$srcdir/limits-$pkgver"
build() {
gpep517 build-wheel \
--wheel-dir .dist \
--output-fd 3 3>&1 >&2
}
check() {
python3 -m venv --clear --without-pip --system-site-packages .testenv
gpep517 install-wheel --destdir .testenv --prefix '' .dist/*.whl
.testenv/bin/python3 -m pytest -W ignore::DeprecationWarning \
-m 'not benchmark and not etcd and not integration and not memcached' \
-k 'not aio and not Storage and not strategy' -v
}
package() {
gpep517 install-wheel --destdir "$pkgdir" \
.dist/*.whl
}
sha512sums="
f30c7ec19c2d1edad9ed77dc590ae35717efa3956a4d97e465793e1923a4af08dc9921d90ee95d3c54ce3364b867ca67a9de62c61d627e07a3f50da20bdabd0f limits-3.14.1.tar.gz
271e3b0501f9f144eda8d2e96c93b285714e339b9217385e38cdbce1f4dec88f9c949e9419f8be94885092e7977f7dca29b86b5499e9fead678b42a686c337db our-std-is-good-enough.patch
e84f4db49349a6feba0f701b9d4357c5f66d64c4a23f8ce512528b0f44b5bbef55041c02d92aae3a4cc8d5340846f9e909217beb869a5aeb49df166dd29ae9e3 tests-drop-etcd3-and-k-argument.patch
"

View file

@ -1,6 +1,6 @@
# Maintainer: Cowington Post <cowingtonpost@gmail.com>
pkgname=calibre
pkgver=7.21.0
pkgver=7.23.0
pkgrel=0
pkgdesc="Ebook management application"
# qt6-webengine
@ -41,6 +41,7 @@ depends="
qt6-qtimageformats
qt6-qtsvg
qt6-qtwebengine
qt6-qtbase-dev
udisks2
"
makedepends="
@ -111,6 +112,6 @@ package() {
}
sha512sums="
0c2ee610833df83219c0c33b09e1374a8262f1630ccd48e3c4725c92922a3ac5d102ad83fc213457fb9de3efa4f5a2c98ff6dff039828e1661085a1054d7f631 calibre-7.21.0.tar.xz
c37ffc654664399cdec7b3a5e3648a880508104635c5c043bf25dac905a7971fddd64b627fb923207d0ed9aa9d1c5b3b7e31765717a2b3794d1b1c9bf25a353b calibre-7.23.0.tar.xz
eb8e7ce40ff8b8daf6e7e55a5dff8ec4dff06c45744266bb48b3194e92ab1196bc91468203e3c2ca1e5144166a7d6be90e6cf0253513e761b56a4c85be4c2c76 0001-calibre-no-update.patch
"

View file

@ -1,8 +1,8 @@
# Contributor: Antoine Martin (ayakael) <dev@ayakael.net>
# Maintainer: Antoine Martin (ayakael) <dev@ayakael.net>
pkgname=caprine
pkgver=2.60.1
pkgrel=2
pkgver=2.60.3
pkgrel=0
pkgdesc="Elegant Facebook Messenger desktop app"
arch="x86_64 aarch64" # blocked by electron
url="https://github.com/sindresorhus/caprine"
@ -17,12 +17,10 @@ source="
"
build() {
npm install --ignore-scripts
npx --yes patch-package
npm ci --ignore-scripts
npx patch-package
npx tsc
rm -r node_modules
npm install --ignore-scripts --production
npx --yes patch-package
npm prune --ignore-scripts --omit=dev
}
package() {
@ -59,7 +57,7 @@ package() {
-or -name "test" -prune -exec rm -r '{}' \;
}
sha512sums="
0df7f233c91f5a044dcffde94b976c6ad71e6d355518615c48cd825a249c01d63f455de31ece69193a66ca0fd8157506f9b88088da1bd47fc75e9d3800784ed0 caprine-2.60.1.tar.gz
edf6452294b3c661befd9811c5836da33311171d587cb9a5939ac11a0c1e2a7ebbc4f2a8d81e02c1db1a2d814ac1aa7bbdadca9e21892cc8d7f7e9c23dc2e221 caprine-2.60.3.tar.gz
a469e3bea24926119e51642b777ef794c5fa65421107903f967c36d81bbb1adb3d52469ce3a3301b2c890f1aa53ab989ded22a7c6e811fb8cf0a582dbd835e19 caprine.desktop
3ad8994c1a0417e73d622587769e527b4236a32c1a89442ff76413b75b4392d667c9e2908979b453e5926e54db6d94b31625340c5a94e84e91ea77f56feae778 caprine.sh
"

View file

@ -1,15 +1,15 @@
# Contributor: Aiden Grossman <agrossman154@yahoo.com>
# Maintainer:
# Maintainer: Antoine Martin (ayakael) <dev@ayakael.net>
pkgname=coin
pkgver=4.0.0
pkgrel=7
pkgver=4.0.3
pkgrel=0
pkgdesc="OpenGL OpenInventor compatible graphics library"
url="https://github.com/coin3d/coin"
license="BSD-3-Clause"
arch="all"
makedepends="boost-dev cmake glu-dev graphviz samurai"
subpackages="$pkgname-dev"
source="https://github.com/coin3d/coin/releases/download/Coin-$pkgver/coin-$pkgver-src.tar.gz
source="https://github.com/coin3d/coin/releases/download/v$pkgver/coin-$pkgver-src.tar.gz
TestSuitePatch.patch
"
builddir="$srcdir/coin"
@ -31,6 +31,6 @@ package() {
}
sha512sums="
e036276a243bfe252569cee1b67d38b8633fcf35bdf4e366a92ca67e23799d54d91fe272c23b383c451d330cee284809f28f237857493948149e0da1ebd64fae coin-4.0.0-src.tar.gz
b661bf2124b0de1b46e76a6699b0975abb3aed4dc9019bf32531c535179dc84a90fe4e19def6f6cda7b175470636040d0e58812d532198cf207296d37c539915 coin-4.0.3-src.tar.gz
aab464244b13371badf0878e5bfbcce859a42756cf8c7657d1480318aa291d296eac2741219c346bae056f761c5f46857f8fd1ec1c4129f86bc10236d3869deb TestSuitePatch.patch
"

View file

@ -1,8 +1,8 @@
# Contributor: Anjandev Momi <anjan@momi.ca>
# Maintainer: Anjandev Momi <anjan@momi.ca>
pkgname=dex
pkgver=0.9.0
pkgrel=1
pkgver=0.10.1
pkgrel=0
pkgdesc="program to generate and execute DesktopEntry files of the Application type"
url="https://github.com/jceb/dex"
arch="all"
@ -22,5 +22,5 @@ package() {
}
sha512sums="
d68f5482cb0948f27a724437ddfc6de9a0f502bfd0d5c60c76fb85dda3c30e4c432013e530f6a91138c9ac9ff36b3824cd5e382e9d29bb9fb2ec2b9de4133094 dex-0.9.0.tar.gz
4832e60416f07b90d4f4d03d6493322ccd44a73270edf289d80136587859d137cf39db12fc5cf38d3bdfa46aae3a4d1353c7776e702240b560a287190bdc2b57 dex-0.10.1.tar.gz
"

View file

@ -1,10 +1,10 @@
# Contributor: lauren n. liberda <lauren@selfisekai.rocks>
# Maintainer: Antoine Martin (ayakael) <dev@ayakael.net>
pkgname=electron
pkgver=33.2.1
pkgver=33.3.1
_gittag=v"${pkgver/_beta/-beta.}"
pkgrel=0
_chromium=130.0.6723.127
_chromium=130.0.6723.170
_copium_tag=129.1
_depot_tools=495b23b39aaba2ca3b55dd27cadc523f1cb17ee6
pkgdesc="Electron cross-platform desktop toolkit"
@ -544,7 +544,7 @@ lang() {
}
sha512sums="
e2df4454f4178af859c13aadee4ea04a5b6aa202972cad625e54bc68f5b8c25e098e50d428ec9c1886c37ccf49aaaedb4c5f02fc8bdd498314ba216901932185 electron-v33.2.1-130.0.6723.127.tar.zst
930ead371a320263bcc6c08cac3027d2968480f7dc2ba62d886c634209bac2d5db450f6efdca1a2b71fb63d0771fd0fe2468bf3bf9e311e4ac849f8bd4348088 electron-v33.3.1-130.0.6723.170.tar.zst
6138b3dbf3903c78f4ca1ed5a6c3c3c485471ded31976010484ce8893d03953df2b8f066a4fe84bbde5ae7ef9bbff664ef917e247b2e95dd471de40f2774d7d0 copium-129.1.tar.gz
29bb685e03356a77df5fd347cdf55194cc8b3265c421cc76e54d64edefc329dbcb052deb26b22e8f587ce68456876c071de1b7d258dd0fcc6ee66c875ec4a020 chromium-revert-drop-of-system-java.patch
53b7cdee8f7bfb4c9371cb385c473e34ed3d8ac7efaa43c0af061107560be30d8747b07fb0b16c01079b8c770f2c721bb5a8081313b7c126856ea4078a74da2a compiler.patch

View file

@ -0,0 +1,166 @@
# Contributor: lauren n. liberda <lauren@selfisekai.rocks>
maintainer="lauren n. liberda <lauren@selfisekai.rocks>"
pkgname=element-desktop
pkgver=1.11.89
pkgrel=0
pkgdesc="Secure and independent communication, connected via Matrix"
url="https://element.io/"
arch="aarch64 x86_64" # same as electron
license="GPL-3.0-only"
depends="
electron
font-inconsolata
font-inter
font-nunito
font-opensans
font-twemoji
"
makedepends="
cargo
electron-dev
electron-tasje
jq
libsecret-dev
nodejs
npm
python3
py3-setuptools
sqlcipher-dev
swc
yarn
"
source="
https://github.com/vector-im/element-desktop/archive/refs/tags/v$pkgver/element-desktop-$pkgver.tar.gz
https://github.com/vector-im/element-web/archive/refs/tags/v$pkgver/element-web-$pkgver.tar.gz
add-alpine-targets.patch
use-system-headers.patch
tasje-one-hak.patch
tasje-no-fuses.patch
no-source-maps.patch.web
use-system-fonts.patch.web
element-desktop
"
options="net !check" # broken
# secfixes:
# 1.11.30-r0:
# - CVE-2023-30609
# 1.11.26-r0:
# - CVE-2023-28103
# - CVE-2023-28427
# 1.11.7-r0:
# - CVE-2022-39249
# - CVE-2022-39250
# - CVE-2022-39251
# - CVE-2022-39236
# 1.11.4-r0:
# - CVE-2022-36059
# - CVE-2022-36060
# used by buildscripts (at least web's webpack)
export VERSION=$pkgver
export CARGO_PROFILE_RELEASE_OPT_LEVEL=2
export CARGO_PROFILE_RELEASE_STRIP="symbols"
export NODE_OPTIONS="--openssl-legacy-provider"
prepare() {
default_prepare
msg "Applying more patches"
for x in $source; do
case "$x" in
*.patch.web)
msg "$x"
patch -p1 -i "$srcdir"/$x -d "$srcdir"/element-web-$pkgver
;;
esac
done
rm -rf res/fonts
(
cd "$srcdir"/element-web-$pkgver
msg "Fetch element-web dependencies"
yarn install --frozen-lockfile --ignore-scripts --ignore-engines
jq '.show_labs_settings = true' < config.sample.json > config.json
)
ln -s "$srcdir"/element-web-$pkgver/webapp webapp
msg "Fetch element-desktop dependencies"
yarn install --frozen-lockfile --ignore-scripts
}
build() {
(
cd "$srcdir"/element-web-$pkgver
msg "Build element-web"
NODE_ENV=production yarn build
)
msg "Build element-desktop"
yarn asar-webapp
# add "optional" native dependencies
# hak stands for hack
yarn run hak --target "$(uname -m)-alpine-linux-musl"
# stripping in build because it gets into asar
strip node_modules/keytar/build/Release/keytar.node
yarn build:ts
yarn build:res
# we need it as js to be of any use for tasje.
# fails with `yarn tsc`. https://github.com/electron-userland/electron-builder/issues/7961
swc compile electron-builder.ts --out-file electron-builder.mjs
yarn install --frozen-lockfile --ignore-scripts --production
tasje -c electron-builder.mjs pack
}
check() {
(
cd "$srcdir"/element-web-$pkgver
yarn test
)
}
package() {
local resources="dist/resources"
install -Dm644 $resources/app.asar "$pkgdir"/usr/lib/element-desktop/app.asar
install -Dm644 webapp.asar "$pkgdir"/usr/lib/element-desktop/webapp.asar
cp -r $resources/app.asar.unpacked "$pkgdir"/usr/lib/element-desktop/app.asar.unpacked
install -Dm644 $resources/img/element.png "$pkgdir"/usr/lib/element-desktop/img/element.png
install -Dm755 "$srcdir"/$pkgname "$pkgdir"/usr/bin/$pkgname
install -Dm644 dist/$pkgname.desktop "$pkgdir"/usr/share/applications/$pkgname.desktop
while read -r size; do
install -Dm644 dist/icons/$size.png "$pkgdir"/usr/share/icons/hicolor/$size/apps/$pkgname.png
done < dist/icons/size-list
}
sha512sums="
3b382492694a036ab8e05e904f23e49d7126bf5842ab4b86183bb71e3ca3503bbe997a4e26c5ee2298740f0894e5f26d6dc31deb5f18caf9d4f78d30e1a591c8 element-desktop-1.11.89.tar.gz
55e4abf74bd19a06071d16a1e5d1130fc06c8937626e880bf54263598b7ad06311b164e3aa21dc2494b932e9e299f261030226744d746927b44b93b7831fd08b element-web-1.11.89.tar.gz
4747893ed3e43d3074e9afe1cdd668a6be0de073d439205fe8c38c5e0f4091cc76e3cd15d98818bea5139add29501d8d07e83c58e9da230a4ce5bb538d388f80 add-alpine-targets.patch
755b17f7b828eb6920c06a6950ad4e14c32c99d22e9c05fcef7a081b5d2034adb03db3958aa5209c99fb7201f4d888c2383fc9864c5e743dd33f8b5c4925acd7 use-system-headers.patch
92e69817fdc71f60c5c7dcbd3c7b13428cc18141cf5f27720326390f6817bec85fb1c60f8016b3a8fa275f601b16f646cda12b5e379a349368eef2f801b4de7a tasje-one-hak.patch
876d40639305d5258089069a01e218a2f14c32efccc3130f06398e8b4cd63bc740909162954a58ee11b909dc5b3e87c3383d73727aa13aa2d7093c9c63f04057 tasje-no-fuses.patch
ec635fde026f7fce8e8cc57960b5b9dcec4418416d4867ed47711422d48f068bb58a3c9ceb7715efc9c177beca3788da6b0babc9b689ea8c0724a0395f2b85f8 no-source-maps.patch.web
aaf46476bac403aa5204aa265fcf0654fad4c149fd74d0ec4273c051a5549943384cae3cdd62c5b78fdedfed55c11ecceb898b886e44165cbe7e30953a095cf9 use-system-fonts.patch.web
afc588311dc3b566a754e3e7fe6b37b99a06d47b8bbce0ed9acca8ef308fdab0bd1d41b406199e5cbdd86bdce695ff847cd8668857a235cbdc292ad8b899c063 element-desktop
"

View file

@ -0,0 +1,52 @@
--- a/scripts/hak/target.ts
+++ b/scripts/hak/target.ts
@@ -29,8 +29,10 @@
| "i686-unknown-linux-gnu"
| "x86_64-unknown-linux-musl"
| "x86_64-unknown-linux-gnu"
+ | "x86_64-alpine-linux-musl"
| "aarch64-unknown-linux-musl"
| "aarch64-unknown-linux-gnu"
+ | "aarch64-alpine-linux-musl"
| "powerpc64le-unknown-linux-musl"
| "powerpc64le-unknown-linux-gnu";
@@ -112,6 +114,13 @@
libC: MUSL,
};
+const x8664AlpineLinuxMusl: LinuxTarget = {
+ id: "x86_64-alpine-linux-musl",
+ platform: "linux",
+ arch: "x64",
+ libC: MUSL,
+};
+
const i686UnknownLinuxGnu: LinuxTarget = {
id: "i686-unknown-linux-gnu",
platform: "linux",
@@ -140,6 +149,13 @@
libC: MUSL,
};
+const aarch64AlpineLinuxMusl: LinuxTarget = {
+ id: "aarch64-alpine-linux-musl",
+ platform: "linux",
+ arch: "arm64",
+ libC: MUSL,
+};
+
const powerpc64leUnknownLinuxGnu: LinuxTarget = {
id: "powerpc64le-unknown-linux-gnu",
platform: "linux",
@@ -167,8 +183,10 @@
"i686-unknown-linux-gnu": i686UnknownLinuxGnu,
"x86_64-unknown-linux-musl": x8664UnknownLinuxMusl,
"x86_64-unknown-linux-gnu": x8664UnknownLinuxGnu,
+ "x86_64-alpine-linux-musl": x8664AlpineLinuxMusl,
"aarch64-unknown-linux-musl": aarch64UnknownLinuxMusl,
"aarch64-unknown-linux-gnu": aarch64UnknownLinuxGnu,
+ "aarch64-alpine-linux-musl": aarch64AlpineLinuxMusl,
"powerpc64le-unknown-linux-musl": powerpc64leUnknownLinuxMusl,
"powerpc64le-unknown-linux-gnu": powerpc64leUnknownLinuxGnu,
};

View file

@ -0,0 +1,3 @@
#!/bin/sh
exec electron /usr/lib/element-desktop/app.asar "$@"

View file

@ -0,0 +1,18 @@
--- ./webpack.config.js.orig
+++ ./webpack.config.js
@@ -102,15 +102,6 @@
}
const development = {};
- if (devMode) {
- // Embedded source maps for dev builds, can't use eval-source-map due to CSP
- development["devtool"] = "inline-source-map";
- } else {
- // High quality source maps in separate .map files which include the source. This doesn't bulk up the .js
- // payload file size, which is nice for performance but also necessary to get the bundle to a small enough
- // size that sentry will accept the upload.
- development["devtool"] = "source-map";
- }
// Resolve the directories for the js-sdk for later use. We resolve these early, so we
// don't have to call them over and over. We also resolve to the package.json instead of the src

View file

@ -0,0 +1,59 @@
we can't do fuses because we ship one binary in the electron package.
and we can't import them here, since they are in devDependencies, which are uninstalled at this stage.
--- ./electron-builder.ts.orig
+++ ./electron-builder.ts
@@ -1,8 +1,7 @@
import * as os from "os";
import * as fs from "fs";
import * as path from "path";
-import { Arch, Configuration as BaseConfiguration, AfterPackContext } from "electron-builder";
-import { flipFuses, FuseVersion, FuseV1Options } from "@electron/fuses";
+import { Configuration as BaseConfiguration } from "electron-builder";
/**
* This script has different outputs depending on your os platform.
@@ -54,43 +53,6 @@
const config: Writable<Configuration> = {
appId: "im.riot.app",
asarUnpack: "**/*.node",
- afterPack: async (context: AfterPackContext) => {
- if (context.electronPlatformName !== "darwin" || context.arch === Arch.universal) {
- // Burn in electron fuses for proactive security hardening.
- // On macOS, we only do this for the universal package, as the constituent arm64 and amd64 packages are embedded within.
- const ext = (<Record<string, string>>{
- darwin: ".app",
- win32: ".exe",
- linux: "",
- })[context.electronPlatformName];
-
- let executableName = context.packager.appInfo.productFilename;
- if (context.electronPlatformName === "linux") {
- // Linux uses the package name as the executable name
- executableName = context.packager.appInfo.name;
- }
-
- const electronBinaryPath = path.join(context.appOutDir, `${executableName}${ext}`);
- console.log(`Flipping fuses for: ${electronBinaryPath}`);
-
- await flipFuses(electronBinaryPath, {
- version: FuseVersion.V1,
- resetAdHocDarwinSignature: context.electronPlatformName === "darwin" && context.arch === Arch.universal,
-
- [FuseV1Options.EnableCookieEncryption]: true,
- [FuseV1Options.OnlyLoadAppFromAsar]: true,
-
- [FuseV1Options.RunAsNode]: false,
- [FuseV1Options.EnableNodeOptionsEnvironmentVariable]: false,
- [FuseV1Options.EnableNodeCliInspectArguments]: false,
-
- // Mac app crashes on arm for us when `LoadBrowserProcessSpecificV8Snapshot` is enabled
- [FuseV1Options.LoadBrowserProcessSpecificV8Snapshot]: false,
- // https://github.com/electron/fuses/issues/7
- [FuseV1Options.EnableEmbeddedAsarIntegrityValidation]: false,
- });
- }
- },
files: [
"package.json",
"lib/**",

View file

@ -0,0 +1,20 @@
directories in .hak/hakModules are already symlinked inside node_modules,
and as such are already being copied by default. this makes tasje fail with:
```
thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value:
FileAlreadyWritten("/node_modules/keytar/package.json")', src/main.rs:200:18
```
--- ./electron-builder.ts.orig
+++ ./electron-builder.ts
@@ -74,10 +74,6 @@
},
files: [
"package.json",
- {
- from: ".hak/hakModules",
- to: "node_modules",
- },
"lib/**",
],
extraResources: [

View file

@ -0,0 +1,79 @@
--- a/src/vector/jitsi/index.pcss
+++ b/src/vector/jitsi/index.pcss
@@ -14,7 +14,7 @@
font-family: "Nunito";
font-style: normal;
font-weight: 400;
- src: url("$(res)/fonts/Nunito/Nunito-Regular.ttf") format("truetype");
+ src: local("Nunito Regular");
}
$dark-fg: #edf3ff;
--- a/res/themes/light/css/_fonts.pcss
+++ b/res/themes/light/css/_fonts.pcss
@@ -5,16 +5,16 @@
@font-face {
font-family: "Twemoji";
font-weight: 400;
- src: url("$(res)/fonts/Twemoji_Mozilla/TwemojiMozilla-colr.woff2") format("woff2");
+ src: local("Twemoji");
}
/* For at least Chrome on Windows 10, we have to explictly add extra weights for the emoji to appear in bold messages, etc. */
@font-face {
font-family: "Twemoji";
font-weight: 600;
- src: url("$(res)/fonts/Twemoji_Mozilla/TwemojiMozilla-colr.woff2") format("woff2");
+ src: local("Twemoji");
}
@font-face {
font-family: "Twemoji";
font-weight: 700;
- src: url("$(res)/fonts/Twemoji_Mozilla/TwemojiMozilla-colr.woff2") format("woff2");
+ src: local("Twemoji");
}
--- a/res/themes/legacy-light/css/_fonts.pcss
+++ b/res/themes/legacy-light/css/_fonts.pcss
@@ -23,17 +23,17 @@
font-family: "Nunito";
font-style: normal;
font-weight: 400;
- src: url("$(res)/fonts/Nunito/Nunito-Regular.ttf") format("truetype");
+ src: local("Nunito Regular");
}
@font-face {
font-family: "Nunito";
font-style: normal;
font-weight: 600;
- src: url("$(res)/fonts/Nunito/Nunito-SemiBold.ttf") format("truetype");
+ src: local("Nunito SemiBold");
}
@font-face {
font-family: "Nunito";
font-style: normal;
font-weight: 700;
- src: url("$(res)/fonts/Nunito/Nunito-Bold.ttf") format("truetype");
+ src: local("Nunito Bold");
}
--- ./src/theme.ts.orig
+++ ./src/theme.ts
@@ -7,20 +7,6 @@
Please see LICENSE files in the repository root for full details.
*/
-import "@fontsource/inter/400.css";
-import "@fontsource/inter/400-italic.css";
-import "@fontsource/inter/500.css";
-import "@fontsource/inter/500-italic.css";
-import "@fontsource/inter/600.css";
-import "@fontsource/inter/600-italic.css";
-import "@fontsource/inter/700.css";
-import "@fontsource/inter/700-italic.css";
-
-import "@fontsource/inconsolata/latin-ext-400.css";
-import "@fontsource/inconsolata/latin-400.css";
-import "@fontsource/inconsolata/latin-ext-700.css";
-import "@fontsource/inconsolata/latin-700.css";
-
import { logger } from "matrix-js-sdk/src/logger";
import { _t } from "./languageHandler";

View file

@ -0,0 +1,15 @@
--- a/scripts/hak/hakEnv.ts
+++ b/scripts/hak/hakEnv.ts
@@ -101,11 +101,10 @@
...process.env,
npm_config_arch: this.target.arch,
npm_config_target_arch: this.target.arch,
- npm_config_disturl: "https://electronjs.org/headers",
+ npm_config_nodedir: "/usr/include/electron/node_headers",
npm_config_runtime: this.runtime,
npm_config_target: this.runtimeVersion,
npm_config_build_from_source: "true",
- npm_config_devdir: path.join(os.homedir(), ".electron-gyp"),
};
}

View file

@ -1,8 +1,8 @@
# Maintainer: Antoine Martin (ayakael) <dev@ayakael.net>
# Contributor: Antoine Martin (ayakael) <dev@ayakael.net>
pkgname=freetube
pkgver=0.21.3
pkgrel=2
pkgver=0.22.1
pkgrel=0
pkgdesc="An open source desktop YouTube player built with privacy in mind."
arch="x86_64 aarch64" # blocked by electron
license="AGPL-3.0-only"
@ -50,7 +50,7 @@ package() {
}
sha512sums="
22e5ab677cd442d50237b2d62534698d8ad73a37e1731003dc23c4ea3da992b3cae936f0bb3a0a86cd4b7fba731c9fa53276cb0a6cd5bab213ff2a6c9006cb05 freetube-0.21.3.tar.gz
7ea436ac67d9fe4e99e0a234d04ca88215e066006d3456d1474f2097773ba40f5bca57081155f948c41d429ea74e6185600bdcff56d87f047c6f7978037fd9ba freetube-0.22.1.tar.gz
2ce2effc794bb663789cefe968b5899122127983dbfa1b240aa33a2be383720b18204e6d01b4a550df72956f02b6636b79c93a58f470a970b09b770f5b8f2fc4 freetube.sh
d27cb896b65a7e8d52ffe86e5f74eed72b6cf976b28e1a13012d34c7eceba5ff6f20298017738dfa93c0336ffa52b8ee4da7e06b02747062898db7e678819526 tasje-dotdash.patch
"

View file

@ -1,7 +1,7 @@
# Contributor: Quillith <tag.quill@protonmail.com>
# Maintainer: Quillith <tag.quill@protonmail.com>
pkgname=nb
pkgver=7.12.1
pkgver=7.15.1
pkgrel=0
pkgdesc="Command line note-taking, bookmarking, archiving, and knowledge base application"
url="https://github.com/xwmx/nb"
@ -41,5 +41,5 @@ full() {
}
sha512sums="
ed3d41a809e39a19711c6c97c38216f17f144b8b474eb94aec4134f9756da03440073f3f6557acf8f7959d3d9fba6392d1d5f59e8b94d5269b7336b11353457e nb-7.12.1.tar.gz
95229ac3c7da47c8e8e80fb68376dcf866fa2c2799e0c150e225f453e92b714c592dd67e016054a6a6f7d53c09f7cc537250217057d42872fb273ee911e82757 nb-7.15.1.tar.gz
"

View file

@ -2,7 +2,7 @@
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=py3-apsw
_pkgname=apsw
pkgver=3.46.1.0
pkgver=3.47.2.0
pkgrel=0
pkgdesc="Another Python SQLite Wrapper"
url="https://github.com/rogerbinns/apsw"
@ -41,6 +41,6 @@ package() {
}
sha512sums="
8d24825c8346b05a99b8959ce1fd45ae5162c95b020ecc63bd3491bfd1579370a0e6b1a962f7f64a7e7e415846007e64d90b28e2065ae047e228d60b12b9cb02 py3-apsw-3.46.1.0.zip
9884f36811bfff7276642841ebaa198669c48f4d54bb764a985ea5bdd88f9f630f9fd8a13cf0a44b5675e374c2a911fcec579ca4165622e8049bff327ef66c1d py3-apsw-3.47.2.0.zip
8f3957bd6fecb5660a7cab367043e4ccdacd87d8963bbe41cc3d525265de28f08aa207099658d785be29c5c90b818c1418f766995cd780d02b8e36252a389758 detect-sqlite-config.patch
"

View file

@ -1,14 +1,14 @@
# Maintainer: Hoang Nguyen <folliekazetani@protonmail.com>
# Maintainer: Antoine Martin (ayakael) <dev@ayakael.net>
pkgname=py3-colored
_pyname=${pkgname/py3-/}
pkgver=1.4.4
pkgrel=3
pkgver=2.2.4
pkgrel=0
pkgdesc="Simple Python library for color and formatting in terminal"
url="https://gitlab.com/dslackw/colored"
arch="noarch"
license="MIT"
depends="python3"
makedepends="py3-setuptools py3-gpep517"
makedepends="py3-setuptools py3-gpep517 py3-flit"
checkdepends="py3-pytest"
subpackages="$pkgname-pyc"
source="https://gitlab.com/dslackw/colored/-/archive/$pkgver/colored-$pkgver.tar.gz"
@ -27,5 +27,5 @@ package() {
}
sha512sums="
d49075f97bcc220802a8a64780b4c3910acd420e7e0e82ee71659132e7a294a638b098e4e46ae54f531739f8a43cd35979e521c02bb359205a13d96e37cfe8ed colored-1.4.4.tar.gz
8fd293c95c2cfa6c3c31a91f946414e5c2581ea12a60e38ad1e6a5e44a85589a81c5e8205c4c518ed0d809840bf1b37b0cb5af4cf48c0706aa52017bf9c04489 colored-2.2.4.tar.gz
"

View file

@ -1,8 +1,8 @@
# Contributor: Galen Abell <galen@galenabell.com>
# Maintainer: Galen Abell <galen@galenabell.com>
pkgname=py3-levenshtein
pkgver=0.25.1
pkgrel=2
pkgver=0.26.1
pkgrel=0
pkgdesc="Python extension for computing string edit distances and similarities"
url="https://github.com/maxbachmann/Levenshtein"
arch="all"
@ -13,6 +13,7 @@ makedepends="
cython
py3-gpep517
py3-scikit-build
py3-scikit-build-core
python3-dev
rapidfuzz
samurai
@ -31,15 +32,15 @@ build() {
check() {
python3 -m venv --clear --without-pip --system-site-packages .testenv
.testenv/bin/python3 -m installer \
.dist/Levenshtein*.whl
.dist/levenshtein*.whl
.testenv/bin/python3 -m pytest
}
package() {
python3 -m installer -d "$pkgdir" \
.dist/Levenshtein*.whl
.dist/levenshtein*.whl
}
sha512sums="
936dab36b15df6f2ee5425efb1fdb1490fb8f618ba453f464a6dd615bcc427e55ceee7474f06b34392871d9f38470b853602a11d8f9776eee66ec34156511ca4 py3-levenshtein-0.25.1.tar.gz
589b1f404108f488caf880063f20ee9c6a2033b0a2cd819352bf15e285ea8537c1dc8117de70679f720fd3da47546f7e0e5c620e4da8cf09bf8df9b119e6abc9 py3-levenshtein-0.26.1.tar.gz
"

View file

@ -1,8 +1,8 @@
# Contributor: lauren n. liberda <lauren@selfisekai.rocks>
# Maintainer: lauren n. liberda <lauren@selfisekai.rocks>
pkgname=py3-limits
pkgver=3.13.0
pkgrel=1
pkgver=3.14.1
pkgrel=0
pkgdesc="Rate limiting using various strategies and storage backends such as redis & memcached"
url="https://github.com/alisaifee/limits"
arch="noarch"
@ -19,14 +19,16 @@ checkdepends="
py3-pytest-asyncio
py3-pytest-benchmark
py3-pytest-cov
py3-pytest-lazy-fixtures
py3-pymemcache
py3-redis
"
subpackages="$pkgname-pyc"
options="!check" # most tests are integration with db connections, assume all connectors installed
source="
https://github.com/alisaifee/limits/archive/refs/tags/$pkgver/limits-$pkgver.tar.gz
our-std-is-good-enough.patch
tests-drop-etcd3-and-k-argument.patch
"
builddir="$srcdir/limits-$pkgver"
@ -39,7 +41,7 @@ build() {
check() {
python3 -m venv --clear --without-pip --system-site-packages .testenv
gpep517 install-wheel --destdir .testenv --prefix '' .dist/*.whl
.testenv/bin/python3 -m pytest \
.testenv/bin/python3 -m pytest -W ignore::DeprecationWarning \
-m 'not benchmark and not etcd and not integration and not memcached' \
-k 'not aio and not Storage and not strategy' -v
}
@ -50,6 +52,7 @@ package() {
}
sha512sums="
0a13d08001c2f95e559ac1be35fa8cc178ad2d41bd5bf7b7e85781a428f550c350c21b92942b5b7e45f0f4c0604e96e579c8a26b5e9ca1196e6605608721030a limits-3.13.0.tar.gz
0364d51f9f879b95c6a4a3c9e9fd3d7d1e15ea214c50ae98cd36826b8c0b2d903cf1128741ac83738e305a207dae8955a0b2c8679484d2d6643e334595bdb1d7 our-std-is-good-enough.patch
f30c7ec19c2d1edad9ed77dc590ae35717efa3956a4d97e465793e1923a4af08dc9921d90ee95d3c54ce3364b867ca67a9de62c61d627e07a3f50da20bdabd0f limits-3.14.1.tar.gz
271e3b0501f9f144eda8d2e96c93b285714e339b9217385e38cdbce1f4dec88f9c949e9419f8be94885092e7977f7dca29b86b5499e9fead678b42a686c337db our-std-is-good-enough.patch
e84f4db49349a6feba0f701b9d4357c5f66d64c4a23f8ce512528b0f44b5bbef55041c02d92aae3a4cc8d5340846f9e909217beb869a5aeb49df166dd29ae9e3 tests-drop-etcd3-and-k-argument.patch
"

View file

@ -1,14 +1,3 @@
--- ./limits/util.py.orig
+++ ./limits/util.py
@@ -8,7 +8,7 @@
from types import ModuleType
from typing import TYPE_CHECKING, cast
-import importlib_resources
+from importlib import resources as importlib_resources
from packaging.version import Version
from limits.typing import Dict, List, NamedTuple, Optional, Tuple, Type, Union
--- ./limits/typing.py.orig
+++ ./limits/typing.py
@@ -13,7 +13,7 @@

View file

@ -0,0 +1,24 @@
diff --git a/tests/conftest.py.orig b/tests/conftest.py
index 2aeb758dda6..a9b2b8b2bd1 100644
--- a/tests/conftest.py.orig
+++ b/tests/conftest.py
@@ -3,7 +3,6 @@ import platform
import socket
import time
-import etcd3
import pymemcache
import pymemcache.client
import pymongo
diff --git a/pytest.ini.orig b/pytest.ini
index 38c40a713d0..8c6659e21c2 100644
--- a/pytest.ini.orig
+++ b/pytest.ini
@@ -17,7 +17,6 @@ addopts =
-rfEsxX
--cov=limits
-m "not benchmark"
- -K
filterwarnings =
error
module::ResourceWarning

View file

@ -1,7 +1,7 @@
# Contributor: lauren n. liberda <lauren@selfisekai.rocks>
# Maintainer: lauren n. liberda <lauren@selfisekai.rocks>
pkgname=py3-pathvalidate
pkgver=3.2.1
pkgver=3.2.3
pkgrel=0
pkgdesc="Python library to sanitize/validate a string such as filenames/file-paths/etc"
url="https://github.com/thombashi/pathvalidate"
@ -33,5 +33,5 @@ package() {
}
sha512sums="
094bb442258ba58fff11691f5b60976513924443247e808effbc26b9dd6c336f5f84d8e4563643b7def19d9f82170eb9ec6cd89491f9115df8d1634d2aa12206 pathvalidate-3.2.1.tar.gz
674cddcf94d4f03aff5fe968c4c678f6fa510c8ff4dfd9232b2b075ccfaa17de86a08d497c10664399694c5e72b354d452d75f11f6b40d2f9778a2466af0b265 pathvalidate-3.2.3.tar.gz
"

View file

@ -1,56 +0,0 @@
# Contributor: Marian Buschsieweke <marian.buschsieweke@posteo.net>
# Maintainer: Marian Buschsieweke <marian.buschsieweke@posteo.net>
pkgname=py3-rapidjson
pkgver=1.12
pkgrel=1
pkgdesc="Python3 wrapper around RapidJSON"
url="https://github.com/python-rapidjson/python-rapidjson"
arch="all"
license="MIT"
depends="
python3
"
makedepends="
py3-gpep517
py3-setuptools
py3-wheel
python3-dev
rapidjson-dev
"
checkdepends="
py3-pytest
py3-tz
"
source="$pkgname-$pkgver.tar.gz::https://github.com/python-rapidjson/python-rapidjson/archive/refs/tags/v$pkgver.tar.gz"
builddir="$srcdir/"python-rapidjson-$pkgver
prepare() {
default_prepare
# workaround setup.py complaining about "sources not found"
mkdir -v rapidjson/include
}
build() {
gpep517 build-wheel \
--wheel-dir .dist \
--output-fd 3 3>&1 >&2
}
check() {
PYTHONPATH="$(echo "$PWD"/build/lib.linux*)" pytest \
--ignore benchmarks \
--deselect tests/test_base_types.py::test_base_values \
--deselect tests/test_unicode.py::test_unicode_decode_error \
--deselect tests/test_validator.py::test_additional_and_pattern_properties_valid \
#
}
package() {
python3 -m installer -d "$pkgdir" \
.dist/*.whl
}
sha512sums="
15d021491c64db53352830d8f3f62c8b48476fcb001f97c174bcbb9053d973eb135ceb92f14290a58f6ad6c5dfb24d02f6385c8cad70f4a74f5a5726aa0728e7 py3-rapidjson-1.12.tar.gz
"

View file

@ -1,6 +1,6 @@
# Maintainer:
# Maintainer: Antoine Martin (ayakael) <dev@ayakael.net>
pkgname=rapidfuzz
pkgver=3.0.0
pkgver=3.2.0
pkgrel=0
pkgdesc="Rapid fuzzy string matching in C++ using the Levenshtein Distance"
url="https://github.com/maxbachmann/rapidfuzz-cpp"
@ -40,6 +40,6 @@ package() {
}
sha512sums="
c5f20399bd1cfaa057c40cc17be5d730d50c1014553241f80f461a2fa89de670357d17a4f090394170263b09a53aa29238e5eff2caf9064a2a118c42aa14f320 rapidfuzz-cpp-3.0.0.tar.gz
cf306fc4a6c0b6fc1a1c3b0b235aa54588bd87a5d07f96c1bc9711a08159ca71580b5958e66e8b4358d34e522041934903079aabe6e5a450cece7d6db6edcbe0 rapidfuzz-cpp-3.2.0.tar.gz
216c5082498830d42d2eb14d3eba35dd08446008916c920db7b55eaf3dd2358f86a61c238315b85fefecf08b9e902dc4db172f91a8479cfd735e53c7b3e03bf5 cstdint.patch
"

View file

@ -2,14 +2,14 @@
# Contributor: Antoine Martin (ayakael) <dev@ayakael.net>
# Maintainer: Antoine Martin (ayakael) <dev@ayakael.net>
pkgname=signal-desktop
pkgver=7.34.0
pkgver=7.36.1
pkgrel=0
pkgdesc="A messaging app for simple private communication with friends"
url="https://github.com/signalapp/Signal-Desktop/"
# same as electron
arch="aarch64 x86_64"
license="AGPL-3.0-only"
_llvmver=18
_llvmver=19
depends="
electron
font-barlow
@ -45,7 +45,7 @@ makedepends="
libvpx-dev
libwebp-dev
libxml2-dev
lld$_llvmver
lld
llvm$_llvmver-dev
mesa-dev
nodejs
@ -66,7 +66,7 @@ makedepends="
options="net !check"
# use _check_depends to validate this
_libsignalver=0.60.2
_libsignalver=0.62.0
_ringrtcver=2.48.7
_webrtcver=6723a
_stokenizerver=0.2.1
@ -88,9 +88,9 @@ source="
webrtc-compiler.patch
webrtc-gcc13.patch
signal-desktop
signal-desktop.sh
"
builddir="$srcdir/Signal-Desktop-$pkgver"
builddir="$srcdir"
# webrtc broken on clang https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101227
export CC=gcc
@ -112,7 +112,8 @@ export CARGO_PROFILE_RELEASE_STRIP="symbols"
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
# _ringrtcver: follow signal-desktop package.json -> @signalapp/ringrtc
# _webrtcver: follow ringrtc (on version above) -> config/version.properties -> webrtc.version
@ -126,10 +127,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 _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
echo _ringrtcver=$_ringrtcver
echo _webrtcver=$_webrtcver
echo _stokenizerver=$_stokenizerver
sed -i \
-e "s|^_libsignalver=.*|_libsignalver=$_libsignalver|" \
-e "s|^_ringrtcver=.*|_ringrtcver=$_ringrtcver|" \
-e "s|^_webrtcver=.*|_webrtcver=$_webrtcver|" \
-e "s|^_stokenizerver=.*|_stokenizerver=$_stokenizerver|" \
APKBUILD
}
# webrtc only, the other dependencies are fine with tarballs
@ -183,13 +186,17 @@ target_cpu_only = True
prepare() {
# Moves to builddir to use abuild patch logics
for i in libsignal-$_libsignalver ringrtc-$_ringrtcver webrtc-$_webrtcver Signal-FTS5-Extension-$_stokenizerver; do
for i in Signal-Desktop-$pkgver libsignal-$_libsignalver ringrtc-$_ringrtcver webrtc-$_webrtcver Signal-FTS5-Extension-$_stokenizerver; do
mv "$srcdir"/$i "$builddir"/${i%-*}
done
cd "$builddir"/Signal-Desktop
msg "Installing signal-desktop JS dependencies"
npm ci --ignore-scripts
# remove shipped fonts for system-provided (part 1)
rm -rf fonts/
default_prepare
(
@ -290,9 +297,6 @@ prepare() {
msg "Installing libsignal js dependencies"
yarn --ignore-scripts --frozen-lockfile
)
# remove shipped fonts for system-provided (part 1)
rm -rf fonts/
}
build() {
@ -386,6 +390,9 @@ build() {
cbindgen --profile release . -o target/release/signal-tokenizer.h
)
msg "Building signal-desktop"
cd "$builddir"/Signal-Desktop
# from package.json postinstall
npm run build:acknowledgments
npm exec patch-package
@ -405,15 +412,15 @@ build() {
# use our libsignal
rm -rf node_modules/@signalapp/libsignal-client/
mv libsignal/node/ node_modules/@signalapp/libsignal-client
mv "$builddir"/libsignal/node/ node_modules/@signalapp/libsignal-client
# use our libringrtc
rm -rf node_modules/@signalapp/ringrtc/
mv ringrtc/src/node/ node_modules/@signalapp/ringrtc
mv "$builddir"/ringrtc/src/node/ node_modules/@signalapp/ringrtc
mkdir node_modules/@signalapp/better-sqlite3/tokenizer
mv Signal-FTS5-Extension/target/release/libsignal_tokenizer.a node_modules/@signalapp/better-sqlite3/tokenizer/
mv Signal-FTS5-Extension/target/release/signal-tokenizer.h node_modules/@signalapp/better-sqlite3/tokenizer/
mv "$builddir"/Signal-FTS5-Extension/target/release/libsignal_tokenizer.a node_modules/@signalapp/better-sqlite3/tokenizer/
mv "$builddir"/Signal-FTS5-Extension/target/release/signal-tokenizer.h node_modules/@signalapp/better-sqlite3/tokenizer/
npm rebuild \
sharp @signalapp/better-sqlite3 spellchecker websocket \
@ -425,12 +432,13 @@ build() {
}
check() {
cd "$builddir"/Signal-Desktop
# tests run against downloaded build of electron for glibc, probably can be patched
npm run test
}
package() {
cd "$builddir"/tasje_out
cd "$builddir"/Signal-Desktop/tasje_out
install -Dm644 resources/app.asar "$pkgdir"/usr/lib/$pkgname/app.asar
cp -r resources/app.asar.unpacked "$pkgdir"/usr/lib/$pkgname/app.asar.unpacked
@ -439,7 +447,7 @@ package() {
# this should be in /usr/lib/signal-desktop. however, it does not simply work and I stopped to care
install -Dm755 "$builddir"/ringrtc/out/release/libsignaldeswebrtc.so "$pkgdir"/usr/lib/libsignaldeswebrtc.so
install -Dm755 "$srcdir"/signal-desktop "$pkgdir"/usr/bin/signal-desktop
install -Dm755 "$srcdir"/signal-desktop.sh "$pkgdir"/usr/bin/signal-desktop
while read -r size; do
install -Dm644 icons/$size.png "$pkgdir"/usr/share/icons/hicolor/$size/apps/$pkgname.png
@ -447,19 +455,19 @@ package() {
}
sha512sums="
30e06721b01e580414c5e57b63350fc42edbe837b0a60a9cd100bc6ab1758fa6fd5744dc3a35d991db62f363eab791c45b43e1d9d5c81af9e67685114ae2e630 Signal-Desktop-7.34.0.tar.gz
26780a0a6a529cee18f5c3b58f0395c6b5b630dbc8d2bbaa345dd7dd319a0e8548575c915dc16de6ac5d421fffdbe898f2dedb1fa3b4eab5d26debdfc1da515b libsignal-0.60.2.tar.gz
ccdd98fb26dd8cc3c74d3102c9dbdccbc09ee27b4f580228a920269e097111c8af742aef4e13d858576ddd7f28452eba966869349a923767056694e39da2a382 Signal-Desktop-7.36.1.tar.gz
2a1d171a6bf9f1dfea9fc1fbc4f200c8b9e2ccb30d9d63f29007f252ff79ae7d149ab5707a8e430010da90ad1e3112475bd0eba8efb5cc011d5e3098aa1e26de libsignal-0.62.0.tar.gz
e5e5ab27dc3bd37ef577c248d450e70fa11e72bdfab00fef233aad84d3d8aa3434166c03267f6b95b69d593e9da2f37017b5b7a0913f68499f387354742ba50a ringrtc-2.48.7.tar.gz
64eed5c2a6f5a505d014bc4fa80e15b21103df1ea27825eaa1dfecc23c269f198a7e98472f29de7cae4ac7fa4fede6e837c27494b8ec4d03e36b85b029c64831 webrtc-6723a.tar.zst
84a1f2fc29262a12842e94698d124a85b823128e72a493b0be8ea92fbb72c5c268499f4a6827cdedaae06ec73cce4039a39fe5c5d536cbef330e59ba0183da28 stokenizer-0.2.1.tar.gz
8d2d2d82c8546c2dd1fef161b61df79918f8c22235a56a46adb375a0beb4acef12c5fe53e67242a4be97f77adc522ff79b47949c352956c742a70d50f4179f7f libsignal-auditable.patch
cee74edb504ee5ae685e8a449ac35fabf949c33bfee5905778f850c3b18e17f9ae9bd501c89a7fd2c9c81a5bb2b0af0c0b3c72e32128603b3923c32d2a493ce9 signal-use-system-sqlcipher.patch
152435231cdcf52a17a9e24aadf95d77511258e818172941ba074a73a90a541f0136feb58868674f2bcb19191a6d12933fe6cd5baf3ee99e508915c72523163b signal-disable-updates.patch
d50eb5724502df9ea4d795db8cfc27af767c25168d7db2af512e615be7cc2ca290210a9ae78e1abb153c0198677e858ad3d74926c958099d0319295e7d9e7f1d signal-update-links.patch
bfc8acdd13aa48d29c7657311733cc9d33c4899782efbd1ef6d25ad1698be4de7cc67e829324bc0309715d69ae37ea9f782cf54887317e817213e110d73d68e7 signal-show-window-please.patch
18d5a0208d75fa910b6c0d531997402bba83290dfc7d7ce903acdcd0ce1d88bd3026ace40ecd32a88c2e429e48530b4e40f207a3d15bd9c0d6ebc8c447fa8ff9 signal-use-system-sqlcipher.patch
fc2af28645364cd85c106304a26811b036f6be048c52137fbbcc112870a84132a181f532563e0569b560fde3cf8c02480666a9b01d804b0008f97c728005b1c7 signal-disable-updates.patch
853de84d636f730694f17bcec63463fa7bfbdd0a7f7a64618a8fc6bc523ce1a9854b4c651753735af735c18101295d3efbe54f83ae0bccbed83c8c1fee3e7049 signal-update-links.patch
882d6889b23a3ebc6449c8b6acec8c3853674a7e94f066d65b57bab674ba8c11d582ba2c760825cb67b9202716e6d8b7123001d1e9f9229e49a0b77e9d978265 signal-show-window-please.patch
10284e0d86ab88de161ae689871082194f689ce416f3ebada8991d5db707994ea1cb8b4212756dd93ba5a3469964050988220f18afc37e38f3404a6e17ec8caf ringrtc-webrtc-renamed.patch
98a7e4df27c3ed56c5968ebc3ae8e08bfb54362d0c910f9af1d414079a6d5fe0f18aa570ae3c38042f4691af6a130cb3ff689625e26a3987720dd319a5f587b1 webrtc-shared-libs.patch
fe78cdc58c18826fc4227cc8e9377980766229390544578f6a1a6f7322bc3243c066963b589323dbfe4f2bfd37f8859ad84f63cb3783317892e5ae3652270a3a webrtc-compiler.patch
48ab5c733e643eaff08ccbe839086bebbb68d397984ad7c5c5b68df8071f75d2dfe92c3f52d9fbf9b81754934bdfa8a67c69addd476ce4265b978592fb4ff9bd webrtc-gcc13.patch
87534e7b5ad7365509eab75629e6bd1a9ed61ee92f7e358405a0abaf0df57de14623fb3894eb082f8785422e5c087e1c50f9e2e5cafbb2529591fd7bf447f7f5 signal-desktop
87534e7b5ad7365509eab75629e6bd1a9ed61ee92f7e358405a0abaf0df57de14623fb3894eb082f8785422e5c087e1c50f9e2e5cafbb2529591fd7bf447f7f5 signal-desktop.sh
"

View 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`.

View file

@ -0,0 +1,6 @@
#!/bin/sh
# app chooses config (including used endpoints) based on this
export NODE_ENV=production
exec electron /usr/lib/signal-desktop/app.asar

View file

@ -1,5 +1,5 @@
--- a/config/production.json
+++ b/config/production.json
--- a/Signal-Desktop/config/production.json
+++ b/Signal-Desktop/config/production.json
@@ -16,5 +16,5 @@
"serverTrustRoot": "BXu6QIKVz5MA8gstzfOgRQGqyLqOwNKHL6INkv3IHWMF",
"genericServerPublicParams": "AByD873dTilmOSG0TjKrvpeaKEsUmIO8Vx9BeMmftwUs9v7ikPwM8P3OHyT0+X3EUMZrSe9VUp26Wai51Q9I8mdk0hX/yo7CeFGJyzoOqn8e/i4Ygbn5HoAyXJx5eXfIbqpc0bIxzju4H/HOQeOpt6h742qii5u/cbwOhFZCsMIbElZTaeU+BWMBQiZHIGHT5IE0qCordQKZ5iPZom0HeFa8Yq0ShuEyAl0WINBiY6xE3H/9WnvzXBbMuuk//eRxXgzO8ieCeK8FwQNxbfXqZm6Ro1cMhCOF3u7xoX83QhpN",

View file

@ -1,7 +1,7 @@
diff --git a/app/main.ts.orig b/app/main.ts
diff --git a/Signal-Desktop/app/main.ts.orig b/Signal-Desktop/app/main.ts
index aa1bec8..bd7c1d5 100644
--- a/app/main.ts.orig
+++ b/app/main.ts
--- a/Signal-Desktop/app/main.ts.orig
+++ b/Signal-Desktop/app/main.ts
@@ -690,7 +690,7 @@ async function createWindow() {
: DEFAULT_HEIGHT;

View file

@ -1,5 +1,5 @@
--- ./ts/components/DialogExpiredBuild.tsx.orig
+++ ./ts/components/DialogExpiredBuild.tsx
--- ./Signal-Desktop/ts/components/DialogExpiredBuild.tsx.orig
+++ ./Signal-Desktop/ts/components/DialogExpiredBuild.tsx
@@ -23,9 +23,9 @@
containerWidthBreakpoint={containerWidthBreakpoint}
type="error"
@ -12,8 +12,8 @@
hasAction
>
{i18n('icu:expiredWarning')}{' '}
--- ./ts/types/support.ts.orig
+++ ./ts/types/support.ts
--- ./Signal-Desktop/ts/types/support.ts.orig
+++ ./Signal-Desktop/ts/types/support.ts
@@ -1,7 +1,7 @@
// Copyright 2023 Signal Messenger, LLC
// SPDX-License-Identifier: AGPL-3.0-only

View file

@ -1,7 +1,7 @@
diff --git a/node_modules/@signalapp/better-sqlite3/binding.gyp.orig b/node_modules/@signalapp/better-sqlite3/binding.gyp
diff --git a/Signal-Desktop/node_modules/@signalapp/better-sqlite3/binding.gyp.orig b/Signal-Desktop/node_modules/@signalapp/better-sqlite3/binding.gyp
index c370c30b309..bf0207e6fec 100644
--- a/node_modules/@signalapp/better-sqlite3/binding.gyp.orig
+++ b/node_modules/@signalapp/better-sqlite3/binding.gyp
--- a/Signal-Desktop/node_modules/@signalapp/better-sqlite3/binding.gyp.orig
+++ b/Signal-Desktop/node_modules/@signalapp/better-sqlite3/binding.gyp
@@ -7,7 +7,16 @@
'targets': [
{
@ -28,10 +28,10 @@ index c370c30b309..bf0207e6fec 100644
],
}],
],
diff --git a/node_modules/@signalapp/better-sqlite3/package.json.orig b/node_modules/@signalapp/better-sqlite3/package.json
diff --git a/Signal-Desktop/node_modules/@signalapp/better-sqlite3/package.json.orig b/Signal-Desktop/node_modules/@signalapp/better-sqlite3/package.json
index fbb9d360352..a9217039c01 100644
--- a/node_modules/@signalapp/better-sqlite3/package.json.orig
+++ b/node_modules/@signalapp/better-sqlite3/package.json
--- a/Signal-Desktop/node_modules/@signalapp/better-sqlite3/package.json.orig
+++ b/Signal-Desktop/node_modules/@signalapp/better-sqlite3/package.json
@@ -35,7 +35,7 @@
},
"scripts": {

View file

@ -1,22 +1,23 @@
# Contributor: Aiden Grossman <agrossman154@yahoo.com>
# Maintainer:
# Maintainer: Antoine Martin (ayakael) <dev@ayakael.net>
pkgname=soqt
pkgver=1.6.0
pkgrel=1
pkgver=1.6.3
pkgrel=0
pkgdesc="GUI binding library for coin"
url="https://github.com/coin3d/soqt"
arch="all"
license="BSD-3-Clause"
makedepends="coin-dev cmake mesa-dev qt5-qtbase-dev"
makedepends="coin-dev cmake mesa-dev qt5-qtbase-dev doxygen"
options="!check" # test suite consists only of interactive programs
subpackages="$pkgname-dev $pkgname-doc"
source="https://github.com/coin3d/soqt/releases/download/SoQt-$pkgver/soqt-$pkgver-src.tar.gz"
source="https://github.com/coin3d/soqt/releases/download/v$pkgver/soqt-$pkgver-src.tar.gz"
builddir="$srcdir/$pkgname"
build() {
cmake -B build . \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_BUILD_TYPE=None \
-DSOQT_BUILD_DOCUMENTATION=ON \
-DSOQT_BUILD_DOC_MAN=ON
cmake --build build
}
@ -26,5 +27,5 @@ package() {
}
sha512sums="
4221e98f51cca4dda23043428e869b60ab4d994710f97c0f44cd82631ffad2bd8bbaf0b820434a4636892df663d66ecd2aec14b185972671b2d22c0fe242b553 soqt-1.6.0-src.tar.gz
8cef22cf4214dd03bb4639c1fff77c127bf80f99e3b7fb7c1c21c25a281aa484252414f4a48fa59b8b2485afe7920ce9e86366fd1343badc77b75b78d3ac4c53 soqt-1.6.3-src.tar.gz
"