broken/signal-desktop: new aport

broken/libsignal-client: new aport
This commit is contained in:
build@apk-groulx 2022-08-15 15:56:03 +00:00
parent 9293e5fa4c
commit 792e4a9d12
7 changed files with 527 additions and 0 deletions

View file

@ -0,0 +1,52 @@
# Maintainer: Antoine Martin (ayakael) <dev@ayakael.net>
# Contributor: Antoine Martin (ayakael) <dev@ayakael.net>
pkgname=libsignal-client
_pkgname=libsignal
_libname=libsignal_jni
pkgver=0.19.1
pkgrel=0
pkgdesc='Library for the Signal Protocol.'
url="https://github.com/signalapp/$_pkgname"
makedepends="
clang
clang-libs
cmake
make
cargo
yarn
npm
"
arch="x86 x86_64 armhf armv7 aarch64"
license="GPL-3.0-only"
source="$pkgname-$pkgver.tar.gz::https://github.com/signalapp/$_pkgname/archive/refs/tags/v$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
prepare() {
default_prepare
# Use the default system rust toolchain
rm -f rust-toolchain
}
build() {
cd node
yarn install
yarn tsc
}
check() {
cd node
yarn test
}
package() {
install -m755 -d "${pkgdir}/usr/share/java/${pkgname}" "${pkgdir}/usr/lib"
install -Dm644 "java/client/build/libs/libsignal-client-${pkgver}.jar" "$pkgdir/usr/share/java/$pkgname/$pkgname.jar"
install -Dm644 "target/release/${_libname}.so" "$pkgdir/usr/lib/"
}
sha512sums="
389611d862446222c87c777804d26cda74ad2c69f6476f66de48263c40433517d05e32b73b31c86ac0b93a10595453f466b8ed069753a7044858a6734255bb34 libsignal-client-0.19.1.tar.gz
"

View file

@ -0,0 +1,25 @@
From f065498f69e7326e5764fa11a77792c0605e104b Mon Sep 17 00:00:00 2001
From: "build@apk-groulx" <build@apk-groulx.praxis>
Date: Fri, 29 Jul 2022 17:06:56 +0000
Subject: [PATCH 1/1] package-for-dir
---
package.json | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/package.json b/package.json
index 211905bfa..e6cafbba6 100644
--- a/package.json
+++ b/package.json
@@ -384,7 +384,7 @@
"StartupWMClass": "Signal"
},
"target": [
- "deb"
+ "dir"
],
"icon": "build/icons/png"
},
--
2.36.2

View file

@ -0,0 +1,85 @@
# Maintainer: Antoine Martin (ayakael) <dev@ayakael.net>
# Contributor: Antoine Martin (ayakael) <dev@ayakael.net>
pkgname=signal-desktop
_pkgname=Signal-Desktop
pkgver=5.52.0
pkgrel=0
pkgdesc="Signal Private Messenger for Linux"
license="GPL-3.0-only"
arch="x86_64"
url="https://signal.org"
depends="
electron
hicolor-icon-theme
"
makedepends="
alsa-lib-dev
bash
clang
findutils
git
git-lfs
gtk+3.0
nodejs
npm
openjpeg-dev
p7zip
python3
libxscrnsaver-dev
vips-dev
yarn
"
source="
$pkgname-$pkgver.tar.gz::https://github.com/signalapp/$_pkgname/archive/v$pkgver.tar.gz
$pkgname.desktop
build-packaging-fix.patch
"
builddir="$srcdir"/$_pkgname-$pkgver
prepare() {
default_prepare
# Allow higher Node versions
sed 's#"node": "#&>=#' -i package.json
# git-lfs hook needs to be installed for one of the dependencies
git lfs install
yarn --cache-folder "$srcdir"/yarn-cache --ignore-engines install
}
build() {
export USE_SYSTEM_7ZA=true
yarn --cache-folder "$srcdir"/yarn-cache generate
yarn --cache-folder "$srcdir"/yarn-cache build-release
}
package() {
install -dm 755 \
"$pkgdir"/usr/lib \
"$pkgdir"/usr/bin
cp -a release/linux-unpacked "${pkgdir}/usr/lib/${pkgname}"
ln -s "/usr/lib/${pkgname}/${pkgname}" "${pkgdir}/usr/bin/"
install -Dm 644 "../${pkgname}.desktop" -t "${pkgdir}/usr/share/applications"
# remove irrelevant files
rm -fr chrome_*.pak chrome-sandbox swiftshader
find "$pkgdir" -type f -name "*.dylib" -delete
find "$pkgdir" -type d -name "win32*" -exec rm -fr {} \;
find "$pkgdir" -type d -name "darwin*" -exec rm -fr {} \;
[ "$CARCH" = "x86_64" ] && find "$pkgdir" -type d -name "linux-arm64" -exec rm -fr {} \;
[ "$CARCH" = "aarch64" ] && find "$pkgdir" -type d -name "linux-x64" -exec rm -fr {} \;
for i in 16 24 32 48 64 128 256 512 1024; do
install -Dm 644 "build/icons/png/${i}x${i}.png" "${pkgdir}/usr/share/icons/hicolor/${i}x${i}/apps/${pkgname}.png"
done
}
sha512sums="
64e6ff2dba4525b5bb6bc45f8f8aa422a4ac5da0688d9d6fd9b621d1c4fe288b37f1b6f4b48d92022deea4e8da155297504ea77a5434ec23099e421f3f572cfc signal-desktop-5.52.0.tar.gz
90cfee563a985bc73c4e7984715d190ae0b5c7aa887a7dc15c665980ca5cc8420b02f6c7a54e032c29e18876d5d51cfbe5027a9f0a59de3903f50fd469d73ce0 signal-desktop.desktop
0667570d9f28239bef63d34972e29e4472670a019287ea0d473dc0b6bd10c2e1600283c0806dfda54f6aa0299b3ebf3954553a51bc6ee3e321ac9ee676fe6009 build-packaging-fix.patch
"

View file

@ -0,0 +1,187 @@
Return-Path: aruna@signal.org
Delivered-To: kpcyrd@rxv.cc
Received: from orion.archlinux.org (orion.archlinux.org [88.198.91.70])
by mail.rxv.cc (OpenSMTPD) with ESMTPS id 20277d00 (TLSv1.3:TLS_AES_256_GCM_SHA384:256:NO)
for <kpcyrd@rxv.cc>;
Tue, 7 Jan 2020 18:20:28 +0000 (UTC)
Received: from orion.archlinux.org (localhost [127.0.0.1])
by orion.archlinux.org (Postfix) with ESMTP id AB67717EC9F8AC
for <kpcyrd@archlinux.org>; Tue, 7 Jan 2020 18:20:23 +0000 (UTC)
X-Spam-Checker-Version: SpamAssassin 3.4.3 (2019-12-06) on orion.archlinux.org
X-Spam-Level:
X-Spam-Status: No, score=-0.6 required=5.0 tests=BAYES_00=-1,DKIM_SIGNED=0.1,
DKIM_VALID=-0.1,DKIM_VALID_AU=-0.1,HTML_MESSAGE=0.001,
LOCAL_FAKEBUSINESS=0.5,RCVD_IN_DNSWL_NONE=-0.0001,SPF_HELO_NONE=0.001,
T_DMARC_POLICY_NONE=0.01 autolearn=no autolearn_force=no version=3.4.3
X-Spam-BL-Results: <dns:1.3.5.0.0.0.0.0.0.0.0.0.0.0.0.0.0.2.0.0.4.6.8.4.0.5.4.1.0.0.a.2.list.dnswl.org>
[127.0.5.0]
Received: from mail-ed1-x531.google.com (mail-ed1-x531.google.com [IPv6:2a00:1450:4864:20::531])
(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
key-exchange ECDHE (P-384) server-signature RSA-PSS (4096 bits) server-digest SHA256)
(No client certificate requested)
by orion.archlinux.org (Postfix) with ESMTPS
for <kpcyrd@archlinux.org>; Tue, 7 Jan 2020 18:20:23 +0000 (UTC)
Received: by mail-ed1-x531.google.com with SMTP id b8so383435edx.7
for <kpcyrd@archlinux.org>; Tue, 07 Jan 2020 10:20:23 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
d=signal.org; s=google;
h=mime-version:references:in-reply-to:from:date:message-id:subject:to;
bh=bSFjfcgPZhi0DEnSAuOFA+jYWeb26nFDHmCc2toMM1U=;
b=B7BgoISRirE9NVUMI3pKSDzMirKsxQ7+BN5JJk/WlgHEZ+anP6uIaXLUIcxzjfc8d6
qdHdD1UsUdqHgbwXiE2KeZdTAtIoy80lQUDzjQZRTORfOVgQtgelvwq7d8N8EFy2jfik
K/QOU8pN+NSqsNTw6rZyATa6y1c3OSaxRkJ/I=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
d=1e100.net; s=20161025;
h=x-gm-message-state:mime-version:references:in-reply-to:from:date
:message-id:subject:to;
bh=bSFjfcgPZhi0DEnSAuOFA+jYWeb26nFDHmCc2toMM1U=;
b=YzxIQxXMSHyuIUMo/XiKE4Q4Yo070VgbsWV57e8hWI4vZIQKN3490bAkt0XlGR+bQv
ozPh35v8AjOJ9DSBWOtWriZdB3k05pV+Y/Pu44bmMWE/ThF9eFHZomhHkKOyFdgWpQjT
ffOM39d3DpMY/gTi083CMstFmYtpjYcxTMMTfD6vXtaIBivBUqq5S9shFiwUNEIPQZPy
2DS+NCRi62/8NzIZlXkbeWLmBzTgyEjR7H4DPKHuvxAjDIYfdF3kAnVVBrqvxbQ+VKRu
3Cw4cla6HZq4npO82NPTzYBNZzZfdsypoWLjmopDxdEX+9aEFACOHoCgfQGUPjsaMe5O
7cnQ==
X-Gm-Message-State: APjAAAWXyDg/5THr46Vg5hniOGGHZ/OgYqnBSnmU97hgIZTUbnXhkO3B
RW7cMtIUVxuPUz3DUzeeD/7An/HIl1DpIgePlalM41ZfST8=
X-Google-Smtp-Source: APXvYqxh9T/e1HyKnOSFhjFW3jhiuhEBWF0NhnTDGALsoZHz/wcEaRca9g8sqmsHLAN4Nfu/BE6+mYbuE5F0Ja2LW6g=
X-Received: by 2002:a50:ed94:: with SMTP id h20mr1236027edr.17.1578421222932;
Tue, 07 Jan 2020 10:20:22 -0800 (PST)
MIME-Version: 1.0
References: <CABxKNwm+vbYYDgtooozOok3n5jvqQJXZ0XL0gvz+iSmsLwWQQw@mail.gmail.com>
In-Reply-To: <CABxKNwm+vbYYDgtooozOok3n5jvqQJXZ0XL0gvz+iSmsLwWQQw@mail.gmail.com>
From: Aruna Harder <aruna@signal.org>
Date: Tue, 7 Jan 2020 10:19:54 -0800
Message-ID: <CABxKNwnh+g7wRPd4S5z3pd4RspxRQxtOuz2iANCQ45-DJczVSg@mail.gmail.com>
Subject: Re: distributing Signal Desktop
To: kpcyrd@archlinux.org
Content-Type: multipart/alternative; boundary="0000000000004c9813059b90d4b0"
--0000000000004c9813059b90d4b0
Content-Type: text/plain; charset="UTF-8"
Hello,
I consulted with our attorney and despite the language in our Terms of
Service related to various IP rights, the Signal code is explicitly
licensed under GPLv3. As long as your company complies with the GPLv3, your
use and distribution of Signal Desktop is explicitly permitted under GPLv3.
We do ask that you use reasonable efforts to make timely updates to your
repository to the most current version of Signal as it becomes available.
Please let me know if you have any questions. All the best to you and your
organization.
Thanks.
-aruna
Aruna Harder
Signal Messenger
On Mon, Jan 6, 2020 at 9:38 AM Aruna Harder <aruna@signal.org> wrote:
> Hello,
>
> Moxie forwarded your message to me about distributing Signal Desktop
> (copied here). I will get an agreement to you in the next few days. We
> would like to ensure you are always distributing the latest Signal code,
> for obvious reasons - e.g. to ensure latest fixes to known issues are
> addressed, etc. What is a reasonable timeframe to have latest Signal
> Desktop releases incorporated into your package?
>
> Thanks.
> -aruna
>
> Aruna Harder
> Signal
>
> ==================================================
>
> Date: Tue, 31 Dec 2019 17:48:24 +0000
> From: kpcyrd <kpcyrd@rxv.cc>
> To: moxie@thoughtcrime.org
> Subject: Grant Trademark Use to Arch Linux
>
> ohai!
>
> I'm reaching out to you because I'm looking into distributing
> signal-desktop as an official Arch Linux package. While the GPLv3
> license works great for us we noticed this in the Terms and Conditions:
>
> > Signal's Rights. [...] You may not use our copyrights, trademarks,
> > domains, logos, trade dress, patents, and other intellectual property
> > rights unless you have our written permission. [...]
>
> This is similar to firefox (which we distribute) but more strictly
> worded so we need to ask you to please send us a written permission to
> distribute signal-desktop in the Arch Linux repositories.
>
> We did this before for discord[1] and teamspeak[2].
>
> [1]:
>
> https://git.archlinux.org/svntogit/community.git/tree/trunk/Permission_to_Distribute.mbox?h=packages/discord
> [2]:
>
> https://git.archlinux.org/svntogit/community.git/tree/trunk/PERMISSION.eml?h=packages/teamspeak3
>
> If you wish you may send it to kpcyrd@archlinux.org
>
> Thank you very much
>
--0000000000004c9813059b90d4b0
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
<div dir=3D"ltr">Hello,=C2=A0<div><br></div><div>I consulted with our attor=
ney and despite the language in our Terms of Service related to various IP =
rights,=C2=A0the Signal code is explicitly licensed under GPLv3. As long as=
your company complies with the GPLv3, your use and distribution of Signal =
Desktop is explicitly permitted under GPLv3.=C2=A0</div><div><br></div><div=
>We do ask that you use reasonable efforts to make timely updates to your r=
epository to the most current version of Signal as it becomes available.=C2=
=A0</div><div><br></div><div>Please let me know if you have any questions. =
All the best to you and your organization.=C2=A0</div><div><br></div><div>T=
hanks.</div><div>-aruna</div><div><br></div><div>Aruna Harder</div><div>Sig=
nal=C2=A0Messenger</div></div><br><div class=3D"gmail_quote"><div dir=3D"lt=
r" class=3D"gmail_attr">On Mon, Jan 6, 2020 at 9:38 AM Aruna Harder &lt;<a =
href=3D"mailto:aruna@signal.org">aruna@signal.org</a>&gt; wrote:<br></div><=
blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-l=
eft:1px solid rgb(204,204,204);padding-left:1ex"><div dir=3D"ltr"><div>Hell=
o,=C2=A0</div><div><br></div><div>Moxie forwarded your message to me about =
distributing Signal Desktop (copied here). I will get an agreement to you i=
n the next few days. We would like to ensure you are always=C2=A0distributi=
ng the latest Signal code, for obvious=C2=A0reasons - e.g. to ensure latest=
fixes to known issues are addressed, etc. What is a reasonable timeframe t=
o have latest Signal Desktop releases incorporated into your package?=C2=A0=
</div><div><br></div><div>Thanks.=C2=A0</div><div>-aruna</div><div><br></di=
v><div>Aruna Harder<br>Signal=C2=A0</div><div><br></div><div>=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D</div><br>Da=
te: Tue, 31 Dec 2019 17:48:24 +0000<br>From: kpcyrd &lt;kpcyrd@rxv.cc&gt;<b=
r>To:=C2=A0<a href=3D"mailto:moxie@thoughtcrime.org" rel=3D"noreferrer" tar=
get=3D"_blank">moxie@thoughtcrime.org</a><br>Subject: Grant Trademark Use t=
o Arch Linux<br><br>ohai!<br><br>I&#39;m reaching out to you because I&#39;=
m looking into distributing<br>signal-desktop as an official Arch Linux pac=
kage. While the GPLv3<br>license works great for us we noticed this in the =
Terms and Conditions:<br><br>&gt; Signal&#39;s Rights. [...] You may not us=
e our copyrights, trademarks,<br>&gt; domains, logos, trade dress, patents,=
and other intellectual property<br>&gt; rights unless you have our written=
permission. [...]<br><br>This is similar to firefox (which we distribute) =
but more strictly<br>worded so we need to ask you to please send us a writt=
en permission to<br>distribute signal-desktop in the Arch Linux repositorie=
s.<br><br>We did this before for discord[1] and teamspeak[2].<br><br>[1]:<b=
r><a href=3D"https://git.archlinux.org/svntogit/community.git/tree/trunk/Pe=
rmission_to_Distribute.mbox?h=3Dpackages/discord" rel=3D"noreferrer norefer=
rer" target=3D"_blank">https://git.archlinux.org/svntogit/community.git/tre=
e/trunk/Permission_to_Distribute.mbox?h=3Dpackages/discord</a><br>[2]:<br><=
a href=3D"https://git.archlinux.org/svntogit/community.git/tree/trunk/PERMI=
SSION.eml?h=3Dpackages/teamspeak3" rel=3D"noreferrer noreferrer" target=3D"=
_blank">https://git.archlinux.org/svntogit/community.git/tree/trunk/PERMISS=
ION.eml?h=3Dpackages/teamspeak3</a><br><br>If you wish you may send it to=
=C2=A0<a href=3D"mailto:kpcyrd@archlinux.org" rel=3D"noreferrer" target=3D"=
_blank">kpcyrd@archlinux.org</a><br><br>Thank you very much<br></div>
</blockquote></div>
--0000000000004c9813059b90d4b0--

View file

@ -0,0 +1,154 @@
From ff23c46d13ec64f96d315df1f4138a8f91deec41 Mon Sep 17 00:00:00 2001
From: build <dev@ayakael.net>
Date: Mon, 13 Jun 2022 08:18:13 -0400
Subject: [PATCH 1/1] rpm-fix-build-fix
---
package.json | 69 +----------------------------------
ts/scripts/get-expire-time.ts | 2 +-
webpack.config.ts | 13 -------
3 files changed, 3 insertions(+), 81 deletions(-)
diff --git a/package.json b/package.json
index 08b8a5079..82df48213 100644
--- a/package.json
+++ b/package.json
@@ -295,7 +295,7 @@
"ts-node": "8.3.0",
"typed-scss-modules": "4.1.1",
"typescript": "4.6.2",
- "webpack": "5.30.0",
+ "webpack": "5.61.0",
"webpack-cli": "4.9.2",
"webpack-dev-server": "4.7.4"
},
@@ -309,66 +309,10 @@
"sharp/color/color-string": "1.7.4"
},
"engines": {
- "node": "16.13.2"
+ "node": "^16.13.2"
},
"build": {
"appId": "org.whispersystems.signal-desktop",
- "mac": {
- "artifactName": "${name}-mac-${arch}-${version}.${ext}",
- "category": "public.app-category.social-networking",
- "darkModeSupport": true,
- "hardenedRuntime": true,
- "entitlements": "./build/entitlements.mac.plist",
- "icon": "build/icons/mac/icon.icns",
- "publish": [
- {
- "provider": "generic",
- "url": "https://updates.signal.org/desktop"
- }
- ],
- "mergeASARs": true,
- "singleArchFiles": "node_modules/{@signalapp/libsignal-client/prebuilds/**,ringrtc/build/**,sharp/**}",
- "target": [
- {
- "target": "zip",
- "arch": [
- "x64",
- "arm64"
- ]
- },
- {
- "target": "dmg",
- "arch": [
- "x64",
- "arm64",
- "universal"
- ]
- }
- ],
- "bundleVersion": "1"
- },
- "win": {
- "artifactName": "${name}-win-${version}.${ext}",
- "certificateSubjectName": "Signal Messenger, LLC",
- "certificateSha1": "8C9A0B5C852EC703D83EF7BFBCEB54B796073759",
- "signingHashAlgorithms": [
- "sha256"
- ],
- "publisherName": "Signal Messenger, LLC",
- "icon": "build/icons/win/icon.ico",
- "publish": [
- {
- "provider": "generic",
- "url": "https://updates.signal.org/desktop"
- }
- ],
- "target": [
- "nsis"
- ]
- },
- "nsis": {
- "deleteAppDataOnUninstall": true
- },
"linux": {
"category": "Network;InstantMessaging;Chat",
"desktop": {
@@ -379,15 +323,6 @@
],
"icon": "build/icons/png"
},
- "deb": {
- "depends": [
- "libnotify4",
- "libxtst6",
- "libnss3",
- "libasound2",
- "libxss1"
- ]
- },
"protocols": {
"name": "sgnl-url-scheme",
"schemes": [
diff --git a/ts/scripts/get-expire-time.ts b/ts/scripts/get-expire-time.ts
index 8b88691dc..8a64e41c6 100644
--- a/ts/scripts/get-expire-time.ts
+++ b/ts/scripts/get-expire-time.ts
@@ -8,7 +8,7 @@ import { writeFileSync } from 'fs';
import { DAY } from '../util/durations';
const unixTimestamp = parseInt(
- execSync('git show -s --format=%ct').toString('utf8'),
+ execSync('date +%s').toString('utf8'),
10
);
const buildCreation = unixTimestamp * 1000;
diff --git a/webpack.config.ts b/webpack.config.ts
index 14a70eb99..a386c01c6 100644
--- a/webpack.config.ts
+++ b/webpack.config.ts
@@ -5,7 +5,6 @@ import { resolve } from 'path';
// eslint-disable-next-line import/no-extraneous-dependencies
import { Configuration, EnvironmentPlugin, ProvidePlugin } from 'webpack';
import HtmlWebpackPlugin = require('html-webpack-plugin');
-import TerserPlugin = require('terser-webpack-plugin');
const context = __dirname;
const { NODE_ENV: mode = 'development' } = process.env;
@@ -35,18 +34,6 @@ const stickerCreatorConfig: Configuration = {
'./sticker-creator/index.tsx',
],
// Stack-traces have to be readable so don't mangle function names.
- optimization: {
- minimizer: [
- new TerserPlugin({
- parallel: true,
- terserOptions: {
- mangle: false,
- keep_classnames: true,
- keep_fnames: true,
- },
- }),
- ],
- },
output: {
path: resolve(context, 'sticker-creator/dist'),
filename: 'bundle.js',
--

View file

@ -0,0 +1,11 @@
--- a/ts/scripts/get-expire-time.ts
+++ b/ts/scripts/get-expire-time.ts
@@ -8,7 +8,7 @@ import { writeFileSync } from 'fs';
import { DAY } from '../util/durations';
const unixTimestamp = parseInt(
- execSync('git show -s --format=%ct').toString('utf8'),
+ process.env.SOURCE_DATE_EPOCH || execSync('git show -s --format=%ct').toString('utf8'),
10
);
const buildCreation = unixTimestamp * 1000;

View file

@ -0,0 +1,13 @@
[Desktop Entry]
Type=Application
Name=Signal
Comment=Signal - Private Messenger
Comment[de]=Signal - Sicherer Messenger
Icon=signal-desktop
Exec=signal-desktop -- %u
Terminal=false
Categories=Network;InstantMessaging;
StartupWMClass=Signal
MimeType=x-scheme-handler/sgnl;
Keywords=sgnl;chat;im;messaging;messenger;sms;security;privat;
X-GNOME-UsesNotifications=true